{"version":3,"file":"ngx-table-nested.mjs","sources":["../../../projects/ngx-table-nested/src/lib/models/atoms.models.ts","../../../projects/ngx-table-nested/src/lib/constants/default-config-table.const.ts","../../../projects/ngx-table-nested/src/lib/constants/utils.const.ts","../../../projects/ngx-table-nested/src/lib/constants/index.ts","../../../projects/ngx-table-nested/src/lib/models/nested.models.ts","../../../projects/ngx-table-nested/src/lib/models/index.ts","../../../projects/ngx-table-nested/src/lib/components/shared/table-icon/table-icon.component.ts","../../../projects/ngx-table-nested/src/lib/components/shared/table-tag/table-tag.component.ts","../../../projects/ngx-table-nested/src/lib/components/shared/table-button/table-button.component.ts","../../../projects/ngx-table-nested/src/lib/components/shared/table-column-basic-view/table-column-basic-view.component.ts","../../../projects/ngx-table-nested/src/lib/components/shared/table-column-compose-view/table-column-compose-view.component.ts","../../../projects/ngx-table-nested/src/lib/components/shared/table-column-icon-view/table-column-icon-view.component.ts","../../../projects/ngx-table-nested/src/lib/components/shared/table-column-initials-view/table-column-initials-view.component.ts","../../../projects/ngx-table-nested/src/lib/components/shared/index.ts","../../../projects/ngx-table-nested/src/lib/components/table-basic/table-basic.component.ts","../../../projects/ngx-table-nested/src/lib/components/table-basic/table-basic.component.html","../../../projects/ngx-table-nested/src/lib/components/table-nested/table-nested.component.ts","../../../projects/ngx-table-nested/src/lib/components/table-nested/table-nested.component.html","../../../projects/ngx-table-nested/src/lib/components/index.ts","../../../projects/ngx-table-nested/src/public-api.ts","../../../projects/ngx-table-nested/src/ngx-table-nested.ts"],"sourcesContent":["/*\n * Project:      skyfall-factory\n * Developed by: Juan David Pelaez Cumbe\n * Date:         24/03/24 - 11:28\n * Module name:  atoms.models.ts\n * File name:    atoms.models.ts\n * IDE:          WebStorm\n */\n\nexport interface TableCssClassConfigModel {\n  activeCssClass: string;\n  inactiveCssClass: string;\n}\n\nexport interface TableBasicConfigModel extends TableCssClassConfigModel {\n  activeLabel: string;\n  inactiveLabel: string;\n}\n\nexport interface TableImageConfigModel {\n  alternativeText?: string;\n  noImageText?: string;\n  error?: string;\n}\n\nexport interface TableDualIconConfigModel extends TableCssClassConfigModel {\n  activeIcon: string;\n  inactiveIcon: string;\n}\n\nexport interface TableIconConfigModel {\n  icon: string;\n  cssClass: string;\n}\n","import {ColumnMode, SelectionType, SortType} from '@swimlane/ngx-datatable';\nimport { TableBasicConfigModel,\n  TableExtraConfigModel, TableImageConfigModel,\n  TableMessageConfigModel, TableIconConfigModel, TableCssClassConfigModel, TableActioneConfigModel,\n} from '../models';\n\nexport const TABLE_COLUMN_ICON_WIDTH = 50;\nexport const TABLE_ROW_HEIGHT = 35;\nexport const TABLE_FOOTER_HEIGHT = 28;\nexport const TABLE_HEADER_HEIGHT = 37;\n\nexport const TABLE_CHILDREN_KEY = 'children';\nexport const TABLE_CHILDREN_ROW_OFFSET = 110;\nexport const TABLE_CHILDREN_ROW_HEIGHT = 40;\nexport const TABLE_LIMIT = 5;\n\nexport const DEFAULT_COLUMN_TAG: TableBasicConfigModel = {\n  activeLabel: 'Activo',\n  activeCssClass: 'active',\n  inactiveLabel: 'Inactivo',\n  inactiveCssClass: 'inactive',\n};\n\nexport const DEFAULT_COLUMN_CHECK: TableCssClassConfigModel = {\n  activeCssClass: 'active',\n  inactiveCssClass: 'inactive',\n};\n\nexport const DEFAULT_COLUMN_ICON: TableIconConfigModel = {\n  icon: 'home',\n  cssClass: 'table_column_nested'\n};\n\nexport type BasicConfigType = 'header' | 'footer' | 'row' | 'limit';\nexport const DEFAULT_BASIC_CONFIG: Record<BasicConfigType, any> = {\n  header: TABLE_HEADER_HEIGHT,\n  footer: TABLE_FOOTER_HEIGHT,\n  row: TABLE_ROW_HEIGHT,\n  limit: TABLE_LIMIT,\n};\n\nexport const DEFAULT_COLUMN_IMAGE: TableImageConfigModel = {\n  alternativeText: 'image in the row of the table',\n  noImageText: 'N/A',\n  error: 'Image field has error',\n};\n\n\nexport const DEFAULT_MESSAGE_CONFIG: TableMessageConfigModel = {\n  empty: 'No data to display',\n  error: 'An error occurred displaying the data',\n};\n\nexport const DEFAULT_COLUMN_OLD_ICON = {\n  active: {\n    class: 'active',\n    text: 'Activo',\n  },\n  inactive: {\n    class: 'inactive',\n    text: 'Inactivo',\n  },\n};\n\nexport const DEFAULT_COLUMN_ACTION: TableActioneConfigModel = {\n  header: 'Actions',\n  data: [],\n};\n\n\n/**\n * @description\n * Icons available in enumerator\n * @type\n */\nexport type TnIconType = 'pen' |\n  'trash' | 'arrowsRotate' | 'add' |\n  'minus' | 'arrowDown' | 'arrowUp' |\n  'arrowRight' | 'arrowLeft' | 'circleCheck' |\n  'circleClose' | 'mail' | 'whatsapp' |\n  'facebook' | 'twitter' | 'insta' |\n  'messenger' | 'sms';\n\n/**\n * @description\n * Icons allowed in the library\n * @constant\n */\nexport const TN_ICONS: Record<TnIconType, string> = {\n  pen: 'pen',\n  trash: 'trash-can',\n  arrowsRotate: 'rotate',\n  add: 'plus',\n  minus: 'minus',\n  arrowDown: 'chevron-down',\n  arrowUp: 'chevron-up',\n  arrowRight: 'chevron-right',\n  arrowLeft: 'chevron-left',\n  circleCheck: 'circle-check',\n  circleClose: 'circle-xmark',\n  mail: 'envelope',\n  whatsapp: 'whatsapp',\n  facebook: 'facebook',\n  twitter: 'x-twitter',\n  insta: 'instagram',\n  messenger: 'facebook-messenger',\n  sms: 'comment-sms',\n};\n\nexport const DEFAULT_EXTRA_CONFIG: TableExtraConfigModel = {\n  columnMode: ColumnMode.flex,\n  sortType: SortType.single,\n  selection: SelectionType.single,\n  image: DEFAULT_COLUMN_IMAGE,\n  check: DEFAULT_COLUMN_CHECK,\n  tag: DEFAULT_COLUMN_TAG,\n  messages: DEFAULT_MESSAGE_CONFIG,\n  actions: DEFAULT_COLUMN_ACTION\n};\n","/*\n * Project:      skyfall-factory\n * Developed by: Juan David Pelaez Cumbe\n * Date:         25/03/24 - 11:20\n * Module name:  utils.const\n * File name:    utils.const.ts\n * IDE:          WebStorm\n */\n\nimport {ContentTypeColumnEnum} from '../models';\nimport {ColumnMode, SortType} from '@swimlane/ngx-datatable';\n\nexport const isViewText = (type: ContentTypeColumnEnum) => {\n  return type === ContentTypeColumnEnum.text;\n};\n\nexport const isViewImage = (type: ContentTypeColumnEnum) => {\n  return type === ContentTypeColumnEnum.image;\n};\n\nexport const isViewTag = (type: ContentTypeColumnEnum) => {\n  return type === ContentTypeColumnEnum.tag;\n};\n\nexport const isViewCheck = (type: ContentTypeColumnEnum) => {\n  return type === ContentTypeColumnEnum.check;\n};\n\nexport const validArrayType = (field: string | string[]): boolean => {\n  return Array.isArray(field);\n};\n\nexport const assertionString = (field: string | string[]): string => {\n  return <string>field;\n};\n\nexport const assertionArray = (field: string | string[]): string[] => {\n  return <string[]>field;\n};\n\nexport const assertionColumnMode = (mode?: ColumnMode): ColumnMode => {\n  return <ColumnMode>mode;\n};\n\nexport const assertionSortMode = (type?: SortType): SortType => {\n  return <SortType>type;\n};\n","/*\n * Project:      skyfall-factory\n * Developed by: Juan David Pelaez Cumbe\n * Date:         24/03/24 - 23:17\n * Module name:  index\n * File name:    index.ts\n * IDE:          WebStorm\n */\nexport * from './default-config-table.const';\nexport * from './utils.const';\n","import {ColumnMode, SortType, SelectionType} from '@swimlane/ngx-datatable';\nimport {\n  TableBasicConfigModel, TableCssClassConfigModel,\n  TableIconConfigModel,\n  TableImageConfigModel,\n} from './atoms.models';\nimport {TN_ICONS} from '../constants';\n\n/**\n * @description\n * Column type support\n * @enum\n */\nexport enum ContentTypeColumnEnum {\n  'check' = 'check',\n  'tag' = 'tag',\n  'text' = 'text',\n  'image' = 'image',\n  'iconGroup' = 'iconGroup',\n  customOne = 'customOne',\n  customTwo = 'customTwo'\n}\n\n/**\n * @description\n * Action type support\n * @enum\n */\nexport enum ActionTypeEnum {\n  update,\n  delete,\n  create,\n  changeStatus\n}\n\n/**\n * @description\n * icons type support\n * @enum\n */\nexport enum IconCellTypeEnum {\n  pen = 'pen',\n  trash = 'trash',\n  arrowsRotate = 'arrowsRotate',\n  add = 'add',\n  minus = 'minus',\n  arrowDown = 'arrowDown',\n  arrowUp = 'arrowUp',\n  arrowRight = 'arrowRight',\n  arrowLeft = 'arrowLeft',\n  circleCheck = 'circleCheck',\n  circleClose = 'circleClose',\n  mail = 'mail',\n  whatsapp = 'whatsapp',\n  facebook = 'facebook',\n  twitter = 'twitter',\n  insta = 'insta',\n  messenger = 'messenger',\n  sms = 'sms',\n}\n\n/**\n * @description\n * Theme table lib support\n * @enum\n */\nexport enum TableThemeEnum {\n  'light' = 'light',\n  'dark' = 'dark'\n}\n\n/**\n * @description\n * Type for columns align\n * @type\n */\nexport enum TnColumnAlignType {\n  'center' = 'center',\n  'end' = 'end',\n  'start' = 'start'\n}\n\n/**\n * @description\n * Model for content in mapping\n * @interface\n */\nexport interface TnIconContentMapModel {\n  icon: string,\n  pack: 'regular' | 'brands'\n}\n\n/**\n * @description\n * Icons mapped with an enumerator\n * @constant\n */\nexport const TN_ICON_MAP: Record<IconCellTypeEnum, TnIconContentMapModel> = {\n  [IconCellTypeEnum.add]: {\n    icon: TN_ICONS.add,\n    pack: 'regular',\n  },\n  [IconCellTypeEnum.minus]: {\n    icon: TN_ICONS.minus,\n    pack: 'regular',\n  },\n  [IconCellTypeEnum.arrowsRotate]: {\n    icon: TN_ICONS.arrowsRotate,\n    pack: 'regular',\n  },\n  [IconCellTypeEnum.arrowDown]: {\n    icon: TN_ICONS.arrowDown,\n    pack: 'regular',\n  },\n  [IconCellTypeEnum.arrowUp]: {\n    icon: TN_ICONS.arrowUp,\n    pack: 'regular',\n  },\n  [IconCellTypeEnum.arrowRight]: {\n    icon: TN_ICONS.arrowRight,\n    pack: 'regular',\n  },\n  [IconCellTypeEnum.arrowLeft]: {\n    icon: TN_ICONS.arrowLeft,\n    pack: 'regular',\n  },\n  [IconCellTypeEnum.pen]: {\n    icon: TN_ICONS.pen,\n    pack: 'regular',\n  },\n  [IconCellTypeEnum.sms]: {\n    icon: TN_ICONS.sms,\n    pack: 'regular',\n  },\n  [IconCellTypeEnum.facebook]: {\n    icon: TN_ICONS.facebook,\n    pack: 'brands',\n  },\n  [IconCellTypeEnum.messenger]: {\n    icon: TN_ICONS.messenger,\n    pack: 'brands',\n  },\n  [IconCellTypeEnum.insta]: {\n    icon: TN_ICONS.insta,\n    pack: 'brands',\n  },\n  [IconCellTypeEnum.twitter]: {\n    icon: TN_ICONS.twitter,\n    pack: 'brands',\n  },\n  [IconCellTypeEnum.whatsapp]: {\n    icon: TN_ICONS.whatsapp,\n    pack: 'brands',\n  },\n  [IconCellTypeEnum.circleCheck]: {\n    icon: TN_ICONS.circleCheck,\n    pack: 'regular',\n  },\n  [IconCellTypeEnum.circleClose]: {\n    icon: TN_ICONS.circleClose,\n    pack: 'regular',\n  },\n  [IconCellTypeEnum.mail]: {\n    icon: TN_ICONS.mail,\n    pack: 'regular',\n  },\n  [IconCellTypeEnum.trash]: {\n    icon: TN_ICONS.trash,\n    pack: 'regular',\n  },\n};\n\n/**\n * @description\n * Model that returns the click event on the rows\n * @interface\n */\nexport interface TableEventRowClick<T = any> {\n  type: ActionTypeEnum;\n  row: T;\n}\n\n/**\n * @description\n * Configuration model for table columns\n * @interface\n */\nexport interface TableColumnModel {\n  field: string | string[];\n  header: string;\n  align?: TnColumnAlignType;\n  sort?: boolean;\n  resize?: boolean;\n  grow?: number;\n  type: ContentTypeColumnEnum;\n  dualIcon?: IconCellTypeEnum[];\n}\n\n/**\n * @description\n * configuration model for button icons\n * @interface\n */\nexport interface TableIconActionColumnModel {\n  icon?: string;\n  class?: string;\n}\n\n/**\n * @description\n * Configuration model for functional buttons\n * @interface\n */\nexport interface TableActionColumnModel {\n  type: ActionTypeEnum;\n  icon?: string;\n  cssClass?: string;\n  tooltip?: string;\n  click?: Function;\n}\n\n/**\n * @description\n * Configuration model for action columns\n * @interface\n */\nexport interface TableActioneConfigModel {\n  data: TableActionColumnModel[];\n  header?: string;\n}\n\n/**\n * @description\n * Configuration model for table messages\n * @interface\n */\nexport interface TableMessageConfigModel {\n  empty?: string;\n  error?: string;\n}\n\n/**\n * @description\n * Configuration model for table cell view config\n * @interface\n */\nexport interface TableCellViewConfigModel {\n  image?: TableImageConfigModel,\n  tag?: TableBasicConfigModel,\n  icon?: TableIconConfigModel,\n}\n\n/**\n * @description\n * Model for additional table configuration\n * @interface\n */\nexport interface TableExtraConfigModel {\n  actions?: TableActioneConfigModel;\n  messages?: TableMessageConfigModel;\n  config?: TableCellViewConfigModel;\n  image?: TableImageConfigModel;\n  tag?: TableBasicConfigModel;\n  check?: TableCssClassConfigModel;\n  sortType?: SortType;\n  selection?: SelectionType;\n  columnMode?: ColumnMode;\n}\n\n/**\n * @description\n * Model for the configuration of the basic/child table\n * @interface\n */\nexport interface TableChildrenConfigModel {\n  field?: string;\n  columns: TableColumnModel[];\n  extra?: TableExtraConfigModel;\n  limit?: number;\n}\n\n/**\n * @description\n * Model for the configuration of the nested table\n * @interface\n */\nexport interface TableConfigModel<T = any[]> {\n  data: T;\n  columns: TableColumnModel[];\n  extra?: TableExtraConfigModel;\n  children?: TableChildrenConfigModel;\n}\n","/*\n * Project:      skyfall-factory\n * Developed by: Juan David Pelaez Cumbe\n * Date:         25/03/24 - 11:59\n * Module name:  index\n * File name:    index.ts\n * IDE:          WebStorm\n */\nexport * from './atoms.models';\nexport * from './nested.models';\n","import {Component, Input} from '@angular/core';\nimport {IconCellTypeEnum, TN_ICON_MAP} from '../../../models';\n\n@Component({\n  selector: 'ngx-table-icon',\n  standalone: true,\n  imports: [],\n  template: `\n    <span\n      [class]=\"defaultPrefix + (iconsList[icon].pack) + ' '\n      + defaultPrefix + iconsList[icon].icon + ' '\n      + cssClass\">\n    </span>\n  `,\n})\nexport class TableIconComponent {\n  @Input({required: true}) icon: IconCellTypeEnum = IconCellTypeEnum.pen;\n  @Input({required: false}) cssClass: string = '';\n  @Input({required: false}) defaultPrefix: string = 'fa-';\n  @Input({required: false}) defaultPack: string = 'regular';\n  protected readonly iconsList = TN_ICON_MAP;\n}\n","import {Component, Input} from '@angular/core';\nimport {NgClass} from '@angular/common';\nimport {TableBasicConfigModel} from '../../../models';\nimport {DEFAULT_EXTRA_CONFIG} from '../../../constants';\n\n@Component({\n  selector: 'ngx-table-tag',\n  standalone: true,\n  imports: [NgClass],\n  template: `\n    <span class=\"table__tag\" [ngClass]=\"ngTagClass\">\n      {{ showTagLabel }}\n    </span>\n  `,\n  styleUrl: './table-tag.component.scss',\n})\nexport class TableTagComponent {\n  @Input({required: true}) value: boolean = false;\n  @Input({required: false}) config?: TableBasicConfigModel;\n  defaultTagConfig: TableBasicConfigModel = <TableBasicConfigModel>DEFAULT_EXTRA_CONFIG.tag;\n\n  get ngTagClass() {\n    return this.value\n      ? (this.config?.activeCssClass ?? this.defaultTagConfig.activeCssClass)\n      : (this.config?.inactiveCssClass ?? this.defaultTagConfig.inactiveCssClass);\n  }\n\n  get showTagLabel() {\n    return this.value\n      ? (this.config?.activeLabel ?? this.defaultTagConfig.activeLabel)\n      : (this.config?.inactiveLabel ?? this.defaultTagConfig.inactiveLabel);\n  }\n}\n","import {Component, Input} from '@angular/core';\nimport {NgClass, NgIf} from '@angular/common';\nimport {ActionTypeEnum, IconCellTypeEnum} from '../../../models';\nimport {TableIconComponent} from '../table-icon/table-icon.component';\n\n@Component({\n  selector: 'ngx-table-button',\n  standalone: true,\n  imports: [NgClass, NgIf, TableIconComponent],\n  template: `\n    <button class=\"table__btn\"\n            [ngClass]=\"{ 'update': isUpdateIcon, 'delete': isDeleteIcon, 'create': isCreateIcon }\">\n      <ngx-table-icon class=\"tn_grid_center\" [ngClass]=\"'icon ' + type\" [icon]=\"actionIcon\"/>\n    </button>\n  `,\n  styleUrl: './table-button.component.scss',\n})\nexport class TableButtonComponent {\n  @Input({required: true}) type: ActionTypeEnum = ActionTypeEnum.create;\n  @Input({required: false}) icon: string = '';\n  private readonly actionType = ActionTypeEnum;\n\n  get isUpdateIcon(): boolean {\n    return this.type === this.actionType.update;\n  }\n\n  get isDeleteIcon(): boolean {\n    return this.type === this.actionType.delete;\n  }\n\n  get isCreateIcon(): boolean {\n    return this.type === this.actionType.create;\n  }\n\n  get actionIcon(): IconCellTypeEnum {\n    if (this.isUpdateIcon) return IconCellTypeEnum.pen;\n    if (this.isCreateIcon) return IconCellTypeEnum.add;\n    if (this.isDeleteIcon) return IconCellTypeEnum.trash;\n    return IconCellTypeEnum.circleClose;\n  }\n\n}\n","import {Component, Input, ViewEncapsulation} from '@angular/core';\nimport {NgIf} from '@angular/common';\nimport {\n  DEFAULT_EXTRA_CONFIG,\n  isViewImage,\n  isViewText,\n} from '../../../constants';\nimport {\n  ContentTypeColumnEnum,\n  TableExtraConfigModel, TableImageConfigModel,\n} from '../../../models';\n\n@Component({\n  selector: 'ngx-table-column-basic-view',\n  standalone: true,\n  imports: [NgIf],\n  encapsulation: ViewEncapsulation.None,\n  template: `\n    @if (isColumnText(type)) {\n      <span>{{ value }}</span>\n    }\n    @if (isColumnImage(type)) {\n      <img *ngIf=\"value else imgAlternative\" [src]=\"value\" width=\"auto\" height=\"32\"\n           [alt]=\"' ' + (config.image ? (config.image.alternativeText ?? (defaultImageConfig.alternativeText ?? '') ) : (defaultImageConfig.alternativeText ?? '')) \"\n           class=\"table_img\"\n           loading=\"lazy\">\n      <ng-template #imgAlternative>\n        <span>{{ (config.image ? (config.image.noImageText ?? (defaultImageConfig.noImageText ?? '') ) : (defaultImageConfig.noImageText ?? '')) }}</span>\n      </ng-template>\n    }\n  `,\n})\nexport class TableColumnBasicViewComponent {\n  @Input({required: true}) type: ContentTypeColumnEnum = ContentTypeColumnEnum.text;\n  @Input({required: true}) value?: string;\n  @Input({required: false}) config: TableExtraConfigModel = DEFAULT_EXTRA_CONFIG;\n  protected readonly defaultImageConfig: TableImageConfigModel = <TableImageConfigModel>DEFAULT_EXTRA_CONFIG.image;\n  protected readonly isColumnText = isViewText;\n  protected readonly isColumnImage = isViewImage;\n}\n","import {Component, Input, ViewEncapsulation} from '@angular/core';\nimport {NgClass, NgIf} from '@angular/common';\nimport {TableTagComponent} from '../table-tag/table-tag.component';\nimport {TableIconComponent} from '../table-icon/table-icon.component';\nimport {\n  ContentTypeColumnEnum\n} from '../../../models';\nimport {DEFAULT_EXTRA_CONFIG} from '../../../constants';\n\n@Component({\n  selector: 'ngx-table-column-view',\n  standalone: true,\n  imports: [NgIf, TableTagComponent, NgClass, TableIconComponent],\n  encapsulation: ViewEncapsulation.None,\n  template: `\n    @for (item of values; track item) {\n      <span>{{ item }}</span>\n    }\n  `,\n})\nexport class TableColumnComposeViewComponent {\n  @Input({required: true}) type: ContentTypeColumnEnum = ContentTypeColumnEnum.text;\n  @Input({required: true}) values: string[] = [];\n  @Input({required: false}) config = DEFAULT_EXTRA_CONFIG;\n}\n","import {Component, Input, ViewEncapsulation} from '@angular/core';\nimport {NgClass, NgIf} from '@angular/common';\nimport {TableIconComponent} from '../table-icon/table-icon.component';\nimport {DEFAULT_EXTRA_CONFIG} from '../../../constants';\nimport {IconCellTypeEnum, TableCssClassConfigModel} from '../../../models';\n\n@Component({\n  selector: 'ngx-table-column-icon-view',\n  standalone: true,\n  imports: [NgIf, NgClass, TableIconComponent],\n  encapsulation: ViewEncapsulation.None,\n  template: `\n    <ngx-table-icon [class]=\"iconClassColumn\" [cssClass]=\"'icon ' + iconClassColumn \" [icon]=\"iconViewColumn\"/>`,\n})\nexport class TableColumnIconViewComponent {\n  @Input({required: true}) value: boolean = false;\n  @Input({required: true}) icons: IconCellTypeEnum[] = [];\n  @Input({required: false}) config?: TableCssClassConfigModel = DEFAULT_EXTRA_CONFIG.check;\n  defaultConfig = <TableCssClassConfigModel>DEFAULT_EXTRA_CONFIG.check;\n\n  get iconViewColumn(): IconCellTypeEnum {\n    return (this.icons[this.value ? 0 : 1]);\n  }\n\n  get iconClassColumn(): string {\n    return this.value\n      ? this.config?.activeCssClass ?? this.defaultConfig.activeCssClass\n      : this.config?.inactiveCssClass ?? this.defaultConfig.inactiveCssClass;\n  }\n\n}\n","import {Component, Input, OnInit, ViewEncapsulation} from '@angular/core';\n\n@Component({\n  selector: 'ngx-table-column-initials-view',\n  standalone: true,\n  imports: [],\n  encapsulation: ViewEncapsulation.None,\n  template: `\n    @if (value.initials.length > 0) {\n      <div class=\"avatar__wrapper\">\n        @for (initialField of value.initials; track initialField) {\n          <span class=\"circle\">{{ initialField }}</span>\n        }\n        @if (value.initials.length > 0 && (value.total - 5) > 0) {\n          <span class=\"circle total\">{{ '+'+(value.total - 5) }}</span>\n        }\n      </div>\n    }\n  `,\n})\nexport class TableColumnInitialsViewComponent implements OnInit {\n  @Input({required: true}) value: { initials: string[], total: number } = { initials: [], total: 0};\n\n  ngOnInit() {\n    console.log(this.value);\n  }\n\n}\n","/*\n * Project:      skyfall-factory\n * Developed by: Juan David Pelaez Cumbe\n * Date:         24/03/24 - 13:15\n * Module name:  index\n * File name:    index.ts\n * IDE:          WebStorm\n */\n\nexport * from './table-icon/table-icon.component';\nexport * from './table-tag/table-tag.component';\nexport * from './table-button/table-button.component';\nexport * from './table-column-basic-view/table-column-basic-view.component';\nexport * from './table-column-compose-view/table-column-compose-view.component';\nexport * from './table-column-icon-view/table-column-icon-view.component';\nexport * from './table-column-initials-view/table-column-initials-view.component';\n","import {Component, EventEmitter, Input, Output} from '@angular/core';\nimport {NgxDatatableModule} from '@swimlane/ngx-datatable';\nimport {NgFor, NgIf, NgClass} from '@angular/common';\nimport {\n  TableButtonComponent,\n  TableTagComponent,\n  TableColumnBasicViewComponent,\n  TableColumnIconViewComponent, TableColumnInitialsViewComponent,\n} from '../shared';\nimport {\n  TableThemeEnum,\n  TableEventRowClick,\n  TableConfigModel,\n  TableExtraConfigModel,\n  IconCellTypeEnum, ContentTypeColumnEnum,\n} from '../../models';\nimport {\n  assertionColumnMode, assertionSortMode,\n  assertionString,\n  DEFAULT_BASIC_CONFIG, DEFAULT_EXTRA_CONFIG, isViewCheck, isViewImage, isViewTag, isViewText,\n  validArrayType,\n} from '../../constants';\n\n@Component({\n  selector: 'ngx-table-basic',\n  standalone: true,\n  imports: [NgIf, NgClass, NgFor, NgxDatatableModule, TableButtonComponent, TableTagComponent, TableColumnBasicViewComponent, TableColumnIconViewComponent, TableColumnInitialsViewComponent],\n  templateUrl: './table-basic.component.html',\n})\nexport class TableBasicComponent {\n  @Input({required: true}) dataTable?: TableConfigModel;\n  @Input({required: false}) limit = DEFAULT_BASIC_CONFIG.limit;\n  @Input({required: false}) theme: TableThemeEnum = TableThemeEnum.light;\n  @Output() onRowClick: EventEmitter<TableEventRowClick> = new EventEmitter();\n  @Output() onIconClick: EventEmitter<{ field: string, row: unknown }> = new EventEmitter();\n  readonly defaultConfig = DEFAULT_BASIC_CONFIG;\n  readonly iconEnumList = IconCellTypeEnum;\n\n  readonly validArrayType = validArrayType;\n  readonly assertionString = assertionString;\n  readonly assertionColumnMode = assertionColumnMode;\n  readonly assertionSortMode = assertionSortMode;\n\n  readonly isColumnText = isViewText;\n  readonly isColumnImage = isViewImage;\n  readonly isColumnTag = isViewTag;\n  readonly isColumnCheck = isViewCheck;\n  contentTypeColumnEnum = ContentTypeColumnEnum;\n\n  get isDark(): boolean {\n    return this.theme === TableThemeEnum.dark;\n  }\n\n  get isLight(): boolean {\n    return this.theme === TableThemeEnum.light;\n  }\n\n  get columnConfig(): TableExtraConfigModel {\n    return (this.dataTable && this.dataTable.extra)\n      ? this.dataTable.extra\n      : DEFAULT_EXTRA_CONFIG;\n  }\n\n  onClickIcon(field: string, row: unknown) {\n    console.log(field, row);\n    this.onIconClick.emit({field, row});\n  }\n\n}\n","<ngx-datatable *ngIf=\"dataTable && dataTable.columns && dataTable.data && dataTable.data.length > 0 else noData\"\n               [rowHeight]=\"defaultConfig.row\"\n               [ngClass]=\"{\n                     'dark': isDark,\n                     'bootstrap': isLight\n                   }\"\n               [rows]=\"dataTable.data\"\n               [headerHeight]=\"defaultConfig.header\"\n               [footerHeight]=\"defaultConfig.footer\"\n               [columnMode]=\"assertionColumnMode(dataTable.extra?.columnMode ?? columnConfig.columnMode)\"\n               [sortType]=\"assertionSortMode(dataTable.extra?.sortType ?? columnConfig.sortType)\"\n               [limit]=\"limit ?? defaultConfig.limit\"\n               [scrollbarV]=\"false\">\n  <ng-container *ngFor=\"let columnItem of dataTable.columns\">\n    @if (validArrayType(columnItem.field)) {\n      not supported\n    } @else {\n      <ngx-datatable-column [name]=\"columnItem.header\" [prop]=\"assertionString(columnItem.field)\"\n                            [resizeable]=\"columnItem.resize ?? false\"\n                            [flexGrow]=\"columnItem.grow ?? 1\" [sortable]=\"columnItem.sort ?? false\"\n                            headerClass=\"tn_py_2\" [cellClass]=\"'tn_py_2 ' + columnItem.align\">\n        <ng-template let-column=\"column\" ngx-datatable-header-template>\n          <strong>{{ column.name }}</strong>\n        </ng-template>\n        @if (columnItem.type === contentTypeColumnEnum.customTwo) {\n          <ng-content select=\"[customTwo]\"></ng-content>\n        }\n        <ng-template let-dataRow=\"row\" ngx-datatable-cell-template>\n          @if (isColumnText(columnItem.type) || isColumnImage(columnItem.type)) {\n            <ngx-table-column-basic-view\n              [type]=\"columnItem.type\"\n              [value]=\"dataRow[assertionString(columnItem.field)]\"\n              [config]=\"columnConfig\"/>\n          }\n          @if (isColumnTag(columnItem.type)) {\n            <ngx-table-tag\n              [value]=\"dataRow[assertionString(columnItem.field)]\"\n              [config]=\"columnConfig.tag\"/>\n          }\n          @if (isColumnCheck(columnItem.type)) {\n            <ngx-table-column-icon-view\n              [value]=\"dataRow[assertionString(columnItem.field)]\"\n              [icons]=\"[iconEnumList.circleCheck, iconEnumList.circleClose]\"\n              [config]=\"columnConfig.check\"\n            (click)=\"onClickIcon(assertionString(columnItem.field), dataRow[assertionString(columnItem.field)])\"/>\n          }\n          @if (columnItem.type === contentTypeColumnEnum.customOne) {\n           <ngx-table-column-initials-view [value]=\"dataRow[assertionString(columnItem.field)]\"/>\n          }\n        </ng-template>\n      </ngx-datatable-column>\n    }\n\n  </ng-container>\n  <ngx-datatable-column *ngIf=\"dataTable.extra && dataTable.extra.actions\"\n                        [name]=\"dataTable.extra.actions.header ?? (columnConfig.actions?.header ?? '')\"\n                        prop=\"action\"\n                        [resizeable]=\"false\" [flexGrow]=\"1\"\n                        [sortable]=\"false\"\n                        headerClass=\"tn_py_2 tn_text_center\" cellClass=\"tn_py_2 center\">\n    <ng-template ngx-datatable-header-template>\n      <strong> {{ dataTable.extra.actions.header ?? columnConfig.actions?.header }}</strong>\n    </ng-template>\n    <ng-template let-dataItem=\"row\" ngx-datatable-cell-template>\n          <span class=\"table__actions_content\">\n            <ngx-table-button *ngFor=\"let action of dataTable.extra.actions.data\" [type]=\"action.type\"\n                              (click)=\"onRowClick.emit({type: action.type, row: dataItem})\" [title]=\"action.tooltip\"/>\n          </span>\n    </ng-template>\n  </ngx-datatable-column>\n</ngx-datatable>\n<ng-template #noData>\n  <div class=\"tn_sms_warning\"> {{ dataTable?.extra?.messages?.empty ?? 'No hay información que mostrar...' }}</div>\n</ng-template>\n","import {Component, EventEmitter, Input, Output, ViewChild} from '@angular/core';\nimport {NgClass, NgForOf, NgIf} from '@angular/common';\nimport {DatatableComponent, NgxDatatableModule} from '@swimlane/ngx-datatable';\nimport {\n    TableThemeEnum,\n    TableEventRowClick,\n    TableConfigModel,\n    TableExtraConfigModel, IconCellTypeEnum, ContentTypeColumnEnum,\n} from '../../models';\nimport {\n  TABLE_LIMIT,\n  TABLE_COLUMN_ICON_WIDTH,\n  TABLE_CHILDREN_ROW_HEIGHT,\n  TABLE_CHILDREN_ROW_OFFSET,\n  DEFAULT_BASIC_CONFIG,\n  TABLE_CHILDREN_KEY,\n  validArrayType,\n  assertionString,\n  DEFAULT_EXTRA_CONFIG,\n  isViewTag,\n  isViewText, isViewImage, isViewCheck, assertionColumnMode, assertionSortMode,\n} from '../../constants';\nimport {\n  TableButtonComponent,\n  TableTagComponent,\n  TableColumnBasicViewComponent,\n  TableColumnIconViewComponent, TableColumnInitialsViewComponent,\n} from '../shared';\nimport {TableBasicComponent} from '../table-basic/table-basic.component';\n\n@Component({\n  selector: 'ngx-table-nested',\n  standalone: true,\n  imports: [NgForOf, NgIf, NgClass, NgxDatatableModule, TableBasicComponent, TableButtonComponent, TableTagComponent, TableColumnBasicViewComponent, TableColumnIconViewComponent, TableColumnInitialsViewComponent],\n  templateUrl: './table-nested.component.html',\n  styleUrls: ['./table-nested.component.scss']\n})\nexport class TableNestedComponent {\n  @ViewChild('tableNested') table!: DatatableComponent;\n  @Input({required: true}) dataTable?: TableConfigModel;\n  @Input({required: false}) limit = DEFAULT_BASIC_CONFIG.limit;\n  @Input({required: false}) theme: TableThemeEnum = TableThemeEnum.light;\n  @Output() onRowClick: EventEmitter<TableEventRowClick> = new EventEmitter();\n  @Output() onIconClick: EventEmitter<{ field: string, row: unknown }> = new EventEmitter();\n  @Output() onRowClickChildren: EventEmitter<TableEventRowClick> = new EventEmitter();\n  @Output() onRowIconChildren: EventEmitter<{ field: string, row: unknown }> = new EventEmitter();\n  protected readonly defaultConfig = DEFAULT_BASIC_CONFIG;\n  protected readonly iconEnumList = IconCellTypeEnum;\n  protected readonly validArrayType = validArrayType;\n  protected readonly assertionString = assertionString;\n  protected readonly isColumnTag = isViewTag;\n  protected readonly isColumnText = isViewText;\n  protected readonly isColumnImage = isViewImage;\n  protected readonly isColumnCheck = isViewCheck;\n  protected readonly assertionColumnMode = assertionColumnMode;\n  protected readonly assertionSortMode = assertionSortMode;\n\n  // collapse section\n  tableChildCountOfRows = this.defaultConfig.limit;\n  tableRowExpanded: any;\n  // sizes\n  iconColumnWidth = TABLE_COLUMN_ICON_WIDTH;\n  childrenRowHeight = TABLE_CHILDREN_ROW_HEIGHT;\n  childrenRowOff = TABLE_CHILDREN_ROW_OFFSET;\n\n  get getChildrenField() {\n    const data = this.dataTable;\n    if (data && data.children && data.children.field) return data.children.field;\n    return TABLE_CHILDREN_KEY;\n  }\n\n  get columnConfig(): TableExtraConfigModel {\n    return (this.dataTable && this.dataTable.extra)\n      ? this.dataTable.extra\n      : DEFAULT_EXTRA_CONFIG;\n  }\n\n  get tableTheme(): Record<string, boolean> {\n    return {\n      'dark': this.theme === TableThemeEnum.dark,\n      'bootstrap': this.theme === TableThemeEnum.light\n    };\n  }\n\n  get childrenExtraConfig(): TableExtraConfigModel {\n    const data = this.dataTable;\n    if (data && data.children && data.children.extra) return data.children.extra;\n    return DEFAULT_EXTRA_CONFIG\n  }\n\n  get heightDetailRow() {\n    const zero = 0;\n    return this.childrenRowOff + (this.tableChildCountOfRows === zero ? zero : (this.childrenRowHeight * this.calcRowCount));\n  }\n\n  get calcRowCount() {\n    const zero = 0;\n    if (this.tableChildCountOfRows === zero) return zero;\n    if (this.tableChildCountOfRows <= TABLE_LIMIT) return this.tableChildCountOfRows;\n    return TABLE_LIMIT;\n  }\n\n  handlerExpandRow(row: any) {\n    if (this.tableRowExpanded) {\n      this.table.rowDetail.toggleExpandRow(this.tableRowExpanded);\n    }\n    if (this.tableRowExpanded !== row) {\n      this.table.rowDetail.toggleExpandRow(row);\n      this.tableRowExpanded = row;\n    } else {\n      this.tableRowExpanded = undefined;\n    }\n    this.tableChildCountOfRows = row[this.getChildrenField].length;\n  }\n\n    protected readonly contentTypeColumnEnum = ContentTypeColumnEnum;\n}\n","<ng-container *ngIf=\"dataTable && dataTable.columns && dataTable.data.length > 0 else noData\">\n  <ngx-datatable #tableNested\n                 [ngClass]=\"tableTheme\"\n                 [rows]=\"dataTable.data\"\n                 [columnMode]=\"assertionColumnMode(dataTable.extra?.columnMode ?? columnConfig.columnMode)\"\n                 [headerHeight]=\"defaultConfig.header\"\n                 [footerHeight]=\"defaultConfig.footer\"\n                 [rowHeight]=\"defaultConfig.row\"\n                 [scrollbarV]=\"false\"\n                 [sortType]=\"assertionSortMode(dataTable.extra?.sortType ?? columnConfig.sortType)\"\n                 [limit]=\"limit ?? defaultConfig.limit\"\n  >\n    <ngx-datatable-row-detail [rowHeight]=\"heightDetailRow\" class=\"tn_p_3\">\n      <ng-template let-row=\"row\" ngx-datatable-row-detail-template>\n        <ngx-table-basic [class]=\"row[getChildrenField] ? 'table_child_content' : ''\"\n                         *ngIf=\"dataTable.children\"\n                         [dataTable]=\"{\n                           data: row[getChildrenField],\n                           columns: dataTable.children.columns,\n                           extra: childrenExtraConfig\n                         }\"\n                         [theme]=\"theme\"\n                         [limit]=\"dataTable.children.limit ?? defaultConfig.limit\"\n                         (onRowClick)=\"onRowClickChildren.emit($event)\"\n                         (onIconClick)=\"onRowIconChildren.emit($event)\"\n        />\n      </ng-template>\n    </ngx-datatable-row-detail>\n    <ngx-datatable-column\n      [width]=\"iconColumnWidth\"\n      [resizeable]=\"false\"\n      [sortable]=\"false\"\n      [draggable]=\"false\"\n      [canAutoResize]=\"false\"\n      [flexGrow]=\"0.8\"\n      [cellTemplate]=\"iconCollapse\"\n    />\n    <ng-container *ngFor=\"let columnItem of dataTable.columns\">\n      @if (validArrayType(columnItem.field)) {\n        not supported\n      } @else {\n        <ngx-datatable-column [name]=\"columnItem.header\" [prop]=\"assertionString(columnItem.field)\"\n                              [resizeable]=\"columnItem.resize ?? false\"\n                              [cellClass]=\"'' + columnItem.align\"\n                              [flexGrow]=\"columnItem.grow ?? 1\" [sortable]=\"columnItem.sort ?? false\">\n          <ng-template let-column=\"column\" ngx-datatable-header-template>\n            <strong>{{ column.name }}</strong>\n          </ng-template>\n          <ng-template let-dataItem=\"row\" ngx-datatable-cell-template>\n            @if (isColumnText(columnItem.type) || isColumnImage(columnItem.type)) {\n              <ngx-table-column-basic-view\n                [type]=\"columnItem.type\"\n                [value]=\"dataItem[assertionString(columnItem.field)]\"\n                [config]=\"columnConfig\"/>\n            }\n            @if (isColumnTag(columnItem.type)) {\n              <ngx-table-tag\n                [value]=\"dataItem[assertionString(columnItem.field)]\"\n                [config]=\"columnConfig.tag\"/>\n            }\n            @if (isColumnCheck(columnItem.type)) {\n              <ngx-table-column-icon-view\n                [value]=\"dataItem[assertionString(columnItem.field)]\"\n                [icons]=\"[iconEnumList.circleCheck, iconEnumList.circleClose]\"\n                [config]=\"columnConfig.check\"\n                (click)=\"onIconClick.emit({field: columnItem.type, row: dataItem[assertionString(columnItem.field)]})\"\n              />\n            }\n            @if (columnItem.type === contentTypeColumnEnum.customOne) {\n              <ngx-table-column-initials-view [value]=\"dataItem[assertionString(columnItem.field)]\"/>\n            }\n          </ng-template>\n        </ngx-datatable-column>\n\n      }\n    </ng-container>\n    <ngx-datatable-column *ngIf=\"dataTable.extra && dataTable.extra.actions\"\n                          [name]=\"dataTable.extra.actions.header ?? (columnConfig.actions?.header ?? '')\"\n                          prop=\"action\"\n                          [resizeable]=\"false\" [flexGrow]=\"1.2\" headerClass=\"tn_text_center\"\n                          [sortable]=\"false\">\n      <ng-template ngx-datatable-header-template>\n        <strong>{{ dataTable.extra.actions.header ?? columnConfig.actions?.header }}</strong>\n      </ng-template>\n      <ng-template let-dataItem=\"row\" ngx-datatable-cell-template class=\"agregada_en_template\">\n          <span class=\"table__actions_content\">\n            <ngx-table-button *ngFor=\"let action of dataTable.extra.actions.data\" [type]=\"action.type\"\n                              [title]=\"action.tooltip\"\n                              (click)=\"onRowClick.emit({type: action.type, row: dataItem})\"/>\n          </span>\n      </ng-template>\n    </ngx-datatable-column>\n  </ngx-datatable>\n  <ng-template #iconCollapse let-row=\"row\" let-expanded=\"expanded\" ngx-datatable-cell-template>\n    <button class=\"table__toggle\" [class.expanded]=\"expanded\" title=\"Mostrar/Ocultar fila\"\n            [class.datatable-icon-right]=\"!expanded\"\n            [class.datatable-icon-down]=\"expanded\"\n            (click)=\"handlerExpandRow(row)\">\n    </button>\n  </ng-template>\n</ng-container>\n<ng-template #noData>\n  <div class=\"tn_sms_warning\"> {{ dataTable?.extra?.messages?.empty ?? 'No hay información que mostrar...' }}</div>\n</ng-template>\n","/*\n * Project:      skyfall-factory\n * Developed by: Juan David Pelaez Cumbe\n * Date:         31/01/24 - 16:31\n * Module name:  index.ts\n * File name:    index.ts\n * IDE:          WebStorm\n */\n\nexport * from './shared';\nexport * from './table-basic/table-basic.component';\nexport * from './table-nested/table-nested.component';\n","/*\n * Public API Surface of ngx-table-nested\n */\n\nexport * from './lib/models';\nexport * from './lib/constants';\nexport * from './lib/components';\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;AAAA;;;;;;;AAOG;;ACDI,MAAM,uBAAuB,GAAG,GAAG;AACnC,MAAM,gBAAgB,GAAG,GAAG;AAC5B,MAAM,mBAAmB,GAAG,GAAG;AAC/B,MAAM,mBAAmB,GAAG,GAAG;AAE/B,MAAM,kBAAkB,GAAG,WAAW;AACtC,MAAM,yBAAyB,GAAG,IAAI;AACtC,MAAM,yBAAyB,GAAG,GAAG;AACrC,MAAM,WAAW,GAAG,EAAE;AAEhB,MAAA,kBAAkB,GAA0B;AACvD,IAAA,WAAW,EAAE,QAAQ;AACrB,IAAA,cAAc,EAAE,QAAQ;AACxB,IAAA,aAAa,EAAE,UAAU;AACzB,IAAA,gBAAgB,EAAE,UAAU;EAC5B;AAEW,MAAA,oBAAoB,GAA6B;AAC5D,IAAA,cAAc,EAAE,QAAQ;AACxB,IAAA,gBAAgB,EAAE,UAAU;EAC5B;AAEW,MAAA,mBAAmB,GAAyB;AACvD,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,QAAQ,EAAE,qBAAqB;EAC/B;AAGW,MAAA,oBAAoB,GAAiC;AAChE,IAAA,MAAM,EAAE,mBAAmB;AAC3B,IAAA,MAAM,EAAE,mBAAmB;AAC3B,IAAA,GAAG,EAAE,gBAAgB;AACrB,IAAA,KAAK,EAAE,WAAW;EAClB;AAEW,MAAA,oBAAoB,GAA0B;AACzD,IAAA,eAAe,EAAE,+BAA+B;AAChD,IAAA,WAAW,EAAE,KAAK;AAClB,IAAA,KAAK,EAAE,uBAAuB;EAC9B;AAGW,MAAA,sBAAsB,GAA4B;AAC7D,IAAA,KAAK,EAAE,oBAAoB;AAC3B,IAAA,KAAK,EAAE,uCAAuC;EAC9C;AAEW,MAAA,uBAAuB,GAAG;AACrC,IAAA,MAAM,EAAE;AACN,QAAA,KAAK,EAAE,QAAQ;AACf,QAAA,IAAI,EAAE,QAAQ;AACf,KAAA;AACD,IAAA,QAAQ,EAAE;AACR,QAAA,KAAK,EAAE,UAAU;AACjB,QAAA,IAAI,EAAE,UAAU;AACjB,KAAA;EACD;AAEW,MAAA,qBAAqB,GAA4B;AAC5D,IAAA,MAAM,EAAE,SAAS;AACjB,IAAA,IAAI,EAAE,EAAE;EACR;AAgBF;;;;AAIG;AACU,MAAA,QAAQ,GAA+B;AAClD,IAAA,GAAG,EAAE,KAAK;AACV,IAAA,KAAK,EAAE,WAAW;AAClB,IAAA,YAAY,EAAE,QAAQ;AACtB,IAAA,GAAG,EAAE,MAAM;AACX,IAAA,KAAK,EAAE,OAAO;AACd,IAAA,SAAS,EAAE,cAAc;AACzB,IAAA,OAAO,EAAE,YAAY;AACrB,IAAA,UAAU,EAAE,eAAe;AAC3B,IAAA,SAAS,EAAE,cAAc;AACzB,IAAA,WAAW,EAAE,cAAc;AAC3B,IAAA,WAAW,EAAE,cAAc;AAC3B,IAAA,IAAI,EAAE,UAAU;AAChB,IAAA,QAAQ,EAAE,UAAU;AACpB,IAAA,QAAQ,EAAE,UAAU;AACpB,IAAA,OAAO,EAAE,WAAW;AACpB,IAAA,KAAK,EAAE,WAAW;AAClB,IAAA,SAAS,EAAE,oBAAoB;AAC/B,IAAA,GAAG,EAAE,aAAa;EAClB;AAEW,MAAA,oBAAoB,GAA0B;IACzD,UAAU,EAAE,UAAU,CAAC,IAAI;IAC3B,QAAQ,EAAE,QAAQ,CAAC,MAAM;IACzB,SAAS,EAAE,aAAa,CAAC,MAAM;AAC/B,IAAA,KAAK,EAAE,oBAAoB;AAC3B,IAAA,KAAK,EAAE,oBAAoB;AAC3B,IAAA,GAAG,EAAE,kBAAkB;AACvB,IAAA,QAAQ,EAAE,sBAAsB;AAChC,IAAA,OAAO,EAAE,qBAAqB;;;ACrHhC;;;;;;;AAOG;AAKU,MAAA,UAAU,GAAG,CAAC,IAA2B,KAAI;AACxD,IAAA,OAAO,IAAI,KAAK,qBAAqB,CAAC,IAAI,CAAC;AAC7C,EAAE;AAEW,MAAA,WAAW,GAAG,CAAC,IAA2B,KAAI;AACzD,IAAA,OAAO,IAAI,KAAK,qBAAqB,CAAC,KAAK,CAAC;AAC9C,EAAE;AAEW,MAAA,SAAS,GAAG,CAAC,IAA2B,KAAI;AACvD,IAAA,OAAO,IAAI,KAAK,qBAAqB,CAAC,GAAG,CAAC;AAC5C,EAAE;AAEW,MAAA,WAAW,GAAG,CAAC,IAA2B,KAAI;AACzD,IAAA,OAAO,IAAI,KAAK,qBAAqB,CAAC,KAAK,CAAC;AAC9C,EAAE;AAEW,MAAA,cAAc,GAAG,CAAC,KAAwB,KAAa;AAClE,IAAA,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9B,EAAE;AAEW,MAAA,eAAe,GAAG,CAAC,KAAwB,KAAY;AAClE,IAAA,OAAe,KAAK,CAAC;AACvB,EAAE;AAEW,MAAA,cAAc,GAAG,CAAC,KAAwB,KAAc;AACnE,IAAA,OAAiB,KAAK,CAAC;AACzB,EAAE;AAEW,MAAA,mBAAmB,GAAG,CAAC,IAAiB,KAAgB;AACnE,IAAA,OAAmB,IAAI,CAAC;AAC1B,EAAE;AAEW,MAAA,iBAAiB,GAAG,CAAC,IAAe,KAAc;AAC7D,IAAA,OAAiB,IAAI,CAAC;AACxB;;AC9CA;;;;;;;AAOG;;ACCH;;;;AAIG;IACS,sBAQX;AARD,CAAA,UAAY,qBAAqB,EAAA;AAC/B,IAAA,qBAAA,CAAA,OAAA,CAAA,GAAA,OAAiB,CAAA;AACjB,IAAA,qBAAA,CAAA,KAAA,CAAA,GAAA,KAAa,CAAA;AACb,IAAA,qBAAA,CAAA,MAAA,CAAA,GAAA,MAAe,CAAA;AACf,IAAA,qBAAA,CAAA,OAAA,CAAA,GAAA,OAAiB,CAAA;AACjB,IAAA,qBAAA,CAAA,WAAA,CAAA,GAAA,WAAyB,CAAA;AACzB,IAAA,qBAAA,CAAA,WAAA,CAAA,GAAA,WAAuB,CAAA;AACvB,IAAA,qBAAA,CAAA,WAAA,CAAA,GAAA,WAAuB,CAAA;AACzB,CAAC,EARW,qBAAqB,KAArB,qBAAqB,GAQhC,EAAA,CAAA,CAAA,CAAA;AAED;;;;AAIG;IACS,eAKX;AALD,CAAA,UAAY,cAAc,EAAA;AACxB,IAAA,cAAA,CAAA,cAAA,CAAA,QAAA,CAAA,GAAA,CAAA,CAAA,GAAA,QAAM,CAAA;AACN,IAAA,cAAA,CAAA,cAAA,CAAA,QAAA,CAAA,GAAA,CAAA,CAAA,GAAA,QAAM,CAAA;AACN,IAAA,cAAA,CAAA,cAAA,CAAA,QAAA,CAAA,GAAA,CAAA,CAAA,GAAA,QAAM,CAAA;AACN,IAAA,cAAA,CAAA,cAAA,CAAA,cAAA,CAAA,GAAA,CAAA,CAAA,GAAA,cAAY,CAAA;AACd,CAAC,EALW,cAAc,KAAd,cAAc,GAKzB,EAAA,CAAA,CAAA,CAAA;AAED;;;;AAIG;IACS,iBAmBX;AAnBD,CAAA,UAAY,gBAAgB,EAAA;AAC1B,IAAA,gBAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;AACX,IAAA,gBAAA,CAAA,OAAA,CAAA,GAAA,OAAe,CAAA;AACf,IAAA,gBAAA,CAAA,cAAA,CAAA,GAAA,cAA6B,CAAA;AAC7B,IAAA,gBAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;AACX,IAAA,gBAAA,CAAA,OAAA,CAAA,GAAA,OAAe,CAAA;AACf,IAAA,gBAAA,CAAA,WAAA,CAAA,GAAA,WAAuB,CAAA;AACvB,IAAA,gBAAA,CAAA,SAAA,CAAA,GAAA,SAAmB,CAAA;AACnB,IAAA,gBAAA,CAAA,YAAA,CAAA,GAAA,YAAyB,CAAA;AACzB,IAAA,gBAAA,CAAA,WAAA,CAAA,GAAA,WAAuB,CAAA;AACvB,IAAA,gBAAA,CAAA,aAAA,CAAA,GAAA,aAA2B,CAAA;AAC3B,IAAA,gBAAA,CAAA,aAAA,CAAA,GAAA,aAA2B,CAAA;AAC3B,IAAA,gBAAA,CAAA,MAAA,CAAA,GAAA,MAAa,CAAA;AACb,IAAA,gBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB,CAAA;AACrB,IAAA,gBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB,CAAA;AACrB,IAAA,gBAAA,CAAA,SAAA,CAAA,GAAA,SAAmB,CAAA;AACnB,IAAA,gBAAA,CAAA,OAAA,CAAA,GAAA,OAAe,CAAA;AACf,IAAA,gBAAA,CAAA,WAAA,CAAA,GAAA,WAAuB,CAAA;AACvB,IAAA,gBAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;AACb,CAAC,EAnBW,gBAAgB,KAAhB,gBAAgB,GAmB3B,EAAA,CAAA,CAAA,CAAA;AAED;;;;AAIG;IACS,eAGX;AAHD,CAAA,UAAY,cAAc,EAAA;AACxB,IAAA,cAAA,CAAA,OAAA,CAAA,GAAA,OAAiB,CAAA;AACjB,IAAA,cAAA,CAAA,MAAA,CAAA,GAAA,MAAe,CAAA;AACjB,CAAC,EAHW,cAAc,KAAd,cAAc,GAGzB,EAAA,CAAA,CAAA,CAAA;AAED;;;;AAIG;IACS,kBAIX;AAJD,CAAA,UAAY,iBAAiB,EAAA;AAC3B,IAAA,iBAAA,CAAA,QAAA,CAAA,GAAA,QAAmB,CAAA;AACnB,IAAA,iBAAA,CAAA,KAAA,CAAA,GAAA,KAAa,CAAA;AACb,IAAA,iBAAA,CAAA,OAAA,CAAA,GAAA,OAAiB,CAAA;AACnB,CAAC,EAJW,iBAAiB,KAAjB,iBAAiB,GAI5B,EAAA,CAAA,CAAA,CAAA;AAYD;;;;AAIG;AACU,MAAA,WAAW,GAAoD;AAC1E,IAAA,CAAC,gBAAgB,CAAC,GAAG,GAAG;QACtB,IAAI,EAAE,QAAQ,CAAC,GAAG;AAClB,QAAA,IAAI,EAAE,SAAS;AAChB,KAAA;AACD,IAAA,CAAC,gBAAgB,CAAC,KAAK,GAAG;QACxB,IAAI,EAAE,QAAQ,CAAC,KAAK;AACpB,QAAA,IAAI,EAAE,SAAS;AAChB,KAAA;AACD,IAAA,CAAC,gBAAgB,CAAC,YAAY,GAAG;QAC/B,IAAI,EAAE,QAAQ,CAAC,YAAY;AAC3B,QAAA,IAAI,EAAE,SAAS;AAChB,KAAA;AACD,IAAA,CAAC,gBAAgB,CAAC,SAAS,GAAG;QAC5B,IAAI,EAAE,QAAQ,CAAC,SAAS;AACxB,QAAA,IAAI,EAAE,SAAS;AAChB,KAAA;AACD,IAAA,CAAC,gBAAgB,CAAC,OAAO,GAAG;QAC1B,IAAI,EAAE,QAAQ,CAAC,OAAO;AACtB,QAAA,IAAI,EAAE,SAAS;AAChB,KAAA;AACD,IAAA,CAAC,gBAAgB,CAAC,UAAU,GAAG;QAC7B,IAAI,EAAE,QAAQ,CAAC,UAAU;AACzB,QAAA,IAAI,EAAE,SAAS;AAChB,KAAA;AACD,IAAA,CAAC,gBAAgB,CAAC,SAAS,GAAG;QAC5B,IAAI,EAAE,QAAQ,CAAC,SAAS;AACxB,QAAA,IAAI,EAAE,SAAS;AAChB,KAAA;AACD,IAAA,CAAC,gBAAgB,CAAC,GAAG,GAAG;QACtB,IAAI,EAAE,QAAQ,CAAC,GAAG;AAClB,QAAA,IAAI,EAAE,SAAS;AAChB,KAAA;AACD,IAAA,CAAC,gBAAgB,CAAC,GAAG,GAAG;QACtB,IAAI,EAAE,QAAQ,CAAC,GAAG;AAClB,QAAA,IAAI,EAAE,SAAS;AAChB,KAAA;AACD,IAAA,CAAC,gBAAgB,CAAC,QAAQ,GAAG;QAC3B,IAAI,EAAE,QAAQ,CAAC,QAAQ;AACvB,QAAA,IAAI,EAAE,QAAQ;AACf,KAAA;AACD,IAAA,CAAC,gBAAgB,CAAC,SAAS,GAAG;QAC5B,IAAI,EAAE,QAAQ,CAAC,SAAS;AACxB,QAAA,IAAI,EAAE,QAAQ;AACf,KAAA;AACD,IAAA,CAAC,gBAAgB,CAAC,KAAK,GAAG;QACxB,IAAI,EAAE,QAAQ,CAAC,KAAK;AACpB,QAAA,IAAI,EAAE,QAAQ;AACf,KAAA;AACD,IAAA,CAAC,gBAAgB,CAAC,OAAO,GAAG;QAC1B,IAAI,EAAE,QAAQ,CAAC,OAAO;AACtB,QAAA,IAAI,EAAE,QAAQ;AACf,KAAA;AACD,IAAA,CAAC,gBAAgB,CAAC,QAAQ,GAAG;QAC3B,IAAI,EAAE,QAAQ,CAAC,QAAQ;AACvB,QAAA,IAAI,EAAE,QAAQ;AACf,KAAA;AACD,IAAA,CAAC,gBAAgB,CAAC,WAAW,GAAG;QAC9B,IAAI,EAAE,QAAQ,CAAC,WAAW;AAC1B,QAAA,IAAI,EAAE,SAAS;AAChB,KAAA;AACD,IAAA,CAAC,gBAAgB,CAAC,WAAW,GAAG;QAC9B,IAAI,EAAE,QAAQ,CAAC,WAAW;AAC1B,QAAA,IAAI,EAAE,SAAS;AAChB,KAAA;AACD,IAAA,CAAC,gBAAgB,CAAC,IAAI,GAAG;QACvB,IAAI,EAAE,QAAQ,CAAC,IAAI;AACnB,QAAA,IAAI,EAAE,SAAS;AAChB,KAAA;AACD,IAAA,CAAC,gBAAgB,CAAC,KAAK,GAAG;QACxB,IAAI,EAAE,QAAQ,CAAC,KAAK;AACpB,QAAA,IAAI,EAAE,SAAS;AAChB,KAAA;;;ACzKH;;;;;;;AAOG;;MCQU,kBAAkB,CAAA;AAZ/B,IAAA,WAAA,GAAA;AAa2B,QAAA,IAAA,CAAA,IAAI,GAAqB,gBAAgB,CAAC,GAAG,CAAC;QAC7C,IAAQ,CAAA,QAAA,GAAW,EAAE,CAAC;QACtB,IAAa,CAAA,aAAA,GAAW,KAAK,CAAC;QAC9B,IAAW,CAAA,WAAA,GAAW,SAAS,CAAC;QACvC,IAAS,CAAA,SAAA,GAAG,WAAW,CAAC;AAC5C,KAAA;8GANY,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAlB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,EARnB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,QAAA,EAAA,UAAA,EAAA,aAAA,EAAA,eAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;;AAMT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FAEU,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAZ9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,OAAO,EAAE,EAAE;AACX,oBAAA,QAAQ,EAAE,CAAA;;;;;;AAMT,EAAA,CAAA;AACF,iBAAA,CAAA;8BAE0B,IAAI,EAAA,CAAA;sBAA5B,KAAK;uBAAC,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAA;gBACG,QAAQ,EAAA,CAAA;sBAAjC,KAAK;uBAAC,EAAC,QAAQ,EAAE,KAAK,EAAC,CAAA;gBACE,aAAa,EAAA,CAAA;sBAAtC,KAAK;uBAAC,EAAC,QAAQ,EAAE,KAAK,EAAC,CAAA;gBACE,WAAW,EAAA,CAAA;sBAApC,KAAK;uBAAC,EAAC,QAAQ,EAAE,KAAK,EAAC,CAAA;;;MCHb,iBAAiB,CAAA;AAX9B,IAAA,WAAA,GAAA;QAY2B,IAAK,CAAA,KAAA,GAAY,KAAK,CAAC;AAEhD,QAAA,IAAA,CAAA,gBAAgB,GAAiD,oBAAoB,CAAC,GAAG,CAAC;AAa3F,KAAA;AAXC,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,KAAK;AACf,eAAG,IAAI,CAAC,MAAM,EAAE,cAAc,IAAI,IAAI,CAAC,gBAAgB,CAAC,cAAc;AACtE,eAAG,IAAI,CAAC,MAAM,EAAE,gBAAgB,IAAI,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;KAC/E;AAED,IAAA,IAAI,YAAY,GAAA;QACd,OAAO,IAAI,CAAC,KAAK;AACf,eAAG,IAAI,CAAC,MAAM,EAAE,WAAW,IAAI,IAAI,CAAC,gBAAgB,CAAC,WAAW;AAChE,eAAG,IAAI,CAAC,MAAM,EAAE,aAAa,IAAI,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;KACzE;8GAfU,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAjB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,iBAAiB,EAPlB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;AAIT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,yRAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EALS,OAAO,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAQN,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAX7B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,eAAe,cACb,IAAI,EAAA,OAAA,EACP,CAAC,OAAO,CAAC,EACR,QAAA,EAAA,CAAA;;;;AAIT,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,yRAAA,CAAA,EAAA,CAAA;8BAIwB,KAAK,EAAA,CAAA;sBAA7B,KAAK;uBAAC,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAA;gBACG,MAAM,EAAA,CAAA;sBAA/B,KAAK;uBAAC,EAAC,QAAQ,EAAE,KAAK,EAAC,CAAA;;;MCDb,oBAAoB,CAAA;AAZjC,IAAA,WAAA,GAAA;AAa2B,QAAA,IAAA,CAAA,IAAI,GAAmB,cAAc,CAAC,MAAM,CAAC;QAC5C,IAAI,CAAA,IAAA,GAAW,EAAE,CAAC;QAC3B,IAAU,CAAA,UAAA,GAAG,cAAc,CAAC;AAqB9C,KAAA;AAnBC,IAAA,IAAI,YAAY,GAAA;QACd,OAAO,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;KAC7C;AAED,IAAA,IAAI,YAAY,GAAA;QACd,OAAO,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;KAC7C;AAED,IAAA,IAAI,YAAY,GAAA;QACd,OAAO,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;KAC7C;AAED,IAAA,IAAI,UAAU,GAAA;QACZ,IAAI,IAAI,CAAC,YAAY;YAAE,OAAO,gBAAgB,CAAC,GAAG,CAAC;QACnD,IAAI,IAAI,CAAC,YAAY;YAAE,OAAO,gBAAgB,CAAC,GAAG,CAAC;QACnD,IAAI,IAAI,CAAC,YAAY;YAAE,OAAO,gBAAgB,CAAC,KAAK,CAAC;QACrD,OAAO,gBAAgB,CAAC,WAAW,CAAC;KACrC;8GAtBU,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,EARrB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;GAKT,EANS,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,+6BAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,OAAO,oFAAQ,kBAAkB,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,eAAA,EAAA,aAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAShC,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAZhC,SAAS;+BACE,kBAAkB,EAAA,UAAA,EAChB,IAAI,EAAA,OAAA,EACP,CAAC,OAAO,EAAE,IAAI,EAAE,kBAAkB,CAAC,EAClC,QAAA,EAAA,CAAA;;;;;AAKT,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,+6BAAA,CAAA,EAAA,CAAA;8BAIwB,IAAI,EAAA,CAAA;sBAA5B,KAAK;uBAAC,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAA;gBACG,IAAI,EAAA,CAAA;sBAA7B,KAAK;uBAAC,EAAC,QAAQ,EAAE,KAAK,EAAC,CAAA;;;MCab,6BAA6B,CAAA;AApB1C,IAAA,WAAA,GAAA;AAqB2B,QAAA,IAAA,CAAA,IAAI,GAA0B,qBAAqB,CAAC,IAAI,CAAC;QAExD,IAAM,CAAA,MAAA,GAA0B,oBAAoB,CAAC;AAC5D,QAAA,IAAA,CAAA,kBAAkB,GAAiD,oBAAoB,CAAC,KAAK,CAAC;QAC9F,IAAY,CAAA,YAAA,GAAG,UAAU,CAAC;QAC1B,IAAa,CAAA,aAAA,GAAG,WAAW,CAAC;AAChD,KAAA;8GAPY,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAA7B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,6BAA6B,EAf9B,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,6BAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;;;;;;;;;AAaT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAfS,IAAI,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FAiBH,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBApBzC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,6BAA6B;AACvC,oBAAA,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,IAAI,CAAC;oBACf,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,QAAQ,EAAE,CAAA;;;;;;;;;;;;;AAaT,EAAA,CAAA;AACF,iBAAA,CAAA;8BAE0B,IAAI,EAAA,CAAA;sBAA5B,KAAK;uBAAC,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAA;gBACE,KAAK,EAAA,CAAA;sBAA7B,KAAK;uBAAC,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAA;gBACG,MAAM,EAAA,CAAA;sBAA/B,KAAK;uBAAC,EAAC,QAAQ,EAAE,KAAK,EAAC,CAAA;;;MCfb,+BAA+B,CAAA;AAX5C,IAAA,WAAA,GAAA;AAY2B,QAAA,IAAA,CAAA,IAAI,GAA0B,qBAAqB,CAAC,IAAI,CAAC;QACzD,IAAM,CAAA,MAAA,GAAa,EAAE,CAAC;QACrB,IAAM,CAAA,MAAA,GAAG,oBAAoB,CAAC;AACzD,KAAA;8GAJY,+BAA+B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAA/B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,+BAA+B,EANhC,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,MAAA,EAAA,QAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;AAIT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FAEU,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAX3C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,uBAAuB;AACjC,oBAAA,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,kBAAkB,CAAC;oBAC/D,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,QAAQ,EAAE,CAAA;;;;AAIT,EAAA,CAAA;AACF,iBAAA,CAAA;8BAE0B,IAAI,EAAA,CAAA;sBAA5B,KAAK;uBAAC,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAA;gBACE,MAAM,EAAA,CAAA;sBAA9B,KAAK;uBAAC,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAA;gBACG,MAAM,EAAA,CAAA;sBAA/B,KAAK;uBAAC,EAAC,QAAQ,EAAE,KAAK,EAAC,CAAA;;;MCTb,4BAA4B,CAAA;AARzC,IAAA,WAAA,GAAA;QAS2B,IAAK,CAAA,KAAA,GAAY,KAAK,CAAC;QACvB,IAAK,CAAA,KAAA,GAAuB,EAAE,CAAC;AAC9B,QAAA,IAAA,CAAA,MAAM,GAA8B,oBAAoB,CAAC,KAAK,CAAC;AACzF,QAAA,IAAA,CAAA,aAAa,GAA6B,oBAAoB,CAAC,KAAK,CAAC;AAYtE,KAAA;AAVC,IAAA,IAAI,cAAc,GAAA;AAChB,QAAA,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE;KACzC;AAED,IAAA,IAAI,eAAe,GAAA;QACjB,OAAO,IAAI,CAAC,KAAK;cACb,IAAI,CAAC,MAAM,EAAE,cAAc,IAAI,IAAI,CAAC,aAAa,CAAC,cAAc;AAClE,cAAE,IAAI,CAAC,MAAM,EAAE,gBAAgB,IAAI,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC;KAC1E;8GAdU,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAA5B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,4BAA4B,EAH7B,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,OAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;AACoG,+GAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAHrF,kBAAkB,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,eAAA,EAAA,aAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FAKhC,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBARxC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,4BAA4B;AACtC,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,OAAO,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,kBAAkB,CAAC;oBAC5C,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,QAAQ,EAAE,CAAA;AACoG,+GAAA,CAAA;AAC/G,iBAAA,CAAA;8BAE0B,KAAK,EAAA,CAAA;sBAA7B,KAAK;uBAAC,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAA;gBACE,KAAK,EAAA,CAAA;sBAA7B,KAAK;uBAAC,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAA;gBACG,MAAM,EAAA,CAAA;sBAA/B,KAAK;uBAAC,EAAC,QAAQ,EAAE,KAAK,EAAC,CAAA;;;MCGb,gCAAgC,CAAA;AAlB7C,IAAA,WAAA,GAAA;QAmB2B,IAAK,CAAA,KAAA,GAA0C,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAC,CAAC;AAMnG,KAAA;IAJC,QAAQ,GAAA;AACN,QAAA,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACzB;8GALU,gCAAgC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAhC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gCAAgC,EAbjC,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gCAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;;;;;;;AAWT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FAEU,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAlB5C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gCAAgC;AAC1C,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,OAAO,EAAE,EAAE;oBACX,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,QAAQ,EAAE,CAAA;;;;;;;;;;;AAWT,EAAA,CAAA;AACF,iBAAA,CAAA;8BAE0B,KAAK,EAAA,CAAA;sBAA7B,KAAK;uBAAC,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAA;;;ACrBzB;;;;;;;AAOG;;MCsBU,mBAAmB,CAAA;AANhC,IAAA,WAAA,GAAA;AAQ4B,QAAA,IAAA,CAAA,KAAK,GAAG,oBAAoB,CAAC,KAAK,CAAC;AACnC,QAAA,IAAA,CAAA,KAAK,GAAmB,cAAc,CAAC,KAAK,CAAC;AAC7D,QAAA,IAAA,CAAA,UAAU,GAAqC,IAAI,YAAY,EAAE,CAAC;AAClE,QAAA,IAAA,CAAA,WAAW,GAAkD,IAAI,YAAY,EAAE,CAAC;QACjF,IAAa,CAAA,aAAA,GAAG,oBAAoB,CAAC;QACrC,IAAY,CAAA,YAAA,GAAG,gBAAgB,CAAC;QAEhC,IAAc,CAAA,cAAA,GAAG,cAAc,CAAC;QAChC,IAAe,CAAA,eAAA,GAAG,eAAe,CAAC;QAClC,IAAmB,CAAA,mBAAA,GAAG,mBAAmB,CAAC;QAC1C,IAAiB,CAAA,iBAAA,GAAG,iBAAiB,CAAC;QAEtC,IAAY,CAAA,YAAA,GAAG,UAAU,CAAC;QAC1B,IAAa,CAAA,aAAA,GAAG,WAAW,CAAC;QAC5B,IAAW,CAAA,WAAA,GAAG,SAAS,CAAC;QACxB,IAAa,CAAA,aAAA,GAAG,WAAW,CAAC;QACrC,IAAqB,CAAA,qBAAA,GAAG,qBAAqB,CAAC;AAqB/C,KAAA;AAnBC,IAAA,IAAI,MAAM,GAAA;AACR,QAAA,OAAO,IAAI,CAAC,KAAK,KAAK,cAAc,CAAC,IAAI,CAAC;KAC3C;AAED,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,KAAK,KAAK,cAAc,CAAC,KAAK,CAAC;KAC5C;AAED,IAAA,IAAI,YAAY,GAAA;QACd,OAAO,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK;AAC5C,cAAE,IAAI,CAAC,SAAS,CAAC,KAAK;cACpB,oBAAoB,CAAC;KAC1B;IAED,WAAW,CAAC,KAAa,EAAE,GAAY,EAAA;AACrC,QAAA,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAC,KAAK,EAAE,GAAG,EAAC,CAAC,CAAC;KACrC;8GArCU,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAnB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mBAAmB,kNC7BhC,07HA0EA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDhDY,IAAI,EAAE,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,OAAO,oFAAE,KAAK,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,kBAAkB,EAAE,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,sBAAA,EAAA,MAAA,EAAA,aAAA,EAAA,aAAA,EAAA,SAAA,EAAA,UAAA,EAAA,YAAA,EAAA,YAAA,EAAA,WAAA,EAAA,YAAA,EAAA,cAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,eAAA,EAAA,aAAA,EAAA,aAAA,EAAA,UAAA,EAAA,OAAA,EAAA,YAAA,EAAA,UAAA,EAAA,UAAA,EAAA,aAAA,EAAA,cAAA,EAAA,uBAAA,EAAA,aAAA,EAAA,qBAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,gBAAA,EAAA,YAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,aAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,MAAA,EAAA,MAAA,EAAA,SAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,EAAA,YAAA,EAAA,aAAA,EAAA,UAAA,EAAA,YAAA,EAAA,YAAA,EAAA,MAAA,EAAA,UAAA,EAAA,WAAA,EAAA,eAAA,EAAA,UAAA,EAAA,OAAA,EAAA,UAAA,EAAA,cAAA,EAAA,oBAAA,EAAA,aAAA,EAAA,WAAA,EAAA,cAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,oBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,8BAAA,EAAA,QAAA,EAAA,iCAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,4BAAA,EAAA,QAAA,EAAA,+BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,oBAAoB,uFAAE,iBAAiB,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,6BAA6B,EAAE,QAAA,EAAA,6BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,OAAA,EAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,4BAA4B,6GAAE,gCAAgC,EAAA,QAAA,EAAA,gCAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAG/K,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAN/B,SAAS;+BACE,iBAAiB,EAAA,UAAA,EACf,IAAI,EACP,OAAA,EAAA,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,6BAA6B,EAAE,4BAA4B,EAAE,gCAAgC,CAAC,EAAA,QAAA,EAAA,07HAAA,EAAA,CAAA;8BAIlK,SAAS,EAAA,CAAA;sBAAjC,KAAK;uBAAC,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAA;gBACG,KAAK,EAAA,CAAA;sBAA9B,KAAK;uBAAC,EAAC,QAAQ,EAAE,KAAK,EAAC,CAAA;gBACE,KAAK,EAAA,CAAA;sBAA9B,KAAK;uBAAC,EAAC,QAAQ,EAAE,KAAK,EAAC,CAAA;gBACd,UAAU,EAAA,CAAA;sBAAnB,MAAM;gBACG,WAAW,EAAA,CAAA;sBAApB,MAAM;;;MEGI,oBAAoB,CAAA;AAPjC,IAAA,WAAA,GAAA;AAU4B,QAAA,IAAA,CAAA,KAAK,GAAG,oBAAoB,CAAC,KAAK,CAAC;AACnC,QAAA,IAAA,CAAA,KAAK,GAAmB,cAAc,CAAC,KAAK,CAAC;AAC7D,QAAA,IAAA,CAAA,UAAU,GAAqC,IAAI,YAAY,EAAE,CAAC;AAClE,QAAA,IAAA,CAAA,WAAW,GAAkD,IAAI,YAAY,EAAE,CAAC;AAChF,QAAA,IAAA,CAAA,kBAAkB,GAAqC,IAAI,YAAY,EAAE,CAAC;AAC1E,QAAA,IAAA,CAAA,iBAAiB,GAAkD,IAAI,YAAY,EAAE,CAAC;QAC7E,IAAa,CAAA,aAAA,GAAG,oBAAoB,CAAC;QACrC,IAAY,CAAA,YAAA,GAAG,gBAAgB,CAAC;QAChC,IAAc,CAAA,cAAA,GAAG,cAAc,CAAC;QAChC,IAAe,CAAA,eAAA,GAAG,eAAe,CAAC;QAClC,IAAW,CAAA,WAAA,GAAG,SAAS,CAAC;QACxB,IAAY,CAAA,YAAA,GAAG,UAAU,CAAC;QAC1B,IAAa,CAAA,aAAA,GAAG,WAAW,CAAC;QAC5B,IAAa,CAAA,aAAA,GAAG,WAAW,CAAC;QAC5B,IAAmB,CAAA,mBAAA,GAAG,mBAAmB,CAAC;QAC1C,IAAiB,CAAA,iBAAA,GAAG,iBAAiB,CAAC;;AAGzD,QAAA,IAAA,CAAA,qBAAqB,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;;QAGjD,IAAe,CAAA,eAAA,GAAG,uBAAuB,CAAC;QAC1C,IAAiB,CAAA,iBAAA,GAAG,yBAAyB,CAAC;QAC9C,IAAc,CAAA,cAAA,GAAG,yBAAyB,CAAC;QAoDtB,IAAqB,CAAA,qBAAA,GAAG,qBAAqB,CAAC;AACpE,KAAA;AAnDC,IAAA,IAAI,gBAAgB,GAAA;AAClB,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC5B,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK;AAAE,YAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;AAC7E,QAAA,OAAO,kBAAkB,CAAC;KAC3B;AAED,IAAA,IAAI,YAAY,GAAA;QACd,OAAO,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK;AAC5C,cAAE,IAAI,CAAC,SAAS,CAAC,KAAK;cACpB,oBAAoB,CAAC;KAC1B;AAED,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO;AACL,YAAA,MAAM,EAAE,IAAI,CAAC,KAAK,KAAK,cAAc,CAAC,IAAI;AAC1C,YAAA,WAAW,EAAE,IAAI,CAAC,KAAK,KAAK,cAAc,CAAC,KAAK;SACjD,CAAC;KACH;AAED,IAAA,IAAI,mBAAmB,GAAA;AACrB,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC5B,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK;AAAE,YAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;AAC7E,QAAA,OAAO,oBAAoB,CAAA;KAC5B;AAED,IAAA,IAAI,eAAe,GAAA;QACjB,MAAM,IAAI,GAAG,CAAC,CAAC;QACf,OAAO,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,qBAAqB,KAAK,IAAI,GAAG,IAAI,IAAI,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;KAC1H;AAED,IAAA,IAAI,YAAY,GAAA;QACd,MAAM,IAAI,GAAG,CAAC,CAAC;AACf,QAAA,IAAI,IAAI,CAAC,qBAAqB,KAAK,IAAI;AAAE,YAAA,OAAO,IAAI,CAAC;AACrD,QAAA,IAAI,IAAI,CAAC,qBAAqB,IAAI,WAAW;YAAE,OAAO,IAAI,CAAC,qBAAqB,CAAC;AACjF,QAAA,OAAO,WAAW,CAAC;KACpB;AAED,IAAA,gBAAgB,CAAC,GAAQ,EAAA;AACvB,QAAA,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;SAC7D;AACD,QAAA,IAAI,IAAI,CAAC,gBAAgB,KAAK,GAAG,EAAE;YACjC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;AAC1C,YAAA,IAAI,CAAC,gBAAgB,GAAG,GAAG,CAAC;SAC7B;aAAM;AACL,YAAA,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC;SACnC;QACD,IAAI,CAAC,qBAAqB,GAAG,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC;KAChE;8GA5EU,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAApB,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,WAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,WAAA,EAAA,aAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,OAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,aAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECrCjC,k2KAwGA,EDvEY,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,OAAO,mHAAE,IAAI,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,OAAO,EAAE,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,kBAAkB,guDAAE,mBAAmB,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,OAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,EAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,oBAAoB,EAAE,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,iBAAiB,uFAAE,6BAA6B,EAAA,QAAA,EAAA,6BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,OAAA,EAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,4BAA4B,EAAA,QAAA,EAAA,4BAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,OAAA,EAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,gCAAgC,EAAA,QAAA,EAAA,gCAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAItM,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAPhC,SAAS;+BACE,kBAAkB,EAAA,UAAA,EAChB,IAAI,EACP,OAAA,EAAA,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,6BAA6B,EAAE,4BAA4B,EAAE,gCAAgC,CAAC,EAAA,QAAA,EAAA,k2KAAA,EAAA,CAAA;8BAKxL,KAAK,EAAA,CAAA;sBAA9B,SAAS;uBAAC,aAAa,CAAA;gBACC,SAAS,EAAA,CAAA;sBAAjC,KAAK;uBAAC,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAA;gBACG,KAAK,EAAA,CAAA;sBAA9B,KAAK;uBAAC,EAAC,QAAQ,EAAE,KAAK,EAAC,CAAA;gBACE,KAAK,EAAA,CAAA;sBAA9B,KAAK;uBAAC,EAAC,QAAQ,EAAE,KAAK,EAAC,CAAA;gBACd,UAAU,EAAA,CAAA;sBAAnB,MAAM;gBACG,WAAW,EAAA,CAAA;sBAApB,MAAM;gBACG,kBAAkB,EAAA,CAAA;sBAA3B,MAAM;gBACG,iBAAiB,EAAA,CAAA;sBAA1B,MAAM;;;AE7CT;;;;;;;AAOG;;ACPH;;AAEG;;ACFH;;AAEG;;;;"}