@wavemaker/app-ng-runtime 11.15.5-rc.253 → 11.15.5-rc.259

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/build-task/bundles/index.umd.js +1 -1
  2. package/build-task/esm2022/data/form/form-field/form-field.build.mjs +2 -2
  3. package/build-task/fesm2022/index.mjs +1 -1
  4. package/build-task/fesm2022/index.mjs.map +1 -1
  5. package/components/base/bundles/index.umd.js +4 -4
  6. package/components/base/esm2022/utils/widget-utils.mjs +5 -5
  7. package/components/base/fesm2022/index.mjs +4 -4
  8. package/components/base/fesm2022/index.mjs.map +1 -1
  9. package/components/containers/accordion/accordion-pane/accordion-pane.component.d.ts +2 -0
  10. package/components/containers/accordion/bundles/index.umd.js +5 -0
  11. package/components/containers/accordion/esm2022/accordion-pane/accordion-pane.component.mjs +6 -1
  12. package/components/containers/accordion/fesm2022/index.mjs +5 -0
  13. package/components/containers/accordion/fesm2022/index.mjs.map +1 -1
  14. package/components/containers/tabs/bundles/index.umd.js +1 -1
  15. package/components/containers/tabs/esm2022/tabs.animator.mjs +2 -2
  16. package/components/containers/tabs/fesm2022/index.mjs +1 -1
  17. package/components/containers/tabs/fesm2022/index.mjs.map +1 -1
  18. package/components/data/form/bundles/index.umd.js +4 -2
  19. package/components/data/form/esm2022/form-field/form-field.directive.mjs +5 -3
  20. package/components/data/form/fesm2022/index.mjs +4 -2
  21. package/components/data/form/fesm2022/index.mjs.map +1 -1
  22. package/components/data/pagination/bundles/index.umd.js +2 -2
  23. package/components/data/pagination/esm2022/pagination.component.mjs +3 -3
  24. package/components/data/pagination/fesm2022/index.mjs +2 -2
  25. package/components/data/pagination/fesm2022/index.mjs.map +1 -1
  26. package/components/data/table/bundles/index.umd.js +8 -1
  27. package/components/data/table/esm2022/table.component.mjs +9 -2
  28. package/components/data/table/fesm2022/index.mjs +8 -1
  29. package/components/data/table/fesm2022/index.mjs.map +1 -1
  30. package/components/dialogs/login-dialog/bundles/index.umd.js +1 -1
  31. package/components/dialogs/login-dialog/esm2022/login-dialog.directive.mjs +2 -2
  32. package/components/dialogs/login-dialog/fesm2022/index.mjs +1 -1
  33. package/components/dialogs/login-dialog/fesm2022/index.mjs.map +1 -1
  34. package/components/input/epoch/base-date-time/bundles/index.umd.js +2 -1
  35. package/components/input/epoch/base-date-time/esm2022/base-date-time.component.mjs +3 -2
  36. package/components/input/epoch/base-date-time/fesm2022/index.mjs +2 -1
  37. package/components/input/epoch/base-date-time/fesm2022/index.mjs.map +1 -1
  38. package/core/bundles/index.umd.js +0 -4
  39. package/core/esm2022/utils/utils.mjs +1 -5
  40. package/core/fesm2022/index.mjs +0 -4
  41. package/core/fesm2022/index.mjs.map +1 -1
  42. package/locales/moment-timezone/moment-timezone-with-data.js +6 -6
  43. package/npm-shrinkwrap.json +2 -2
  44. package/package-lock.json +2 -2
  45. package/package.json +1 -1
  46. package/runtime/base/bundles/index.umd.js +1 -1
  47. package/runtime/base/esm2022/services/app.manager.service.mjs +2 -2
  48. package/runtime/base/fesm2022/index.mjs +1 -1
  49. package/runtime/base/fesm2022/index.mjs.map +1 -1
  50. package/scripts/datatable/datatable.js +8 -1
  51. package/transpiler/bundles/index.umd.js +2 -2
  52. package/transpiler/esm2022/build.mjs +3 -3
  53. package/transpiler/fesm2022/index.mjs +2 -2
  54. package/transpiler/fesm2022/index.mjs.map +1 -1
  55. package/variables/bundles/index.umd.js +10 -10
  56. package/variables/esm2022/constants/variables.constants.mjs +6 -6
  57. package/variables/esm2022/factory/variable-manager.factory.mjs +5 -5
  58. package/variables/esm2022/service/variables.service.mjs +2 -2
  59. package/variables/fesm2022/index.mjs +10 -10
  60. package/variables/fesm2022/index.mjs.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../projects/transpiler/src/imports.ts","../../../projects/transpiler/src/build.ts","../../../projects/transpiler/src/index.ts"],"sourcesContent":["import {ImportDef} from './build';\n\n// Angular Core Modules\nconst NG_FORM_MODULE: ImportDef[] = [{ from: '@angular/forms', name: 'FormsModule', as: 'ngFormsModule' }];\nconst NG_REACTIVE_FORM_MODULE: ImportDef[] = [{ from: '@angular/forms', name: 'ReactiveFormsModule', as: 'ngReactiveFormsModule' }];\n\n// NGX Bootstrap Modules\nconst NGX_BS_DATE_PICKER: ImportDef[] = [{ from: 'ngx-bootstrap/datepicker', name: 'BsDatepickerModule', as: 'ngx_BsDatepickerModule' }];\nconst NGX_CAROUSEL_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/carousel', name: 'CarouselModule', as: 'ngxCarouselModule', forRoot: true }];\nconst NGX_COLOR_PICKER_DIRECTIVE: ImportDef[] = [{ from: 'ngx-color-picker', name: 'ColorPickerDirective', as: 'ngx_ColorPickerDirective' }];\nconst NGX_DROP_DOWN_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/dropdown', name: 'BsDropdownModule', as: 'ngxBsDropdownModule', forRoot: true }];\n//const NGX_MODAL_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/modal', name: 'ModalModule', as: 'ngx_ModalModule' }];\nconst NGX_PAGINATION_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/pagination', name: 'PaginationModule', as: 'ngxPaginationModule', forRoot: true }];\nconst NGX_POPOVER_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/popover', name: 'PopoverModule', as: 'ngxPopoverModule', forRoot: true }];\nconst NGX_TIME_PICKER: ImportDef[] = [{ from: 'ngx-bootstrap/timepicker', name: 'TimepickerModule', as: 'ngx_TimepickerModule', forRoot: true }];\nconst NGX_TOOL_TIP_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/tooltip', name: 'TooltipModule', as: 'ngxTooltipModule', forRoot: true }];\nconst NGX_TYPE_HEAD_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/typeahead', name: 'TypeaheadModule', as: 'ngxTypeaheadModule', forRoot: true }];\n\n// Progess Modules\nconst PROGRESS_BAR_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/progress/progress-bar', name: 'ProgressBarComponent' }];\nconst PROGRESS_CIRCLE_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/progress/progress-circle', name: 'ProgressCircleComponent' }];\nconst PAGE_COMPONENT: ImportDef[] = [{ from: '@wm/components/page', name: 'PageDirective' }];\nconst PAGINATION_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, ...NGX_PAGINATION_MODULE, { from: '@wm/components/data/pagination', name: 'PaginationComponent' }];\n\n// Basic Components\nconst ANCHOR_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/anchor', name: 'AnchorComponent' }];\nconst AUDIO_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/audio', name: 'AudioComponent' }];\nconst HTML_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/html', name: 'HtmlDirective' }];\nconst ICON_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/icon', name: 'IconComponent' }];\nconst IFRAME_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/iframe', name: 'IframeComponent' }];\nconst LABEL_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/label', name: 'LabelDirective' }];\nconst PICTURE_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/picture', name: 'PictureDirective' }];\nconst SEARCH_COMPONENT: ImportDef[] = [\n ...NG_FORM_MODULE,\n ...NGX_TYPE_HEAD_MODULE,\n { from: '@wm/components/basic/search', name: 'ScrollableDirective' },\n { from: '@wm/components/basic/search', name: 'SearchComponent' }];\nconst SPINNER_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/spinner', name: 'SpinnerComponent' }];\nconst VIDEO_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/video', name: 'VideoComponent' }];\n\n// Container Components\nconst PARTIAL_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/base', name: 'PartialDirective' }];\nconst PARTIAL_CONTAINER: ImportDef[] = [{ from: '@wm/components/base', name: 'PartialParamHandlerDirective' }, { from: '@wm/components/base', name: 'PartialContainerDirective' }]\nconst ACCORDION_PANE_COMPONENT: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/containers/accordion', name: 'AccordionPaneComponent' }];\nconst ACCORDION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/containers/accordion', name: 'AccordionDirective' }];\nconst CONTAINER_DIRECTIVE: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/base', name: 'ContainerDirective' }]\nconst PARTIAL_PARAM_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/base', name: 'PartialParamDirective' }];\nconst LINEAR_LAYOUT_ITEM_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/containers/linear-layout', name: 'LinearLayoutItemDirective' }];\nconst LINEAR_LAYOUT_DIRECTIVE: ImportDef[] = [...LINEAR_LAYOUT_ITEM_DIRECTIVE, { from: '@wm/components/containers/linear-layout', name: 'LinearLayoutDirective' }];\nconst TAB_PANE_COMPONENT: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/containers/tabs', name: 'TabPaneComponent' }];\nconst TABS_COMPONENT: ImportDef[] = [...TAB_PANE_COMPONENT, { from: '@wm/components/containers/tabs', name: 'TabsComponent' }];\nconst WIZARD_ACTION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/containers/wizard', name: 'WizardActionDirective' }];\nconst WIZARD_STEP_DIRECTIVE: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/containers/wizard', name: 'WizardStepComponent' }];\nconst WIZARD_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, ...WIZARD_ACTION_DIRECTIVE, ...WIZARD_STEP_DIRECTIVE, { from: '@wm/components/containers/wizard', name: 'WizardComponent' }];\nconst LAYOUT_GRID_COLUMN_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/containers/layout-grid', name: 'LayoutGridColumnDirective' }];\nconst LAYOUT_GRID_ROW_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/containers/layout-grid', name: 'LayoutGridRowDirective' }];\nconst LAYOUT_GRID_DIRECTIVE: ImportDef[] = [...LAYOUT_GRID_ROW_DIRECTIVE, ...LAYOUT_GRID_COLUMN_DIRECTIVE, { from: '@wm/components/containers/layout-grid', name: 'LayoutgridDirective' }];\nconst PANEL_COMPONENT: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/containers/panel', name: 'PanelComponent' }];\nconst TILE_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/containers/tile', name: 'TileDirective' }];\nconst REPEAT_TEMPLATE_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/base', name: 'RepeatTemplateDirective' }];\n\n// Dialog Modules\nconst ALERT_DIALOG_COMPONENT: ImportDef[] = [{ from: '@wm/components/dialogs/alert-dialog', name: 'AlertDialogComponent' }];\nconst CONFIRM_DIALOG_COMPONENT: ImportDef[] = [{ from: '@wm/components/dialogs/confirm-dialog', name: 'ConfirmDialogComponent' }];\nconst DESIGN_DIALOG_COMPONENT: ImportDef[] = [{ from: '@wm/components/dialogs/design-dialog', name: 'DialogComponent' }];\nconst IFRAME_DIALOG_COMPONENT: ImportDef[] = [{ from: '@wm/components/dialogs/iframe-dialog', name: 'IframeDialogComponent' }];\nconst LOGIN_DIALOG_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/dialogs/login-dialog', name: 'LoginDialogDirective' }, ...DESIGN_DIALOG_COMPONENT];\nconst PARTIAL_DIALOG_COMPONENT: ImportDef[] = [{ from: '@wm/components/dialogs/partial-dialog', name: 'PartialDialogComponent' }, ...CONTAINER_DIRECTIVE];\nconst DIALOGACTIONS_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/dialogs', name: 'DialogFooterDirective' }];\n\n// Navigation Modules\nconst NAV_ITEM_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/navigation/menu', name: 'NavItemDirective' }];\nconst NAV_COMPONENT: ImportDef[] = [{ from: '@wm/components/navigation/menu', name: 'NavComponent' }];\nconst NAVIGATION_CONTROL_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/navigation/menu', name: 'NavigationControlDirective' }];\nconst MENU_DROPDOWN_ITEM_COMPONENT: ImportDef[] = [{ from: '@wm/components/navigation/menu', name: 'MenuDropdownComponent' }];\nconst MENU_DROPDOWN_COMPONENT: ImportDef[] = [{ from: '@wm/components/navigation/menu', name: 'MenuDropdownComponent' }]; // Duplicate, consider removing one\nconst MENU_COMPONENT: ImportDef[] = [...NGX_DROP_DOWN_MODULE, ...MENU_DROPDOWN_COMPONENT, ...MENU_DROPDOWN_ITEM_COMPONENT, ...NAVIGATION_CONTROL_DIRECTIVE, ...NAV_COMPONENT, ...NAV_ITEM_DIRECTIVE, { from: '@wm/components/navigation/menu', name: 'MenuComponent' }];\nconst MESSAGE_COMPONENT: ImportDef[] = [{ from: '@wm/components/base', name: 'MessageComponent' }];\nconst BREAD_CRUMB_COMPONENT: ImportDef[] = [...MENU_COMPONENT, { from: '@wm/components/navigation/breadcrumb', name: 'BreadcrumbComponent' }];\nconst NAVBAR_COMPONENT: ImportDef[] = [{ from: '@wm/components/navigation/navbar', name: 'NavbarComponent' }];\nconst POPOVER_COMPONENT: ImportDef[] = [...NGX_POPOVER_MODULE, { from: '@wm/components/navigation/popover', name: 'PopoverComponent' }, ...CONTAINER_DIRECTIVE];\nconst TOP_NAV_DIRECTIVE: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/page/top-nav', name: 'TopNavDirective' }];\n\n// Input Components\nconst CALENDAR_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, ...NGX_BS_DATE_PICKER, { from: '@wm/components/input/calendar', name: 'CalendarComponent' }];\nconst CHIPS_COMPONENT: ImportDef[] = [...SEARCH_COMPONENT, { from: '@wm/components/input/chips', name: 'ChipsComponent' }];\nconst COLOR_PICKER_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, ...NGX_COLOR_PICKER_DIRECTIVE, { from: '@wm/components/input/color-picker', name: 'ColorPickerComponent' }];\nconst CURRENCY_COMPONENT: ImportDef[] = [{ from: '@wm/components/input/currency', name: 'CurrencyComponent' }];\nconst DATE_COMPONENT: ImportDef[] = [\n ...NG_FORM_MODULE, ...NGX_BS_DATE_PICKER, ...NGX_DROP_DOWN_MODULE,\n { from: '@wm/components/input/epoch/date', name: 'DateComponent' }];\nconst DATE_TIME_COMPONENT: ImportDef[] = [\n ...NG_FORM_MODULE, ...NGX_BS_DATE_PICKER, ...NGX_TIME_PICKER, ...NGX_DROP_DOWN_MODULE,\n { from: '@wm/components/input/epoch/date-time', name: 'DatetimeComponent' }];\nconst TIME_COMPONENT: ImportDef[] = [\n ...NG_FORM_MODULE, ...NGX_BS_DATE_PICKER, ...NGX_TIME_PICKER, ...NGX_DROP_DOWN_MODULE,\n { from: '@wm/components/input/epoch/time', name: 'TimeComponent' }];\nconst FILE_UPLOAD_COMPONENT: ImportDef[] = [{ from: '@wm/components/input/file-upload', name: 'FileUploadComponent' }];\nconst RATING_COMPONENT: ImportDef[] = [{ from: '@wm/components/input/rating', name: 'RatingComponent' }];\nconst SLIDER_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/slider', name: 'SliderComponent' }];\nconst BUTTON_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/button', name: 'ButtonComponent' }];\nconst BUTTON_GROUP_DIRECTIVE: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/button-group', name: 'ButtonGroupDirective' }];\n// const CAPTION_POSITION_DIRECTIVE: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input', name: 'CaptionPositionDirective' }];\nconst CHECKBOX_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/checkbox', name: 'CheckboxComponent' }];\nconst CHECKBOXSET_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/checkboxset', name: 'CheckboxsetComponent' }];\n// const COMPOSITE_DIRECTIVE: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input', name: 'CompositeDirective' }];\nconst NUMBER_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/number', name: 'NumberComponent' }];\nconst RADIOSET_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/radioset', name: 'RadiosetComponent' }];\nconst SELECT_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/select', name: 'SelectComponent' }];\nconst SWITCH_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/switch', name: 'SwitchComponent' }];\nconst INPUT_CALENDER_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/text', name: 'InputCalendarComponent' }];\nconst INPUT_COLOR_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/text', name: 'InputColorComponent' }];\nconst INPUT_EMAIL_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/text', name: 'InputEmailComponent' }];\nconst INPUT_NUMBER_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/text', name: 'InputNumberComponent' }];\nconst INPUT_TEXT_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/text', name: 'InputTextComponent' }];\nconst TEXTAREA_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/textarea', name: 'TextareaComponent' }];\n\n// Data Components\nconst CARD_ACTIONS_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/card', name: 'CardActionsDirective' }];\nconst CARD_CONTENT_COMPONENT: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/data/card', name: 'CardContentComponent' }];\nconst CARD_FOOTER_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/card', name: 'CardFooterDirective' }];\nconst CARD_COMPONENT: ImportDef[] = [\n ...NGX_DROP_DOWN_MODULE,\n ...MENU_COMPONENT,\n ...CARD_ACTIONS_DIRECTIVE,\n ...CARD_CONTENT_COMPONENT,\n ...CARD_FOOTER_DIRECTIVE,\n { from: '@wm/components/data/card', name: 'CardComponent' }];\nconst LIST_ITEM_DIRECTIVE: ImportDef[] = [...PAGINATION_COMPONENT, { from: '@wm/components/data/list', name: 'ListItemDirective' }];\nconst LIST_COMPONENT: ImportDef[] = [...PAGINATION_COMPONENT, ...LIST_ITEM_DIRECTIVE, { from: '@wm/components/data/list', name: 'ListComponent' }];\nconst TABLE_CUD_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableCUDDirective' }];\nconst TABLE_FILTER_SORT_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableFilterSortDirective' }];\nconst TABLE_ACTION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableActionDirective' }];\nconst TABLE_COLUMN_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableColumnDirective' }];\nconst TABLE_COLUMN_GROUP_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableColumnGroupDirective' }];\nconst TABLE_ROW_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableRowDirective' }, ...CONTAINER_DIRECTIVE, ...PARTIAL_CONTAINER];\nconst TABLE_ROW_ACTION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableRowActionDirective' }, ...BUTTON_COMPONENT, ...ANCHOR_COMPONENT];\nconst TABLE_COMPONENT: ImportDef[] = [\n ...NG_FORM_MODULE,\n ...NG_REACTIVE_FORM_MODULE,\n ...PAGINATION_COMPONENT,\n ...MENU_COMPONENT,\n ...NGX_TOOL_TIP_MODULE,\n ...LIST_COMPONENT,\n ...TABLE_ACTION_DIRECTIVE,\n ...TABLE_CUD_DIRECTIVE,\n ...TABLE_FILTER_SORT_DIRECTIVE,\n ...TABLE_COLUMN_DIRECTIVE,\n ...TABLE_COLUMN_GROUP_DIRECTIVE,\n ...TABLE_ROW_DIRECTIVE,\n ...TABLE_ROW_ACTION_DIRECTIVE,\n { from: '@wm/components/data/table', name: 'TableComponent' }];\nconst LIVE_TABLE_COMPONENT: ImportDef[] = [{ from: '@wm/components/data/live-table', name: 'LiveTableComponent' }];\n\n// Form Components and Directives\nconst FORM_WIDGET_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'FormWidgetDirective' }];\nconst FORM_ACTION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'FormActionDirective' }];\nconst FORM_FIELD_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'FormFieldDirective' }];\nconst LIVE_ACTION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'LiveActionsDirective' }];\nconst DEPENDS_ON_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'DependsonDirective' }];\nconst LIVE_FILTER_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'LiveFilterDirective' }];\nconst LIVE_FORM_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'LiveFormDirective' }];\nconst CAPTION_POSITION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/input/caption-position', name: 'CaptionPositionDirective'}];\nconst FORM_COMPONENT: ImportDef[] = [\n ...NG_FORM_MODULE,\n ...NG_REACTIVE_FORM_MODULE,\n ...FORM_ACTION_DIRECTIVE,\n ...FORM_WIDGET_DIRECTIVE,\n ...FORM_FIELD_DIRECTIVE,\n ...LIVE_ACTION_DIRECTIVE,\n ...DEPENDS_ON_DIRECTIVE,\n ...LIVE_FILTER_DIRECTIVE,\n ...LIVE_FORM_DIRECTIVE,\n ...CAPTION_POSITION_DIRECTIVE,\n { from: '@wm/components/data/form', name: 'FormComponent' }];\nconst COMPOSITE_DIRECTIVE = [{ from: '@wm/components/input/composite', name: 'CompositeDirective' }, { from: '@wm/components/input/caption-position', name: 'CaptionPositionDirective' }]\n\n// Page Structure Components // TODO: PARTIAL_CONTAINER these needed ? appComponent has imports at root\nconst FOOTER_DIRECTIVE: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/page/footer', name: 'FooterDirective' }];\nconst HEADER_COMPONENT: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/page/header', name: 'HeaderComponent' }];\nconst LEFT_PANEL_DIRECTIVE: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/page/left-panel', name: 'LeftPanelDirective' }];\nconst RIGHT_PANEL_DIRECTIVE: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/page/right-panel', name: 'RightPanelDirective' }];\nconst PAGE_CONTENT_COMPONENT: ImportDef[] = [{ from: '@wm/components/page', name: 'PageContentComponent' }];\nconst SPA_PAGE_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/page', name: 'SpaPageDirective' }];\nconst LAYOUT_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/page', name: 'LayoutDirective' }];\nconst CONTENT_COMPONENT: ImportDef[] = [{ from: '@wm/components/page', name: 'ContentComponent' }];\n\n// Advanced Components\nconst CAROUSEL_TEMPLATE_DIRECTIVE: ImportDef[] = [...NGX_CAROUSEL_MODULE, { from: '@wm/components/advanced/carousel', name: 'CarouselTemplateDirective' }];\nconst CAROUSEL_COMPONENT: ImportDef[] = [...NGX_CAROUSEL_MODULE, ...CAROUSEL_TEMPLATE_DIRECTIVE, { from: '@wm/components/advanced/carousel', name: 'CarouselDirective' }];\nconst CHART_COMPONENT: ImportDef[] = [{ from: '@wm/components/chart', name: 'ChartComponent' }, {from: '@wm/components/base', name: 'RedrawableDirective'}];\nconst CUSTOM_WIDGET_CONTAINER_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/advanced/custom', name: 'CustomWidgetContainerDirective' }];\nconst CUSTOM_WIDGET_DIRECTIVE: ImportDef[] = [...CUSTOM_WIDGET_CONTAINER_DIRECTIVE, { from: '@wm/components/advanced/custom', name: 'CustomWidgetDirective' }];\nconst LOGIN_COMPONENT: ImportDef[] = [{ from: '@wm/components/advanced/login', name: 'LoginComponent' }];\nconst MARQUEE_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/advanced/marquee', name: 'MarqueeDirective' }];\nconst PREFAB_CONTAINER_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/prefab', name: 'PrefabContainerDirective' }];\nconst PREFAB_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/prefab', name: 'PrefabDirective' }];\nconst RICH_TEXT_EDITOR_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/rich-text-editor', name: 'RichTextEditorComponent' }];\nconst TREE_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/tree', name: 'TreeComponent' }];\nconst ACCESSROLES_DIRECTIVE = [{from: '@wm/runtime/base', name: 'AccessrolesDirective'}];\nconst SHOW_IN_DEVICE_DIRECTIVE: ImportDef[] = [{from: '@wm/components/base', name: 'ShowInDeviceDirective'}];\nconst LAZY_LOAD_DIRECTIVE: ImportDef[] = [{from: '@wm/components/base', name: 'LazyLoadDirective'}];\n// Pipes\nconst TO_DATE_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'ToDatePipe' }];\nconst TO_CURRENCY_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'ToCurrencyPipe' }];\nconst NUMBER_TO_STRING_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'NumberToStringPipe' }];\nconst STRING_TO_NUMBER_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'StringToNumberPipe' }];\nconst TIME_FROM_NOW_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'TimeFromNowPipe' }];\nconst PREFIX_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'PrefixPipe' }];\nconst SUFFIX_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'SuffixPipe' }];\nconst CUSTOM_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'CustomPipe' }];\n\nexport const WIDGET_IMPORTS: Map<string, ImportDef[]> = new Map([\n ['wm-accordion', ACCORDION_DIRECTIVE],\n ['wm-accordionpane', ACCORDION_PANE_COMPONENT],\n ['wm-anchor', ANCHOR_COMPONENT],\n ['wm-alertdialog', ALERT_DIALOG_COMPONENT],\n ['wm-audio', AUDIO_COMPONENT],\n ['wm-button', BUTTON_COMPONENT],\n ['wm-buttongroup', BUTTON_GROUP_DIRECTIVE],\n ['wm-breadcrumb', BREAD_CRUMB_COMPONENT],\n ['wm-calendar', CALENDAR_COMPONENT],\n ['wm-card', CARD_COMPONENT],\n ['wm-card-actions', CARD_ACTIONS_DIRECTIVE],\n ['wm-card-content', CARD_CONTENT_COMPONENT],\n ['wm-card-footer', CARD_FOOTER_DIRECTIVE],\n ['wm-carousel', CAROUSEL_COMPONENT],\n ['wm-carousel-content', CAROUSEL_TEMPLATE_DIRECTIVE],\n ['wm-carousel-template', CAROUSEL_TEMPLATE_DIRECTIVE],\n ['wm-chart', CHART_COMPONENT],\n ['wm-checkbox', CHECKBOX_COMPONENT],\n ['wm-checkboxset', CHECKBOXSET_COMPONENT],\n ['wm-chips', CHIPS_COMPONENT],\n ['wm-colorpicker', COLOR_PICKER_COMPONENT],\n ['wm-confirmdialog', CONFIRM_DIALOG_COMPONENT],\n ['wm-container', CONTAINER_DIRECTIVE],\n ['wm-param', PARTIAL_PARAM_DIRECTIVE],\n ['wm-content', CONTENT_COMPONENT],\n ['wm-currency', CURRENCY_COMPONENT],\n ['wm-date', DATE_COMPONENT],\n ['wm-datetime', DATE_TIME_COMPONENT],\n ['wm-dialog', DESIGN_DIALOG_COMPONENT],\n ['wm-dialogactions', DIALOGACTIONS_DIRECTIVE],\n ['wm-footer', FOOTER_DIRECTIVE],\n ['wm-form', FORM_COMPONENT],\n ['wm-form-action', FORM_ACTION_DIRECTIVE],\n ['wm-form-field', FORM_FIELD_DIRECTIVE],\n ['wm-filter-field', LIVE_FILTER_DIRECTIVE],\n ['wm-fileupload', FILE_UPLOAD_COMPONENT],\n ['wm-gridrow', LAYOUT_GRID_ROW_DIRECTIVE],\n ['wm-gridcolumn', LAYOUT_GRID_COLUMN_DIRECTIVE],\n ['wm-header', HEADER_COMPONENT],\n ['wm-html', HTML_COMPONENT],\n ['wm-icon', ICON_COMPONENT],\n ['wm-iframe', IFRAME_COMPONENT],\n ['wm-iframedialog', IFRAME_DIALOG_COMPONENT],\n ['wm-label', LABEL_COMPONENT],\n ['wm-layout', LAYOUT_DIRECTIVE],\n ['wm-layoutgrid', LAYOUT_GRID_DIRECTIVE],\n ['wm-left-panel', LEFT_PANEL_DIRECTIVE],\n ['wm-linearlayout', LINEAR_LAYOUT_DIRECTIVE],\n ['wm-linearlayoutitem', LINEAR_LAYOUT_ITEM_DIRECTIVE],\n ['wm-list', LIST_COMPONENT],\n ['wm-livetable', LIVE_TABLE_COMPONENT],\n ['wm-login', LOGIN_COMPONENT],\n ['wm-custom', CUSTOM_WIDGET_DIRECTIVE],\n ['wm-custom-widget', CUSTOM_WIDGET_DIRECTIVE],\n ['wm-logindialog', LOGIN_DIALOG_DIRECTIVE],\n ['wm-marquee', MARQUEE_DIRECTIVE],\n ['wm-menu', MENU_COMPONENT],\n ['wm-message', MESSAGE_COMPONENT],\n ['wm-nav', NAV_COMPONENT],\n ['wm-navbar', NAVBAR_COMPONENT],\n ['wm-nav-item', NAV_ITEM_DIRECTIVE],\n ['wm-number', NUMBER_COMPONENT],\n ['wm-partial', PARTIAL_DIRECTIVE],\n ['wm-page', PAGE_COMPONENT],\n ['wm-page-content', PAGE_CONTENT_COMPONENT],\n ['spa-page-content', SPA_PAGE_DIRECTIVE],\n ['wm-pagedialog', PARTIAL_DIALOG_COMPONENT],\n ['wm-pagination', PAGINATION_COMPONENT],\n ['wm-panel', PANEL_COMPONENT],\n ['wm-panel-footer', PANEL_COMPONENT],\n ['wm-picture', PICTURE_COMPONENT],\n ['wm-popover', POPOVER_COMPONENT],\n ['wm-progress-bar', PROGRESS_BAR_COMPONENT],\n ['wm-prefab', PREFAB_DIRECTIVE],\n ['wm-prefab-container', PREFAB_CONTAINER_DIRECTIVE],\n ['wm-progress-circle', PROGRESS_CIRCLE_COMPONENT],\n ['wm-radioset', RADIOSET_COMPONENT],\n ['wm-rating', RATING_COMPONENT],\n ['wm-richtexteditor', RICH_TEXT_EDITOR_COMPONENT],\n ['wm-right-panel', RIGHT_PANEL_DIRECTIVE],\n ['wm-select', SELECT_COMPONENT],\n ['wm-search', SEARCH_COMPONENT],\n ['wm-slider', SLIDER_COMPONENT],\n ['wm-spinner', SPINNER_COMPONENT],\n ['wm-switch', SWITCH_COMPONENT],\n ['wm-table', TABLE_COMPONENT],\n ['wm-tabs', TABS_COMPONENT],\n ['wm-tabpane', TAB_PANE_COMPONENT],\n ['wm-text', [...INPUT_TEXT_COMPONENT, ...INPUT_CALENDER_COMPONENT, ...INPUT_COLOR_COMPONENT, ...INPUT_EMAIL_COMPONENT, ...INPUT_NUMBER_COMPONENT]],\n ['wm-textarea', TEXTAREA_COMPONENT],\n ['wm-time', TIME_COMPONENT],\n ['wm-tile', TILE_DIRECTIVE],\n ['wm-top-nav', TOP_NAV_DIRECTIVE],\n ['wm-tree', TREE_COMPONENT],\n ['wm-video', VIDEO_COMPONENT],\n ['wm-wizard', WIZARD_COMPONENT],\n ['wm-wizardstep', WIZARD_COMPONENT],\n ['wm-repeat-template', REPEAT_TEMPLATE_DIRECTIVE],\n ['wm-composite', COMPOSITE_DIRECTIVE],\n ['accessroles', ACCESSROLES_DIRECTIVE],\n ['showindevice', SHOW_IN_DEVICE_DIRECTIVE],\n ['lazyload', LAZY_LOAD_DIRECTIVE],\n\n ['toDate', TO_DATE_PIPE],\n ['toCurrency', TO_CURRENCY_PIPE],\n ['numberToString', NUMBER_TO_STRING_PIPE],\n ['stringToNumber', STRING_TO_NUMBER_PIPE],\n ['timeFromNow', TIME_FROM_NOW_PIPE],\n ['prefix', PREFIX_PIPE],\n ['suffix', SUFFIX_PIPE],\n ['custom', CUSTOM_PIPE],\n]);\n","import {Comment, Element, getHtmlTagDefinition, HtmlParser, ParseSourceSpan, Text} from '@angular/compiler';\nimport {WIDGET_IMPORTS} from './imports';\nimport {find, isEqual, isFunction, remove, sortBy, uniqWith} from \"lodash-es\";\n\nconst CSS_REGEX = {\n COMMENTS_FORMAT : /\\/\\*((?!\\*\\/).|\\n)+\\*\\//g,\n SELECTOR_FORMAT : /[^\\{\\}]*\\{/gi,\n SELECTOR_EXCLUDE_FORMAT : /(@keyframes|@media|@font-face|@comment[0-9]+|from|to|[0-9]+%)\\b/i\n};\n\nconst isString = v => typeof v === 'string';\n\ninterface IProviderInfo {\n nodeName: string;\n provide: Map<string, any>;\n}\n\nconst OVERRIDES = {\n 'accessroles': '*accessroles',\n 'ng-if': '*ngIf',\n 'showindevice': '*wmShowInDevice',\n 'ng-class': '[ngClass]',\n 'data-ng-class': '[ngClass]',\n 'data-ng-src': 'src',\n 'ng-src': 'src',\n 'data-ng-href': 'href',\n 'ng-href': 'href',\n 'ng-disabled': 'disabled',\n 'data-ng-disabled': 'disabled',\n 'ng-model': '[ngModelOptions]=\"{standalone: true}\" [(ngModel)]'\n};\n\nconst selfClosingTags = new Set(['img']);\n\nexport const getBoundToExpr = (value: string) => {\n if (!value) {\n return null;\n }\n\n value = value.trim();\n if (value.startsWith('bind:')) {\n return value.substr(5);\n }\n};\n\nconst quoteAttr = v => {\n return ('' + v) /* Forces the conversion to string. */\n .replace(/&/g, '&amp;') /* This MUST be the 1st replacement. */\n .replace(/'/g, '&apos;') /* The 4 other predefined entities, required. */\n .replace(/\"/g, '&quot;')\n .replace(/</g, '&lt;')\n .replace(/>/g, '&gt;');\n};\n\nconst registry = new Map<string, any>();\nconst htmlParser = new HtmlParser();\nconst ignoreComments = true;\n\nconst empty = () => '';\n\nconst isEvent = name => name[0] === 'o' && name[1] === 'n' && name[2] === '-';\n\nconst getEventName = key => key.substr(3);\n\nconst processBinding = (attr, expr) => [`${attr.name}.bind`, quoteAttr(expr)];\n\nconst processEvent = attr => {\n const evtName = getEventName(attr.name);\n return [`${evtName}.event`, attr.value];\n};\n\n/**\n * Wraps the string with single quotes.\n * @param val\n */\nconst wrapWithApos = (val: string) => {\n return `&apos;${val.replace(/&apos/g, '&quot').replace(/&quot/g, '\\\\&quot')}&apos;`;\n};\nconst ELE_PREFIX = '.wm-app';\n\nconst processAttr = attr => {\n let overridden = OVERRIDES[attr.name];\n const value = attr.valueSpan ? attr.value : undefined;\n\n if (overridden) {\n /**\n * wrap value for accessroles with ''.\n * since accessroles is a structural directive, it will be transpiled to [accessroles]\n * hence, the value against it should be a computed string\n */\n if (attr.name === 'accessroles' || attr.name === 'showindevice') {\n return [overridden, `'${value}'`];\n }\n return [overridden, quoteAttr(value)];\n }\n\n if (isEvent(attr.name)) {\n return processEvent(attr);\n }\n\n const boundExpr = getBoundToExpr(attr.value);\n if (boundExpr) {\n return processBinding(attr, boundExpr);\n }\n\n return [attr.name, quoteAttr(value)];\n};\n\nexport const getDataSource = (dataSetExpr: string): string => {\n const parts = dataSetExpr.split('.');\n if (parts[0] === 'Variables' || parts[0] === 'Widgets') {\n return `${parts[0]}.${parts[1]}`;\n }\n if (parts[0] === 'App' && parts[1] === 'activePage' && parts[2] === 'Variables' && parts[3]) {\n return `App.activePage.Variables.${parts[3]}`;\n }\n};\n\nconst widgetChildAttrs = (() => {\n const childAttrs = new Map();\n const validChildAttrs = [\n `required`\n ];\n return {\n set: attrs => {\n attrs.forEach((val, key) => {\n validChildAttrs.includes(key) && (childAttrs.set(key, val));\n });\n },\n get: attrs => {\n const fltrAttrs = new Map();\n childAttrs.forEach((val, key) => {\n !attrs.get(key) && fltrAttrs.set(key, val);\n });\n return fltrAttrs;\n },\n clear: () => {\n childAttrs.clear();\n }\n };\n})();\nexport const setChildAttrs = attrs => {\n widgetChildAttrs.set(attrs);\n return '';\n};\nexport const getChildAttrs = attrs => {\n return getAttrMarkup(widgetChildAttrs.get(attrs));\n};\nexport const clearChildAttrs = () => {\n widgetChildAttrs.clear();\n return '';\n};\nexport const getFormMarkupAttr = attrs => {\n if (attrs.get('datavalue.bind')) {\n const onDataValueBinding = getDataSource(attrs.get('datavalue.bind'));\n attrs.set('datavaluesource.bind', onDataValueBinding);\n }\n return getAttrMarkup(attrs);\n};\n\nconst getAttrMap = attrs => {\n const attrMap = new Map<string, string>();\n attrs.forEach(attr => {\n let [attrName, attrValue] = processAttr(attr);\n attrMap.set(attrName, attrValue);\n });\n\n if (attrMap.get('dataset.bind')) {\n const dataSource = getDataSource(attrMap.get('dataset.bind'));\n if (dataSource) {\n attrMap.set('datasource.bind', dataSource);\n }\n }\n\n return attrMap;\n};\n\nexport const getAttrMarkup = (attrs: Map<string, string>) => {\n let attrMarkup = '';\n attrs.forEach((v, k) => {\n attrMarkup += ` ${k}`;\n if (v) {\n v = v.trim();\n if (k === '[ngClass]' && v.startsWith('{')) {\n v = v.replace(/\"/g, `'`);\n }\n if (k === 'show.bind' && attrs.get('deferload') === 'true') {\n v = v + `\" *lazyLoad=\"${wrapWithApos(v)}`;\n }\n attrMarkup += `=\"${v}\"`;\n }\n });\n\n return attrMarkup;\n};\n\nconst getRequiredProviders = (nodeDef: IBuildTaskDef, providers: Array<IProviderInfo>, nodeAttrs) => {\n if (!nodeDef.requires) {\n return [];\n }\n\n let requires = nodeDef.requires as any;\n\n if (isString(requires)) {\n requires = [requires];\n }\n\n if (!Array.isArray(requires)) {\n return [];\n }\n\n return requires.map(require => {\n // for dynamic table assigning parent provide map to the child,\n for (let i = nodeAttrs.length - 1; i >= 0; i-- ) {\n if (nodeAttrs[i].name === 'tableName') {\n return nodeDef[nodeAttrs[i].value];\n }\n }\n\n for (let i = providers.length - 1; i >= 0; i-- ) {\n if (providers[i].nodeName === require) {\n return providers[i].provide;\n }\n }\n });\n};\n\nconst DIMENSION_PROPS = ['padding', 'borderwidth', 'margin'];\n\nconst SEPARATOR = ' ', UNSET = 'unset';\n\nconst setDimensionProp = (cssObj, key, nv) => {\n let cssKey = key, val, top, right, bottom, left, suffix = '';\n\n function setVal(prop, value) {\n // if the value is UNSET, reset the existing value\n if (value === UNSET) {\n value = '';\n }\n cssObj[cssKey + prop + suffix] = value;\n }\n\n if (key === 'borderwidth') {\n suffix = 'width';\n cssKey = 'border';\n }\n\n val = nv;\n\n if (val.indexOf(UNSET) !== -1) {\n val = val.split(SEPARATOR);\n\n top = val[0];\n right = val[1] || val[0];\n bottom = val[2] || val[0];\n left = val[3] || val[1] || val[0];\n\n setVal('top', top);\n setVal('right', right);\n setVal('bottom', bottom);\n setVal('left', left);\n } else {\n if (key === 'borderwidth') {\n cssKey = 'borderwidth';\n }\n cssObj[cssKey] = nv;\n }\n};\n\nconst processDimensionAttributes = attrMap => {\n const attrKeys = Array.from(attrMap.keys());\n attrKeys.forEach((attrKey: any) => {\n if (DIMENSION_PROPS.includes(attrKey)) {\n const cssObj = {},\n attrValue = attrMap.get(attrKey);\n attrMap.delete(attrKey);\n setDimensionProp(cssObj, attrKey, attrValue);\n Object.keys(cssObj).forEach(key => {\n if (cssObj[key]) {\n attrMap.set(key, cssObj[key]);\n }\n });\n }\n });\n};\n\n// replace <:svg:svg> -> <svg>, <:svg:*> -> <svg:*>\nconst getNodeName = name => name.replace(':svg:svg', 'svg').replace(':svg:', 'svg:');\n\nexport const processNode = (node, importCollector: (i: ImportDef[]) => void, providers?: Array<IProviderInfo>) => {\n const nodeDef = registry.get(node.name);\n\n let pre, post, template;\n\n if (nodeDef) {\n pre = nodeDef.pre || empty;\n post = nodeDef.post || empty;\n template = nodeDef.template || empty;\n }\n\n let markup = '';\n let attrMap;\n let requiredProviders;\n let shared;\n\n if (!providers) {\n providers = [];\n }\n\n const isElementType = node instanceof Element;\n\n if (isElementType) {\n let provideInfo: IProviderInfo;\n\n if (nodeDef) {\n requiredProviders = getRequiredProviders(nodeDef, providers, node.attrs);\n shared = new Map();\n template(node, shared, ...requiredProviders);\n }\n\n attrMap = getAttrMap(node.attrs);\n processDimensionAttributes(attrMap);\n\n const nodeName = getNodeName(node.name);\n\n if (nodeDef) {\n markup = (<any>pre)(attrMap, shared, ...requiredProviders);\n if (nodeDef.provide) {\n provideInfo = {\n nodeName: node.name,\n provide: isFunction(nodeDef.provide) ? nodeDef.provide(attrMap, shared, ...requiredProviders) : nodeDef.provide\n };\n // For table node, assigning parent provide map to the child, as child requires some parent provide attrs.\n if (node.name === 'wm-table') {\n const tableColNodeDefn = registry.get('wm-table-column');\n tableColNodeDefn[find(node.attrs, (el) => el.name === 'name').value + provideInfo.provide.get('table_reference')] = provideInfo.provide;\n registry.set('wm-table-column', tableColNodeDefn);\n }\n providers.push(provideInfo);\n }\n } else {\n markup = `<${nodeName} ${getAttrMarkup(attrMap)}>`;\n }\n\n node.children.forEach((child: Node | any) => {\n if(child.attrs) {\n let showInDeviceAttr, accessRolesAttr, deferLoadAttr, showAttr;\n child.attrs.forEach(function(attr){\n if (attr.name === 'showindevice') {\n showInDeviceAttr = attr;\n importCollector(WIDGET_IMPORTS.get(\"showindevice\"))\n } else if (attr.name === 'accessroles') {\n accessRolesAttr = attr;\n importCollector(WIDGET_IMPORTS.get('accessroles'));\n } else if (attr.name === 'deferload') {\n deferLoadAttr = attr;\n importCollector(WIDGET_IMPORTS.get('lazyload'));\n } else if (attr.name === 'show') {\n showAttr = attr;\n }\n });\n if((showInDeviceAttr && accessRolesAttr) || (showInDeviceAttr && deferLoadAttr) || (accessRolesAttr && deferLoadAttr)) {\n /* If more than one out of showindevice, accessroles and deferload exist for a widget, add ng-container wrappers to fix angular limitation\n of applying only one structural directive to an element.\n * */\n const noSpan = ({} as ParseSourceSpan);\n const showInDeviceContainer:any = showInDeviceAttr ? new Element('ng-container', [], [], noSpan, noSpan, noSpan) : '';\n const accessRolesContainer:any = accessRolesAttr ? new Element('ng-container', [], [], noSpan, noSpan, noSpan) : '';\n const deferLoadContainer:any = deferLoadAttr ? new Element('ng-container', [], [], noSpan, noSpan, noSpan) : '';\n if (showInDeviceContainer) {\n showInDeviceContainer.attrs.push(showInDeviceAttr);\n }\n if (accessRolesContainer) {\n accessRolesContainer.attrs.push(accessRolesAttr);\n }\n if (deferLoadContainer) {\n deferLoadContainer.attrs.push(deferLoadAttr);\n if (showAttr) {\n deferLoadContainer.attrs.push(showAttr);\n }\n }\n remove(child.attrs, function (attr) {\n // @ts-ignore\n return attr.name === 'showindevice' || attr.name === 'accessroles' || attr.name === 'deferload'\n });\n let childContainer, parentContainer;\n if (showInDeviceAttr && accessRolesAttr) {\n childContainer = showInDeviceContainer;\n parentContainer = accessRolesContainer;\n } else if (showInDeviceAttr && deferLoadAttr) {\n childContainer = showInDeviceContainer;\n parentContainer = deferLoadContainer;\n } else if (accessRolesAttr && deferLoadAttr) {\n childContainer = deferLoadContainer;\n parentContainer = accessRolesContainer;\n }\n // wrap current node elements inside first ng-container(childContainer) and that container's elements inside another ng-container(parentContainer)\n childContainer.children = [child];\n parentContainer.children = [childContainer];\n // if all three directives exist, create another wrapper for third ng-container(grandParentContainer)\n if (showInDeviceAttr && accessRolesAttr && deferLoadAttr) {\n const grandParentContainer = deferLoadContainer;\n grandParentContainer.children = [parentContainer];\n child = grandParentContainer;\n } else {\n child = parentContainer;\n }\n\n }\n }\n return markup += processNode(child, importCollector, providers);\n });\n\n if (nodeDef) {\n if (provideInfo) {\n providers.splice(providers.indexOf(provideInfo), 1);\n }\n markup += (<any>post)(attrMap, shared, ...requiredProviders);\n } else {\n if (node.endSourceSpan && !getHtmlTagDefinition(node.name).isVoid) {\n markup += `</${nodeName}>`;\n }\n }\n } else if (node instanceof Text) {\n markup += node.value;\n } else if (node instanceof Comment) {\n if (!ignoreComments) {\n markup += node.value;\n }\n }\n importCollector(WIDGET_IMPORTS.get(node.name));\n if (nodeDef && nodeDef.imports) {\n let imports = [];\n if (typeof nodeDef.imports === 'function') {\n imports = nodeDef.imports(attrMap);\n } else {\n imports = nodeDef.imports;\n }\n imports.forEach( i => {\n importCollector(WIDGET_IMPORTS.get(i));\n });\n }\n return markup;\n};\n\nexport const transpile = (markup: string = '') => {\n if (!markup.length) {\n return;\n }\n let requiredWMComponents = [];\n const nodes = htmlParser.parse(markup, '');\n\n if (nodes.errors.length) {\n return;\n }\n\n let output = '';\n for (const node of nodes.rootNodes) {\n output += processNode(node, (imports: ImportDef[]) => {\n if (imports) {\n requiredWMComponents = requiredWMComponents.concat(imports);\n }\n });\n }\n requiredWMComponents = uniqWith(requiredWMComponents, isEqual);\n requiredWMComponents = sortBy(requiredWMComponents, ['from', 'name']);\n return {\n markup: output,\n requiredWMComponents: requiredWMComponents\n };\n};\n\nexport const register = (nodeName: string, nodeDefFn: () => IBuildTaskDef) => registry.set(nodeName, nodeDefFn());\n\nexport interface ImportDef {\n from: string;\n name: string;\n as?: string;\n forRoot?: boolean;\n platformType?: string;\n}\n\nexport interface IBuildTaskDef {\n requires?: string | Array<string>;\n template?: (node: Element | Text | Comment, shared?: Map<any, any>, ...requires: Array<Map<any, any>>) => void;\n pre: (attrs: Map<string, string>, shared ?: Map<any, any>, ...requires: Array<Map<any, any>>) => string;\n provide?: (attrs: Map<string, string>, shared ?: Map<any, any>, ...requires: Array<Map<any, any>>) => Map<any, any>;\n post?: (attrs: Map<string, string>, shared ?: Map<any, any>, ...requires: Array<Map<any, any>>) => string;\n imports?: string[] | ((attrs: Map<string, string>) => string[]);\n}\n\nexport const scopeComponentStyles = (componentName, componentType, styles = '') => {\n componentName = componentName.toLowerCase();\n const comments = {};\n let commentCount = 0;\n if (styles.startsWith('/*DISABLE_SCOPING*/')) {\n return styles;\n }\n styles = styles.replace(CSS_REGEX.COMMENTS_FORMAT, comment => {\n const key = `@comment${commentCount++}{`;\n comments[key] = comment;\n return key;\n });\n styles = styles.replace(CSS_REGEX.SELECTOR_FORMAT, (selector) => {\n if (!CSS_REGEX.SELECTOR_EXCLUDE_FORMAT.test(selector)) {\n const firstNonSpaceCharIndex = selector.match(/\\S/).index;\n let prefixSpaceCharSeq = '';\n if (firstNonSpaceCharIndex > 0) {\n prefixSpaceCharSeq = selector.substring(0, firstNonSpaceCharIndex);\n selector = selector.substring(firstNonSpaceCharIndex);\n }\n if (!selector.startsWith('/*') && selector.trim().length > 0) {\n // splits the selector by commas and we iterate over the array and add page level scoping and join it.\n selector = selector.split(',').map(s => {\n let prefix = ELE_PREFIX;\n s = s.trim();\n const spaceIndex = s.indexOf(' ');\n if (s.startsWith(ELE_PREFIX)) {\n if (spaceIndex > 0) {\n prefix = s.substring(0, spaceIndex);\n s = s.substring(spaceIndex + 1);\n } else {\n return s;\n }\n }\n\n if (componentType === 0 || componentType === 'PAGE') {\n s = `${prefix} app-page-${componentName} ${s}`;\n } else if (componentType === 1 || componentType === 'PREFAB') {\n s = `${prefix} app-prefab-${componentName} ${s}`;\n } else if (componentType === 2 || componentType === 'PARTIAL') {\n s = `${prefix} app-partial-${componentName} ${s}`;\n } else if(componentType === 3 || componentType === 'WIDGET'){\n s = `${prefix} app-custom-${componentName} ${s}`;\n }\n return s;\n }).join(',');\n }\n selector = prefixSpaceCharSeq + selector;\n }\n return selector;\n });\n for (const key in comments) {\n styles = styles.replace(key, comments[key]);\n }\n return styles;\n};\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;AAEA;AACA,MAAM,cAAc,GAAgB,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,EAAE,eAAe,EAAE,CAAC;AAC1G,MAAM,uBAAuB,GAAgB,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,qBAAqB,EAAE,EAAE,EAAE,uBAAuB,EAAE,CAAC;AAEnI;AACA,MAAM,kBAAkB,GAAgB,CAAC,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,oBAAoB,EAAE,EAAE,EAAE,wBAAwB,EAAE,CAAC;AACxI,MAAM,mBAAmB,GAAgB,CAAC,EAAE,IAAI,EAAE,wBAAwB,EAAE,IAAI,EAAE,gBAAgB,EAAE,EAAE,EAAE,mBAAmB,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC7I,MAAM,0BAA0B,GAAgB,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,sBAAsB,EAAE,EAAE,EAAE,0BAA0B,EAAE,CAAC;AAC5I,MAAM,oBAAoB,GAAgB,CAAC,EAAE,IAAI,EAAE,wBAAwB,EAAE,IAAI,EAAE,kBAAkB,EAAE,EAAE,EAAE,qBAAqB,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAClJ;AACA,MAAM,qBAAqB,GAAgB,CAAC,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,kBAAkB,EAAE,EAAE,EAAE,qBAAqB,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AACrJ,MAAM,kBAAkB,GAAgB,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,kBAAkB,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AACzI,MAAM,eAAe,GAAgB,CAAC,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,kBAAkB,EAAE,EAAE,EAAE,sBAAsB,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAChJ,MAAM,mBAAmB,GAAgB,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,kBAAkB,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC1I,MAAM,oBAAoB,GAAgB,CAAC,EAAE,IAAI,EAAE,yBAAyB,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,oBAAoB,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAEjJ;AACA,MAAM,sBAAsB,GAAgB,CAAC,EAAE,IAAI,EAAE,4CAA4C,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC;AAClI,MAAM,yBAAyB,GAAgB,CAAC,EAAE,IAAI,EAAE,+CAA+C,EAAE,IAAI,EAAE,yBAAyB,EAAE,CAAC;AAC3I,MAAM,cAAc,GAAgB,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;AAC5F,MAAM,oBAAoB,GAAgB,CAAC,GAAG,cAAc,EAAE,GAAG,qBAAqB,EAAE,EAAE,IAAI,EAAE,gCAAgC,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC;AAEhK;AACA,MAAM,gBAAgB,GAAgB,CAAC,EAAE,IAAI,EAAE,6BAA6B,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;AACxG,MAAM,eAAe,GAAgB,CAAC,EAAE,IAAI,EAAE,4BAA4B,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;AACrG,MAAM,cAAc,GAAgB,CAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;AAClG,MAAM,cAAc,GAAgB,CAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;AAClG,MAAM,gBAAgB,GAAgB,CAAC,EAAE,IAAI,EAAE,6BAA6B,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;AACxG,MAAM,eAAe,GAAgB,CAAC,EAAE,IAAI,EAAE,4BAA4B,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;AACrG,MAAM,iBAAiB,GAAgB,CAAC,EAAE,IAAI,EAAE,8BAA8B,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;AAC3G,MAAM,gBAAgB,GAAgB;AAClC,IAAA,GAAG,cAAc;AACjB,IAAA,GAAG,oBAAoB;AACvB,IAAA,EAAE,IAAI,EAAE,6BAA6B,EAAE,IAAI,EAAE,qBAAqB,EAAE;AACpE,IAAA,EAAE,IAAI,EAAE,6BAA6B,EAAE,IAAI,EAAE,iBAAiB;CAAG;AACrE,MAAM,iBAAiB,GAAgB,CAAC,EAAE,IAAI,EAAE,8BAA8B,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;AAC3G,MAAM,eAAe,GAAgB,CAAC,EAAE,IAAI,EAAE,4BAA4B,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;AAErG;AACA,MAAM,iBAAiB,GAAgB,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;AAClG,MAAM,iBAAiB,GAAgB,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,8BAA8B,EAAE,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,2BAA2B,EAAE,CAAC;AAClL,MAAM,wBAAwB,GAAgB,CAAC,GAAG,iBAAiB,EAAE,EAAE,IAAI,EAAE,qCAAqC,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC;AACrJ,MAAM,mBAAmB,GAAgB,CAAC,EAAE,IAAI,EAAE,qCAAqC,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC;AACtH,MAAM,mBAAmB,GAAgB,CAAC,GAAG,iBAAiB,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC;AAC5H,MAAM,uBAAuB,GAAgB,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC;AAC7G,MAAM,4BAA4B,GAAgB,CAAC,EAAE,IAAI,EAAE,yCAAyC,EAAE,IAAI,EAAE,2BAA2B,EAAE,CAAC;AAC1I,MAAM,uBAAuB,GAAgB,CAAC,GAAG,4BAA4B,EAAE,EAAE,IAAI,EAAE,yCAAyC,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC;AAClK,MAAM,kBAAkB,GAAgB,CAAC,GAAG,iBAAiB,EAAE,EAAE,IAAI,EAAE,gCAAgC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;AACpI,MAAM,cAAc,GAAgB,CAAC,GAAG,kBAAkB,EAAE,EAAE,IAAI,EAAE,gCAAgC,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;AAC9H,MAAM,uBAAuB,GAAgB,CAAC,EAAE,IAAI,EAAE,kCAAkC,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC;AAC1H,MAAM,qBAAqB,GAAgB,CAAC,GAAG,iBAAiB,EAAE,EAAE,IAAI,EAAE,kCAAkC,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC;AAC5I,MAAM,gBAAgB,GAAgB,CAAC,GAAG,cAAc,EAAE,GAAG,uBAAuB,EAAE,GAAG,qBAAqB,EAAE,EAAE,IAAI,EAAE,kCAAkC,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;AACtL,MAAM,4BAA4B,GAAgB,CAAC,EAAE,IAAI,EAAE,uCAAuC,EAAE,IAAI,EAAE,2BAA2B,EAAE,CAAC;AACxI,MAAM,yBAAyB,GAAgB,CAAC,EAAE,IAAI,EAAE,uCAAuC,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC;AAClI,MAAM,qBAAqB,GAAgB,CAAC,GAAG,yBAAyB,EAAE,GAAG,4BAA4B,EAAE,EAAE,IAAI,EAAE,uCAAuC,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC;AAC1L,MAAM,eAAe,GAAgB,CAAC,GAAG,iBAAiB,EAAE,EAAE,IAAI,EAAE,iCAAiC,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;AAChI,MAAM,cAAc,GAAgB,CAAC,EAAE,IAAI,EAAE,gCAAgC,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;AACvG,MAAM,yBAAyB,GAAgB,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,yBAAyB,EAAE,CAAC;AAEjH;AACA,MAAM,sBAAsB,GAAgB,CAAC,EAAE,IAAI,EAAE,qCAAqC,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC;AAC3H,MAAM,wBAAwB,GAAgB,CAAC,EAAE,IAAI,EAAE,uCAAuC,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC;AACjI,MAAM,uBAAuB,GAAgB,CAAC,EAAE,IAAI,EAAE,sCAAsC,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;AACxH,MAAM,uBAAuB,GAAgB,CAAC,EAAE,IAAI,EAAE,sCAAsC,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC;AAC9H,MAAM,sBAAsB,GAAgB,CAAC,EAAE,IAAI,EAAE,qCAAqC,EAAE,IAAI,EAAE,sBAAsB,EAAE,EAAE,GAAG,uBAAuB,CAAC;AACvJ,MAAM,wBAAwB,GAAgB,CAAC,EAAE,IAAI,EAAE,uCAAuC,EAAE,IAAI,EAAE,wBAAwB,EAAE,EAAE,GAAG,mBAAmB,CAAC;AACzJ,MAAM,uBAAuB,GAAgB,CAAC,EAAE,IAAI,EAAE,wBAAwB,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC;AAEhH;AACA,MAAM,kBAAkB,GAAgB,CAAC,EAAE,IAAI,EAAE,gCAAgC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;AAC9G,MAAM,aAAa,GAAgB,CAAC,EAAE,IAAI,EAAE,gCAAgC,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC;AACrG,MAAM,4BAA4B,GAAgB,CAAC,EAAE,IAAI,EAAE,gCAAgC,EAAE,IAAI,EAAE,4BAA4B,EAAE,CAAC;AAClI,MAAM,4BAA4B,GAAgB,CAAC,EAAE,IAAI,EAAE,gCAAgC,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC;AAC7H,MAAM,uBAAuB,GAAgB,CAAC,EAAE,IAAI,EAAE,gCAAgC,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC,CAAC;AACzH,MAAM,cAAc,GAAgB,CAAC,GAAG,oBAAoB,EAAE,GAAG,uBAAuB,EAAE,GAAG,4BAA4B,EAAE,GAAG,4BAA4B,EAAE,GAAG,aAAa,EAAE,GAAG,kBAAkB,EAAE,EAAE,IAAI,EAAE,gCAAgC,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;AACvQ,MAAM,iBAAiB,GAAgB,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;AAClG,MAAM,qBAAqB,GAAgB,CAAC,GAAG,cAAc,EAAE,EAAE,IAAI,EAAE,sCAAsC,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC;AAC7I,MAAM,gBAAgB,GAAgB,CAAC,EAAE,IAAI,EAAE,kCAAkC,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;AAC7G,MAAM,iBAAiB,GAAgB,CAAC,GAAG,kBAAkB,EAAE,EAAE,IAAI,EAAE,mCAAmC,EAAE,IAAI,EAAE,kBAAkB,EAAE,EAAE,GAAG,mBAAmB,CAAC;AAC/J,MAAM,iBAAiB,GAAgB,CAAC,GAAG,iBAAiB,EAAE,EAAE,IAAI,EAAE,6BAA6B,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;AAE/H;AACA,MAAM,kBAAkB,GAAgB,CAAC,GAAG,cAAc,EAAE,GAAG,kBAAkB,EAAE,EAAE,IAAI,EAAE,+BAA+B,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC;AACxJ,MAAM,eAAe,GAAgB,CAAC,GAAG,gBAAgB,EAAE,EAAE,IAAI,EAAE,4BAA4B,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;AAC1H,MAAM,sBAAsB,GAAgB,CAAC,GAAG,cAAc,EAAE,GAAG,0BAA0B,EAAE,EAAE,IAAI,EAAE,mCAAmC,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC;AAC3K,MAAM,kBAAkB,GAAgB,CAAC,EAAE,IAAI,EAAE,+BAA+B,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC;AAC9G,MAAM,cAAc,GAAgB;AAChC,IAAA,GAAG,cAAc,EAAE,GAAG,kBAAkB,EAAE,GAAG,oBAAoB;AACjE,IAAA,EAAE,IAAI,EAAE,iCAAiC,EAAE,IAAI,EAAE,eAAe;CAAG;AACvE,MAAM,mBAAmB,GAAgB;IACrC,GAAG,cAAc,EAAE,GAAG,kBAAkB,EAAE,GAAG,eAAe,EAAE,GAAG,oBAAoB;AACrF,IAAA,EAAE,IAAI,EAAE,sCAAsC,EAAE,IAAI,EAAE,mBAAmB;CAAG;AAChF,MAAM,cAAc,GAAgB;IAChC,GAAG,cAAc,EAAE,GAAG,kBAAkB,EAAE,GAAG,eAAe,EAAE,GAAG,oBAAoB;AACrF,IAAA,EAAE,IAAI,EAAE,iCAAiC,EAAE,IAAI,EAAE,eAAe;CAAG;AACvE,MAAM,qBAAqB,GAAgB,CAAC,EAAE,IAAI,EAAE,kCAAkC,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC;AACtH,MAAM,gBAAgB,GAAgB,CAAC,EAAE,IAAI,EAAE,6BAA6B,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;AACxG,MAAM,gBAAgB,GAAgB,CAAC,GAAG,cAAc,EAAE,EAAE,IAAI,EAAE,6BAA6B,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;AAC3H,MAAM,gBAAgB,GAAgB,CAAC,GAAG,cAAc,EAAE,EAAE,IAAI,EAAE,6BAA6B,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;AAC3H,MAAM,sBAAsB,GAAgB,CAAC,GAAG,cAAc,EAAE,EAAE,IAAI,EAAE,mCAAmC,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC;AAC5I;AACA,MAAM,kBAAkB,GAAgB,CAAC,GAAG,cAAc,EAAE,EAAE,IAAI,EAAE,+BAA+B,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC;AACjI,MAAM,qBAAqB,GAAgB,CAAC,GAAG,cAAc,EAAE,EAAE,IAAI,EAAE,kCAAkC,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC;AAC1I;AACA,MAAM,gBAAgB,GAAgB,CAAC,GAAG,cAAc,EAAE,EAAE,IAAI,EAAE,6BAA6B,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;AAC3H,MAAM,kBAAkB,GAAgB,CAAC,GAAG,cAAc,EAAE,EAAE,IAAI,EAAE,+BAA+B,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC;AACjI,MAAM,gBAAgB,GAAgB,CAAC,GAAG,cAAc,EAAE,EAAE,IAAI,EAAE,6BAA6B,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;AAC3H,MAAM,gBAAgB,GAAgB,CAAC,GAAG,cAAc,EAAE,EAAE,IAAI,EAAE,6BAA6B,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;AAC3H,MAAM,wBAAwB,GAAgB,CAAC,GAAG,cAAc,EAAE,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC;AACxI,MAAM,qBAAqB,GAAgB,CAAC,GAAG,cAAc,EAAE,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC;AAClI,MAAM,qBAAqB,GAAgB,CAAC,GAAG,cAAc,EAAE,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC;AAClI,MAAM,sBAAsB,GAAgB,CAAC,GAAG,cAAc,EAAE,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC;AACpI,MAAM,oBAAoB,GAAgB,CAAC,GAAG,cAAc,EAAE,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC;AAChI,MAAM,kBAAkB,GAAgB,CAAC,GAAG,cAAc,EAAE,EAAE,IAAI,EAAE,+BAA+B,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC;AAEjI;AACA,MAAM,sBAAsB,GAAgB,CAAC,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC;AAChH,MAAM,sBAAsB,GAAgB,CAAC,GAAG,iBAAiB,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC;AACtI,MAAM,qBAAqB,GAAgB,CAAC,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC;AAC9G,MAAM,cAAc,GAAgB;AAChC,IAAA,GAAG,oBAAoB;AACvB,IAAA,GAAG,cAAc;AACjB,IAAA,GAAG,sBAAsB;AACzB,IAAA,GAAG,sBAAsB;AACzB,IAAA,GAAG,qBAAqB;AACxB,IAAA,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,eAAe;CAAG;AAChE,MAAM,mBAAmB,GAAgB,CAAC,GAAG,oBAAoB,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC;AACnI,MAAM,cAAc,GAAgB,CAAC,GAAG,oBAAoB,EAAE,GAAG,mBAAmB,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;AAClJ,MAAM,mBAAmB,GAAgB,CAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC;AAC3G,MAAM,2BAA2B,GAAgB,CAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,0BAA0B,EAAE,CAAC;AAC1H,MAAM,sBAAsB,GAAgB,CAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC;AACjH,MAAM,sBAAsB,GAAgB,CAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC;AACjH,MAAM,4BAA4B,GAAgB,CAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,2BAA2B,EAAE,CAAC;AAC5H,MAAM,mBAAmB,GAAgB,CAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,mBAAmB,EAAE,EAAE,GAAG,mBAAmB,EAAE,GAAG,iBAAiB,CAAC;AACzJ,MAAM,0BAA0B,GAAgB,CAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,yBAAyB,EAAE,EAAE,GAAG,gBAAgB,EAAE,GAAG,gBAAgB,CAAC;AAClK,MAAM,eAAe,GAAgB;AACjC,IAAA,GAAG,cAAc;AACjB,IAAA,GAAG,uBAAuB;AAC1B,IAAA,GAAG,oBAAoB;AACvB,IAAA,GAAG,cAAc;AACjB,IAAA,GAAG,mBAAmB;AACtB,IAAA,GAAG,cAAc;AACjB,IAAA,GAAG,sBAAsB;AACzB,IAAA,GAAG,mBAAmB;AACtB,IAAA,GAAG,2BAA2B;AAC9B,IAAA,GAAG,sBAAsB;AACzB,IAAA,GAAG,4BAA4B;AAC/B,IAAA,GAAG,mBAAmB;AACtB,IAAA,GAAG,0BAA0B;AAC7B,IAAA,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,gBAAgB;CAAG;AAClE,MAAM,oBAAoB,GAAgB,CAAC,EAAE,IAAI,EAAE,gCAAgC,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC;AAElH;AACA,MAAM,qBAAqB,GAAgB,CAAC,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC;AAC9G,MAAM,qBAAqB,GAAgB,CAAC,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC;AAC9G,MAAM,oBAAoB,GAAgB,CAAC,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC;AAC5G,MAAM,qBAAqB,GAAgB,CAAC,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC;AAC/G,MAAM,oBAAoB,GAAgB,CAAC,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC;AAC5G,MAAM,qBAAqB,GAAgB,CAAC,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC;AAC9G,MAAM,mBAAmB,GAAgB,CAAC,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC;AAC1G,MAAM,0BAA0B,GAAgB,CAAC,EAAE,IAAI,EAAE,uCAAuC,EAAE,IAAI,EAAE,0BAA0B,EAAC,CAAC;AACpI,MAAM,cAAc,GAAgB;AAChC,IAAA,GAAG,cAAc;AACjB,IAAA,GAAG,uBAAuB;AAC1B,IAAA,GAAG,qBAAqB;AACxB,IAAA,GAAG,qBAAqB;AACxB,IAAA,GAAG,oBAAoB;AACvB,IAAA,GAAG,qBAAqB;AACxB,IAAA,GAAG,oBAAoB;AACvB,IAAA,GAAG,qBAAqB;AACxB,IAAA,GAAG,mBAAmB;AACtB,IAAA,GAAG,0BAA0B;AAC7B,IAAA,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,eAAe;CAAG;AAChE,MAAM,mBAAmB,GAAG,CAAC,EAAE,IAAI,EAAE,gCAAgC,EAAE,IAAI,EAAE,oBAAoB,EAAE,EAAE,EAAE,IAAI,EAAE,uCAAuC,EAAE,IAAI,EAAE,0BAA0B,EAAE,CAAC;AAEzL;AACA,MAAM,gBAAgB,GAAgB,CAAC,GAAG,iBAAiB,EAAE,EAAE,IAAI,EAAE,4BAA4B,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;AAC7H,MAAM,gBAAgB,GAAgB,CAAC,GAAG,iBAAiB,EAAE,EAAE,IAAI,EAAE,4BAA4B,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;AAC7H,MAAM,oBAAoB,GAAgB,CAAC,GAAG,iBAAiB,EAAE,EAAE,IAAI,EAAE,gCAAgC,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC;AACxI,MAAM,qBAAqB,GAAgB,CAAC,GAAG,iBAAiB,EAAE,EAAE,IAAI,EAAE,iCAAiC,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC;AAC3I,MAAM,sBAAsB,GAAgB,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC;AAC3G,MAAM,kBAAkB,GAAgB,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;AACnG,MAAM,gBAAgB,GAAgB,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;AAChG,MAAM,iBAAiB,GAAgB,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;AAElG;AACA,MAAM,2BAA2B,GAAgB,CAAC,GAAG,mBAAmB,EAAE,EAAE,IAAI,EAAE,kCAAkC,EAAE,IAAI,EAAE,2BAA2B,EAAE,CAAC;AAC1J,MAAM,kBAAkB,GAAgB,CAAC,GAAG,mBAAmB,EAAE,GAAG,2BAA2B,EAAE,EAAE,IAAI,EAAE,kCAAkC,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC;AACzK,MAAM,eAAe,GAAgB,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,gBAAgB,EAAE,EAAE,EAAC,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,qBAAqB,EAAC,CAAC;AAC3J,MAAM,iCAAiC,GAAgB,CAAC,EAAE,IAAI,EAAE,gCAAgC,EAAE,IAAI,EAAE,gCAAgC,EAAE,CAAC;AAC3I,MAAM,uBAAuB,GAAgB,CAAC,GAAG,iCAAiC,EAAE,EAAE,IAAI,EAAE,gCAAgC,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC;AAC9J,MAAM,eAAe,GAAgB,CAAC,EAAE,IAAI,EAAE,+BAA+B,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;AACxG,MAAM,iBAAiB,GAAgB,CAAC,EAAE,IAAI,EAAE,iCAAiC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;AAC9G,MAAM,0BAA0B,GAAgB,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,0BAA0B,EAAE,CAAC;AACrH,MAAM,gBAAgB,GAAgB,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;AAClG,MAAM,0BAA0B,GAAgB,CAAC,EAAE,IAAI,EAAE,uCAAuC,EAAE,IAAI,EAAE,yBAAyB,EAAE,CAAC;AACpI,MAAM,cAAc,GAAgB,CAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;AAClG,MAAM,qBAAqB,GAAG,CAAC,EAAC,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,sBAAsB,EAAC,CAAC;AACxF,MAAM,wBAAwB,GAAgB,CAAC,EAAC,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,uBAAuB,EAAC,CAAC;AAC5G,MAAM,mBAAmB,GAAgB,CAAC,EAAC,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,mBAAmB,EAAC,CAAC;AACnG;AACA,MAAM,YAAY,GAAgB,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;AACvF,MAAM,gBAAgB,GAAgB,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;AAC/F,MAAM,qBAAqB,GAAgB,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC;AACxG,MAAM,qBAAqB,GAAgB,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC;AACxG,MAAM,kBAAkB,GAAgB,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;AAClG,MAAM,WAAW,GAAgB,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;AACtF,MAAM,WAAW,GAAgB,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;AACtF,MAAM,WAAW,GAAgB,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;AAE/E,MAAM,cAAc,GAA6B,IAAI,GAAG,CAAC;IAC5D,CAAC,cAAc,EAAE,mBAAmB,CAAC;IACrC,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;IAC9C,CAAC,WAAW,EAAE,gBAAgB,CAAC;IAC/B,CAAC,gBAAgB,EAAE,sBAAsB,CAAC;IAC1C,CAAC,UAAU,EAAE,eAAe,CAAC;IAC7B,CAAC,WAAW,EAAE,gBAAgB,CAAC;IAC/B,CAAC,gBAAgB,EAAE,sBAAsB,CAAC;IAC1C,CAAC,eAAe,EAAE,qBAAqB,CAAC;IACxC,CAAC,aAAa,EAAE,kBAAkB,CAAC;IACnC,CAAC,SAAS,EAAE,cAAc,CAAC;IAC3B,CAAC,iBAAiB,EAAE,sBAAsB,CAAC;IAC3C,CAAC,iBAAiB,EAAE,sBAAsB,CAAC;IAC3C,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;IACzC,CAAC,aAAa,EAAE,kBAAkB,CAAC;IACnC,CAAC,qBAAqB,EAAE,2BAA2B,CAAC;IACpD,CAAC,sBAAsB,EAAE,2BAA2B,CAAC;IACrD,CAAC,UAAU,EAAE,eAAe,CAAC;IAC7B,CAAC,aAAa,EAAE,kBAAkB,CAAC;IACnC,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;IACzC,CAAC,UAAU,EAAE,eAAe,CAAC;IAC7B,CAAC,gBAAgB,EAAE,sBAAsB,CAAC;IAC1C,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;IAC9C,CAAC,cAAc,EAAE,mBAAmB,CAAC;IACrC,CAAC,UAAU,EAAE,uBAAuB,CAAC;IACrC,CAAC,YAAY,EAAE,iBAAiB,CAAC;IACjC,CAAC,aAAa,EAAE,kBAAkB,CAAC;IACnC,CAAC,SAAS,EAAE,cAAc,CAAC;IAC3B,CAAC,aAAa,EAAE,mBAAmB,CAAC;IACpC,CAAC,WAAW,EAAE,uBAAuB,CAAC;IACtC,CAAC,kBAAkB,EAAE,uBAAuB,CAAC;IAC7C,CAAC,WAAW,EAAE,gBAAgB,CAAC;IAC/B,CAAC,SAAS,EAAE,cAAc,CAAC;IAC3B,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;IACzC,CAAC,eAAe,EAAE,oBAAoB,CAAC;IACvC,CAAC,iBAAiB,EAAE,qBAAqB,CAAC;IAC1C,CAAC,eAAe,EAAE,qBAAqB,CAAC;IACxC,CAAC,YAAY,EAAE,yBAAyB,CAAC;IACzC,CAAC,eAAe,EAAE,4BAA4B,CAAC;IAC/C,CAAC,WAAW,EAAE,gBAAgB,CAAC;IAC/B,CAAC,SAAS,EAAE,cAAc,CAAC;IAC3B,CAAC,SAAS,EAAE,cAAc,CAAC;IAC3B,CAAC,WAAW,EAAE,gBAAgB,CAAC;IAC/B,CAAC,iBAAiB,EAAE,uBAAuB,CAAC;IAC5C,CAAC,UAAU,EAAE,eAAe,CAAC;IAC7B,CAAC,WAAW,EAAE,gBAAgB,CAAC;IAC/B,CAAC,eAAe,EAAE,qBAAqB,CAAC;IACxC,CAAC,eAAe,EAAE,oBAAoB,CAAC;IACvC,CAAC,iBAAiB,EAAE,uBAAuB,CAAC;IAC5C,CAAC,qBAAqB,EAAE,4BAA4B,CAAC;IACrD,CAAC,SAAS,EAAE,cAAc,CAAC;IAC3B,CAAC,cAAc,EAAE,oBAAoB,CAAC;IACtC,CAAC,UAAU,EAAE,eAAe,CAAC;IAC7B,CAAC,WAAW,EAAE,uBAAuB,CAAC;IACtC,CAAC,kBAAkB,EAAE,uBAAuB,CAAC;IAC7C,CAAC,gBAAgB,EAAE,sBAAsB,CAAC;IAC1C,CAAC,YAAY,EAAE,iBAAiB,CAAC;IACjC,CAAC,SAAS,EAAE,cAAc,CAAC;IAC3B,CAAC,YAAY,EAAE,iBAAiB,CAAC;IACjC,CAAC,QAAQ,EAAE,aAAa,CAAC;IACzB,CAAC,WAAW,EAAE,gBAAgB,CAAC;IAC/B,CAAC,aAAa,EAAE,kBAAkB,CAAC;IACnC,CAAC,WAAW,EAAE,gBAAgB,CAAC;IAC/B,CAAC,YAAY,EAAE,iBAAiB,CAAC;IACjC,CAAC,SAAS,EAAE,cAAc,CAAC;IAC3B,CAAC,iBAAiB,EAAE,sBAAsB,CAAC;IAC3C,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IACxC,CAAC,eAAe,EAAE,wBAAwB,CAAC;IAC3C,CAAC,eAAe,EAAE,oBAAoB,CAAC;IACvC,CAAC,UAAU,EAAE,eAAe,CAAC;IAC7B,CAAC,iBAAiB,EAAE,eAAe,CAAC;IACpC,CAAC,YAAY,EAAE,iBAAiB,CAAC;IACjC,CAAC,YAAY,EAAE,iBAAiB,CAAC;IACjC,CAAC,iBAAiB,EAAE,sBAAsB,CAAC;IAC3C,CAAC,WAAW,EAAE,gBAAgB,CAAC;IAC/B,CAAC,qBAAqB,EAAE,0BAA0B,CAAC;IACnD,CAAC,oBAAoB,EAAE,yBAAyB,CAAC;IACjD,CAAC,aAAa,EAAE,kBAAkB,CAAC;IACnC,CAAC,WAAW,EAAE,gBAAgB,CAAC;IAC/B,CAAC,mBAAmB,EAAE,0BAA0B,CAAC;IACjD,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;IACzC,CAAC,WAAW,EAAE,gBAAgB,CAAC;IAC/B,CAAC,WAAW,EAAE,gBAAgB,CAAC;IAC/B,CAAC,WAAW,EAAE,gBAAgB,CAAC;IAC/B,CAAC,YAAY,EAAE,iBAAiB,CAAC;IACjC,CAAC,WAAW,EAAE,gBAAgB,CAAC;IAC/B,CAAC,UAAU,EAAE,eAAe,CAAC;IAC7B,CAAC,SAAS,EAAE,cAAc,CAAC;IAC3B,CAAC,YAAY,EAAE,kBAAkB,CAAC;AAClC,IAAA,CAAC,SAAS,EAAE,CAAC,GAAG,oBAAoB,EAAE,GAAG,wBAAwB,EAAE,GAAG,qBAAqB,EAAE,GAAG,qBAAqB,EAAE,GAAG,sBAAsB,CAAC,CAAC;IAClJ,CAAC,aAAa,EAAE,kBAAkB,CAAC;IACnC,CAAC,SAAS,EAAE,cAAc,CAAC;IAC3B,CAAC,SAAS,EAAE,cAAc,CAAC;IAC3B,CAAC,YAAY,EAAE,iBAAiB,CAAC;IACjC,CAAC,SAAS,EAAE,cAAc,CAAC;IAC3B,CAAC,UAAU,EAAE,eAAe,CAAC;IAC7B,CAAC,WAAW,EAAE,gBAAgB,CAAC;IAC/B,CAAC,eAAe,EAAE,gBAAgB,CAAC;IACnC,CAAC,oBAAoB,EAAE,yBAAyB,CAAC;IACjD,CAAC,cAAc,EAAE,mBAAmB,CAAC;IACrC,CAAC,aAAa,EAAE,qBAAqB,CAAC;IACtC,CAAC,cAAc,EAAE,wBAAwB,CAAC;IAC1C,CAAC,UAAU,EAAE,mBAAmB,CAAC;IAEjC,CAAC,QAAQ,EAAE,YAAY,CAAC;IACxB,CAAC,YAAY,EAAE,gBAAgB,CAAC;IAChC,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;IACzC,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;IACzC,CAAC,aAAa,EAAE,kBAAkB,CAAC;IACnC,CAAC,QAAQ,EAAE,WAAW,CAAC;IACvB,CAAC,QAAQ,EAAE,WAAW,CAAC;IACvB,CAAC,QAAQ,EAAE,WAAW,CAAC;AAC1B,CAAA;;AChUD,MAAM,SAAS,GAAG;AACd,IAAA,eAAe,EAAG,0BAA0B;AAC5C,IAAA,eAAe,EAAG,cAAc;AAChC,IAAA,uBAAuB,EAAG;CAC7B;AAED,MAAM,QAAQ,GAAG,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ;AAO3C,MAAM,SAAS,GAAG;AACd,IAAA,aAAa,EAAE,cAAc;AAC7B,IAAA,OAAO,EAAE,OAAO;AAChB,IAAA,cAAc,EAAE,iBAAiB;AACjC,IAAA,UAAU,EAAE,WAAW;AACvB,IAAA,eAAe,EAAE,WAAW;AAC5B,IAAA,aAAa,EAAE,KAAK;AACpB,IAAA,QAAQ,EAAE,KAAK;AACf,IAAA,cAAc,EAAE,MAAM;AACtB,IAAA,SAAS,EAAE,MAAM;AACjB,IAAA,aAAa,EAAE,UAAU;AACzB,IAAA,kBAAkB,EAAE,UAAU;AAC9B,IAAA,UAAU,EAAE;CACf;AAED,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;AAEjC,MAAM,cAAc,GAAG,CAAC,KAAa,KAAI;IAC5C,IAAI,CAAC,KAAK,EAAE;AACR,QAAA,OAAO,IAAI;IACf;AAEA,IAAA,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE;AACpB,IAAA,IAAI,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;AAC3B,QAAA,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1B;AACJ;AAEA,MAAM,SAAS,GAAG,CAAC,IAAG;AAClB,IAAA,OAAO,CAAC,EAAE,GAAG,CAAC;AACT,SAAA,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;AACtB,SAAA,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;AACvB,SAAA,OAAO,CAAC,IAAI,EAAE,QAAQ;AACtB,SAAA,OAAO,CAAC,IAAI,EAAE,MAAM;AACpB,SAAA,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;AAC9B,CAAC;AAED,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAe;AACvC,MAAM,UAAU,GAAG,IAAI,UAAU,EAAE;AACnC,MAAM,cAAc,GAAG,IAAI;AAE3B,MAAM,KAAK,GAAG,MAAM,EAAE;AAEtB,MAAM,OAAO,GAAG,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG;AAE7E,MAAM,YAAY,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;AAEzC,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,CAAA,KAAA,CAAO,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;AAE7E,MAAM,YAAY,GAAG,IAAI,IAAG;IACxB,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;IACvC,OAAO,CAAC,GAAG,OAAO,CAAA,MAAA,CAAQ,EAAE,IAAI,CAAC,KAAK,CAAC;AAC3C,CAAC;AAED;;;AAGG;AACH,MAAM,YAAY,GAAG,CAAC,GAAW,KAAI;AACjC,IAAA,OAAO,SAAS,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,QAAQ;AACvF,CAAC;AACD,MAAM,UAAU,GAAG,SAAS;AAE5B,MAAM,WAAW,GAAG,IAAI,IAAG;IACvB,IAAI,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;AACrC,IAAA,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,GAAG,SAAS;IAErD,IAAI,UAAU,EAAE;AACZ;;;;AAIG;AACH,QAAA,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,EAAE;AAC7D,YAAA,OAAO,CAAC,UAAU,EAAE,IAAI,KAAK,CAAA,CAAA,CAAG,CAAC;QACrC;QACA,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;IACzC;AAEA,IAAA,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;AACpB,QAAA,OAAO,YAAY,CAAC,IAAI,CAAC;IAC7B;IAEA,MAAM,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC;IAC5C,IAAI,SAAS,EAAE;AACX,QAAA,OAAO,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC;IAC1C;IAEA,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;AACxC,CAAC;AAEM,MAAM,aAAa,GAAG,CAAC,WAAmB,KAAY;IACzD,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC;AACpC,IAAA,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,WAAW,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE;QACpD,OAAO,CAAA,EAAG,KAAK,CAAC,CAAC,CAAC,CAAA,CAAA,EAAI,KAAK,CAAC,CAAC,CAAC,CAAA,CAAE;IACpC;IACA,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,YAAY,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,WAAW,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE;AACzF,QAAA,OAAO,4BAA4B,KAAK,CAAC,CAAC,CAAC,EAAE;IACjD;AACJ;AAEA,MAAM,gBAAgB,GAAG,CAAC,MAAK;AAC3B,IAAA,MAAM,UAAU,GAAG,IAAI,GAAG,EAAE;AAC5B,IAAA,MAAM,eAAe,GAAG;QACpB,CAAA,QAAA;KACH;IACD,OAAO;QACH,GAAG,EAAE,KAAK,IAAG;YACT,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,KAAI;AACvB,gBAAA,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AAC/D,YAAA,CAAC,CAAC;QACN,CAAC;QACD,GAAG,EAAE,KAAK,IAAG;AACT,YAAA,MAAM,SAAS,GAAG,IAAI,GAAG,EAAE;YAC3B,UAAU,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,KAAI;AAC5B,gBAAA,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC;AAC9C,YAAA,CAAC,CAAC;AACF,YAAA,OAAO,SAAS;QACpB,CAAC;QACD,KAAK,EAAE,MAAK;YACR,UAAU,CAAC,KAAK,EAAE;QACtB;KACH;AACL,CAAC,GAAG;AACG,MAAM,aAAa,GAAG,KAAK,IAAG;AACjC,IAAA,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC;AAC3B,IAAA,OAAO,EAAE;AACb;AACO,MAAM,aAAa,GAAG,KAAK,IAAG;IACjC,OAAO,aAAa,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACrD;AACO,MAAM,eAAe,GAAG,MAAK;IAChC,gBAAgB,CAAC,KAAK,EAAE;AACxB,IAAA,OAAO,EAAE;AACb;AACO,MAAM,iBAAiB,GAAG,KAAK,IAAG;AACrC,IAAA,IAAI,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE;QAC7B,MAAM,kBAAkB,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;AACrE,QAAA,KAAK,CAAC,GAAG,CAAC,sBAAsB,EAAE,kBAAkB,CAAC;IACzD;AACA,IAAA,OAAO,aAAa,CAAC,KAAK,CAAC;AAC/B;AAEA,MAAM,UAAU,GAAG,KAAK,IAAG;AACvB,IAAA,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB;AACzC,IAAA,KAAK,CAAC,OAAO,CAAC,IAAI,IAAG;QACjB,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC;AAC7C,QAAA,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC;AACpC,IAAA,CAAC,CAAC;AAEF,IAAA,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE;QAC7B,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC7D,IAAI,UAAU,EAAE;AACZ,YAAA,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,UAAU,CAAC;QAC9C;IACJ;AAEA,IAAA,OAAO,OAAO;AAClB,CAAC;AAEM,MAAM,aAAa,GAAG,CAAC,KAA0B,KAAI;IACxD,IAAI,UAAU,GAAG,EAAE;IACnB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAI;AACnB,QAAA,UAAU,IAAI,CAAA,CAAA,EAAI,CAAC,CAAA,CAAE;QACrB,IAAI,CAAC,EAAE;AACH,YAAA,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE;YACZ,IAAI,CAAC,KAAK,WAAW,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;gBACxC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA,CAAA,CAAG,CAAC;YAC5B;AACA,YAAA,IAAI,CAAC,KAAK,WAAW,IAAI,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,MAAM,EAAE;gBACxD,CAAC,GAAG,CAAC,GAAG,CAAA,aAAA,EAAgB,YAAY,CAAC,CAAC,CAAC,CAAA,CAAE;YAC7C;AACA,YAAA,UAAU,IAAI,CAAA,EAAA,EAAK,CAAC,CAAA,CAAA,CAAG;QAC3B;AACJ,IAAA,CAAC,CAAC;AAEF,IAAA,OAAO,UAAU;AACrB;AAEA,MAAM,oBAAoB,GAAG,CAAC,OAAsB,EAAE,SAA+B,EAAE,SAAS,KAAI;AAChG,IAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE;AACnB,QAAA,OAAO,EAAE;IACb;AAEA,IAAA,IAAI,QAAQ,GAAG,OAAO,CAAC,QAAe;AAEtC,IAAA,IAAI,QAAQ,CAAC,QAAQ,CAAC,EAAE;AACpB,QAAA,QAAQ,GAAG,CAAC,QAAQ,CAAC;IACzB;IAEA,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;AAC1B,QAAA,OAAO,EAAE;IACb;AAEA,IAAA,OAAO,QAAQ,CAAC,GAAG,CAAC,OAAO,IAAG;;AAE1B,QAAA,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAG;YAC7C,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,EAAE;gBACnC,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YACtC;QACJ;AAEA,QAAA,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAG;YAC7C,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,EAAE;AACnC,gBAAA,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO;YAC/B;QACJ;AACJ,IAAA,CAAC,CAAC;AACN,CAAC;AAED,MAAM,eAAe,GAAG,CAAC,SAAS,EAAE,aAAa,EAAE,QAAQ,CAAC;AAE5D,MAAM,SAAS,GAAG,GAAG,EAAE,KAAK,GAAG,OAAO;AAEtC,MAAM,gBAAgB,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,KAAI;AACzC,IAAA,IAAI,MAAM,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,EAAE;AAE5D,IAAA,SAAS,MAAM,CAAC,IAAI,EAAE,KAAK,EAAA;;AAEvB,QAAA,IAAI,KAAK,KAAK,KAAK,EAAE;YACjB,KAAK,GAAG,EAAE;QACd;QACA,MAAM,CAAC,MAAM,GAAG,IAAI,GAAG,MAAM,CAAC,GAAG,KAAK;IAC1C;AAEA,IAAA,IAAI,GAAG,KAAK,aAAa,EAAE;QACvB,MAAM,GAAI,OAAO;QACjB,MAAM,GAAG,QAAQ;IACrB;IAEA,GAAG,GAAG,EAAE;IAER,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE;AAC3B,QAAA,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC;AAE1B,QAAA,GAAG,GAAM,GAAG,CAAC,CAAC,CAAC;QACf,KAAK,GAAI,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;QACzB,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;AACzB,QAAA,IAAI,GAAK,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;AAEnC,QAAA,MAAM,CAAC,KAAK,EAAK,GAAG,CAAC;AACrB,QAAA,MAAM,CAAC,OAAO,EAAG,KAAK,CAAC;AACvB,QAAA,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC;AACxB,QAAA,MAAM,CAAC,MAAM,EAAI,IAAI,CAAC;IAC1B;SAAO;AACH,QAAA,IAAI,GAAG,KAAK,aAAa,EAAE;YACvB,MAAM,GAAG,aAAa;QAC1B;AACA,QAAA,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE;IACvB;AACJ,CAAC;AAED,MAAM,0BAA0B,GAAG,OAAO,IAAG;IACzC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;AAC3C,IAAA,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAY,KAAI;AAC9B,QAAA,IAAI,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;AACnC,YAAA,MAAM,MAAM,GAAG,EAAE,EACb,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;AACpC,YAAA,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;AACvB,YAAA,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC;YAC5C,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,IAAG;AAC9B,gBAAA,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE;oBACb,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;gBACjC;AACJ,YAAA,CAAC,CAAC;QACN;AACJ,IAAA,CAAC,CAAC;AACN,CAAC;AAED;AACA,MAAM,WAAW,GAAG,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC;AAE7E,MAAM,WAAW,GAAG,CAAC,IAAI,EAAE,eAAyC,EAAE,SAAgC,KAAI;IAC7G,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;AAEvC,IAAA,IAAI,GAAG,EAAE,IAAI,EAAE,QAAQ;IAEvB,IAAI,OAAO,EAAE;AACT,QAAA,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,KAAK;AAC1B,QAAA,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,KAAK;AAC5B,QAAA,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,KAAK;IACxC;IAEA,IAAI,MAAM,GAAG,EAAE;AACf,IAAA,IAAI,OAAO;AACX,IAAA,IAAI,iBAAiB;AACrB,IAAA,IAAI,MAAM;IAEV,IAAI,CAAC,SAAS,EAAE;QACZ,SAAS,GAAG,EAAE;IAClB;AAEA,IAAA,MAAM,aAAa,GAAG,IAAI,YAAY,OAAO;IAE7C,IAAI,aAAa,EAAE;AACf,QAAA,IAAI,WAA0B;QAE9B,IAAI,OAAO,EAAE;YACT,iBAAiB,GAAG,oBAAoB,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC;AACxE,YAAA,MAAM,GAAG,IAAI,GAAG,EAAE;YAClB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,iBAAiB,CAAC;QAChD;AAEA,QAAA,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;QAChC,0BAA0B,CAAC,OAAO,CAAC;QAEnC,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;QAEvC,IAAI,OAAO,EAAE;YACT,MAAM,GAAS,GAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,iBAAiB,CAAC;AAC1D,YAAA,IAAI,OAAO,CAAC,OAAO,EAAE;AACjB,gBAAA,WAAW,GAAG;oBACV,QAAQ,EAAE,IAAI,CAAC,IAAI;oBACnB,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,iBAAiB,CAAC,GAAG,OAAO,CAAC;iBAC3G;;AAED,gBAAA,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE;oBAC1B,MAAM,gBAAgB,GAAG,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC;AACxD,oBAAA,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,GAAG,WAAW,CAAC,OAAO;AACvI,oBAAA,QAAQ,CAAC,GAAG,CAAC,iBAAiB,EAAE,gBAAgB,CAAC;gBACrD;AACA,gBAAA,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC;YAC/B;QACJ;aAAO;YACH,MAAM,GAAG,IAAI,QAAQ,CAAA,CAAA,EAAI,aAAa,CAAC,OAAO,CAAC,CAAA,CAAA,CAAG;QACtD;QAEA,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAiB,KAAI;AACxC,YAAA,IAAG,KAAK,CAAC,KAAK,EAAE;AACZ,gBAAA,IAAI,gBAAgB,EAAE,eAAe,EAAE,aAAa,EAAE,QAAQ;AAC9D,gBAAA,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,UAAS,IAAI,EAAA;AAC7B,oBAAA,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,EAAE;wBAC9B,gBAAgB,GAAG,IAAI;wBACvB,eAAe,CAAC,cAAc,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;oBACvD;AAAO,yBAAA,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,EAAE;wBACpC,eAAe,GAAG,IAAI;wBACtB,eAAe,CAAC,cAAc,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;oBACtD;AAAO,yBAAA,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE;wBAClC,aAAa,GAAG,IAAI;wBACpB,eAAe,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;oBACnD;AAAO,yBAAA,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE;wBAC7B,QAAQ,GAAG,IAAI;oBACnB;AACJ,gBAAA,CAAC,CAAC;AACF,gBAAA,IAAG,CAAC,gBAAgB,IAAI,eAAe,MAAM,gBAAgB,IAAI,aAAa,CAAC,KAAK,eAAe,IAAI,aAAa,CAAC,EAAE;AACnH;;AAEK;oBACL,MAAM,MAAM,GAAI,EAAsB;oBACtC,MAAM,qBAAqB,GAAO,gBAAgB,GAAG,IAAI,OAAO,CAAC,cAAc,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE;oBACrH,MAAM,oBAAoB,GAAO,eAAe,GAAG,IAAI,OAAO,CAAC,cAAc,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE;oBACnH,MAAM,kBAAkB,GAAO,aAAa,GAAG,IAAI,OAAO,CAAC,cAAc,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE;oBAC/G,IAAI,qBAAqB,EAAE;AACvB,wBAAA,qBAAqB,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC;oBACtD;oBACA,IAAI,oBAAoB,EAAE;AACtB,wBAAA,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC;oBACpD;oBACA,IAAI,kBAAkB,EAAE;AACpB,wBAAA,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC;wBAC5C,IAAI,QAAQ,EAAE;AACV,4BAAA,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;wBAC3C;oBACJ;AACA,oBAAA,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,UAAU,IAAI,EAAA;;AAE9B,wBAAA,OAAO,IAAI,CAAC,IAAI,KAAK,cAAc,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW;AACnG,oBAAA,CAAC,CAAC;oBACF,IAAI,cAAc,EAAE,eAAe;AACnC,oBAAA,IAAI,gBAAgB,IAAI,eAAe,EAAE;wBACrC,cAAc,GAAG,qBAAqB;wBACtC,eAAe,GAAG,oBAAoB;oBAC1C;AAAO,yBAAA,IAAI,gBAAgB,IAAI,aAAa,EAAE;wBAC1C,cAAc,GAAG,qBAAqB;wBACtC,eAAe,GAAG,kBAAkB;oBACxC;AAAO,yBAAA,IAAI,eAAe,IAAI,aAAa,EAAE;wBACzC,cAAc,GAAG,kBAAkB;wBACnC,eAAe,GAAG,oBAAoB;oBAC1C;;AAEA,oBAAA,cAAc,CAAC,QAAQ,GAAG,CAAC,KAAK,CAAC;AACjC,oBAAA,eAAe,CAAC,QAAQ,GAAG,CAAC,cAAc,CAAC;;AAE3C,oBAAA,IAAI,gBAAgB,IAAI,eAAe,IAAI,aAAa,EAAE;wBACtD,MAAM,oBAAoB,GAAG,kBAAkB;AAC/C,wBAAA,oBAAoB,CAAC,QAAQ,GAAG,CAAC,eAAe,CAAC;wBACjD,KAAK,GAAG,oBAAoB;oBAChC;yBAAO;wBACH,KAAK,GAAG,eAAe;oBAC3B;gBAEJ;YACJ;YACA,OAAO,MAAM,IAAI,WAAW,CAAC,KAAK,EAAE,eAAe,EAAE,SAAS,CAAC;AACnE,QAAA,CAAC,CAAC;QAEF,IAAI,OAAO,EAAE;YACT,IAAI,WAAW,EAAE;AACb,gBAAA,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YACvD;YACA,MAAM,IAAU,IAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,iBAAiB,CAAC;QAChE;aAAO;AACH,YAAA,IAAI,IAAI,CAAC,aAAa,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE;AAC/D,gBAAA,MAAM,IAAI,CAAA,EAAA,EAAK,QAAQ,CAAA,CAAA,CAAG;YAC9B;QACJ;IACJ;AAAO,SAAA,IAAI,IAAI,YAAY,IAAI,EAAE;AAC7B,QAAA,MAAM,IAAI,IAAI,CAAC,KAAK;IACxB;AAAO,SAAA,IAAI,IAAI,YAAY,OAAO,EAAE;QAChC,IAAI,CAAC,cAAc,EAAE;AACjB,YAAA,MAAM,IAAI,IAAI,CAAC,KAAK;QACxB;IACJ;IACA,eAAe,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC9C,IAAA,IAAI,OAAO,IAAI,OAAO,CAAC,OAAO,EAAE;QAC5B,IAAI,OAAO,GAAG,EAAE;AAChB,QAAA,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,UAAU,EAAE;AACvC,YAAA,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC;QACtC;aAAO;AACH,YAAA,OAAO,GAAG,OAAO,CAAC,OAAO;QAC7B;AACA,QAAA,OAAO,CAAC,OAAO,CAAE,CAAC,IAAG;YACjB,eAAe,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAC1C,QAAA,CAAC,CAAC;IACN;AACA,IAAA,OAAO,MAAM;AACjB;MAEa,SAAS,GAAG,CAAC,MAAA,GAAiB,EAAE,KAAI;AAC7C,IAAA,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;QAChB;IACJ;IACA,IAAI,oBAAoB,GAAG,EAAE;IAC7B,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;AAE1C,IAAA,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE;QACrB;IACJ;IAEA,IAAI,MAAM,GAAG,EAAE;AACf,IAAA,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,SAAS,EAAE;QAChC,MAAM,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC,OAAoB,KAAI;YACjD,IAAI,OAAO,EAAE;AACT,gBAAA,oBAAoB,GAAG,oBAAoB,CAAC,MAAM,CAAC,OAAO,CAAC;YAC/D;AACJ,QAAA,CAAC,CAAC;IACN;AACA,IAAA,oBAAoB,GAAG,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAC;IAC9D,oBAAoB,GAAG,MAAM,CAAC,oBAAoB,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrE,OAAO;AACH,QAAA,MAAM,EAAE,MAAM;AACd,QAAA,oBAAoB,EAAE;KACzB;AACL;MAEa,QAAQ,GAAG,CAAC,QAAgB,EAAE,SAA8B,KAAK,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE;AAmBzG,MAAM,oBAAoB,GAAG,CAAC,aAAa,EAAE,aAAa,EAAE,MAAM,GAAG,EAAE,KAAI;AAC9E,IAAA,aAAa,GAAG,aAAa,CAAC,WAAW,EAAE;IAC3C,MAAM,QAAQ,GAAG,EAAE;IACnB,IAAI,YAAY,GAAG,CAAC;AACpB,IAAA,IAAI,MAAM,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE;AAC1C,QAAA,OAAO,MAAM;IACjB;IACA,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,eAAe,EAAE,OAAO,IAAG;AACzD,QAAA,MAAM,GAAG,GAAG,CAAA,QAAA,EAAW,YAAY,EAAE,GAAG;AACxC,QAAA,QAAQ,CAAC,GAAG,CAAC,GAAG,OAAO;AACvB,QAAA,OAAO,GAAG;AACd,IAAA,CAAC,CAAC;AACF,IAAA,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC,QAAQ,KAAI;QAC5D,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YACnD,MAAM,sBAAsB,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK;YACzD,IAAI,kBAAkB,GAAG,EAAE;AAC3B,YAAA,IAAI,sBAAsB,GAAG,CAAC,EAAE;gBAC5B,kBAAkB,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,sBAAsB,CAAC;AAClE,gBAAA,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,sBAAsB,CAAC;YACzD;AACA,YAAA,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE;;AAE1D,gBAAA,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAG;oBACnC,IAAI,MAAM,GAAG,UAAU;AACvB,oBAAA,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE;oBACZ,MAAM,UAAU,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;AACjC,oBAAA,IAAI,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE;AAC1B,wBAAA,IAAI,UAAU,GAAG,CAAC,EAAE;4BAChB,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,CAAC;4BACnC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,UAAU,GAAG,CAAC,CAAC;wBACnC;6BAAO;AACH,4BAAA,OAAO,CAAC;wBACZ;oBACJ;oBAEA,IAAI,aAAa,KAAK,CAAC,IAAI,aAAa,KAAK,MAAM,EAAE;wBACjD,CAAC,GAAG,GAAG,MAAM,CAAA,UAAA,EAAa,aAAa,CAAA,CAAA,EAAI,CAAC,EAAE;oBAClD;yBAAO,IAAI,aAAa,KAAK,CAAC,IAAI,aAAa,KAAK,QAAQ,EAAE;wBAC1D,CAAC,GAAG,GAAG,MAAM,CAAA,YAAA,EAAe,aAAa,CAAA,CAAA,EAAI,CAAC,EAAE;oBACpD;yBAAO,IAAI,aAAa,KAAK,CAAC,IAAI,aAAa,KAAK,SAAS,EAAE;wBAC3D,CAAC,GAAG,GAAG,MAAM,CAAA,aAAA,EAAgB,aAAa,CAAA,CAAA,EAAI,CAAC,EAAE;oBACrD;yBAAO,IAAG,aAAa,KAAK,CAAC,IAAI,aAAa,KAAK,QAAQ,EAAC;wBACxD,CAAC,GAAG,GAAG,MAAM,CAAA,YAAA,EAAe,aAAa,CAAA,CAAA,EAAI,CAAC,EAAE;oBACpD;AACA,oBAAA,OAAO,CAAC;AACZ,gBAAA,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;YAChB;AACA,YAAA,QAAQ,GAAG,kBAAkB,GAAG,QAAQ;QAC5C;AACA,QAAA,OAAO,QAAQ;AACnB,IAAA,CAAC,CAAC;AACF,IAAA,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE;AACxB,QAAA,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC/C;AACA,IAAA,OAAO,MAAM;AACjB;;ACliBA;;AAEG;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../projects/transpiler/src/imports.ts","../../../projects/transpiler/src/build.ts","../../../projects/transpiler/src/index.ts"],"sourcesContent":["import {ImportDef} from './build';\n\n// Angular Core Modules\nconst NG_FORM_MODULE: ImportDef[] = [{ from: '@angular/forms', name: 'FormsModule', as: 'ngFormsModule' }];\nconst NG_REACTIVE_FORM_MODULE: ImportDef[] = [{ from: '@angular/forms', name: 'ReactiveFormsModule', as: 'ngReactiveFormsModule' }];\n\n// NGX Bootstrap Modules\nconst NGX_BS_DATE_PICKER: ImportDef[] = [{ from: 'ngx-bootstrap/datepicker', name: 'BsDatepickerModule', as: 'ngx_BsDatepickerModule' }];\nconst NGX_CAROUSEL_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/carousel', name: 'CarouselModule', as: 'ngxCarouselModule', forRoot: true }];\nconst NGX_COLOR_PICKER_DIRECTIVE: ImportDef[] = [{ from: 'ngx-color-picker', name: 'ColorPickerDirective', as: 'ngx_ColorPickerDirective' }];\nconst NGX_DROP_DOWN_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/dropdown', name: 'BsDropdownModule', as: 'ngxBsDropdownModule', forRoot: true }];\n//const NGX_MODAL_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/modal', name: 'ModalModule', as: 'ngx_ModalModule' }];\nconst NGX_PAGINATION_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/pagination', name: 'PaginationModule', as: 'ngxPaginationModule', forRoot: true }];\nconst NGX_POPOVER_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/popover', name: 'PopoverModule', as: 'ngxPopoverModule', forRoot: true }];\nconst NGX_TIME_PICKER: ImportDef[] = [{ from: 'ngx-bootstrap/timepicker', name: 'TimepickerModule', as: 'ngx_TimepickerModule', forRoot: true }];\nconst NGX_TOOL_TIP_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/tooltip', name: 'TooltipModule', as: 'ngxTooltipModule', forRoot: true }];\nconst NGX_TYPE_HEAD_MODULE: ImportDef[] = [{ from: 'ngx-bootstrap/typeahead', name: 'TypeaheadModule', as: 'ngxTypeaheadModule', forRoot: true }];\n\n// Progess Modules\nconst PROGRESS_BAR_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/progress/progress-bar', name: 'ProgressBarComponent' }];\nconst PROGRESS_CIRCLE_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/progress/progress-circle', name: 'ProgressCircleComponent' }];\nconst PAGE_COMPONENT: ImportDef[] = [{ from: '@wm/components/page', name: 'PageDirective' }];\nconst PAGINATION_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, ...NGX_PAGINATION_MODULE, { from: '@wm/components/data/pagination', name: 'PaginationComponent' }];\n\n// Basic Components\nconst ANCHOR_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/anchor', name: 'AnchorComponent' }];\nconst AUDIO_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/audio', name: 'AudioComponent' }];\nconst HTML_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/html', name: 'HtmlDirective' }];\nconst ICON_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/icon', name: 'IconComponent' }];\nconst IFRAME_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/iframe', name: 'IframeComponent' }];\nconst LABEL_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/label', name: 'LabelDirective' }];\nconst PICTURE_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/picture', name: 'PictureDirective' }];\nconst SEARCH_COMPONENT: ImportDef[] = [\n ...NG_FORM_MODULE,\n ...NGX_TYPE_HEAD_MODULE,\n { from: '@wm/components/basic/search', name: 'ScrollableDirective' },\n { from: '@wm/components/basic/search', name: 'SearchComponent' }];\nconst SPINNER_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/spinner', name: 'SpinnerComponent' }];\nconst VIDEO_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/video', name: 'VideoComponent' }];\n\n// Container Components\nconst PARTIAL_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/base', name: 'PartialDirective' }];\nconst PARTIAL_CONTAINER: ImportDef[] = [{ from: '@wm/components/base', name: 'PartialParamHandlerDirective' }, { from: '@wm/components/base', name: 'PartialContainerDirective' }]\nconst ACCORDION_PANE_COMPONENT: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/containers/accordion', name: 'AccordionPaneComponent' }];\nconst ACCORDION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/containers/accordion', name: 'AccordionDirective' }];\nconst CONTAINER_DIRECTIVE: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/base', name: 'ContainerDirective' }]\nconst PARTIAL_PARAM_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/base', name: 'PartialParamDirective' }];\nconst LINEAR_LAYOUT_ITEM_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/containers/linear-layout', name: 'LinearLayoutItemDirective' }];\nconst LINEAR_LAYOUT_DIRECTIVE: ImportDef[] = [...LINEAR_LAYOUT_ITEM_DIRECTIVE, { from: '@wm/components/containers/linear-layout', name: 'LinearLayoutDirective' }];\nconst TAB_PANE_COMPONENT: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/containers/tabs', name: 'TabPaneComponent' }];\nconst TABS_COMPONENT: ImportDef[] = [...TAB_PANE_COMPONENT, { from: '@wm/components/containers/tabs', name: 'TabsComponent' }];\nconst WIZARD_ACTION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/containers/wizard', name: 'WizardActionDirective' }];\nconst WIZARD_STEP_DIRECTIVE: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/containers/wizard', name: 'WizardStepComponent' }];\nconst WIZARD_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, ...WIZARD_ACTION_DIRECTIVE, ...WIZARD_STEP_DIRECTIVE, { from: '@wm/components/containers/wizard', name: 'WizardComponent' }];\nconst LAYOUT_GRID_COLUMN_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/containers/layout-grid', name: 'LayoutGridColumnDirective' }];\nconst LAYOUT_GRID_ROW_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/containers/layout-grid', name: 'LayoutGridRowDirective' }];\nconst LAYOUT_GRID_DIRECTIVE: ImportDef[] = [...LAYOUT_GRID_ROW_DIRECTIVE, ...LAYOUT_GRID_COLUMN_DIRECTIVE, { from: '@wm/components/containers/layout-grid', name: 'LayoutgridDirective' }];\nconst PANEL_COMPONENT: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/containers/panel', name: 'PanelComponent' }];\nconst TILE_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/containers/tile', name: 'TileDirective' }];\nconst REPEAT_TEMPLATE_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/base', name: 'RepeatTemplateDirective' }];\n\n// Dialog Modules\nconst ALERT_DIALOG_COMPONENT: ImportDef[] = [{ from: '@wm/components/dialogs/alert-dialog', name: 'AlertDialogComponent' }];\nconst CONFIRM_DIALOG_COMPONENT: ImportDef[] = [{ from: '@wm/components/dialogs/confirm-dialog', name: 'ConfirmDialogComponent' }];\nconst DESIGN_DIALOG_COMPONENT: ImportDef[] = [{ from: '@wm/components/dialogs/design-dialog', name: 'DialogComponent' }];\nconst IFRAME_DIALOG_COMPONENT: ImportDef[] = [{ from: '@wm/components/dialogs/iframe-dialog', name: 'IframeDialogComponent' }];\nconst LOGIN_DIALOG_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/dialogs/login-dialog', name: 'LoginDialogDirective' }, ...DESIGN_DIALOG_COMPONENT];\nconst PARTIAL_DIALOG_COMPONENT: ImportDef[] = [{ from: '@wm/components/dialogs/partial-dialog', name: 'PartialDialogComponent' }, ...CONTAINER_DIRECTIVE];\nconst DIALOGACTIONS_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/dialogs', name: 'DialogFooterDirective' }];\n\n// Navigation Modules\nconst NAV_ITEM_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/navigation/menu', name: 'NavItemDirective' }];\nconst NAV_COMPONENT: ImportDef[] = [{ from: '@wm/components/navigation/menu', name: 'NavComponent' }];\nconst NAVIGATION_CONTROL_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/navigation/menu', name: 'NavigationControlDirective' }];\nconst MENU_DROPDOWN_ITEM_COMPONENT: ImportDef[] = [{ from: '@wm/components/navigation/menu', name: 'MenuDropdownComponent' }];\nconst MENU_DROPDOWN_COMPONENT: ImportDef[] = [{ from: '@wm/components/navigation/menu', name: 'MenuDropdownComponent' }]; // Duplicate, consider removing one\nconst MENU_COMPONENT: ImportDef[] = [...NGX_DROP_DOWN_MODULE, ...MENU_DROPDOWN_COMPONENT, ...MENU_DROPDOWN_ITEM_COMPONENT, ...NAVIGATION_CONTROL_DIRECTIVE, ...NAV_COMPONENT, ...NAV_ITEM_DIRECTIVE, { from: '@wm/components/navigation/menu', name: 'MenuComponent' }];\nconst MESSAGE_COMPONENT: ImportDef[] = [{ from: '@wm/components/base', name: 'MessageComponent' }];\nconst BREAD_CRUMB_COMPONENT: ImportDef[] = [...MENU_COMPONENT, { from: '@wm/components/navigation/breadcrumb', name: 'BreadcrumbComponent' }];\nconst NAVBAR_COMPONENT: ImportDef[] = [{ from: '@wm/components/navigation/navbar', name: 'NavbarComponent' }];\nconst POPOVER_COMPONENT: ImportDef[] = [...NGX_POPOVER_MODULE, { from: '@wm/components/navigation/popover', name: 'PopoverComponent' }, ...CONTAINER_DIRECTIVE];\nconst TOP_NAV_DIRECTIVE: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/page/top-nav', name: 'TopNavDirective' }];\n\n// Input Components\nconst CALENDAR_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, ...NGX_BS_DATE_PICKER, { from: '@wm/components/input/calendar', name: 'CalendarComponent' }];\nconst CHIPS_COMPONENT: ImportDef[] = [...SEARCH_COMPONENT, { from: '@wm/components/input/chips', name: 'ChipsComponent' }];\nconst COLOR_PICKER_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, ...NGX_COLOR_PICKER_DIRECTIVE, { from: '@wm/components/input/color-picker', name: 'ColorPickerComponent' }];\nconst CURRENCY_COMPONENT: ImportDef[] = [{ from: '@wm/components/input/currency', name: 'CurrencyComponent' }];\nconst DATE_COMPONENT: ImportDef[] = [\n ...NG_FORM_MODULE, ...NGX_BS_DATE_PICKER, ...NGX_DROP_DOWN_MODULE,\n { from: '@wm/components/input/epoch/date', name: 'DateComponent' }];\nconst DATE_TIME_COMPONENT: ImportDef[] = [\n ...NG_FORM_MODULE, ...NGX_BS_DATE_PICKER, ...NGX_TIME_PICKER, ...NGX_DROP_DOWN_MODULE,\n { from: '@wm/components/input/epoch/date-time', name: 'DatetimeComponent' }];\nconst TIME_COMPONENT: ImportDef[] = [\n ...NG_FORM_MODULE, ...NGX_BS_DATE_PICKER, ...NGX_TIME_PICKER, ...NGX_DROP_DOWN_MODULE,\n { from: '@wm/components/input/epoch/time', name: 'TimeComponent' }];\nconst FILE_UPLOAD_COMPONENT: ImportDef[] = [{ from: '@wm/components/input/file-upload', name: 'FileUploadComponent' }];\nconst RATING_COMPONENT: ImportDef[] = [{ from: '@wm/components/input/rating', name: 'RatingComponent' }];\nconst SLIDER_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/slider', name: 'SliderComponent' }];\nconst BUTTON_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/button', name: 'ButtonComponent' }];\nconst BUTTON_GROUP_DIRECTIVE: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/button-group', name: 'ButtonGroupDirective' }];\n// const CAPTION_POSITION_DIRECTIVE: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input', name: 'CaptionPositionDirective' }];\nconst CHECKBOX_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/checkbox', name: 'CheckboxComponent' }];\nconst CHECKBOXSET_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/checkboxset', name: 'CheckboxsetComponent' }];\n// const COMPOSITE_DIRECTIVE: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input', name: 'CompositeDirective' }];\nconst NUMBER_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/number', name: 'NumberComponent' }];\nconst RADIOSET_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/radioset', name: 'RadiosetComponent' }];\nconst SELECT_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/select', name: 'SelectComponent' }];\nconst SWITCH_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/switch', name: 'SwitchComponent' }];\nconst INPUT_CALENDER_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/text', name: 'InputCalendarComponent' }];\nconst INPUT_COLOR_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/text', name: 'InputColorComponent' }];\nconst INPUT_EMAIL_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/text', name: 'InputEmailComponent' }];\nconst INPUT_NUMBER_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/text', name: 'InputNumberComponent' }];\nconst INPUT_TEXT_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/text', name: 'InputTextComponent' }];\nconst TEXTAREA_COMPONENT: ImportDef[] = [...NG_FORM_MODULE, { from: '@wm/components/input/textarea', name: 'TextareaComponent' }];\n\n// Data Components\nconst CARD_ACTIONS_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/card', name: 'CardActionsDirective' }];\nconst CARD_CONTENT_COMPONENT: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/data/card', name: 'CardContentComponent' }];\nconst CARD_FOOTER_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/card', name: 'CardFooterDirective' }];\nconst CARD_COMPONENT: ImportDef[] = [\n ...NGX_DROP_DOWN_MODULE,\n ...MENU_COMPONENT,\n ...CARD_ACTIONS_DIRECTIVE,\n ...CARD_CONTENT_COMPONENT,\n ...CARD_FOOTER_DIRECTIVE,\n { from: '@wm/components/data/card', name: 'CardComponent' }];\nconst LIST_ITEM_DIRECTIVE: ImportDef[] = [...PAGINATION_COMPONENT, { from: '@wm/components/data/list', name: 'ListItemDirective' }];\nconst LIST_COMPONENT: ImportDef[] = [...PAGINATION_COMPONENT, ...LIST_ITEM_DIRECTIVE, { from: '@wm/components/data/list', name: 'ListComponent' }];\nconst TABLE_CUD_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableCUDDirective' }];\nconst TABLE_FILTER_SORT_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableFilterSortDirective' }];\nconst TABLE_ACTION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableActionDirective' }];\nconst TABLE_COLUMN_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableColumnDirective' }];\nconst TABLE_COLUMN_GROUP_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableColumnGroupDirective' }];\nconst TABLE_ROW_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableRowDirective' }, ...CONTAINER_DIRECTIVE, ...PARTIAL_CONTAINER];\nconst TABLE_ROW_ACTION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/table', name: 'TableRowActionDirective' }, ...BUTTON_COMPONENT, ...ANCHOR_COMPONENT];\nconst TABLE_COMPONENT: ImportDef[] = [\n ...NG_FORM_MODULE,\n ...NG_REACTIVE_FORM_MODULE,\n ...PAGINATION_COMPONENT,\n ...MENU_COMPONENT,\n ...NGX_TOOL_TIP_MODULE,\n ...LIST_COMPONENT,\n ...TABLE_ACTION_DIRECTIVE,\n ...TABLE_CUD_DIRECTIVE,\n ...TABLE_FILTER_SORT_DIRECTIVE,\n ...TABLE_COLUMN_DIRECTIVE,\n ...TABLE_COLUMN_GROUP_DIRECTIVE,\n ...TABLE_ROW_DIRECTIVE,\n ...TABLE_ROW_ACTION_DIRECTIVE,\n { from: '@wm/components/data/table', name: 'TableComponent' }];\nconst LIVE_TABLE_COMPONENT: ImportDef[] = [{ from: '@wm/components/data/live-table', name: 'LiveTableComponent' }];\n\n// Form Components and Directives\nconst FORM_WIDGET_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'FormWidgetDirective' }];\nconst FORM_ACTION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'FormActionDirective' }];\nconst FORM_FIELD_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'FormFieldDirective' }];\nconst LIVE_ACTION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'LiveActionsDirective' }];\nconst DEPENDS_ON_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'DependsonDirective' }];\nconst LIVE_FILTER_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'LiveFilterDirective' }];\nconst LIVE_FORM_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/data/form', name: 'LiveFormDirective' }];\nconst CAPTION_POSITION_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/input/caption-position', name: 'CaptionPositionDirective'}];\nconst FORM_COMPONENT: ImportDef[] = [\n ...NG_FORM_MODULE,\n ...NG_REACTIVE_FORM_MODULE,\n ...FORM_ACTION_DIRECTIVE,\n ...FORM_WIDGET_DIRECTIVE,\n ...FORM_FIELD_DIRECTIVE,\n ...LIVE_ACTION_DIRECTIVE,\n ...DEPENDS_ON_DIRECTIVE,\n ...LIVE_FILTER_DIRECTIVE,\n ...LIVE_FORM_DIRECTIVE,\n ...CAPTION_POSITION_DIRECTIVE,\n { from: '@wm/components/data/form', name: 'FormComponent' }];\nconst COMPOSITE_DIRECTIVE = [{ from: '@wm/components/input/composite', name: 'CompositeDirective' }, { from: '@wm/components/input/caption-position', name: 'CaptionPositionDirective' }]\n\n// Page Structure Components // TODO: PARTIAL_CONTAINER these needed ? appComponent has imports at root\nconst FOOTER_DIRECTIVE: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/page/footer', name: 'FooterDirective' }];\nconst HEADER_COMPONENT: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/page/header', name: 'HeaderComponent' }];\nconst LEFT_PANEL_DIRECTIVE: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/page/left-panel', name: 'LeftPanelDirective' }];\nconst RIGHT_PANEL_DIRECTIVE: ImportDef[] = [...PARTIAL_CONTAINER, { from: '@wm/components/page/right-panel', name: 'RightPanelDirective' }];\nconst PAGE_CONTENT_COMPONENT: ImportDef[] = [{ from: '@wm/components/page', name: 'PageContentComponent' }];\nconst SPA_PAGE_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/page', name: 'SpaPageDirective' }];\nconst LAYOUT_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/page', name: 'LayoutDirective' }];\nconst CONTENT_COMPONENT: ImportDef[] = [{ from: '@wm/components/page', name: 'ContentComponent' }];\n\n// Advanced Components\nconst CAROUSEL_TEMPLATE_DIRECTIVE: ImportDef[] = [...NGX_CAROUSEL_MODULE, { from: '@wm/components/advanced/carousel', name: 'CarouselTemplateDirective' }];\nconst CAROUSEL_COMPONENT: ImportDef[] = [...NGX_CAROUSEL_MODULE, ...CAROUSEL_TEMPLATE_DIRECTIVE, { from: '@wm/components/advanced/carousel', name: 'CarouselDirective' }];\nconst CHART_COMPONENT: ImportDef[] = [{ from: '@wm/components/chart', name: 'ChartComponent' }, {from: '@wm/components/base', name: 'RedrawableDirective'}];\nconst CUSTOM_WIDGET_CONTAINER_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/advanced/custom', name: 'CustomWidgetContainerDirective' }];\nconst CUSTOM_WIDGET_DIRECTIVE: ImportDef[] = [...CUSTOM_WIDGET_CONTAINER_DIRECTIVE, { from: '@wm/components/advanced/custom', name: 'CustomWidgetDirective' }];\nconst LOGIN_COMPONENT: ImportDef[] = [{ from: '@wm/components/advanced/login', name: 'LoginComponent' }];\nconst MARQUEE_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/advanced/marquee', name: 'MarqueeDirective' }];\nconst PREFAB_CONTAINER_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/prefab', name: 'PrefabContainerDirective' }];\nconst PREFAB_DIRECTIVE: ImportDef[] = [{ from: '@wm/components/prefab', name: 'PrefabDirective' }];\nconst RICH_TEXT_EDITOR_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/rich-text-editor', name: 'RichTextEditorComponent' }];\nconst TREE_COMPONENT: ImportDef[] = [{ from: '@wm/components/basic/tree', name: 'TreeComponent' }];\nconst ACCESSROLES_DIRECTIVE = [{from: '@wm/runtime/base', name: 'AccessrolesDirective'}];\nconst SHOW_IN_DEVICE_DIRECTIVE: ImportDef[] = [{from: '@wm/components/base', name: 'ShowInDeviceDirective'}];\nconst LAZY_LOAD_DIRECTIVE: ImportDef[] = [{from: '@wm/components/base', name: 'LazyLoadDirective'}];\n// Pipes\nconst TO_DATE_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'ToDatePipe' }];\nconst TO_CURRENCY_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'ToCurrencyPipe' }];\nconst NUMBER_TO_STRING_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'NumberToStringPipe' }];\nconst STRING_TO_NUMBER_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'StringToNumberPipe' }];\nconst TIME_FROM_NOW_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'TimeFromNowPipe' }];\nconst PREFIX_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'PrefixPipe' }];\nconst SUFFIX_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'SuffixPipe' }];\nconst CUSTOM_PIPE: ImportDef[] = [{ from: '@wm/components/base', name: 'CustomPipe' }];\n\nexport const WIDGET_IMPORTS: Map<string, ImportDef[]> = new Map([\n ['wm-accordion', ACCORDION_DIRECTIVE],\n ['wm-accordionpane', ACCORDION_PANE_COMPONENT],\n ['wm-anchor', ANCHOR_COMPONENT],\n ['wm-alertdialog', ALERT_DIALOG_COMPONENT],\n ['wm-audio', AUDIO_COMPONENT],\n ['wm-button', BUTTON_COMPONENT],\n ['wm-buttongroup', BUTTON_GROUP_DIRECTIVE],\n ['wm-breadcrumb', BREAD_CRUMB_COMPONENT],\n ['wm-calendar', CALENDAR_COMPONENT],\n ['wm-card', CARD_COMPONENT],\n ['wm-card-actions', CARD_ACTIONS_DIRECTIVE],\n ['wm-card-content', CARD_CONTENT_COMPONENT],\n ['wm-card-footer', CARD_FOOTER_DIRECTIVE],\n ['wm-carousel', CAROUSEL_COMPONENT],\n ['wm-carousel-content', CAROUSEL_TEMPLATE_DIRECTIVE],\n ['wm-carousel-template', CAROUSEL_TEMPLATE_DIRECTIVE],\n ['wm-chart', CHART_COMPONENT],\n ['wm-checkbox', CHECKBOX_COMPONENT],\n ['wm-checkboxset', CHECKBOXSET_COMPONENT],\n ['wm-chips', CHIPS_COMPONENT],\n ['wm-colorpicker', COLOR_PICKER_COMPONENT],\n ['wm-confirmdialog', CONFIRM_DIALOG_COMPONENT],\n ['wm-container', CONTAINER_DIRECTIVE],\n ['wm-param', PARTIAL_PARAM_DIRECTIVE],\n ['wm-content', CONTENT_COMPONENT],\n ['wm-currency', CURRENCY_COMPONENT],\n ['wm-date', DATE_COMPONENT],\n ['wm-datetime', DATE_TIME_COMPONENT],\n ['wm-dialog', DESIGN_DIALOG_COMPONENT],\n ['wm-dialogactions', DIALOGACTIONS_DIRECTIVE],\n ['wm-footer', FOOTER_DIRECTIVE],\n ['wm-form', FORM_COMPONENT],\n ['wm-form-action', FORM_ACTION_DIRECTIVE],\n ['wm-form-field', FORM_FIELD_DIRECTIVE],\n ['wm-filter-field', LIVE_FILTER_DIRECTIVE],\n ['wm-fileupload', FILE_UPLOAD_COMPONENT],\n ['wm-gridrow', LAYOUT_GRID_ROW_DIRECTIVE],\n ['wm-gridcolumn', LAYOUT_GRID_COLUMN_DIRECTIVE],\n ['wm-header', HEADER_COMPONENT],\n ['wm-html', HTML_COMPONENT],\n ['wm-icon', ICON_COMPONENT],\n ['wm-iframe', IFRAME_COMPONENT],\n ['wm-iframedialog', IFRAME_DIALOG_COMPONENT],\n ['wm-label', LABEL_COMPONENT],\n ['wm-layout', LAYOUT_DIRECTIVE],\n ['wm-layoutgrid', LAYOUT_GRID_DIRECTIVE],\n ['wm-left-panel', LEFT_PANEL_DIRECTIVE],\n ['wm-linearlayout', LINEAR_LAYOUT_DIRECTIVE],\n ['wm-linearlayoutitem', LINEAR_LAYOUT_ITEM_DIRECTIVE],\n ['wm-list', LIST_COMPONENT],\n ['wm-livetable', LIVE_TABLE_COMPONENT],\n ['wm-login', LOGIN_COMPONENT],\n ['wm-custom', CUSTOM_WIDGET_DIRECTIVE],\n ['wm-custom-widget', CUSTOM_WIDGET_DIRECTIVE],\n ['wm-logindialog', LOGIN_DIALOG_DIRECTIVE],\n ['wm-marquee', MARQUEE_DIRECTIVE],\n ['wm-menu', MENU_COMPONENT],\n ['wm-message', MESSAGE_COMPONENT],\n ['wm-nav', NAV_COMPONENT],\n ['wm-navbar', NAVBAR_COMPONENT],\n ['wm-nav-item', NAV_ITEM_DIRECTIVE],\n ['wm-number', NUMBER_COMPONENT],\n ['wm-partial', PARTIAL_DIRECTIVE],\n ['wm-page', PAGE_COMPONENT],\n ['wm-page-content', PAGE_CONTENT_COMPONENT],\n ['spa-page-content', SPA_PAGE_DIRECTIVE],\n ['wm-pagedialog', PARTIAL_DIALOG_COMPONENT],\n ['wm-pagination', PAGINATION_COMPONENT],\n ['wm-panel', PANEL_COMPONENT],\n ['wm-panel-footer', PANEL_COMPONENT],\n ['wm-picture', PICTURE_COMPONENT],\n ['wm-popover', POPOVER_COMPONENT],\n ['wm-progress-bar', PROGRESS_BAR_COMPONENT],\n ['wm-prefab', PREFAB_DIRECTIVE],\n ['wm-prefab-container', PREFAB_CONTAINER_DIRECTIVE],\n ['wm-progress-circle', PROGRESS_CIRCLE_COMPONENT],\n ['wm-radioset', RADIOSET_COMPONENT],\n ['wm-rating', RATING_COMPONENT],\n ['wm-richtexteditor', RICH_TEXT_EDITOR_COMPONENT],\n ['wm-right-panel', RIGHT_PANEL_DIRECTIVE],\n ['wm-select', SELECT_COMPONENT],\n ['wm-search', SEARCH_COMPONENT],\n ['wm-slider', SLIDER_COMPONENT],\n ['wm-spinner', SPINNER_COMPONENT],\n ['wm-switch', SWITCH_COMPONENT],\n ['wm-table', TABLE_COMPONENT],\n ['wm-tabs', TABS_COMPONENT],\n ['wm-tabpane', TAB_PANE_COMPONENT],\n ['wm-text', [...INPUT_TEXT_COMPONENT, ...INPUT_CALENDER_COMPONENT, ...INPUT_COLOR_COMPONENT, ...INPUT_EMAIL_COMPONENT, ...INPUT_NUMBER_COMPONENT]],\n ['wm-textarea', TEXTAREA_COMPONENT],\n ['wm-time', TIME_COMPONENT],\n ['wm-tile', TILE_DIRECTIVE],\n ['wm-top-nav', TOP_NAV_DIRECTIVE],\n ['wm-tree', TREE_COMPONENT],\n ['wm-video', VIDEO_COMPONENT],\n ['wm-wizard', WIZARD_COMPONENT],\n ['wm-wizardstep', WIZARD_COMPONENT],\n ['wm-repeat-template', REPEAT_TEMPLATE_DIRECTIVE],\n ['wm-composite', COMPOSITE_DIRECTIVE],\n ['accessroles', ACCESSROLES_DIRECTIVE],\n ['showindevice', SHOW_IN_DEVICE_DIRECTIVE],\n ['lazyload', LAZY_LOAD_DIRECTIVE],\n\n ['toDate', TO_DATE_PIPE],\n ['toCurrency', TO_CURRENCY_PIPE],\n ['numberToString', NUMBER_TO_STRING_PIPE],\n ['stringToNumber', STRING_TO_NUMBER_PIPE],\n ['timeFromNow', TIME_FROM_NOW_PIPE],\n ['prefix', PREFIX_PIPE],\n ['suffix', SUFFIX_PIPE],\n ['custom', CUSTOM_PIPE],\n]);\n","import {Comment, Element, getHtmlTagDefinition, HtmlParser, ParseSourceSpan, Text} from '@angular/compiler';\nimport {WIDGET_IMPORTS} from './imports';\nimport {find, isEqual, isFunction, remove, sortBy, uniqWith} from \"lodash-es\";\n\nconst CSS_REGEX = {\n COMMENTS_FORMAT : /\\/\\*((?!\\*\\/).|\\n)+\\*\\//g,\n SELECTOR_FORMAT : /[^\\{\\}]*\\{/gi,\n SELECTOR_EXCLUDE_FORMAT : /(@keyframes|@media|@font-face|@comment[0-9]+|from|to|[0-9]+%)\\b/i\n};\n\nconst isString = v => typeof v === 'string';\n\ninterface IProviderInfo {\n nodeName: string;\n provide: Map<string, any>;\n}\n\nconst OVERRIDES = {\n 'accessroles': '*accessroles',\n 'ng-if': '*ngIf',\n 'showindevice': '*wmShowInDevice',\n 'ng-class': '[ngClass]',\n 'data-ng-class': '[ngClass]',\n 'data-ng-src': 'src',\n 'ng-src': 'src',\n 'data-ng-href': 'href',\n 'ng-href': 'href',\n 'ng-disabled': 'disabled',\n 'data-ng-disabled': 'disabled',\n 'ng-model': '[ngModelOptions]=\"{standalone: true}\" [(ngModel)]'\n};\n\nconst selfClosingTags = new Set(['img']);\n\nexport const getBoundToExpr = (value: string) => {\n if (!value) {\n return null;\n }\n\n value = value.trim();\n if (value.startsWith('bind:')) {\n return value.substr(5);\n }\n};\n\nconst quoteAttr = v => {\n return ('' + v) /* Forces the conversion to string. */\n .replace(/&/g, '&amp;') /* This MUST be the 1st replacement. */\n .replace(/'/g, '&apos;') /* The 4 other predefined entities, required. */\n .replace(/\"/g, '&quot;')\n .replace(/</g, '&lt;')\n .replace(/>/g, '&gt;');\n};\n\nconst registry = new Map<string, any>();\nconst htmlParser = new HtmlParser();\nconst ignoreComments = true;\n\nconst empty = () => '';\n\nconst isEvent = name => name[0] === 'o' && name[1] === 'n' && name[2] === '-';\n\nconst getEventName = key => key.substr(3);\n\nconst processBinding = (attr, expr) => [`${attr.name}.bind`, quoteAttr(expr)];\n\nconst processEvent = attr => {\n const evtName = getEventName(attr.name);\n return [`${evtName}.event`, attr.value];\n};\n\n/**\n * Wraps the string with single quotes.\n * @param val\n */\nconst wrapWithApos = (val: string) => {\n return `&apos;${val.replace(/&apos/g, '&quot').replace(/&quot/g, '\\\\&quot')}&apos;`;\n};\nconst ELE_PREFIX = '.wm-app';\n\nconst processAttr = attr => {\n let overridden = OVERRIDES[attr.name];\n const value = attr.valueSpan ? attr.value : undefined;\n\n if (overridden) {\n /**\n * wrap value for accessroles with ''.\n * since accessroles is a structural directive, it will be transpiled to [accessroles]\n * hence, the value against it should be a computed string\n */\n if (attr.name === 'accessroles' || attr.name === 'showindevice') {\n return [overridden, `'${value}'`];\n }\n return [overridden, quoteAttr(value)];\n }\n\n if (isEvent(attr.name)) {\n return processEvent(attr);\n }\n\n const boundExpr = getBoundToExpr(attr.value);\n if (boundExpr) {\n return processBinding(attr, boundExpr);\n }\n\n return [attr.name, quoteAttr(value)];\n};\n\nexport const getDataSource = (dataSetExpr: string): string => {\n const parts = dataSetExpr.split('.');\n if (parts[0] === 'Variables' || parts[0] === 'Widgets') {\n return `${parts[0]}.${parts[1]}`;\n }\n if (parts[0] === 'App' && parts[1] === 'activePage' && parts[2]?.includes('Variables') && parts[3]) {\n return `App.activePage.${parts[2]}.${parts[3]}`;\n }\n};\n\nconst widgetChildAttrs = (() => {\n const childAttrs = new Map();\n const validChildAttrs = [\n `required`\n ];\n return {\n set: attrs => {\n attrs.forEach((val, key) => {\n validChildAttrs.includes(key) && (childAttrs.set(key, val));\n });\n },\n get: attrs => {\n const fltrAttrs = new Map();\n childAttrs.forEach((val, key) => {\n !attrs.get(key) && fltrAttrs.set(key, val);\n });\n return fltrAttrs;\n },\n clear: () => {\n childAttrs.clear();\n }\n };\n})();\nexport const setChildAttrs = attrs => {\n widgetChildAttrs.set(attrs);\n return '';\n};\nexport const getChildAttrs = attrs => {\n return getAttrMarkup(widgetChildAttrs.get(attrs));\n};\nexport const clearChildAttrs = () => {\n widgetChildAttrs.clear();\n return '';\n};\nexport const getFormMarkupAttr = attrs => {\n if (attrs.get('datavalue.bind')) {\n const onDataValueBinding = getDataSource(attrs.get('datavalue.bind'));\n attrs.set('datavaluesource.bind', onDataValueBinding);\n }\n return getAttrMarkup(attrs);\n};\n\nconst getAttrMap = attrs => {\n const attrMap = new Map<string, string>();\n attrs.forEach(attr => {\n let [attrName, attrValue] = processAttr(attr);\n attrMap.set(attrName, attrValue);\n });\n\n if (attrMap.get('dataset.bind')) {\n const dataSource = getDataSource(attrMap.get('dataset.bind'));\n if (dataSource) {\n attrMap.set('datasource.bind', dataSource);\n }\n }\n\n return attrMap;\n};\n\nexport const getAttrMarkup = (attrs: Map<string, string>) => {\n let attrMarkup = '';\n attrs.forEach((v, k) => {\n attrMarkup += ` ${k}`;\n if (v) {\n v = v.trim();\n if (k === '[ngClass]' && v.startsWith('{')) {\n v = v.replace(/\"/g, `'`);\n }\n if (k === 'show.bind' && attrs.get('deferload') === 'true') {\n v = v + `\" *lazyLoad=\"${wrapWithApos(v)}`;\n }\n attrMarkup += `=\"${v}\"`;\n }\n });\n\n return attrMarkup;\n};\n\nconst getRequiredProviders = (nodeDef: IBuildTaskDef, providers: Array<IProviderInfo>, nodeAttrs) => {\n if (!nodeDef.requires) {\n return [];\n }\n\n let requires = nodeDef.requires as any;\n\n if (isString(requires)) {\n requires = [requires];\n }\n\n if (!Array.isArray(requires)) {\n return [];\n }\n\n return requires.map(require => {\n // for dynamic table assigning parent provide map to the child,\n for (let i = nodeAttrs.length - 1; i >= 0; i-- ) {\n if (nodeAttrs[i].name === 'tableName') {\n return nodeDef[nodeAttrs[i].value];\n }\n }\n\n for (let i = providers.length - 1; i >= 0; i-- ) {\n if (providers[i].nodeName === require) {\n return providers[i].provide;\n }\n }\n });\n};\n\nconst DIMENSION_PROPS = ['padding', 'borderwidth', 'margin'];\n\nconst SEPARATOR = ' ', UNSET = 'unset';\n\nconst setDimensionProp = (cssObj, key, nv) => {\n let cssKey = key, val, top, right, bottom, left, suffix = '';\n\n function setVal(prop, value) {\n // if the value is UNSET, reset the existing value\n if (value === UNSET) {\n value = '';\n }\n cssObj[cssKey + prop + suffix] = value;\n }\n\n if (key === 'borderwidth') {\n suffix = 'width';\n cssKey = 'border';\n }\n\n val = nv;\n\n if (val.indexOf(UNSET) !== -1) {\n val = val.split(SEPARATOR);\n\n top = val[0];\n right = val[1] || val[0];\n bottom = val[2] || val[0];\n left = val[3] || val[1] || val[0];\n\n setVal('top', top);\n setVal('right', right);\n setVal('bottom', bottom);\n setVal('left', left);\n } else {\n if (key === 'borderwidth') {\n cssKey = 'borderwidth';\n }\n cssObj[cssKey] = nv;\n }\n};\n\nconst processDimensionAttributes = attrMap => {\n const attrKeys = Array.from(attrMap.keys());\n attrKeys.forEach((attrKey: any) => {\n if (DIMENSION_PROPS.includes(attrKey)) {\n const cssObj = {},\n attrValue = attrMap.get(attrKey);\n attrMap.delete(attrKey);\n setDimensionProp(cssObj, attrKey, attrValue);\n Object.keys(cssObj).forEach(key => {\n if (cssObj[key]) {\n attrMap.set(key, cssObj[key]);\n }\n });\n }\n });\n};\n\n// replace <:svg:svg> -> <svg>, <:svg:*> -> <svg:*>\nconst getNodeName = name => name.replace(':svg:svg', 'svg').replace(':svg:', 'svg:');\n\nexport const processNode = (node, importCollector: (i: ImportDef[]) => void, providers?: Array<IProviderInfo>) => {\n const nodeDef = registry.get(node.name);\n\n let pre, post, template;\n\n if (nodeDef) {\n pre = nodeDef.pre || empty;\n post = nodeDef.post || empty;\n template = nodeDef.template || empty;\n }\n\n let markup = '';\n let attrMap;\n let requiredProviders;\n let shared;\n\n if (!providers) {\n providers = [];\n }\n\n const isElementType = node instanceof Element;\n\n if (isElementType) {\n let provideInfo: IProviderInfo;\n\n if (nodeDef) {\n requiredProviders = getRequiredProviders(nodeDef, providers, node.attrs);\n shared = new Map();\n template(node, shared, ...requiredProviders);\n }\n\n attrMap = getAttrMap(node.attrs);\n processDimensionAttributes(attrMap);\n\n const nodeName = getNodeName(node.name);\n\n if (nodeDef) {\n markup = (<any>pre)(attrMap, shared, ...requiredProviders);\n if (nodeDef.provide) {\n provideInfo = {\n nodeName: node.name,\n provide: isFunction(nodeDef.provide) ? nodeDef.provide(attrMap, shared, ...requiredProviders) : nodeDef.provide\n };\n // For table node, assigning parent provide map to the child, as child requires some parent provide attrs.\n if (node.name === 'wm-table') {\n const tableColNodeDefn = registry.get('wm-table-column');\n tableColNodeDefn[find(node.attrs, (el) => el.name === 'name').value + provideInfo.provide.get('table_reference')] = provideInfo.provide;\n registry.set('wm-table-column', tableColNodeDefn);\n }\n providers.push(provideInfo);\n }\n } else {\n markup = `<${nodeName} ${getAttrMarkup(attrMap)}>`;\n }\n\n node.children.forEach((child: Node | any) => {\n if(child.attrs) {\n let showInDeviceAttr, accessRolesAttr, deferLoadAttr, showAttr;\n child.attrs.forEach(function(attr){\n if (attr.name === 'showindevice') {\n showInDeviceAttr = attr;\n importCollector(WIDGET_IMPORTS.get(\"showindevice\"))\n } else if (attr.name === 'accessroles') {\n accessRolesAttr = attr;\n importCollector(WIDGET_IMPORTS.get('accessroles'));\n } else if (attr.name === 'deferload') {\n deferLoadAttr = attr;\n importCollector(WIDGET_IMPORTS.get('lazyload'));\n } else if (attr.name === 'show') {\n showAttr = attr;\n }\n });\n if((showInDeviceAttr && accessRolesAttr) || (showInDeviceAttr && deferLoadAttr) || (accessRolesAttr && deferLoadAttr)) {\n /* If more than one out of showindevice, accessroles and deferload exist for a widget, add ng-container wrappers to fix angular limitation\n of applying only one structural directive to an element.\n * */\n const noSpan = ({} as ParseSourceSpan);\n const showInDeviceContainer:any = showInDeviceAttr ? new Element('ng-container', [], [], noSpan, noSpan, noSpan) : '';\n const accessRolesContainer:any = accessRolesAttr ? new Element('ng-container', [], [], noSpan, noSpan, noSpan) : '';\n const deferLoadContainer:any = deferLoadAttr ? new Element('ng-container', [], [], noSpan, noSpan, noSpan) : '';\n if (showInDeviceContainer) {\n showInDeviceContainer.attrs.push(showInDeviceAttr);\n }\n if (accessRolesContainer) {\n accessRolesContainer.attrs.push(accessRolesAttr);\n }\n if (deferLoadContainer) {\n deferLoadContainer.attrs.push(deferLoadAttr);\n if (showAttr) {\n deferLoadContainer.attrs.push(showAttr);\n }\n }\n remove(child.attrs, function (attr) {\n // @ts-ignore\n return attr.name === 'showindevice' || attr.name === 'accessroles' || attr.name === 'deferload'\n });\n let childContainer, parentContainer;\n if (showInDeviceAttr && accessRolesAttr) {\n childContainer = showInDeviceContainer;\n parentContainer = accessRolesContainer;\n } else if (showInDeviceAttr && deferLoadAttr) {\n childContainer = showInDeviceContainer;\n parentContainer = deferLoadContainer;\n } else if (accessRolesAttr && deferLoadAttr) {\n childContainer = deferLoadContainer;\n parentContainer = accessRolesContainer;\n }\n // wrap current node elements inside first ng-container(childContainer) and that container's elements inside another ng-container(parentContainer)\n childContainer.children = [child];\n parentContainer.children = [childContainer];\n // if all three directives exist, create another wrapper for third ng-container(grandParentContainer)\n if (showInDeviceAttr && accessRolesAttr && deferLoadAttr) {\n const grandParentContainer = deferLoadContainer;\n grandParentContainer.children = [parentContainer];\n child = grandParentContainer;\n } else {\n child = parentContainer;\n }\n\n }\n }\n return markup += processNode(child, importCollector, providers);\n });\n\n if (nodeDef) {\n if (provideInfo) {\n providers.splice(providers.indexOf(provideInfo), 1);\n }\n markup += (<any>post)(attrMap, shared, ...requiredProviders);\n } else {\n if (node.endSourceSpan && !getHtmlTagDefinition(node.name).isVoid) {\n markup += `</${nodeName}>`;\n }\n }\n } else if (node instanceof Text) {\n markup += node.value;\n } else if (node instanceof Comment) {\n if (!ignoreComments) {\n markup += node.value;\n }\n }\n importCollector(WIDGET_IMPORTS.get(node.name));\n if (nodeDef && nodeDef.imports) {\n let imports = [];\n if (typeof nodeDef.imports === 'function') {\n imports = nodeDef.imports(attrMap);\n } else {\n imports = nodeDef.imports;\n }\n imports.forEach( i => {\n importCollector(WIDGET_IMPORTS.get(i));\n });\n }\n return markup;\n};\n\nexport const transpile = (markup: string = '') => {\n if (!markup.length) {\n return;\n }\n let requiredWMComponents = [];\n const nodes = htmlParser.parse(markup, '');\n\n if (nodes.errors.length) {\n return;\n }\n\n let output = '';\n for (const node of nodes.rootNodes) {\n output += processNode(node, (imports: ImportDef[]) => {\n if (imports) {\n requiredWMComponents = requiredWMComponents.concat(imports);\n }\n });\n }\n requiredWMComponents = uniqWith(requiredWMComponents, isEqual);\n requiredWMComponents = sortBy(requiredWMComponents, ['from', 'name']);\n return {\n markup: output,\n requiredWMComponents: requiredWMComponents\n };\n};\n\nexport const register = (nodeName: string, nodeDefFn: () => IBuildTaskDef) => registry.set(nodeName, nodeDefFn());\n\nexport interface ImportDef {\n from: string;\n name: string;\n as?: string;\n forRoot?: boolean;\n platformType?: string;\n}\n\nexport interface IBuildTaskDef {\n requires?: string | Array<string>;\n template?: (node: Element | Text | Comment, shared?: Map<any, any>, ...requires: Array<Map<any, any>>) => void;\n pre: (attrs: Map<string, string>, shared ?: Map<any, any>, ...requires: Array<Map<any, any>>) => string;\n provide?: (attrs: Map<string, string>, shared ?: Map<any, any>, ...requires: Array<Map<any, any>>) => Map<any, any>;\n post?: (attrs: Map<string, string>, shared ?: Map<any, any>, ...requires: Array<Map<any, any>>) => string;\n imports?: string[] | ((attrs: Map<string, string>) => string[]);\n}\n\nexport const scopeComponentStyles = (componentName, componentType, styles = '') => {\n componentName = componentName.toLowerCase();\n const comments = {};\n let commentCount = 0;\n if (styles.startsWith('/*DISABLE_SCOPING*/')) {\n return styles;\n }\n styles = styles.replace(CSS_REGEX.COMMENTS_FORMAT, comment => {\n const key = `@comment${commentCount++}{`;\n comments[key] = comment;\n return key;\n });\n styles = styles.replace(CSS_REGEX.SELECTOR_FORMAT, (selector) => {\n if (!CSS_REGEX.SELECTOR_EXCLUDE_FORMAT.test(selector)) {\n const firstNonSpaceCharIndex = selector.match(/\\S/).index;\n let prefixSpaceCharSeq = '';\n if (firstNonSpaceCharIndex > 0) {\n prefixSpaceCharSeq = selector.substring(0, firstNonSpaceCharIndex);\n selector = selector.substring(firstNonSpaceCharIndex);\n }\n if (!selector.startsWith('/*') && selector.trim().length > 0) {\n // splits the selector by commas and we iterate over the array and add page level scoping and join it.\n selector = selector.split(',').map(s => {\n let prefix = ELE_PREFIX;\n s = s.trim();\n const spaceIndex = s.indexOf(' ');\n if (s.startsWith(ELE_PREFIX)) {\n if (spaceIndex > 0) {\n prefix = s.substring(0, spaceIndex);\n s = s.substring(spaceIndex + 1);\n } else {\n return s;\n }\n }\n\n if (componentType === 0 || componentType === 'PAGE') {\n s = `${prefix} app-page-${componentName} ${s}`;\n } else if (componentType === 1 || componentType === 'PREFAB') {\n s = `${prefix} app-prefab-${componentName} ${s}`;\n } else if (componentType === 2 || componentType === 'PARTIAL') {\n s = `${prefix} app-partial-${componentName} ${s}`;\n } else if(componentType === 3 || componentType === 'WIDGET'){\n s = `${prefix} app-custom-${componentName} ${s}`;\n }\n return s;\n }).join(',');\n }\n selector = prefixSpaceCharSeq + selector;\n }\n return selector;\n });\n for (const key in comments) {\n styles = styles.replace(key, comments[key]);\n }\n return styles;\n};\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -42,11 +42,11 @@
42
42
  CRUD: 'wm.CrudVariable',
43
43
  SERVICE: 'wm.ServiceVariable',
44
44
  WEBSOCKET: 'wm.WebSocketVariable',
45
- NAVIGATION: 'wm.NavigationVariable',
46
- NOTIFICATION: 'wm.NotificationVariable',
47
- TIMER: 'wm.TimerVariable',
48
- LOGIN: 'wm.LoginVariable',
49
- LOGOUT: 'wm.LogoutVariable',
45
+ NAVIGATION: 'wm.NavigationAction',
46
+ NOTIFICATION: 'wm.NotificationAction',
47
+ TIMER: 'wm.TimerAction',
48
+ LOGIN: 'wm.LoginAction',
49
+ LOGOUT: 'wm.LogoutAction',
50
50
  },
51
51
  EVENTS: ['onBefore',
52
52
  'onBeforeUpdate',
@@ -2676,10 +2676,10 @@
2676
2676
  const managerMap = new Map(), typeToManagerMap = {
2677
2677
  'Variable': BaseVariableManager,
2678
2678
  'Action': BaseActionManager,
2679
- 'wm.NavigationVariable': NavigationActionManager,
2680
- 'wm.NotificationVariable': NotificationActionManager,
2681
- 'wm.LoginVariable': LoginActionManager,
2682
- 'wm.LogoutVariable': LogoutActionManager,
2679
+ 'wm.NavigationAction': NavigationActionManager,
2680
+ 'wm.NotificationAction': NotificationActionManager,
2681
+ 'wm.LoginAction': LoginActionManager,
2682
+ 'wm.LogoutAction': LogoutActionManager,
2683
2683
  'wm.WebSocketVariable': WebSocketVariableManager
2684
2684
  };
2685
2685
  class VariableManagerFactory {
@@ -3111,7 +3111,7 @@
3111
3111
  varInstance.simulateFileDownload = simulateFileDownload;
3112
3112
  }
3113
3113
  }
3114
- if (this.isVariableSeperated(variablesJson, variableName) || variablesJson[variableName].category === 'wm.TimerVariable') {
3114
+ if (this.isVariableSeperated(variablesJson, variableName) || variablesJson[variableName].category === 'wm.TimerAction') {
3115
3115
  for (const e in VARIABLE_CONSTANTS.EVENT) {
3116
3116
  if (varInstance[VARIABLE_CONSTANTS.EVENT[e]]) {
3117
3117
  varInstance[VARIABLE_CONSTANTS.EVENT[e]] = i1.$parseEvent(varInstance[VARIABLE_CONSTANTS.EVENT[e]]);
@@ -13,11 +13,11 @@ export const VARIABLE_CONSTANTS = {
13
13
  CRUD: 'wm.CrudVariable',
14
14
  SERVICE: 'wm.ServiceVariable',
15
15
  WEBSOCKET: 'wm.WebSocketVariable',
16
- NAVIGATION: 'wm.NavigationVariable',
17
- NOTIFICATION: 'wm.NotificationVariable',
18
- TIMER: 'wm.TimerVariable',
19
- LOGIN: 'wm.LoginVariable',
20
- LOGOUT: 'wm.LogoutVariable',
16
+ NAVIGATION: 'wm.NavigationAction',
17
+ NOTIFICATION: 'wm.NotificationAction',
18
+ TIMER: 'wm.TimerAction',
19
+ LOGIN: 'wm.LoginAction',
20
+ LOGOUT: 'wm.LogoutAction',
21
21
  },
22
22
  EVENTS: ['onBefore',
23
23
  'onBeforeUpdate',
@@ -330,4 +330,4 @@ export const VARIABLE_URLS = {
330
330
  }
331
331
  };
332
332
  export const $rootScope = rootScope;
333
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFyaWFibGVzLmNvbnN0YW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhcmlhYmxlcy9zcmMvY29uc3RhbnRzL3ZhcmlhYmxlcy5jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsSUFBSSxTQUFTLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUM3RCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUc7SUFDckIsWUFBWSxFQUFFLEtBQUs7SUFDbkIsU0FBUyxFQUFFLElBQUk7SUFDZixnQkFBZ0IsRUFBRSxlQUFlO0lBQ2pDLG1CQUFtQixFQUFFLEdBQUc7SUFDeEIsbUJBQW1CLEVBQUcsc0VBQXNFO0NBQy9GLENBQUM7QUFDRixNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRztJQUM5QixRQUFRLEVBQUU7UUFDTixLQUFLLEVBQUUsYUFBYTtRQUNwQixJQUFJLEVBQUUsaUJBQWlCO1FBQ3ZCLElBQUksRUFBRSxpQkFBaUI7UUFDdkIsT0FBTyxFQUFFLG9CQUFvQjtRQUM3QixTQUFTLEVBQUUsc0JBQXNCO1FBQ2pDLFVBQVUsRUFBRSx1QkFBdUI7UUFDbkMsWUFBWSxFQUFFLHlCQUF5QjtRQUN2QyxLQUFLLEVBQUUsa0JBQWtCO1FBQ3pCLEtBQUssRUFBRSxrQkFBa0I7UUFDekIsTUFBTSxFQUFFLG1CQUFtQjtLQUM5QjtJQUNELE1BQU0sRUFBRSxDQUFDLFVBQVU7UUFDZixnQkFBZ0I7UUFDaEIsVUFBVTtRQUNWLGNBQWM7UUFDZCxRQUFRO1FBQ1IscUJBQXFCO1FBQ3JCLGtCQUFrQjtRQUNsQixZQUFZO1FBQ1osU0FBUztRQUNULHNCQUFzQjtRQUN0QixhQUFhO1FBQ2IsU0FBUztRQUNULFFBQVE7UUFDUixNQUFNO1FBQ04sVUFBVTtRQUNWLGVBQWU7UUFDZixTQUFTO1FBQ1QsYUFBYTtRQUNiLFdBQVc7UUFDWCxVQUFVO1FBQ1YsV0FBVyxDQUFDO0lBQ2hC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RTtZQUNmLEdBQUcsRUFBRSw4RkFBOEY7WUFDL0YsTUFBTSxFQUFFLEtBQUs7U0FDcEI7UUFDRCxrQkFBa0IsRUFBRTtZQUNoQixHQUFHLEVBQUUsZ0VBQWdFO1lBQ2pFLE1BQU0sRUFBRSxNQUFNO1NBQ3JCO1FBQ0QscUJBQXFCLEVBQUU7WUFDbkIsR0FBRyxFQUFFLG9GQUFvRjtZQUNyRixNQUFNLEVBQUUsTUFBTTtTQUNyQjtRQUNELHFCQUFxQixFQUFFO1lBQ25CLEdBQUcsRUFBRSxvSEFBb0g7WUFDckgsTUFBTSxFQUFFLEtBQUs7U0FDcEI7UUFDRCx1QkFBdUIsRUFBRTtZQUNyQixHQUFHLEVBQUUseURBQXlEO1lBQzlELE1BQU0sRUFBRSxLQUFLO1NBQ2hCO0tBQ0o7SUFDRyxrQkFBa0IsRUFBRztRQUNqQixtQkFBbUIsRUFBRTtZQUNqQixHQUFHLEVBQUUsOENBQThDO1lBQy9DLE1BQU0sRUFBRSxLQUFLO1NBQ3BCO0tBQ0o7Q0FDSixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7JHJvb3RTY29wZSBhcyByb290U2NvcGV9IGZyb20gJ0B3YXZlbWFrZXIvdmFyaWFibGVzJztcbmV4cG9ydCBjb25zdCBDT05TVEFOVFMgPSB7XG4gICAgaXNTdHVkaW9Nb2RlOiBmYWxzZSxcbiAgICBpc1J1bk1vZGU6IHRydWUsXG4gICAgWFNSRl9DT09LSUVfTkFNRTogJ3dtX3hzcmZfdG9rZW4nLFxuICAgIERFRkFVTFRfVElNRVJfREVMQVk6IDUwMCxcbiAgICBXSURHRVRfRE9FU05UX0VYSVNUIDogJ1RoZSB3aWRnZXQgeW91XFwncmUgdHJ5aW5nIHRvIG5hdmlnYXRlIHRvIGRvZXNuXFwndCBleGlzdCBvbiB0aGlzIHBhZ2UnXG59O1xuZXhwb3J0IGNvbnN0IFZBUklBQkxFX0NPTlNUQU5UUyA9IHtcbiAgICBDQVRFR09SWToge1xuICAgICAgICBNT0RFTDogJ3dtLlZhcmlhYmxlJyxcbiAgICAgICAgTElWRTogJ3dtLkxpdmVWYXJpYWJsZScsXG4gICAgICAgIENSVUQ6ICd3bS5DcnVkVmFyaWFibGUnLFxuICAgICAgICBTRVJWSUNFOiAnd20uU2VydmljZVZhcmlhYmxlJyxcbiAgICAgICAgV0VCU09DS0VUOiAnd20uV2ViU29ja2V0VmFyaWFibGUnLFxuICAgICAgICBOQVZJR0FUSU9OOiAnd20uTmF2aWdhdGlvblZhcmlhYmxlJyxcbiAgICAgICAgTk9USUZJQ0FUSU9OOiAnd20uTm90aWZpY2F0aW9uVmFyaWFibGUnLFxuICAgICAgICBUSU1FUjogJ3dtLlRpbWVyVmFyaWFibGUnLFxuICAgICAgICBMT0dJTjogJ3dtLkxvZ2luVmFyaWFibGUnLFxuICAgICAgICBMT0dPVVQ6ICd3bS5Mb2dvdXRWYXJpYWJsZScsXG4gICAgfSxcbiAgICBFVkVOVFM6IFsnb25CZWZvcmUnLFxuICAgICAgICAnb25CZWZvcmVVcGRhdGUnLFxuICAgICAgICAnb25SZXN1bHQnLFxuICAgICAgICAnb25CZWZvcmVPcGVuJyxcbiAgICAgICAgJ29uT3BlbicsXG4gICAgICAgICdvbkJlZm9yZU1lc3NhZ2VTZW5kJyxcbiAgICAgICAgJ29uTWVzc2FnZVJlY2VpdmUnLFxuICAgICAgICAnb25Qcm9ncmVzcycsXG4gICAgICAgICdvbkVycm9yJyxcbiAgICAgICAgJ29uQmVmb3JlRGF0YXNldFJlYWR5JyxcbiAgICAgICAgJ29uQ2FuVXBkYXRlJyxcbiAgICAgICAgJ29uQ2xpY2snLFxuICAgICAgICAnb25IaWRlJyxcbiAgICAgICAgJ29uT2snLFxuICAgICAgICAnb25DYW5jZWwnLFxuICAgICAgICAnb25CZWZvcmVDbG9zZScsXG4gICAgICAgICdvbkNsb3NlJyxcbiAgICAgICAgJ29uVGltZXJGaXJlJyxcbiAgICAgICAgJ29uU3VjY2VzcycsXG4gICAgICAgICdvbk9ubGluZScsXG4gICAgICAgICdvbk9mZmxpbmUnXSxcbiAgICBFVkVOVDoge1xuICAgICAgICAnQ0FOX1VQREFURSc6ICdvbkNhblVwZGF0ZScsXG4gICAgICAgICdCRUZPUkUnOiAnb25CZWZvcmUnLFxuICAgICAgICAnQkVGT1JFX1VQREFURSc6ICdvbkJlZm9yZVVwZGF0ZScsXG4gICAgICAgICdQUkVQQVJFX1NFVERBVEEnOiAnb25CZWZvcmVEYXRhc2V0UmVhZHknLFxuICAgICAgICAnUkVTVUxUJzogJ29uUmVzdWx0JyxcbiAgICAgICAgJ0VSUk9SJzogJ29uRXJyb3InLFxuICAgICAgICAnQUJPUlQnOiAnb25BYm9ydCcsXG4gICAgICAgICdQUk9HUkVTUyc6ICdvblByb2dyZXNzJyxcbiAgICAgICAgJ0NMSUNLJzogJ29uQ2xpY2snLFxuICAgICAgICAnSElERSc6ICdvbkhpZGUnLFxuICAgICAgICAnT0snOiAnb25PaycsXG4gICAgICAgICdDQU5DRUwnOiAnb25DYW5jZWwnLFxuICAgICAgICAnQ0xPU0UnOiAnb25DbG9zZScsXG4gICAgICAgICdUSU1FUl9GSVJFJzogJ29uVGltZXJGaXJlJyxcbiAgICAgICAgJ1NVQ0NFU1MnOiAnb25TdWNjZXNzJyxcbiAgICAgICAgJ0JFRk9SRV9PUEVOJzogJ29uQmVmb3JlT3BlbicsXG4gICAgICAgICdPUEVOJzogJ29uT3BlbicsXG4gICAgICAgICdCRUZPUkVfU0VORCc6ICdvbkJlZm9yZU1lc3NhZ2VTZW5kJyxcbiAgICAgICAgJ01FU1NBR0VfUkVDRUlWRSc6ICdvbk1lc3NhZ2VSZWNlaXZlJyxcbiAgICAgICAgJ0JFRk9SRV9DTE9TRSc6ICdvbkJlZm9yZUNsb3NlJ1xuICAgIH0sXG4gICAgT1dORVI6IHtcbiAgICAgICAgJ0FQUCc6ICdBcHAnLFxuICAgICAgICAnUEFHRSc6ICdQYWdlJ1xuICAgIH0sXG4gICAgUkVTVF9TVVBQT1JURURfU0VSVklDRVM6IFsnSmF2YVNlcnZpY2UnLCAnU29hcFNlcnZpY2UnLCAnRmVlZFNlcnZpY2UnLCAnUmVzdFNlcnZpY2UnLCAnU2VjdXJpdHlTZXJ2aWNlVHlwZScsICdEYXRhU2VydmljZScsICdXZWJTb2NrZXRTZXJ2aWNlJywgJ09wZW5BUElTZXJ2aWNlJ10sXG4gICAgUEFHSU5BVElPTl9QQVJBTVM6IFsncGFnZScsICdzaXplJywgJ3NvcnQnXSxcbiAgICBSRVNUX1NFUlZJQ0U6IHtcbiAgICAgICAgJ0JBU0VfUEFUSF9LRVknOiAneC1XTS1CQVNFX1BBVEgnLFxuICAgICAgICAnUkVMQVRJVkVfUEFUSF9LRVknOiAneC1XTS1SRUxBVElWRV9QQVRIJyxcbiAgICAgICAgJ09BVVRIX1BST1ZJREVSX0tFWSc6ICd4LVdNLVBST1ZJREVSX0lEJyxcbiAgICAgICAgJ0FVVEhfSERSX0tFWSc6ICdBdXRob3JpemF0aW9uJyxcbiAgICAgICAgJ1NFQ1VSSVRZX0RFRk4nOiB7XG4gICAgICAgICAgICAnQkFTSUMnOiAnYmFzaWMnLFxuICAgICAgICAgICAgJ09BVVRIMic6ICdvYXV0aDInLFxuICAgICAgICB9LFxuICAgICAgICAnQVVUSF9UWVBFJzoge1xuICAgICAgICAgICAgJ0JBU0lDJzogJ0JBU0lDJyxcbiAgICAgICAgICAgICdPQVVUSCc6ICdPQVVUSDInLFxuICAgICAgICAgICAgJ05PTkUnOiAnTk9ORScsXG4gICAgICAgIH0sXG4gICAgICAgICdDT05URU5UX1RZUEVfS0VZJzogJ3gtV00tQ09OVEVOVF9UWVBFJyxcbiAgICAgICAgJ0FDQ0VTU1RPS0VOX1BMQUNFSE9MREVSJzoge1xuICAgICAgICAgICAgJ0xFRlQnOiAnJyxcbiAgICAgICAgICAgICdSSUdIVCc6ICcuYWNjZXNzX3Rva2VuJ1xuICAgICAgICB9LFxuICAgICAgICBFUlJfVFlQRToge1xuICAgICAgICAgICAgTk9fQUNDRVNTVE9LRU46ICdtaXNzaW5nX2FjY2Vzc3Rva2VuJyxcbiAgICAgICAgICAgIE5PX0NSRURFTlRJQUxTOiAnbm9fY3JlZGVudGlhbHMnLFxuICAgICAgICAgICAgTUVUQURBVEFfTUlTU0lORzogJ21ldGFkYXRhX21pc3NpbmcnLFxuICAgICAgICAgICAgQ1JVRF9PUEVSQVRJT05fTUlTU0lORzogJ2NydWRfb3BlcmF0aW9uX21pc3NpbmcnLFxuICAgICAgICAgICAgVVNFUl9VTkFVVEhPUklTRUQ6ICd1c2VyX3VuYXV0aG9yaXNlZCcsXG4gICAgICAgICAgICBSRVFVSVJFRF9GSUVMRF9NSVNTSU5HOiAncmVxdWlyZWRfZmllbGRfbWlzc2luZycsXG4gICAgICAgIH0sXG4gICAgICAgIEVSUl9NU0c6IHtcbiAgICAgICAgICAgIE5PX0FDQ0VTU1RPS0VOOiAnQWNjZXNzIHRva2VuIG1pc3NpbmcnLFxuICAgICAgICAgICAgTk9fQ1JFREVOVElBTFM6ICdObyBjcmVkZW50aWFscyBwcmVzZW50JyxcbiAgICAgICAgICAgIE1FVEFEQVRBX01JU1NJTkc6ICdNZXRhZGF0YSBtaXNzaW5nIGZvciBcIiR2YXJpYWJsZVwiJyxcbiAgICAgICAgICAgIFVTRVJfVU5BVVRIT1JJU0VEOiAnVW5hdXRob3JpemVkIFVzZXInLFxuICAgICAgICAgICAgQ1JVRF9PUEVSQVRJT05fTUlTU0lORzogJ09wZXJhdGlvbiBcIiRvcGVyYXRpb25cIiBub3QgYWxsb3dlZCBmb3IgXCIkdmFyaWFibGVcIicsXG4gICAgICAgICAgICBSRVFVSVJFRF9GSUVMRF9NSVNTSU5HOiAnUmVxdWlyZWQgZmllbGQocykgbWlzc2luZzogXCIkezB9XCInXG4gICAgICAgIH0sXG4gICAgICAgIFVOQ0xPQUtFRF9IRUFERVJTOiBbJ0NPTlRFTlQtVFlQRScsICdBQ0NFUFQnLCAnQ09OVEVOVC1MRU5HVEgnLCAnQUNDRVBULUVOQ09ESU5HJywgJ0FDQ0VQVC1MQU5HVUFHRSddLFxuICAgICAgICBQUkVGSVg6IHtcbiAgICAgICAgICAgIEFVVEhfSERSX1ZBTDoge1xuICAgICAgICAgICAgICAgIEJBU0lDOiAnQmFzaWMnLFxuICAgICAgICAgICAgICAgIE9BVVRIOiAnQmVhcmVyJ1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIENMT0FLX0hFQURFUl9LRVk6ICdYLVdNLSdcbiAgICAgICAgfVxuICAgIH0sXG4gICAgU0VSVklDRV9UWVBFOiB7XG4gICAgICAgIEpBVkE6ICdKYXZhU2VydmljZScsXG4gICAgICAgIFJFU1Q6ICdSZXN0U2VydmljZScsXG4gICAgICAgIFNPQVA6ICdTb2FwU2VydmljZScsXG4gICAgICAgIEZFRUQ6ICdGZWVkU2VydmljZScsXG4gICAgICAgIERBVEE6ICdEYXRhU2VydmljZScsXG4gICAgICAgIFNFQ1VSSVRZOiAnU2VjdXJpdHlTZXJ2aWNlVHlwZScsXG4gICAgICAgIFdFQlNPQ0tFVDogJ1dlYlNvY2tldFNlcnZpY2UnLFxuICAgICAgICBPUEVOQVBJOiAnT3BlbkFQSVNlcnZpY2UnXG4gICAgfSxcbiAgICBDT05UUk9MTEVSX1RZUEU6IHtcbiAgICAgICAgUVVFUlk6ICdRdWVyeUV4ZWN1dGlvbicsXG4gICAgICAgIFBST0NFRFVSRTogJ1Byb2NlZHVyZUV4ZWN1dGlvbidcbiAgICB9LFxuICAgIEhUVFBfU1RBVFVTX0NPREU6IHtcbiAgICAgICAgQ09SU19GQUlMVVJFOiAtMSxcbiAgICAgICAgVU5BVVRIT1JJWkVEOiA0MDEsXG4gICAgICAgIEZPUkJJRERFTjogNDAzXG4gICAgfSxcbiAgICBFWFBPUlRfVFlQRVNfTUFQOiB7XG4gICAgICAgICdFWENFTCcgOiAnLnhsc3gnLFxuICAgICAgICAnQ1NWJyA6ICcuY3N2J30sXG4gICAgREVGQVVMVF9WQVIgOiB7XG4gICAgICAgICdOT1RJRklDQVRJT04nIDogJ2FwcE5vdGlmaWNhdGlvbidcbiAgICB9XG59O1xuXG5leHBvcnQgY29uc3QgV1NfQ09OU1RBTlRTID0ge1xuICAgIE5PTl9CT0RZX0hUVFBfTUVUSE9EUzogWydHRVQnLCAnSEVBRCddLFxuICAgIENPTlRFTlRfVFlQRVM6IHtcbiAgICAgICAgRk9STV9VUkxfRU5DT0RFRDogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcsXG4gICAgICAgIE1VTFRJUEFSVF9GT1JNREFUQTogJ211bHRpcGFydC9mb3JtLWRhdGEnLFxuICAgICAgICBPQ1RFVF9TVFJFQU06ICdhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0nXG4gICAgfVxufTtcblxuZXhwb3J0IGNvbnN0IE1PREVfQ09OU1RBTlRTID0ge1xuICAgIExJR0hUOiAnbGlnaHQnLFxuICAgIERFRkFVTFQ6ICdkZWZhdWx0JyxcbiAgICBDT0xPUjogJ2NvbG9yJyxcbiAgICBGT05UOiAnZm9udCcsXG4gICAgU1BBQ0U6ICdzcGFjZScsXG4gICAgUkFESVVTOiAncmFkaXVzJyxcbiAgICBNT0RFX0tFWTogJ2FwcC1tb2RlJ1xufTtcblxuZXhwb3J0IGNvbnN0IERCX0NPTlNUQU5UUyA9IHtcbiAgICAnREFUQUJBU0VfTUFUQ0hfTU9ERVMnOiB7XG4gICAgICAgICdsaWtlJyAgICAgICAgICAgICA6ICdMSUtFJyxcbiAgICAgICAgJ3N0YXJ0JyAgICAgICAgICAgIDogJ1NUQVJUSU5HX1dJVEgnLFxuICAgICAgICAnc3RhcnRpZ25vcmVjYXNlJyAgOiAnU1RBUlRJTkdfV0lUSF9JR05PUkVDQVNFJyxcbiAgICAgICAgJ2VuZCcgICAgICAgICAgICAgIDogJ0VORElOR19XSVRIJyxcbiAgICAgICAgJ2VuZGlnbm9yZWNhc2UnICAgIDogJ0VORElOR19XSVRIX0lHTk9SRUNBU0UnLFxuICAgICAgICAnYW55d2hlcmUnICAgICAgICAgOiAnQ09OVEFJTklORycsXG4gICAgICAgICdhbnl3aGVyZWlnbm9yZWNhc2UnOiAnQ09OVEFJTklOR19JR05PUkVDQVNFJyxcbiAgICAgICAgJ25vd2hlcmUnICAgICAgICAgIDogJ0RPRVNfTk9UX0NPTlRBSU4nLFxuICAgICAgICAnbm93aGVyZWlnbm9yZWNhc2UnOiAnRE9FU19OT1RfQ09OVEFJTl9JR05PUkVDQVNFJyxcbiAgICAgICAgJ2V4YWN0JyAgICAgICAgICAgIDogJ0VRVUFMUycsXG4gICAgICAgICdleGFjdGlnbm9yZWNhc2UnICA6ICdFUVVBTFNfSUdOT1JFQ0FTRScsXG4gICAgICAgICdub3RlcXVhbHMnICAgICAgICA6ICdOT1RfRVFVQUxTJyxcbiAgICAgICAgXCJub3RlcXVhbHNpZ25vcmVjYXNlXCI6IFwiTk9UX0VRVUFMU19JR05PUkVDQVNFXCIsXG4gICAgICAgICdiZXR3ZWVuJyAgICAgICAgICA6ICdCRVRXRUVOJyxcbiAgICAgICAgJ2luJyAgICAgICAgICAgICAgIDogJ0lOJyxcbiAgICAgICAgXCJub3RpblwiICAgICAgICAgICAgOiBcIk5PVElOXCIsXG4gICAgICAgICdsZXNzdGhhbicgICAgICAgICA6ICdMRVNTX1RIQU4nLFxuICAgICAgICAnbGVzc3RoYW5lcXVhbCcgICAgOiAnTEVTU19USEFOX09SX0VRVUFMUycsXG4gICAgICAgICdncmVhdGVydGhhbicgICAgICA6ICdHUkVBVEVSX1RIQU4nLFxuICAgICAgICAnZ3JlYXRlcnRoYW5lcXVhbCcgOiAnR1JFQVRFUl9USEFOX09SX0VRVUFMUycsXG4gICAgICAgICdudWxsJyAgICAgICAgICAgICA6ICdOVUxMJyxcbiAgICAgICAgJ2lzbm90bnVsbCcgICAgICAgIDogJ0lTX05PVF9OVUxMJyxcbiAgICAgICAgJ2VtcHR5JyAgICAgICAgICAgIDogJ0VNUFRZJyxcbiAgICAgICAgJ2lzbm90ZW1wdHknICAgICAgIDogJ0lTX05PVF9FTVBUWScsXG4gICAgICAgICdudWxsb3JlbXB0eScgICAgICA6ICdOVUxMX09SX0VNUFRZJ1xuICAgIH0sXG4gICAgJ0RBVEFCQVNFX0VNUFRZX01BVENIX01PREVTJzogWydOVUxMJywgJ0lTX05PVF9OVUxMJywgJ0VNUFRZJywgJ0lTX05PVF9FTVBUWScsICdOVUxMX09SX0VNUFRZJ10sXG4gICAgJ0RBVEFCQVNFX1JBTkdFX01BVENIX01PREVTJzogWydJTicsICdOT1RJTicsICdCRVRXRUVOJywgJ0xFU1NfVEhBTicsICdMRVNTX1RIQU5fT1JfRVFVQUxTJywgJ0dSRUFURVJfVEhBTicsICdHUkVBVEVSX1RIQU5fT1JfRVFVQUxTJywgJ05PVF9FUVVBTFMnXSxcbiAgICAnREFUQUJBU0VfTlVMTF9FTVBUWV9NQVRDSCc6IHtcbiAgICAgICAgJ05VTEwnICAgICAgICAgIDogJ05VTEwnLFxuICAgICAgICAnSVNfTk9UX05VTEwnICAgOiAnSVNfTk9UX05VTEwnLFxuICAgICAgICAnRU1QVFknICAgICAgICAgOiAnTlVMTCcsXG4gICAgICAgICdJU19OT1RfRU1QVFknICA6ICdJU19OT1RfTlVMTCcsXG4gICAgICAgICdOVUxMX09SX0VNUFRZJyA6ICdOVUxMJ1xuICAgIH0sXG4gICAgJ0RBVEFCQVNFX01BVENIX01PREVTX1dJVEhfUVVFUlknOiB7XG4gICAgICAgICdMSUtFJyAgICAgICAgICAgICAgICAgICA6ICckezB9IGxpa2UgJHsxfScsXG4gICAgICAgICdTVEFSVElOR19XSVRIJyAgICAgICAgICA6ICckezB9IGxpa2UgJHsxfScsXG4gICAgICAgICdTVEFSVElOR19XSVRIX0lHTk9SRUNBU0UnOiAnJHswfSBsaWtlICR7MX0nLFxuICAgICAgICAnRU5ESU5HX1dJVEgnICAgICAgICAgICAgOiAnJHswfSBsaWtlICR7MX0nLFxuICAgICAgICAnRU5ESU5HX1dJVEhfSUdOT1JFQ0FTRScgOiAnJHswfSBsaWtlICR7MX0nLFxuICAgICAgICAnQ09OVEFJTklORycgICAgICAgICAgICAgOiAnJHswfSBsaWtlICR7MX0nLFxuICAgICAgICAnQ09OVEFJTklOR19JR05PUkVDQVNFJyAgOiAnJHswfSBsaWtlICR7MX0nLFxuICAgICAgICAnRE9FU19OT1RfQ09OVEFJTicgICAgICAgOiAnJHswfSBub3QgbGlrZSAkezF9JyxcbiAgICAgICAgJ0RPRVNfTk9UX0NPTlRBSU5fSUdOT1JFQ0FTRSc6ICckezB9IG5vdCBsaWtlICR7MX0nLFxuICAgICAgICAnRVFVQUxTJyAgICAgICAgICAgICAgICAgOiAnJHswfT0kezF9JyxcbiAgICAgICAgJ0VRVUFMU19JR05PUkVDQVNFJyAgICAgIDogJyR7MH09JHsxfScsXG4gICAgICAgICdOT1RfRVFVQUxTJyAgICAgICAgICAgICA6ICckezB9IT0kezF9JyxcbiAgICAgICAgXCJOT1RfRVFVQUxTX0lHTk9SRUNBU0VcIiAgOiBcIiR7MH0hPSR7MX1cIixcbiAgICAgICAgJ0JFVFdFRU4nICAgICAgICAgICAgICAgIDogJyR7MH0gYmV0d2VlbiAkezF9JyxcbiAgICAgICAgJ0lOJyAgICAgICAgICAgICAgICAgICAgIDogJyR7MH0gaW4gJHsxfScsXG4gICAgICAgICdOT1RJTicgICAgICAgICAgICAgICAgICA6IFwiJHswfSBub3QgaW4gJHsxfVwiLFxuICAgICAgICAnTEVTU19USEFOJyAgICAgICAgICAgICAgOiAnJHswfTwkezF9JyxcbiAgICAgICAgJ0xFU1NfVEhBTl9PUl9FUVVBTFMnICAgIDogJyR7MH08PSR7MX0nLFxuICAgICAgICAnR1JFQVRFUl9USEFOJyAgICAgICAgICAgOiAnJHswfT4kezF9JyxcbiAgICAgICAgJ0dSRUFURVJfVEhBTl9PUl9FUVVBTFMnIDogJyR7MH0+PSR7MX0nLFxuICAgICAgICAnTlVMTCcgICAgICAgICAgICAgICAgICAgOiAnJHswfSBpcyBudWxsJyxcbiAgICAgICAgJ0lTX05PVF9OVUxMJyAgICAgICAgICAgIDogJyR7MH0gaXMgbm90IG51bGwnLFxuICAgICAgICAnRU1QVFknICAgICAgICAgICAgICAgICAgOiAnJHswfT1cXCdcXCcnLFxuICAgICAgICAnSVNfTk9UX0VNUFRZJyAgICAgICAgICAgOiAnJHswfTw+XFwnXFwnJyxcbiAgICAgICAgJ05VTExfT1JfRU1QVFknICAgICAgICAgIDogJyR7MH0gaXMgbnVsbCBvciAkezB9PVxcJ1xcJydcbiAgICB9LFxuICAgICdEQVRBQkFTRV9TVFJJTkdfTU9ERVMnOiBbJ0xJS0UnLCAnU1RBUlRJTkdfV0lUSCcsICdTVEFSVElOR19XSVRIX0lHTk9SRUNBU0UnLCAnRU5ESU5HX1dJVEgnLCAnRU5ESU5HX1dJVEhfSUdOT1JFQ0FTRScsICdDT05UQUlOSU5HJywgJ0NPTlRBSU5JTkdfSUdOT1JFQ0FTRScsICdET0VTX05PVF9DT05UQUlOJywgJ0RPRVNfTk9UX0NPTlRBSU5fSUdOT1JFQ0FTRScsICdFUVVBTFMnLCAnRVFVQUxTX0lHTk9SRUNBU0UnLCAnTk9UX0VRVUFMUycsIFwiTk9UX0VRVUFMU19JR05PUkVDQVNFXCJdXG59O1xuXG5leHBvcnQgY29uc3QgU1dBR0dFUl9DT05TVEFOVFMgPSB7XG4gICAgV01fREFUQV9KU09OOiAnd21fZGF0YV9qc29uJyxcbiAgICBXTV9IVFRQX0pTT046ICd3bV9odHRwUmVxdWVzdERldGFpbHMnXG59O1xuXG5leHBvcnQgY29uc3QgVkFSSUFCTEVfVVJMUyA9IHtcbiAgICBEQVRBQkFTRToge1xuICAgIHNlYXJjaFRhYmxlRGF0YToge1xuICAgICAgICB1cmw6ICcvOnNlcnZpY2UvOmRhdGFNb2RlbE5hbWUvOmVudGl0eU5hbWUvc2VhcmNoP3BhZ2U9OnBhZ2Umc2l6ZT06c2l6ZSY6c29ydCcsXG4gICAgICAgICAgICBtZXRob2Q6ICdQT1NUJ1xuICAgIH0sXG4gICAgc2VhcmNoVGFibGVEYXRhV2l0aFF1ZXJ5OiB7XG4gICAgICAgIHVybDogJy86c2VydmljZS86ZGF0YU1vZGVsTmFtZS86ZW50aXR5TmFtZS9maWx0ZXI/cGFnZT06cGFnZSZzaXplPTpzaXplJjpzb3J0JyxcbiAgICAgICAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQnXG4gICAgICAgIH1cbiAgICB9LFxuICAgIHJlYWRUYWJsZURhdGE6IHtcbiAgICAgICAgdXJsOiAnLzpzZXJ2aWNlLzpkYXRhTW9kZWxOYW1lLzplbnRpdHlOYW1lP3BhZ2U9OnBhZ2Umc2l6ZT06c2l6ZSY6c29ydCcsXG4gICAgICAgICAgICBtZXRob2Q6ICdHRVQnXG4gICAgfSxcbiAgICBpbnNlcnRUYWJsZURhdGE6IHtcbiAgICAgICAgdXJsOiAnLzpzZXJ2aWNlLzpkYXRhTW9kZWxOYW1lLzplbnRpdHlOYW1lJyxcbiAgICAgICAgICAgIG1ldGhvZDogJ1BPU1QnXG4gICAgfSxcbiAgICBpbnNlcnRNdWx0aVBhcnRUYWJsZURhdGE6IHtcbiAgICAgICAgdXJsOiAnLzpzZXJ2aWNlLzpkYXRhTW9kZWxOYW1lLzplbnRpdHlOYW1lJyxcbiAgICAgICAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgICAgICAgaGVhZGVyczoge31cbiAgICAgICAgICAgIC8vICx0cmFuc2Zvcm1SZXF1ZXN0OiBXTS5pZGVudGl0eVxuICAgIH0sXG4gICAgdXBkYXRlVGFibGVEYXRhOiB7XG4gICAgICAgIHVybDogJy86c2VydmljZS86ZGF0YU1vZGVsTmFtZS86ZW50aXR5TmFtZS86aWQnLFxuICAgICAgICAgICAgbWV0aG9kOiAnUFVUJ1xuICAgIH0sXG4gICAgdXBkYXRlTXVsdGlQYXJ0VGFibGVEYXRhOiB7XG4gICAgICAgIHVybDogJy86c2VydmljZS86ZGF0YU1vZGVsTmFtZS86ZW50aXR5TmFtZS86aWQnLFxuICAgICAgICAgICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgICAgICAgICBoZWFkZXJzOiB7fVxuICAgICAgICAgICAgLy8gLHRyYW5zZm9ybVJlcXVlc3Q6IFdNLmlkZW50aXR5XG4gICAgfSxcbiAgICBkZWxldGVUYWJsZURhdGE6IHtcbiAgICAgICAgdXJsOiAnLzpzZXJ2aWNlLzpkYXRhTW9kZWxOYW1lLzplbnRpdHlOYW1lLzppZCcsXG4gICAgICAgICAgICBtZXRob2Q6ICdERUxFVEUnXG4gICAgfSxcbiAgICB1cGRhdGVDb21wb3NpdGVUYWJsZURhdGE6IHtcbiAgICAgICAgdXJsOiAnLzpzZXJ2aWNlLzpkYXRhTW9kZWxOYW1lLzplbnRpdHlOYW1lL2NvbXBvc2l0ZS1pZD86aWQnLFxuICAgICAgICAgICAgbWV0aG9kOiAnUFVUJ1xuICAgIH0sXG4gICAgcGVyaW9kVXBkYXRlQ29tcG9zaXRlVGFibGVEYXRhOiB7XG4gICAgICAgIHVybDogJy86c2VydmljZS86ZGF0YU1vZGVsTmFtZS86ZW50aXR5TmFtZS9jb21wb3NpdGUtaWQvcGVyaW9kcz86aWQnLFxuICAgICAgICAgICAgbWV0aG9kOiAnUFVUJ1xuICAgIH0sXG4gICAgdXBkYXRlTXVsdGlQYXJ0Q29tcG9zaXRlVGFibGVEYXRhOiB7XG4gICAgICAgIHVybDogJy86c2VydmljZS86ZGF0YU1vZGVsTmFtZS86ZW50aXR5TmFtZS9jb21wb3NpdGUtaWQ/OmlkJyxcbiAgICAgICAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgICAgICAgaGVhZGVyczoge31cbiAgICAgICAgICAgIC8vICwgdHJhbnNmb3JtUmVxdWVzdDogV00uaWRlbnRpdHlcbiAgICB9LFxuICAgIGRlbGV0ZUNvbXBvc2l0ZVRhYmxlRGF0YToge1xuICAgICAgICB1cmw6ICcvOnNlcnZpY2UvOmRhdGFNb2RlbE5hbWUvOmVudGl0eU5hbWUvY29tcG9zaXRlLWlkPzppZCcsXG4gICAgICAgICAgICBtZXRob2Q6ICdERUxFVEUnXG4gICAgfSxcbiAgICBwZXJpb2REZWxldGVDb21wb3NpdGVUYWJsZURhdGE6IHtcbiAgICAgICAgdXJsOiAnLzpzZXJ2aWNlLzpkYXRhTW9kZWxOYW1lLzplbnRpdHlOYW1lL2NvbXBvc2l0ZS1pZC9wZXJpb2RzPzppZCcsXG4gICAgICAgICAgICBtZXRob2Q6ICdERUxFVEUnXG4gICAgfSxcbiAgICBnZXREaXN0aW5jdERhdGFCeUZpZWxkczoge1xuICAgICAgICB1cmw6ICcvOnNlcnZpY2UvOmRhdGFNb2RlbE5hbWUvOmVudGl0eU5hbWUvYWdncmVnYXRpb25zP3BhZ2U9OnBhZ2Umc2l6ZT06c2l6ZSY6c29ydCcsXG4gICAgICAgICAgICBtZXRob2Q6ICdQT1NUJ1xuICAgIH0sXG4gICAgZXhwb3J0VGFibGVEYXRhOiB7XG4gICAgICAgIHVybDogJy9zZXJ2aWNlcy86ZGF0YU1vZGVsTmFtZS86ZW50aXR5TmFtZS9leHBvcnQ/OnNvcnQnLFxuICAgICAgICAgICAgbWV0aG9kOiAnUE9TVCdcbiAgICB9LFxuICAgIHJlYWRUYWJsZVJlbGF0ZWREYXRhOiB7XG4gICAgICAgIHVybDogJy86c2VydmljZS86ZGF0YU1vZGVsTmFtZS86ZW50aXR5TmFtZS86aWQvOnJlbGF0ZWRGaWVsZE5hbWU/cGFnZT06cGFnZSZzaXplPTpzaXplJjpzb3J0JyxcbiAgICAgICAgICAgIG1ldGhvZDogJ0dFVCdcbiAgICB9LFxuICAgIGV4ZWN1dGVOYW1lZFF1ZXJ5OiB7XG4gICAgICAgIHVybDogJy86c2VydmljZS86ZGF0YU1vZGVsTmFtZS9xdWVyeUV4ZWN1dG9yL3F1ZXJpZXMvOnF1ZXJ5TmFtZT9wYWdlPTpwYWdlJnNpemU9OnNpemUmOnF1ZXJ5UGFyYW1zJyxcbiAgICAgICAgICAgIG1ldGhvZDogJ0dFVCdcbiAgICB9LFxuICAgIGV4ZWN1dGVDdXN0b21RdWVyeToge1xuICAgICAgICB1cmw6ICcvOnNlcnZpY2UvOmRhdGFNb2RlbE5hbWUvcXVlcmllcy9leGVjdXRlP3BhZ2U9OnBhZ2Umc2l6ZT06c2l6ZScsXG4gICAgICAgICAgICBtZXRob2Q6ICdQT1NUJ1xuICAgIH0sXG4gICAgZXhlY3V0ZUFnZ3JlZ2F0ZVF1ZXJ5OiB7XG4gICAgICAgIHVybDogJy9zZXJ2aWNlcy86ZGF0YU1vZGVsTmFtZS86ZW50aXR5TmFtZS9hZ2dyZWdhdGlvbnM/cGFnZT06cGFnZSZzaXplPTpzaXplJnNvcnQ9OnNvcnQnLFxuICAgICAgICAgICAgbWV0aG9kOiAnUE9TVCdcbiAgICB9LFxuICAgIGV4ZWN1dGVOYW1lZFByb2NlZHVyZToge1xuICAgICAgICB1cmw6ICcvOnNlcnZpY2UvOmRhdGFNb2RlbE5hbWUvcHJvY2VkdXJlRXhlY3V0b3IvcHJvY2VkdXJlL2V4ZWN1dGUvOnByb2NlZHVyZU5hbWU/cGFnZT06cGFnZSZzaXplPTpzaXplJjpwcm9jZWR1cmVQYXJhbXMnLFxuICAgICAgICAgICAgbWV0aG9kOiAnR0VUJ1xuICAgIH0sXG4gICAgY291bnRUYWJsZURhdGFXaXRoUXVlcnk6IHtcbiAgICAgICAgdXJsOiAnLzpzZXJ2aWNlLzpkYXRhTW9kZWxOYW1lLzplbnRpdHlOYW1lL2NvdW50PzpxdWVyeVBhcmFtcycsXG4gICAgICAgIG1ldGhvZDogJ0dFVCdcbiAgICB9XG59LFxuICAgIG9hdXRoQ29uZmlndXJhdGlvbiA6IHtcbiAgICAgICAgZ2V0QXV0aG9yaXphdGlvblVybDoge1xuICAgICAgICAgICAgdXJsOiAnc2VydmljZXMvb2F1dGgyLzpwcm92aWRlcklkL2F1dGhvcml6YXRpb25VcmwnLFxuICAgICAgICAgICAgICAgIG1ldGhvZDogJ0dFVCdcbiAgICAgICAgfVxuICAgIH1cbn07XG5cbmV4cG9ydCBjb25zdCAkcm9vdFNjb3BlID0gcm9vdFNjb3BlO1xuIl19
333
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFyaWFibGVzLmNvbnN0YW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhcmlhYmxlcy9zcmMvY29uc3RhbnRzL3ZhcmlhYmxlcy5jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsSUFBSSxTQUFTLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUM3RCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUc7SUFDckIsWUFBWSxFQUFFLEtBQUs7SUFDbkIsU0FBUyxFQUFFLElBQUk7SUFDZixnQkFBZ0IsRUFBRSxlQUFlO0lBQ2pDLG1CQUFtQixFQUFFLEdBQUc7SUFDeEIsbUJBQW1CLEVBQUcsc0VBQXNFO0NBQy9GLENBQUM7QUFDRixNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRztJQUM5QixRQUFRLEVBQUU7UUFDTixLQUFLLEVBQUUsYUFBYTtRQUNwQixJQUFJLEVBQUUsaUJBQWlCO1FBQ3ZCLElBQUksRUFBRSxpQkFBaUI7UUFDdkIsT0FBTyxFQUFFLG9CQUFvQjtRQUM3QixTQUFTLEVBQUUsc0JBQXNCO1FBQ2pDLFVBQVUsRUFBRSxxQkFBcUI7UUFDakMsWUFBWSxFQUFFLHVCQUF1QjtRQUNyQyxLQUFLLEVBQUUsZ0JBQWdCO1FBQ3ZCLEtBQUssRUFBRSxnQkFBZ0I7UUFDdkIsTUFBTSxFQUFFLGlCQUFpQjtLQUM1QjtJQUNELE1BQU0sRUFBRSxDQUFDLFVBQVU7UUFDZixnQkFBZ0I7UUFDaEIsVUFBVTtRQUNWLGNBQWM7UUFDZCxRQUFRO1FBQ1IscUJBQXFCO1FBQ3JCLGtCQUFrQjtRQUNsQixZQUFZO1FBQ1osU0FBUztRQUNULHNCQUFzQjtRQUN0QixhQUFhO1FBQ2IsU0FBUztRQUNULFFBQVE7UUFDUixNQUFNO1FBQ04sVUFBVTtRQUNWLGVBQWU7UUFDZixTQUFTO1FBQ1QsYUFBYTtRQUNiLFdBQVc7UUFDWCxVQUFVO1FBQ1YsV0FBVyxDQUFDO0lBQ2hC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RTtZQUNmLEdBQUcsRUFBRSw4RkFBOEY7WUFDL0YsTUFBTSxFQUFFLEtBQUs7U0FDcEI7UUFDRCxrQkFBa0IsRUFBRTtZQUNoQixHQUFHLEVBQUUsZ0VBQWdFO1lBQ2pFLE1BQU0sRUFBRSxNQUFNO1NBQ3JCO1FBQ0QscUJBQXFCLEVBQUU7WUFDbkIsR0FBRyxFQUFFLG9GQUFvRjtZQUNyRixNQUFNLEVBQUUsTUFBTTtTQUNyQjtRQUNELHFCQUFxQixFQUFFO1lBQ25CLEdBQUcsRUFBRSxvSEFBb0g7WUFDckgsTUFBTSxFQUFFLEtBQUs7U0FDcEI7UUFDRCx1QkFBdUIsRUFBRTtZQUNyQixHQUFHLEVBQUUseURBQXlEO1lBQzlELE1BQU0sRUFBRSxLQUFLO1NBQ2hCO0tBQ0o7SUFDRyxrQkFBa0IsRUFBRztRQUNqQixtQkFBbUIsRUFBRTtZQUNqQixHQUFHLEVBQUUsOENBQThDO1lBQy9DLE1BQU0sRUFBRSxLQUFLO1NBQ3BCO0tBQ0o7Q0FDSixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7JHJvb3RTY29wZSBhcyByb290U2NvcGV9IGZyb20gJ0B3YXZlbWFrZXIvdmFyaWFibGVzJztcbmV4cG9ydCBjb25zdCBDT05TVEFOVFMgPSB7XG4gICAgaXNTdHVkaW9Nb2RlOiBmYWxzZSxcbiAgICBpc1J1bk1vZGU6IHRydWUsXG4gICAgWFNSRl9DT09LSUVfTkFNRTogJ3dtX3hzcmZfdG9rZW4nLFxuICAgIERFRkFVTFRfVElNRVJfREVMQVk6IDUwMCxcbiAgICBXSURHRVRfRE9FU05UX0VYSVNUIDogJ1RoZSB3aWRnZXQgeW91XFwncmUgdHJ5aW5nIHRvIG5hdmlnYXRlIHRvIGRvZXNuXFwndCBleGlzdCBvbiB0aGlzIHBhZ2UnXG59O1xuZXhwb3J0IGNvbnN0IFZBUklBQkxFX0NPTlNUQU5UUyA9IHtcbiAgICBDQVRFR09SWToge1xuICAgICAgICBNT0RFTDogJ3dtLlZhcmlhYmxlJyxcbiAgICAgICAgTElWRTogJ3dtLkxpdmVWYXJpYWJsZScsXG4gICAgICAgIENSVUQ6ICd3bS5DcnVkVmFyaWFibGUnLFxuICAgICAgICBTRVJWSUNFOiAnd20uU2VydmljZVZhcmlhYmxlJyxcbiAgICAgICAgV0VCU09DS0VUOiAnd20uV2ViU29ja2V0VmFyaWFibGUnLFxuICAgICAgICBOQVZJR0FUSU9OOiAnd20uTmF2aWdhdGlvbkFjdGlvbicsXG4gICAgICAgIE5PVElGSUNBVElPTjogJ3dtLk5vdGlmaWNhdGlvbkFjdGlvbicsXG4gICAgICAgIFRJTUVSOiAnd20uVGltZXJBY3Rpb24nLFxuICAgICAgICBMT0dJTjogJ3dtLkxvZ2luQWN0aW9uJyxcbiAgICAgICAgTE9HT1VUOiAnd20uTG9nb3V0QWN0aW9uJyxcbiAgICB9LFxuICAgIEVWRU5UUzogWydvbkJlZm9yZScsXG4gICAgICAgICdvbkJlZm9yZVVwZGF0ZScsXG4gICAgICAgICdvblJlc3VsdCcsXG4gICAgICAgICdvbkJlZm9yZU9wZW4nLFxuICAgICAgICAnb25PcGVuJyxcbiAgICAgICAgJ29uQmVmb3JlTWVzc2FnZVNlbmQnLFxuICAgICAgICAnb25NZXNzYWdlUmVjZWl2ZScsXG4gICAgICAgICdvblByb2dyZXNzJyxcbiAgICAgICAgJ29uRXJyb3InLFxuICAgICAgICAnb25CZWZvcmVEYXRhc2V0UmVhZHknLFxuICAgICAgICAnb25DYW5VcGRhdGUnLFxuICAgICAgICAnb25DbGljaycsXG4gICAgICAgICdvbkhpZGUnLFxuICAgICAgICAnb25PaycsXG4gICAgICAgICdvbkNhbmNlbCcsXG4gICAgICAgICdvbkJlZm9yZUNsb3NlJyxcbiAgICAgICAgJ29uQ2xvc2UnLFxuICAgICAgICAnb25UaW1lckZpcmUnLFxuICAgICAgICAnb25TdWNjZXNzJyxcbiAgICAgICAgJ29uT25saW5lJyxcbiAgICAgICAgJ29uT2ZmbGluZSddLFxuICAgIEVWRU5UOiB7XG4gICAgICAgICdDQU5fVVBEQVRFJzogJ29uQ2FuVXBkYXRlJyxcbiAgICAgICAgJ0JFRk9SRSc6ICdvbkJlZm9yZScsXG4gICAgICAgICdCRUZPUkVfVVBEQVRFJzogJ29uQmVmb3JlVXBkYXRlJyxcbiAgICAgICAgJ1BSRVBBUkVfU0VUREFUQSc6ICdvbkJlZm9yZURhdGFzZXRSZWFkeScsXG4gICAgICAgICdSRVNVTFQnOiAnb25SZXN1bHQnLFxuICAgICAgICAnRVJST1InOiAnb25FcnJvcicsXG4gICAgICAgICdBQk9SVCc6ICdvbkFib3J0JyxcbiAgICAgICAgJ1BST0dSRVNTJzogJ29uUHJvZ3Jlc3MnLFxuICAgICAgICAnQ0xJQ0snOiAnb25DbGljaycsXG4gICAgICAgICdISURFJzogJ29uSGlkZScsXG4gICAgICAgICdPSyc6ICdvbk9rJyxcbiAgICAgICAgJ0NBTkNFTCc6ICdvbkNhbmNlbCcsXG4gICAgICAgICdDTE9TRSc6ICdvbkNsb3NlJyxcbiAgICAgICAgJ1RJTUVSX0ZJUkUnOiAnb25UaW1lckZpcmUnLFxuICAgICAgICAnU1VDQ0VTUyc6ICdvblN1Y2Nlc3MnLFxuICAgICAgICAnQkVGT1JFX09QRU4nOiAnb25CZWZvcmVPcGVuJyxcbiAgICAgICAgJ09QRU4nOiAnb25PcGVuJyxcbiAgICAgICAgJ0JFRk9SRV9TRU5EJzogJ29uQmVmb3JlTWVzc2FnZVNlbmQnLFxuICAgICAgICAnTUVTU0FHRV9SRUNFSVZFJzogJ29uTWVzc2FnZVJlY2VpdmUnLFxuICAgICAgICAnQkVGT1JFX0NMT1NFJzogJ29uQmVmb3JlQ2xvc2UnXG4gICAgfSxcbiAgICBPV05FUjoge1xuICAgICAgICAnQVBQJzogJ0FwcCcsXG4gICAgICAgICdQQUdFJzogJ1BhZ2UnXG4gICAgfSxcbiAgICBSRVNUX1NVUFBPUlRFRF9TRVJWSUNFUzogWydKYXZhU2VydmljZScsICdTb2FwU2VydmljZScsICdGZWVkU2VydmljZScsICdSZXN0U2VydmljZScsICdTZWN1cml0eVNlcnZpY2VUeXBlJywgJ0RhdGFTZXJ2aWNlJywgJ1dlYlNvY2tldFNlcnZpY2UnLCAnT3BlbkFQSVNlcnZpY2UnXSxcbiAgICBQQUdJTkFUSU9OX1BBUkFNUzogWydwYWdlJywgJ3NpemUnLCAnc29ydCddLFxuICAgIFJFU1RfU0VSVklDRToge1xuICAgICAgICAnQkFTRV9QQVRIX0tFWSc6ICd4LVdNLUJBU0VfUEFUSCcsXG4gICAgICAgICdSRUxBVElWRV9QQVRIX0tFWSc6ICd4LVdNLVJFTEFUSVZFX1BBVEgnLFxuICAgICAgICAnT0FVVEhfUFJPVklERVJfS0VZJzogJ3gtV00tUFJPVklERVJfSUQnLFxuICAgICAgICAnQVVUSF9IRFJfS0VZJzogJ0F1dGhvcml6YXRpb24nLFxuICAgICAgICAnU0VDVVJJVFlfREVGTic6IHtcbiAgICAgICAgICAgICdCQVNJQyc6ICdiYXNpYycsXG4gICAgICAgICAgICAnT0FVVEgyJzogJ29hdXRoMicsXG4gICAgICAgIH0sXG4gICAgICAgICdBVVRIX1RZUEUnOiB7XG4gICAgICAgICAgICAnQkFTSUMnOiAnQkFTSUMnLFxuICAgICAgICAgICAgJ09BVVRIJzogJ09BVVRIMicsXG4gICAgICAgICAgICAnTk9ORSc6ICdOT05FJyxcbiAgICAgICAgfSxcbiAgICAgICAgJ0NPTlRFTlRfVFlQRV9LRVknOiAneC1XTS1DT05URU5UX1RZUEUnLFxuICAgICAgICAnQUNDRVNTVE9LRU5fUExBQ0VIT0xERVInOiB7XG4gICAgICAgICAgICAnTEVGVCc6ICcnLFxuICAgICAgICAgICAgJ1JJR0hUJzogJy5hY2Nlc3NfdG9rZW4nXG4gICAgICAgIH0sXG4gICAgICAgIEVSUl9UWVBFOiB7XG4gICAgICAgICAgICBOT19BQ0NFU1NUT0tFTjogJ21pc3NpbmdfYWNjZXNzdG9rZW4nLFxuICAgICAgICAgICAgTk9fQ1JFREVOVElBTFM6ICdub19jcmVkZW50aWFscycsXG4gICAgICAgICAgICBNRVRBREFUQV9NSVNTSU5HOiAnbWV0YWRhdGFfbWlzc2luZycsXG4gICAgICAgICAgICBDUlVEX09QRVJBVElPTl9NSVNTSU5HOiAnY3J1ZF9vcGVyYXRpb25fbWlzc2luZycsXG4gICAgICAgICAgICBVU0VSX1VOQVVUSE9SSVNFRDogJ3VzZXJfdW5hdXRob3Jpc2VkJyxcbiAgICAgICAgICAgIFJFUVVJUkVEX0ZJRUxEX01JU1NJTkc6ICdyZXF1aXJlZF9maWVsZF9taXNzaW5nJyxcbiAgICAgICAgfSxcbiAgICAgICAgRVJSX01TRzoge1xuICAgICAgICAgICAgTk9fQUNDRVNTVE9LRU46ICdBY2Nlc3MgdG9rZW4gbWlzc2luZycsXG4gICAgICAgICAgICBOT19DUkVERU5USUFMUzogJ05vIGNyZWRlbnRpYWxzIHByZXNlbnQnLFxuICAgICAgICAgICAgTUVUQURBVEFfTUlTU0lORzogJ01ldGFkYXRhIG1pc3NpbmcgZm9yIFwiJHZhcmlhYmxlXCInLFxuICAgICAgICAgICAgVVNFUl9VTkFVVEhPUklTRUQ6ICdVbmF1dGhvcml6ZWQgVXNlcicsXG4gICAgICAgICAgICBDUlVEX09QRVJBVElPTl9NSVNTSU5HOiAnT3BlcmF0aW9uIFwiJG9wZXJhdGlvblwiIG5vdCBhbGxvd2VkIGZvciBcIiR2YXJpYWJsZVwiJyxcbiAgICAgICAgICAgIFJFUVVJUkVEX0ZJRUxEX01JU1NJTkc6ICdSZXF1aXJlZCBmaWVsZChzKSBtaXNzaW5nOiBcIiR7MH1cIidcbiAgICAgICAgfSxcbiAgICAgICAgVU5DTE9BS0VEX0hFQURFUlM6IFsnQ09OVEVOVC1UWVBFJywgJ0FDQ0VQVCcsICdDT05URU5ULUxFTkdUSCcsICdBQ0NFUFQtRU5DT0RJTkcnLCAnQUNDRVBULUxBTkdVQUdFJ10sXG4gICAgICAgIFBSRUZJWDoge1xuICAgICAgICAgICAgQVVUSF9IRFJfVkFMOiB7XG4gICAgICAgICAgICAgICAgQkFTSUM6ICdCYXNpYycsXG4gICAgICAgICAgICAgICAgT0FVVEg6ICdCZWFyZXInXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgQ0xPQUtfSEVBREVSX0tFWTogJ1gtV00tJ1xuICAgICAgICB9XG4gICAgfSxcbiAgICBTRVJWSUNFX1RZUEU6IHtcbiAgICAgICAgSkFWQTogJ0phdmFTZXJ2aWNlJyxcbiAgICAgICAgUkVTVDogJ1Jlc3RTZXJ2aWNlJyxcbiAgICAgICAgU09BUDogJ1NvYXBTZXJ2aWNlJyxcbiAgICAgICAgRkVFRDogJ0ZlZWRTZXJ2aWNlJyxcbiAgICAgICAgREFUQTogJ0RhdGFTZXJ2aWNlJyxcbiAgICAgICAgU0VDVVJJVFk6ICdTZWN1cml0eVNlcnZpY2VUeXBlJyxcbiAgICAgICAgV0VCU09DS0VUOiAnV2ViU29ja2V0U2VydmljZScsXG4gICAgICAgIE9QRU5BUEk6ICdPcGVuQVBJU2VydmljZSdcbiAgICB9LFxuICAgIENPTlRST0xMRVJfVFlQRToge1xuICAgICAgICBRVUVSWTogJ1F1ZXJ5RXhlY3V0aW9uJyxcbiAgICAgICAgUFJPQ0VEVVJFOiAnUHJvY2VkdXJlRXhlY3V0aW9uJ1xuICAgIH0sXG4gICAgSFRUUF9TVEFUVVNfQ09ERToge1xuICAgICAgICBDT1JTX0ZBSUxVUkU6IC0xLFxuICAgICAgICBVTkFVVEhPUklaRUQ6IDQwMSxcbiAgICAgICAgRk9SQklEREVOOiA0MDNcbiAgICB9LFxuICAgIEVYUE9SVF9UWVBFU19NQVA6IHtcbiAgICAgICAgJ0VYQ0VMJyA6ICcueGxzeCcsXG4gICAgICAgICdDU1YnIDogJy5jc3YnfSxcbiAgICBERUZBVUxUX1ZBUiA6IHtcbiAgICAgICAgJ05PVElGSUNBVElPTicgOiAnYXBwTm90aWZpY2F0aW9uJ1xuICAgIH1cbn07XG5cbmV4cG9ydCBjb25zdCBXU19DT05TVEFOVFMgPSB7XG4gICAgTk9OX0JPRFlfSFRUUF9NRVRIT0RTOiBbJ0dFVCcsICdIRUFEJ10sXG4gICAgQ09OVEVOVF9UWVBFUzoge1xuICAgICAgICBGT1JNX1VSTF9FTkNPREVEOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJyxcbiAgICAgICAgTVVMVElQQVJUX0ZPUk1EQVRBOiAnbXVsdGlwYXJ0L2Zvcm0tZGF0YScsXG4gICAgICAgIE9DVEVUX1NUUkVBTTogJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSdcbiAgICB9XG59O1xuXG5leHBvcnQgY29uc3QgTU9ERV9DT05TVEFOVFMgPSB7XG4gICAgTElHSFQ6ICdsaWdodCcsXG4gICAgREVGQVVMVDogJ2RlZmF1bHQnLFxuICAgIENPTE9SOiAnY29sb3InLFxuICAgIEZPTlQ6ICdmb250JyxcbiAgICBTUEFDRTogJ3NwYWNlJyxcbiAgICBSQURJVVM6ICdyYWRpdXMnLFxuICAgIE1PREVfS0VZOiAnYXBwLW1vZGUnXG59O1xuXG5leHBvcnQgY29uc3QgREJfQ09OU1RBTlRTID0ge1xuICAgICdEQVRBQkFTRV9NQVRDSF9NT0RFUyc6IHtcbiAgICAgICAgJ2xpa2UnICAgICAgICAgICAgIDogJ0xJS0UnLFxuICAgICAgICAnc3RhcnQnICAgICAgICAgICAgOiAnU1RBUlRJTkdfV0lUSCcsXG4gICAgICAgICdzdGFydGlnbm9yZWNhc2UnICA6ICdTVEFSVElOR19XSVRIX0lHTk9SRUNBU0UnLFxuICAgICAgICAnZW5kJyAgICAgICAgICAgICAgOiAnRU5ESU5HX1dJVEgnLFxuICAgICAgICAnZW5kaWdub3JlY2FzZScgICAgOiAnRU5ESU5HX1dJVEhfSUdOT1JFQ0FTRScsXG4gICAgICAgICdhbnl3aGVyZScgICAgICAgICA6ICdDT05UQUlOSU5HJyxcbiAgICAgICAgJ2FueXdoZXJlaWdub3JlY2FzZSc6ICdDT05UQUlOSU5HX0lHTk9SRUNBU0UnLFxuICAgICAgICAnbm93aGVyZScgICAgICAgICAgOiAnRE9FU19OT1RfQ09OVEFJTicsXG4gICAgICAgICdub3doZXJlaWdub3JlY2FzZSc6ICdET0VTX05PVF9DT05UQUlOX0lHTk9SRUNBU0UnLFxuICAgICAgICAnZXhhY3QnICAgICAgICAgICAgOiAnRVFVQUxTJyxcbiAgICAgICAgJ2V4YWN0aWdub3JlY2FzZScgIDogJ0VRVUFMU19JR05PUkVDQVNFJyxcbiAgICAgICAgJ25vdGVxdWFscycgICAgICAgIDogJ05PVF9FUVVBTFMnLFxuICAgICAgICBcIm5vdGVxdWFsc2lnbm9yZWNhc2VcIjogXCJOT1RfRVFVQUxTX0lHTk9SRUNBU0VcIixcbiAgICAgICAgJ2JldHdlZW4nICAgICAgICAgIDogJ0JFVFdFRU4nLFxuICAgICAgICAnaW4nICAgICAgICAgICAgICAgOiAnSU4nLFxuICAgICAgICBcIm5vdGluXCIgICAgICAgICAgICA6IFwiTk9USU5cIixcbiAgICAgICAgJ2xlc3N0aGFuJyAgICAgICAgIDogJ0xFU1NfVEhBTicsXG4gICAgICAgICdsZXNzdGhhbmVxdWFsJyAgICA6ICdMRVNTX1RIQU5fT1JfRVFVQUxTJyxcbiAgICAgICAgJ2dyZWF0ZXJ0aGFuJyAgICAgIDogJ0dSRUFURVJfVEhBTicsXG4gICAgICAgICdncmVhdGVydGhhbmVxdWFsJyA6ICdHUkVBVEVSX1RIQU5fT1JfRVFVQUxTJyxcbiAgICAgICAgJ251bGwnICAgICAgICAgICAgIDogJ05VTEwnLFxuICAgICAgICAnaXNub3RudWxsJyAgICAgICAgOiAnSVNfTk9UX05VTEwnLFxuICAgICAgICAnZW1wdHknICAgICAgICAgICAgOiAnRU1QVFknLFxuICAgICAgICAnaXNub3RlbXB0eScgICAgICAgOiAnSVNfTk9UX0VNUFRZJyxcbiAgICAgICAgJ251bGxvcmVtcHR5JyAgICAgIDogJ05VTExfT1JfRU1QVFknXG4gICAgfSxcbiAgICAnREFUQUJBU0VfRU1QVFlfTUFUQ0hfTU9ERVMnOiBbJ05VTEwnLCAnSVNfTk9UX05VTEwnLCAnRU1QVFknLCAnSVNfTk9UX0VNUFRZJywgJ05VTExfT1JfRU1QVFknXSxcbiAgICAnREFUQUJBU0VfUkFOR0VfTUFUQ0hfTU9ERVMnOiBbJ0lOJywgJ05PVElOJywgJ0JFVFdFRU4nLCAnTEVTU19USEFOJywgJ0xFU1NfVEhBTl9PUl9FUVVBTFMnLCAnR1JFQVRFUl9USEFOJywgJ0dSRUFURVJfVEhBTl9PUl9FUVVBTFMnLCAnTk9UX0VRVUFMUyddLFxuICAgICdEQVRBQkFTRV9OVUxMX0VNUFRZX01BVENIJzoge1xuICAgICAgICAnTlVMTCcgICAgICAgICAgOiAnTlVMTCcsXG4gICAgICAgICdJU19OT1RfTlVMTCcgICA6ICdJU19OT1RfTlVMTCcsXG4gICAgICAgICdFTVBUWScgICAgICAgICA6ICdOVUxMJyxcbiAgICAgICAgJ0lTX05PVF9FTVBUWScgIDogJ0lTX05PVF9OVUxMJyxcbiAgICAgICAgJ05VTExfT1JfRU1QVFknIDogJ05VTEwnXG4gICAgfSxcbiAgICAnREFUQUJBU0VfTUFUQ0hfTU9ERVNfV0lUSF9RVUVSWSc6IHtcbiAgICAgICAgJ0xJS0UnICAgICAgICAgICAgICAgICAgIDogJyR7MH0gbGlrZSAkezF9JyxcbiAgICAgICAgJ1NUQVJUSU5HX1dJVEgnICAgICAgICAgIDogJyR7MH0gbGlrZSAkezF9JyxcbiAgICAgICAgJ1NUQVJUSU5HX1dJVEhfSUdOT1JFQ0FTRSc6ICckezB9IGxpa2UgJHsxfScsXG4gICAgICAgICdFTkRJTkdfV0lUSCcgICAgICAgICAgICA6ICckezB9IGxpa2UgJHsxfScsXG4gICAgICAgICdFTkRJTkdfV0lUSF9JR05PUkVDQVNFJyA6ICckezB9IGxpa2UgJHsxfScsXG4gICAgICAgICdDT05UQUlOSU5HJyAgICAgICAgICAgICA6ICckezB9IGxpa2UgJHsxfScsXG4gICAgICAgICdDT05UQUlOSU5HX0lHTk9SRUNBU0UnICA6ICckezB9IGxpa2UgJHsxfScsXG4gICAgICAgICdET0VTX05PVF9DT05UQUlOJyAgICAgICA6ICckezB9IG5vdCBsaWtlICR7MX0nLFxuICAgICAgICAnRE9FU19OT1RfQ09OVEFJTl9JR05PUkVDQVNFJzogJyR7MH0gbm90IGxpa2UgJHsxfScsXG4gICAgICAgICdFUVVBTFMnICAgICAgICAgICAgICAgICA6ICckezB9PSR7MX0nLFxuICAgICAgICAnRVFVQUxTX0lHTk9SRUNBU0UnICAgICAgOiAnJHswfT0kezF9JyxcbiAgICAgICAgJ05PVF9FUVVBTFMnICAgICAgICAgICAgIDogJyR7MH0hPSR7MX0nLFxuICAgICAgICBcIk5PVF9FUVVBTFNfSUdOT1JFQ0FTRVwiICA6IFwiJHswfSE9JHsxfVwiLFxuICAgICAgICAnQkVUV0VFTicgICAgICAgICAgICAgICAgOiAnJHswfSBiZXR3ZWVuICR7MX0nLFxuICAgICAgICAnSU4nICAgICAgICAgICAgICAgICAgICAgOiAnJHswfSBpbiAkezF9JyxcbiAgICAgICAgJ05PVElOJyAgICAgICAgICAgICAgICAgIDogXCIkezB9IG5vdCBpbiAkezF9XCIsXG4gICAgICAgICdMRVNTX1RIQU4nICAgICAgICAgICAgICA6ICckezB9PCR7MX0nLFxuICAgICAgICAnTEVTU19USEFOX09SX0VRVUFMUycgICAgOiAnJHswfTw9JHsxfScsXG4gICAgICAgICdHUkVBVEVSX1RIQU4nICAgICAgICAgICA6ICckezB9PiR7MX0nLFxuICAgICAgICAnR1JFQVRFUl9USEFOX09SX0VRVUFMUycgOiAnJHswfT49JHsxfScsXG4gICAgICAgICdOVUxMJyAgICAgICAgICAgICAgICAgICA6ICckezB9IGlzIG51bGwnLFxuICAgICAgICAnSVNfTk9UX05VTEwnICAgICAgICAgICAgOiAnJHswfSBpcyBub3QgbnVsbCcsXG4gICAgICAgICdFTVBUWScgICAgICAgICAgICAgICAgICA6ICckezB9PVxcJ1xcJycsXG4gICAgICAgICdJU19OT1RfRU1QVFknICAgICAgICAgICA6ICckezB9PD5cXCdcXCcnLFxuICAgICAgICAnTlVMTF9PUl9FTVBUWScgICAgICAgICAgOiAnJHswfSBpcyBudWxsIG9yICR7MH09XFwnXFwnJ1xuICAgIH0sXG4gICAgJ0RBVEFCQVNFX1NUUklOR19NT0RFUyc6IFsnTElLRScsICdTVEFSVElOR19XSVRIJywgJ1NUQVJUSU5HX1dJVEhfSUdOT1JFQ0FTRScsICdFTkRJTkdfV0lUSCcsICdFTkRJTkdfV0lUSF9JR05PUkVDQVNFJywgJ0NPTlRBSU5JTkcnLCAnQ09OVEFJTklOR19JR05PUkVDQVNFJywgJ0RPRVNfTk9UX0NPTlRBSU4nLCAnRE9FU19OT1RfQ09OVEFJTl9JR05PUkVDQVNFJywgJ0VRVUFMUycsICdFUVVBTFNfSUdOT1JFQ0FTRScsICdOT1RfRVFVQUxTJywgXCJOT1RfRVFVQUxTX0lHTk9SRUNBU0VcIl1cbn07XG5cbmV4cG9ydCBjb25zdCBTV0FHR0VSX0NPTlNUQU5UUyA9IHtcbiAgICBXTV9EQVRBX0pTT046ICd3bV9kYXRhX2pzb24nLFxuICAgIFdNX0hUVFBfSlNPTjogJ3dtX2h0dHBSZXF1ZXN0RGV0YWlscydcbn07XG5cbmV4cG9ydCBjb25zdCBWQVJJQUJMRV9VUkxTID0ge1xuICAgIERBVEFCQVNFOiB7XG4gICAgc2VhcmNoVGFibGVEYXRhOiB7XG4gICAgICAgIHVybDogJy86c2VydmljZS86ZGF0YU1vZGVsTmFtZS86ZW50aXR5TmFtZS9zZWFyY2g/cGFnZT06cGFnZSZzaXplPTpzaXplJjpzb3J0JyxcbiAgICAgICAgICAgIG1ldGhvZDogJ1BPU1QnXG4gICAgfSxcbiAgICBzZWFyY2hUYWJsZURhdGFXaXRoUXVlcnk6IHtcbiAgICAgICAgdXJsOiAnLzpzZXJ2aWNlLzpkYXRhTW9kZWxOYW1lLzplbnRpdHlOYW1lL2ZpbHRlcj9wYWdlPTpwYWdlJnNpemU9OnNpemUmOnNvcnQnLFxuICAgICAgICAgICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCdcbiAgICAgICAgfVxuICAgIH0sXG4gICAgcmVhZFRhYmxlRGF0YToge1xuICAgICAgICB1cmw6ICcvOnNlcnZpY2UvOmRhdGFNb2RlbE5hbWUvOmVudGl0eU5hbWU/cGFnZT06cGFnZSZzaXplPTpzaXplJjpzb3J0JyxcbiAgICAgICAgICAgIG1ldGhvZDogJ0dFVCdcbiAgICB9LFxuICAgIGluc2VydFRhYmxlRGF0YToge1xuICAgICAgICB1cmw6ICcvOnNlcnZpY2UvOmRhdGFNb2RlbE5hbWUvOmVudGl0eU5hbWUnLFxuICAgICAgICAgICAgbWV0aG9kOiAnUE9TVCdcbiAgICB9LFxuICAgIGluc2VydE11bHRpUGFydFRhYmxlRGF0YToge1xuICAgICAgICB1cmw6ICcvOnNlcnZpY2UvOmRhdGFNb2RlbE5hbWUvOmVudGl0eU5hbWUnLFxuICAgICAgICAgICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgICAgICAgICBoZWFkZXJzOiB7fVxuICAgICAgICAgICAgLy8gLHRyYW5zZm9ybVJlcXVlc3Q6IFdNLmlkZW50aXR5XG4gICAgfSxcbiAgICB1cGRhdGVUYWJsZURhdGE6IHtcbiAgICAgICAgdXJsOiAnLzpzZXJ2aWNlLzpkYXRhTW9kZWxOYW1lLzplbnRpdHlOYW1lLzppZCcsXG4gICAgICAgICAgICBtZXRob2Q6ICdQVVQnXG4gICAgfSxcbiAgICB1cGRhdGVNdWx0aVBhcnRUYWJsZURhdGE6IHtcbiAgICAgICAgdXJsOiAnLzpzZXJ2aWNlLzpkYXRhTW9kZWxOYW1lLzplbnRpdHlOYW1lLzppZCcsXG4gICAgICAgICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgICAgICAgIGhlYWRlcnM6IHt9XG4gICAgICAgICAgICAvLyAsdHJhbnNmb3JtUmVxdWVzdDogV00uaWRlbnRpdHlcbiAgICB9LFxuICAgIGRlbGV0ZVRhYmxlRGF0YToge1xuICAgICAgICB1cmw6ICcvOnNlcnZpY2UvOmRhdGFNb2RlbE5hbWUvOmVudGl0eU5hbWUvOmlkJyxcbiAgICAgICAgICAgIG1ldGhvZDogJ0RFTEVURSdcbiAgICB9LFxuICAgIHVwZGF0ZUNvbXBvc2l0ZVRhYmxlRGF0YToge1xuICAgICAgICB1cmw6ICcvOnNlcnZpY2UvOmRhdGFNb2RlbE5hbWUvOmVudGl0eU5hbWUvY29tcG9zaXRlLWlkPzppZCcsXG4gICAgICAgICAgICBtZXRob2Q6ICdQVVQnXG4gICAgfSxcbiAgICBwZXJpb2RVcGRhdGVDb21wb3NpdGVUYWJsZURhdGE6IHtcbiAgICAgICAgdXJsOiAnLzpzZXJ2aWNlLzpkYXRhTW9kZWxOYW1lLzplbnRpdHlOYW1lL2NvbXBvc2l0ZS1pZC9wZXJpb2RzPzppZCcsXG4gICAgICAgICAgICBtZXRob2Q6ICdQVVQnXG4gICAgfSxcbiAgICB1cGRhdGVNdWx0aVBhcnRDb21wb3NpdGVUYWJsZURhdGE6IHtcbiAgICAgICAgdXJsOiAnLzpzZXJ2aWNlLzpkYXRhTW9kZWxOYW1lLzplbnRpdHlOYW1lL2NvbXBvc2l0ZS1pZD86aWQnLFxuICAgICAgICAgICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgICAgICAgICBoZWFkZXJzOiB7fVxuICAgICAgICAgICAgLy8gLCB0cmFuc2Zvcm1SZXF1ZXN0OiBXTS5pZGVudGl0eVxuICAgIH0sXG4gICAgZGVsZXRlQ29tcG9zaXRlVGFibGVEYXRhOiB7XG4gICAgICAgIHVybDogJy86c2VydmljZS86ZGF0YU1vZGVsTmFtZS86ZW50aXR5TmFtZS9jb21wb3NpdGUtaWQ/OmlkJyxcbiAgICAgICAgICAgIG1ldGhvZDogJ0RFTEVURSdcbiAgICB9LFxuICAgIHBlcmlvZERlbGV0ZUNvbXBvc2l0ZVRhYmxlRGF0YToge1xuICAgICAgICB1cmw6ICcvOnNlcnZpY2UvOmRhdGFNb2RlbE5hbWUvOmVudGl0eU5hbWUvY29tcG9zaXRlLWlkL3BlcmlvZHM/OmlkJyxcbiAgICAgICAgICAgIG1ldGhvZDogJ0RFTEVURSdcbiAgICB9LFxuICAgIGdldERpc3RpbmN0RGF0YUJ5RmllbGRzOiB7XG4gICAgICAgIHVybDogJy86c2VydmljZS86ZGF0YU1vZGVsTmFtZS86ZW50aXR5TmFtZS9hZ2dyZWdhdGlvbnM/cGFnZT06cGFnZSZzaXplPTpzaXplJjpzb3J0JyxcbiAgICAgICAgICAgIG1ldGhvZDogJ1BPU1QnXG4gICAgfSxcbiAgICBleHBvcnRUYWJsZURhdGE6IHtcbiAgICAgICAgdXJsOiAnL3NlcnZpY2VzLzpkYXRhTW9kZWxOYW1lLzplbnRpdHlOYW1lL2V4cG9ydD86c29ydCcsXG4gICAgICAgICAgICBtZXRob2Q6ICdQT1NUJ1xuICAgIH0sXG4gICAgcmVhZFRhYmxlUmVsYXRlZERhdGE6IHtcbiAgICAgICAgdXJsOiAnLzpzZXJ2aWNlLzpkYXRhTW9kZWxOYW1lLzplbnRpdHlOYW1lLzppZC86cmVsYXRlZEZpZWxkTmFtZT9wYWdlPTpwYWdlJnNpemU9OnNpemUmOnNvcnQnLFxuICAgICAgICAgICAgbWV0aG9kOiAnR0VUJ1xuICAgIH0sXG4gICAgZXhlY3V0ZU5hbWVkUXVlcnk6IHtcbiAgICAgICAgdXJsOiAnLzpzZXJ2aWNlLzpkYXRhTW9kZWxOYW1lL3F1ZXJ5RXhlY3V0b3IvcXVlcmllcy86cXVlcnlOYW1lP3BhZ2U9OnBhZ2Umc2l6ZT06c2l6ZSY6cXVlcnlQYXJhbXMnLFxuICAgICAgICAgICAgbWV0aG9kOiAnR0VUJ1xuICAgIH0sXG4gICAgZXhlY3V0ZUN1c3RvbVF1ZXJ5OiB7XG4gICAgICAgIHVybDogJy86c2VydmljZS86ZGF0YU1vZGVsTmFtZS9xdWVyaWVzL2V4ZWN1dGU/cGFnZT06cGFnZSZzaXplPTpzaXplJyxcbiAgICAgICAgICAgIG1ldGhvZDogJ1BPU1QnXG4gICAgfSxcbiAgICBleGVjdXRlQWdncmVnYXRlUXVlcnk6IHtcbiAgICAgICAgdXJsOiAnL3NlcnZpY2VzLzpkYXRhTW9kZWxOYW1lLzplbnRpdHlOYW1lL2FnZ3JlZ2F0aW9ucz9wYWdlPTpwYWdlJnNpemU9OnNpemUmc29ydD06c29ydCcsXG4gICAgICAgICAgICBtZXRob2Q6ICdQT1NUJ1xuICAgIH0sXG4gICAgZXhlY3V0ZU5hbWVkUHJvY2VkdXJlOiB7XG4gICAgICAgIHVybDogJy86c2VydmljZS86ZGF0YU1vZGVsTmFtZS9wcm9jZWR1cmVFeGVjdXRvci9wcm9jZWR1cmUvZXhlY3V0ZS86cHJvY2VkdXJlTmFtZT9wYWdlPTpwYWdlJnNpemU9OnNpemUmOnByb2NlZHVyZVBhcmFtcycsXG4gICAgICAgICAgICBtZXRob2Q6ICdHRVQnXG4gICAgfSxcbiAgICBjb3VudFRhYmxlRGF0YVdpdGhRdWVyeToge1xuICAgICAgICB1cmw6ICcvOnNlcnZpY2UvOmRhdGFNb2RlbE5hbWUvOmVudGl0eU5hbWUvY291bnQ/OnF1ZXJ5UGFyYW1zJyxcbiAgICAgICAgbWV0aG9kOiAnR0VUJ1xuICAgIH1cbn0sXG4gICAgb2F1dGhDb25maWd1cmF0aW9uIDoge1xuICAgICAgICBnZXRBdXRob3JpemF0aW9uVXJsOiB7XG4gICAgICAgICAgICB1cmw6ICdzZXJ2aWNlcy9vYXV0aDIvOnByb3ZpZGVySWQvYXV0aG9yaXphdGlvblVybCcsXG4gICAgICAgICAgICAgICAgbWV0aG9kOiAnR0VUJ1xuICAgICAgICB9XG4gICAgfVxufTtcblxuZXhwb3J0IGNvbnN0ICRyb290U2NvcGUgPSByb290U2NvcGU7XG4iXX0=