{"version":3,"file":"devextreme-angular-ui-data-grid.mjs","sources":["../../../dist/ui/data-grid/index.ts","../../../dist/ui/data-grid/devextreme-angular-ui-data-grid.ts"],"sourcesContent":["/*!\n * devextreme-angular\n * Version: 26.1.3\n * Build date: Wed Jun 10 2026\n *\n * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/DevExtreme\n */\n\n/* tslint:disable:max-line-length */\n\n\nimport {\n    TransferState,\n    Component,\n    NgModule,\n    ElementRef,\n    NgZone,\n    PLATFORM_ID,\n    Inject,\n\n    Input,\n    Output,\n    OnDestroy,\n    EventEmitter,\n    OnChanges,\n    DoCheck,\n    SimpleChanges,\n    ContentChildren,\n    QueryList\n} from '@angular/core';\n\nexport type { ExplicitTypes } from 'devextreme/ui/data_grid';\n\nimport type dxSortable from 'devextreme/ui/sortable';\nimport type dxDraggable from 'devextreme/ui/draggable';\nimport type { AIAssistant, ColumnChooser, ColumnResizeMode, DataChange, GridsEditMode, NewRowPosition, GridsEditRefreshMode, StartEditAction, FilterPanel, ApplyFilterMode, GroupExpandMode, HeaderFilter, EnterKeyAction, EnterKeyDirection, Pager, GridBase, DataRenderMode, SearchPanel, SelectionColumnDisplayMode, Sorting, StateStoreType, SummaryType } from 'devextreme/common/grids';\nimport type { AIIntegration } from 'devextreme/common/ai-integration';\nimport type { default as dxDataGrid, dxDataGridColumn, dxDataGridRowObject, DataGridExportFormat, AdaptiveDetailRowPreparingEvent, AIAssistantRequestCreatingEvent, AIColumnRequestCreatingEvent, CellClickEvent, CellDblClickEvent, CellHoverChangedEvent, CellPreparedEvent, ContentReadyEvent, ContextMenuPreparingEvent, DataErrorOccurredEvent, DisposingEvent, EditCanceledEvent, EditCancelingEvent, EditingStartEvent, EditorPreparedEvent, EditorPreparingEvent, ExportingEvent, FocusedCellChangedEvent, FocusedCellChangingEvent, FocusedRowChangedEvent, FocusedRowChangingEvent, InitializedEvent, InitNewRowEvent, KeyDownEvent, OptionChangedEvent, RowClickEvent, RowCollapsedEvent, RowCollapsingEvent, RowDblClickEvent, RowExpandedEvent, RowExpandingEvent, RowInsertedEvent, RowInsertingEvent, RowPreparedEvent, RowRemovedEvent, RowRemovingEvent, RowUpdatedEvent, RowUpdatingEvent, RowValidatingEvent, SavedEvent, SavingEvent, SelectionChangedEvent, ToolbarPreparingEvent, DataGridScrollMode, SelectionSensitivity, dxDataGridToolbar } from 'devextreme/ui/data_grid';\nimport type { Mode, DragDirection, DragHighlight, ScrollbarMode, SingleMultipleOrNone, SelectAllMode, SortOrder, HorizontalAlignment } from 'devextreme/common';\nimport type { default as DataSource, DataSourceOptions } from 'devextreme/data/data_source';\nimport type { Store } from 'devextreme/data/store';\nimport type { dxFormOptions } from 'devextreme/ui/form';\nimport type { dxPopupOptions } from 'devextreme/ui/popup';\nimport type { dxFilterBuilderOptions } from 'devextreme/ui/filter_builder';\nimport type { LoadPanelIndicatorProperties } from 'devextreme/ui/load_panel';\nimport type { event } from 'devextreme/events/events.types';\nimport type { Format } from 'devextreme/common/core/localization';\n\nimport DxDataGrid from 'devextreme/ui/data_grid';\n\n\nimport {\n    DxComponent,\n    DxTemplateHost,\n    DxIntegrationModule,\n    DxTemplateModule,\n    NestedOptionHost,\n    IterableDifferHelper,\n    WatcherHelper,\n    CollectionNestedOption,\n} from 'devextreme-angular/core';\n\nimport { DxoColumnChooserModule } from 'devextreme-angular/ui/nested';\nimport { DxoPositionModule } from 'devextreme-angular/ui/nested';\nimport { DxoAtModule } from 'devextreme-angular/ui/nested';\nimport { DxoBoundaryOffsetModule } from 'devextreme-angular/ui/nested';\nimport { DxoCollisionModule } from 'devextreme-angular/ui/nested';\nimport { DxoMyModule } from 'devextreme-angular/ui/nested';\nimport { DxoOffsetModule } from 'devextreme-angular/ui/nested';\nimport { DxoSearchModule } from 'devextreme-angular/ui/nested';\nimport { DxoSelectionModule } from 'devextreme-angular/ui/nested';\nimport { DxoColumnFixingModule } from 'devextreme-angular/ui/nested';\nimport { DxoIconsModule } from 'devextreme-angular/ui/nested';\nimport { DxoTextsModule } from 'devextreme-angular/ui/nested';\nimport { DxiColumnModule } from 'devextreme-angular/ui/nested';\nimport { DxiButtonModule } from 'devextreme-angular/ui/nested';\nimport { DxoLookupModule } from 'devextreme-angular/ui/nested';\nimport { DxoFormatModule } from 'devextreme-angular/ui/nested';\nimport { DxoFormItemModule } from 'devextreme-angular/ui/nested';\nimport { DxoLabelModule } from 'devextreme-angular/ui/nested';\nimport { DxiValidationRuleModule } from 'devextreme-angular/ui/nested';\nimport { DxoHeaderFilterModule } from 'devextreme-angular/ui/nested';\nimport { DxoEditingModule } from 'devextreme-angular/ui/nested';\nimport { DxiChangeModule } from 'devextreme-angular/ui/nested';\nimport { DxoFormModule } from 'devextreme-angular/ui/nested';\nimport { DxoColCountByScreenModule } from 'devextreme-angular/ui/nested';\nimport { DxiItemModule } from 'devextreme-angular/ui/nested';\nimport { DxoTabPanelOptionsModule } from 'devextreme-angular/ui/nested';\nimport { DxiTabModule } from 'devextreme-angular/ui/nested';\nimport { DxoButtonOptionsModule } from 'devextreme-angular/ui/nested';\nimport { DxoPopupModule } from 'devextreme-angular/ui/nested';\nimport { DxoAnimationModule } from 'devextreme-angular/ui/nested';\nimport { DxoHideModule } from 'devextreme-angular/ui/nested';\nimport { DxoFromModule } from 'devextreme-angular/ui/nested';\nimport { DxoToModule } from 'devextreme-angular/ui/nested';\nimport { DxoShowModule } from 'devextreme-angular/ui/nested';\nimport { DxoExportModule } from 'devextreme-angular/ui/nested';\nimport { DxoFilterBuilderModule } from 'devextreme-angular/ui/nested';\nimport { DxiCustomOperationModule } from 'devextreme-angular/ui/nested';\nimport { DxiFieldModule } from 'devextreme-angular/ui/nested';\nimport { DxoFilterOperationDescriptionsModule } from 'devextreme-angular/ui/nested';\nimport { DxoGroupOperationDescriptionsModule } from 'devextreme-angular/ui/nested';\nimport { DxoFilterBuilderPopupModule } from 'devextreme-angular/ui/nested';\nimport { DxoFilterPanelModule } from 'devextreme-angular/ui/nested';\nimport { DxoFilterRowModule } from 'devextreme-angular/ui/nested';\nimport { DxoOperationDescriptionsModule } from 'devextreme-angular/ui/nested';\nimport { DxoGroupingModule } from 'devextreme-angular/ui/nested';\nimport { DxoGroupPanelModule } from 'devextreme-angular/ui/nested';\nimport { DxoKeyboardNavigationModule } from 'devextreme-angular/ui/nested';\nimport { DxoLoadPanelModule } from 'devextreme-angular/ui/nested';\nimport { DxoMasterDetailModule } from 'devextreme-angular/ui/nested';\nimport { DxoPagerModule } from 'devextreme-angular/ui/nested';\nimport { DxoPagingModule } from 'devextreme-angular/ui/nested';\nimport { DxoRemoteOperationsModule } from 'devextreme-angular/ui/nested';\nimport { DxoRowDraggingModule } from 'devextreme-angular/ui/nested';\nimport { DxoCursorOffsetModule } from 'devextreme-angular/ui/nested';\nimport { DxoScrollingModule } from 'devextreme-angular/ui/nested';\nimport { DxoSearchPanelModule } from 'devextreme-angular/ui/nested';\nimport { DxiSortByGroupSummaryInfoModule } from 'devextreme-angular/ui/nested';\nimport { DxoSortingModule } from 'devextreme-angular/ui/nested';\nimport { DxoStateStoringModule } from 'devextreme-angular/ui/nested';\nimport { DxoSummaryModule } from 'devextreme-angular/ui/nested';\nimport { DxiGroupItemModule } from 'devextreme-angular/ui/nested';\nimport { DxoValueFormatModule } from 'devextreme-angular/ui/nested';\nimport { DxiTotalItemModule } from 'devextreme-angular/ui/nested';\nimport { DxoToolbarModule } from 'devextreme-angular/ui/nested';\n\nimport { DxoDataGridAIModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridAIAssistantModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridAIOptionsModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridAnimationModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridAsyncRuleModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridAtModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridBoundaryOffsetModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridButtonModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridButtonItemModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridButtonOptionsModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridChangeModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridColCountByScreenModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridCollisionModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridColumnModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridColumnButtonModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridColumnChooserModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridColumnChooserSearchModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridColumnChooserSelectionModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridColumnFixingModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridColumnFixingTextsModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridColumnHeaderFilterModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridColumnHeaderFilterSearchModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridColumnLookupModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridCompareRuleModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridCursorOffsetModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridCustomOperationModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridCustomRuleModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridDataGridHeaderFilterModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridDataGridHeaderFilterSearchModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridDataGridHeaderFilterTextsModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridDataGridSelectionModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridDataGridToolbarItemModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridEditingModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridEditingTextsModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridEditorOptionsModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridEditorOptionsButtonModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridEmailRuleModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridEmptyItemModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridExportModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridExportTextsModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridFieldModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridFieldLookupModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridFilterBuilderModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridFilterBuilderPopupModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridFilterOperationDescriptionsModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridFilterPanelModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridFilterPanelTextsModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridFilterRowModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridFormModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridFormatModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridFormGroupItemModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridFormItemModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridFromModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridGroupingModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridGroupingTextsModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridGroupItemModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridGroupOperationDescriptionsModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridGroupPanelModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridHeaderFilterModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridHideModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridIconsModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridIndicatorOptionsModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridItemModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridKeyboardNavigationModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridLabelModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridLoadPanelModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridLookupModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridMasterDetailModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridMyModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridNumericRuleModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridOffsetModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridOperationDescriptionsModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridOptionsModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridPagerModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridPagingModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridPatternRuleModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridPopupModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridPositionModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridRangeRuleModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridRemoteOperationsModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridRequiredRuleModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridRowDraggingModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridScrollingModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridSearchModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridSearchPanelModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridSelectionModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridShowModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridSimpleItemModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridSortByGroupSummaryInfoModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridSortingModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridStateStoringModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridStringLengthRuleModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridSummaryModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridSummaryTextsModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridTabModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridTabbedItemModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridTabPanelOptionsModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridTabPanelOptionsItemModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridTextsModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridToModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridToolbarModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridToolbarItemModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridTotalItemModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxiDataGridValidationRuleModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { DxoDataGridValueFormatModule } from 'devextreme-angular/ui/data-grid/nested';\nimport { \n           PROPERTY_TOKEN_validationRules,\n           PROPERTY_TOKEN_buttons,\n           PROPERTY_TOKEN_items,\n           PROPERTY_TOKEN_changes,\n           PROPERTY_TOKEN_columns,\n           PROPERTY_TOKEN_customOperations,\n           PROPERTY_TOKEN_fields,\n           PROPERTY_TOKEN_groupItems,\n           PROPERTY_TOKEN_sortByGroupSummaryInfo,\n           PROPERTY_TOKEN_tabs,\n           PROPERTY_TOKEN_toolbarItems,\n           PROPERTY_TOKEN_totalItems,\n     } from 'devextreme-angular/core/tokens';\n\n\n/**\n * The DataGrid is a UI component that represents data from a local or remote source in the form of a grid. This UI component offers such basic features as sorting, grouping, filtering, as well as more advanced capabilities, like state storing, client-side exporting, master-detail interface, and many others.\n\n */\n@Component({\n    selector: 'dx-data-grid',\n    template: '',\n    host: { ngSkipHydration: 'true' },\n    imports: [ DxIntegrationModule ],\n    providers: [\n        DxTemplateHost,\n        WatcherHelper,\n        NestedOptionHost,\n        IterableDifferHelper\n    ]\n})\nexport class DxDataGridComponent<TRowData = any, TKey = any> extends DxComponent implements OnDestroy, OnChanges, DoCheck {\n\n    @ContentChildren(PROPERTY_TOKEN_validationRules)\n    set _validationRulesContentChildren(value: QueryList<CollectionNestedOption>) {\n        this.setChildren('validationRules', value);\n    }\n\n    @ContentChildren(PROPERTY_TOKEN_buttons)\n    set _buttonsContentChildren(value: QueryList<CollectionNestedOption>) {\n        this.setChildren('buttons', value);\n    }\n\n    @ContentChildren(PROPERTY_TOKEN_items)\n    set _itemsContentChildren(value: QueryList<CollectionNestedOption>) {\n        this.setChildren('items', value);\n    }\n\n    @ContentChildren(PROPERTY_TOKEN_changes)\n    set _changesContentChildren(value: QueryList<CollectionNestedOption>) {\n        this.setChildren('changes', value);\n    }\n\n    @ContentChildren(PROPERTY_TOKEN_columns)\n    set _columnsContentChildren(value: QueryList<CollectionNestedOption>) {\n        this.setChildren('columns', value);\n    }\n\n    @ContentChildren(PROPERTY_TOKEN_customOperations)\n    set _customOperationsContentChildren(value: QueryList<CollectionNestedOption>) {\n        this.setChildren('customOperations', value);\n    }\n\n    @ContentChildren(PROPERTY_TOKEN_fields)\n    set _fieldsContentChildren(value: QueryList<CollectionNestedOption>) {\n        this.setChildren('fields', value);\n    }\n\n    @ContentChildren(PROPERTY_TOKEN_groupItems)\n    set _groupItemsContentChildren(value: QueryList<CollectionNestedOption>) {\n        this.setChildren('groupItems', value);\n    }\n\n    @ContentChildren(PROPERTY_TOKEN_sortByGroupSummaryInfo)\n    set _sortByGroupSummaryInfoContentChildren(value: QueryList<CollectionNestedOption>) {\n        this.setChildren('sortByGroupSummaryInfo', value);\n    }\n\n    @ContentChildren(PROPERTY_TOKEN_tabs)\n    set _tabsContentChildren(value: QueryList<CollectionNestedOption>) {\n        this.setChildren('tabs', value);\n    }\n\n    @ContentChildren(PROPERTY_TOKEN_toolbarItems)\n    set _toolbarItemsContentChildren(value: QueryList<CollectionNestedOption>) {\n        this.setChildren('toolbarItems', value);\n    }\n\n    @ContentChildren(PROPERTY_TOKEN_totalItems)\n    set _totalItemsContentChildren(value: QueryList<CollectionNestedOption>) {\n        this.setChildren('totalItems', value);\n    }\n\n    instance: DxDataGrid<TRowData, TKey> = null;\n\n    /**\n     * Specifies the shortcut key that sets focus on the UI component.\n    \n     */\n    @Input()\n    get accessKey(): string | undefined {\n        return this._getOption('accessKey');\n    }\n    set accessKey(value: string | undefined) {\n        this._setOption('accessKey', value);\n    }\n\n\n    /**\n     * Specifies whether the UI component changes its visual state as a result of user interaction.\n    \n     */\n    @Input()\n    get activeStateEnabled(): boolean {\n        return this._getOption('activeStateEnabled');\n    }\n    set activeStateEnabled(value: boolean) {\n        this._setOption('activeStateEnabled', value);\n    }\n\n\n    /**\n     * Configures the widget AI Assistant.\n    \n     */\n    @Input()\n    get aiAssistant(): AIAssistant {\n        return this._getOption('aiAssistant');\n    }\n    set aiAssistant(value: AIAssistant) {\n        this._setOption('aiAssistant', value);\n    }\n\n\n    /**\n     * Binds the widget to an AI service.\n    \n     */\n    @Input()\n    get aiIntegration(): AIIntegration | undefined {\n        return this._getOption('aiIntegration');\n    }\n    set aiIntegration(value: AIIntegration | undefined) {\n        this._setOption('aiIntegration', value);\n    }\n\n\n    /**\n     * Specifies whether a user can reorder columns.\n    \n     */\n    @Input()\n    get allowColumnReordering(): boolean {\n        return this._getOption('allowColumnReordering');\n    }\n    set allowColumnReordering(value: boolean) {\n        this._setOption('allowColumnReordering', value);\n    }\n\n\n    /**\n     * Enables column resizing.\n    \n     */\n    @Input()\n    get allowColumnResizing(): boolean {\n        return this._getOption('allowColumnResizing');\n    }\n    set allowColumnResizing(value: boolean) {\n        this._setOption('allowColumnResizing', value);\n    }\n\n\n    /**\n     * Automatically scrolls the component to the focused row when the focusedRowKey is changed.\n    \n     */\n    @Input()\n    get autoNavigateToFocusedRow(): boolean {\n        return this._getOption('autoNavigateToFocusedRow');\n    }\n    set autoNavigateToFocusedRow(value: boolean) {\n        this._setOption('autoNavigateToFocusedRow', value);\n    }\n\n\n    /**\n     * Specifies whether data should be cached.\n    \n     */\n    @Input()\n    get cacheEnabled(): boolean {\n        return this._getOption('cacheEnabled');\n    }\n    set cacheEnabled(value: boolean) {\n        this._setOption('cacheEnabled', value);\n    }\n\n\n    /**\n     * Enables a hint that appears when a user hovers the mouse pointer over a cell with truncated content.\n    \n     */\n    @Input()\n    get cellHintEnabled(): boolean {\n        return this._getOption('cellHintEnabled');\n    }\n    set cellHintEnabled(value: boolean) {\n        this._setOption('cellHintEnabled', value);\n    }\n\n\n    /**\n     * Specifies if the component adjusts column widths to fit content.\n    \n     */\n    @Input()\n    get columnAutoWidth(): boolean {\n        return this._getOption('columnAutoWidth');\n    }\n    set columnAutoWidth(value: boolean) {\n        this._setOption('columnAutoWidth', value);\n    }\n\n\n    /**\n     * Configures the column chooser.\n    \n     */\n    @Input()\n    get columnChooser(): ColumnChooser {\n        return this._getOption('columnChooser');\n    }\n    set columnChooser(value: ColumnChooser) {\n        this._setOption('columnChooser', value);\n    }\n\n\n    /**\n     * Configures column fixing.\n    \n     */\n    @Input()\n    get columnFixing(): { enabled?: boolean, icons?: { fix?: string, leftPosition?: string, rightPosition?: string, stickyPosition?: string, unfix?: string }, texts?: { fix?: string, leftPosition?: string, rightPosition?: string, stickyPosition?: string, unfix?: string } } {\n        return this._getOption('columnFixing');\n    }\n    set columnFixing(value: { enabled?: boolean, icons?: { fix?: string, leftPosition?: string, rightPosition?: string, stickyPosition?: string, unfix?: string }, texts?: { fix?: string, leftPosition?: string, rightPosition?: string, stickyPosition?: string, unfix?: string } }) {\n        this._setOption('columnFixing', value);\n    }\n\n\n    /**\n     * Specifies whether the UI component hides columns to adapt to the screen or container size. Ignored if allowColumnResizing is `true` and columnResizingMode is &apos;widget&apos;.\n    \n     */\n    @Input()\n    get columnHidingEnabled(): boolean {\n        return this._getOption('columnHidingEnabled');\n    }\n    set columnHidingEnabled(value: boolean) {\n        this._setOption('columnHidingEnabled', value);\n    }\n\n\n    /**\n     * Specifies the minimum width of columns.\n    \n     */\n    @Input()\n    get columnMinWidth(): number | undefined {\n        return this._getOption('columnMinWidth');\n    }\n    set columnMinWidth(value: number | undefined) {\n        this._setOption('columnMinWidth', value);\n    }\n\n\n    /**\n     * Specifies how the UI component resizes columns. Applies only if allowColumnResizing is true.\n    \n     */\n    @Input()\n    get columnResizingMode(): ColumnResizeMode {\n        return this._getOption('columnResizingMode');\n    }\n    set columnResizingMode(value: ColumnResizeMode) {\n        this._setOption('columnResizingMode', value);\n    }\n\n\n    /**\n     * An array of grid columns.\n    \n     */\n    @Input()\n    get columns(): Array<dxDataGridColumn | string> {\n        return this._getOption('columns');\n    }\n    set columns(value: Array<dxDataGridColumn | string>) {\n        this._setOption('columns', value);\n    }\n\n\n    /**\n     * Specifies the width for all data columns. Has a lower priority than the column.width property.\n    \n     */\n    @Input()\n    get columnWidth(): Mode | number | undefined {\n        return this._getOption('columnWidth');\n    }\n    set columnWidth(value: Mode | number | undefined) {\n        this._setOption('columnWidth', value);\n    }\n\n\n    /**\n     * Customizes columns after they are created.\n    \n     */\n    @Input()\n    get customizeColumns(): ((columns: Array<dxDataGridColumn>) => void) {\n        return this._getOption('customizeColumns');\n    }\n    set customizeColumns(value: ((columns: Array<dxDataGridColumn>) => void)) {\n        this._setOption('customizeColumns', value);\n    }\n\n\n    /**\n     * Specifies a custom template for data rows.\n    \n     */\n    @Input()\n    get dataRowTemplate(): any {\n        return this._getOption('dataRowTemplate');\n    }\n    set dataRowTemplate(value: any) {\n        this._setOption('dataRowTemplate', value);\n    }\n\n\n    /**\n     * Binds the UI component to data.\n    \n     */\n    @Input()\n    get dataSource(): Array<any> | DataSource | DataSourceOptions | null | Store | string {\n        return this._getOption('dataSource');\n    }\n    set dataSource(value: Array<any> | DataSource | DataSourceOptions | null | Store | string) {\n        this._setOption('dataSource', value);\n    }\n\n\n    /**\n     * Specifies the format in which date-time values should be sent to the server.\n    \n     */\n    @Input()\n    get dateSerializationFormat(): string {\n        return this._getOption('dateSerializationFormat');\n    }\n    set dateSerializationFormat(value: string) {\n        this._setOption('dateSerializationFormat', value);\n    }\n\n\n    /**\n     * Specifies whether the UI component responds to user interaction.\n    \n     */\n    @Input()\n    get disabled(): boolean {\n        return this._getOption('disabled');\n    }\n    set disabled(value: boolean) {\n        this._setOption('disabled', value);\n    }\n\n\n    /**\n     * Configures editing.\n    \n     */\n    @Input()\n    get editing(): { allowAdding?: boolean, allowDeleting?: boolean | ((options: { component: dxDataGrid, row: dxDataGridRowObject }) => boolean), allowUpdating?: boolean | ((options: { component: dxDataGrid, row: dxDataGridRowObject }) => boolean), changes?: Array<DataChange>, confirmDelete?: boolean, editColumnName?: string, editRowKey?: any, form?: dxFormOptions, mode?: GridsEditMode, newRowPosition?: NewRowPosition, popup?: dxPopupOptions<any>, refreshMode?: GridsEditRefreshMode, selectTextOnEditStart?: boolean, startEditAction?: StartEditAction, texts?: any | { addRow?: string, cancelAllChanges?: string, cancelRowChanges?: string, confirmDeleteMessage?: string, confirmDeleteTitle?: string, deleteRow?: string, editRow?: string, saveAllChanges?: string, saveRowChanges?: string, undeleteRow?: string, validationCancelChanges?: string }, useIcons?: boolean } {\n        return this._getOption('editing');\n    }\n    set editing(value: { allowAdding?: boolean, allowDeleting?: boolean | ((options: { component: dxDataGrid, row: dxDataGridRowObject }) => boolean), allowUpdating?: boolean | ((options: { component: dxDataGrid, row: dxDataGridRowObject }) => boolean), changes?: Array<DataChange>, confirmDelete?: boolean, editColumnName?: string, editRowKey?: any, form?: dxFormOptions, mode?: GridsEditMode, newRowPosition?: NewRowPosition, popup?: dxPopupOptions<any>, refreshMode?: GridsEditRefreshMode, selectTextOnEditStart?: boolean, startEditAction?: StartEditAction, texts?: any | { addRow?: string, cancelAllChanges?: string, cancelRowChanges?: string, confirmDeleteMessage?: string, confirmDeleteTitle?: string, deleteRow?: string, editRow?: string, saveAllChanges?: string, saveRowChanges?: string, undeleteRow?: string, validationCancelChanges?: string }, useIcons?: boolean }) {\n        this._setOption('editing', value);\n    }\n\n\n    /**\n     * Specifies the global attributes to be attached to the UI component&apos;s container element.\n    \n     */\n    @Input()\n    get elementAttr(): Record<string, any> {\n        return this._getOption('elementAttr');\n    }\n    set elementAttr(value: Record<string, any>) {\n        this._setOption('elementAttr', value);\n    }\n\n\n    /**\n     * Indicates whether to show the error row.\n    \n     */\n    @Input()\n    get errorRowEnabled(): boolean {\n        return this._getOption('errorRowEnabled');\n    }\n    set errorRowEnabled(value: boolean) {\n        this._setOption('errorRowEnabled', value);\n    }\n\n\n    /**\n     * Configures client-side exporting.\n    \n     */\n    @Input()\n    get export(): { allowExportSelectedData?: boolean, enabled?: boolean, formats?: Array<DataGridExportFormat | string>, texts?: { exportAll?: string, exportSelectedRows?: string, exportTo?: string } } {\n        return this._getOption('export');\n    }\n    set export(value: { allowExportSelectedData?: boolean, enabled?: boolean, formats?: Array<DataGridExportFormat | string>, texts?: { exportAll?: string, exportSelectedRows?: string, exportTo?: string } }) {\n        this._setOption('export', value);\n    }\n\n\n    /**\n     * Configures the integrated filter builder.\n    \n     */\n    @Input()\n    get filterBuilder(): dxFilterBuilderOptions {\n        return this._getOption('filterBuilder');\n    }\n    set filterBuilder(value: dxFilterBuilderOptions) {\n        this._setOption('filterBuilder', value);\n    }\n\n\n    /**\n     * Configures the popup in which the integrated filter builder is shown.\n    \n     */\n    @Input()\n    get filterBuilderPopup(): dxPopupOptions<any> {\n        return this._getOption('filterBuilderPopup');\n    }\n    set filterBuilderPopup(value: dxPopupOptions<any>) {\n        this._setOption('filterBuilderPopup', value);\n    }\n\n\n    /**\n     * Configures the filter panel.\n    \n     */\n    @Input()\n    get filterPanel(): FilterPanel {\n        return this._getOption('filterPanel');\n    }\n    set filterPanel(value: FilterPanel) {\n        this._setOption('filterPanel', value);\n    }\n\n\n    /**\n     * Configures the filter row.\n    \n     */\n    @Input()\n    get filterRow(): { applyFilter?: ApplyFilterMode, applyFilterText?: string, betweenEndText?: string, betweenStartText?: string, operationDescriptions?: { between?: string, contains?: string, endsWith?: string, equal?: string, greaterThan?: string, greaterThanOrEqual?: string, lessThan?: string, lessThanOrEqual?: string, notContains?: string, notEqual?: string, startsWith?: string }, resetOperationText?: string, showAllText?: string, showOperationChooser?: boolean, visible?: boolean } {\n        return this._getOption('filterRow');\n    }\n    set filterRow(value: { applyFilter?: ApplyFilterMode, applyFilterText?: string, betweenEndText?: string, betweenStartText?: string, operationDescriptions?: { between?: string, contains?: string, endsWith?: string, equal?: string, greaterThan?: string, greaterThanOrEqual?: string, lessThan?: string, lessThanOrEqual?: string, notContains?: string, notEqual?: string, startsWith?: string }, resetOperationText?: string, showAllText?: string, showOperationChooser?: boolean, visible?: boolean }) {\n        this._setOption('filterRow', value);\n    }\n\n\n    /**\n     * Specifies whether to synchronize the filter row, header filter, and filter builder. The synchronized filter expression is stored in the filterValue property.\n    \n     */\n    @Input()\n    get filterSyncEnabled(): boolean | Mode {\n        return this._getOption('filterSyncEnabled');\n    }\n    set filterSyncEnabled(value: boolean | Mode) {\n        this._setOption('filterSyncEnabled', value);\n    }\n\n\n    /**\n     * Specifies a filter expression.\n    \n     */\n    @Input()\n    get filterValue(): Array<any> | Function | string {\n        return this._getOption('filterValue');\n    }\n    set filterValue(value: Array<any> | Function | string) {\n        this._setOption('filterValue', value);\n    }\n\n\n    /**\n     * The index of the column that contains the focused data cell. This index is taken from the columns array.\n    \n     */\n    @Input()\n    get focusedColumnIndex(): number {\n        return this._getOption('focusedColumnIndex');\n    }\n    set focusedColumnIndex(value: number) {\n        this._setOption('focusedColumnIndex', value);\n    }\n\n\n    /**\n     * Specifies whether the focused row feature is enabled.\n    \n     */\n    @Input()\n    get focusedRowEnabled(): boolean {\n        return this._getOption('focusedRowEnabled');\n    }\n    set focusedRowEnabled(value: boolean) {\n        this._setOption('focusedRowEnabled', value);\n    }\n\n\n    /**\n     * Specifies or indicates the focused data row&apos;s index.\n    \n     */\n    @Input()\n    get focusedRowIndex(): number {\n        return this._getOption('focusedRowIndex');\n    }\n    set focusedRowIndex(value: number) {\n        this._setOption('focusedRowIndex', value);\n    }\n\n\n    /**\n     * Specifies initially or currently focused grid row&apos;s key.\n    \n     */\n    @Input()\n    get focusedRowKey(): any | undefined {\n        return this._getOption('focusedRowKey');\n    }\n    set focusedRowKey(value: any | undefined) {\n        this._setOption('focusedRowKey', value);\n    }\n\n\n    /**\n     * Configures grouping.\n    \n     */\n    @Input()\n    get grouping(): { allowCollapsing?: boolean, autoExpandAll?: boolean, contextMenuEnabled?: boolean, expandMode?: GroupExpandMode, texts?: { groupByThisColumn?: string, groupContinuedMessage?: string, groupContinuesMessage?: string, ungroup?: string, ungroupAll?: string } } {\n        return this._getOption('grouping');\n    }\n    set grouping(value: { allowCollapsing?: boolean, autoExpandAll?: boolean, contextMenuEnabled?: boolean, expandMode?: GroupExpandMode, texts?: { groupByThisColumn?: string, groupContinuedMessage?: string, groupContinuesMessage?: string, ungroup?: string, ungroupAll?: string } }) {\n        this._setOption('grouping', value);\n    }\n\n\n    /**\n     * Configures the group panel.\n    \n     */\n    @Input()\n    get groupPanel(): { allowColumnDragging?: boolean, emptyPanelText?: string, visible?: boolean | Mode } {\n        return this._getOption('groupPanel');\n    }\n    set groupPanel(value: { allowColumnDragging?: boolean, emptyPanelText?: string, visible?: boolean | Mode }) {\n        this._setOption('groupPanel', value);\n    }\n\n\n    /**\n     * Configures the header filter feature.\n    \n     */\n    @Input()\n    get headerFilter(): HeaderFilter {\n        return this._getOption('headerFilter');\n    }\n    set headerFilter(value: HeaderFilter) {\n        this._setOption('headerFilter', value);\n    }\n\n\n    /**\n     * Specifies the UI component&apos;s height.\n    \n     */\n    @Input()\n    get height(): number | string | undefined {\n        return this._getOption('height');\n    }\n    set height(value: number | string | undefined) {\n        this._setOption('height', value);\n    }\n\n\n    /**\n     * Specifies whether to highlight rows and cells with edited data. repaintChangesOnly should be true.\n    \n     */\n    @Input()\n    get highlightChanges(): boolean {\n        return this._getOption('highlightChanges');\n    }\n    set highlightChanges(value: boolean) {\n        this._setOption('highlightChanges', value);\n    }\n\n\n    /**\n     * Specifies text for a hint that appears when a user pauses on the UI component.\n    \n     */\n    @Input()\n    get hint(): string | undefined {\n        return this._getOption('hint');\n    }\n    set hint(value: string | undefined) {\n        this._setOption('hint', value);\n    }\n\n\n    /**\n     * Specifies whether the UI component changes its state when a user pauses on it.\n    \n     */\n    @Input()\n    get hoverStateEnabled(): boolean {\n        return this._getOption('hoverStateEnabled');\n    }\n    set hoverStateEnabled(value: boolean) {\n        this._setOption('hoverStateEnabled', value);\n    }\n\n\n    /**\n     * Configures keyboard navigation.\n    \n     */\n    @Input()\n    get keyboardNavigation(): { editOnKeyPress?: boolean, enabled?: boolean, enterKeyAction?: EnterKeyAction, enterKeyDirection?: EnterKeyDirection } {\n        return this._getOption('keyboardNavigation');\n    }\n    set keyboardNavigation(value: { editOnKeyPress?: boolean, enabled?: boolean, enterKeyAction?: EnterKeyAction, enterKeyDirection?: EnterKeyDirection }) {\n        this._setOption('keyboardNavigation', value);\n    }\n\n\n    /**\n     * Specifies the key property (or properties) that provide(s) key values to access data items. Each key value must be unique. This property applies only if data is a simple array.\n    \n     */\n    @Input()\n    get keyExpr(): Array<string> | string | undefined {\n        return this._getOption('keyExpr');\n    }\n    set keyExpr(value: Array<string> | string | undefined) {\n        this._setOption('keyExpr', value);\n    }\n\n\n    /**\n     * Configures the load panel.\n    \n     */\n    @Input()\n    get loadPanel(): { enabled?: boolean | Mode, height?: number | string, indicatorOptions?: LoadPanelIndicatorProperties, indicatorSrc?: string, shading?: boolean, shadingColor?: string, showIndicator?: boolean, showPane?: boolean, text?: string, width?: number | string } {\n        return this._getOption('loadPanel');\n    }\n    set loadPanel(value: { enabled?: boolean | Mode, height?: number | string, indicatorOptions?: LoadPanelIndicatorProperties, indicatorSrc?: string, shading?: boolean, shadingColor?: string, showIndicator?: boolean, showPane?: boolean, text?: string, width?: number | string }) {\n        this._setOption('loadPanel', value);\n    }\n\n\n    /**\n     * Allows you to build a master-detail interface in the grid.\n    \n     */\n    @Input()\n    get masterDetail(): { autoExpandAll?: boolean, enabled?: boolean, template?: any } {\n        return this._getOption('masterDetail');\n    }\n    set masterDetail(value: { autoExpandAll?: boolean, enabled?: boolean, template?: any }) {\n        this._setOption('masterDetail', value);\n    }\n\n\n    /**\n     * Specifies a text string shown when the widget does not display any data.\n    \n     */\n    @Input()\n    get noDataText(): string {\n        return this._getOption('noDataText');\n    }\n    set noDataText(value: string) {\n        this._setOption('noDataText', value);\n    }\n\n\n    /**\n     * Configures the pager.\n    \n     */\n    @Input()\n    get pager(): Pager {\n        return this._getOption('pager');\n    }\n    set pager(value: Pager) {\n        this._setOption('pager', value);\n    }\n\n\n    /**\n     * Configures paging.\n    \n     */\n    @Input()\n    get paging(): { enabled?: boolean, pageIndex?: number, pageSize?: number } {\n        return this._getOption('paging');\n    }\n    set paging(value: { enabled?: boolean, pageIndex?: number, pageSize?: number }) {\n        this._setOption('paging', value);\n    }\n\n\n    /**\n     * Specifies DataGrid operations to be executed on the server side.\n    \n     */\n    @Input()\n    get remoteOperations(): boolean | Mode | { filtering?: boolean, grouping?: boolean, groupPaging?: boolean, paging?: boolean, sorting?: boolean, summary?: boolean } {\n        return this._getOption('remoteOperations');\n    }\n    set remoteOperations(value: boolean | Mode | { filtering?: boolean, grouping?: boolean, groupPaging?: boolean, paging?: boolean, sorting?: boolean, summary?: boolean }) {\n        this._setOption('remoteOperations', value);\n    }\n\n\n    /**\n     * Specifies whether to render the filter row, command columns, and columns with showEditorAlways set to true after other elements.\n    \n     */\n    @Input()\n    get renderAsync(): boolean {\n        return this._getOption('renderAsync');\n    }\n    set renderAsync(value: boolean) {\n        this._setOption('renderAsync', value);\n    }\n\n\n    /**\n     * Specifies whether to repaint only those cells whose data changed.\n    \n     */\n    @Input()\n    get repaintChangesOnly(): boolean {\n        return this._getOption('repaintChangesOnly');\n    }\n    set repaintChangesOnly(value: boolean) {\n        this._setOption('repaintChangesOnly', value);\n    }\n\n\n    /**\n     * Specifies whether rows should be shaded differently.\n    \n     */\n    @Input()\n    get rowAlternationEnabled(): boolean {\n        return this._getOption('rowAlternationEnabled');\n    }\n    set rowAlternationEnabled(value: boolean) {\n        this._setOption('rowAlternationEnabled', value);\n    }\n\n\n    /**\n     * Configures row reordering using drag and drop gestures.\n    \n     */\n    @Input()\n    get rowDragging(): { allowDropInsideItem?: boolean, allowReordering?: boolean, autoScroll?: boolean, boundary?: any | string | undefined, container?: any | string | undefined, cursorOffset?: string | { x?: number, y?: number }, data?: any | undefined, dragDirection?: DragDirection, dragTemplate?: any, dropFeedbackMode?: DragHighlight, filter?: string, group?: string | undefined, handle?: string, onAdd?: ((e: { component: GridBase, dropInsideItem: boolean, event: event, fromComponent: dxSortable | dxDraggable, fromData: any, fromIndex: number, itemData: any, itemElement: any, toComponent: dxSortable | dxDraggable, toData: any, toIndex: number }) => void), onDragChange?: ((e: { cancel: boolean, component: GridBase, dropInsideItem: boolean, event: event, fromComponent: dxSortable | dxDraggable, fromData: any, fromIndex: number, itemData: any, itemElement: any, toComponent: dxSortable | dxDraggable, toData: any, toIndex: number }) => void), onDragEnd?: ((e: { cancel: boolean, component: GridBase, dropInsideItem: boolean, event: event, fromComponent: dxSortable | dxDraggable, fromData: any, fromIndex: number, itemData: any, itemElement: any, toComponent: dxSortable | dxDraggable, toData: any, toIndex: number }) => void), onDragMove?: ((e: { cancel: boolean, component: GridBase, dropInsideItem: boolean, event: event, fromComponent: dxSortable | dxDraggable, fromData: any, fromIndex: number, itemData: any, itemElement: any, toComponent: dxSortable | dxDraggable, toData: any, toIndex: number }) => void), onDragStart?: ((e: { cancel: boolean, component: GridBase, event: event, fromData: any, fromIndex: number, itemData: any, itemElement: any }) => void), onRemove?: ((e: { component: GridBase, event: event, fromComponent: dxSortable | dxDraggable, fromData: any, fromIndex: number, itemData: any, itemElement: any, toComponent: dxSortable | dxDraggable, toData: any, toIndex: number }) => void), onReorder?: ((e: { component: GridBase, dropInsideItem: boolean, event: event, fromComponent: dxSortable | dxDraggable, fromData: any, fromIndex: number, itemData: any, itemElement: any, promise: any, toComponent: dxSortable | dxDraggable, toData: any, toIndex: number }) => void), scrollSensitivity?: number, scrollSpeed?: number, showDragIcons?: boolean } {\n        return this._getOption('rowDragging');\n    }\n    set rowDragging(value: { allowDropInsideItem?: boolean, allowReordering?: boolean, autoScroll?: boolean, boundary?: any | string | undefined, container?: any | string | undefined, cursorOffset?: string | { x?: number, y?: number }, data?: any | undefined, dragDirection?: DragDirection, dragTemplate?: any, dropFeedbackMode?: DragHighlight, filter?: string, group?: string | undefined, handle?: string, onAdd?: ((e: { component: GridBase, dropInsideItem: boolean, event: event, fromComponent: dxSortable | dxDraggable, fromData: any, fromIndex: number, itemData: any, itemElement: any, toComponent: dxSortable | dxDraggable, toData: any, toIndex: number }) => void), onDragChange?: ((e: { cancel: boolean, component: GridBase, dropInsideItem: boolean, event: event, fromComponent: dxSortable | dxDraggable, fromData: any, fromIndex: number, itemData: any, itemElement: any, toComponent: dxSortable | dxDraggable, toData: any, toIndex: number }) => void), onDragEnd?: ((e: { cancel: boolean, component: GridBase, dropInsideItem: boolean, event: event, fromComponent: dxSortable | dxDraggable, fromData: any, fromIndex: number, itemData: any, itemElement: any, toComponent: dxSortable | dxDraggable, toData: any, toIndex: number }) => void), onDragMove?: ((e: { cancel: boolean, component: GridBase, dropInsideItem: boolean, event: event, fromComponent: dxSortable | dxDraggable, fromData: any, fromIndex: number, itemData: any, itemElement: any, toComponent: dxSortable | dxDraggable, toData: any, toIndex: number }) => void), onDragStart?: ((e: { cancel: boolean, component: GridBase, event: event, fromData: any, fromIndex: number, itemData: any, itemElement: any }) => void), onRemove?: ((e: { component: GridBase, event: event, fromComponent: dxSortable | dxDraggable, fromData: any, fromIndex: number, itemData: any, itemElement: any, toComponent: dxSortable | dxDraggable, toData: any, toIndex: number }) => void), onReorder?: ((e: { component: GridBase, dropInsideItem: boolean, event: event, fromComponent: dxSortable | dxDraggable, fromData: any, fromIndex: number, itemData: any, itemElement: any, promise: any, toComponent: dxSortable | dxDraggable, toData: any, toIndex: number }) => void), scrollSensitivity?: number, scrollSpeed?: number, showDragIcons?: boolean }) {\n        this._setOption('rowDragging', value);\n    }\n\n\n    /**\n     * Specifies a custom template for rows.\n    \n     * @deprecated Use the dataRowTemplate option instead.\n    \n     */\n    @Input()\n    get rowTemplate(): any {\n        return this._getOption('rowTemplate');\n    }\n    set rowTemplate(value: any) {\n        this._setOption('rowTemplate', value);\n    }\n\n\n    /**\n     * Switches the UI component to a right-to-left representation.\n    \n     */\n    @Input()\n    get rtlEnabled(): boolean {\n        return this._getOption('rtlEnabled');\n    }\n    set rtlEnabled(value: boolean) {\n        this._setOption('rtlEnabled', value);\n    }\n\n\n    /**\n     * Configures scrolling.\n    \n     */\n    @Input()\n    get scrolling(): { columnRenderingMode?: DataRenderMode, mode?: DataGridScrollMode, preloadEnabled?: boolean, renderAsync?: boolean | undefined, rowRenderingMode?: DataRenderMode, scrollByContent?: boolean, scrollByThumb?: boolean, showScrollbar?: ScrollbarMode, useNative?: boolean | Mode } {\n        return this._getOption('scrolling');\n    }\n    set scrolling(value: { columnRenderingMode?: DataRenderMode, mode?: DataGridScrollMode, preloadEnabled?: boolean, renderAsync?: boolean | undefined, rowRenderingMode?: DataRenderMode, scrollByContent?: boolean, scrollByThumb?: boolean, showScrollbar?: ScrollbarMode, useNative?: boolean | Mode }) {\n        this._setOption('scrolling', value);\n    }\n\n\n    /**\n     * Configures the search panel.\n    \n     */\n    @Input()\n    get searchPanel(): SearchPanel {\n        return this._getOption('searchPanel');\n    }\n    set searchPanel(value: SearchPanel) {\n        this._setOption('searchPanel', value);\n    }\n\n\n    /**\n     * Allows you to select rows or determine which rows are selected.\n    \n     */\n    @Input()\n    get selectedRowKeys(): Array<any> {\n        return this._getOption('selectedRowKeys');\n    }\n    set selectedRowKeys(value: Array<any>) {\n        this._setOption('selectedRowKeys', value);\n    }\n\n\n    /**\n     * Configures runtime selection.\n    \n     */\n    @Input()\n    get selection(): { allowSelectAll?: boolean, deferred?: boolean, mode?: SingleMultipleOrNone, selectAllMode?: SelectAllMode, sensitivity?: SelectionSensitivity, showCheckBoxesMode?: SelectionColumnDisplayMode } {\n        return this._getOption('selection');\n    }\n    set selection(value: { allowSelectAll?: boolean, deferred?: boolean, mode?: SingleMultipleOrNone, selectAllMode?: SelectAllMode, sensitivity?: SelectionSensitivity, showCheckBoxesMode?: SelectionColumnDisplayMode }) {\n        this._setOption('selection', value);\n    }\n\n\n    /**\n     * Specifies filters for the rows that must be selected initially. Applies only if selection.deferred is true.\n    \n     */\n    @Input()\n    get selectionFilter(): Array<any> | Function | string {\n        return this._getOption('selectionFilter');\n    }\n    set selectionFilter(value: Array<any> | Function | string) {\n        this._setOption('selectionFilter', value);\n    }\n\n\n    /**\n     * Specifies whether the outer borders of the UI component are visible.\n    \n     */\n    @Input()\n    get showBorders(): boolean {\n        return this._getOption('showBorders');\n    }\n    set showBorders(value: boolean) {\n        this._setOption('showBorders', value);\n    }\n\n\n    /**\n     * Specifies whether column headers are visible.\n    \n     */\n    @Input()\n    get showColumnHeaders(): boolean {\n        return this._getOption('showColumnHeaders');\n    }\n    set showColumnHeaders(value: boolean) {\n        this._setOption('showColumnHeaders', value);\n    }\n\n\n    /**\n     * Specifies whether vertical lines that separate one column from another are visible.\n    \n     */\n    @Input()\n    get showColumnLines(): boolean {\n        return this._getOption('showColumnLines');\n    }\n    set showColumnLines(value: boolean) {\n        this._setOption('showColumnLines', value);\n    }\n\n\n    /**\n     * Specifies whether horizontal lines that separate one row from another are visible.\n    \n     */\n    @Input()\n    get showRowLines(): boolean {\n        return this._getOption('showRowLines');\n    }\n    set showRowLines(value: boolean) {\n        this._setOption('showRowLines', value);\n    }\n\n\n    /**\n     * Allows you to sort groups according to the values of group summary items.\n    \n     */\n    @Input()\n    get sortByGroupSummaryInfo(): { groupColumn?: string | undefined, sortOrder?: SortOrder | undefined, summaryItem?: number | string | undefined }[] {\n        return this._getOption('sortByGroupSummaryInfo');\n    }\n    set sortByGroupSummaryInfo(value: { groupColumn?: string | undefined, sortOrder?: SortOrder | undefined, summaryItem?: number | string | undefined }[]) {\n        this._setOption('sortByGroupSummaryInfo', value);\n    }\n\n\n    /**\n     * Configures runtime sorting.\n    \n     */\n    @Input()\n    get sorting(): Sorting {\n        return this._getOption('sorting');\n    }\n    set sorting(value: Sorting) {\n        this._setOption('sorting', value);\n    }\n\n\n    /**\n     * Configures state storing.\n    \n     */\n    @Input()\n    get stateStoring(): { customLoad?: Function, customSave?: ((gridState: any) => void), enabled?: boolean, savingTimeout?: number, storageKey?: string, type?: StateStoreType } {\n        return this._getOption('stateStoring');\n    }\n    set stateStoring(value: { customLoad?: Function, customSave?: ((gridState: any) => void), enabled?: boolean, savingTimeout?: number, storageKey?: string, type?: StateStoreType }) {\n        this._setOption('stateStoring', value);\n    }\n\n\n    /**\n     * Specifies the properties of the grid summary.\n    \n     */\n    @Input()\n    get summary(): { calculateCustomSummary?: ((options: { component: dxDataGrid, groupIndex: number, name: string, summaryProcess: string, totalValue: any, value: any }) => void), groupItems?: { alignByColumn?: boolean, column?: string | undefined, customizeText?: ((itemInfo: { value: string | number | Date, valueText: string }) => string), displayFormat?: string | undefined, name?: string | undefined, showInColumn?: string | undefined, showInGroupFooter?: boolean, skipEmptyValues?: boolean, summaryType?: string | SummaryType | undefined, valueFormat?: Format | undefined }[], recalculateWhileEditing?: boolean, skipEmptyValues?: boolean, texts?: { avg?: string, avgOtherColumn?: string, count?: string, max?: string, maxOtherColumn?: string, min?: string, minOtherColumn?: string, sum?: string, sumOtherColumn?: string }, totalItems?: { alignment?: HorizontalAlignment | undefined, column?: string | undefined, cssClass?: string | undefined, customizeText?: ((itemInfo: { value: string | number | Date, valueText: string }) => string), displayFormat?: string | undefined, name?: string | undefined, showInColumn?: string | undefined, skipEmptyValues?: boolean, summaryType?: string | SummaryType | undefined, valueFormat?: Format | undefined }[] } {\n        return this._getOption('summary');\n    }\n    set summary(value: { calculateCustomSummary?: ((options: { component: dxDataGrid, groupIndex: number, name: string, summaryProcess: string, totalValue: any, value: any }) => void), groupItems?: { alignByColumn?: boolean, column?: string | undefined, customizeText?: ((itemInfo: { value: string | number | Date, valueText: string }) => string), displayFormat?: string | undefined, name?: string | undefined, showInColumn?: string | undefined, showInGroupFooter?: boolean, skipEmptyValues?: boolean, summaryType?: string | SummaryType | undefined, valueFormat?: Format | undefined }[], recalculateWhileEditing?: boolean, skipEmptyValues?: boolean, texts?: { avg?: string, avgOtherColumn?: string, count?: string, max?: string, maxOtherColumn?: string, min?: string, minOtherColumn?: string, sum?: string, sumOtherColumn?: string }, totalItems?: { alignment?: HorizontalAlignment | undefined, column?: string | undefined, cssClass?: string | undefined, customizeText?: ((itemInfo: { value: string | number | Date, valueText: string }) => string), displayFormat?: string | undefined, name?: string | undefined, showInColumn?: string | undefined, skipEmptyValues?: boolean, summaryType?: string | SummaryType | undefined, valueFormat?: Format | undefined }[] }) {\n        this._setOption('summary', value);\n    }\n\n\n    /**\n     * Specifies whether to show only relevant values in the header filter and filter row.\n    \n     */\n    @Input()\n    get syncLookupFilterValues(): boolean {\n        return this._getOption('syncLookupFilterValues');\n    }\n    set syncLookupFilterValues(value: boolean) {\n        this._setOption('syncLookupFilterValues', value);\n    }\n\n\n    /**\n     * Specifies the number of the element when the Tab key is used for navigating.\n    \n     */\n    @Input()\n    get tabIndex(): number {\n        return this._getOption('tabIndex');\n    }\n    set tabIndex(value: number) {\n        this._setOption('tabIndex', value);\n    }\n\n\n    /**\n     * Configures the toolbar.\n    \n     */\n    @Input()\n    get toolbar(): dxDataGridToolbar | undefined {\n        return this._getOption('toolbar');\n    }\n    set toolbar(value: dxDataGridToolbar | undefined) {\n        this._setOption('toolbar', value);\n    }\n\n\n    /**\n     * Specifies whether to enable two-way data binding.\n    \n     */\n    @Input()\n    get twoWayBindingEnabled(): boolean {\n        return this._getOption('twoWayBindingEnabled');\n    }\n    set twoWayBindingEnabled(value: boolean) {\n        this._setOption('twoWayBindingEnabled', value);\n    }\n\n\n    /**\n     * Specifies whether the UI component is visible.\n    \n     */\n    @Input()\n    get visible(): boolean {\n        return this._getOption('visible');\n    }\n    set visible(value: boolean) {\n        this._setOption('visible', value);\n    }\n\n\n    /**\n     * Specifies the UI component&apos;s width.\n    \n     */\n    @Input()\n    get width(): number | string | undefined {\n        return this._getOption('width');\n    }\n    set width(value: number | string | undefined) {\n        this._setOption('width', value);\n    }\n\n\n    /**\n     * Specifies whether text that does not fit into a column should be wrapped.\n    \n     */\n    @Input()\n    get wordWrapEnabled(): boolean {\n        return this._getOption('wordWrapEnabled');\n    }\n    set wordWrapEnabled(value: boolean) {\n        this._setOption('wordWrapEnabled', value);\n    }\n\n    /**\n    \n     * A function that is executed before an adaptive detail row is rendered.\n    \n    \n     */\n    @Output() onAdaptiveDetailRowPreparing: EventEmitter<AdaptiveDetailRowPreparingEvent>;\n\n    /**\n    \n     * A function that is executed before an AI Assistant request is created.\n    \n    \n     */\n    @Output() onAIAssistantRequestCreating: EventEmitter<AIAssistantRequestCreatingEvent>;\n\n    /**\n    \n     * A function that is executed before an AI column request is created.\n    \n    \n     */\n    @Output() onAIColumnRequestCreating: EventEmitter<AIColumnRequestCreatingEvent>;\n\n    /**\n    \n     * A function that is executed when a cell is clicked or tapped. Executed before onRowClick.\n    \n    \n     */\n    @Output() onCellClick: EventEmitter<CellClickEvent>;\n\n    /**\n    \n     * A function that is executed when a cell is double-clicked or double-tapped. Executed before onRowDblClick.\n    \n    \n     */\n    @Output() onCellDblClick: EventEmitter<CellDblClickEvent>;\n\n    /**\n    \n     * A function that is executed after the pointer enters or leaves a cell.\n    \n    \n     */\n    @Output() onCellHoverChanged: EventEmitter<CellHoverChangedEvent>;\n\n    /**\n    \n     * A function that is executed after a grid cell is created.\n    \n    \n     */\n    @Output() onCellPrepared: EventEmitter<CellPreparedEvent>;\n\n    /**\n    \n     * A function that is executed when the UI component is rendered and each time the component is repainted.\n    \n    \n     */\n    @Output() onContentReady: EventEmitter<ContentReadyEvent>;\n\n    /**\n    \n     * A function that is executed before the context menu is rendered.\n    \n    \n     */\n    @Output() onContextMenuPreparing: EventEmitter<ContextMenuPreparingEvent>;\n\n    /**\n    \n     * A function that is executed when an error occurs in the data source.\n    \n    \n     */\n    @Output() onDataErrorOccurred: EventEmitter<DataErrorOccurredEvent>;\n\n    /**\n    \n     * A function that is executed before the UI component is disposed of.\n    \n    \n     */\n    @Output() onDisposing: EventEmitter<DisposingEvent>;\n\n    /**\n    \n     * A function that is executed after row changes are discarded.\n    \n    \n     */\n    @Output() onEditCanceled: EventEmitter<EditCanceledEvent>;\n\n    /**\n    \n     * A function that is executed when the edit operation is canceled, but row changes are not yet discarded.\n    \n    \n     */\n    @Output() onEditCanceling: EventEmitter<EditCancelingEvent>;\n\n    /**\n    \n     * A function that is executed before a cell or row switches to the editing state.\n    \n    \n     */\n    @Output() onEditingStart: EventEmitter<EditingStartEvent>;\n\n    /**\n    \n     * A function that is executed after an editor is created. Not executed for cells with an editCellTemplate.\n    \n    \n     */\n    @Output() onEditorPrepared: EventEmitter<EditorPreparedEvent>;\n\n    /**\n    \n     * A function used to customize cell editors. Not executed for cells with an editCellTemplate.\n    \n    \n     */\n    @Output() onEditorPreparing: EventEmitter<EditorPreparingEvent>;\n\n    /**\n    \n     * A function that is executed before data is exported.\n    \n    \n     */\n    @Output() onExporting: EventEmitter<ExportingEvent>;\n\n    /**\n    \n     * A function that is executed after the focused cell changes. Applies only to cells in data or group rows.\n    \n    \n     */\n    @Output() onFocusedCellChanged: EventEmitter<FocusedCellChangedEvent>;\n\n    /**\n    \n     * A function that is executed before the focused cell changes. Applies only to cells in data or group rows.\n    \n    \n     */\n    @Output() onFocusedCellChanging: EventEmitter<FocusedCellChangingEvent>;\n\n    /**\n    \n     * A function that is executed after the focused row changes. Applies only to data or group rows. focusedRowEnabled should be true.\n    \n    \n     */\n    @Output() onFocusedRowChanged: EventEmitter<FocusedRowChangedEvent>;\n\n    /**\n    \n     * A function that is executed before the focused row changes. Applies only to data or group rows. focusedRowEnabled should be true.\n    \n    \n     */\n    @Output() onFocusedRowChanging: EventEmitter<FocusedRowChangingEvent>;\n\n    /**\n    \n     * A function used in JavaScript frameworks to save the UI component instance.\n    \n    \n     */\n    @Output() onInitialized: EventEmitter<InitializedEvent>;\n\n    /**\n    \n     * A function that is executed before a new row is added to the UI component.\n    \n    \n     */\n    @Output() onInitNewRow: EventEmitter<InitNewRowEvent>;\n\n    /**\n    \n     * A function that is executed when the UI component is in focus and a key has been pressed down.\n    \n    \n     */\n    @Output() onKeyDown: EventEmitter<KeyDownEvent>;\n\n    /**\n    \n     * A function that is executed after a UI component property is changed.\n    \n    \n     */\n    @Output() onOptionChanged: EventEmitter<OptionChangedEvent>;\n\n    /**\n    \n     * A function that is executed when a row is clicked or tapped.\n    \n    \n     */\n    @Output() onRowClick: EventEmitter<RowClickEvent>;\n\n    /**\n    \n     * A function that is executed after a row is collapsed.\n    \n    \n     */\n    @Output() onRowCollapsed: EventEmitter<RowCollapsedEvent>;\n\n    /**\n    \n     * A function that is executed before a row is collapsed.\n    \n    \n     */\n    @Output() onRowCollapsing: EventEmitter<RowCollapsingEvent>;\n\n    /**\n    \n     * A function that is executed when a row is double-clicked or double-tapped. Executed after onCellDblClick.\n    \n    \n     */\n    @Output() onRowDblClick: EventEmitter<RowDblClickEvent>;\n\n    /**\n    \n     * A function that is executed after a row is expanded.\n    \n    \n     */\n    @Output() onRowExpanded: EventEmitter<RowExpandedEvent>;\n\n    /**\n    \n     * A function that is executed before a row is expanded.\n    \n    \n     */\n    @Output() onRowExpanding: EventEmitter<RowExpandingEvent>;\n\n    /**\n    \n     * A function that is executed after a new row has been inserted into the data source.\n    \n    \n     */\n    @Output() onRowInserted: EventEmitter<RowInsertedEvent>;\n\n    /**\n    \n     * A function that is executed before a new row is inserted into the data source.\n    \n    \n     */\n    @Output() onRowInserting: EventEmitter<RowInsertingEvent>;\n\n    /**\n    \n     * A function that is executed after a row is created.\n    \n    \n     */\n    @Output() onRowPrepared: EventEmitter<RowPreparedEvent>;\n\n    /**\n    \n     * A function that is executed after a row has been removed from the data source.\n    \n    \n     */\n    @Output() onRowRemoved: EventEmitter<RowRemovedEvent>;\n\n    /**\n    \n     * A function that is executed before a row is removed from the data source.\n    \n    \n     */\n    @Output() onRowRemoving: EventEmitter<RowRemovingEvent>;\n\n    /**\n    \n     * A function that is executed after a row has been updated in the data source.\n    \n    \n     */\n    @Output() onRowUpdated: EventEmitter<RowUpdatedEvent>;\n\n    /**\n    \n     * A function that is executed before a row is updated in the data source.\n    \n    \n     */\n    @Output() onRowUpdating: EventEmitter<RowUpdatingEvent>;\n\n    /**\n    \n     * A function that is executed after cells in a row are validated against validation rules.\n    \n    \n     */\n    @Output() onRowValidating: EventEmitter<RowValidatingEvent>;\n\n    /**\n    \n     * A function that is executed after row changes are saved.\n    \n    \n     */\n    @Output() onSaved: EventEmitter<SavedEvent>;\n\n    /**\n    \n     * A function that is executed before pending row changes are saved.\n    \n    \n     */\n    @Output() onSaving: EventEmitter<SavingEvent>;\n\n    /**\n    \n     * A function that is executed after selecting a row or clearing its selection.\n    \n    \n     */\n    @Output() onSelectionChanged: EventEmitter<SelectionChangedEvent>;\n\n    /**\n    \n     * A function that is executed before the toolbar is created.\n    \n    \n     */\n    @Output() onToolbarPreparing: EventEmitter<ToolbarPreparingEvent>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() accessKeyChange: EventEmitter<string | undefined>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() activeStateEnabledChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() aiAssistantChange: EventEmitter<AIAssistant>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() aiIntegrationChange: EventEmitter<AIIntegration | undefined>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() allowColumnReorderingChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() allowColumnResizingChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() autoNavigateToFocusedRowChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() cacheEnabledChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() cellHintEnabledChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() columnAutoWidthChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() columnChooserChange: EventEmitter<ColumnChooser>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() columnFixingChange: EventEmitter<{ enabled?: boolean, icons?: { fix?: string, leftPosition?: string, rightPosition?: string, stickyPosition?: string, unfix?: string }, texts?: { fix?: string, leftPosition?: string, rightPosition?: string, stickyPosition?: string, unfix?: string } }>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() columnHidingEnabledChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() columnMinWidthChange: EventEmitter<number | undefined>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() columnResizingModeChange: EventEmitter<ColumnResizeMode>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() columnsChange: EventEmitter<Array<dxDataGridColumn | string>>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() columnWidthChange: EventEmitter<Mode | number | undefined>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() customizeColumnsChange: EventEmitter<((columns: Array<dxDataGridColumn>) => void)>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() dataRowTemplateChange: EventEmitter<any>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() dataSourceChange: EventEmitter<Array<any> | DataSource | DataSourceOptions | null | Store | string>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() dateSerializationFormatChange: EventEmitter<string>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() disabledChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() editingChange: EventEmitter<{ allowAdding?: boolean, allowDeleting?: boolean | ((options: { component: dxDataGrid, row: dxDataGridRowObject }) => boolean), allowUpdating?: boolean | ((options: { component: dxDataGrid, row: dxDataGridRowObject }) => boolean), changes?: Array<DataChange>, confirmDelete?: boolean, editColumnName?: string, editRowKey?: any, form?: dxFormOptions, mode?: GridsEditMode, newRowPosition?: NewRowPosition, popup?: dxPopupOptions<any>, refreshMode?: GridsEditRefreshMode, selectTextOnEditStart?: boolean, startEditAction?: StartEditAction, texts?: any | { addRow?: string, cancelAllChanges?: string, cancelRowChanges?: string, confirmDeleteMessage?: string, confirmDeleteTitle?: string, deleteRow?: string, editRow?: string, saveAllChanges?: string, saveRowChanges?: string, undeleteRow?: string, validationCancelChanges?: string }, useIcons?: boolean }>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() elementAttrChange: EventEmitter<Record<string, any>>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() errorRowEnabledChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() exportChange: EventEmitter<{ allowExportSelectedData?: boolean, enabled?: boolean, formats?: Array<DataGridExportFormat | string>, texts?: { exportAll?: string, exportSelectedRows?: string, exportTo?: string } }>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() filterBuilderChange: EventEmitter<dxFilterBuilderOptions>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() filterBuilderPopupChange: EventEmitter<dxPopupOptions<any>>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() filterPanelChange: EventEmitter<FilterPanel>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() filterRowChange: EventEmitter<{ applyFilter?: ApplyFilterMode, applyFilterText?: string, betweenEndText?: string, betweenStartText?: string, operationDescriptions?: { between?: string, contains?: string, endsWith?: string, equal?: string, greaterThan?: string, greaterThanOrEqual?: string, lessThan?: string, lessThanOrEqual?: string, notContains?: string, notEqual?: string, startsWith?: string }, resetOperationText?: string, showAllText?: string, showOperationChooser?: boolean, visible?: boolean }>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() filterSyncEnabledChange: EventEmitter<boolean | Mode>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() filterValueChange: EventEmitter<Array<any> | Function | string>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() focusedColumnIndexChange: EventEmitter<number>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() focusedRowEnabledChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() focusedRowIndexChange: EventEmitter<number>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() focusedRowKeyChange: EventEmitter<any | undefined>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() groupingChange: EventEmitter<{ allowCollapsing?: boolean, autoExpandAll?: boolean, contextMenuEnabled?: boolean, expandMode?: GroupExpandMode, texts?: { groupByThisColumn?: string, groupContinuedMessage?: string, groupContinuesMessage?: string, ungroup?: string, ungroupAll?: string } }>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() groupPanelChange: EventEmitter<{ allowColumnDragging?: boolean, emptyPanelText?: string, visible?: boolean | Mode }>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() headerFilterChange: EventEmitter<HeaderFilter>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() heightChange: EventEmitter<number | string | undefined>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() highlightChangesChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() hintChange: EventEmitter<string | undefined>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() hoverStateEnabledChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() keyboardNavigationChange: EventEmitter<{ editOnKeyPress?: boolean, enabled?: boolean, enterKeyAction?: EnterKeyAction, enterKeyDirection?: EnterKeyDirection }>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() keyExprChange: EventEmitter<Array<string> | string | undefined>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() loadPanelChange: EventEmitter<{ enabled?: boolean | Mode, height?: number | string, indicatorOptions?: LoadPanelIndicatorProperties, indicatorSrc?: string, shading?: boolean, shadingColor?: string, showIndicator?: boolean, showPane?: boolean, text?: string, width?: number | string }>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() masterDetailChange: EventEmitter<{ autoExpandAll?: boolean, enabled?: boolean, template?: any }>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() noDataTextChange: EventEmitter<string>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() pagerChange: EventEmitter<Pager>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() pagingChange: EventEmitter<{ enabled?: boolean, pageIndex?: number, pageSize?: number }>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() remoteOperationsChange: EventEmitter<boolean | Mode | { filtering?: boolean, grouping?: boolean, groupPaging?: boolean, paging?: boolean, sorting?: boolean, summary?: boolean }>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() renderAsyncChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() repaintChangesOnlyChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() rowAlternationEnabledChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() rowDraggingChange: EventEmitter<{ allowDropInsideItem?: boolean, allowReordering?: boolean, autoScroll?: boolean, boundary?: any | string | undefined, container?: any | string | undefined, cursorOffset?: string | { x?: number, y?: number }, data?: any | undefined, dragDirection?: DragDirection, dragTemplate?: any, dropFeedbackMode?: DragHighlight, filter?: string, group?: string | undefined, handle?: string, onAdd?: ((e: { component: GridBase, dropInsideItem: boolean, event: event, fromComponent: dxSortable | dxDraggable, fromData: any, fromIndex: number, itemData: any, itemElement: any, toComponent: dxSortable | dxDraggable, toData: any, toIndex: number }) => void), onDragChange?: ((e: { cancel: boolean, component: GridBase, dropInsideItem: boolean, event: event, fromComponent: dxSortable | dxDraggable, fromData: any, fromIndex: number, itemData: any, itemElement: any, toComponent: dxSortable | dxDraggable, toData: any, toIndex: number }) => void), onDragEnd?: ((e: { cancel: boolean, component: GridBase, dropInsideItem: boolean, event: event, fromComponent: dxSortable | dxDraggable, fromData: any, fromIndex: number, itemData: any, itemElement: any, toComponent: dxSortable | dxDraggable, toData: any, toIndex: number }) => void), onDragMove?: ((e: { cancel: boolean, component: GridBase, dropInsideItem: boolean, event: event, fromComponent: dxSortable | dxDraggable, fromData: any, fromIndex: number, itemData: any, itemElement: any, toComponent: dxSortable | dxDraggable, toData: any, toIndex: number }) => void), onDragStart?: ((e: { cancel: boolean, component: GridBase, event: event, fromData: any, fromIndex: number, itemData: any, itemElement: any }) => void), onRemove?: ((e: { component: GridBase, event: event, fromComponent: dxSortable | dxDraggable, fromData: any, fromIndex: number, itemData: any, itemElement: any, toComponent: dxSortable | dxDraggable, toData: any, toIndex: number }) => void), onReorder?: ((e: { component: GridBase, dropInsideItem: boolean, event: event, fromComponent: dxSortable | dxDraggable, fromData: any, fromIndex: number, itemData: any, itemElement: any, promise: any, toComponent: dxSortable | dxDraggable, toData: any, toIndex: number }) => void), scrollSensitivity?: number, scrollSpeed?: number, showDragIcons?: boolean }>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() rowTemplateChange: EventEmitter<any>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() rtlEnabledChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() scrollingChange: EventEmitter<{ columnRenderingMode?: DataRenderMode, mode?: DataGridScrollMode, preloadEnabled?: boolean, renderAsync?: boolean | undefined, rowRenderingMode?: DataRenderMode, scrollByContent?: boolean, scrollByThumb?: boolean, showScrollbar?: ScrollbarMode, useNative?: boolean | Mode }>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() searchPanelChange: EventEmitter<SearchPanel>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() selectedRowKeysChange: EventEmitter<Array<any>>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() selectionChange: EventEmitter<{ allowSelectAll?: boolean, deferred?: boolean, mode?: SingleMultipleOrNone, selectAllMode?: SelectAllMode, sensitivity?: SelectionSensitivity, showCheckBoxesMode?: SelectionColumnDisplayMode }>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() selectionFilterChange: EventEmitter<Array<any> | Function | string>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() showBordersChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() showColumnHeadersChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() showColumnLinesChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() showRowLinesChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() sortByGroupSummaryInfoChange: EventEmitter<{ groupColumn?: string | undefined, sortOrder?: SortOrder | undefined, summaryItem?: number | string | undefined }[]>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() sortingChange: EventEmitter<Sorting>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() stateStoringChange: EventEmitter<{ customLoad?: Function, customSave?: ((gridState: any) => void), enabled?: boolean, savingTimeout?: number, storageKey?: string, type?: StateStoreType }>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() summaryChange: EventEmitter<{ calculateCustomSummary?: ((options: { component: dxDataGrid, groupIndex: number, name: string, summaryProcess: string, totalValue: any, value: any }) => void), groupItems?: { alignByColumn?: boolean, column?: string | undefined, customizeText?: ((itemInfo: { value: string | number | Date, valueText: string }) => string), displayFormat?: string | undefined, name?: string | undefined, showInColumn?: string | undefined, showInGroupFooter?: boolean, skipEmptyValues?: boolean, summaryType?: string | SummaryType | undefined, valueFormat?: Format | undefined }[], recalculateWhileEditing?: boolean, skipEmptyValues?: boolean, texts?: { avg?: string, avgOtherColumn?: string, count?: string, max?: string, maxOtherColumn?: string, min?: string, minOtherColumn?: string, sum?: string, sumOtherColumn?: string }, totalItems?: { alignment?: HorizontalAlignment | undefined, column?: string | undefined, cssClass?: string | undefined, customizeText?: ((itemInfo: { value: string | number | Date, valueText: string }) => string), displayFormat?: string | undefined, name?: string | undefined, showInColumn?: string | undefined, skipEmptyValues?: boolean, summaryType?: string | SummaryType | undefined, valueFormat?: Format | undefined }[] }>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() syncLookupFilterValuesChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() tabIndexChange: EventEmitter<number>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() toolbarChange: EventEmitter<dxDataGridToolbar | undefined>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() twoWayBindingEnabledChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() visibleChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() widthChange: EventEmitter<number | string | undefined>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() wordWrapEnabledChange: EventEmitter<boolean>;\n\n\n\n\n    constructor(elementRef: ElementRef, ngZone: NgZone, templateHost: DxTemplateHost,\n            private _watcherHelper: WatcherHelper,\n            private _idh: IterableDifferHelper,\n            optionHost: NestedOptionHost,\n            transferState: TransferState,\n            @Inject(PLATFORM_ID) platformId: any) {\n\n        super(elementRef, ngZone, templateHost, _watcherHelper, transferState, platformId);\n\n        this._createEventEmitters([\n            { subscribe: 'adaptiveDetailRowPreparing', emit: 'onAdaptiveDetailRowPreparing' },\n            { subscribe: 'aIAssistantRequestCreating', emit: 'onAIAssistantRequestCreating' },\n            { subscribe: 'aIColumnRequestCreating', emit: 'onAIColumnRequestCreating' },\n            { subscribe: 'cellClick', emit: 'onCellClick' },\n            { subscribe: 'cellDblClick', emit: 'onCellDblClick' },\n            { subscribe: 'cellHoverChanged', emit: 'onCellHoverChanged' },\n            { subscribe: 'cellPrepared', emit: 'onCellPrepared' },\n            { subscribe: 'contentReady', emit: 'onContentReady' },\n            { subscribe: 'contextMenuPreparing', emit: 'onContextMenuPreparing' },\n            { subscribe: 'dataErrorOccurred', emit: 'onDataErrorOccurred' },\n            { subscribe: 'disposing', emit: 'onDisposing' },\n            { subscribe: 'editCanceled', emit: 'onEditCanceled' },\n            { subscribe: 'editCanceling', emit: 'onEditCanceling' },\n            { subscribe: 'editingStart', emit: 'onEditingStart' },\n            { subscribe: 'editorPrepared', emit: 'onEditorPrepared' },\n            { subscribe: 'editorPreparing', emit: 'onEditorPreparing' },\n            { subscribe: 'exporting', emit: 'onExporting' },\n            { subscribe: 'focusedCellChanged', emit: 'onFocusedCellChanged' },\n            { subscribe: 'focusedCellChanging', emit: 'onFocusedCellChanging' },\n            { subscribe: 'focusedRowChanged', emit: 'onFocusedRowChanged' },\n            { subscribe: 'focusedRowChanging', emit: 'onFocusedRowChanging' },\n            { subscribe: 'initialized', emit: 'onInitialized' },\n            { subscribe: 'initNewRow', emit: 'onInitNewRow' },\n            { subscribe: 'keyDown', emit: 'onKeyDown' },\n            { subscribe: 'optionChanged', emit: 'onOptionChanged' },\n            { subscribe: 'rowClick', emit: 'onRowClick' },\n            { subscribe: 'rowCollapsed', emit: 'onRowCollapsed' },\n            { subscribe: 'rowCollapsing', emit: 'onRowCollapsing' },\n            { subscribe: 'rowDblClick', emit: 'onRowDblClick' },\n            { subscribe: 'rowExpanded', emit: 'onRowExpanded' },\n            { subscribe: 'rowExpanding', emit: 'onRowExpanding' },\n            { subscribe: 'rowInserted', emit: 'onRowInserted' },\n            { subscribe: 'rowInserting', emit: 'onRowInserting' },\n            { subscribe: 'rowPrepared', emit: 'onRowPrepared' },\n            { subscribe: 'rowRemoved', emit: 'onRowRemoved' },\n            { subscribe: 'rowRemoving', emit: 'onRowRemoving' },\n            { subscribe: 'rowUpdated', emit: 'onRowUpdated' },\n            { subscribe: 'rowUpdating', emit: 'onRowUpdating' },\n            { subscribe: 'rowValidating', emit: 'onRowValidating' },\n            { subscribe: 'saved', emit: 'onSaved' },\n            { subscribe: 'saving', emit: 'onSaving' },\n            { subscribe: 'selectionChanged', emit: 'onSelectionChanged' },\n            { subscribe: 'toolbarPreparing', emit: 'onToolbarPreparing' },\n            { emit: 'accessKeyChange' },\n            { emit: 'activeStateEnabledChange' },\n            { emit: 'aiAssistantChange' },\n            { emit: 'aiIntegrationChange' },\n            { emit: 'allowColumnReorderingChange' },\n            { emit: 'allowColumnResizingChange' },\n            { emit: 'autoNavigateToFocusedRowChange' },\n            { emit: 'cacheEnabledChange' },\n            { emit: 'cellHintEnabledChange' },\n            { emit: 'columnAutoWidthChange' },\n            { emit: 'columnChooserChange' },\n            { emit: 'columnFixingChange' },\n            { emit: 'columnHidingEnabledChange' },\n            { emit: 'columnMinWidthChange' },\n            { emit: 'columnResizingModeChange' },\n            { emit: 'columnsChange' },\n            { emit: 'columnWidthChange' },\n            { emit: 'customizeColumnsChange' },\n            { emit: 'dataRowTemplateChange' },\n            { emit: 'dataSourceChange' },\n            { emit: 'dateSerializationFormatChange' },\n            { emit: 'disabledChange' },\n            { emit: 'editingChange' },\n            { emit: 'elementAttrChange' },\n            { emit: 'errorRowEnabledChange' },\n            { emit: 'exportChange' },\n            { emit: 'filterBuilderChange' },\n            { emit: 'filterBuilderPopupChange' },\n            { emit: 'filterPanelChange' },\n            { emit: 'filterRowChange' },\n            { emit: 'filterSyncEnabledChange' },\n            { emit: 'filterValueChange' },\n            { emit: 'focusedColumnIndexChange' },\n            { emit: 'focusedRowEnabledChange' },\n            { emit: 'focusedRowIndexChange' },\n            { emit: 'focusedRowKeyChange' },\n            { emit: 'groupingChange' },\n            { emit: 'groupPanelChange' },\n            { emit: 'headerFilterChange' },\n            { emit: 'heightChange' },\n            { emit: 'highlightChangesChange' },\n            { emit: 'hintChange' },\n            { emit: 'hoverStateEnabledChange' },\n            { emit: 'keyboardNavigationChange' },\n            { emit: 'keyExprChange' },\n            { emit: 'loadPanelChange' },\n            { emit: 'masterDetailChange' },\n            { emit: 'noDataTextChange' },\n            { emit: 'pagerChange' },\n            { emit: 'pagingChange' },\n            { emit: 'remoteOperationsChange' },\n            { emit: 'renderAsyncChange' },\n            { emit: 'repaintChangesOnlyChange' },\n            { emit: 'rowAlternationEnabledChange' },\n            { emit: 'rowDraggingChange' },\n            { emit: 'rowTemplateChange' },\n            { emit: 'rtlEnabledChange' },\n            { emit: 'scrollingChange' },\n            { emit: 'searchPanelChange' },\n            { emit: 'selectedRowKeysChange' },\n            { emit: 'selectionChange' },\n            { emit: 'selectionFilterChange' },\n            { emit: 'showBordersChange' },\n            { emit: 'showColumnHeadersChange' },\n            { emit: 'showColumnLinesChange' },\n            { emit: 'showRowLinesChange' },\n            { emit: 'sortByGroupSummaryInfoChange' },\n            { emit: 'sortingChange' },\n            { emit: 'stateStoringChange' },\n            { emit: 'summaryChange' },\n            { emit: 'syncLookupFilterValuesChange' },\n            { emit: 'tabIndexChange' },\n            { emit: 'toolbarChange' },\n            { emit: 'twoWayBindingEnabledChange' },\n            { emit: 'visibleChange' },\n            { emit: 'widthChange' },\n            { emit: 'wordWrapEnabledChange' }\n        ]);\n\n        this._idh.setHost(this);\n        optionHost.setHost(this);\n    }\n\n    protected _createInstance(element, options) {\n\n        return new DxDataGrid(element, options);\n    }\n\n\n    ngOnDestroy() {\n        this._destroyWidget();\n    }\n\n    ngOnChanges(changes: SimpleChanges) {\n        super.ngOnChanges(changes);\n        this.setupChanges('columns', changes);\n        this.setupChanges('dataSource', changes);\n        this.setupChanges('filterValue', changes);\n        this.setupChanges('keyExpr', changes);\n        this.setupChanges('selectedRowKeys', changes);\n        this.setupChanges('selectionFilter', changes);\n        this.setupChanges('sortByGroupSummaryInfo', changes);\n    }\n\n    setupChanges(prop: string, changes: SimpleChanges) {\n        if (!(prop in this._optionsToUpdate)) {\n            this._idh.setup(prop, changes);\n        }\n    }\n\n    ngDoCheck() {\n        this._idh.doCheck('columns');\n        this._idh.doCheck('dataSource');\n        this._idh.doCheck('filterValue');\n        this._idh.doCheck('keyExpr');\n        this._idh.doCheck('selectedRowKeys');\n        this._idh.doCheck('selectionFilter');\n        this._idh.doCheck('sortByGroupSummaryInfo');\n        this._watcherHelper.checkWatchers();\n        super.ngDoCheck();\n        super.clearChangedOptions();\n    }\n\n    _setOption(name: string, value: any) {\n        let isSetup = this._idh.setupSingle(name, value);\n        let isChanged = this._idh.getChanges(name, value) !== null;\n\n        if (isSetup || isChanged) {\n            super._setOption(name, value);\n        }\n    }\n}\n\n@NgModule({\n  imports: [\n    DxDataGridComponent,\n    DxoColumnChooserModule,\n    DxoPositionModule,\n    DxoAtModule,\n    DxoBoundaryOffsetModule,\n    DxoCollisionModule,\n    DxoMyModule,\n    DxoOffsetModule,\n    DxoSearchModule,\n    DxoSelectionModule,\n    DxoColumnFixingModule,\n    DxoIconsModule,\n    DxoTextsModule,\n    DxiColumnModule,\n    DxiButtonModule,\n    DxoLookupModule,\n    DxoFormatModule,\n    DxoFormItemModule,\n    DxoLabelModule,\n    DxiValidationRuleModule,\n    DxoHeaderFilterModule,\n    DxoEditingModule,\n    DxiChangeModule,\n    DxoFormModule,\n    DxoColCountByScreenModule,\n    DxiItemModule,\n    DxoTabPanelOptionsModule,\n    DxiTabModule,\n    DxoButtonOptionsModule,\n    DxoPopupModule,\n    DxoAnimationModule,\n    DxoHideModule,\n    DxoFromModule,\n    DxoToModule,\n    DxoShowModule,\n    DxoExportModule,\n    DxoFilterBuilderModule,\n    DxiCustomOperationModule,\n    DxiFieldModule,\n    DxoFilterOperationDescriptionsModule,\n    DxoGroupOperationDescriptionsModule,\n    DxoFilterBuilderPopupModule,\n    DxoFilterPanelModule,\n    DxoFilterRowModule,\n    DxoOperationDescriptionsModule,\n    DxoGroupingModule,\n    DxoGroupPanelModule,\n    DxoKeyboardNavigationModule,\n    DxoLoadPanelModule,\n    DxoMasterDetailModule,\n    DxoPagerModule,\n    DxoPagingModule,\n    DxoRemoteOperationsModule,\n    DxoRowDraggingModule,\n    DxoCursorOffsetModule,\n    DxoScrollingModule,\n    DxoSearchPanelModule,\n    DxiSortByGroupSummaryInfoModule,\n    DxoSortingModule,\n    DxoStateStoringModule,\n    DxoSummaryModule,\n    DxiGroupItemModule,\n    DxoValueFormatModule,\n    DxiTotalItemModule,\n    DxoToolbarModule,\n    DxoDataGridAIModule,\n    DxoDataGridAIAssistantModule,\n    DxoDataGridAIOptionsModule,\n    DxoDataGridAnimationModule,\n    DxiDataGridAsyncRuleModule,\n    DxoDataGridAtModule,\n    DxoDataGridBoundaryOffsetModule,\n    DxiDataGridButtonModule,\n    DxiDataGridButtonItemModule,\n    DxoDataGridButtonOptionsModule,\n    DxiDataGridChangeModule,\n    DxoDataGridColCountByScreenModule,\n    DxoDataGridCollisionModule,\n    DxiDataGridColumnModule,\n    DxiDataGridColumnButtonModule,\n    DxoDataGridColumnChooserModule,\n    DxoDataGridColumnChooserSearchModule,\n    DxoDataGridColumnChooserSelectionModule,\n    DxoDataGridColumnFixingModule,\n    DxoDataGridColumnFixingTextsModule,\n    DxoDataGridColumnHeaderFilterModule,\n    DxoDataGridColumnHeaderFilterSearchModule,\n    DxoDataGridColumnLookupModule,\n    DxiDataGridCompareRuleModule,\n    DxoDataGridCursorOffsetModule,\n    DxiDataGridCustomOperationModule,\n    DxiDataGridCustomRuleModule,\n    DxoDataGridDataGridHeaderFilterModule,\n    DxoDataGridDataGridHeaderFilterSearchModule,\n    DxoDataGridDataGridHeaderFilterTextsModule,\n    DxoDataGridDataGridSelectionModule,\n    DxiDataGridDataGridToolbarItemModule,\n    DxoDataGridEditingModule,\n    DxoDataGridEditingTextsModule,\n    DxoDataGridEditorOptionsModule,\n    DxiDataGridEditorOptionsButtonModule,\n    DxiDataGridEmailRuleModule,\n    DxiDataGridEmptyItemModule,\n    DxoDataGridExportModule,\n    DxoDataGridExportTextsModule,\n    DxiDataGridFieldModule,\n    DxoDataGridFieldLookupModule,\n    DxoDataGridFilterBuilderModule,\n    DxoDataGridFilterBuilderPopupModule,\n    DxoDataGridFilterOperationDescriptionsModule,\n    DxoDataGridFilterPanelModule,\n    DxoDataGridFilterPanelTextsModule,\n    DxoDataGridFilterRowModule,\n    DxoDataGridFormModule,\n    DxoDataGridFormatModule,\n    DxiDataGridFormGroupItemModule,\n    DxoDataGridFormItemModule,\n    DxoDataGridFromModule,\n    DxoDataGridGroupingModule,\n    DxoDataGridGroupingTextsModule,\n    DxiDataGridGroupItemModule,\n    DxoDataGridGroupOperationDescriptionsModule,\n    DxoDataGridGroupPanelModule,\n    DxoDataGridHeaderFilterModule,\n    DxoDataGridHideModule,\n    DxoDataGridIconsModule,\n    DxoDataGridIndicatorOptionsModule,\n    DxiDataGridItemModule,\n    DxoDataGridKeyboardNavigationModule,\n    DxoDataGridLabelModule,\n    DxoDataGridLoadPanelModule,\n    DxoDataGridLookupModule,\n    DxoDataGridMasterDetailModule,\n    DxoDataGridMyModule,\n    DxiDataGridNumericRuleModule,\n    DxoDataGridOffsetModule,\n    DxoDataGridOperationDescriptionsModule,\n    DxoDataGridOptionsModule,\n    DxoDataGridPagerModule,\n    DxoDataGridPagingModule,\n    DxiDataGridPatternRuleModule,\n    DxoDataGridPopupModule,\n    DxoDataGridPositionModule,\n    DxiDataGridRangeRuleModule,\n    DxoDataGridRemoteOperationsModule,\n    DxiDataGridRequiredRuleModule,\n    DxoDataGridRowDraggingModule,\n    DxoDataGridScrollingModule,\n    DxoDataGridSearchModule,\n    DxoDataGridSearchPanelModule,\n    DxoDataGridSelectionModule,\n    DxoDataGridShowModule,\n    DxiDataGridSimpleItemModule,\n    DxiDataGridSortByGroupSummaryInfoModule,\n    DxoDataGridSortingModule,\n    DxoDataGridStateStoringModule,\n    DxiDataGridStringLengthRuleModule,\n    DxoDataGridSummaryModule,\n    DxoDataGridSummaryTextsModule,\n    DxiDataGridTabModule,\n    DxiDataGridTabbedItemModule,\n    DxoDataGridTabPanelOptionsModule,\n    DxiDataGridTabPanelOptionsItemModule,\n    DxoDataGridTextsModule,\n    DxoDataGridToModule,\n    DxoDataGridToolbarModule,\n    DxiDataGridToolbarItemModule,\n    DxiDataGridTotalItemModule,\n    DxiDataGridValidationRuleModule,\n    DxoDataGridValueFormatModule,\n    DxIntegrationModule,\n    DxTemplateModule\n  ],\n  exports: [\n    DxDataGridComponent,\n    DxoColumnChooserModule,\n    DxoPositionModule,\n    DxoAtModule,\n    DxoBoundaryOffsetModule,\n    DxoCollisionModule,\n    DxoMyModule,\n    DxoOffsetModule,\n    DxoSearchModule,\n    DxoSelectionModule,\n    DxoColumnFixingModule,\n    DxoIconsModule,\n    DxoTextsModule,\n    DxiColumnModule,\n    DxiButtonModule,\n    DxoLookupModule,\n    DxoFormatModule,\n    DxoFormItemModule,\n    DxoLabelModule,\n    DxiValidationRuleModule,\n    DxoHeaderFilterModule,\n    DxoEditingModule,\n    DxiChangeModule,\n    DxoFormModule,\n    DxoColCountByScreenModule,\n    DxiItemModule,\n    DxoTabPanelOptionsModule,\n    DxiTabModule,\n    DxoButtonOptionsModule,\n    DxoPopupModule,\n    DxoAnimationModule,\n    DxoHideModule,\n    DxoFromModule,\n    DxoToModule,\n    DxoShowModule,\n    DxoExportModule,\n    DxoFilterBuilderModule,\n    DxiCustomOperationModule,\n    DxiFieldModule,\n    DxoFilterOperationDescriptionsModule,\n    DxoGroupOperationDescriptionsModule,\n    DxoFilterBuilderPopupModule,\n    DxoFilterPanelModule,\n    DxoFilterRowModule,\n    DxoOperationDescriptionsModule,\n    DxoGroupingModule,\n    DxoGroupPanelModule,\n    DxoKeyboardNavigationModule,\n    DxoLoadPanelModule,\n    DxoMasterDetailModule,\n    DxoPagerModule,\n    DxoPagingModule,\n    DxoRemoteOperationsModule,\n    DxoRowDraggingModule,\n    DxoCursorOffsetModule,\n    DxoScrollingModule,\n    DxoSearchPanelModule,\n    DxiSortByGroupSummaryInfoModule,\n    DxoSortingModule,\n    DxoStateStoringModule,\n    DxoSummaryModule,\n    DxiGroupItemModule,\n    DxoValueFormatModule,\n    DxiTotalItemModule,\n    DxoToolbarModule,\n    DxoDataGridAIModule,\n    DxoDataGridAIAssistantModule,\n    DxoDataGridAIOptionsModule,\n    DxoDataGridAnimationModule,\n    DxiDataGridAsyncRuleModule,\n    DxoDataGridAtModule,\n    DxoDataGridBoundaryOffsetModule,\n    DxiDataGridButtonModule,\n    DxiDataGridButtonItemModule,\n    DxoDataGridButtonOptionsModule,\n    DxiDataGridChangeModule,\n    DxoDataGridColCountByScreenModule,\n    DxoDataGridCollisionModule,\n    DxiDataGridColumnModule,\n    DxiDataGridColumnButtonModule,\n    DxoDataGridColumnChooserModule,\n    DxoDataGridColumnChooserSearchModule,\n    DxoDataGridColumnChooserSelectionModule,\n    DxoDataGridColumnFixingModule,\n    DxoDataGridColumnFixingTextsModule,\n    DxoDataGridColumnHeaderFilterModule,\n    DxoDataGridColumnHeaderFilterSearchModule,\n    DxoDataGridColumnLookupModule,\n    DxiDataGridCompareRuleModule,\n    DxoDataGridCursorOffsetModule,\n    DxiDataGridCustomOperationModule,\n    DxiDataGridCustomRuleModule,\n    DxoDataGridDataGridHeaderFilterModule,\n    DxoDataGridDataGridHeaderFilterSearchModule,\n    DxoDataGridDataGridHeaderFilterTextsModule,\n    DxoDataGridDataGridSelectionModule,\n    DxiDataGridDataGridToolbarItemModule,\n    DxoDataGridEditingModule,\n    DxoDataGridEditingTextsModule,\n    DxoDataGridEditorOptionsModule,\n    DxiDataGridEditorOptionsButtonModule,\n    DxiDataGridEmailRuleModule,\n    DxiDataGridEmptyItemModule,\n    DxoDataGridExportModule,\n    DxoDataGridExportTextsModule,\n    DxiDataGridFieldModule,\n    DxoDataGridFieldLookupModule,\n    DxoDataGridFilterBuilderModule,\n    DxoDataGridFilterBuilderPopupModule,\n    DxoDataGridFilterOperationDescriptionsModule,\n    DxoDataGridFilterPanelModule,\n    DxoDataGridFilterPanelTextsModule,\n    DxoDataGridFilterRowModule,\n    DxoDataGridFormModule,\n    DxoDataGridFormatModule,\n    DxiDataGridFormGroupItemModule,\n    DxoDataGridFormItemModule,\n    DxoDataGridFromModule,\n    DxoDataGridGroupingModule,\n    DxoDataGridGroupingTextsModule,\n    DxiDataGridGroupItemModule,\n    DxoDataGridGroupOperationDescriptionsModule,\n    DxoDataGridGroupPanelModule,\n    DxoDataGridHeaderFilterModule,\n    DxoDataGridHideModule,\n    DxoDataGridIconsModule,\n    DxoDataGridIndicatorOptionsModule,\n    DxiDataGridItemModule,\n    DxoDataGridKeyboardNavigationModule,\n    DxoDataGridLabelModule,\n    DxoDataGridLoadPanelModule,\n    DxoDataGridLookupModule,\n    DxoDataGridMasterDetailModule,\n    DxoDataGridMyModule,\n    DxiDataGridNumericRuleModule,\n    DxoDataGridOffsetModule,\n    DxoDataGridOperationDescriptionsModule,\n    DxoDataGridOptionsModule,\n    DxoDataGridPagerModule,\n    DxoDataGridPagingModule,\n    DxiDataGridPatternRuleModule,\n    DxoDataGridPopupModule,\n    DxoDataGridPositionModule,\n    DxiDataGridRangeRuleModule,\n    DxoDataGridRemoteOperationsModule,\n    DxiDataGridRequiredRuleModule,\n    DxoDataGridRowDraggingModule,\n    DxoDataGridScrollingModule,\n    DxoDataGridSearchModule,\n    DxoDataGridSearchPanelModule,\n    DxoDataGridSelectionModule,\n    DxoDataGridShowModule,\n    DxiDataGridSimpleItemModule,\n    DxiDataGridSortByGroupSummaryInfoModule,\n    DxoDataGridSortingModule,\n    DxoDataGridStateStoringModule,\n    DxiDataGridStringLengthRuleModule,\n    DxoDataGridSummaryModule,\n    DxoDataGridSummaryTextsModule,\n    DxiDataGridTabModule,\n    DxiDataGridTabbedItemModule,\n    DxoDataGridTabPanelOptionsModule,\n    DxiDataGridTabPanelOptionsItemModule,\n    DxoDataGridTextsModule,\n    DxoDataGridToModule,\n    DxoDataGridToolbarModule,\n    DxiDataGridToolbarItemModule,\n    DxiDataGridTotalItemModule,\n    DxiDataGridValidationRuleModule,\n    DxoDataGridValueFormatModule,\n    DxTemplateModule\n  ]\n})\nexport class DxDataGridModule { }\n\nexport * from 'devextreme-angular/ui/data-grid/nested';\n\nimport type * as DxDataGridTypes from \"devextreme/ui/data_grid_types\";\nexport { DxDataGridTypes };\n\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;AAAA;;;;;;;;;;;AAWG;AAEH;AAgPA;;;AAGG;AAaG,MAAO,mBAAgD,SAAQ,WAAW,CAAA;IAE5E,IACI,+BAA+B,CAAC,KAAwC,EAAA;AACxE,QAAA,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE,KAAK,CAAC;IAC9C;IAEA,IACI,uBAAuB,CAAC,KAAwC,EAAA;AAChE,QAAA,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,CAAC;IACtC;IAEA,IACI,qBAAqB,CAAC,KAAwC,EAAA;AAC9D,QAAA,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC;IACpC;IAEA,IACI,uBAAuB,CAAC,KAAwC,EAAA;AAChE,QAAA,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,CAAC;IACtC;IAEA,IACI,uBAAuB,CAAC,KAAwC,EAAA;AAChE,QAAA,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,CAAC;IACtC;IAEA,IACI,gCAAgC,CAAC,KAAwC,EAAA;AACzE,QAAA,IAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE,KAAK,CAAC;IAC/C;IAEA,IACI,sBAAsB,CAAC,KAAwC,EAAA;AAC/D,QAAA,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC;IACrC;IAEA,IACI,0BAA0B,CAAC,KAAwC,EAAA;AACnE,QAAA,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,KAAK,CAAC;IACzC;IAEA,IACI,sCAAsC,CAAC,KAAwC,EAAA;AAC/E,QAAA,IAAI,CAAC,WAAW,CAAC,wBAAwB,EAAE,KAAK,CAAC;IACrD;IAEA,IACI,oBAAoB,CAAC,KAAwC,EAAA;AAC7D,QAAA,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC;IACnC;IAEA,IACI,4BAA4B,CAAC,KAAwC,EAAA;AACrE,QAAA,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,KAAK,CAAC;IAC3C;IAEA,IACI,0BAA0B,CAAC,KAAwC,EAAA;AACnE,QAAA,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,KAAK,CAAC;IACzC;AAIA;;;AAGG;AACH,IAAA,IACI,SAAS,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;IACvC;IACA,IAAI,SAAS,CAAC,KAAyB,EAAA;AACnC,QAAA,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC;IACvC;AAGA;;;AAGG;AACH,IAAA,IACI,kBAAkB,GAAA;AAClB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC;IAChD;IACA,IAAI,kBAAkB,CAAC,KAAc,EAAA;AACjC,QAAA,IAAI,CAAC,UAAU,CAAC,oBAAoB,EAAE,KAAK,CAAC;IAChD;AAGA;;;AAGG;AACH,IAAA,IACI,WAAW,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;IACzC;IACA,IAAI,WAAW,CAAC,KAAkB,EAAA;AAC9B,QAAA,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,KAAK,CAAC;IACzC;AAGA;;;AAGG;AACH,IAAA,IACI,aAAa,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC;IAC3C;IACA,IAAI,aAAa,CAAC,KAAgC,EAAA;AAC9C,QAAA,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,KAAK,CAAC;IAC3C;AAGA;;;AAGG;AACH,IAAA,IACI,qBAAqB,GAAA;AACrB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC;IACnD;IACA,IAAI,qBAAqB,CAAC,KAAc,EAAA;AACpC,QAAA,IAAI,CAAC,UAAU,CAAC,uBAAuB,EAAE,KAAK,CAAC;IACnD;AAGA;;;AAGG;AACH,IAAA,IACI,mBAAmB,GAAA;AACnB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC;IACjD;IACA,IAAI,mBAAmB,CAAC,KAAc,EAAA;AAClC,QAAA,IAAI,CAAC,UAAU,CAAC,qBAAqB,EAAE,KAAK,CAAC;IACjD;AAGA;;;AAGG;AACH,IAAA,IACI,wBAAwB,GAAA;AACxB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,0BAA0B,CAAC;IACtD;IACA,IAAI,wBAAwB,CAAC,KAAc,EAAA;AACvC,QAAA,IAAI,CAAC,UAAU,CAAC,0BAA0B,EAAE,KAAK,CAAC;IACtD;AAGA;;;AAGG;AACH,IAAA,IACI,YAAY,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC;IAC1C;IACA,IAAI,YAAY,CAAC,KAAc,EAAA;AAC3B,QAAA,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,KAAK,CAAC;IAC1C;AAGA;;;AAGG;AACH,IAAA,IACI,eAAe,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC;IAC7C;IACA,IAAI,eAAe,CAAC,KAAc,EAAA;AAC9B,QAAA,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,KAAK,CAAC;IAC7C;AAGA;;;AAGG;AACH,IAAA,IACI,eAAe,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC;IAC7C;IACA,IAAI,eAAe,CAAC,KAAc,EAAA;AAC9B,QAAA,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,KAAK,CAAC;IAC7C;AAGA;;;AAGG;AACH,IAAA,IACI,aAAa,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC;IAC3C;IACA,IAAI,aAAa,CAAC,KAAoB,EAAA;AAClC,QAAA,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,KAAK,CAAC;IAC3C;AAGA;;;AAGG;AACH,IAAA,IACI,YAAY,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC;IAC1C;IACA,IAAI,YAAY,CAAC,KAAgQ,EAAA;AAC7Q,QAAA,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,KAAK,CAAC;IAC1C;AAGA;;;AAGG;AACH,IAAA,IACI,mBAAmB,GAAA;AACnB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC;IACjD;IACA,IAAI,mBAAmB,CAAC,KAAc,EAAA;AAClC,QAAA,IAAI,CAAC,UAAU,CAAC,qBAAqB,EAAE,KAAK,CAAC;IACjD;AAGA;;;AAGG;AACH,IAAA,IACI,cAAc,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC;IAC5C;IACA,IAAI,cAAc,CAAC,KAAyB,EAAA;AACxC,QAAA,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,KAAK,CAAC;IAC5C;AAGA;;;AAGG;AACH,IAAA,IACI,kBAAkB,GAAA;AAClB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC;IAChD;IACA,IAAI,kBAAkB,CAAC,KAAuB,EAAA;AAC1C,QAAA,IAAI,CAAC,UAAU,CAAC,oBAAoB,EAAE,KAAK,CAAC;IAChD;AAGA;;;AAGG;AACH,IAAA,IACI,OAAO,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;IACrC;IACA,IAAI,OAAO,CAAC,KAAuC,EAAA;AAC/C,QAAA,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC;IACrC;AAGA;;;AAGG;AACH,IAAA,IACI,WAAW,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;IACzC;IACA,IAAI,WAAW,CAAC,KAAgC,EAAA;AAC5C,QAAA,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,KAAK,CAAC;IACzC;AAGA;;;AAGG;AACH,IAAA,IACI,gBAAgB,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC;IAC9C;IACA,IAAI,gBAAgB,CAAC,KAAmD,EAAA;AACpE,QAAA,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAAE,KAAK,CAAC;IAC9C;AAGA;;;AAGG;AACH,IAAA,IACI,eAAe,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC;IAC7C;IACA,IAAI,eAAe,CAAC,KAAU,EAAA;AAC1B,QAAA,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,KAAK,CAAC;IAC7C;AAGA;;;AAGG;AACH,IAAA,IACI,UAAU,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;IACxC;IACA,IAAI,UAAU,CAAC,KAA0E,EAAA;AACrF,QAAA,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,KAAK,CAAC;IACxC;AAGA;;;AAGG;AACH,IAAA,IACI,uBAAuB,GAAA;AACvB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,yBAAyB,CAAC;IACrD;IACA,IAAI,uBAAuB,CAAC,KAAa,EAAA;AACrC,QAAA,IAAI,CAAC,UAAU,CAAC,yBAAyB,EAAE,KAAK,CAAC;IACrD;AAGA;;;AAGG;AACH,IAAA,IACI,QAAQ,GAAA;AACR,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;IACtC;IACA,IAAI,QAAQ,CAAC,KAAc,EAAA;AACvB,QAAA,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC;IACtC;AAGA;;;AAGG;AACH,IAAA,IACI,OAAO,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;IACrC;IACA,IAAI,OAAO,CAAC,KAA01B,EAAA;AACl2B,QAAA,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC;IACrC;AAGA;;;AAGG;AACH,IAAA,IACI,WAAW,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;IACzC;IACA,IAAI,WAAW,CAAC,KAA0B,EAAA;AACtC,QAAA,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,KAAK,CAAC;IACzC;AAGA;;;AAGG;AACH,IAAA,IACI,eAAe,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC;IAC7C;IACA,IAAI,eAAe,CAAC,KAAc,EAAA;AAC9B,QAAA,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,KAAK,CAAC;IAC7C;AAGA;;;AAGG;AACH,IAAA,IACI,MAAM,GAAA;AACN,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;IACpC;IACA,IAAI,MAAM,CAAC,KAA+L,EAAA;AACtM,QAAA,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC;IACpC;AAGA;;;AAGG;AACH,IAAA,IACI,aAAa,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC;IAC3C;IACA,IAAI,aAAa,CAAC,KAA6B,EAAA;AAC3C,QAAA,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,KAAK,CAAC;IAC3C;AAGA;;;AAGG;AACH,IAAA,IACI,kBAAkB,GAAA;AAClB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC;IAChD;IACA,IAAI,kBAAkB,CAAC,KAA0B,EAAA;AAC7C,QAAA,IAAI,CAAC,UAAU,CAAC,oBAAoB,EAAE,KAAK,CAAC;IAChD;AAGA;;;AAGG;AACH,IAAA,IACI,WAAW,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;IACzC;IACA,IAAI,WAAW,CAAC,KAAkB,EAAA;AAC9B,QAAA,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,KAAK,CAAC;IACzC;AAGA;;;AAGG;AACH,IAAA,IACI,SAAS,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;IACvC;IACA,IAAI,SAAS,CAAC,KAA8d,EAAA;AACxe,QAAA,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC;IACvC;AAGA;;;AAGG;AACH,IAAA,IACI,iBAAiB,GAAA;AACjB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC;IAC/C;IACA,IAAI,iBAAiB,CAAC,KAAqB,EAAA;AACvC,QAAA,IAAI,CAAC,UAAU,CAAC,mBAAmB,EAAE,KAAK,CAAC;IAC/C;AAGA;;;AAGG;AACH,IAAA,IACI,WAAW,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;IACzC;IACA,IAAI,WAAW,CAAC,KAAqC,EAAA;AACjD,QAAA,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,KAAK,CAAC;IACzC;AAGA;;;AAGG;AACH,IAAA,IACI,kBAAkB,GAAA;AAClB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC;IAChD;IACA,IAAI,kBAAkB,CAAC,KAAa,EAAA;AAChC,QAAA,IAAI,CAAC,UAAU,CAAC,oBAAoB,EAAE,KAAK,CAAC;IAChD;AAGA;;;AAGG;AACH,IAAA,IACI,iBAAiB,GAAA;AACjB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC;IAC/C;IACA,IAAI,iBAAiB,CAAC,KAAc,EAAA;AAChC,QAAA,IAAI,CAAC,UAAU,CAAC,mBAAmB,EAAE,KAAK,CAAC;IAC/C;AAGA;;;AAGG;AACH,IAAA,IACI,eAAe,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC;IAC7C;IACA,IAAI,eAAe,CAAC,KAAa,EAAA;AAC7B,QAAA,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,KAAK,CAAC;IAC7C;AAGA;;;AAGG;AACH,IAAA,IACI,aAAa,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC;IAC3C;IACA,IAAI,aAAa,CAAC,KAAsB,EAAA;AACpC,QAAA,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,KAAK,CAAC;IAC3C;AAGA;;;AAGG;AACH,IAAA,IACI,QAAQ,GAAA;AACR,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;IACtC;IACA,IAAI,QAAQ,CAAC,KAAwQ,EAAA;AACjR,QAAA,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC;IACtC;AAGA;;;AAGG;AACH,IAAA,IACI,UAAU,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;IACxC;IACA,IAAI,UAAU,CAAC,KAA2F,EAAA;AACtG,QAAA,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,KAAK,CAAC;IACxC;AAGA;;;AAGG;AACH,IAAA,IACI,YAAY,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC;IAC1C;IACA,IAAI,YAAY,CAAC,KAAmB,EAAA;AAChC,QAAA,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,KAAK,CAAC;IAC1C;AAGA;;;AAGG;AACH,IAAA,IACI,MAAM,GAAA;AACN,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;IACpC;IACA,IAAI,MAAM,CAAC,KAAkC,EAAA;AACzC,QAAA,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC;IACpC;AAGA;;;AAGG;AACH,IAAA,IACI,gBAAgB,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC;IAC9C;IACA,IAAI,gBAAgB,CAAC,KAAc,EAAA;AAC/B,QAAA,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAAE,KAAK,CAAC;IAC9C;AAGA;;;AAGG;AACH,IAAA,IACI,IAAI,GAAA;AACJ,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;IAClC;IACA,IAAI,IAAI,CAAC,KAAyB,EAAA;AAC9B,QAAA,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC;IAClC;AAGA;;;AAGG;AACH,IAAA,IACI,iBAAiB,GAAA;AACjB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC;IAC/C;IACA,IAAI,iBAAiB,CAAC,KAAc,EAAA;AAChC,QAAA,IAAI,CAAC,UAAU,CAAC,mBAAmB,EAAE,KAAK,CAAC;IAC/C;AAGA;;;AAGG;AACH,IAAA,IACI,kBAAkB,GAAA;AAClB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC;IAChD;IACA,IAAI,kBAAkB,CAAC,KAA8H,EAAA;AACjJ,QAAA,IAAI,CAAC,UAAU,CAAC,oBAAoB,EAAE,KAAK,CAAC;IAChD;AAGA;;;AAGG;AACH,IAAA,IACI,OAAO,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;IACrC;IACA,IAAI,OAAO,CAAC,KAAyC,EAAA;AACjD,QAAA,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC;IACrC;AAGA;;;AAGG;AACH,IAAA,IACI,SAAS,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;IACvC;IACA,IAAI,SAAS,CAAC,KAAoQ,EAAA;AAC9Q,QAAA,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC;IACvC;AAGA;;;AAGG;AACH,IAAA,IACI,YAAY,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC;IAC1C;IACA,IAAI,YAAY,CAAC,KAAqE,EAAA;AAClF,QAAA,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,KAAK,CAAC;IAC1C;AAGA;;;AAGG;AACH,IAAA,IACI,UAAU,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;IACxC;IACA,IAAI,UAAU,CAAC,KAAa,EAAA;AACxB,QAAA,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,KAAK,CAAC;IACxC;AAGA;;;AAGG;AACH,IAAA,IACI,KAAK,GAAA;AACL,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;IACnC;IACA,IAAI,KAAK,CAAC,KAAY,EAAA;AAClB,QAAA,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC;IACnC;AAGA;;;AAGG;AACH,IAAA,IACI,MAAM,GAAA;AACN,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;IACpC;IACA,IAAI,MAAM,CAAC,KAAmE,EAAA;AAC1E,QAAA,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC;IACpC;AAGA;;;AAGG;AACH,IAAA,IACI,gBAAgB,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC;IAC9C;IACA,IAAI,gBAAgB,CAAC,KAAkJ,EAAA;AACnK,QAAA,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAAE,KAAK,CAAC;IAC9C;AAGA;;;AAGG;AACH,IAAA,IACI,WAAW,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;IACzC;IACA,IAAI,WAAW,CAAC,KAAc,EAAA;AAC1B,QAAA,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,KAAK,CAAC;IACzC;AAGA;;;AAGG;AACH,IAAA,IACI,kBAAkB,GAAA;AAClB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC;IAChD;IACA,IAAI,kBAAkB,CAAC,KAAc,EAAA;AACjC,QAAA,IAAI,CAAC,UAAU,CAAC,oBAAoB,EAAE,KAAK,CAAC;IAChD;AAGA;;;AAGG;AACH,IAAA,IACI,qBAAqB,GAAA;AACrB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC;IACnD;IACA,IAAI,qBAAqB,CAAC,KAAc,EAAA;AACpC,QAAA,IAAI,CAAC,UAAU,CAAC,uBAAuB,EAAE,KAAK,CAAC;IACnD;AAGA;;;AAGG;AACH,IAAA,IACI,WAAW,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;IACzC;IACA,IAAI,WAAW,CAAC,KAAqtE,EAAA;AACjuE,QAAA,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,KAAK,CAAC;IACzC;AAGA;;;;;AAKG;AACH,IAAA,IACI,WAAW,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;IACzC;IACA,IAAI,WAAW,CAAC,KAAU,EAAA;AACtB,QAAA,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,KAAK,CAAC;IACzC;AAGA;;;AAGG;AACH,IAAA,IACI,UAAU,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;IACxC;IACA,IAAI,UAAU,CAAC,KAAc,EAAA;AACzB,QAAA,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,KAAK,CAAC;IACxC;AAGA;;;AAGG;AACH,IAAA,IACI,SAAS,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;IACvC;IACA,IAAI,SAAS,CAAC,KAAyR,EAAA;AACnS,QAAA,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC;IACvC;AAGA;;;AAGG;AACH,IAAA,IACI,WAAW,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;IACzC;IACA,IAAI,WAAW,CAAC,KAAkB,EAAA;AAC9B,QAAA,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,KAAK,CAAC;IACzC;AAGA;;;AAGG;AACH,IAAA,IACI,eAAe,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC;IAC7C;IACA,IAAI,eAAe,CAAC,KAAiB,EAAA;AACjC,QAAA,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,KAAK,CAAC;IAC7C;AAGA;;;AAGG;AACH,IAAA,IACI,SAAS,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;IACvC;IACA,IAAI,SAAS,CAAC,KAAwM,EAAA;AAClN,QAAA,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC;IACvC;AAGA;;;AAGG;AACH,IAAA,IACI,eAAe,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC;IAC7C;IACA,IAAI,eAAe,CAAC,KAAqC,EAAA;AACrD,QAAA,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,KAAK,CAAC;IAC7C;AAGA;;;AAGG;AACH,IAAA,IACI,WAAW,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;IACzC;IACA,IAAI,WAAW,CAAC,KAAc,EAAA;AAC1B,QAAA,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,KAAK,CAAC;IACzC;AAGA;;;AAGG;AACH,IAAA,IACI,iBAAiB,GAAA;AACjB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC;IAC/C;IACA,IAAI,iBAAiB,CAAC,KAAc,EAAA;AAChC,QAAA,IAAI,CAAC,UAAU,CAAC,mBAAmB,EAAE,KAAK,CAAC;IAC/C;AAGA;;;AAGG;AACH,IAAA,IACI,eAAe,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC;IAC7C;IACA,IAAI,eAAe,CAAC,KAAc,EAAA;AAC9B,QAAA,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,KAAK,CAAC;IAC7C;AAGA;;;AAGG;AACH,IAAA,IACI,YAAY,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC;IAC1C;IACA,IAAI,YAAY,CAAC,KAAc,EAAA;AAC3B,QAAA,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,KAAK,CAAC;IAC1C;AAGA;;;AAGG;AACH,IAAA,IACI,sBAAsB,GAAA;AACtB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC;IACpD;IACA,IAAI,sBAAsB,CAAC,KAA2H,EAAA;AAClJ,QAAA,IAAI,CAAC,UAAU,CAAC,wBAAwB,EAAE,KAAK,CAAC;IACpD;AAGA;;;AAGG;AACH,IAAA,IACI,OAAO,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;IACrC;IACA,IAAI,OAAO,CAAC,KAAc,EAAA;AACtB,QAAA,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC;IACrC;AAGA;;;AAGG;AACH,IAAA,IACI,YAAY,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC;IAC1C;IACA,IAAI,YAAY,CAAC,KAAgK,EAAA;AAC7K,QAAA,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,KAAK,CAAC;IAC1C;AAGA;;;AAGG;AACH,IAAA,IACI,OAAO,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;IACrC;IACA,IAAI,OAAO,CAAC,KAA2tC,EAAA;AACnuC,QAAA,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC;IACrC;AAGA;;;AAGG;AACH,IAAA,IACI,sBAAsB,GAAA;AACtB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC;IACpD;IACA,IAAI,sBAAsB,CAAC,KAAc,EAAA;AACrC,QAAA,IAAI,CAAC,UAAU,CAAC,wBAAwB,EAAE,KAAK,CAAC;IACpD;AAGA;;;AAGG;AACH,IAAA,IACI,QAAQ,GAAA;AACR,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;IACtC;IACA,IAAI,QAAQ,CAAC,KAAa,EAAA;AACtB,QAAA,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC;IACtC;AAGA;;;AAGG;AACH,IAAA,IACI,OAAO,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;IACrC;IACA,IAAI,OAAO,CAAC,KAAoC,EAAA;AAC5C,QAAA,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC;IACrC;AAGA;;;AAGG;AACH,IAAA,IACI,oBAAoB,GAAA;AACpB,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC;IAClD;IACA,IAAI,oBAAoB,CAAC,KAAc,EAAA;AACnC,QAAA,IAAI,CAAC,UAAU,CAAC,sBAAsB,EAAE,KAAK,CAAC;IAClD;AAGA;;;AAGG;AACH,IAAA,IACI,OAAO,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;IACrC;IACA,IAAI,OAAO,CAAC,KAAc,EAAA;AACtB,QAAA,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC;IACrC;AAGA;;;AAGG;AACH,IAAA,IACI,KAAK,GAAA;AACL,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;IACnC;IACA,IAAI,KAAK,CAAC,KAAkC,EAAA;AACxC,QAAA,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC;IACnC;AAGA;;;AAGG;AACH,IAAA,IACI,eAAe,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC;IAC7C;IACA,IAAI,eAAe,CAAC,KAAc,EAAA;AAC9B,QAAA,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,KAAK,CAAC;IAC7C;AAw3BA,IAAA,WAAA,CAAY,UAAsB,EAAE,MAAc,EAAE,YAA4B,EAChE,cAA6B,EAC7B,IAA0B,EAClC,UAA4B,EAC5B,aAA4B,EACP,UAAe,EAAA;AAExC,QAAA,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,UAAU,CAAC;QANtE,IAAA,CAAA,cAAc,GAAd,cAAc;QACd,IAAA,CAAA,IAAI,GAAJ,IAAI;QAp2DpB,IAAA,CAAA,QAAQ,GAA+B,IAAI;QA22DvC,IAAI,CAAC,oBAAoB,CAAC;AACtB,YAAA,EAAE,SAAS,EAAE,4BAA4B,EAAE,IAAI,EAAE,8BAA8B,EAAE;AACjF,YAAA,EAAE,SAAS,EAAE,4BAA4B,EAAE,IAAI,EAAE,8BAA8B,EAAE;AACjF,YAAA,EAAE,SAAS,EAAE,yBAAyB,EAAE,IAAI,EAAE,2BAA2B,EAAE;AAC3E,YAAA,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,aAAa,EAAE;AAC/C,YAAA,EAAE,SAAS,EAAE,cAAc,EAAE,IAAI,EAAE,gBAAgB,EAAE;AACrD,YAAA,EAAE,SAAS,EAAE,kBAAkB,EAAE,IAAI,EAAE,oBAAoB,EAAE;AAC7D,YAAA,EAAE,SAAS,EAAE,cAAc,EAAE,IAAI,EAAE,gBAAgB,EAAE;AACrD,YAAA,EAAE,SAAS,EAAE,cAAc,EAAE,IAAI,EAAE,gBAAgB,EAAE;AACrD,YAAA,EAAE,SAAS,EAAE,sBAAsB,EAAE,IAAI,EAAE,wBAAwB,EAAE;AACrE,YAAA,EAAE,SAAS,EAAE,mBAAmB,EAAE,IAAI,EAAE,qBAAqB,EAAE;AAC/D,YAAA,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,aAAa,EAAE;AAC/C,YAAA,EAAE,SAAS,EAAE,cAAc,EAAE,IAAI,EAAE,gBAAgB,EAAE;AACrD,YAAA,EAAE,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,iBAAiB,EAAE;AACvD,YAAA,EAAE,SAAS,EAAE,cAAc,EAAE,IAAI,EAAE,gBAAgB,EAAE;AACrD,YAAA,EAAE,SAAS,EAAE,gBAAgB,EAAE,IAAI,EAAE,kBAAkB,EAAE;AACzD,YAAA,EAAE,SAAS,EAAE,iBAAiB,EAAE,IAAI,EAAE,mBAAmB,EAAE;AAC3D,YAAA,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,aAAa,EAAE;AAC/C,YAAA,EAAE,SAAS,EAAE,oBAAoB,EAAE,IAAI,EAAE,sBAAsB,EAAE;AACjE,YAAA,EAAE,SAAS,EAAE,qBAAqB,EAAE,IAAI,EAAE,uBAAuB,EAAE;AACnE,YAAA,EAAE,SAAS,EAAE,mBAAmB,EAAE,IAAI,EAAE,qBAAqB,EAAE;AAC/D,YAAA,EAAE,SAAS,EAAE,oBAAoB,EAAE,IAAI,EAAE,sBAAsB,EAAE;AACjE,YAAA,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE,eAAe,EAAE;AACnD,YAAA,EAAE,SAAS,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE;AACjD,YAAA,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE;AAC3C,YAAA,EAAE,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,iBAAiB,EAAE;AACvD,YAAA,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE;AAC7C,YAAA,EAAE,SAAS,EAAE,cAAc,EAAE,IAAI,EAAE,gBAAgB,EAAE;AACrD,YAAA,EAAE,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,iBAAiB,EAAE;AACvD,YAAA,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE,eAAe,EAAE;AACnD,YAAA,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE,eAAe,EAAE;AACnD,YAAA,EAAE,SAAS,EAAE,cAAc,EAAE,IAAI,EAAE,gBAAgB,EAAE;AACrD,YAAA,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE,eAAe,EAAE;AACnD,YAAA,EAAE,SAAS,EAAE,cAAc,EAAE,IAAI,EAAE,gBAAgB,EAAE;AACrD,YAAA,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE,eAAe,EAAE;AACnD,YAAA,EAAE,SAAS,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE;AACjD,YAAA,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE,eAAe,EAAE;AACnD,YAAA,EAAE,SAAS,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE;AACjD,YAAA,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE,eAAe,EAAE;AACnD,YAAA,EAAE,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,iBAAiB,EAAE;AACvD,YAAA,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;AACvC,YAAA,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE;AACzC,YAAA,EAAE,SAAS,EAAE,kBAAkB,EAAE,IAAI,EAAE,oBAAoB,EAAE;AAC7D,YAAA,EAAE,SAAS,EAAE,kBAAkB,EAAE,IAAI,EAAE,oBAAoB,EAAE;YAC7D,EAAE,IAAI,EAAE,iBAAiB,EAAE;YAC3B,EAAE,IAAI,EAAE,0BAA0B,EAAE;YACpC,EAAE,IAAI,EAAE,mBAAmB,EAAE;YAC7B,EAAE,IAAI,EAAE,qBAAqB,EAAE;YAC/B,EAAE,IAAI,EAAE,6BAA6B,EAAE;YACvC,EAAE,IAAI,EAAE,2BAA2B,EAAE;YACrC,EAAE,IAAI,EAAE,gCAAgC,EAAE;YAC1C,EAAE,IAAI,EAAE,oBAAoB,EAAE;YAC9B,EAAE,IAAI,EAAE,uBAAuB,EAAE;YACjC,EAAE,IAAI,EAAE,uBAAuB,EAAE;YACjC,EAAE,IAAI,EAAE,qBAAqB,EAAE;YAC/B,EAAE,IAAI,EAAE,oBAAoB,EAAE;YAC9B,EAAE,IAAI,EAAE,2BAA2B,EAAE;YACrC,EAAE,IAAI,EAAE,sBAAsB,EAAE;YAChC,EAAE,IAAI,EAAE,0BAA0B,EAAE;YACpC,EAAE,IAAI,EAAE,eAAe,EAAE;YACzB,EAAE,IAAI,EAAE,mBAAmB,EAAE;YAC7B,EAAE,IAAI,EAAE,wBAAwB,EAAE;YAClC,EAAE,IAAI,EAAE,uBAAuB,EAAE;YACjC,EAAE,IAAI,EAAE,kBAAkB,EAAE;YAC5B,EAAE,IAAI,EAAE,+BAA+B,EAAE;YACzC,EAAE,IAAI,EAAE,gBAAgB,EAAE;YAC1B,EAAE,IAAI,EAAE,eAAe,EAAE;YACzB,EAAE,IAAI,EAAE,mBAAmB,EAAE;YAC7B,EAAE,IAAI,EAAE,uBAAuB,EAAE;YACjC,EAAE,IAAI,EAAE,cAAc,EAAE;YACxB,EAAE,IAAI,EAAE,qBAAqB,EAAE;YAC/B,EAAE,IAAI,EAAE,0BAA0B,EAAE;YACpC,EAAE,IAAI,EAAE,mBAAmB,EAAE;YAC7B,EAAE,IAAI,EAAE,iBAAiB,EAAE;YAC3B,EAAE,IAAI,EAAE,yBAAyB,EAAE;YACnC,EAAE,IAAI,EAAE,mBAAmB,EAAE;YAC7B,EAAE,IAAI,EAAE,0BAA0B,EAAE;YACpC,EAAE,IAAI,EAAE,yBAAyB,EAAE;YACnC,EAAE,IAAI,EAAE,uBAAuB,EAAE;YACjC,EAAE,IAAI,EAAE,qBAAqB,EAAE;YAC/B,EAAE,IAAI,EAAE,gBAAgB,EAAE;YAC1B,EAAE,IAAI,EAAE,kBAAkB,EAAE;YAC5B,EAAE,IAAI,EAAE,oBAAoB,EAAE;YAC9B,EAAE,IAAI,EAAE,cAAc,EAAE;YACxB,EAAE,IAAI,EAAE,wBAAwB,EAAE;YAClC,EAAE,IAAI,EAAE,YAAY,EAAE;YACtB,EAAE,IAAI,EAAE,yBAAyB,EAAE;YACnC,EAAE,IAAI,EAAE,0BAA0B,EAAE;YACpC,EAAE,IAAI,EAAE,eAAe,EAAE;YACzB,EAAE,IAAI,EAAE,iBAAiB,EAAE;YAC3B,EAAE,IAAI,EAAE,oBAAoB,EAAE;YAC9B,EAAE,IAAI,EAAE,kBAAkB,EAAE;YAC5B,EAAE,IAAI,EAAE,aAAa,EAAE;YACvB,EAAE,IAAI,EAAE,cAAc,EAAE;YACxB,EAAE,IAAI,EAAE,wBAAwB,EAAE;YAClC,EAAE,IAAI,EAAE,mBAAmB,EAAE;YAC7B,EAAE,IAAI,EAAE,0BAA0B,EAAE;YACpC,EAAE,IAAI,EAAE,6BAA6B,EAAE;YACvC,EAAE,IAAI,EAAE,mBAAmB,EAAE;YAC7B,EAAE,IAAI,EAAE,mBAAmB,EAAE;YAC7B,EAAE,IAAI,EAAE,kBAAkB,EAAE;YAC5B,EAAE,IAAI,EAAE,iBAAiB,EAAE;YAC3B,EAAE,IAAI,EAAE,mBAAmB,EAAE;YAC7B,EAAE,IAAI,EAAE,uBAAuB,EAAE;YACjC,EAAE,IAAI,EAAE,iBAAiB,EAAE;YAC3B,EAAE,IAAI,EAAE,uBAAuB,EAAE;YACjC,EAAE,IAAI,EAAE,mBAAmB,EAAE;YAC7B,EAAE,IAAI,EAAE,yBAAyB,EAAE;YACnC,EAAE,IAAI,EAAE,uBAAuB,EAAE;YACjC,EAAE,IAAI,EAAE,oBAAoB,EAAE;YAC9B,EAAE,IAAI,EAAE,8BAA8B,EAAE;YACxC,EAAE,IAAI,EAAE,eAAe,EAAE;YACzB,EAAE,IAAI,EAAE,oBAAoB,EAAE;YAC9B,EAAE,IAAI,EAAE,eAAe,EAAE;YACzB,EAAE,IAAI,EAAE,8BAA8B,EAAE;YACxC,EAAE,IAAI,EAAE,gBAAgB,EAAE;YAC1B,EAAE,IAAI,EAAE,eAAe,EAAE;YACzB,EAAE,IAAI,EAAE,4BAA4B,EAAE;YACtC,EAAE,IAAI,EAAE,eAAe,EAAE;YACzB,EAAE,IAAI,EAAE,aAAa,EAAE;YACvB,EAAE,IAAI,EAAE,uBAAuB;AAClC,SAAA,CAAC;AAEF,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;AACvB,QAAA,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC;IAC5B;IAEU,eAAe,CAAC,OAAO,EAAE,OAAO,EAAA;AAEtC,QAAA,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC;IAC3C;IAGA,WAAW,GAAA;QACP,IAAI,CAAC,cAAc,EAAE;IACzB;AAEA,IAAA,WAAW,CAAC,OAAsB,EAAA;AAC9B,QAAA,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC;AAC1B,QAAA,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC;AACrC,QAAA,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC;AACxC,QAAA,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC;AACzC,QAAA,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC;AACrC,QAAA,IAAI,CAAC,YAAY,CAAC,iBAAiB,EAAE,OAAO,CAAC;AAC7C,QAAA,IAAI,CAAC,YAAY,CAAC,iBAAiB,EAAE,OAAO,CAAC;AAC7C,QAAA,IAAI,CAAC,YAAY,CAAC,wBAAwB,EAAE,OAAO,CAAC;IACxD;IAEA,YAAY,CAAC,IAAY,EAAE,OAAsB,EAAA;QAC7C,IAAI,EAAE,IAAI,IAAI,IAAI,CAAC,gBAAgB,CAAC,EAAE;YAClC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC;QAClC;IACJ;IAEA,SAAS,GAAA;AACL,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;AAC5B,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;AAC/B,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;AAChC,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;AAC5B,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC;AACpC,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC;AACpC,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC;AAC3C,QAAA,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE;QACnC,KAAK,CAAC,SAAS,EAAE;QACjB,KAAK,CAAC,mBAAmB,EAAE;IAC/B;IAEA,UAAU,CAAC,IAAY,EAAE,KAAU,EAAA;AAC/B,QAAA,IAAI,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC;AAChD,QAAA,IAAI,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,IAAI;AAE1D,QAAA,IAAI,OAAO,IAAI,SAAS,EAAE;AACtB,YAAA,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC;QACjC;IACJ;AAvlES,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,8NAq6DZ,WAAW,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAr6DlB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,WAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,WAAA,EAAA,aAAA,EAAA,aAAA,EAAA,eAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,wBAAA,EAAA,0BAAA,EAAA,YAAA,EAAA,cAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,YAAA,EAAA,cAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,OAAA,EAAA,SAAA,EAAA,WAAA,EAAA,aAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,YAAA,EAAA,uBAAA,EAAA,yBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,OAAA,EAAA,SAAA,EAAA,WAAA,EAAA,aAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,QAAA,EAAA,aAAA,EAAA,eAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,WAAA,EAAA,aAAA,EAAA,SAAA,EAAA,WAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,WAAA,EAAA,aAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,QAAA,EAAA,UAAA,EAAA,UAAA,EAAA,YAAA,EAAA,YAAA,EAAA,cAAA,EAAA,MAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,IAAA,EAAA,MAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,OAAA,EAAA,SAAA,EAAA,SAAA,EAAA,WAAA,EAAA,YAAA,EAAA,cAAA,EAAA,UAAA,EAAA,YAAA,EAAA,KAAA,EAAA,OAAA,EAAA,MAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,WAAA,EAAA,aAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,WAAA,EAAA,aAAA,EAAA,WAAA,EAAA,aAAA,EAAA,UAAA,EAAA,YAAA,EAAA,SAAA,EAAA,WAAA,EAAA,WAAA,EAAA,aAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,WAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,aAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,cAAA,EAAA,sBAAA,EAAA,wBAAA,EAAA,OAAA,EAAA,SAAA,EAAA,YAAA,EAAA,cAAA,EAAA,OAAA,EAAA,SAAA,EAAA,sBAAA,EAAA,wBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,OAAA,EAAA,SAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,OAAA,EAAA,SAAA,EAAA,KAAA,EAAA,OAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,EAAA,OAAA,EAAA,EAAA,4BAAA,EAAA,8BAAA,EAAA,4BAAA,EAAA,8BAAA,EAAA,yBAAA,EAAA,2BAAA,EAAA,WAAA,EAAA,aAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,sBAAA,EAAA,wBAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,WAAA,EAAA,aAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,WAAA,EAAA,aAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,YAAA,EAAA,cAAA,EAAA,SAAA,EAAA,WAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,YAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,aAAA,EAAA,eAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,YAAA,EAAA,cAAA,EAAA,aAAA,EAAA,eAAA,EAAA,YAAA,EAAA,cAAA,EAAA,aAAA,EAAA,eAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,UAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,wBAAA,EAAA,0BAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,2BAAA,EAAA,6BAAA,EAAA,yBAAA,EAAA,2BAAA,EAAA,8BAAA,EAAA,gCAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,yBAAA,EAAA,2BAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,wBAAA,EAAA,0BAAA,EAAA,aAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,sBAAA,EAAA,wBAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,6BAAA,EAAA,+BAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,YAAA,EAAA,cAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,wBAAA,EAAA,0BAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,uBAAA,EAAA,yBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,wBAAA,EAAA,0BAAA,EAAA,uBAAA,EAAA,yBAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,cAAA,EAAA,sBAAA,EAAA,wBAAA,EAAA,UAAA,EAAA,YAAA,EAAA,uBAAA,EAAA,yBAAA,EAAA,wBAAA,EAAA,0BAAA,EAAA,aAAA,EAAA,eAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,WAAA,EAAA,aAAA,EAAA,YAAA,EAAA,cAAA,EAAA,sBAAA,EAAA,wBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,wBAAA,EAAA,0BAAA,EAAA,2BAAA,EAAA,6BAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,uBAAA,EAAA,yBAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,4BAAA,EAAA,8BAAA,EAAA,aAAA,EAAA,eAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,4BAAA,EAAA,8BAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,0BAAA,EAAA,4BAAA,EAAA,aAAA,EAAA,eAAA,EAAA,WAAA,EAAA,aAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,EAAA,SAAA,EAPjB;YACP,cAAc;YACd,aAAa;YACb,gBAAgB;YAChB;SACH,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,iCAAA,EAAA,SAAA,EAIgB,8BAA8B,EAAA,EAAA,EAAA,YAAA,EAAA,yBAAA,EAAA,SAAA,EAK9B,sBAAsB,EAAA,EAAA,EAAA,YAAA,EAAA,uBAAA,EAAA,SAAA,EAKtB,oBAAoB,EAAA,EAAA,EAAA,YAAA,EAAA,yBAAA,EAAA,SAAA,EAKpB,sBAAsB,EAAA,EAAA,EAAA,YAAA,EAAA,yBAAA,EAAA,SAAA,EAKtB,sBAAsB,EAAA,EAAA,EAAA,YAAA,EAAA,kCAAA,EAAA,SAAA,EAKtB,+BAA+B,EAAA,EAAA,EAAA,YAAA,EAAA,wBAAA,EAAA,SAAA,EAK/B,qBAAqB,6DAKrB,yBAAyB,EAAA,EAAA,EAAA,YAAA,EAAA,wCAAA,EAAA,SAAA,EAKzB,qCAAqC,EAAA,EAAA,EAAA,YAAA,EAAA,sBAAA,EAAA,SAAA,EAKrC,mBAAmB,EAAA,EAAA,EAAA,YAAA,EAAA,8BAAA,EAAA,SAAA,EAKnB,2BAA2B,EAAA,EAAA,EAAA,YAAA,EAAA,4BAAA,EAAA,SAAA,EAK3B,yBAAyB,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAnEhC,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAED,mBAAmB,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAQrB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAZ/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,cAAc;AACxB,oBAAA,QAAQ,EAAE,EAAE;AACZ,oBAAA,IAAI,EAAE,EAAE,eAAe,EAAE,MAAM,EAAE;oBACjC,OAAO,EAAE,CAAE,mBAAmB,CAAE;AAChC,oBAAA,SAAS,EAAE;wBACP,cAAc;wBACd,aAAa;wBACb,gBAAgB;wBAChB;AACH;AACJ,iBAAA;;0BAs6DY,MAAM;2BAAC,WAAW;;sBAn6D1B,eAAe;uBAAC,8BAA8B;;sBAK9C,eAAe;uBAAC,sBAAsB;;sBAKtC,eAAe;uBAAC,oBAAoB;;sBAKpC,eAAe;uBAAC,sBAAsB;;sBAKtC,eAAe;uBAAC,sBAAsB;;sBAKtC,eAAe;uBAAC,+BAA+B;;sBAK/C,eAAe;uBAAC,qBAAqB;;sBAKrC,eAAe;uBAAC,yBAAyB;;sBAKzC,eAAe;uBAAC,qCAAqC;;sBAKrD,eAAe;uBAAC,mBAAmB;;sBAKnC,eAAe;uBAAC,2BAA2B;;sBAK3C,eAAe;uBAAC,yBAAyB;;sBAWzC;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAeA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAaA;;sBAcA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAQA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;sBAOA;;MA4hBQ,gBAAgB,CAAA;kIAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;mIAAhB,gBAAgB,EAAA,OAAA,EAAA,CAv7EhB,mBAAmB,EA6lE5B,sBAAsB;YACtB,iBAAiB;YACjB,WAAW;YACX,uBAAuB;YACvB,kBAAkB;YAClB,WAAW;YACX,eAAe;YACf,eAAe;YACf,kBAAkB;YAClB,qBAAqB;YACrB,cAAc;YACd,cAAc;YACd,eAAe;YACf,eAAe;YACf,eAAe;YACf,eAAe;YACf,iBAAiB;YACjB,cAAc;YACd,uBAAuB;YACvB,qBAAqB;YACrB,gBAAgB;YAChB,eAAe;YACf,aAAa;YACb,yBAAyB;YACzB,aAAa;YACb,wBAAwB;YACxB,YAAY;YACZ,sBAAsB;YACtB,cAAc;YACd,kBAAkB;YAClB,aAAa;YACb,aAAa;YACb,WAAW;YACX,aAAa;YACb,eAAe;YACf,sBAAsB;YACtB,wBAAwB;YACxB,cAAc;YACd,oCAAoC;YACpC,mCAAmC;YACnC,2BAA2B;YAC3B,oBAAoB;YACpB,kBAAkB;YAClB,8BAA8B;YAC9B,iBAAiB;YACjB,mBAAmB;YACnB,2BAA2B;YAC3B,kBAAkB;YAClB,qBAAqB;YACrB,cAAc;YACd,eAAe;YACf,yBAAyB;YACzB,oBAAoB;YACpB,qBAAqB;YACrB,kBAAkB;YAClB,oBAAoB;YACpB,+BAA+B;YAC/B,gBAAgB;YAChB,qBAAqB;YACrB,gBAAgB;YAChB,kBAAkB;YAClB,oBAAoB;YACpB,kBAAkB;YAClB,gBAAgB;YAChB,mBAAmB;YACnB,4BAA4B;YAC5B,0BAA0B;YAC1B,0BAA0B;YAC1B,0BAA0B;YAC1B,mBAAmB;YACnB,+BAA+B;YAC/B,uBAAuB;YACvB,2BAA2B;YAC3B,8BAA8B;YAC9B,uBAAuB;YACvB,iCAAiC;YACjC,0BAA0B;YAC1B,uBAAuB;YACvB,6BAA6B;YAC7B,8BAA8B;YAC9B,oCAAoC;YACpC,uCAAuC;YACvC,6BAA6B;YAC7B,kCAAkC;YAClC,mCAAmC;YACnC,yCAAyC;YACzC,6BAA6B;YAC7B,4BAA4B;YAC5B,6BAA6B;YAC7B,gCAAgC;YAChC,2BAA2B;YAC3B,qCAAqC;YACrC,2CAA2C;YAC3C,0CAA0C;YAC1C,kCAAkC;YAClC,oCAAoC;YACpC,wBAAwB;YACxB,6BAA6B;YAC7B,8BAA8B;YAC9B,oCAAoC;YACpC,0BAA0B;YAC1B,0BAA0B;YAC1B,uBAAuB;YACvB,4BAA4B;YAC5B,sBAAsB;YACtB,4BAA4B;YAC5B,8BAA8B;YAC9B,mCAAmC;YACnC,4CAA4C;YAC5C,4BAA4B;YAC5B,iCAAiC;YACjC,0BAA0B;YAC1B,qBAAqB;YACrB,uBAAuB;YACvB,8BAA8B;YAC9B,yBAAyB;YACzB,qBAAqB;YACrB,yBAAyB;YACzB,8BAA8B;YAC9B,0BAA0B;YAC1B,2CAA2C;YAC3C,2BAA2B;YAC3B,6BAA6B;YAC7B,qBAAqB;YACrB,sBAAsB;YACtB,iCAAiC;YACjC,qBAAqB;YACrB,mCAAmC;YACnC,sBAAsB;YACtB,0BAA0B;YAC1B,uBAAuB;YACvB,6BAA6B;YAC7B,mBAAmB;YACnB,4BAA4B;YAC5B,uBAAuB;YACvB,sCAAsC;YACtC,wBAAwB;YACxB,sBAAsB;YACtB,uBAAuB;YACvB,4BAA4B;YAC5B,sBAAsB;YACtB,yBAAyB;YACzB,0BAA0B;YAC1B,iCAAiC;YACjC,6BAA6B;YAC7B,4BAA4B;YAC5B,0BAA0B;YAC1B,uBAAuB;YACvB,4BAA4B;YAC5B,0BAA0B;YAC1B,qBAAqB;YACrB,2BAA2B;YAC3B,uCAAuC;YACvC,wBAAwB;YACxB,6BAA6B;YAC7B,iCAAiC;YACjC,wBAAwB;YACxB,6BAA6B;YAC7B,oBAAoB;YACpB,2BAA2B;YAC3B,gCAAgC;YAChC,oCAAoC;YACpC,sBAAsB;YACtB,mBAAmB;YACnB,wBAAwB;YACxB,4BAA4B;YAC5B,0BAA0B;YAC1B,+BAA+B;YAC/B,4BAA4B;YAC5B,mBAAmB;YACnB,gBAAgB,CAAA,EAAA,OAAA,EAAA,CAvwEP,mBAAmB,EA2wE5B,sBAAsB;YACtB,iBAAiB;YACjB,WAAW;YACX,uBAAuB;YACvB,kBAAkB;YAClB,WAAW;YACX,eAAe;YACf,eAAe;YACf,kBAAkB;YAClB,qBAAqB;YACrB,cAAc;YACd,cAAc;YACd,eAAe;YACf,eAAe;YACf,eAAe;YACf,eAAe;YACf,iBAAiB;YACjB,cAAc;YACd,uBAAuB;YACvB,qBAAqB;YACrB,gBAAgB;YAChB,eAAe;YACf,aAAa;YACb,yBAAyB;YACzB,aAAa;YACb,wBAAwB;YACxB,YAAY;YACZ,sBAAsB;YACtB,cAAc;YACd,kBAAkB;YAClB,aAAa;YACb,aAAa;YACb,WAAW;YACX,aAAa;YACb,eAAe;YACf,sBAAsB;YACtB,wBAAwB;YACxB,cAAc;YACd,oCAAoC;YACpC,mCAAmC;YACnC,2BAA2B;YAC3B,oBAAoB;YACpB,kBAAkB;YAClB,8BAA8B;YAC9B,iBAAiB;YACjB,mBAAmB;YACnB,2BAA2B;YAC3B,kBAAkB;YAClB,qBAAqB;YACrB,cAAc;YACd,eAAe;YACf,yBAAyB;YACzB,oBAAoB;YACpB,qBAAqB;YACrB,kBAAkB;YAClB,oBAAoB;YACpB,+BAA+B;YAC/B,gBAAgB;YAChB,qBAAqB;YACrB,gBAAgB;YAChB,kBAAkB;YAClB,oBAAoB;YACpB,kBAAkB;YAClB,gBAAgB;YAChB,mBAAmB;YACnB,4BAA4B;YAC5B,0BAA0B;YAC1B,0BAA0B;YAC1B,0BAA0B;YAC1B,mBAAmB;YACnB,+BAA+B;YAC/B,uBAAuB;YACvB,2BAA2B;YAC3B,8BAA8B;YAC9B,uBAAuB;YACvB,iCAAiC;YACjC,0BAA0B;YAC1B,uBAAuB;YACvB,6BAA6B;YAC7B,8BAA8B;YAC9B,oCAAoC;YACpC,uCAAuC;YACvC,6BAA6B;YAC7B,kCAAkC;YAClC,mCAAmC;YACnC,yCAAyC;YACzC,6BAA6B;YAC7B,4BAA4B;YAC5B,6BAA6B;YAC7B,gCAAgC;YAChC,2BAA2B;YAC3B,qCAAqC;YACrC,2CAA2C;YAC3C,0CAA0C;YAC1C,kCAAkC;YAClC,oCAAoC;YACpC,wBAAwB;YACxB,6BAA6B;YAC7B,8BAA8B;YAC9B,oCAAoC;YACpC,0BAA0B;YAC1B,0BAA0B;YAC1B,uBAAuB;YACvB,4BAA4B;YAC5B,sBAAsB;YACtB,4BAA4B;YAC5B,8BAA8B;YAC9B,mCAAmC;YACnC,4CAA4C;YAC5C,4BAA4B;YAC5B,iCAAiC;YACjC,0BAA0B;YAC1B,qBAAqB;YACrB,uBAAuB;YACvB,8BAA8B;YAC9B,yBAAyB;YACzB,qBAAqB;YACrB,yBAAyB;YACzB,8BAA8B;YAC9B,0BAA0B;YAC1B,2CAA2C;YAC3C,2BAA2B;YAC3B,6BAA6B;YAC7B,qBAAqB;YACrB,sBAAsB;YACtB,iCAAiC;YACjC,qBAAqB;YACrB,mCAAmC;YACnC,sBAAsB;YACtB,0BAA0B;YAC1B,uBAAuB;YACvB,6BAA6B;YAC7B,mBAAmB;YACnB,4BAA4B;YAC5B,uBAAuB;YACvB,sCAAsC;YACtC,wBAAwB;YACxB,sBAAsB;YACtB,uBAAuB;YACvB,4BAA4B;YAC5B,sBAAsB;YACtB,yBAAyB;YACzB,0BAA0B;YAC1B,iCAAiC;YACjC,6BAA6B;YAC7B,4BAA4B;YAC5B,0BAA0B;YAC1B,uBAAuB;YACvB,4BAA4B;YAC5B,0BAA0B;YAC1B,qBAAqB;YACrB,2BAA2B;YAC3B,uCAAuC;YACvC,wBAAwB;YACxB,6BAA6B;YAC7B,iCAAiC;YACjC,wBAAwB;YACxB,6BAA6B;YAC7B,oBAAoB;YACpB,2BAA2B;YAC3B,gCAAgC;YAChC,oCAAoC;YACpC,sBAAsB;YACtB,mBAAmB;YACnB,wBAAwB;YACxB,4BAA4B;YAC5B,0BAA0B;YAC1B,+BAA+B;YAC/B,4BAA4B;YAC5B,gBAAgB,CAAA,EAAA,CAAA,CAAA;AAGP,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,YA3VzB,mBAAmB;YACnB,sBAAsB;YACtB,iBAAiB;YACjB,WAAW;YACX,uBAAuB;YACvB,kBAAkB;YAClB,WAAW;YACX,eAAe;YACf,eAAe;YACf,kBAAkB;YAClB,qBAAqB;YACrB,cAAc;YACd,cAAc;YACd,eAAe;YACf,eAAe;YACf,eAAe;YACf,eAAe;YACf,iBAAiB;YACjB,cAAc;YACd,uBAAuB;YACvB,qBAAqB;YACrB,gBAAgB;YAChB,eAAe;YACf,aAAa;YACb,yBAAyB;YACzB,aAAa;YACb,wBAAwB;YACxB,YAAY;YACZ,sBAAsB;YACtB,cAAc;YACd,kBAAkB;YAClB,aAAa;YACb,aAAa;YACb,WAAW;YACX,aAAa;YACb,eAAe;YACf,sBAAsB;YACtB,wBAAwB;YACxB,cAAc;YACd,oCAAoC;YACpC,mCAAmC;YACnC,2BAA2B;YAC3B,oBAAoB;YACpB,kBAAkB;YAClB,8BAA8B;YAC9B,iBAAiB;YACjB,mBAAmB;YACnB,2BAA2B;YAC3B,kBAAkB;YAClB,qBAAqB;YACrB,cAAc;YACd,eAAe;YACf,yBAAyB;YACzB,oBAAoB;YACpB,qBAAqB;YACrB,kBAAkB;YAClB,oBAAoB;YACpB,+BAA+B;YAC/B,gBAAgB;YAChB,qBAAqB;YACrB,gBAAgB;YAChB,kBAAkB;YAClB,oBAAoB;YACpB,kBAAkB;YAClB,gBAAgB;YAChB,mBAAmB;YACnB,4BAA4B;YAC5B,0BAA0B;YAC1B,0BAA0B;YAC1B,0BAA0B;YAC1B,mBAAmB;YACnB,+BAA+B;YAC/B,uBAAuB;YACvB,2BAA2B;YAC3B,8BAA8B;YAC9B,uBAAuB;YACvB,iCAAiC;YACjC,0BAA0B;YAC1B,uBAAuB;YACvB,6BAA6B;YAC7B,8BAA8B;YAC9B,oCAAoC;YACpC,uCAAuC;YACvC,6BAA6B;YAC7B,kCAAkC;YAClC,mCAAmC;YACnC,yCAAyC;YACzC,6BAA6B;YAC7B,4BAA4B;YAC5B,6BAA6B;YAC7B,gCAAgC;YAChC,2BAA2B;YAC3B,qCAAqC;YACrC,2CAA2C;YAC3C,0CAA0C;YAC1C,kCAAkC;YAClC,oCAAoC;YACpC,wBAAwB;YACxB,6BAA6B;YAC7B,8BAA8B;YAC9B,oCAAoC;YACpC,0BAA0B;YAC1B,0BAA0B;YAC1B,uBAAuB;YACvB,4BAA4B;YAC5B,sBAAsB;YACtB,4BAA4B;YAC5B,8BAA8B;YAC9B,mCAAmC;YACnC,4CAA4C;YAC5C,4BAA4B;YAC5B,iCAAiC;YACjC,0BAA0B;YAC1B,qBAAqB;YACrB,uBAAuB;YACvB,8BAA8B;YAC9B,yBAAyB;YACzB,qBAAqB;YACrB,yBAAyB;YACzB,8BAA8B;YAC9B,0BAA0B;YAC1B,2CAA2C;YAC3C,2BAA2B;YAC3B,6BAA6B;YAC7B,qBAAqB;YACrB,sBAAsB;YACtB,iCAAiC;YACjC,qBAAqB;YACrB,mCAAmC;YACnC,sBAAsB;YACtB,0BAA0B;YAC1B,uBAAuB;YACvB,6BAA6B;YAC7B,mBAAmB;YACnB,4BAA4B;YAC5B,uBAAuB;YACvB,sCAAsC;YACtC,wBAAwB;YACxB,sBAAsB;YACtB,uBAAuB;YACvB,4BAA4B;YAC5B,sBAAsB;YACtB,yBAAyB;YACzB,0BAA0B;YAC1B,iCAAiC;YACjC,6BAA6B;YAC7B,4BAA4B;YAC5B,0BAA0B;YAC1B,uBAAuB;YACvB,4BAA4B;YAC5B,0BAA0B;YAC1B,qBAAqB;YACrB,2BAA2B;YAC3B,uCAAuC;YACvC,wBAAwB;YACxB,6BAA6B;YAC7B,iCAAiC;YACjC,wBAAwB;YACxB,6BAA6B;YAC7B,oBAAoB;YACpB,2BAA2B;YAC3B,gCAAgC;YAChC,oCAAoC;YACpC,sBAAsB;YACtB,mBAAmB;YACnB,wBAAwB;YACxB,4BAA4B;YAC5B,0BAA0B;YAC1B,+BAA+B;YAC/B,4BAA4B;YAC5B,mBAAmB;AACnB,YAAA,gBAAgB,EAIhB,sBAAsB;YACtB,iBAAiB;YACjB,WAAW;YACX,uBAAuB;YACvB,kBAAkB;YAClB,WAAW;YACX,eAAe;YACf,eAAe;YACf,kBAAkB;YAClB,qBAAqB;YACrB,cAAc;YACd,cAAc;YACd,eAAe;YACf,eAAe;YACf,eAAe;YACf,eAAe;YACf,iBAAiB;YACjB,cAAc;YACd,uBAAuB;YACvB,qBAAqB;YACrB,gBAAgB;YAChB,eAAe;YACf,aAAa;YACb,yBAAyB;YACzB,aAAa;YACb,wBAAwB;YACxB,YAAY;YACZ,sBAAsB;YACtB,cAAc;YACd,kBAAkB;YAClB,aAAa;YACb,aAAa;YACb,WAAW;YACX,aAAa;YACb,eAAe;YACf,sBAAsB;YACtB,wBAAwB;YACxB,cAAc;YACd,oCAAoC;YACpC,mCAAmC;YACnC,2BAA2B;YAC3B,oBAAoB;YACpB,kBAAkB;YAClB,8BAA8B;YAC9B,iBAAiB;YACjB,mBAAmB;YACnB,2BAA2B;YAC3B,kBAAkB;YAClB,qBAAqB;YACrB,cAAc;YACd,eAAe;YACf,yBAAyB;YACzB,oBAAoB;YACpB,qBAAqB;YACrB,kBAAkB;YAClB,oBAAoB;YACpB,+BAA+B;YAC/B,gBAAgB;YAChB,qBAAqB;YACrB,gBAAgB;YAChB,kBAAkB;YAClB,oBAAoB;YACpB,kBAAkB;YAClB,gBAAgB;YAChB,mBAAmB;YACnB,4BAA4B;YAC5B,0BAA0B;YAC1B,0BAA0B;YAC1B,0BAA0B;YAC1B,mBAAmB;YACnB,+BAA+B;YAC/B,uBAAuB;YACvB,2BAA2B;YAC3B,8BAA8B;YAC9B,uBAAuB;YACvB,iCAAiC;YACjC,0BAA0B;YAC1B,uBAAuB;YACvB,6BAA6B;YAC7B,8BAA8B;YAC9B,oCAAoC;YACpC,uCAAuC;YACvC,6BAA6B;YAC7B,kCAAkC;YAClC,mCAAmC;YACnC,yCAAyC;YACzC,6BAA6B;YAC7B,4BAA4B;YAC5B,6BAA6B;YAC7B,gCAAgC;YAChC,2BAA2B;YAC3B,qCAAqC;YACrC,2CAA2C;YAC3C,0CAA0C;YAC1C,kCAAkC;YAClC,oCAAoC;YACpC,wBAAwB;YACxB,6BAA6B;YAC7B,8BAA8B;YAC9B,oCAAoC;YACpC,0BAA0B;YAC1B,0BAA0B;YAC1B,uBAAuB;YACvB,4BAA4B;YAC5B,sBAAsB;YACtB,4BAA4B;YAC5B,8BAA8B;YAC9B,mCAAmC;YACnC,4CAA4C;YAC5C,4BAA4B;YAC5B,iCAAiC;YACjC,0BAA0B;YAC1B,qBAAqB;YACrB,uBAAuB;YACvB,8BAA8B;YAC9B,yBAAyB;YACzB,qBAAqB;YACrB,yBAAyB;YACzB,8BAA8B;YAC9B,0BAA0B;YAC1B,2CAA2C;YAC3C,2BAA2B;YAC3B,6BAA6B;YAC7B,qBAAqB;YACrB,sBAAsB;YACtB,iCAAiC;YACjC,qBAAqB;YACrB,mCAAmC;YACnC,sBAAsB;YACtB,0BAA0B;YAC1B,uBAAuB;YACvB,6BAA6B;YAC7B,mBAAmB;YACnB,4BAA4B;YAC5B,uBAAuB;YACvB,sCAAsC;YACtC,wBAAwB;YACxB,sBAAsB;YACtB,uBAAuB;YACvB,4BAA4B;YAC5B,sBAAsB;YACtB,yBAAyB;YACzB,0BAA0B;YAC1B,iCAAiC;YACjC,6BAA6B;YAC7B,4BAA4B;YAC5B,0BAA0B;YAC1B,uBAAuB;YACvB,4BAA4B;YAC5B,0BAA0B;YAC1B,qBAAqB;YACrB,2BAA2B;YAC3B,uCAAuC;YACvC,wBAAwB;YACxB,6BAA6B;YAC7B,iCAAiC;YACjC,wBAAwB;YACxB,6BAA6B;YAC7B,oBAAoB;YACpB,2BAA2B;YAC3B,gCAAgC;YAChC,oCAAoC;YACpC,sBAAsB;YACtB,mBAAmB;YACnB,wBAAwB;YACxB,4BAA4B;YAC5B,0BAA0B;YAC1B,+BAA+B;YAC/B,4BAA4B;YAC5B,gBAAgB,CAAA,EAAA,CAAA,CAAA;;4FAGP,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBA7V5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,mBAAmB;wBACnB,sBAAsB;wBACtB,iBAAiB;wBACjB,WAAW;wBACX,uBAAuB;wBACvB,kBAAkB;wBAClB,WAAW;wBACX,eAAe;wBACf,eAAe;wBACf,kBAAkB;wBAClB,qBAAqB;wBACrB,cAAc;wBACd,cAAc;wBACd,eAAe;wBACf,eAAe;wBACf,eAAe;wBACf,eAAe;wBACf,iBAAiB;wBACjB,cAAc;wBACd,uBAAuB;wBACvB,qBAAqB;wBACrB,gBAAgB;wBAChB,eAAe;wBACf,aAAa;wBACb,yBAAyB;wBACzB,aAAa;wBACb,wBAAwB;wBACxB,YAAY;wBACZ,sBAAsB;wBACtB,cAAc;wBACd,kBAAkB;wBAClB,aAAa;wBACb,aAAa;wBACb,WAAW;wBACX,aAAa;wBACb,eAAe;wBACf,sBAAsB;wBACtB,wBAAwB;wBACxB,cAAc;wBACd,oCAAoC;wBACpC,mCAAmC;wBACnC,2BAA2B;wBAC3B,oBAAoB;wBACpB,kBAAkB;wBAClB,8BAA8B;wBAC9B,iBAAiB;wBACjB,mBAAmB;wBACnB,2BAA2B;wBAC3B,kBAAkB;wBAClB,qBAAqB;wBACrB,cAAc;wBACd,eAAe;wBACf,yBAAyB;wBACzB,oBAAoB;wBACpB,qBAAqB;wBACrB,kBAAkB;wBAClB,oBAAoB;wBACpB,+BAA+B;wBAC/B,gBAAgB;wBAChB,qBAAqB;wBACrB,gBAAgB;wBAChB,kBAAkB;wBAClB,oBAAoB;wBACpB,kBAAkB;wBAClB,gBAAgB;wBAChB,mBAAmB;wBACnB,4BAA4B;wBAC5B,0BAA0B;wBAC1B,0BAA0B;wBAC1B,0BAA0B;wBAC1B,mBAAmB;wBACnB,+BAA+B;wBAC/B,uBAAuB;wBACvB,2BAA2B;wBAC3B,8BAA8B;wBAC9B,uBAAuB;wBACvB,iCAAiC;wBACjC,0BAA0B;wBAC1B,uBAAuB;wBACvB,6BAA6B;wBAC7B,8BAA8B;wBAC9B,oCAAoC;wBACpC,uCAAuC;wBACvC,6BAA6B;wBAC7B,kCAAkC;wBAClC,mCAAmC;wBACnC,yCAAyC;wBACzC,6BAA6B;wBAC7B,4BAA4B;wBAC5B,6BAA6B;wBAC7B,gCAAgC;wBAChC,2BAA2B;wBAC3B,qCAAqC;wBACrC,2CAA2C;wBAC3C,0CAA0C;wBAC1C,kCAAkC;wBAClC,oCAAoC;wBACpC,wBAAwB;wBACxB,6BAA6B;wBAC7B,8BAA8B;wBAC9B,oCAAoC;wBACpC,0BAA0B;wBAC1B,0BAA0B;wBAC1B,uBAAuB;wBACvB,4BAA4B;wBAC5B,sBAAsB;wBACtB,4BAA4B;wBAC5B,8BAA8B;wBAC9B,mCAAmC;wBACnC,4CAA4C;wBAC5C,4BAA4B;wBAC5B,iCAAiC;wBACjC,0BAA0B;wBAC1B,qBAAqB;wBACrB,uBAAuB;wBACvB,8BAA8B;wBAC9B,yBAAyB;wBACzB,qBAAqB;wBACrB,yBAAyB;wBACzB,8BAA8B;wBAC9B,0BAA0B;wBAC1B,2CAA2C;wBAC3C,2BAA2B;wBAC3B,6BAA6B;wBAC7B,qBAAqB;wBACrB,sBAAsB;wBACtB,iCAAiC;wBACjC,qBAAqB;wBACrB,mCAAmC;wBACnC,sBAAsB;wBACtB,0BAA0B;wBAC1B,uBAAuB;wBACvB,6BAA6B;wBAC7B,mBAAmB;wBACnB,4BAA4B;wBAC5B,uBAAuB;wBACvB,sCAAsC;wBACtC,wBAAwB;wBACxB,sBAAsB;wBACtB,uBAAuB;wBACvB,4BAA4B;wBAC5B,sBAAsB;wBACtB,yBAAyB;wBACzB,0BAA0B;wBAC1B,iCAAiC;wBACjC,6BAA6B;wBAC7B,4BAA4B;wBAC5B,0BAA0B;wBAC1B,uBAAuB;wBACvB,4BAA4B;wBAC5B,0BAA0B;wBAC1B,qBAAqB;wBACrB,2BAA2B;wBAC3B,uCAAuC;wBACvC,wBAAwB;wBACxB,6BAA6B;wBAC7B,iCAAiC;wBACjC,wBAAwB;wBACxB,6BAA6B;wBAC7B,oBAAoB;wBACpB,2BAA2B;wBAC3B,gCAAgC;wBAChC,oCAAoC;wBACpC,sBAAsB;wBACtB,mBAAmB;wBACnB,wBAAwB;wBACxB,4BAA4B;wBAC5B,0BAA0B;wBAC1B,+BAA+B;wBAC/B,4BAA4B;wBAC5B,mBAAmB;wBACnB;AACD,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,mBAAmB;wBACnB,sBAAsB;wBACtB,iBAAiB;wBACjB,WAAW;wBACX,uBAAuB;wBACvB,kBAAkB;wBAClB,WAAW;wBACX,eAAe;wBACf,eAAe;wBACf,kBAAkB;wBAClB,qBAAqB;wBACrB,cAAc;wBACd,cAAc;wBACd,eAAe;wBACf,eAAe;wBACf,eAAe;wBACf,eAAe;wBACf,iBAAiB;wBACjB,cAAc;wBACd,uBAAuB;wBACvB,qBAAqB;wBACrB,gBAAgB;wBAChB,eAAe;wBACf,aAAa;wBACb,yBAAyB;wBACzB,aAAa;wBACb,wBAAwB;wBACxB,YAAY;wBACZ,sBAAsB;wBACtB,cAAc;wBACd,kBAAkB;wBAClB,aAAa;wBACb,aAAa;wBACb,WAAW;wBACX,aAAa;wBACb,eAAe;wBACf,sBAAsB;wBACtB,wBAAwB;wBACxB,cAAc;wBACd,oCAAoC;wBACpC,mCAAmC;wBACnC,2BAA2B;wBAC3B,oBAAoB;wBACpB,kBAAkB;wBAClB,8BAA8B;wBAC9B,iBAAiB;wBACjB,mBAAmB;wBACnB,2BAA2B;wBAC3B,kBAAkB;wBAClB,qBAAqB;wBACrB,cAAc;wBACd,eAAe;wBACf,yBAAyB;wBACzB,oBAAoB;wBACpB,qBAAqB;wBACrB,kBAAkB;wBAClB,oBAAoB;wBACpB,+BAA+B;wBAC/B,gBAAgB;wBAChB,qBAAqB;wBACrB,gBAAgB;wBAChB,kBAAkB;wBAClB,oBAAoB;wBACpB,kBAAkB;wBAClB,gBAAgB;wBAChB,mBAAmB;wBACnB,4BAA4B;wBAC5B,0BAA0B;wBAC1B,0BAA0B;wBAC1B,0BAA0B;wBAC1B,mBAAmB;wBACnB,+BAA+B;wBAC/B,uBAAuB;wBACvB,2BAA2B;wBAC3B,8BAA8B;wBAC9B,uBAAuB;wBACvB,iCAAiC;wBACjC,0BAA0B;wBAC1B,uBAAuB;wBACvB,6BAA6B;wBAC7B,8BAA8B;wBAC9B,oCAAoC;wBACpC,uCAAuC;wBACvC,6BAA6B;wBAC7B,kCAAkC;wBAClC,mCAAmC;wBACnC,yCAAyC;wBACzC,6BAA6B;wBAC7B,4BAA4B;wBAC5B,6BAA6B;wBAC7B,gCAAgC;wBAChC,2BAA2B;wBAC3B,qCAAqC;wBACrC,2CAA2C;wBAC3C,0CAA0C;wBAC1C,kCAAkC;wBAClC,oCAAoC;wBACpC,wBAAwB;wBACxB,6BAA6B;wBAC7B,8BAA8B;wBAC9B,oCAAoC;wBACpC,0BAA0B;wBAC1B,0BAA0B;wBAC1B,uBAAuB;wBACvB,4BAA4B;wBAC5B,sBAAsB;wBACtB,4BAA4B;wBAC5B,8BAA8B;wBAC9B,mCAAmC;wBACnC,4CAA4C;wBAC5C,4BAA4B;wBAC5B,iCAAiC;wBACjC,0BAA0B;wBAC1B,qBAAqB;wBACrB,uBAAuB;wBACvB,8BAA8B;wBAC9B,yBAAyB;wBACzB,qBAAqB;wBACrB,yBAAyB;wBACzB,8BAA8B;wBAC9B,0BAA0B;wBAC1B,2CAA2C;wBAC3C,2BAA2B;wBAC3B,6BAA6B;wBAC7B,qBAAqB;wBACrB,sBAAsB;wBACtB,iCAAiC;wBACjC,qBAAqB;wBACrB,mCAAmC;wBACnC,sBAAsB;wBACtB,0BAA0B;wBAC1B,uBAAuB;wBACvB,6BAA6B;wBAC7B,mBAAmB;wBACnB,4BAA4B;wBAC5B,uBAAuB;wBACvB,sCAAsC;wBACtC,wBAAwB;wBACxB,sBAAsB;wBACtB,uBAAuB;wBACvB,4BAA4B;wBAC5B,sBAAsB;wBACtB,yBAAyB;wBACzB,0BAA0B;wBAC1B,iCAAiC;wBACjC,6BAA6B;wBAC7B,4BAA4B;wBAC5B,0BAA0B;wBAC1B,uBAAuB;wBACvB,4BAA4B;wBAC5B,0BAA0B;wBAC1B,qBAAqB;wBACrB,2BAA2B;wBAC3B,uCAAuC;wBACvC,wBAAwB;wBACxB,6BAA6B;wBAC7B,iCAAiC;wBACjC,wBAAwB;wBACxB,6BAA6B;wBAC7B,oBAAoB;wBACpB,2BAA2B;wBAC3B,gCAAgC;wBAChC,oCAAoC;wBACpC,sBAAsB;wBACtB,mBAAmB;wBACnB,wBAAwB;wBACxB,4BAA4B;wBAC5B,0BAA0B;wBAC1B,+BAA+B;wBAC/B,4BAA4B;wBAC5B;AACD;AACF,iBAAA;;;ACnsFD;;AAEG;;;;"}