@eui/components 18.0.0-next.23 → 18.0.0-next.24
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.
- package/docs/dependencies.html +18 -4
- package/docs/js/search/search_index.js +2 -2
- package/esm2022/directives/eui-clearable.directive.mjs +3 -3
- package/esm2022/directives/eui-has-permission.directive.mjs +6 -6
- package/esm2022/directives/eui-loading.directive.mjs +3 -3
- package/esm2022/directives/eui-maxlength.directive.mjs +6 -6
- package/esm2022/directives/eui-resizable/eui-resizable.component.mjs +3 -3
- package/esm2022/directives/eui-resizable/eui-resizable.directive.mjs +3 -3
- package/esm2022/directives/eui-resizable/eui-resizable.module.mjs +4 -4
- package/esm2022/directives/eui-scroll-handler.directive.mjs +8 -8
- package/esm2022/directives/eui-smooth-scroll.directive.mjs +8 -8
- package/esm2022/directives/eui-template.directive.mjs +6 -6
- package/esm2022/directives/eui-tooltip/container/eui-tooltip-container.component.mjs +3 -3
- package/esm2022/directives/eui-tooltip/eui-tooltip.directive.mjs +3 -3
- package/esm2022/directives/eui-tooltip/eui-tooltip.module.mjs +4 -4
- package/esm2022/eui-alert/components/eui-alert-title.component.mjs +3 -3
- package/esm2022/eui-alert/eui-alert.component.mjs +3 -3
- package/esm2022/eui-alert/eui-alert.module.mjs +4 -4
- package/esm2022/eui-all/eui-all.module.mjs +4 -4
- package/esm2022/eui-autocomplete/eui-autocomplete-option/eui-autocomplete-option.component.mjs +3 -3
- package/esm2022/eui-autocomplete/eui-autocomplete-option-group/eui-autocomplete-option-group.component.mjs +3 -3
- package/esm2022/eui-autocomplete/eui-autocomplete.component.mjs +3 -3
- package/esm2022/eui-autocomplete/eui-autocomplete.module.mjs +4 -4
- package/esm2022/eui-avatar/avatar-badge/avatar-badge.component.mjs +3 -3
- package/esm2022/eui-avatar/avatar-icon/avatar-icon.component.mjs +3 -3
- package/esm2022/eui-avatar/avatar-image/avatar-image.component.mjs +3 -3
- package/esm2022/eui-avatar/avatar-text/avatar-text.component.mjs +3 -3
- package/esm2022/eui-avatar/eui-avatar-list.component.mjs +3 -3
- package/esm2022/eui-avatar/eui-avatar.component.mjs +3 -3
- package/esm2022/eui-avatar/eui-avatar.module.mjs +4 -4
- package/esm2022/eui-badge/eui-badge.component.mjs +3 -3
- package/esm2022/eui-badge/eui-badge.module.mjs +4 -4
- package/esm2022/eui-block-content/eui-block-content.component.mjs +3 -3
- package/esm2022/eui-block-content/eui-block-content.module.mjs +4 -4
- package/esm2022/eui-block-document/eui-block-document.component.mjs +3 -3
- package/esm2022/eui-block-document/eui-block-document.module.mjs +4 -4
- package/esm2022/eui-button/eui-button.component.mjs +6 -6
- package/esm2022/eui-button-group/eui-button-group.component.mjs +6 -6
- package/esm2022/eui-button-v2/eui-button-v2.component.mjs +6 -6
- package/esm2022/eui-card/components/eui-card-content/eui-card-content.component.mjs +3 -3
- package/esm2022/eui-card/components/eui-card-footer/eui-card-footer-action-buttons.component.mjs +3 -3
- package/esm2022/eui-card/components/eui-card-footer/eui-card-footer-action-icons.component.mjs +3 -3
- package/esm2022/eui-card/components/eui-card-footer/eui-card-footer-menu-content.component.mjs +3 -3
- package/esm2022/eui-card/components/eui-card-footer/eui-card-footer.component.mjs +3 -3
- package/esm2022/eui-card/components/eui-card-header/eui-card-header-left-content.component.mjs +3 -3
- package/esm2022/eui-card/components/eui-card-header/eui-card-header-right-content.component.mjs +3 -3
- package/esm2022/eui-card/components/eui-card-header/eui-card-header-subtitle.component.mjs +3 -3
- package/esm2022/eui-card/components/eui-card-header/eui-card-header-title.component.mjs +3 -3
- package/esm2022/eui-card/components/eui-card-header/eui-card-header.component.mjs +3 -3
- package/esm2022/eui-card/components/eui-card-header-body/eui-card-header-body.component.mjs +3 -3
- package/esm2022/eui-card/components/eui-card-media/eui-card-media.component.mjs +3 -3
- package/esm2022/eui-card/eui-card.component.mjs +3 -3
- package/esm2022/eui-card/eui-card.module.mjs +4 -4
- package/esm2022/eui-card/services/ui-state.service.mjs +3 -3
- package/esm2022/eui-chip/eui-chip.component.mjs +3 -3
- package/esm2022/eui-chip/eui-chip.module.mjs +4 -4
- package/esm2022/eui-chip-list/eui-chip-list.component.mjs +5 -5
- package/esm2022/eui-chip-list/eui-chip-list.module.mjs +4 -4
- package/esm2022/eui-chip-list/services/eui-chip-list-drag.service.mjs +3 -3
- package/esm2022/eui-dashboard-button/eui-dashboard-button.component.mjs +10 -10
- package/esm2022/eui-dashboard-card/eui-dashboard-card.component.mjs +6 -6
- package/esm2022/eui-date-range-selector/eui-date-range-selector.component.mjs +3 -3
- package/esm2022/eui-date-range-selector/eui-date-range-selector.module.mjs +4 -4
- package/esm2022/eui-datepicker/eui-datepicker.component.mjs +11 -11
- package/esm2022/eui-datepicker/eui-datepicker.module.mjs +4 -4
- package/esm2022/eui-dialog/container/eui-dialog-container.component.mjs +3 -3
- package/esm2022/eui-dialog/eui-dialog.component.mjs +7 -7
- package/esm2022/eui-dialog/eui-dialog.module.mjs +4 -4
- package/esm2022/eui-dialog/services/eui-dialog.service.mjs +3 -3
- package/esm2022/eui-dimmer/dimmer.component.mjs +3 -3
- package/esm2022/eui-dimmer/dimmer.module.mjs +4 -4
- package/esm2022/eui-disable-content/eui-disable-content.component.mjs +6 -6
- package/esm2022/eui-discussion-thread/eui-discussion-thread-item.component.mjs +3 -3
- package/esm2022/eui-discussion-thread/eui-discussion-thread.component.mjs +3 -3
- package/esm2022/eui-discussion-thread/eui-discussion-thread.module.mjs +4 -4
- package/esm2022/eui-dropdown/directives/eui-dropdown-content.directive.mjs +3 -3
- package/esm2022/eui-dropdown/dropdown-item/eui-dropdown-item.component.mjs +3 -3
- package/esm2022/eui-dropdown/eui-dropdown.component.mjs +3 -3
- package/esm2022/eui-dropdown/eui-dropdown.module.mjs +7 -7
- package/esm2022/eui-dropdown/eui-dropdown.service.mjs +3 -3
- package/esm2022/eui-feedback-message/eui-feedback-message.component.mjs +3 -3
- package/esm2022/eui-feedback-message/eui-feedback-message.module.mjs +4 -4
- package/esm2022/eui-fieldset/eui-fieldset.component.mjs +7 -7
- package/esm2022/eui-fieldset/eui-fieldset.module.mjs +4 -4
- package/esm2022/eui-file-upload/eui-file-upload.component.mjs +3 -3
- package/esm2022/eui-file-upload/eui-file-upload.module.mjs +4 -4
- package/esm2022/eui-file-upload/file-preview/file-preview.component.mjs +3 -3
- package/esm2022/eui-file-upload/pipes/filesize.pipe.mjs +3 -3
- package/esm2022/eui-file-upload/progress/eui-file-upload-progress.component.mjs +3 -3
- package/esm2022/eui-file-upload/utils/eui-file-upload.utils.mjs +3 -3
- package/esm2022/eui-growl/eui-growl.component.mjs +3 -3
- package/esm2022/eui-growl/eui-growl.module.mjs +4 -4
- package/esm2022/eui-icon/eui-icon-color.component.mjs +3 -3
- package/esm2022/eui-icon/eui-icon-svg-button/eui-icon-svg-button.component.mjs +3 -3
- package/esm2022/eui-icon/eui-icon-svg.component.mjs +3 -3
- package/esm2022/eui-icon/eui-icon.module.mjs +4 -4
- package/esm2022/eui-icon-toggle/eui-icon-toggle.component.mjs +3 -3
- package/esm2022/eui-icon-toggle/eui-icon-toggle.module.mjs +4 -4
- package/esm2022/eui-input-checkbox/eui-input-checkbox.component.mjs +3 -3
- package/esm2022/eui-input-checkbox/eui-input-checkbox.module.mjs +4 -4
- package/esm2022/eui-input-group/eui-input-group.component.mjs +3 -3
- package/esm2022/eui-input-group/eui-input-group.module.mjs +4 -4
- package/esm2022/eui-input-number/eui-input-number.component.mjs +3 -3
- package/esm2022/eui-input-number/eui-input-number.module.mjs +4 -4
- package/esm2022/eui-input-number/eui-number-control.directive.mjs +5 -5
- package/esm2022/eui-input-radio/eui-input-radio.component.mjs +3 -3
- package/esm2022/eui-input-radio/eui-input-radio.module.mjs +4 -4
- package/esm2022/eui-input-text/eui-input-text.component.mjs +3 -3
- package/esm2022/eui-input-text/eui-input-text.module.mjs +4 -4
- package/esm2022/eui-label/eui-label.component.mjs +3 -3
- package/esm2022/eui-label/eui-label.module.mjs +4 -4
- package/esm2022/eui-list/eui-list-item/eui-list-item.component.mjs +3 -3
- package/esm2022/eui-list/eui-list.component.mjs +3 -3
- package/esm2022/eui-list/eui-list.module.mjs +4 -4
- package/esm2022/eui-list/services/eui-list.service.mjs +3 -3
- package/esm2022/eui-menu/eui-menu-item.component.mjs +3 -3
- package/esm2022/eui-menu/eui-menu.component.mjs +3 -3
- package/esm2022/eui-menu/eui-menu.module.mjs +4 -4
- package/esm2022/eui-message-box/eui-message-box.component.mjs +5 -5
- package/esm2022/eui-message-box/eui-message-box.module.mjs +4 -4
- package/esm2022/eui-message-box/services/eui-message-box.service.mjs +3 -3
- package/esm2022/eui-overlay/components/eui-overlay-body/eui-overlay-body.component.mjs +3 -3
- package/esm2022/eui-overlay/components/eui-overlay-footer/eui-overlay-footer.component.mjs +3 -3
- package/esm2022/eui-overlay/components/eui-overlay-header/eui-overlay-header-title/eui-overlay-header-title.component.mjs +3 -3
- package/esm2022/eui-overlay/components/eui-overlay-header/eui-overlay-header.component.mjs +3 -3
- package/esm2022/eui-overlay/eui-overlay.component.mjs +6 -6
- package/esm2022/eui-page/components/eui-page-breadcrumb/eui-page-breadcrumb.component.mjs +3 -3
- package/esm2022/eui-page/components/eui-page-column/eui-page-column.component.mjs +15 -15
- package/esm2022/eui-page/components/eui-page-columns/eui-page-columns.component.mjs +3 -3
- package/esm2022/eui-page/components/eui-page-content/eui-page-content.component.mjs +3 -3
- package/esm2022/eui-page/components/eui-page-footer/eui-page-footer.component.mjs +3 -3
- package/esm2022/eui-page/components/eui-page-header/components/eui-page-header-action-items.component.mjs +3 -3
- package/esm2022/eui-page/components/eui-page-header/components/eui-page-header-body.component.mjs +3 -3
- package/esm2022/eui-page/components/eui-page-header/components/eui-page-header-sub-label.component.mjs +3 -3
- package/esm2022/eui-page/components/eui-page-header/eui-page-header.component.mjs +3 -3
- package/esm2022/eui-page/components/eui-page-hero-header/eui-page-hero-header.component.mjs +3 -3
- package/esm2022/eui-page/components/eui-page-top-content/eui-page-top-content.component.mjs +3 -3
- package/esm2022/eui-page/eui-page.component.mjs +3 -3
- package/esm2022/eui-page/eui-page.module.mjs +4 -4
- package/esm2022/eui-paginator/eui-paginator.component.mjs +3 -3
- package/esm2022/eui-paginator/eui-paginator.module.mjs +4 -4
- package/esm2022/eui-popover/directives/eui-popover-arrow-position.directive.mjs +3 -3
- package/esm2022/eui-popover/eui-popover.component.mjs +3 -3
- package/esm2022/eui-popover/eui-popover.module.mjs +4 -4
- package/esm2022/eui-progress-bar/eui-progress-bar.component.mjs +3 -3
- package/esm2022/eui-progress-bar/eui-progress-bar.module.mjs +4 -4
- package/esm2022/eui-progress-circle/eui-progress-circle.component.mjs +6 -6
- package/esm2022/eui-select/eui-select-control.directive.mjs +5 -5
- package/esm2022/eui-select/eui-select-multiple.directive.mjs +3 -3
- package/esm2022/eui-select/eui-select-mutli-option.directive.mjs +3 -3
- package/esm2022/eui-select/eui-select-option.directive.mjs +3 -3
- package/esm2022/eui-select/eui-select.component.mjs +3 -3
- package/esm2022/eui-select/eui-select.module.mjs +4 -4
- package/esm2022/eui-sidebar-menu/eui-sidebar-menu.component.mjs +3 -3
- package/esm2022/eui-sidebar-menu/eui-sidebar-menu.module.mjs +4 -4
- package/esm2022/eui-skeleton/eui-skeleton.component.mjs +3 -3
- package/esm2022/eui-skeleton/eui-skeleton.module.mjs +4 -4
- package/esm2022/eui-slide-toggle/eui-slide-toggle.component.mjs +3 -3
- package/esm2022/eui-slide-toggle/eui-slide-toggle.module.mjs +4 -4
- package/esm2022/eui-table/directives/eui-table-sticky-columns.directive.mjs +3 -3
- package/esm2022/eui-table/eui-table.component.mjs +3 -3
- package/esm2022/eui-table/eui-table.module.mjs +4 -4
- package/esm2022/eui-table/expandable-row/eui-table-expandable-row.component.mjs +3 -3
- package/esm2022/eui-table/filter/eui-table-filter.component.mjs +3 -3
- package/esm2022/eui-table/pipes/eui-table-highlight-filter.pipe.mjs +3 -3
- package/esm2022/eui-table/selectable-header/eui-table-selectable-header.component.mjs +3 -3
- package/esm2022/eui-table/selectable-row/eui-table-selectable-row.component.mjs +3 -3
- package/esm2022/eui-table/services/eui-table-selectable-row.service.mjs +3 -3
- package/esm2022/eui-table/services/eui-table-sort.service.mjs +3 -3
- package/esm2022/eui-table/sortable-col/eui-table-sortable-col.component.mjs +3 -3
- package/esm2022/eui-tabs/eui-tab/eui-tab.component.mjs +3 -3
- package/esm2022/eui-tabs/eui-tab-content/eui-tab-content.component.mjs +3 -3
- package/esm2022/eui-tabs/eui-tab-label/eui-tab-label.component.mjs +5 -5
- package/esm2022/eui-tabs/eui-tabs.component.mjs +5 -5
- package/esm2022/eui-tabs/eui-tabs.module.mjs +4 -4
- package/esm2022/eui-textarea/auto-resize.directive.mjs +3 -3
- package/esm2022/eui-textarea/eui-textarea.component.mjs +4 -4
- package/esm2022/eui-textarea/eui-textarea.module.mjs +4 -4
- package/esm2022/eui-timebar/eui-timebar.component.mjs +6 -6
- package/esm2022/eui-timeline/eui-timeline-item.component.mjs +3 -3
- package/esm2022/eui-timeline/eui-timeline.component.mjs +3 -3
- package/esm2022/eui-timeline/eui-timeline.module.mjs +4 -4
- package/esm2022/eui-timepicker/eui-timepicker.component.mjs +3 -3
- package/esm2022/eui-timepicker/eui-timepicker.module.mjs +4 -4
- package/esm2022/eui-tree/eui-dropdown-tree.directive.mjs +6 -6
- package/esm2022/eui-tree/eui-tree-form-control.directive.mjs +8 -8
- package/esm2022/eui-tree/eui-tree.component.mjs +6 -6
- package/esm2022/eui-tree-list/eui-tree-list-item.component.mjs +9 -9
- package/esm2022/eui-tree-list/eui-tree-list.component.mjs +3 -3
- package/esm2022/eui-tree-list/eui-tree-list.module.mjs +4 -4
- package/esm2022/eui-tree-list/item-content/item-content.component.mjs +3 -3
- package/esm2022/eui-tree-list/toolbar/toolbar.component.mjs +5 -5
- package/esm2022/eui-wizard/eui-wizard-step.component.mjs +3 -3
- package/esm2022/eui-wizard/eui-wizard.component.mjs +3 -3
- package/esm2022/eui-wizard/eui-wizard.module.mjs +4 -4
- package/esm2022/eui-wizard/services/eui-wizard.service.mjs +3 -3
- package/esm2022/externals/charts/chart/chart.component.mjs +3 -3
- package/esm2022/externals/charts/eui-charts.module.mjs +4 -4
- package/esm2022/externals/eui-editor/counters/eui-editor-counters.component.mjs +3 -3
- package/esm2022/externals/eui-editor/directives/eui-editor-maxlength.directive.mjs +3 -3
- package/esm2022/externals/eui-editor/eui-editor.component.mjs +5 -5
- package/esm2022/externals/eui-editor/eui-editor.module.mjs +4 -4
- package/esm2022/externals/eui-editor/html-view/eui-editor-html-view.component.mjs +3 -3
- package/esm2022/externals/eui-editor/image-url-dialog/image-url-dialog.component.mjs +3 -3
- package/esm2022/externals/eui-editor/json-view/eui-editor-json-view.component.mjs +3 -3
- package/esm2022/externals/quill/loader.service.mjs +3 -3
- package/esm2022/externals/quill/quill-editor.component.mjs +7 -7
- package/esm2022/externals/quill/quill.module.mjs +4 -4
- package/esm2022/layout/eui-app/eui-app-breadcrumb/breadcrumb.component.mjs +3 -3
- package/esm2022/layout/eui-app/eui-app-breadcrumb/breadcrumb.module.mjs +4 -4
- package/esm2022/layout/eui-app/eui-app-footer/footer.component.mjs +3 -3
- package/esm2022/layout/eui-app/eui-app-footer/footer.module.mjs +4 -4
- package/esm2022/layout/eui-app/eui-app-header/header.component.mjs +3 -3
- package/esm2022/layout/eui-app/eui-app-header/header.module.mjs +4 -4
- package/esm2022/layout/eui-app/eui-app-sidebar/sidebar-body/sidebar-body.component.mjs +3 -3
- package/esm2022/layout/eui-app/eui-app-sidebar/sidebar-drawer/sidebar-drawer.component.mjs +3 -3
- package/esm2022/layout/eui-app/eui-app-sidebar/sidebar-footer/sidebar-footer.component.mjs +3 -3
- package/esm2022/layout/eui-app/eui-app-sidebar/sidebar-header/sidebar-header.component.mjs +3 -3
- package/esm2022/layout/eui-app/eui-app-sidebar/sidebar-header-user-profile/sidebar-header-user-profile.component.mjs +3 -3
- package/esm2022/layout/eui-app/eui-app-sidebar/sidebar-menu/sidebar-menu.component.mjs +3 -3
- package/esm2022/layout/eui-app/eui-app-sidebar/sidebar.component.mjs +3 -3
- package/esm2022/layout/eui-app/eui-app-sidebar/sidebar.module.mjs +4 -4
- package/esm2022/layout/eui-app/eui-app-toolbar/toolbar.component.mjs +3 -3
- package/esm2022/layout/eui-app/eui-app-toolbar/toolbar.module.mjs +4 -4
- package/esm2022/layout/eui-app/eui-app-top-message/top-message.component.mjs +3 -3
- package/esm2022/layout/eui-app/eui-app-top-message/top-message.module.mjs +4 -4
- package/esm2022/layout/eui-app/eui-app.component.mjs +5 -5
- package/esm2022/layout/eui-app/eui-app.module.mjs +4 -4
- package/esm2022/layout/eui-breadcrumb/breadcrumb.component.mjs +3 -3
- package/esm2022/layout/eui-breadcrumb/breadcrumb.module.mjs +4 -4
- package/esm2022/layout/eui-breadcrumb/breadcrumb.service.mjs +3 -3
- package/esm2022/layout/eui-breadcrumb/collapsed-breadcrumb/collapsed-breadcrumb.component.mjs +5 -5
- package/esm2022/layout/eui-breadcrumb/item/breadcrumb-item.component.mjs +3 -3
- package/esm2022/layout/eui-footer/footer.component.mjs +3 -3
- package/esm2022/layout/eui-footer/footer.module.mjs +4 -4
- package/esm2022/layout/eui-header/header-app/header-app.component.mjs +9 -9
- package/esm2022/layout/eui-header/header-app-name/header-app-name.component.mjs +3 -3
- package/esm2022/layout/eui-header/header-app-name-logo/header-app-name-logo.component.mjs +3 -3
- package/esm2022/layout/eui-header/header-app-subtitle/header-app-subtitle.component.mjs +3 -3
- package/esm2022/layout/eui-header/header-environment/header-environment.component.mjs +3 -3
- package/esm2022/layout/eui-header/header-logo/header-logo.component.mjs +3 -3
- package/esm2022/layout/eui-header/header-right-content/header-right-content.component.mjs +3 -3
- package/esm2022/layout/eui-header/header-user-profile/header-user-profile.component.mjs +3 -3
- package/esm2022/layout/eui-header/header.component.mjs +3 -3
- package/esm2022/layout/eui-header/header.module.mjs +4 -4
- package/esm2022/layout/eui-language-selector/language-selector.component.mjs +3 -3
- package/esm2022/layout/eui-language-selector/language-selector.module.mjs +4 -4
- package/esm2022/layout/eui-language-selector/modal-selector/modal-selector.component.mjs +3 -3
- package/esm2022/layout/eui-layout.module.mjs +4 -4
- package/esm2022/layout/eui-notifications/eui-notification-item.component.mjs +3 -3
- package/esm2022/layout/eui-notifications/eui-notifications.component.mjs +3 -3
- package/esm2022/layout/eui-notifications/eui-notifications.module.mjs +4 -4
- package/esm2022/layout/eui-notifications-v2/eui-notification-item.component.mjs +3 -3
- package/esm2022/layout/eui-notifications-v2/eui-notifications.component.mjs +3 -3
- package/esm2022/layout/eui-notifications-v2/eui-notifications.module.mjs +4 -4
- package/esm2022/layout/eui-search/search.component.mjs +3 -3
- package/esm2022/layout/eui-search/search.module.mjs +4 -4
- package/esm2022/layout/eui-sidebar-toggle/sidebar-toggle.component.mjs +3 -3
- package/esm2022/layout/eui-sidebar-toggle/sidebar-toggle.module.mjs +4 -4
- package/esm2022/layout/eui-toolbar/toolbar-app/toolbar-app.component.mjs +3 -3
- package/esm2022/layout/eui-toolbar/toolbar-center/toolbar-center.component.mjs +3 -3
- package/esm2022/layout/eui-toolbar/toolbar-environment/toolbar-environment.component.mjs +3 -3
- package/esm2022/layout/eui-toolbar/toolbar-item/toolbar-item.component.mjs +3 -3
- package/esm2022/layout/eui-toolbar/toolbar-items/toolbar-items.component.mjs +3 -3
- package/esm2022/layout/eui-toolbar/toolbar-logo/toolbar-logo.component.mjs +3 -3
- package/esm2022/layout/eui-toolbar/toolbar-menu/toolbar-menu.component.mjs +3 -3
- package/esm2022/layout/eui-toolbar/toolbar.component.mjs +3 -3
- package/esm2022/layout/eui-toolbar/toolbar.module.mjs +4 -4
- package/esm2022/layout/eui-user-profile/user-profile-card/user-profile-card.component.mjs +3 -3
- package/esm2022/layout/eui-user-profile/user-profile-menu/user-profile-menu.component.mjs +3 -3
- package/esm2022/layout/eui-user-profile/user-profile-menu-item/user-profile-menu-item.component.mjs +3 -3
- package/esm2022/layout/eui-user-profile/user-profile.component.mjs +3 -3
- package/esm2022/layout/eui-user-profile/user-profile.module.mjs +4 -4
- package/esm2022/pipes/eui-is-empty.pipe.mjs +6 -6
- package/esm2022/pipes/eui-truncate.pipe.mjs +6 -6
- package/esm2022/shared/base/base-states.directive.mjs +3 -3
- package/esm2022/shared/base/base.directive.mjs +3 -3
- package/esm2022/shared/input.directive.mjs +3 -3
- package/externals/eui-editor/eui-editor.component.d.ts +1 -1
- package/package.json +3 -3
@@ -37,8 +37,8 @@ export class EuiEditorJsonViewComponent {
|
|
37
37
|
this.valueSetter(this.quillEditor, this.content);
|
38
38
|
}
|
39
39
|
}
|
40
|
-
|
41
|
-
|
40
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: EuiEditorJsonViewComponent, deps: [{ token: ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
41
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-next.3", type: EuiEditorJsonViewComponent, selector: "eui-editor-json-view", inputs: { theme: "theme", content: "content" }, usesOnChanges: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
42
42
|
}
|
43
43
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: EuiEditorJsonViewComponent, decorators: [{
|
44
44
|
type: Component,
|
@@ -57,4 +57,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-next.3",
|
|
57
57
|
}], content: [{
|
58
58
|
type: Input
|
59
59
|
}] } });
|
60
|
-
//# sourceMappingURL=data:application/json;base64,
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLWVkaXRvci1qc29uLXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vZXh0ZXJuYWxzL2V1aS1lZGl0b3IvanNvbi12aWV3L2V1aS1lZGl0b3ItanNvbi12aWV3LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUgsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFHTCxpQkFBaUIsR0FDcEIsTUFBTSxlQUFlLENBQUM7O0FBRXZCLE1BQU0sU0FBUyxHQUFRLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztBQVN2QyxNQUFNLE9BQU8sMEJBQTBCO0lBT25DLFlBQXdDLFVBQXNCO1FBQXRCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFOckQsVUFBSyxHQUFHLE1BQU0sQ0FBQztRQVF4QixnQkFBVyxHQUFHLENBQUMsV0FBNkIsRUFBRSxLQUFhLEVBQVEsRUFBRTtZQUNqRSxJQUFJLE9BQU8sR0FBUSxLQUFLLENBQUM7WUFDekIsSUFBSSxDQUFDO2dCQUNELE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2hDLENBQUM7WUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO2dCQUNULE9BQU8sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQztZQUN0QyxDQUFDO1lBQ0QsV0FBVyxFQUFFLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN0QyxDQUFDLENBQUM7SUFWK0QsQ0FBQztJQVlsRSxXQUFXLENBQUMsT0FBc0I7UUFDOUIsSUFBSSxPQUFPLElBQUksT0FBTyxDQUFDLE9BQU8sSUFBSSxPQUFPLENBQUMsT0FBTyxFQUFFLFlBQVksRUFBRSxDQUFDO1lBQzlELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3JFLENBQUM7SUFDTCxDQUFDO0lBRUQsZUFBZTtRQUNYLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxnQ0FBZ0MsQ0FBQyxDQUFDO1FBRWpHLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFFdEYsTUFBTSxLQUFLLEdBQVEsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRW5DLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUMxQyxLQUFLLEVBQUUsS0FBSztZQUNaLE9BQU8sRUFBRSxJQUFJO1lBQ2IsT0FBTyxFQUFFLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRTtZQUMzQixRQUFRLEVBQUUsSUFBSTtZQUNkLE1BQU0sRUFBRSxJQUFJO1lBQ1osS0FBSyxFQUFFLE1BQU07U0FDaEIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDZixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3JELENBQUM7SUFDTCxDQUFDO3FIQTVDUSwwQkFBMEIsa0JBT2YsVUFBVTt5R0FQckIsMEJBQTBCLGlJQUp6QixFQUFFOztrR0FJSCwwQkFBMEI7a0JBUHRDLFNBQVM7bUJBQUM7b0JBQ1AsMkJBQTJCO29CQUMzQixRQUFRLEVBQUUsc0JBQXNCO29CQUNoQyxRQUFRLEVBQUUsRUFBRTtvQkFDWixhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtvQkFDckMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2xEOzswQkFRZ0IsTUFBTTsyQkFBQyxVQUFVO3lDQU5yQixLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPbkNoYW5nZXMsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmNvbnN0IFF1aWxsVHlwZTogYW55ID0gd2luZG93WydRdWlsbCddO1xuXG5AQ29tcG9uZW50KHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICBzZWxlY3RvcjogJ2V1aS1lZGl0b3ItanNvbi12aWV3JyxcbiAgICB0ZW1wbGF0ZTogJycsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRXVpRWRpdG9ySnNvblZpZXdDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMge1xuICAgIEBJbnB1dCgpIHRoZW1lID0gJ3Nub3cnO1xuICAgIEBJbnB1dCgpIGNvbnRlbnQ6IHN0cmluZztcblxuICAgIHByaXZhdGUgcXVpbGxFZGl0b3I6IHR5cGVvZiBRdWlsbFR5cGU7XG4gICAgcHJpdmF0ZSBlZGl0b3JFbGVtOiBIVE1MRWxlbWVudDtcblxuICAgIGNvbnN0cnVjdG9yKEBJbmplY3QoRWxlbWVudFJlZikgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7fVxuXG4gICAgdmFsdWVTZXR0ZXIgPSAocXVpbGxFZGl0b3I6IHR5cGVvZiBRdWlsbFR5cGUsIHZhbHVlOiBzdHJpbmcpOiB2b2lkID0+IHtcbiAgICAgICAgbGV0IGNvbnRlbnQ6IGFueSA9IHZhbHVlO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29udGVudCA9IEpTT04ucGFyc2UodmFsdWUpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oJ0pTT04gcGFyc2UgZXJyb3IhJyk7XG4gICAgICAgIH1cbiAgICAgICAgcXVpbGxFZGl0b3I/LnNldENvbnRlbnRzKGNvbnRlbnQpO1xuICAgIH07XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChjaGFuZ2VzICYmIGNoYW5nZXMuY29udGVudCAmJiBjaGFuZ2VzLmNvbnRlbnQ/LmN1cnJlbnRWYWx1ZSkge1xuICAgICAgICAgICAgdGhpcy52YWx1ZVNldHRlcih0aGlzLnF1aWxsRWRpdG9yLCBjaGFuZ2VzLmNvbnRlbnQuY3VycmVudFZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuaW5zZXJ0QWRqYWNlbnRIVE1MKCdhZnRlcmJlZ2luJywgJzxkaXYgcXVpbGwtdmlldy1lbGVtZW50PjwvZGl2PicpO1xuXG4gICAgICAgIHRoaXMuZWRpdG9yRWxlbSA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ1txdWlsbC12aWV3LWVsZW1lbnRdJyk7XG5cbiAgICAgICAgY29uc3QgUXVpbGw6IGFueSA9IHdpbmRvd1snUXVpbGwnXTtcblxuICAgICAgICB0aGlzLnF1aWxsRWRpdG9yID0gbmV3IFF1aWxsKHRoaXMuZWRpdG9yRWxlbSwge1xuICAgICAgICAgICAgZGVidWc6IGZhbHNlLFxuICAgICAgICAgICAgZm9ybWF0czogbnVsbCxcbiAgICAgICAgICAgIG1vZHVsZXM6IHsgdG9vbGJhcjogZmFsc2UgfSxcbiAgICAgICAgICAgIHJlYWRPbmx5OiB0cnVlLFxuICAgICAgICAgICAgc3RyaWN0OiB0cnVlLFxuICAgICAgICAgICAgdGhlbWU6ICdzbm93JyxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKHRoaXMuY29udGVudCkge1xuICAgICAgICAgICAgdGhpcy52YWx1ZVNldHRlcih0aGlzLnF1aWxsRWRpdG9yLCB0aGlzLmNvbnRlbnQpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
@@ -118,11 +118,11 @@ export class LoaderService {
|
|
118
118
|
}
|
119
119
|
});
|
120
120
|
}
|
121
|
-
|
122
|
-
|
121
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: LoaderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
122
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: LoaderService, providedIn: 'root' }); }
|
123
123
|
}
|
124
124
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: LoaderService, decorators: [{
|
125
125
|
type: Injectable,
|
126
126
|
args: [{ providedIn: 'root' }]
|
127
127
|
}] });
|
128
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9leHRlcm5hbHMvcXVpbGwvbG9hZGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsQyxPQUFPLEVBQUUsMEJBQTBCLEVBQXNCLE1BQU0sMkJBQTJCLENBQUM7O0FBSzNGOztHQUVHO0FBRUgsTUFBTSxPQUFPLGFBQWE7SUFEMUI7UUFFWSxrQkFBYSxHQUF1QixNQUFNLENBQUMsMEJBQTBCLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztLQW1IdEc7SUFqSEc7Ozs7O09BS0c7SUFDSCxJQUFJO1FBQ0EsSUFBSSxNQUFNLEdBQVksS0FBSyxDQUFDO1FBQzVCLE9BQU8sSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFFN0IsaURBQWlEO1lBQ2pELElBQUksTUFBTSxDQUFDLEtBQUssS0FBSyxTQUFTLEVBQUUsQ0FBQztnQkFDN0IsTUFBTSxVQUFVLEdBQUcsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFLEtBQUssR0FBRyxDQUFDO2dCQUVoRixRQUFRO2dCQUNSLE1BQU0sZ0JBQWdCLEdBQW9CLFFBQVEsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ3pFLGdCQUFnQixDQUFDLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsSUFBSSxpQkFBaUIsQ0FBQztnQkFDckUsZ0JBQWdCLENBQUMsR0FBRyxHQUFHLFlBQVksQ0FBQztnQkFDcEMsTUFBTSxzQkFBc0IsR0FBRyxHQUFHLEVBQUU7b0JBQ2hDLGdCQUFnQixDQUFDLG1CQUFtQixDQUFDLE1BQU0sRUFBRSxz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WUFDTCxDQUFDO2lCQUFNLENBQUM7Z0JBQ0osUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDcEIsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3hCLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7d0lBbkhRLGFBQWE7NElBQWIsYUFBYSxjQURBLE1BQU07O2tHQUNuQixhQUFhO2tCQUR6QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFFVSUxMX0RZTkFNSUNfQ09ORklHX1RPS0VOLCBRdWlsbER5bmFtaWNDb25maWcgfSBmcm9tIFwiLi9xdWlsbC1lZGl0b3IuaW50ZXJmYWNlc1wiO1xuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5cbmRlY2xhcmUgY29uc3Qgd2luZG93OiB7IFF1aWxsOiBhbnkgfCB1bmRlZmluZWQ7IHF1aWxsQmV0dGVyVGFibGU6IGFueSB8IHVuZGVmaW5lZCB9O1xuXG4vKipcbiAqIEBpbnRlcm5hbCBUaGlzIHNlcnZpY2UgaXMgbm90IHBhcnQgb2YgdGhlIHB1YmxpYyBBUEkgb2YgdGhlIGNvbXBvbmVudFxuICovXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgTG9hZGVyU2VydmljZSB7XG4gICAgcHJpdmF0ZSBkeW5hbWljQ29uZmlnOiBRdWlsbER5bmFtaWNDb25maWcgPSBpbmplY3QoUVVJTExfRFlOQU1JQ19DT05GSUdfVE9LRU4sIHsgb3B0aW9uYWw6IHRydWUgfSk7XG5cbiAgICAvKipcbiAgICAgKiBMb2FkIHRoZSBRdWlsbC5qcyBsaWJyYXJ5XG4gICAgICpcbiAgICAgKiBAcGFyYW0gcGF0aCBQYXRoIHRvIHRoZSBRdWlsbC5qcyBsaWJyYXJ5IGUuZy4gXCJhc3NldHMvcXVpbGwvZGlzdFwiLiBUaGUgcGF0aCBtdXN0IGNvbnRhaW4gdGhlIFwicXVpbGwuanNcIlxuICAgICAqIGFuZCBcInF1aWxsRWRpdG9yLm1pbi5jc3NcIiBmaWxlcyBhbmQgYWxzbyB0aGUgY3NzIG9uZXMuXG4gICAgICovXG4gICAgbG9hZCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICAgICAgbGV0IGxvYWRlZDogYm9vbGVhbiA9IGZhbHNlO1xuICAgICAgICByZXR1cm4gbmV3IE9ic2VydmFibGUob2JzZXJ2ZXIgPT4ge1xuXG4gICAgICAgICAgICAvLyBjaGVjayBpZiB3aW5kb3cuUXVpbGwgaXMgZGVmaW5lZCBvdGhlciBsb2FkIGl0XG4gICAgICAgICAgICBpZiAod2luZG93LlF1aWxsID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBsb2FkUmVzdWx0ID0geyBtYWluU2NyaXB0OiBmYWxzZSwgc3R5bGU6IGZhbHNlLCBzZWNvbmRhcnlTY3JpcHQ6IGZhbHNlLCB9O1xuXG4gICAgICAgICAgICAgICAgLy8gc3R5bGVcbiAgICAgICAgICAgICAgICBjb25zdCBxdWlsbEVkaXRvclN0eWxlOiBIVE1MTGlua0VsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdsaW5rJyk7XG4gICAgICAgICAgICAgICAgcXVpbGxFZGl0b3JTdHlsZS5ocmVmID0gYCR7dGhpcy5keW5hbWljQ29uZmlnPy5wYXRofS9xdWlsbC5jb3JlLmNzc2A7XG4gICAgICAgICAgICAgICAgcXVpbGxFZGl0b3JTdHlsZS5yZWwgPSAnc3R5bGVzaGVldCc7XG4gICAgICAgICAgICAgICAgY29uc3QgcXVpbGxFZGl0b3JTdHlsZU9ubG9hZCA9ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcXVpbGxFZGl0b3JTdHlsZS5yZW1vdmVFdmVudExpc3RlbmVyKCdsb2FkJywgcXVpbGxFZGl0b3JTdHlsZU9ubG9hZCk7XG4gICAgICAgICAgICAgICAgICAgIHF1aWxsRWRpdG9yU3R5bGUucmVtb3ZlRXZlbnRMaXN0ZW5lcignZXJyb3InLCBxdWlsbEVkaXRvck9uZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICBsb2FkUmVzdWx0LnN0eWxlID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKE9iamVjdC52YWx1ZXMobG9hZFJlc3VsdCkuZXZlcnkodiA9PiB2ID09PSB0cnVlKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dCh0cnVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBsb2FkZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBjb25zdCBxdWlsbEVkaXRvclNub3dTdHlsZTogSFRNTExpbmtFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnbGluaycpO1xuICAgICAgICAgICAgICAgIHF1aWxsRWRpdG9yU25vd1N0eWxlLmhyZWYgPSBgJHt0aGlzLmR5bmFtaWNDb25maWc/LnBhdGh9L3F1aWxsLnNub3cuY3NzYDtcbiAgICAgICAgICAgICAgICBxdWlsbEVkaXRvclNub3dTdHlsZS5yZWwgPSAnc3R5bGVzaGVldCc7XG5cbiAgICAgICAgICAgICAgICAvLyBzY3JpcHQgdG8gaW5qZWN0IGludG8gcGFnZSB0aGUgUXVpbGwuanNcbiAgICAgICAgICAgICAgICBsZXQgcXVpbGxFZGl0b3JTY3JpcHQ6IEhUTUxTY3JpcHRFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAgICAgICAgICAgICAgcXVpbGxFZGl0b3JTY3JpcHQuc3JjID0gYCR7dGhpcy5keW5hbWljQ29uZmlnPy5wYXRofS9xdWlsbC5qc2A7XG4gICAgICAgICAgICAgICAgcXVpbGxFZGl0b3JTY3JpcHQudHlwZSA9ICdhcHBsaWNhdGlvbi9qYXZhc2NyaXB0JztcbiAgICAgICAgICAgICAgICBxdWlsbEVkaXRvclNjcmlwdC5hc3luYyA9IHRydWU7XG4gICAgICAgICAgICAgICAgY29uc3QgcXVpbGxFZGl0b3JTY3JpcHRPbmxvYWQgPSAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHF1aWxsRWRpdG9yU2NyaXB0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBxdWlsbEVkaXRvclNjcmlwdE9ubG9hZCk7XG4gICAgICAgICAgICAgICAgICAgIHF1aWxsRWRpdG9yU2NyaXB0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Vycm9yJywgcXVpbGxFZGl0b3JPbmVycm9yKTtcbiAgICAgICAgICAgICAgICAgICAgbG9hZFJlc3VsdC5tYWluU2NyaXB0ID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmQocXVpbGxCZXR0ZXJUYWJsZVNjcmlwdCk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChPYmplY3QudmFsdWVzKGxvYWRSZXN1bHQpLmV2ZXJ5KHYgPT4gdiA9PT0gdHJ1ZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9ic2VydmVyLm5leHQodHJ1ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbG9hZGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgICAgICAvLyBzY3JpcHQgdG8gaW5qZWN0IGludG8gcGFnZSB0aGUgUXVpbGwtYmV0dGVyLXRhYmxlXCJub2RlX21vZHVsZXMvcXVpbGwtYmV0dGVyLXRhYmxlL2Rpc3QvcXVpbGwtYmV0dGVyLXRhYmxlLm1pbi5qc1wiLFxuICAgICAgICAgICAgICAgIGNvbnN0IHF1aWxsQmV0dGVyVGFibGVTY3JpcHQ6IEhUTUxTY3JpcHRFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAgICAgICAgICAgICAgcXVpbGxCZXR0ZXJUYWJsZVNjcmlwdC5zcmMgPSBgJHt0aGlzLmR5bmFtaWNDb25maWc/LnBhdGh9L3F1aWxsLWJldHRlci10YWJsZS5qc2A7XG4gICAgICAgICAgICAgICAgcXVpbGxCZXR0ZXJUYWJsZVNjcmlwdC50eXBlID0gJ2FwcGxpY2F0aW9uL2phdmFzY3JpcHQnO1xuICAgICAgICAgICAgICAgIHF1aWxsQmV0dGVyVGFibGVTY3JpcHQuYXN5bmMgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGNvbnN0IHF1aWxsQmV0dGVyVGFibGVTY3JpcHRPbmxvYWQgPSAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHF1aWxsQmV0dGVyVGFibGVTY3JpcHQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbG9hZCcsIHF1aWxsQmV0dGVyVGFibGVTY3JpcHRPbmxvYWQpO1xuICAgICAgICAgICAgICAgICAgICBxdWlsbEJldHRlclRhYmxlU2NyaXB0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Vycm9yJywgcXVpbGxFZGl0b3JPbmVycm9yKTtcbiAgICAgICAgICAgICAgICAgICAgbG9hZFJlc3VsdC5zZWNvbmRhcnlTY3JpcHQgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICBpZiAoT2JqZWN0LnZhbHVlcyhsb2FkUmVzdWx0KS5ldmVyeSh2ID0+IHYgPT09IHRydWUpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5uZXh0KHRydWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvYWRlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgY29uc3QgcXVpbGxFZGl0b3JPbmVycm9yID0gKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBxdWlsbEVkaXRvclN0eWxlLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBxdWlsbEVkaXRvclN0eWxlT25sb2FkKTtcbiAgICAgICAgICAgICAgICAgICAgcXVpbGxFZGl0b3JTdHlsZS5yZW1vdmVFdmVudExpc3RlbmVyKCdlcnJvcicsIHF1aWxsRWRpdG9yT25lcnJvcik7XG4gICAgICAgICAgICAgICAgICAgIHF1aWxsRWRpdG9yU2NyaXB0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBxdWlsbEVkaXRvclNjcmlwdE9ubG9hZCk7XG4gICAgICAgICAgICAgICAgICAgIHF1aWxsRWRpdG9yU2NyaXB0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Vycm9yJywgcXVpbGxFZGl0b3JPbmVycm9yKTtcbiAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dChmYWxzZSk7XG4gICAgICAgICAgICAgICAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgIHF1aWxsRWRpdG9yU3R5bGUuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIHF1aWxsRWRpdG9yU3R5bGVPbmxvYWQpO1xuICAgICAgICAgICAgICAgIHF1aWxsRWRpdG9yU3R5bGUuYWRkRXZlbnRMaXN0ZW5lcignZXJyb3InLCBxdWlsbEVkaXRvck9uZXJyb3IpO1xuICAgICAgICAgICAgICAgIHF1aWxsRWRpdG9yU25vd1N0eWxlLmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBxdWlsbEVkaXRvclN0eWxlT25sb2FkKTtcbiAgICAgICAgICAgICAgICBxdWlsbEVkaXRvclNub3dTdHlsZS5hZGRFdmVudExpc3RlbmVyKCdlcnJvcicsIHF1aWxsRWRpdG9yT25lcnJvcik7XG4gICAgICAgICAgICAgICAgcXVpbGxFZGl0b3JTY3JpcHQuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIHF1aWxsRWRpdG9yU2NyaXB0T25sb2FkKTtcbiAgICAgICAgICAgICAgICBxdWlsbEVkaXRvclNjcmlwdC5hZGRFdmVudExpc3RlbmVyKCdlcnJvcicsIHF1aWxsRWRpdG9yT25lcnJvcik7XG4gICAgICAgICAgICAgICAgcXVpbGxCZXR0ZXJUYWJsZVNjcmlwdC5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgcXVpbGxCZXR0ZXJUYWJsZVNjcmlwdE9ubG9hZCk7XG4gICAgICAgICAgICAgICAgcXVpbGxCZXR0ZXJUYWJsZVNjcmlwdC5hZGRFdmVudExpc3RlbmVyKCdlcnJvcicsIHF1aWxsRWRpdG9yT25lcnJvcik7XG5cbiAgICAgICAgICAgICAgICAvLyBjaGVjayBpZiB0aGUgc2NyaXB0IGlzIGFscmVhZHkgbG9hZGVkLiBUYWtlIGludG8gYWNjb3VudCB0aGUgSG9zdG5hbWUgb24gdG8gc3JjXG4gICAgICAgICAgICAgICAgaWYgKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYHNjcmlwdFtzcmM9XCIke3RoaXMuZHluYW1pY0NvbmZpZz8ucGF0aH0vcXVpbGwuanNcIl1gKSA9PT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZChxdWlsbEVkaXRvclNjcmlwdCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gaW50ZXJ2YWwgdGltZXIgdG8gY2hlY2sgd2hlbiB0aGUgc2NyaXB0IGlzIGxvYWRlZFxuICAgICAgICAgICAgICAgICAgICBjb25zdCBpbnRlcnZhbCA9IHNldEludGVydmFsKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChsb2FkZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGVhckludGVydmFsKGludGVydmFsKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAod2luZG93LlF1aWxsICE9PSB1bmRlZmluZWQgJiYgd2luZG93LnF1aWxsQmV0dGVyVGFibGUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9ic2VydmVyLm5leHQodHJ1ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2FkZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwoaW50ZXJ2YWwpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9LCAxMDApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBjaGVjayBpZiBzdHlsZSBpcyBhbHJlYWR5IGxvYWRlZFxuICAgICAgICAgICAgICAgIGlmIChkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGBsaW5rW2hyZWY9XCIke3RoaXMuZHluYW1pY0NvbmZpZz8ucGF0aH0vcXVpbGwuY29yZS5jc3NcIl1gKSA9PT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZChxdWlsbEVkaXRvclN0eWxlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gY2hlY2sgaWYgc3R5bGUgaXMgYWxyZWFkeSBsb2FkZWRcbiAgICAgICAgICAgICAgICBpZiAoZG9jdW1lbnQucXVlcnlTZWxlY3RvcihgbGlua1tocmVmPVwiJHt0aGlzLmR5bmFtaWNDb25maWc/LnBhdGh9L3F1aWxsLnNub3cuY3NzXCJdYCkgPT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmQocXVpbGxFZGl0b3JTbm93U3R5bGUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dCh0cnVlKTtcbiAgICAgICAgICAgICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
|
128
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9leHRlcm5hbHMvcXVpbGwvbG9hZGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsQyxPQUFPLEVBQUUsMEJBQTBCLEVBQXNCLE1BQU0sMkJBQTJCLENBQUM7O0FBSzNGOztHQUVHO0FBRUgsTUFBTSxPQUFPLGFBQWE7SUFEMUI7UUFFWSxrQkFBYSxHQUF1QixNQUFNLENBQUMsMEJBQTBCLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztLQW1IdEc7SUFqSEc7Ozs7O09BS0c7SUFDSCxJQUFJO1FBQ0EsSUFBSSxNQUFNLEdBQVksS0FBSyxDQUFDO1FBQzVCLE9BQU8sSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFFN0IsaURBQWlEO1lBQ2pELElBQUksTUFBTSxDQUFDLEtBQUssS0FBSyxTQUFTLEVBQUUsQ0FBQztnQkFDN0IsTUFBTSxVQUFVLEdBQUcsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFLEtBQUssR0FBRyxDQUFDO2dCQUVoRixRQUFRO2dCQUNSLE1BQU0sZ0JBQWdCLEdBQW9CLFFBQVEsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ3pFLGdCQUFnQixDQUFDLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsSUFBSSxpQkFBaUIsQ0FBQztnQkFDckUsZ0JBQWdCLENBQUMsR0FBRyxHQUFHLFlBQVksQ0FBQztnQkFDcEMsTUFBTSxzQkFBc0IsR0FBRyxHQUFHLEVBQUU7b0JBQ2hDLGdCQUFnQixDQUFDLG1CQUFtQixDQUFDLE1BQU0sRUFBRSxz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WUFDTCxDQUFDO2lCQUFNLENBQUM7Z0JBQ0osUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDcEIsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3hCLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7cUhBbkhRLGFBQWE7eUhBQWIsYUFBYSxjQURBLE1BQU07O2tHQUNuQixhQUFhO2tCQUR6QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFFVSUxMX0RZTkFNSUNfQ09ORklHX1RPS0VOLCBRdWlsbER5bmFtaWNDb25maWcgfSBmcm9tIFwiLi9xdWlsbC1lZGl0b3IuaW50ZXJmYWNlc1wiO1xuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5cbmRlY2xhcmUgY29uc3Qgd2luZG93OiB7IFF1aWxsOiBhbnkgfCB1bmRlZmluZWQ7IHF1aWxsQmV0dGVyVGFibGU6IGFueSB8IHVuZGVmaW5lZCB9O1xuXG4vKipcbiAqIEBpbnRlcm5hbCBUaGlzIHNlcnZpY2UgaXMgbm90IHBhcnQgb2YgdGhlIHB1YmxpYyBBUEkgb2YgdGhlIGNvbXBvbmVudFxuICovXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgTG9hZGVyU2VydmljZSB7XG4gICAgcHJpdmF0ZSBkeW5hbWljQ29uZmlnOiBRdWlsbER5bmFtaWNDb25maWcgPSBpbmplY3QoUVVJTExfRFlOQU1JQ19DT05GSUdfVE9LRU4sIHsgb3B0aW9uYWw6IHRydWUgfSk7XG5cbiAgICAvKipcbiAgICAgKiBMb2FkIHRoZSBRdWlsbC5qcyBsaWJyYXJ5XG4gICAgICpcbiAgICAgKiBAcGFyYW0gcGF0aCBQYXRoIHRvIHRoZSBRdWlsbC5qcyBsaWJyYXJ5IGUuZy4gXCJhc3NldHMvcXVpbGwvZGlzdFwiLiBUaGUgcGF0aCBtdXN0IGNvbnRhaW4gdGhlIFwicXVpbGwuanNcIlxuICAgICAqIGFuZCBcInF1aWxsRWRpdG9yLm1pbi5jc3NcIiBmaWxlcyBhbmQgYWxzbyB0aGUgY3NzIG9uZXMuXG4gICAgICovXG4gICAgbG9hZCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICAgICAgbGV0IGxvYWRlZDogYm9vbGVhbiA9IGZhbHNlO1xuICAgICAgICByZXR1cm4gbmV3IE9ic2VydmFibGUob2JzZXJ2ZXIgPT4ge1xuXG4gICAgICAgICAgICAvLyBjaGVjayBpZiB3aW5kb3cuUXVpbGwgaXMgZGVmaW5lZCBvdGhlciBsb2FkIGl0XG4gICAgICAgICAgICBpZiAod2luZG93LlF1aWxsID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBsb2FkUmVzdWx0ID0geyBtYWluU2NyaXB0OiBmYWxzZSwgc3R5bGU6IGZhbHNlLCBzZWNvbmRhcnlTY3JpcHQ6IGZhbHNlLCB9O1xuXG4gICAgICAgICAgICAgICAgLy8gc3R5bGVcbiAgICAgICAgICAgICAgICBjb25zdCBxdWlsbEVkaXRvclN0eWxlOiBIVE1MTGlua0VsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdsaW5rJyk7XG4gICAgICAgICAgICAgICAgcXVpbGxFZGl0b3JTdHlsZS5ocmVmID0gYCR7dGhpcy5keW5hbWljQ29uZmlnPy5wYXRofS9xdWlsbC5jb3JlLmNzc2A7XG4gICAgICAgICAgICAgICAgcXVpbGxFZGl0b3JTdHlsZS5yZWwgPSAnc3R5bGVzaGVldCc7XG4gICAgICAgICAgICAgICAgY29uc3QgcXVpbGxFZGl0b3JTdHlsZU9ubG9hZCA9ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcXVpbGxFZGl0b3JTdHlsZS5yZW1vdmVFdmVudExpc3RlbmVyKCdsb2FkJywgcXVpbGxFZGl0b3JTdHlsZU9ubG9hZCk7XG4gICAgICAgICAgICAgICAgICAgIHF1aWxsRWRpdG9yU3R5bGUucmVtb3ZlRXZlbnRMaXN0ZW5lcignZXJyb3InLCBxdWlsbEVkaXRvck9uZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICBsb2FkUmVzdWx0LnN0eWxlID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKE9iamVjdC52YWx1ZXMobG9hZFJlc3VsdCkuZXZlcnkodiA9PiB2ID09PSB0cnVlKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dCh0cnVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBsb2FkZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBjb25zdCBxdWlsbEVkaXRvclNub3dTdHlsZTogSFRNTExpbmtFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnbGluaycpO1xuICAgICAgICAgICAgICAgIHF1aWxsRWRpdG9yU25vd1N0eWxlLmhyZWYgPSBgJHt0aGlzLmR5bmFtaWNDb25maWc/LnBhdGh9L3F1aWxsLnNub3cuY3NzYDtcbiAgICAgICAgICAgICAgICBxdWlsbEVkaXRvclNub3dTdHlsZS5yZWwgPSAnc3R5bGVzaGVldCc7XG5cbiAgICAgICAgICAgICAgICAvLyBzY3JpcHQgdG8gaW5qZWN0IGludG8gcGFnZSB0aGUgUXVpbGwuanNcbiAgICAgICAgICAgICAgICBsZXQgcXVpbGxFZGl0b3JTY3JpcHQ6IEhUTUxTY3JpcHRFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAgICAgICAgICAgICAgcXVpbGxFZGl0b3JTY3JpcHQuc3JjID0gYCR7dGhpcy5keW5hbWljQ29uZmlnPy5wYXRofS9xdWlsbC5qc2A7XG4gICAgICAgICAgICAgICAgcXVpbGxFZGl0b3JTY3JpcHQudHlwZSA9ICdhcHBsaWNhdGlvbi9qYXZhc2NyaXB0JztcbiAgICAgICAgICAgICAgICBxdWlsbEVkaXRvclNjcmlwdC5hc3luYyA9IHRydWU7XG4gICAgICAgICAgICAgICAgY29uc3QgcXVpbGxFZGl0b3JTY3JpcHRPbmxvYWQgPSAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHF1aWxsRWRpdG9yU2NyaXB0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBxdWlsbEVkaXRvclNjcmlwdE9ubG9hZCk7XG4gICAgICAgICAgICAgICAgICAgIHF1aWxsRWRpdG9yU2NyaXB0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Vycm9yJywgcXVpbGxFZGl0b3JPbmVycm9yKTtcbiAgICAgICAgICAgICAgICAgICAgbG9hZFJlc3VsdC5tYWluU2NyaXB0ID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmQocXVpbGxCZXR0ZXJUYWJsZVNjcmlwdCk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChPYmplY3QudmFsdWVzKGxvYWRSZXN1bHQpLmV2ZXJ5KHYgPT4gdiA9PT0gdHJ1ZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9ic2VydmVyLm5leHQodHJ1ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbG9hZGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgICAgICAvLyBzY3JpcHQgdG8gaW5qZWN0IGludG8gcGFnZSB0aGUgUXVpbGwtYmV0dGVyLXRhYmxlXCJub2RlX21vZHVsZXMvcXVpbGwtYmV0dGVyLXRhYmxlL2Rpc3QvcXVpbGwtYmV0dGVyLXRhYmxlLm1pbi5qc1wiLFxuICAgICAgICAgICAgICAgIGNvbnN0IHF1aWxsQmV0dGVyVGFibGVTY3JpcHQ6IEhUTUxTY3JpcHRFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAgICAgICAgICAgICAgcXVpbGxCZXR0ZXJUYWJsZVNjcmlwdC5zcmMgPSBgJHt0aGlzLmR5bmFtaWNDb25maWc/LnBhdGh9L3F1aWxsLWJldHRlci10YWJsZS5qc2A7XG4gICAgICAgICAgICAgICAgcXVpbGxCZXR0ZXJUYWJsZVNjcmlwdC50eXBlID0gJ2FwcGxpY2F0aW9uL2phdmFzY3JpcHQnO1xuICAgICAgICAgICAgICAgIHF1aWxsQmV0dGVyVGFibGVTY3JpcHQuYXN5bmMgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGNvbnN0IHF1aWxsQmV0dGVyVGFibGVTY3JpcHRPbmxvYWQgPSAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHF1aWxsQmV0dGVyVGFibGVTY3JpcHQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbG9hZCcsIHF1aWxsQmV0dGVyVGFibGVTY3JpcHRPbmxvYWQpO1xuICAgICAgICAgICAgICAgICAgICBxdWlsbEJldHRlclRhYmxlU2NyaXB0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Vycm9yJywgcXVpbGxFZGl0b3JPbmVycm9yKTtcbiAgICAgICAgICAgICAgICAgICAgbG9hZFJlc3VsdC5zZWNvbmRhcnlTY3JpcHQgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICBpZiAoT2JqZWN0LnZhbHVlcyhsb2FkUmVzdWx0KS5ldmVyeSh2ID0+IHYgPT09IHRydWUpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5uZXh0KHRydWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvYWRlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgY29uc3QgcXVpbGxFZGl0b3JPbmVycm9yID0gKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBxdWlsbEVkaXRvclN0eWxlLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBxdWlsbEVkaXRvclN0eWxlT25sb2FkKTtcbiAgICAgICAgICAgICAgICAgICAgcXVpbGxFZGl0b3JTdHlsZS5yZW1vdmVFdmVudExpc3RlbmVyKCdlcnJvcicsIHF1aWxsRWRpdG9yT25lcnJvcik7XG4gICAgICAgICAgICAgICAgICAgIHF1aWxsRWRpdG9yU2NyaXB0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBxdWlsbEVkaXRvclNjcmlwdE9ubG9hZCk7XG4gICAgICAgICAgICAgICAgICAgIHF1aWxsRWRpdG9yU2NyaXB0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Vycm9yJywgcXVpbGxFZGl0b3JPbmVycm9yKTtcbiAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dChmYWxzZSk7XG4gICAgICAgICAgICAgICAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgIHF1aWxsRWRpdG9yU3R5bGUuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIHF1aWxsRWRpdG9yU3R5bGVPbmxvYWQpO1xuICAgICAgICAgICAgICAgIHF1aWxsRWRpdG9yU3R5bGUuYWRkRXZlbnRMaXN0ZW5lcignZXJyb3InLCBxdWlsbEVkaXRvck9uZXJyb3IpO1xuICAgICAgICAgICAgICAgIHF1aWxsRWRpdG9yU25vd1N0eWxlLmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBxdWlsbEVkaXRvclN0eWxlT25sb2FkKTtcbiAgICAgICAgICAgICAgICBxdWlsbEVkaXRvclNub3dTdHlsZS5hZGRFdmVudExpc3RlbmVyKCdlcnJvcicsIHF1aWxsRWRpdG9yT25lcnJvcik7XG4gICAgICAgICAgICAgICAgcXVpbGxFZGl0b3JTY3JpcHQuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIHF1aWxsRWRpdG9yU2NyaXB0T25sb2FkKTtcbiAgICAgICAgICAgICAgICBxdWlsbEVkaXRvclNjcmlwdC5hZGRFdmVudExpc3RlbmVyKCdlcnJvcicsIHF1aWxsRWRpdG9yT25lcnJvcik7XG4gICAgICAgICAgICAgICAgcXVpbGxCZXR0ZXJUYWJsZVNjcmlwdC5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgcXVpbGxCZXR0ZXJUYWJsZVNjcmlwdE9ubG9hZCk7XG4gICAgICAgICAgICAgICAgcXVpbGxCZXR0ZXJUYWJsZVNjcmlwdC5hZGRFdmVudExpc3RlbmVyKCdlcnJvcicsIHF1aWxsRWRpdG9yT25lcnJvcik7XG5cbiAgICAgICAgICAgICAgICAvLyBjaGVjayBpZiB0aGUgc2NyaXB0IGlzIGFscmVhZHkgbG9hZGVkLiBUYWtlIGludG8gYWNjb3VudCB0aGUgSG9zdG5hbWUgb24gdG8gc3JjXG4gICAgICAgICAgICAgICAgaWYgKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYHNjcmlwdFtzcmM9XCIke3RoaXMuZHluYW1pY0NvbmZpZz8ucGF0aH0vcXVpbGwuanNcIl1gKSA9PT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZChxdWlsbEVkaXRvclNjcmlwdCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gaW50ZXJ2YWwgdGltZXIgdG8gY2hlY2sgd2hlbiB0aGUgc2NyaXB0IGlzIGxvYWRlZFxuICAgICAgICAgICAgICAgICAgICBjb25zdCBpbnRlcnZhbCA9IHNldEludGVydmFsKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChsb2FkZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGVhckludGVydmFsKGludGVydmFsKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAod2luZG93LlF1aWxsICE9PSB1bmRlZmluZWQgJiYgd2luZG93LnF1aWxsQmV0dGVyVGFibGUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9ic2VydmVyLm5leHQodHJ1ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2FkZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwoaW50ZXJ2YWwpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9LCAxMDApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBjaGVjayBpZiBzdHlsZSBpcyBhbHJlYWR5IGxvYWRlZFxuICAgICAgICAgICAgICAgIGlmIChkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGBsaW5rW2hyZWY9XCIke3RoaXMuZHluYW1pY0NvbmZpZz8ucGF0aH0vcXVpbGwuY29yZS5jc3NcIl1gKSA9PT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZChxdWlsbEVkaXRvclN0eWxlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gY2hlY2sgaWYgc3R5bGUgaXMgYWxyZWFkeSBsb2FkZWRcbiAgICAgICAgICAgICAgICBpZiAoZG9jdW1lbnQucXVlcnlTZWxlY3RvcihgbGlua1tocmVmPVwiJHt0aGlzLmR5bmFtaWNDb25maWc/LnBhdGh9L3F1aWxsLnNub3cuY3NzXCJdYCkgPT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmQocXVpbGxFZGl0b3JTbm93U3R5bGUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dCh0cnVlKTtcbiAgICAgICAgICAgICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
|
@@ -437,17 +437,17 @@ export class QuillEditorComponent {
|
|
437
437
|
/** register the Scroll override */
|
438
438
|
QuillInstance.register('blots/scroll', Scroll, true);
|
439
439
|
}
|
440
|
-
|
441
|
-
|
440
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: QuillEditorComponent, deps: [{ token: i0.ElementRef }, { token: i1.DomSanitizer }, { token: DOCUMENT }, { token: PLATFORM_ID }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: QUILL_CONFIG_TOKEN }, { token: i2.LoaderService }], target: i0.ɵɵFactoryTarget.Component }); }
|
441
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-next.3", type: QuillEditorComponent, selector: "quill-editor", inputs: { id: "id", format: "format", theme: "theme", modules: "modules", debug: "debug", placeholder: "placeholder", maxLength: "maxLength", minLength: "minLength", formats: "formats", customToolbarPosition: "customToolbarPosition", styles: "styles", scrollingContainer: "scrollingContainer", bounds: "bounds", customOptions: "customOptions", trackChanges: "trackChanges", hasImageFeature: "hasImageFeature", readOnly: "readOnly", required: "required", sanitize: "sanitize", strict: "strict", preserveWhitespace: "preserveWhitespace", valueGetter: "valueGetter", valueSetter: "valueSetter" }, outputs: { onEditorCreated: "onEditorCreated", onContentChanged: "onContentChanged", onSelectionChanged: "onSelectionChanged", onFocus: "onFocus", onBlur: "onBlur" }, providers: [
|
442
442
|
{
|
443
443
|
multi: true,
|
444
444
|
provide: NG_VALUE_ACCESSOR,
|
445
|
-
useExisting: forwardRef((
|
445
|
+
useExisting: forwardRef(() => QuillEditorComponent),
|
446
446
|
},
|
447
447
|
{
|
448
448
|
multi: true,
|
449
449
|
provide: NG_VALIDATORS,
|
450
|
-
useExisting: forwardRef((
|
450
|
+
useExisting: forwardRef(() => QuillEditorComponent),
|
451
451
|
},
|
452
452
|
], usesOnChanges: true, ngImport: i0, template: ` <ng-content select="[quill-editor-toolbar]"></ng-content> `, isInline: true, encapsulation: i0.ViewEncapsulation.None }); }
|
453
453
|
}
|
@@ -459,12 +459,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-next.3",
|
|
459
459
|
{
|
460
460
|
multi: true,
|
461
461
|
provide: NG_VALUE_ACCESSOR,
|
462
|
-
useExisting: forwardRef((
|
462
|
+
useExisting: forwardRef(() => QuillEditorComponent),
|
463
463
|
},
|
464
464
|
{
|
465
465
|
multi: true,
|
466
466
|
provide: NG_VALIDATORS,
|
467
|
-
useExisting: forwardRef((
|
467
|
+
useExisting: forwardRef(() => QuillEditorComponent),
|
468
468
|
},
|
469
469
|
],
|
470
470
|
// eslint-disable-next-line @angular-eslint/component-selector
|
@@ -537,4 +537,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-next.3",
|
|
537
537
|
}], valueSetter: [{
|
538
538
|
type: Input
|
539
539
|
}] } });
|
540
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVpbGwtZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2V4dGVybmFscy9xdWlsbC9xdWlsbC1lZGl0b3IuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBR25ELE9BQU8sRUFDSCxrQkFBa0IsR0FJckIsTUFBTSwyQkFBMkIsQ0FBQztBQUVuQyxPQUFPLEVBRUgsU0FBUyxFQUVULFlBQVksRUFDWixVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFJTCxNQUFNLEVBQ04sV0FBVyxFQUVYLGVBQWUsRUFFZixpQkFBaUIsR0FDcEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUF3QixhQUFhLEVBQUUsaUJBQWlCLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuRyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRWxELE9BQU8sRUFBRSxxQkFBcUIsRUFBZ0IsTUFBTSx1QkFBdUIsQ0FBQzs7OztBQWdCNUUsTUFBTSxTQUFTLEdBQUcsQ0FBQyxNQUFvQixFQUFFLFlBQTBCLEVBQWUsRUFBRTtJQUNoRixNQUFNLFlBQVksR0FBRyxNQUFNLElBQUksWUFBWSxDQUFDO0lBQzVDLE9BQU8sWUFBWSxJQUFJLE1BQU0sQ0FBQztBQUNsQyxDQUFDLENBQUM7QUFvQkYsTUFBTSxPQUFPLG9CQUFvQjtJQXdDN0IsSUFDSSxRQUFRO1FBQ1IsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQzFCLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxLQUFtQjtRQUM1QixJQUFJLENBQUMsU0FBUyxHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxJQUNJLFFBQVE7UUFDUixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDMUIsQ0FBQztJQUNELElBQUksUUFBUSxDQUFDLEtBQW1CO1FBQzVCLElBQUksQ0FBQyxTQUFTLEdBQUcscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELElBQ0ksUUFBUTtRQUNSLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUMxQixDQUFDO0lBQ0QsSUFBSSxRQUFRLENBQUMsS0FBbUI7UUFDNUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsSUFDSSxNQUFNO1FBQ04sT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3hCLENBQUM7SUFDRCxJQUFJLE1BQU0sQ0FBQyxLQUFtQjtRQUMxQixJQUFJLENBQUMsT0FBTyxHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxJQUNJLGtCQUFrQjtRQUNsQixPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQztJQUNwQyxDQUFDO0lBQ0QsSUFBSSxrQkFBa0IsQ0FBQyxLQUFtQjtRQUN0QyxJQUFJLENBQUMsbUJBQW1CLEdBQUcscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUtELFlBQ1ksVUFBc0IsRUFDdEIsWUFBMEIsRUFDUixHQUFRO0lBQ2xDLHdEQUF3RDtJQUMzQixVQUFrQixFQUN2QyxRQUFtQixFQUNuQixJQUFZLEVBQ2dCLE1BQW1CLEVBQy9DLE1BQXFCO1FBUnJCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDUixRQUFHLEdBQUgsR0FBRyxDQUFLO1FBRUwsZUFBVSxHQUFWLFVBQVUsQ0FBUTtRQUN2QyxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLFNBQUksR0FBSixJQUFJLENBQVE7UUFDZ0IsV0FBTSxHQUFOLE1BQU0sQ0FBYTtRQUMvQyxXQUFNLEdBQU4sTUFBTSxDQUFlO1FBeEZ2QixXQUFNLEdBQUcsS0FBSyxDQUFDO1FBV2hCLDBCQUFxQixHQUFxQixLQUFLLENBQUM7UUFDaEQsV0FBTSxHQUFRLElBQUksQ0FBQztRQUduQixrQkFBYSxHQUFtQixFQUFFLENBQUM7UUFJNUMsK0RBQStEO1FBQ3JELG9CQUFlLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDbEUsK0RBQStEO1FBQ3JELHFCQUFnQixHQUFnQyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzdFLCtEQUErRDtRQUNyRCx1QkFBa0IsR0FBa0MsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNqRiwrREFBK0Q7UUFDckQsWUFBTyxHQUdaLElBQUksWUFBWSxFQUFFLENBQUM7UUFDeEIsK0RBQStEO1FBQ3JELFdBQU0sR0FHWCxJQUFJLFlBQVksRUFBRSxDQUFDO1FBaUJoQixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBUWxCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFRbEIsWUFBTyxHQUFHLElBQUksQ0FBQztRQVFmLHdCQUFtQixHQUFHLEtBQUssQ0FBQztRQUU1QixhQUFRLEdBQUcsS0FBSyxDQUFDLENBQUMsOENBQThDO1FBb0J4RSxnQkFBVyxHQUFHLENBQUMsV0FBZ0IsRUFBRSxhQUEwQixFQUFnQixFQUFFO1lBQ3pFLElBQUksSUFBSSxHQUFrQixhQUFhLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxFQUFFLFNBQVMsQ0FBQztZQUMvRSxJQUFJLElBQUksS0FBSyxhQUFhLElBQUksSUFBSSxLQUFLLGdCQUFnQixFQUFFLENBQUM7Z0JBQ3RELElBQUksR0FBRyxJQUFJLENBQUM7WUFDaEIsQ0FBQztZQUNELElBQUksVUFBVSxHQUFHLElBQUksQ0FBQztZQUN0QixNQUFNLE1BQU0sR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBRTFELElBQUksTUFBTSxLQUFLLE1BQU0sRUFBRSxDQUFDO2dCQUNwQixVQUFVLEdBQUcsV0FBVyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3ZDLENBQUM7aUJBQU0sSUFBSSxNQUFNLEtBQUssUUFBUSxFQUFFLENBQUM7Z0JBQzdCLFVBQVUsR0FBRyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDM0MsQ0FBQztpQkFBTSxJQUFJLE1BQU0sS0FBSyxNQUFNLEVBQUUsQ0FBQztnQkFDM0IsSUFBSSxDQUFDO29CQUNELFVBQVUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO2dCQUMzRCxDQUFDO2dCQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7b0JBQ1QsVUFBVSxHQUFHLFdBQVcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDdkMsQ0FBQztZQUNMLENBQUM7WUFFRCxPQUFPLFVBQVUsQ0FBQztRQUN0QixDQUFDLENBQUM7UUFHRixnQkFBVyxHQUFHLENBQUMsV0FBZ0IsRUFBRSxLQUFVLEVBQU8sRUFBRTtZQUNoRCxNQUFNLE1BQU0sR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzFELElBQUksTUFBTSxLQUFLLE1BQU0sRUFBRSxDQUFDO2dCQUNwQixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFDaEIsS0FBSyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQ3BFLENBQUM7Z0JBQ0QsT0FBTyxXQUFXLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1lBQzFELENBQUM7aUJBQU0sSUFBSSxNQUFNLEtBQUssTUFBTSxFQUFFLENBQUM7Z0JBQzNCLElBQUksQ0FBQztvQkFDRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzdCLENBQUM7Z0JBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztvQkFDVCxPQUFPLENBQUMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztnQkFDL0IsQ0FBQztZQUNMLENBQUM7WUFFRCxPQUFPLEtBQUssQ0FBQztRQUNqQixDQUFDLENBQUM7UUE0SkYsMkJBQXNCLEdBQUcsQ0FBQyxLQUFtQixFQUFFLFFBQXNCLEVBQUUsTUFBYyxFQUFRLEVBQUU7WUFDM0YsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO2dCQUNmLElBQUksS0FBSyxLQUFLLElBQUksRUFBRSxDQUFDO29CQUNqQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQzt3QkFDYixNQUFNLEVBQUUsSUFBSSxDQUFDLFdBQVc7d0JBQ3hCLE1BQU07cUJBQ1QsQ0FBQyxDQUFDO2dCQUNQLENBQUM7cUJBQU0sSUFBSSxRQUFRLEtBQUssSUFBSSxFQUFFLENBQUM7b0JBQzNCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO3dCQUNkLE1BQU0sRUFBRSxJQUFJLENBQUMsV0FBVzt3QkFDeEIsTUFBTTtxQkFDVCxDQUFDLENBQUM7Z0JBQ1AsQ0FBQztnQkFFRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDO29CQUN6QixNQUFNLEVBQUUsSUFBSSxDQUFDLFdBQVc7b0JBQ3hCLFFBQVE7b0JBQ1IsS0FBSztvQkFDTCxNQUFNO2lCQUNULENBQUMsQ0FBQztnQkFFSCxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztvQkFDaEMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO2dCQUMxQixDQUFDO1lBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUM7UUFFRixzQkFBaUIsR0FBRyxDQUFDLEtBQVUsRUFBRSxRQUFhLEVBQUUsTUFBYyxFQUFRLEVBQUU7WUFDcEUsaURBQWlEO1lBRWpELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDeEMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUUvQyxvRUFBb0U7WUFDcEUsSUFBSSxJQUFJLEdBQWtCLElBQUksQ0FBQyxVQUFXLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBRSxDQUFDLFNBQVMsQ0FBQztZQUNsRixJQUFJLElBQUksS0FBSyxhQUFhLElBQUksSUFBSSxLQUFLLGdCQUFnQixFQUFFLENBQUM7Z0JBQ3RELElBQUksR0FBRyxJQUFJLENBQUM7WUFDaEIsQ0FBQztZQUVELElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTtnQkFDZixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDO2dCQUNuRSxJQUFJLENBQUMsTUFBTSxLQUFLLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxJQUFJLENBQUMsWUFBWSxJQUFJLFlBQVksS0FBSyxLQUFLLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztvQkFDcEcsSUFBSSxDQUFDLGFBQWE7b0JBQ2Qsb0VBQW9FO29CQUNwRSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFVBQVcsQ0FBQyxDQUN2RCxDQUFDO2dCQUNOLENBQUM7Z0JBRUQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQztvQkFDdkIsT0FBTztvQkFDUCxLQUFLO29CQUNMLE1BQU0sRUFBRSxJQUFJLENBQUMsV0FBVztvQkFDeEIsSUFBSTtvQkFDSixRQUFRO29CQUNSLE1BQU07b0JBQ04sSUFBSTtpQkFDUCxDQUFDLENBQUM7WUFDUCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQztJQXRRQyxDQUFDO0lBRUosNklBQTZJO0lBQzdJLGFBQWEsQ0FBQyxXQUFpQixJQUFHLENBQUM7SUFDbkMsK0lBQStJO0lBQy9JLGNBQWMsS0FBSSxDQUFDO0lBNkNuQixlQUFlO1FBQ1gsc0NBQXNDO1FBQ3RDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUMsU0FBUyxDQUFDO1lBQ3pCLFFBQVEsRUFBRSxHQUFHLEVBQUU7Z0JBQ1gsc0RBQXNEO2dCQUN0RCxNQUFNLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO2dCQUNwRCxJQUFHLGdCQUFnQixFQUFFLENBQUM7b0JBQ2xCLDhCQUE4QjtvQkFDOUIsSUFBRyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLHNCQUFzQixDQUFDLEVBQUUsQ0FBQzt3QkFDakUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLHNCQUFzQixFQUFFLGdCQUFnQixFQUFFLENBQUMsQ0FBQztvQkFDM0UsQ0FBQztvQkFDRCxJQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUM7d0JBQy9CLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsR0FBRzs0QkFDM0IsUUFBUSxFQUFFLGdCQUFnQixFQUFFLGdCQUFnQjt5QkFDL0MsQ0FBQztvQkFDTixDQUFDO2dCQUNMLENBQUM7Z0JBRUQsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztvQkFDcEMsT0FBTztnQkFDWCxDQUFDO2dCQUNELElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztvQkFDVCwyQkFBMkI7b0JBQzNCLEtBQUssR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQzVCLENBQUM7Z0JBQ0QsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUVuQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztnQkFFbkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsa0JBQWtCLENBQzVDLElBQUksQ0FBQyxxQkFBcUIsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsWUFBWSxFQUNqRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLGtDQUFrQyxDQUFDLENBQUMsQ0FBQyxrQ0FBa0MsQ0FDcEcsQ0FBQztnQkFFRixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO2dCQUV4RixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsd0JBQXdCLENBQUMsQ0FBQztnQkFDMUYsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxjQUFjLENBQUM7Z0JBQ3BFLElBQUksT0FBTyxDQUFDLE9BQU8sS0FBSyxTQUFTLEVBQUUsQ0FBQztvQkFDaEMsT0FBTyxDQUFDLE9BQU8sR0FBRyxjQUFjLENBQUMsT0FBTyxDQUFDO2dCQUM3QyxDQUFDO2dCQUVELElBQUksV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQztnQkFDOUYsSUFBSSxXQUFXLEtBQUssU0FBUyxFQUFFLENBQUM7b0JBQzVCLFdBQVcsR0FBRyxzQkFBc0IsQ0FBQztnQkFDekMsQ0FBQztnQkFFRCxJQUFJLFdBQVcsRUFBRSxDQUFDO29CQUNkLHdFQUF3RTtvQkFDeEUsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLFdBQVcsQ0FBQztnQkFDckMsQ0FBQztnQkFFRCxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO29CQUN4QixPQUFPLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ25ELENBQUM7cUJBQU0sQ0FBQztvQkFDSixPQUFPLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxTQUFTLEVBQUUsQ0FBQyxXQUFXLEVBQUUsWUFBWSxDQUFDLEVBQUUsQ0FBQztnQkFDckUsQ0FBQztnQkFFRCxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztvQkFDZCxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFXLEVBQUUsRUFBRTt3QkFDN0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO29CQUNuRSxDQUFDLENBQUMsQ0FBQztnQkFDUCxDQUFDO2dCQUVELElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsWUFBWSxFQUFFLEVBQUU7b0JBQ3hDLE1BQU0sZUFBZSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDO29CQUMxRCxlQUFlLENBQUMsU0FBUyxHQUFHLFlBQVksQ0FBQyxTQUFTLENBQUM7b0JBQ25ELEtBQUssQ0FBQyxRQUFRLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxDQUFDO2dCQUMxQyxDQUFDLENBQUMsQ0FBQztnQkFFSCxJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO2dCQUNuRixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7b0JBQ1YsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUM7Z0JBQ3JFLENBQUM7Z0JBRUQsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztnQkFDdkIsSUFBSSxDQUFDLEtBQUssSUFBSSxLQUFLLEtBQUssS0FBSyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7b0JBQ2pELEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztnQkFDOUIsQ0FBQztnQkFFRCxJQUFJLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO2dCQUM3QixJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssS0FBSyxFQUFFLENBQUM7b0JBQ3ZDLFFBQVEsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7Z0JBQ2pGLENBQUM7Z0JBRUQsSUFBSSxrQkFBa0IsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUM7Z0JBQ2pELElBQUksQ0FBQyxrQkFBa0IsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEtBQUssSUFBSSxFQUFFLENBQUM7b0JBQzFELGtCQUFrQjt3QkFDZCxJQUFJLENBQUMsTUFBTSxDQUFDLGtCQUFrQixLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7Z0JBQzFILENBQUM7Z0JBRUQsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztnQkFDM0IsSUFBSSxDQUFDLE9BQU8sSUFBSSxPQUFPLEtBQUssU0FBUyxFQUFFLENBQUM7b0JBQ3BDLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7Z0JBQ3BHLENBQUM7Z0JBQ0QsS0FBSyxDQUFDLE9BQU8sR0FBRyxFQUFFLEdBQUcsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQztnQkFFekQsSUFBSSxPQUFPLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDO29CQUM3QyxPQUFPLEdBQUc7d0JBQ04sR0FBRyxPQUFPO3dCQUNWLGNBQWMsRUFBRSxLQUFLO3FCQUN4QixDQUFBO2dCQUNMLENBQUM7Z0JBRUQsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFO29CQUMxQyxNQUFNO29CQUNOLEtBQUs7b0JBQ0wsT0FBTztvQkFDUCxPQUFPO29CQUNQLFdBQVc7b0JBQ1gsUUFBUTtvQkFDUixrQkFBa0I7b0JBQ2xCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtvQkFDbkIsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztpQkFDeEUsQ0FBQyxDQUFDO2dCQUNILElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQztnQkFFbkQsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7b0JBQ2YsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDMUQsSUFBSSxNQUFNLEtBQUssUUFBUSxFQUFFLENBQUM7d0JBQ3RCLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUM7b0JBQ3pELENBQUM7eUJBQU0sSUFBSSxNQUFNLEtBQUssTUFBTSxFQUFFLENBQUM7d0JBQzNCLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUM7b0JBQ3JELENBQUM7eUJBQU0sSUFBSSxNQUFNLEtBQUssTUFBTSxFQUFFLENBQUM7d0JBQzNCLElBQUksQ0FBQzs0QkFDRCxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQzt3QkFDckUsQ0FBQzt3QkFBQyxPQUFPLENBQUMsRUFBRSxDQUFDOzRCQUNULElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUM7d0JBQ3JELENBQUM7b0JBQ0wsQ0FBQzt5QkFBTSxDQUFDO3dCQUNKLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDOzRCQUNoQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO3dCQUNsRixDQUFDO3dCQUNELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7d0JBQ2xFLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQztvQkFDckQsQ0FBQztvQkFFRCxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDckMsQ0FBQztnQkFFRCxxRUFBcUU7Z0JBQ3JFLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO2dCQUV4QixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7Z0JBRTVDLDZDQUE2QztnQkFDN0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUM7Z0JBRXJFLCtCQUErQjtnQkFDL0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1lBQy9ELENBQUM7U0FDSixDQUFDLENBQUM7SUFDUCxDQUFDO0lBOERELFdBQVc7UUFDUCxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLENBQUMsc0JBQXNCLENBQUMsQ0FBQztZQUN0RSxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDaEUsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDOUIsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNwQixPQUFPO1FBQ1gsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ2IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLEVBQUUsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQztZQUNuRSxLQUFLLENBQUMsT0FBTyxHQUFHLEVBQUUsR0FBRyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNsRSxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztZQUN0QixJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMvRCxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQyxZQUFZLENBQUM7UUFDcEYsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDcEIsTUFBTSxjQUFjLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLFlBQVksQ0FBQztZQUN0RCxNQUFNLGVBQWUsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsYUFBYSxDQUFDO1lBRXhELElBQUksZUFBZSxFQUFFLENBQUM7Z0JBQ2xCLE1BQU0sQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBVyxFQUFFLEVBQUU7b0JBQ2pELElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUM7Z0JBQ3BELENBQUMsQ0FBQyxDQUFDO1lBQ1AsQ0FBQztZQUNELElBQUksY0FBYyxFQUFFLENBQUM7Z0JBQ2pCLE1BQU0sQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBVyxFQUFFLEVBQUU7b0JBQ2hELElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDbkUsQ0FBQyxDQUFDLENBQUM7WUFDUCxDQUFDO1FBQ0wsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7WUFDckIsTUFBTSxjQUFjLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFlBQVksQ0FBQztZQUN2RCxLQUFLLENBQUMsT0FBTyxHQUFHLEVBQUUsR0FBRyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFLGNBQWMsRUFBRSxDQUFDO1FBQ3BFLENBQUM7SUFDTCxDQUFDO0lBRUQsVUFBVSxDQUFDLFlBQWlCO1FBQ3hCLElBQUksQ0FBQyxPQUFPLEdBQUcsWUFBWSxDQUFDO1FBQzVCLE1BQU0sTUFBTSxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFMUQsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDbkIsSUFBSSxZQUFZLEVBQUUsQ0FBQztnQkFDZixJQUFJLE1BQU0sS0FBSyxNQUFNLEVBQUUsQ0FBQztvQkFDcEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7Z0JBQzNDLENBQUM7cUJBQU0sQ0FBQztvQkFDSixJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7Z0JBQ25GLENBQUM7Z0JBQ0QsT0FBTztZQUNYLENBQUM7WUFDRCxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNqQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGdCQUFnQixDQUFDLGFBQXNCLElBQUksQ0FBQyxRQUFRO1FBQ2hELHdFQUF3RTtRQUN4RSxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztRQUMzQixJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNuQixJQUFJLFVBQVUsRUFBRSxDQUFDO2dCQUNiLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQzNCLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQztZQUN0RixDQUFDO2lCQUFNLENBQUM7Z0JBQ0osSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFDakIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDOUIsQ0FBQztnQkFDRCxJQUFJLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxVQUFVLENBQUMsQ0FBQztZQUM3RSxDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxFQUE2QjtRQUMxQyxJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQsaUJBQWlCLENBQUMsRUFBYztRQUM1QixJQUFJLENBQUMsY0FBYyxHQUFHLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDcEIsT0FBTyxJQUFJLENBQUM7UUFDaEIsQ0FBQztRQUVELE1BQU0sR0FBRyxHQVVMLEVBQUUsQ0FBQztRQUNQLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQztRQUVqQixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLE1BQU0sQ0FBQztRQUU1RCxJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksVUFBVSxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDOUQsR0FBRyxDQUFDLGNBQWMsR0FBRztnQkFDakIsS0FBSyxFQUFFLFVBQVU7Z0JBQ2pCLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUzthQUM1QixDQUFDO1lBRUYsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNsQixDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDaEQsR0FBRyxDQUFDLGNBQWMsR0FBRztnQkFDakIsS0FBSyxFQUFFLFVBQVU7Z0JBQ2pCLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUzthQUM1QixDQUFDO1lBRUYsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNsQixDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDL0IsR0FBRyxDQUFDLGFBQWEsR0FBRztnQkFDaEIsS0FBSyxFQUFFLElBQUk7YUFDZCxDQUFDO1lBRUYsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNsQixDQUFDO1FBRUQsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDO0lBQzlCLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSyxzQkFBc0IsQ0FBQyxhQUFrQjtRQUM3QyxxRUFBcUU7UUFDckUsTUFBTSxhQUFhLEdBQUcsYUFBYSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUMzRDs7V0FFRztRQUNILE1BQU0sTUFBTyxTQUFRLGFBQWE7WUFDOUIsUUFBUSxDQUFDLEtBQWEsRUFBRSxNQUFjLEVBQUUsTUFBYyxFQUFFLEtBQVU7Z0JBQzlELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO2dCQUNsQyxNQUFNLGVBQWUsR0FBRyxhQUFhLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO2dCQUN6RCwrREFBK0Q7Z0JBQy9ELElBQUksZUFBZSxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxNQUFNLENBQUMsRUFBRSxDQUFDO29CQUMvRCxPQUFPO2dCQUNYLENBQUM7Z0JBQ0QsaUNBQWlDO2dCQUNqQyxLQUFLLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ2pELENBQUM7U0FDSjtRQUNELG1DQUFtQztRQUNuQyxhQUFhLENBQUMsUUFBUSxDQUFDLGNBQWMsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDekQsQ0FBQzt3SUFwZ0JRLG9CQUFvQix3RUFzRmpCLFFBQVEsYUFFUixXQUFXLDREQUdYLGtCQUFrQjs0SEEzRnJCLG9CQUFvQixneUJBaEJsQjtZQUNQO2dCQUNJLEtBQUssRUFBRSxJQUFJO2dCQUNYLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFdBQVcsRUFBRSxVQUFVLEVBQUMsR0FBRyxFQUFFLENBQUMsb0JBQW9CLEVBQUM7YUFDdEQ7WUFDRDtnQkFDSSxLQUFLLEVBQUUsSUFBSTtnQkFDWCxPQUFPLEVBQUUsYUFBYTtnQkFDdEIsV0FBVyxFQUFFLFVBQVUsRUFBQyxHQUFHLEVBQUUsQ0FBQyxvQkFBb0IsRUFBQzthQUN0RDtTQUNKLCtDQUdTLDZEQUE2RDs7a0dBRTlELG9CQUFvQjtrQkFsQmhDLFNBQVM7bUJBQUM7b0JBQ1AsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7b0JBQ3JDLFNBQVMsRUFBRTt3QkFDUDs0QkFDSSxLQUFLLEVBQUUsSUFBSTs0QkFDWCxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxFQUFDLEdBQUcsRUFBRSxxQkFBcUIsRUFBQzt5QkFDdEQ7d0JBQ0Q7NEJBQ0ksS0FBSyxFQUFFLElBQUk7NEJBQ1gsT0FBTyxFQUFFLGFBQWE7NEJBQ3RCLFdBQVcsRUFBRSxVQUFVLEVBQUMsR0FBRyxFQUFFLHFCQUFxQixFQUFDO3lCQUN0RDtxQkFDSjtvQkFDRCw4REFBOEQ7b0JBQzlELFFBQVEsRUFBRSxjQUFjO29CQUN4QixRQUFRLEVBQUUsNkRBQTZEO2lCQUMxRTs7MEJBdUZRLE1BQU07MkJBQUMsUUFBUTs7MEJBRWYsTUFBTTsyQkFBQyxXQUFXOzswQkFHbEIsTUFBTTsyQkFBQyxrQkFBa0I7cUVBckZyQixFQUFFO3NCQUFWLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBR0ksZUFBZTtzQkFBeEIsTUFBTTtnQkFFRyxnQkFBZ0I7c0JBQXpCLE1BQU07Z0JBRUcsa0JBQWtCO3NCQUEzQixNQUFNO2dCQUVHLE9BQU87c0JBQWhCLE1BQU07Z0JBS0csTUFBTTtzQkFBZixNQUFNO2dCQU1ILFFBQVE7c0JBRFgsS0FBSztnQkFTRixRQUFRO3NCQURYLEtBQUs7Z0JBU0YsUUFBUTtzQkFEWCxLQUFLO2dCQVNGLE1BQU07c0JBRFQsS0FBSztnQkFTRixrQkFBa0I7c0JBRHJCLEtBQUs7Z0JBNkJOLFdBQVc7c0JBRFYsS0FBSztnQkF5Qk4sV0FBVztzQkFEVixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNQbGF0Zm9ybVNlcnZlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcblxuaW1wb3J0IHtcbiAgICBRVUlMTF9DT05GSUdfVE9LRU4sXG4gICAgUXVpbGxDb25maWcsXG4gICAgUXVpbGxGb3JtYXQsXG4gICAgUXVpbGxNb2R1bGVzLFxufSBmcm9tICcuL3F1aWxsLWVkaXRvci5pbnRlcmZhY2VzJztcblxuaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBmb3J3YXJkUmVmLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBOZ1pvbmUsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uRGVzdHJveSxcbiAgICBPdXRwdXQsXG4gICAgUExBVEZPUk1fSUQsXG4gICAgUmVuZGVyZXIyLFxuICAgIFNlY3VyaXR5Q29udGV4dCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTElEQVRPUlMsIE5HX1ZBTFVFX0FDQ0VTU09SLCBWYWxpZGF0b3IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IGRlZmF1bHRNb2R1bGVzIH0gZnJvbSAnLi9xdWlsbC1kZWZhdWx0cyc7XG5pbXBvcnQgeyBDb250ZW50Q2hhbmdlLCBFZGl0b3JDaGFuZ2VDb250ZW50LCBTZWxlY3Rpb25DaGFuZ2UsIFJhbmdlIH0gZnJvbSAnLi9tb2RlbHMvZWRpdG9yLm1vZGVsJztcbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSwgQm9vbGVhbklucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IExvYWRlclNlcnZpY2UgfSBmcm9tICcuL2xvYWRlci5zZXJ2aWNlJztcblxuLy8gQmVjYXVzZSBxdWlsbCB1c2VzIGBkb2N1bWVudGAgZGlyZWN0bHksIHdlIGNhbm5vdCBgaW1wb3J0YCBkdXJpbmcgU1NSXG4vLyBpbnN0ZWFkLCB3ZSBsb2FkIGR5bmFtaWNhbGx5IHZpYSBgcmVxdWlyZSgncXVpbGwnKWAgaW4gYG5nQWZ0ZXJWaWV3SW5pdCgpYFxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXZhclxuZGVjbGFyZSB2YXIgcmVxdWlyZTogYW55O1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXZhclxuZGVjbGFyZSB2YXIgUXVpbGw6IGFueTtcbi8vIGxldCBRdWlsbDogYW55ID0gd2luZG93WydRdWlsbCddO1xuXG5leHBvcnQgaW50ZXJmYWNlIEN1c3RvbU9wdGlvbiB7XG4gICAgaW1wb3J0OiBzdHJpbmc7XG4gICAgd2hpdGVsaXN0OiBhbnlbXTtcbn1cblxuY29uc3QgZ2V0Rm9ybWF0ID0gKGZvcm1hdD86IFF1aWxsRm9ybWF0LCBjb25maWdGb3JtYXQ/OiBRdWlsbEZvcm1hdCk6IFF1aWxsRm9ybWF0ID0+IHtcbiAgICBjb25zdCBwYXNzZWRGb3JtYXQgPSBmb3JtYXQgfHwgY29uZmlnRm9ybWF0O1xuICAgIHJldHVybiBwYXNzZWRGb3JtYXQgfHwgJ2h0bWwnO1xufTtcblxuQENvbXBvbmVudCh7XG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFF1aWxsRWRpdG9yQ29tcG9uZW50KSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUXVpbGxFZGl0b3JDb21wb25lbnQpLFxuICAgICAgICB9LFxuICAgIF0sXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ3F1aWxsLWVkaXRvcicsXG4gICAgdGVtcGxhdGU6IGAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3F1aWxsLWVkaXRvci10b29sYmFyXVwiPjwvbmctY29udGVudD4gYCxcbn0pXG5leHBvcnQgY2xhc3MgUXVpbGxFZGl0b3JDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIFZhbGlkYXRvciB7XG4gICAgcXVpbGxFZGl0b3I6IGFueTtcbiAgICBlZGl0b3JFbGVtOiBIVE1MRWxlbWVudCB8IHVuZGVmaW5lZDtcbiAgICBjb250ZW50OiBhbnk7XG4gICAgcHJvdGVjdGVkIGxvYWRlZCA9IGZhbHNlO1xuXG4gICAgQElucHV0KCkgaWQ6IHN0cmluZztcbiAgICBASW5wdXQoKSBmb3JtYXQ/OiAnb2JqZWN0JyB8ICdodG1sJyB8ICd0ZXh0JyB8ICdqc29uJztcbiAgICBASW5wdXQoKSB0aGVtZT86IHN0cmluZztcbiAgICBASW5wdXQoKSBtb2R1bGVzPzogUXVpbGxNb2R1bGVzO1xuICAgIEBJbnB1dCgpIGRlYnVnPzogJ3dhcm4nIHwgJ2xvZycgfCAnZXJyb3InIHwgZmFsc2U7XG4gICAgQElucHV0KCkgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgbWF4TGVuZ3RoPzogbnVtYmVyO1xuICAgIEBJbnB1dCgpIG1pbkxlbmd0aD86IG51bWJlcjtcbiAgICBASW5wdXQoKSBmb3JtYXRzPzogc3RyaW5nW10gfCBudWxsO1xuICAgIEBJbnB1dCgpIGN1c3RvbVRvb2xiYXJQb3NpdGlvbjogJ3RvcCcgfCAnYm90dG9tJyA9ICd0b3AnO1xuICAgIEBJbnB1dCgpIHN0eWxlczogYW55ID0gbnVsbDtcbiAgICBASW5wdXQoKSBzY3JvbGxpbmdDb250YWluZXI/OiBIVE1MRWxlbWVudCB8IHN0cmluZyB8IG51bGw7XG4gICAgQElucHV0KCkgYm91bmRzPzogSFRNTEVsZW1lbnQgfCBzdHJpbmc7XG4gICAgQElucHV0KCkgY3VzdG9tT3B0aW9uczogQ3VzdG9tT3B0aW9uW10gPSBbXTtcbiAgICBASW5wdXQoKSB0cmFja0NoYW5nZXM/OiAndXNlcicgfCAnYWxsJztcbiAgICBASW5wdXQoKSBoYXNJbWFnZUZlYXR1cmU6IGJvb2xlYW47XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1vbi1wcmVmaXhcbiAgICBAT3V0cHV0KCkgb25FZGl0b3JDcmVhdGVkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1vbi1wcmVmaXhcbiAgICBAT3V0cHV0KCkgb25Db250ZW50Q2hhbmdlZDogRXZlbnRFbWl0dGVyPENvbnRlbnRDaGFuZ2U+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW9uLXByZWZpeFxuICAgIEBPdXRwdXQoKSBvblNlbGVjdGlvbkNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxTZWxlY3Rpb25DaGFuZ2U+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW9uLXByZWZpeFxuICAgIEBPdXRwdXQoKSBvbkZvY3VzOiBFdmVudEVtaXR0ZXI8e1xuICAgICAgICBlZGl0b3I6IGFueTtcbiAgICAgICAgc291cmNlOiBzdHJpbmc7XG4gICAgfT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1vdXRwdXQtb24tcHJlZml4XG4gICAgQE91dHB1dCgpIG9uQmx1cjogRXZlbnRFbWl0dGVyPHtcbiAgICAgICAgZWRpdG9yOiBhbnk7XG4gICAgICAgIHNvdXJjZTogc3RyaW5nO1xuICAgIH0+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgQElucHV0KClcbiAgICBnZXQgcmVhZE9ubHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZWFkT25seTtcbiAgICB9XG4gICAgc2V0IHJlYWRPbmx5KHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5fcmVhZE9ubHkgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9yZWFkT25seT86IGJvb2xlYW47XG4gICAgQElucHV0KClcbiAgICBnZXQgcmVxdWlyZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZXF1aXJlZDtcbiAgICB9XG4gICAgc2V0IHJlcXVpcmVkKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5fcmVxdWlyZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9yZXF1aXJlZCA9IGZhbHNlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IHNhbml0aXplKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fc2FuaXRpemU7XG4gICAgfVxuICAgIHNldCBzYW5pdGl6ZSh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX3Nhbml0aXplID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfc2FuaXRpemUgPSBmYWxzZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBzdHJpY3QoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zdHJpY3Q7XG4gICAgfVxuICAgIHNldCBzdHJpY3QodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9zdHJpY3QgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9zdHJpY3QgPSB0cnVlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IHByZXNlcnZlV2hpdGVzcGFjZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3ByZXNlcnZlV2hpdGVzcGFjZTtcbiAgICB9XG4gICAgc2V0IHByZXNlcnZlV2hpdGVzcGFjZSh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX3ByZXNlcnZlV2hpdGVzcGFjZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX3ByZXNlcnZlV2hpdGVzcGFjZSA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSBkaXNhYmxlZCA9IGZhbHNlOyAvLyB1c2VkIHRvIHN0b3JlIGluaXRpYWwgdmFsdWUgYmVmb3JlIFZpZXdJbml0XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgICAgICBwcml2YXRlIGRvbVNhbml0aXplcjogRG9tU2FuaXRpemVyLFxuICAgICAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvYzogYW55LFxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2Jhbi10eXBlc1xuICAgICAgICBASW5qZWN0KFBMQVRGT1JNX0lEKSBwcml2YXRlIHBsYXRmb3JtSWQ6IE9iamVjdCxcbiAgICAgICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgICAgICBwcml2YXRlIHpvbmU6IE5nWm9uZSxcbiAgICAgICAgQEluamVjdChRVUlMTF9DT05GSUdfVE9LRU4pIHByaXZhdGUgY29uZmlnOiBRdWlsbENvbmZpZyxcbiAgICAgICAgcHJpdmF0ZSBsb2FkZXI6IExvYWRlclNlcnZpY2UsXG4gICAgKSB7fVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWVtcHR5LG5vLWVtcHR5LWZ1bmN0aW9uLEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvbiwgQHR5cGVzY3JpcHQtZXNsaW50L2V4cGxpY2l0LWZ1bmN0aW9uLXJldHVybi10eXBlXG4gICAgb25Nb2RlbENoYW5nZShfbW9kZWxWYWx1ZT86IGFueSkge31cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZW1wdHksIG5vLWVtcHR5LWZ1bmN0aW9uLCBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb24sIEB0eXBlc2NyaXB0LWVzbGludC9leHBsaWNpdC1mdW5jdGlvbi1yZXR1cm4tdHlwZVxuICAgIG9uTW9kZWxUb3VjaGVkKCkge31cblxuICAgIEBJbnB1dCgpXG4gICAgdmFsdWVHZXR0ZXIgPSAocXVpbGxFZGl0b3I6IGFueSwgZWRpdG9yRWxlbWVudDogSFRNTEVsZW1lbnQpOiBzdHJpbmcgfCBhbnkgPT4ge1xuICAgICAgICBsZXQgaHRtbDogc3RyaW5nIHwgbnVsbCA9IGVkaXRvckVsZW1lbnQucXVlcnlTZWxlY3RvcignLnFsLWVkaXRvcicpPy5pbm5lckhUTUw7XG4gICAgICAgIGlmIChodG1sID09PSAnPHA+PGJyPjwvcD4nIHx8IGh0bWwgPT09ICc8ZGl2Pjxicj48ZGl2PicpIHtcbiAgICAgICAgICAgIGh0bWwgPSBudWxsO1xuICAgICAgICB9XG4gICAgICAgIGxldCBtb2RlbFZhbHVlID0gaHRtbDtcbiAgICAgICAgY29uc3QgZm9ybWF0ID0gZ2V0Rm9ybWF0KHRoaXMuZm9ybWF0LCB0aGlzLmNvbmZpZy5mb3JtYXQpO1xuXG4gICAgICAgIGlmIChmb3JtYXQgPT09ICd0ZXh0Jykge1xuICAgICAgICAgICAgbW9kZWxWYWx1ZSA9IHF1aWxsRWRpdG9yLmdldFRleHQoKTtcbiAgICAgICAgfSBlbHNlIGlmIChmb3JtYXQgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICBtb2RlbFZhbHVlID0gcXVpbGxFZGl0b3IuZ2V0Q29udGVudHMoKTtcbiAgICAgICAgfSBlbHNlIGlmIChmb3JtYXQgPT09ICdqc29uJykge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBtb2RlbFZhbHVlID0gSlNPTi5zdHJpbmdpZnkocXVpbGxFZGl0b3IuZ2V0Q29udGVudHMoKSk7XG4gICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgbW9kZWxWYWx1ZSA9IHF1aWxsRWRpdG9yLmdldFRleHQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBtb2RlbFZhbHVlO1xuICAgIH07XG5cbiAgICBASW5wdXQoKVxuICAgIHZhbHVlU2V0dGVyID0gKHF1aWxsRWRpdG9yOiBhbnksIHZhbHVlOiBhbnkpOiBhbnkgPT4ge1xuICAgICAgICBjb25zdCBmb3JtYXQgPSBnZXRGb3JtYXQodGhpcy5mb3JtYXQsIHRoaXMuY29uZmlnLmZvcm1hdCk7XG4gICAgICAgIGlmIChmb3JtYXQgPT09ICdodG1sJykge1xuICAgICAgICAgICAgaWYgKHRoaXMuc2FuaXRpemUpIHtcbiAgICAgICAgICAgICAgICB2YWx1ZSA9IHRoaXMuZG9tU2FuaXRpemVyLnNhbml0aXplKFNlY3VyaXR5Q29udGV4dC5IVE1MLCB2YWx1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gcXVpbGxFZGl0b3IuY2xpcGJvYXJkLmNvbnZlcnQoeyBodG1sOiB2YWx1ZSB9KTtcbiAgICAgICAgfSBlbHNlIGlmIChmb3JtYXQgPT09ICdqc29uJykge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gSlNPTi5wYXJzZSh2YWx1ZSk7XG4gICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIFt7IGluc2VydDogdmFsdWUgfV07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgfTtcblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgLy8gY29uc3QgbG9hZGVyID0gbmV3IExvYWRlclNlcnZpY2UoKTtcbiAgICAgICAgdGhpcy5sb2FkZXIubG9hZCgpLnN1YnNjcmliZSh7XG4gICAgICAgICAgICBjb21wbGV0ZTogKCkgPT4ge1xuICAgICAgICAgICAgICAgIC8vIHNldHVwIGtleWJvYXJkIGJpbmRpbmdzIGZyb20gQmV0dGVyVGFibGUgaWYgcHJlc2VudFxuICAgICAgICAgICAgICAgIGNvbnN0IFF1aWxsQmV0dGVyVGFibGUgPSB3aW5kb3dbJ3F1aWxsQmV0dGVyVGFibGUnXTtcbiAgICAgICAgICAgICAgICBpZihRdWlsbEJldHRlclRhYmxlKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGNoZWNrIGlmIGFscmVhZHkgcmVnaXN0ZXJlZFxuICAgICAgICAgICAgICAgICAgICBpZighd2luZG93WydRdWlsbCddLmltcG9ydHMuaGFzT3duUHJvcGVydHkoJ21vZHVsZXMvYmV0dGVyLXRhYmxlJykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvd1snUXVpbGwnXS5yZWdpc3Rlcih7ICdtb2R1bGVzL2JldHRlci10YWJsZSc6IFF1aWxsQmV0dGVyVGFibGUgfSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYoIXRoaXMuY29uZmlnLm1vZHVsZXMua2V5Ym9hcmQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY29uZmlnLm1vZHVsZXMua2V5Ym9hcmQgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmluZGluZ3M6IFF1aWxsQmV0dGVyVGFibGU/LmtleWJvYXJkQmluZGluZ3MsXG4gICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaWYgKGlzUGxhdGZvcm1TZXJ2ZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICghUXVpbGwpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gUXVpbGwgPSByZXF1aXJlKCdxdWlsbCcpXG4gICAgICAgICAgICAgICAgICAgIFF1aWxsID0gd2luZG93WydRdWlsbCddO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLm92ZXJyaWRlU2Nyb2xsQmVoYXZpb3IoUXVpbGwpO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5sb2FkZWQgPSB0cnVlO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuaW5zZXJ0QWRqYWNlbnRIVE1MKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmN1c3RvbVRvb2xiYXJQb3NpdGlvbiA9PT0gJ3RvcCcgPyAnYmVmb3JlZW5kJyA6ICdhZnRlcmJlZ2luJyxcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wcmVzZXJ2ZVdoaXRlc3BhY2UgPyAnPHByZSBxdWlsbC1lZGl0b3ItZWxlbWVudD48L3ByZT4nIDogJzxkaXYgcXVpbGwtZWRpdG9yLWVsZW1lbnQ+PC9kaXY+J1xuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICB0aGlzLmVkaXRvckVsZW0gPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCdbcXVpbGwtZWRpdG9yLWVsZW1lbnRdJyk7XG5cbiAgICAgICAgICAgICAgICBjb25zdCB0b29sYmFyRWxlbSA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ1txdWlsbC1lZGl0b3ItdG9vbGJhcl0nKTtcbiAgICAgICAgICAgICAgICBsZXQgbW9kdWxlcyA9IHRoaXMubW9kdWxlcyB8fCB0aGlzLmNvbmZpZy5tb2R1bGVzIHx8IGRlZmF1bHRNb2R1bGVzO1xuICAgICAgICAgICAgICAgIGlmIChtb2R1bGVzLnRvb2xiYXIgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICBtb2R1bGVzLnRvb2xiYXIgPSBkZWZhdWx0TW9kdWxlcy50b29sYmFyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxldCBwbGFjZWhvbGRlciA9IHRoaXMucGxhY2Vob2xkZXIgIT09IHVuZGVmaW5lZCA/IHRoaXMucGxhY2Vob2xkZXIgOiB0aGlzLmNvbmZpZy5wbGFjZWhvbGRlcjtcbiAgICAgICAgICAgICAgICBpZiAocGxhY2Vob2xkZXIgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlciA9ICdJbnNlcnQgdGV4dCBoZXJlIC4uLic7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaWYgKHRvb2xiYXJFbGVtKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBkb3Qtbm90YXRpb24sQHR5cGVzY3JpcHQtZXNsaW50L2RvdC1ub3RhdGlvblxuICAgICAgICAgICAgICAgICAgICBtb2R1bGVzWyd0b29sYmFyJ10gPSB0b29sYmFyRWxlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuaGFzSW1hZ2VGZWF0dXJlKSB7XG4gICAgICAgICAgICAgICAgICAgIG1vZHVsZXNbJ3VwbG9hZGVyJ10gPSB7IGhhbmRsZXI6ICgpID0+IGZhbHNlIH07XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgbW9kdWxlc1sndXBsb2FkZXInXSA9IHsgbWltZXR5cGVzOiBbJ2ltYWdlL3BuZycsICdpbWFnZS9qcGVnJ10gfTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAodGhpcy5zdHlsZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmtleXModGhpcy5zdHlsZXMpLmZvckVhY2goKGtleTogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZWRpdG9yRWxlbSwga2V5LCB0aGlzLnN0eWxlc1trZXldKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdGhpcy5jdXN0b21PcHRpb25zLmZvckVhY2goKGN1c3RvbU9wdGlvbikgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXdDdXN0b21PcHRpb24gPSBRdWlsbC5pbXBvcnQoY3VzdG9tT3B0aW9uLmltcG9ydCk7XG4gICAgICAgICAgICAgICAgICAgIG5ld0N1c3RvbU9wdGlvbi53aGl0ZWxpc3QgPSBjdXN0b21PcHRpb24ud2hpdGVsaXN0O1xuICAgICAgICAgICAgICAgICAgICBRdWlsbC5yZWdpc3RlcihuZXdDdXN0b21PcHRpb24sIHRydWUpO1xuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgbGV0IGJvdW5kcyA9IHRoaXMuYm91bmRzICYmIHRoaXMuYm91bmRzID09PSAnc2VsZicgPyB0aGlzLmVkaXRvckVsZW0gOiB0aGlzLmJvdW5kcztcbiAgICAgICAgICAgICAgICBpZiAoIWJvdW5kcykge1xuICAgICAgICAgICAgICAgICAgICBib3VuZHMgPSB0aGlzLmNvbmZpZy5ib3VuZHMgPyB0aGlzLmNvbmZpZy5ib3VuZHMgOiB0aGlzLmRvYy5ib2R5O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxldCBkZWJ1ZyA9IHRoaXMuZGVidWc7XG4gICAgICAgICAgICAgICAgaWYgKCFkZWJ1ZyAmJiBkZWJ1ZyAhPT0gZmFsc2UgJiYgdGhpcy5jb25maWcuZGVidWcpIHtcbiAgICAgICAgICAgICAgICAgICAgZGVidWcgPSB0aGlzLmNvbmZpZy5kZWJ1ZztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBsZXQgcmVhZE9ubHkgPSB0aGlzLnJlYWRPbmx5O1xuICAgICAgICAgICAgICAgIGlmICghcmVhZE9ubHkgJiYgdGhpcy5yZWFkT25seSAhPT0gZmFsc2UpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVhZE9ubHkgPSB0aGlzLmNvbmZpZy5yZWFkT25seSAhPT0gdW5kZWZpbmVkID8gdGhpcy5jb25maWcucmVhZE9ubHkgOiBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBsZXQgc2Nyb2xsaW5nQ29udGFpbmVyID0gdGhpcy5zY3JvbGxpbmdDb250YWluZXI7XG4gICAgICAgICAgICAgICAgaWYgKCFzY3JvbGxpbmdDb250YWluZXIgJiYgdGhpcy5zY3JvbGxpbmdDb250YWluZXIgIT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgc2Nyb2xsaW5nQ29udGFpbmVyID1cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY29uZmlnLnNjcm9sbGluZ0NvbnRhaW5lciA9PT0gbnVsbCB8fCB0aGlzLmNvbmZpZy5zY3JvbGxpbmdDb250YWluZXIgPyB0aGlzLmNvbmZpZy5zY3JvbGxpbmdDb250YWluZXIgOiBudWxsO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxldCBmb3JtYXRzID0gdGhpcy5mb3JtYXRzO1xuICAgICAgICAgICAgICAgIGlmICghZm9ybWF0cyAmJiBmb3JtYXRzID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9ybWF0cyA9IHRoaXMuY29uZmlnLmZvcm1hdHMgfHwgdGhpcy5jb25maWcuZm9ybWF0cyA9PT0gbnVsbCA/IHRoaXMuY29uZmlnLmZvcm1hdHMgOiB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFF1aWxsLmZvcm1hdHMgPSB7IC4uLlF1aWxsLmZvcm1hdHMsIFt0aGlzLmlkXTogZm9ybWF0cyB9O1xuXG4gICAgICAgICAgICAgICAgaWYgKGZvcm1hdHMgJiYgZm9ybWF0cy5pbmRleE9mKCd0YWJsZScpICE9PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICBtb2R1bGVzID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgLi4ubW9kdWxlcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICdiZXR0ZXItdGFibGUnOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHRoaXMucXVpbGxFZGl0b3IgPSBuZXcgUXVpbGwodGhpcy5lZGl0b3JFbGVtLCB7XG4gICAgICAgICAgICAgICAgICAgIGJvdW5kcyxcbiAgICAgICAgICAgICAgICAgICAgZGVidWcsXG4gICAgICAgICAgICAgICAgICAgIGZvcm1hdHMsXG4gICAgICAgICAgICAgICAgICAgIG1vZHVsZXMsXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyLFxuICAgICAgICAgICAgICAgICAgICByZWFkT25seSxcbiAgICAgICAgICAgICAgICAgICAgc2Nyb2xsaW5nQ29udGFpbmVyLFxuICAgICAgICAgICAgICAgICAgICBzdHJpY3Q6IHRoaXMuc3RyaWN0LFxuICAgICAgICAgICAgICAgICAgICB0aGVtZTogdGhpcy50aGVtZSB8fCAodGhpcy5jb25maWcudGhlbWUgPyB0aGlzLmNvbmZpZy50aGVtZSA6ICdzbm93JyksXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgdGhpcy5xdWlsbEVkaXRvci5jb250YWluZXIuZmlyc3RDaGlsZC5pZCA9IHRoaXMuaWQ7XG5cbiAgICAgICAgICAgICAgICBpZiAodGhpcy5jb250ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGZvcm1hdCA9IGdldEZvcm1hdCh0aGlzLmZvcm1hdCwgdGhpcy5jb25maWcuZm9ybWF0KTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGZvcm1hdCA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucXVpbGxFZGl0b3Iuc2V0Q29udGVudHModGhpcy5jb250ZW50LCAnc2lsZW50Jyk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoZm9ybWF0ID09PSAndGV4dCcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucXVpbGxFZGl0b3Iuc2V0VGV4dCh0aGlzLmNvbnRlbnQsICdzaWxlbnQnKTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChmb3JtYXQgPT09ICdqc29uJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnF1aWxsRWRpdG9yLnNldENvbnRlbnRzKEpTT04ucGFyc2UodGhpcy5jb250ZW50KSwgJ3NpbGVudCcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucXVpbGxFZGl0b3Iuc2V0VGV4dCh0aGlzLmNvbnRlbnQsICdzaWxlbnQnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLnNhbml0aXplKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb250ZW50ID0gdGhpcy5kb21TYW5pdGl6ZXIuc2FuaXRpemUoU2VjdXJpdHlDb250ZXh0LkhUTUwsIHRoaXMuY29udGVudCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjb250ZW50cyA9IHRoaXMucXVpbGxFZGl0b3IuY2xpcGJvYXJkLmNvbnZlcnQodGhpcy5jb250ZW50KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucXVpbGxFZGl0b3Iuc2V0Q29udGVudHMoY29udGVudHMsICdzaWxlbnQnKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucXVpbGxFZGl0b3IuaGlzdG9yeS5jbGVhcigpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIGluaXRpYWxpemUgZGlzYWJsZWQgc3RhdHVzIGJhc2VkIG9uIHRoaXMuZGlzYWJsZWQgYXMgZGVmYXVsdCB2YWx1ZVxuICAgICAgICAgICAgICAgIHRoaXMuc2V0RGlzYWJsZWRTdGF0ZSgpO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5vbkVkaXRvckNyZWF0ZWQuZW1pdCh0aGlzLnF1aWxsRWRpdG9yKTtcblxuICAgICAgICAgICAgICAgIC8vIG1hcmsgbW9kZWwgYXMgdG91Y2hlZCBpZiBlZGl0b3IgbG9zdCBmb2N1c1xuICAgICAgICAgICAgICAgIHRoaXMucXVpbGxFZGl0b3Iub24oJ3NlbGVjdGlvbi1jaGFuZ2UnLCB0aGlzLnNlbGVjdGlvbkNoYW5nZUhhbmRsZXIpO1xuXG4gICAgICAgICAgICAgICAgLy8gdXBkYXRlIG1vZGVsIGlmIHRleHQgY2hhbmdlc1xuICAgICAgICAgICAgICAgIHRoaXMucXVpbGxFZGl0b3Iub24oJ3RleHQtY2hhbmdlJywgdGhpcy50ZXh0Q2hhbmdlSGFuZGxlcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHNlbGVjdGlvbkNoYW5nZUhhbmRsZXIgPSAocmFuZ2U6IFJhbmdlIHwgbnVsbCwgb2xkUmFuZ2U6IFJhbmdlIHwgbnVsbCwgc291cmNlOiBzdHJpbmcpOiB2b2lkID0+IHtcbiAgICAgICAgdGhpcy56b25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICBpZiAocmFuZ2UgPT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uQmx1ci5lbWl0KHtcbiAgICAgICAgICAgICAgICAgICAgZWRpdG9yOiB0aGlzLnF1aWxsRWRpdG9yLFxuICAgICAgICAgICAgICAgICAgICBzb3VyY2UsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKG9sZFJhbmdlID09PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5vbkZvY3VzLmVtaXQoe1xuICAgICAgICAgICAgICAgICAgICBlZGl0b3I6IHRoaXMucXVpbGxFZGl0b3IsXG4gICAgICAgICAgICAgICAgICAgIHNvdXJjZSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5vblNlbGVjdGlvbkNoYW5nZWQuZW1pdCh7XG4gICAgICAgICAgICAgICAgZWRpdG9yOiB0aGlzLnF1aWxsRWRpdG9yLFxuICAgICAgICAgICAgICAgIG9sZFJhbmdlLFxuICAgICAgICAgICAgICAgIHJhbmdlLFxuICAgICAgICAgICAgICAgIHNvdXJjZSxcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBpZiAoIXJhbmdlICYmIHRoaXMub25Nb2RlbFRvdWNoZWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uTW9kZWxUb3VjaGVkKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH07XG5cbiAgICB0ZXh0Q2hhbmdlSGFuZGxlciA9IChkZWx0YTogYW55LCBvbGREZWx0YTogYW55LCBzb3VyY2U6IHN0cmluZyk6IHZvaWQgPT4ge1xuICAgICAgICAvLyBvbmx5IGVtaXQgY2hhbmdlcyBlbWl0dGVkIGJ5IHVzZXIgaW50ZXJhY3Rpb25zXG5cbiAgICAgICAgY29uc3QgdGV4dCA9IHRoaXMucXVpbGxFZGl0b3IuZ2V0VGV4dCgpO1xuICAgICAgICBjb25zdCBjb250ZW50ID0gdGhpcy5xdWlsbEVkaXRvci5nZXRDb250ZW50cygpO1xuXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbm9uLW51bGwtYXNzZXJ0aW9uXG4gICAgICAgIGxldCBodG1sOiBzdHJpbmcgfCBudWxsID0gdGhpcy5lZGl0b3JFbGVtIS5xdWVyeVNlbGVjdG9yKCcucWwtZWRpdG9yJykhLmlubmVySFRNTDtcbiAgICAgICAgaWYgKGh0bWwgPT09ICc8cD48YnI+PC9wPicgfHwgaHRtbCA9PT0gJzxkaXY+PGJyPjxkaXY+Jykge1xuICAgICAgICAgICAgaHRtbCA9IG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHRyYWNrQ2hhbmdlcyA9IHRoaXMudHJhY2tDaGFuZ2VzIHx8IHRoaXMuY29uZmlnLnRyYWNrQ2hhbmdlcztcbiAgICAgICAgICAgIGlmICgoc291cmNlID09PSBRdWlsbC5zb3VyY2VzLlVTRVIgfHwgKHRyYWNrQ2hhbmdlcyAmJiB0cmFja0NoYW5nZXMgPT09ICdhbGwnKSkgJiYgdGhpcy5vbk1vZGVsQ2hhbmdlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5vbk1vZGVsQ2hhbmdlKFxuICAgICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGlvblxuICAgICAgICAgICAgICAgICAgICB0aGlzLnZhbHVlR2V0dGVyKHRoaXMucXVpbGxFZGl0b3IsIHRoaXMuZWRpdG9yRWxlbSEpXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5vbkNvbnRlbnRDaGFuZ2VkLmVtaXQoe1xuICAgICAgICAgICAgICAgIGNvbnRlbnQsXG4gICAgICAgICAgICAgICAgZGVsdGEsXG4gICAgICAgICAgICAgICAgZWRpdG9yOiB0aGlzLnF1aWxsRWRpdG9yLFxuICAgICAgICAgICAgICAgIGh0bWwsXG4gICAgICAgICAgICAgICAgb2xkRGVsdGEsXG4gICAgICAgICAgICAgICAgc291cmNlLFxuICAgICAgICAgICAgICAgIHRleHQsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfTtcblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5xdWlsbEVkaXRvcikge1xuICAgICAgICAgICAgdGhpcy5xdWlsbEVkaXRvci5vZmYoJ3NlbGVjdGlvbi1jaGFuZ2UnLCB0aGlzLnNlbGVjdGlvbkNoYW5nZUhhbmRsZXIpO1xuICAgICAgICAgICAgdGhpcy5xdWlsbEVkaXRvci5vZmYoJ3RleHQtY2hhbmdlJywgdGhpcy50ZXh0Q2hhbmdlSGFuZGxlcik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5xdWlsbEVkaXRvcikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjaGFuZ2VzLmlkKSB7XG4gICAgICAgICAgICB0aGlzLnF1aWxsRWRpdG9yLmNvbnRhaW5lci5maXJzdENoaWxkLmlkID0gY2hhbmdlcy5pZC5jdXJyZW50VmFsdWU7XG4gICAgICAgICAgICBRdWlsbC5mb3JtYXRzID0geyAuLi5RdWlsbC5mb3JtYXRzLCBbdGhpcy5pZF06IHRoaXMuZm9ybWF0cyB9O1xuICAgICAgICB9XG4gICAgICAgIGlmIChjaGFuZ2VzWydyZWFkT25seSddKSB7XG4gICAgICAgICAgICB0aGlzLnF1aWxsRWRpdG9yLmVuYWJsZSghY2hhbmdlc1sncmVhZE9ubHknXS5jdXJyZW50VmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjaGFuZ2VzWydwbGFjZWhvbGRlciddKSB7XG4gICAgICAgICAgICB0aGlzLnF1aWxsRWRpdG9yLnJvb3QuZGF0YXNldC5wbGFjZWhvbGRlciA9IGNoYW5nZXNbJ3BsYWNlaG9sZGVyJ10uY3VycmVudFZhbHVlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjaGFuZ2VzWydzdHlsZXMnXSkge1xuICAgICAgICAgICAgY29uc3QgY3VycmVudFN0eWxpbmcgPSBjaGFuZ2VzWydzdHlsZXMnXS5jdXJyZW50VmFsdWU7XG4gICAgICAgICAgICBjb25zdCBwcmV2aW91c1N0eWxpbmcgPSBjaGFuZ2VzWydzdHlsZXMnXS5wcmV2aW91c1ZhbHVlO1xuXG4gICAgICAgICAgICBpZiAocHJldmlvdXNTdHlsaW5nKSB7XG4gICAgICAgICAgICAgICAgT2JqZWN0LmtleXMocHJldmlvdXNTdHlsaW5nKS5mb3JFYWNoKChrZXk6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZVN0eWxlKHRoaXMuZWRpdG9yRWxlbSwga2V5KTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChjdXJyZW50U3R5bGluZykge1xuICAgICAgICAgICAgICAgIE9iamVjdC5rZXlzKGN1cnJlbnRTdHlsaW5nKS5mb3JFYWNoKChrZXk6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZWRpdG9yRWxlbSwga2V5LCB0aGlzLnN0eWxlc1trZXldKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoY2hhbmdlc1snZm9ybWF0cyddKSB7XG4gICAgICAgICAgICBjb25zdCBjdXJyZW50Rm9ybWF0cyA9IGNoYW5nZXNbJ2Zvcm1hdHMnXS5jdXJyZW50VmFsdWU7XG4gICAgICAgICAgICBRdWlsbC5mb3JtYXRzID0geyAuLi5RdWlsbC5mb3JtYXRzLCBbdGhpcy5pZF06IGN1cnJlbnRGb3JtYXRzIH07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB3cml0ZVZhbHVlKGN1cnJlbnRWYWx1ZTogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMuY29udGVudCA9IGN1cnJlbnRWYWx1ZTtcbiAgICAgICAgY29uc3QgZm9ybWF0ID0gZ2V0Rm9ybWF0KHRoaXMuZm9ybWF0LCB0aGlzLmNvbmZpZy5mb3JtYXQpO1xuXG4gICAgICAgIGlmICh0aGlzLnF1aWxsRWRpdG9yKSB7XG4gICAgICAgICAgICBpZiAoY3VycmVudFZhbHVlKSB7XG4gICAgICAgICAgICAgICAgaWYgKGZvcm1hdCA9PT0gJ3RleHQnKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucXVpbGxFZGl0b3Iuc2V0VGV4dChjdXJyZW50VmFsdWUpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucXVpbGxFZGl0b3Iuc2V0Q29udGVudHModGhpcy52YWx1ZVNldHRlcih0aGlzLnF1aWxsRWRpdG9yLCB0aGlzLmNvbnRlbnQpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5xdWlsbEVkaXRvci5zZXRUZXh0KCcnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbiA9IHRoaXMuZGlzYWJsZWQpOiB2b2lkIHtcbiAgICAgICAgLy8gc3RvcmUgaW5pdGlhbCB2YWx1ZSB0byBzZXQgYXBwcm9wcmlhdGUgZGlzYWJsZWQgc3RhdHVzIGFmdGVyIFZpZXdJbml0XG4gICAgICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICAgICAgICBpZiAodGhpcy5xdWlsbEVkaXRvcikge1xuICAgICAgICAgICAgaWYgKGlzRGlzYWJsZWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnF1aWxsRWRpdG9yLmRpc2FibGUoKTtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2Rpc2FibGVkJywgJ2Rpc2FibGVkJyk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmICghdGhpcy5yZWFkT25seSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnF1aWxsRWRpdG9yLmVuYWJsZSgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUF0dHJpYnV0ZSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2Rpc2FibGVkJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAobW9kZWxWYWx1ZTogYW55KSA9PiB2b2lkKTogdm9pZCB7XG4gICAgICAgIHRoaXMub25Nb2RlbENoYW5nZSA9IGZuO1xuICAgIH1cblxuICAgIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgICAgIHRoaXMub25Nb2RlbFRvdWNoZWQgPSBmbjtcbiAgICB9XG5cbiAgICB2YWxpZGF0ZSgpOiBhbnkge1xuICAgICAgICBpZiAoIXRoaXMucXVpbGxFZGl0b3IpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZXJyOiB7XG4gICAgICAgICAgICBtaW5MZW5ndGhFcnJvcj86IHtcbiAgICAgICAgICAgICAgICBnaXZlbjogbnVtYmVyO1xuICAgICAgICAgICAgICAgIG1pbkxlbmd0aDogbnVtYmVyO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIG1heExlbmd0aEVycm9yPzoge1xuICAgICAgICAgICAgICAgIGdpdmVuOiBudW1iZXI7XG4gICAgICAgICAgICAgICAgbWF4TGVuZ3RoOiBudW1iZXI7XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgcmVxdWlyZWRFcnJvcj86IHsgZW1wdHk6IGJvb2xlYW4gfTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBsZXQgdmFsaWQgPSB0cnVlO1xuXG4gICAgICAgIGNvbnN0IHRleHRMZW5ndGggPSB0aGlzLnF1aWxsRWRpdG9yLmdldFRleHQoKS50cmltKCkubGVuZ3RoO1xuXG4gICAgICAgIGlmICh0aGlzLm1pbkxlbmd0aCAmJiB0ZXh0TGVuZ3RoICYmIHRleHRMZW5ndGggPCB0aGlzLm1pbkxlbmd0aCkge1xuICAgICAgICAgICAgZXJyLm1pbkxlbmd0aEVycm9yID0ge1xuICAgICAgICAgICAgICAgIGdpdmVuOiB0ZXh0TGVuZ3RoLFxuICAgICAgICAgICAgICAgIG1pbkxlbmd0aDogdGhpcy5taW5MZW5ndGgsXG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICB2YWxpZCA9IGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMubWF4TGVuZ3RoICYmIHRleHRMZW5ndGggPiB0aGlzLm1heExlbmd0aCkge1xuICAgICAgICAgICAgZXJyLm1heExlbmd0aEVycm9yID0ge1xuICAgICAgICAgICAgICAgIGdpdmVuOiB0ZXh0TGVuZ3RoLFxuICAgICAgICAgICAgICAgIG1heExlbmd0aDogdGhpcy5tYXhMZW5ndGgsXG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICB2YWxpZCA9IGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMucmVxdWlyZWQgJiYgIXRleHRMZW5ndGgpIHtcbiAgICAgICAgICAgIGVyci5yZXF1aXJlZEVycm9yID0ge1xuICAgICAgICAgICAgICAgIGVtcHR5OiB0cnVlLFxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgdmFsaWQgPSBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB2YWxpZCA/IG51bGwgOiBlcnI7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogT3ZlcnJpZGUgdGhlIGRlZmF1bHQgUXVpbGwgc2Nyb2xsIGJlaGF2aW9yIHRvIHRha2UgaW50byBhY2NvdW50IHRoZSBmb3JtYXRzIGFycmF5IGFuZCBza2lwIG5vbi1mb3VuZCBvbmVzLiBUaGVuXG4gICAgICogcmVnaXN0ZXJzIHRoZSBwbHVnaW4gdG8gdGhlIFF1aWxsIGVkaXRvci5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBRdWlsbEluc3RhbmNlIFRoZSBRdWlsbCBjbGFzcyAobm90IHRoZSBpbnN0YW5jZSlcbiAgICAgKiBAcHJpdmF0ZVxuICAgICAqL1xuICAgIHByaXZhdGUgb3ZlcnJpZGVTY3JvbGxCZWhhdmlvcihRdWlsbEluc3RhbmNlOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgLy8gdGhlIEJ1aWx0LWluIFNjcm9sbCBDbGFzcyBpcyBub3QgZXhwb3J0ZWQsIHNvIHdlIG5lZWQgdG8gaW1wb3J0IGl0XG4gICAgICAgIGNvbnN0IEJ1aWx0aW5TY3JvbGwgPSBRdWlsbEluc3RhbmNlLmltcG9ydCgnYmxvdHMvc2Nyb2xsJyk7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBPdmVycmlkZSB0aGUgZGVmYXVsdCBRdWlsbCBzY3JvbGwgYmVoYXZpb3IgdG8gdGFrZSBpbnRvIGFjY291bnQgdGhlIGZvcm1hdHMgYXJyYXkgYW5kIHNraXAgbm9uLWZvdW5kIG9uZXMuXG4gICAgICAgICAqL1xuICAgICAgICBjbGFzcyBTY3JvbGwgZXh0ZW5kcyBCdWlsdGluU2Nyb2xsIHtcbiAgICAgICAgICAgIGZvcm1hdEF0KGluZGV4OiBudW1iZXIsIGxlbmd0aDogbnVtYmVyLCBmb3JtYXQ6IHN0cmluZywgdmFsdWU6IGFueSk6IHZvaWQge1xuICAgICAgICAgICAgICAgIGNvbnN0IGVsZW1lbnRJZCA9IHRoaXMuZG9tTm9kZS5pZDtcbiAgICAgICAgICAgICAgICBjb25zdCBpbnN0YW5jZUZvcm1hdHMgPSBRdWlsbEluc3RhbmNlLmZvcm1hdHNbZWxlbWVudElkXTtcbiAgICAgICAgICAgICAgICAvLyBjaGVja3MgdGhlIGZvcm1hdHMgYXJyYXkgdG8gc2VlIGlmIHRoZSBmb3JtYXQgaXMgYmxhY2tsaXN0ZWRcbiAgICAgICAgICAgICAgICBpZiAoaW5zdGFuY2VGb3JtYXRzICYmIGluc3RhbmNlRm9ybWF0cy5maW5kKChmKSA9PiBmID09PSBmb3JtYXQpKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gY29udGludWUgd2l0aCBkZWZhdWx0IGJlaGF2aW9yXG4gICAgICAgICAgICAgICAgc3VwZXIuZm9ybWF0QXQoaW5kZXgsIGxlbmd0aCwgZm9ybWF0LCB2YWx1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLyoqIHJlZ2lzdGVyIHRoZSBTY3JvbGwgb3ZlcnJpZGUgKi9cbiAgICAgICAgUXVpbGxJbnN0YW5jZS5yZWdpc3RlcignYmxvdHMvc2Nyb2xsJywgU2Nyb2xsLCB0cnVlKTtcbiAgICB9XG59XG4iXX0=
|
540
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVpbGwtZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2V4dGVybmFscy9xdWlsbC9xdWlsbC1lZGl0b3IuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBR25ELE9BQU8sRUFDSCxrQkFBa0IsR0FJckIsTUFBTSwyQkFBMkIsQ0FBQztBQUVuQyxPQUFPLEVBRUgsU0FBUyxFQUVULFlBQVksRUFDWixVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFJTCxNQUFNLEVBQ04sV0FBVyxFQUVYLGVBQWUsRUFFZixpQkFBaUIsR0FDcEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUF3QixhQUFhLEVBQUUsaUJBQWlCLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuRyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRWxELE9BQU8sRUFBRSxxQkFBcUIsRUFBZ0IsTUFBTSx1QkFBdUIsQ0FBQzs7OztBQWdCNUUsTUFBTSxTQUFTLEdBQUcsQ0FBQyxNQUFvQixFQUFFLFlBQTBCLEVBQWUsRUFBRTtJQUNoRixNQUFNLFlBQVksR0FBRyxNQUFNLElBQUksWUFBWSxDQUFDO0lBQzVDLE9BQU8sWUFBWSxJQUFJLE1BQU0sQ0FBQztBQUNsQyxDQUFDLENBQUM7QUFvQkYsTUFBTSxPQUFPLG9CQUFvQjtJQXdDN0IsSUFDSSxRQUFRO1FBQ1IsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQzFCLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxLQUFtQjtRQUM1QixJQUFJLENBQUMsU0FBUyxHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxJQUNJLFFBQVE7UUFDUixPQUFPLElB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RyxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBR0ksZUFBZTtzQkFBeEIsTUFBTTtnQkFFRyxnQkFBZ0I7c0JBQXpCLE1BQU07Z0JBRUcsa0JBQWtCO3NCQUEzQixNQUFNO2dCQUVHLE9BQU87c0JBQWhCLE1BQU07Z0JBS0csTUFBTTtzQkFBZixNQUFNO2dCQU1ILFFBQVE7c0JBRFgsS0FBSztnQkFTRixRQUFRO3NCQURYLEtBQUs7Z0JBU0YsUUFBUTtzQkFEWCxLQUFLO2dCQVNGLE1BQU07c0JBRFQsS0FBSztnQkFTRixrQkFBa0I7c0JBRHJCLEtBQUs7Z0JBNkJOLFdBQVc7c0JBRFYsS0FBSztnQkF5Qk4sV0FBVztzQkFEVixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNQbGF0Zm9ybVNlcnZlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcblxuaW1wb3J0IHtcbiAgICBRVUlMTF9DT05GSUdfVE9LRU4sXG4gICAgUXVpbGxDb25maWcsXG4gICAgUXVpbGxGb3JtYXQsXG4gICAgUXVpbGxNb2R1bGVzLFxufSBmcm9tICcuL3F1aWxsLWVkaXRvci5pbnRlcmZhY2VzJztcblxuaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBmb3J3YXJkUmVmLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBOZ1pvbmUsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uRGVzdHJveSxcbiAgICBPdXRwdXQsXG4gICAgUExBVEZPUk1fSUQsXG4gICAgUmVuZGVyZXIyLFxuICAgIFNlY3VyaXR5Q29udGV4dCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTElEQVRPUlMsIE5HX1ZBTFVFX0FDQ0VTU09SLCBWYWxpZGF0b3IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IGRlZmF1bHRNb2R1bGVzIH0gZnJvbSAnLi9xdWlsbC1kZWZhdWx0cyc7XG5pbXBvcnQgeyBDb250ZW50Q2hhbmdlLCBFZGl0b3JDaGFuZ2VDb250ZW50LCBTZWxlY3Rpb25DaGFuZ2UsIFJhbmdlIH0gZnJvbSAnLi9tb2RlbHMvZWRpdG9yLm1vZGVsJztcbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSwgQm9vbGVhbklucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IExvYWRlclNlcnZpY2UgfSBmcm9tICcuL2xvYWRlci5zZXJ2aWNlJztcblxuLy8gQmVjYXVzZSBxdWlsbCB1c2VzIGBkb2N1bWVudGAgZGlyZWN0bHksIHdlIGNhbm5vdCBgaW1wb3J0YCBkdXJpbmcgU1NSXG4vLyBpbnN0ZWFkLCB3ZSBsb2FkIGR5bmFtaWNhbGx5IHZpYSBgcmVxdWlyZSgncXVpbGwnKWAgaW4gYG5nQWZ0ZXJWaWV3SW5pdCgpYFxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXZhclxuZGVjbGFyZSB2YXIgcmVxdWlyZTogYW55O1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXZhclxuZGVjbGFyZSB2YXIgUXVpbGw6IGFueTtcbi8vIGxldCBRdWlsbDogYW55ID0gd2luZG93WydRdWlsbCddO1xuXG5leHBvcnQgaW50ZXJmYWNlIEN1c3RvbU9wdGlvbiB7XG4gICAgaW1wb3J0OiBzdHJpbmc7XG4gICAgd2hpdGVsaXN0OiBhbnlbXTtcbn1cblxuY29uc3QgZ2V0Rm9ybWF0ID0gKGZvcm1hdD86IFF1aWxsRm9ybWF0LCBjb25maWdGb3JtYXQ/OiBRdWlsbEZvcm1hdCk6IFF1aWxsRm9ybWF0ID0+IHtcbiAgICBjb25zdCBwYXNzZWRGb3JtYXQgPSBmb3JtYXQgfHwgY29uZmlnRm9ybWF0O1xuICAgIHJldHVybiBwYXNzZWRGb3JtYXQgfHwgJ2h0bWwnO1xufTtcblxuQENvbXBvbmVudCh7XG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFF1aWxsRWRpdG9yQ29tcG9uZW50KSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUXVpbGxFZGl0b3JDb21wb25lbnQpLFxuICAgICAgICB9LFxuICAgIF0sXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ3F1aWxsLWVkaXRvcicsXG4gICAgdGVtcGxhdGU6IGAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3F1aWxsLWVkaXRvci10b29sYmFyXVwiPjwvbmctY29udGVudD4gYCxcbn0pXG5leHBvcnQgY2xhc3MgUXVpbGxFZGl0b3JDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIFZhbGlkYXRvciB7XG4gICAgcXVpbGxFZGl0b3I6IGFueTtcbiAgICBlZGl0b3JFbGVtOiBIVE1MRWxlbWVudCB8IHVuZGVmaW5lZDtcbiAgICBjb250ZW50OiBhbnk7XG4gICAgcHJvdGVjdGVkIGxvYWRlZCA9IGZhbHNlO1xuXG4gICAgQElucHV0KCkgaWQ6IHN0cmluZztcbiAgICBASW5wdXQoKSBmb3JtYXQ/OiAnb2JqZWN0JyB8ICdodG1sJyB8ICd0ZXh0JyB8ICdqc29uJztcbiAgICBASW5wdXQoKSB0aGVtZT86IHN0cmluZztcbiAgICBASW5wdXQoKSBtb2R1bGVzPzogUXVpbGxNb2R1bGVzO1xuICAgIEBJbnB1dCgpIGRlYnVnPzogJ3dhcm4nIHwgJ2xvZycgfCAnZXJyb3InIHwgZmFsc2U7XG4gICAgQElucHV0KCkgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgbWF4TGVuZ3RoPzogbnVtYmVyO1xuICAgIEBJbnB1dCgpIG1pbkxlbmd0aD86IG51bWJlcjtcbiAgICBASW5wdXQoKSBmb3JtYXRzPzogc3RyaW5nW10gfCBudWxsO1xuICAgIEBJbnB1dCgpIGN1c3RvbVRvb2xiYXJQb3NpdGlvbjogJ3RvcCcgfCAnYm90dG9tJyA9ICd0b3AnO1xuICAgIEBJbnB1dCgpIHN0eWxlczogYW55ID0gbnVsbDtcbiAgICBASW5wdXQoKSBzY3JvbGxpbmdDb250YWluZXI/OiBIVE1MRWxlbWVudCB8IHN0cmluZyB8IG51bGw7XG4gICAgQElucHV0KCkgYm91bmRzPzogSFRNTEVsZW1lbnQgfCBzdHJpbmc7XG4gICAgQElucHV0KCkgY3VzdG9tT3B0aW9uczogQ3VzdG9tT3B0aW9uW10gPSBbXTtcbiAgICBASW5wdXQoKSB0cmFja0NoYW5nZXM/OiAndXNlcicgfCAnYWxsJztcbiAgICBASW5wdXQoKSBoYXNJbWFnZUZlYXR1cmU6IGJvb2xlYW47XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1vbi1wcmVmaXhcbiAgICBAT3V0cHV0KCkgb25FZGl0b3JDcmVhdGVkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1vbi1wcmVmaXhcbiAgICBAT3V0cHV0KCkgb25Db250ZW50Q2hhbmdlZDogRXZlbnRFbWl0dGVyPENvbnRlbnRDaGFuZ2U+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW9uLXByZWZpeFxuICAgIEBPdXRwdXQoKSBvblNlbGVjdGlvbkNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxTZWxlY3Rpb25DaGFuZ2U+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW9uLXByZWZpeFxuICAgIEBPdXRwdXQoKSBvbkZvY3VzOiBFdmVudEVtaXR0ZXI8e1xuICAgICAgICBlZGl0b3I6IGFueTtcbiAgICAgICAgc291cmNlOiBzdHJpbmc7XG4gICAgfT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1vdXRwdXQtb24tcHJlZml4XG4gICAgQE91dHB1dCgpIG9uQmx1cjogRXZlbnRFbWl0dGVyPHtcbiAgICAgICAgZWRpdG9yOiBhbnk7XG4gICAgICAgIHNvdXJjZTogc3RyaW5nO1xuICAgIH0+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgQElucHV0KClcbiAgICBnZXQgcmVhZE9ubHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZWFkT25seTtcbiAgICB9XG4gICAgc2V0IHJlYWRPbmx5KHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5fcmVhZE9ubHkgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9yZWFkT25seT86IGJvb2xlYW47XG4gICAgQElucHV0KClcbiAgICBnZXQgcmVxdWlyZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZXF1aXJlZDtcbiAgICB9XG4gICAgc2V0IHJlcXVpcmVkKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5fcmVxdWlyZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9yZXF1aXJlZCA9IGZhbHNlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IHNhbml0aXplKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fc2FuaXRpemU7XG4gICAgfVxuICAgIHNldCBzYW5pdGl6ZSh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX3Nhbml0aXplID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfc2FuaXRpemUgPSBmYWxzZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBzdHJpY3QoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zdHJpY3Q7XG4gICAgfVxuICAgIHNldCBzdHJpY3QodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9zdHJpY3QgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9zdHJpY3QgPSB0cnVlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IHByZXNlcnZlV2hpdGVzcGFjZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3ByZXNlcnZlV2hpdGVzcGFjZTtcbiAgICB9XG4gICAgc2V0IHByZXNlcnZlV2hpdGVzcGFjZSh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX3ByZXNlcnZlV2hpdGVzcGFjZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX3ByZXNlcnZlV2hpdGVzcGFjZSA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSBkaXNhYmxlZCA9IGZhbHNlOyAvLyB1c2VkIHRvIHN0b3JlIGluaXRpYWwgdmFsdWUgYmVmb3JlIFZpZXdJbml0XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgICAgICBwcml2YXRlIGRvbVNhbml0aXplcjogRG9tU2FuaXRpemVyLFxuICAgICAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvYzogYW55LFxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2Jhbi10eXBlc1xuICAgICAgICBASW5qZWN0KFBMQVRGT1JNX0lEKSBwcml2YXRlIHBsYXRmb3JtSWQ6IE9iamVjdCxcbiAgICAgICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgICAgICBwcml2YXRlIHpvbmU6IE5nWm9uZSxcbiAgICAgICAgQEluamVjdChRVUlMTF9DT05GSUdfVE9LRU4pIHByaXZhdGUgY29uZmlnOiBRdWlsbENvbmZpZyxcbiAgICAgICAgcHJpdmF0ZSBsb2FkZXI6IExvYWRlclNlcnZpY2UsXG4gICAgKSB7fVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWVtcHR5LG5vLWVtcHR5LWZ1bmN0aW9uLEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvbiwgQHR5cGVzY3JpcHQtZXNsaW50L2V4cGxpY2l0LWZ1bmN0aW9uLXJldHVybi10eXBlXG4gICAgb25Nb2RlbENoYW5nZShfbW9kZWxWYWx1ZT86IGFueSkge31cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZW1wdHksIG5vLWVtcHR5LWZ1bmN0aW9uLCBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb24sIEB0eXBlc2NyaXB0LWVzbGludC9leHBsaWNpdC1mdW5jdGlvbi1yZXR1cm4tdHlwZVxuICAgIG9uTW9kZWxUb3VjaGVkKCkge31cblxuICAgIEBJbnB1dCgpXG4gICAgdmFsdWVHZXR0ZXIgPSAocXVpbGxFZGl0b3I6IGFueSwgZWRpdG9yRWxlbWVudDogSFRNTEVsZW1lbnQpOiBzdHJpbmcgfCBhbnkgPT4ge1xuICAgICAgICBsZXQgaHRtbDogc3RyaW5nIHwgbnVsbCA9IGVkaXRvckVsZW1lbnQucXVlcnlTZWxlY3RvcignLnFsLWVkaXRvcicpPy5pbm5lckhUTUw7XG4gICAgICAgIGlmIChodG1sID09PSAnPHA+PGJyPjwvcD4nIHx8IGh0bWwgPT09ICc8ZGl2Pjxicj48ZGl2PicpIHtcbiAgICAgICAgICAgIGh0bWwgPSBudWxsO1xuICAgICAgICB9XG4gICAgICAgIGxldCBtb2RlbFZhbHVlID0gaHRtbDtcbiAgICAgICAgY29uc3QgZm9ybWF0ID0gZ2V0Rm9ybWF0KHRoaXMuZm9ybWF0LCB0aGlzLmNvbmZpZy5mb3JtYXQpO1xuXG4gICAgICAgIGlmIChmb3JtYXQgPT09ICd0ZXh0Jykge1xuICAgICAgICAgICAgbW9kZWxWYWx1ZSA9IHF1aWxsRWRpdG9yLmdldFRleHQoKTtcbiAgICAgICAgfSBlbHNlIGlmIChmb3JtYXQgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICBtb2RlbFZhbHVlID0gcXVpbGxFZGl0b3IuZ2V0Q29udGVudHMoKTtcbiAgICAgICAgfSBlbHNlIGlmIChmb3JtYXQgPT09ICdqc29uJykge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBtb2RlbFZhbHVlID0gSlNPTi5zdHJpbmdpZnkocXVpbGxFZGl0b3IuZ2V0Q29udGVudHMoKSk7XG4gICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgbW9kZWxWYWx1ZSA9IHF1aWxsRWRpdG9yLmdldFRleHQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBtb2RlbFZhbHVlO1xuICAgIH07XG5cbiAgICBASW5wdXQoKVxuICAgIHZhbHVlU2V0dGVyID0gKHF1aWxsRWRpdG9yOiBhbnksIHZhbHVlOiBhbnkpOiBhbnkgPT4ge1xuICAgICAgICBjb25zdCBmb3JtYXQgPSBnZXRGb3JtYXQodGhpcy5mb3JtYXQsIHRoaXMuY29uZmlnLmZvcm1hdCk7XG4gICAgICAgIGlmIChmb3JtYXQgPT09ICdodG1sJykge1xuICAgICAgICAgICAgaWYgKHRoaXMuc2FuaXRpemUpIHtcbiAgICAgICAgICAgICAgICB2YWx1ZSA9IHRoaXMuZG9tU2FuaXRpemVyLnNhbml0aXplKFNlY3VyaXR5Q29udGV4dC5IVE1MLCB2YWx1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gcXVpbGxFZGl0b3IuY2xpcGJvYXJkLmNvbnZlcnQoeyBodG1sOiB2YWx1ZSB9KTtcbiAgICAgICAgfSBlbHNlIGlmIChmb3JtYXQgPT09ICdqc29uJykge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gSlNPTi5wYXJzZSh2YWx1ZSk7XG4gICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIFt7IGluc2VydDogdmFsdWUgfV07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgfTtcblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgLy8gY29uc3QgbG9hZGVyID0gbmV3IExvYWRlclNlcnZpY2UoKTtcbiAgICAgICAgdGhpcy5sb2FkZXIubG9hZCgpLnN1YnNjcmliZSh7XG4gICAgICAgICAgICBjb21wbGV0ZTogKCkgPT4ge1xuICAgICAgICAgICAgICAgIC8vIHNldHVwIGtleWJvYXJkIGJpbmRpbmdzIGZyb20gQmV0dGVyVGFibGUgaWYgcHJlc2VudFxuICAgICAgICAgICAgICAgIGNvbnN0IFF1aWxsQmV0dGVyVGFibGUgPSB3aW5kb3dbJ3F1aWxsQmV0dGVyVGFibGUnXTtcbiAgICAgICAgICAgICAgICBpZihRdWlsbEJldHRlclRhYmxlKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGNoZWNrIGlmIGFscmVhZHkgcmVnaXN0ZXJlZFxuICAgICAgICAgICAgICAgICAgICBpZighd2luZG93WydRdWlsbCddLmltcG9ydHMuaGFzT3duUHJvcGVydHkoJ21vZHVsZXMvYmV0dGVyLXRhYmxlJykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvd1snUXVpbGwnXS5yZWdpc3Rlcih7ICdtb2R1bGVzL2JldHRlci10YWJsZSc6IFF1aWxsQmV0dGVyVGFibGUgfSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYoIXRoaXMuY29uZmlnLm1vZHVsZXMua2V5Ym9hcmQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY29uZmlnLm1vZHVsZXMua2V5Ym9hcmQgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmluZGluZ3M6IFF1aWxsQmV0dGVyVGFibGU/LmtleWJvYXJkQmluZGluZ3MsXG4gICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaWYgKGlzUGxhdGZvcm1TZXJ2ZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICghUXVpbGwpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gUXVpbGwgPSByZXF1aXJlKCdxdWlsbCcpXG4gICAgICAgICAgICAgICAgICAgIFF1aWxsID0gd2luZG93WydRdWlsbCddO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLm92ZXJyaWRlU2Nyb2xsQmVoYXZpb3IoUXVpbGwpO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5sb2FkZWQgPSB0cnVlO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuaW5zZXJ0QWRqYWNlbnRIVE1MKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmN1c3RvbVRvb2xiYXJQb3NpdGlvbiA9PT0gJ3RvcCcgPyAnYmVmb3JlZW5kJyA6ICdhZnRlcmJlZ2luJyxcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wcmVzZXJ2ZVdoaXRlc3BhY2UgPyAnPHByZSBxdWlsbC1lZGl0b3ItZWxlbWVudD48L3ByZT4nIDogJzxkaXYgcXVpbGwtZWRpdG9yLWVsZW1lbnQ+PC9kaXY+J1xuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICB0aGlzLmVkaXRvckVsZW0gPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCdbcXVpbGwtZWRpdG9yLWVsZW1lbnRdJyk7XG5cbiAgICAgICAgICAgICAgICBjb25zdCB0b29sYmFyRWxlbSA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ1txdWlsbC1lZGl0b3ItdG9vbGJhcl0nKTtcbiAgICAgICAgICAgICAgICBsZXQgbW9kdWxlcyA9IHRoaXMubW9kdWxlcyB8fCB0aGlzLmNvbmZpZy5tb2R1bGVzIHx8IGRlZmF1bHRNb2R1bGVzO1xuICAgICAgICAgICAgICAgIGlmIChtb2R1bGVzLnRvb2xiYXIgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICBtb2R1bGVzLnRvb2xiYXIgPSBkZWZhdWx0TW9kdWxlcy50b29sYmFyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxldCBwbGFjZWhvbGRlciA9IHRoaXMucGxhY2Vob2xkZXIgIT09IHVuZGVmaW5lZCA/IHRoaXMucGxhY2Vob2xkZXIgOiB0aGlzLmNvbmZpZy5wbGFjZWhvbGRlcjtcbiAgICAgICAgICAgICAgICBpZiAocGxhY2Vob2xkZXIgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlciA9ICdJbnNlcnQgdGV4dCBoZXJlIC4uLic7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaWYgKHRvb2xiYXJFbGVtKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBkb3Qtbm90YXRpb24sQHR5cGVzY3JpcHQtZXNsaW50L2RvdC1ub3RhdGlvblxuICAgICAgICAgICAgICAgICAgICBtb2R1bGVzWyd0b29sYmFyJ10gPSB0b29sYmFyRWxlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuaGFzSW1hZ2VGZWF0dXJlKSB7XG4gICAgICAgICAgICAgICAgICAgIG1vZHVsZXNbJ3VwbG9hZGVyJ10gPSB7IGhhbmRsZXI6ICgpID0+IGZhbHNlIH07XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgbW9kdWxlc1sndXBsb2FkZXInXSA9IHsgbWltZXR5cGVzOiBbJ2ltYWdlL3BuZycsICdpbWFnZS9qcGVnJ10gfTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAodGhpcy5zdHlsZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmtleXModGhpcy5zdHlsZXMpLmZvckVhY2goKGtleTogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZWRpdG9yRWxlbSwga2V5LCB0aGlzLnN0eWxlc1trZXldKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdGhpcy5jdXN0b21PcHRpb25zLmZvckVhY2goKGN1c3RvbU9wdGlvbikgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXdDdXN0b21PcHRpb24gPSBRdWlsbC5pbXBvcnQoY3VzdG9tT3B0aW9uLmltcG9ydCk7XG4gICAgICAgICAgICAgICAgICAgIG5ld0N1c3RvbU9wdGlvbi53aGl0ZWxpc3QgPSBjdXN0b21PcHRpb24ud2hpdGVsaXN0O1xuICAgICAgICAgICAgICAgICAgICBRdWlsbC5yZWdpc3RlcihuZXdDdXN0b21PcHRpb24sIHRydWUpO1xuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgbGV0IGJvdW5kcyA9IHRoaXMuYm91bmRzICYmIHRoaXMuYm91bmRzID09PSAnc2VsZicgPyB0aGlzLmVkaXRvckVsZW0gOiB0aGlzLmJvdW5kcztcbiAgICAgICAgICAgICAgICBpZiAoIWJvdW5kcykge1xuICAgICAgICAgICAgICAgICAgICBib3VuZHMgPSB0aGlzLmNvbmZpZy5ib3VuZHMgPyB0aGlzLmNvbmZpZy5ib3VuZHMgOiB0aGlzLmRvYy5ib2R5O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxldCBkZWJ1ZyA9IHRoaXMuZGVidWc7XG4gICAgICAgICAgICAgICAgaWYgKCFkZWJ1ZyAmJiBkZWJ1ZyAhPT0gZmFsc2UgJiYgdGhpcy5jb25maWcuZGVidWcpIHtcbiAgICAgICAgICAgICAgICAgICAgZGVidWcgPSB0aGlzLmNvbmZpZy5kZWJ1ZztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBsZXQgcmVhZE9ubHkgPSB0aGlzLnJlYWRPbmx5O1xuICAgICAgICAgICAgICAgIGlmICghcmVhZE9ubHkgJiYgdGhpcy5yZWFkT25seSAhPT0gZmFsc2UpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVhZE9ubHkgPSB0aGlzLmNvbmZpZy5yZWFkT25seSAhPT0gdW5kZWZpbmVkID8gdGhpcy5jb25maWcucmVhZE9ubHkgOiBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBsZXQgc2Nyb2xsaW5nQ29udGFpbmVyID0gdGhpcy5zY3JvbGxpbmdDb250YWluZXI7XG4gICAgICAgICAgICAgICAgaWYgKCFzY3JvbGxpbmdDb250YWluZXIgJiYgdGhpcy5zY3JvbGxpbmdDb250YWluZXIgIT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgc2Nyb2xsaW5nQ29udGFpbmVyID1cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY29uZmlnLnNjcm9sbGluZ0NvbnRhaW5lciA9PT0gbnVsbCB8fCB0aGlzLmNvbmZpZy5zY3JvbGxpbmdDb250YWluZXIgPyB0aGlzLmNvbmZpZy5zY3JvbGxpbmdDb250YWluZXIgOiBudWxsO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxldCBmb3JtYXRzID0gdGhpcy5mb3JtYXRzO1xuICAgICAgICAgICAgICAgIGlmICghZm9ybWF0cyAmJiBmb3JtYXRzID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9ybWF0cyA9IHRoaXMuY29uZmlnLmZvcm1hdHMgfHwgdGhpcy5jb25maWcuZm9ybWF0cyA9PT0gbnVsbCA/IHRoaXMuY29uZmlnLmZvcm1hdHMgOiB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFF1aWxsLmZvcm1hdHMgPSB7IC4uLlF1aWxsLmZvcm1hdHMsIFt0aGlzLmlkXTogZm9ybWF0cyB9O1xuXG4gICAgICAgICAgICAgICAgaWYgKGZvcm1hdHMgJiYgZm9ybWF0cy5pbmRleE9mKCd0YWJsZScpICE9PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICBtb2R1bGVzID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgLi4ubW9kdWxlcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICdiZXR0ZXItdGFibGUnOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHRoaXMucXVpbGxFZGl0b3IgPSBuZXcgUXVpbGwodGhpcy5lZGl0b3JFbGVtLCB7XG4gICAgICAgICAgICAgICAgICAgIGJvdW5kcyxcbiAgICAgICAgICAgICAgICAgICAgZGVidWcsXG4gICAgICAgICAgICAgICAgICAgIGZvcm1hdHMsXG4gICAgICAgICAgICAgICAgICAgIG1vZHVsZXMsXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyLFxuICAgICAgICAgICAgICAgICAgICByZWFkT25seSxcbiAgICAgICAgICAgICAgICAgICAgc2Nyb2xsaW5nQ29udGFpbmVyLFxuICAgICAgICAgICAgICAgICAgICBzdHJpY3Q6IHRoaXMuc3RyaWN0LFxuICAgICAgICAgICAgICAgICAgICB0aGVtZTogdGhpcy50aGVtZSB8fCAodGhpcy5jb25maWcudGhlbWUgPyB0aGlzLmNvbmZpZy50aGVtZSA6ICdzbm93JyksXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgdGhpcy5xdWlsbEVkaXRvci5jb250YWluZXIuZmlyc3RDaGlsZC5pZCA9IHRoaXMuaWQ7XG5cbiAgICAgICAgICAgICAgICBpZiAodGhpcy5jb250ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGZvcm1hdCA9IGdldEZvcm1hdCh0aGlzLmZvcm1hdCwgdGhpcy5jb25maWcuZm9ybWF0KTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGZvcm1hdCA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucXVpbGxFZGl0b3Iuc2V0Q29udGVudHModGhpcy5jb250ZW50LCAnc2lsZW50Jyk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoZm9ybWF0ID09PSAndGV4dCcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucXVpbGxFZGl0b3Iuc2V0VGV4dCh0aGlzLmNvbnRlbnQsICdzaWxlbnQnKTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChmb3JtYXQgPT09ICdqc29uJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnF1aWxsRWRpdG9yLnNldENvbnRlbnRzKEpTT04ucGFyc2UodGhpcy5jb250ZW50KSwgJ3NpbGVudCcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucXVpbGxFZGl0b3Iuc2V0VGV4dCh0aGlzLmNvbnRlbnQsICdzaWxlbnQnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLnNhbml0aXplKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb250ZW50ID0gdGhpcy5kb21TYW5pdGl6ZXIuc2FuaXRpemUoU2VjdXJpdHlDb250ZXh0LkhUTUwsIHRoaXMuY29udGVudCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjb250ZW50cyA9IHRoaXMucXVpbGxFZGl0b3IuY2xpcGJvYXJkLmNvbnZlcnQodGhpcy5jb250ZW50KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucXVpbGxFZGl0b3Iuc2V0Q29udGVudHMoY29udGVudHMsICdzaWxlbnQnKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucXVpbGxFZGl0b3IuaGlzdG9yeS5jbGVhcigpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIGluaXRpYWxpemUgZGlzYWJsZWQgc3RhdHVzIGJhc2VkIG9uIHRoaXMuZGlzYWJsZWQgYXMgZGVmYXVsdCB2YWx1ZVxuICAgICAgICAgICAgICAgIHRoaXMuc2V0RGlzYWJsZWRTdGF0ZSgpO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5vbkVkaXRvckNyZWF0ZWQuZW1pdCh0aGlzLnF1aWxsRWRpdG9yKTtcblxuICAgICAgICAgICAgICAgIC8vIG1hcmsgbW9kZWwgYXMgdG91Y2hlZCBpZiBlZGl0b3IgbG9zdCBmb2N1c1xuICAgICAgICAgICAgICAgIHRoaXMucXVpbGxFZGl0b3Iub24oJ3NlbGVjdGlvbi1jaGFuZ2UnLCB0aGlzLnNlbGVjdGlvbkNoYW5nZUhhbmRsZXIpO1xuXG4gICAgICAgICAgICAgICAgLy8gdXBkYXRlIG1vZGVsIGlmIHRleHQgY2hhbmdlc1xuICAgICAgICAgICAgICAgIHRoaXMucXVpbGxFZGl0b3Iub24oJ3RleHQtY2hhbmdlJywgdGhpcy50ZXh0Q2hhbmdlSGFuZGxlcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHNlbGVjdGlvbkNoYW5nZUhhbmRsZXIgPSAocmFuZ2U6IFJhbmdlIHwgbnVsbCwgb2xkUmFuZ2U6IFJhbmdlIHwgbnVsbCwgc291cmNlOiBzdHJpbmcpOiB2b2lkID0+IHtcbiAgICAgICAgdGhpcy56b25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICBpZiAocmFuZ2UgPT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uQmx1ci5lbWl0KHtcbiAgICAgICAgICAgICAgICAgICAgZWRpdG9yOiB0aGlzLnF1aWxsRWRpdG9yLFxuICAgICAgICAgICAgICAgICAgICBzb3VyY2UsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKG9sZFJhbmdlID09PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5vbkZvY3VzLmVtaXQoe1xuICAgICAgICAgICAgICAgICAgICBlZGl0b3I6IHRoaXMucXVpbGxFZGl0b3IsXG4gICAgICAgICAgICAgICAgICAgIHNvdXJjZSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5vblNlbGVjdGlvbkNoYW5nZWQuZW1pdCh7XG4gICAgICAgICAgICAgICAgZWRpdG9yOiB0aGlzLnF1aWxsRWRpdG9yLFxuICAgICAgICAgICAgICAgIG9sZFJhbmdlLFxuICAgICAgICAgICAgICAgIHJhbmdlLFxuICAgICAgICAgICAgICAgIHNvdXJjZSxcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBpZiAoIXJhbmdlICYmIHRoaXMub25Nb2RlbFRvdWNoZWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uTW9kZWxUb3VjaGVkKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH07XG5cbiAgICB0ZXh0Q2hhbmdlSGFuZGxlciA9IChkZWx0YTogYW55LCBvbGREZWx0YTogYW55LCBzb3VyY2U6IHN0cmluZyk6IHZvaWQgPT4ge1xuICAgICAgICAvLyBvbmx5IGVtaXQgY2hhbmdlcyBlbWl0dGVkIGJ5IHVzZXIgaW50ZXJhY3Rpb25zXG5cbiAgICAgICAgY29uc3QgdGV4dCA9IHRoaXMucXVpbGxFZGl0b3IuZ2V0VGV4dCgpO1xuICAgICAgICBjb25zdCBjb250ZW50ID0gdGhpcy5xdWlsbEVkaXRvci5nZXRDb250ZW50cygpO1xuXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbm9uLW51bGwtYXNzZXJ0aW9uXG4gICAgICAgIGxldCBodG1sOiBzdHJpbmcgfCBudWxsID0gdGhpcy5lZGl0b3JFbGVtIS5xdWVyeVNlbGVjdG9yKCcucWwtZWRpdG9yJykhLmlubmVySFRNTDtcbiAgICAgICAgaWYgKGh0bWwgPT09ICc8cD48YnI+PC9wPicgfHwgaHRtbCA9PT0gJzxkaXY+PGJyPjxkaXY+Jykge1xuICAgICAgICAgICAgaHRtbCA9IG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHRyYWNrQ2hhbmdlcyA9IHRoaXMudHJhY2tDaGFuZ2VzIHx8IHRoaXMuY29uZmlnLnRyYWNrQ2hhbmdlcztcbiAgICAgICAgICAgIGlmICgoc291cmNlID09PSBRdWlsbC5zb3VyY2VzLlVTRVIgfHwgKHRyYWNrQ2hhbmdlcyAmJiB0cmFja0NoYW5nZXMgPT09ICdhbGwnKSkgJiYgdGhpcy5vbk1vZGVsQ2hhbmdlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5vbk1vZGVsQ2hhbmdlKFxuICAgICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGlvblxuICAgICAgICAgICAgICAgICAgICB0aGlzLnZhbHVlR2V0dGVyKHRoaXMucXVpbGxFZGl0b3IsIHRoaXMuZWRpdG9yRWxlbSEpXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5vbkNvbnRlbnRDaGFuZ2VkLmVtaXQoe1xuICAgICAgICAgICAgICAgIGNvbnRlbnQsXG4gICAgICAgICAgICAgICAgZGVsdGEsXG4gICAgICAgICAgICAgICAgZWRpdG9yOiB0aGlzLnF1aWxsRWRpdG9yLFxuICAgICAgICAgICAgICAgIGh0bWwsXG4gICAgICAgICAgICAgICAgb2xkRGVsdGEsXG4gICAgICAgICAgICAgICAgc291cmNlLFxuICAgICAgICAgICAgICAgIHRleHQsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfTtcblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5xdWlsbEVkaXRvcikge1xuICAgICAgICAgICAgdGhpcy5xdWlsbEVkaXRvci5vZmYoJ3NlbGVjdGlvbi1jaGFuZ2UnLCB0aGlzLnNlbGVjdGlvbkNoYW5nZUhhbmRsZXIpO1xuICAgICAgICAgICAgdGhpcy5xdWlsbEVkaXRvci5vZmYoJ3RleHQtY2hhbmdlJywgdGhpcy50ZXh0Q2hhbmdlSGFuZGxlcik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5xdWlsbEVkaXRvcikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjaGFuZ2VzLmlkKSB7XG4gICAgICAgICAgICB0aGlzLnF1aWxsRWRpdG9yLmNvbnRhaW5lci5maXJzdENoaWxkLmlkID0gY2hhbmdlcy5pZC5jdXJyZW50VmFsdWU7XG4gICAgICAgICAgICBRdWlsbC5mb3JtYXRzID0geyAuLi5RdWlsbC5mb3JtYXRzLCBbdGhpcy5pZF06IHRoaXMuZm9ybWF0cyB9O1xuICAgICAgICB9XG4gICAgICAgIGlmIChjaGFuZ2VzWydyZWFkT25seSddKSB7XG4gICAgICAgICAgICB0aGlzLnF1aWxsRWRpdG9yLmVuYWJsZSghY2hhbmdlc1sncmVhZE9ubHknXS5jdXJyZW50VmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjaGFuZ2VzWydwbGFjZWhvbGRlciddKSB7XG4gICAgICAgICAgICB0aGlzLnF1aWxsRWRpdG9yLnJvb3QuZGF0YXNldC5wbGFjZWhvbGRlciA9IGNoYW5nZXNbJ3BsYWNlaG9sZGVyJ10uY3VycmVudFZhbHVlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjaGFuZ2VzWydzdHlsZXMnXSkge1xuICAgICAgICAgICAgY29uc3QgY3VycmVudFN0eWxpbmcgPSBjaGFuZ2VzWydzdHlsZXMnXS5jdXJyZW50VmFsdWU7XG4gICAgICAgICAgICBjb25zdCBwcmV2aW91c1N0eWxpbmcgPSBjaGFuZ2VzWydzdHlsZXMnXS5wcmV2aW91c1ZhbHVlO1xuXG4gICAgICAgICAgICBpZiAocHJldmlvdXNTdHlsaW5nKSB7XG4gICAgICAgICAgICAgICAgT2JqZWN0LmtleXMocHJldmlvdXNTdHlsaW5nKS5mb3JFYWNoKChrZXk6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZVN0eWxlKHRoaXMuZWRpdG9yRWxlbSwga2V5KTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChjdXJyZW50U3R5bGluZykge1xuICAgICAgICAgICAgICAgIE9iamVjdC5rZXlzKGN1cnJlbnRTdHlsaW5nKS5mb3JFYWNoKChrZXk6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZWRpdG9yRWxlbSwga2V5LCB0aGlzLnN0eWxlc1trZXldKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoY2hhbmdlc1snZm9ybWF0cyddKSB7XG4gICAgICAgICAgICBjb25zdCBjdXJyZW50Rm9ybWF0cyA9IGNoYW5nZXNbJ2Zvcm1hdHMnXS5jdXJyZW50VmFsdWU7XG4gICAgICAgICAgICBRdWlsbC5mb3JtYXRzID0geyAuLi5RdWlsbC5mb3JtYXRzLCBbdGhpcy5pZF06IGN1cnJlbnRGb3JtYXRzIH07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB3cml0ZVZhbHVlKGN1cnJlbnRWYWx1ZTogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMuY29udGVudCA9IGN1cnJlbnRWYWx1ZTtcbiAgICAgICAgY29uc3QgZm9ybWF0ID0gZ2V0Rm9ybWF0KHRoaXMuZm9ybWF0LCB0aGlzLmNvbmZpZy5mb3JtYXQpO1xuXG4gICAgICAgIGlmICh0aGlzLnF1aWxsRWRpdG9yKSB7XG4gICAgICAgICAgICBpZiAoY3VycmVudFZhbHVlKSB7XG4gICAgICAgICAgICAgICAgaWYgKGZvcm1hdCA9PT0gJ3RleHQnKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucXVpbGxFZGl0b3Iuc2V0VGV4dChjdXJyZW50VmFsdWUpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucXVpbGxFZGl0b3Iuc2V0Q29udGVudHModGhpcy52YWx1ZVNldHRlcih0aGlzLnF1aWxsRWRpdG9yLCB0aGlzLmNvbnRlbnQpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5xdWlsbEVkaXRvci5zZXRUZXh0KCcnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbiA9IHRoaXMuZGlzYWJsZWQpOiB2b2lkIHtcbiAgICAgICAgLy8gc3RvcmUgaW5pdGlhbCB2YWx1ZSB0byBzZXQgYXBwcm9wcmlhdGUgZGlzYWJsZWQgc3RhdHVzIGFmdGVyIFZpZXdJbml0XG4gICAgICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICAgICAgICBpZiAodGhpcy5xdWlsbEVkaXRvcikge1xuICAgICAgICAgICAgaWYgKGlzRGlzYWJsZWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnF1aWxsRWRpdG9yLmRpc2FibGUoKTtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2Rpc2FibGVkJywgJ2Rpc2FibGVkJyk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmICghdGhpcy5yZWFkT25seSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnF1aWxsRWRpdG9yLmVuYWJsZSgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUF0dHJpYnV0ZSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2Rpc2FibGVkJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAobW9kZWxWYWx1ZTogYW55KSA9PiB2b2lkKTogdm9pZCB7XG4gICAgICAgIHRoaXMub25Nb2RlbENoYW5nZSA9IGZuO1xuICAgIH1cblxuICAgIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgICAgIHRoaXMub25Nb2RlbFRvdWNoZWQgPSBmbjtcbiAgICB9XG5cbiAgICB2YWxpZGF0ZSgpOiBhbnkge1xuICAgICAgICBpZiAoIXRoaXMucXVpbGxFZGl0b3IpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZXJyOiB7XG4gICAgICAgICAgICBtaW5MZW5ndGhFcnJvcj86IHtcbiAgICAgICAgICAgICAgICBnaXZlbjogbnVtYmVyO1xuICAgICAgICAgICAgICAgIG1pbkxlbmd0aDogbnVtYmVyO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIG1heExlbmd0aEVycm9yPzoge1xuICAgICAgICAgICAgICAgIGdpdmVuOiBudW1iZXI7XG4gICAgICAgICAgICAgICAgbWF4TGVuZ3RoOiBudW1iZXI7XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgcmVxdWlyZWRFcnJvcj86IHsgZW1wdHk6IGJvb2xlYW4gfTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBsZXQgdmFsaWQgPSB0cnVlO1xuXG4gICAgICAgIGNvbnN0IHRleHRMZW5ndGggPSB0aGlzLnF1aWxsRWRpdG9yLmdldFRleHQoKS50cmltKCkubGVuZ3RoO1xuXG4gICAgICAgIGlmICh0aGlzLm1pbkxlbmd0aCAmJiB0ZXh0TGVuZ3RoICYmIHRleHRMZW5ndGggPCB0aGlzLm1pbkxlbmd0aCkge1xuICAgICAgICAgICAgZXJyLm1pbkxlbmd0aEVycm9yID0ge1xuICAgICAgICAgICAgICAgIGdpdmVuOiB0ZXh0TGVuZ3RoLFxuICAgICAgICAgICAgICAgIG1pbkxlbmd0aDogdGhpcy5taW5MZW5ndGgsXG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICB2YWxpZCA9IGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMubWF4TGVuZ3RoICYmIHRleHRMZW5ndGggPiB0aGlzLm1heExlbmd0aCkge1xuICAgICAgICAgICAgZXJyLm1heExlbmd0aEVycm9yID0ge1xuICAgICAgICAgICAgICAgIGdpdmVuOiB0ZXh0TGVuZ3RoLFxuICAgICAgICAgICAgICAgIG1heExlbmd0aDogdGhpcy5tYXhMZW5ndGgsXG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICB2YWxpZCA9IGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMucmVxdWlyZWQgJiYgIXRleHRMZW5ndGgpIHtcbiAgICAgICAgICAgIGVyci5yZXF1aXJlZEVycm9yID0ge1xuICAgICAgICAgICAgICAgIGVtcHR5OiB0cnVlLFxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgdmFsaWQgPSBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB2YWxpZCA/IG51bGwgOiBlcnI7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogT3ZlcnJpZGUgdGhlIGRlZmF1bHQgUXVpbGwgc2Nyb2xsIGJlaGF2aW9yIHRvIHRha2UgaW50byBhY2NvdW50IHRoZSBmb3JtYXRzIGFycmF5IGFuZCBza2lwIG5vbi1mb3VuZCBvbmVzLiBUaGVuXG4gICAgICogcmVnaXN0ZXJzIHRoZSBwbHVnaW4gdG8gdGhlIFF1aWxsIGVkaXRvci5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBRdWlsbEluc3RhbmNlIFRoZSBRdWlsbCBjbGFzcyAobm90IHRoZSBpbnN0YW5jZSlcbiAgICAgKiBAcHJpdmF0ZVxuICAgICAqL1xuICAgIHByaXZhdGUgb3ZlcnJpZGVTY3JvbGxCZWhhdmlvcihRdWlsbEluc3RhbmNlOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgLy8gdGhlIEJ1aWx0LWluIFNjcm9sbCBDbGFzcyBpcyBub3QgZXhwb3J0ZWQsIHNvIHdlIG5lZWQgdG8gaW1wb3J0IGl0XG4gICAgICAgIGNvbnN0IEJ1aWx0aW5TY3JvbGwgPSBRdWlsbEluc3RhbmNlLmltcG9ydCgnYmxvdHMvc2Nyb2xsJyk7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBPdmVycmlkZSB0aGUgZGVmYXVsdCBRdWlsbCBzY3JvbGwgYmVoYXZpb3IgdG8gdGFrZSBpbnRvIGFjY291bnQgdGhlIGZvcm1hdHMgYXJyYXkgYW5kIHNraXAgbm9uLWZvdW5kIG9uZXMuXG4gICAgICAgICAqL1xuICAgICAgICBjbGFzcyBTY3JvbGwgZXh0ZW5kcyBCdWlsdGluU2Nyb2xsIHtcbiAgICAgICAgICAgIGZvcm1hdEF0KGluZGV4OiBudW1iZXIsIGxlbmd0aDogbnVtYmVyLCBmb3JtYXQ6IHN0cmluZywgdmFsdWU6IGFueSk6IHZvaWQge1xuICAgICAgICAgICAgICAgIGNvbnN0IGVsZW1lbnRJZCA9IHRoaXMuZG9tTm9kZS5pZDtcbiAgICAgICAgICAgICAgICBjb25zdCBpbnN0YW5jZUZvcm1hdHMgPSBRdWlsbEluc3RhbmNlLmZvcm1hdHNbZWxlbWVudElkXTtcbiAgICAgICAgICAgICAgICAvLyBjaGVja3MgdGhlIGZvcm1hdHMgYXJyYXkgdG8gc2VlIGlmIHRoZSBmb3JtYXQgaXMgYmxhY2tsaXN0ZWRcbiAgICAgICAgICAgICAgICBpZiAoaW5zdGFuY2VGb3JtYXRzICYmIGluc3RhbmNlRm9ybWF0cy5maW5kKChmKSA9PiBmID09PSBmb3JtYXQpKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gY29udGludWUgd2l0aCBkZWZhdWx0IGJlaGF2aW9yXG4gICAgICAgICAgICAgICAgc3VwZXIuZm9ybWF0QXQoaW5kZXgsIGxlbmd0aCwgZm9ybWF0LCB2YWx1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLyoqIHJlZ2lzdGVyIHRoZSBTY3JvbGwgb3ZlcnJpZGUgKi9cbiAgICAgICAgUXVpbGxJbnN0YW5jZS5yZWdpc3RlcignYmxvdHMvc2Nyb2xsJywgU2Nyb2xsLCB0cnVlKTtcbiAgICB9XG59XG4iXX0=
|
@@ -22,9 +22,9 @@ export class QuillModule {
|
|
22
22
|
],
|
23
23
|
};
|
24
24
|
}
|
25
|
-
|
26
|
-
|
27
|
-
|
25
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: QuillModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
26
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.0-next.3", ngImport: i0, type: QuillModule, declarations: [QuillEditorComponent], imports: [CommonModule], exports: [QuillEditorComponent] }); }
|
27
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: QuillModule, providers: [
|
28
28
|
{
|
29
29
|
provide: QUILL_CONFIG_TOKEN,
|
30
30
|
useValue: { modules: defaultModules },
|
@@ -45,4 +45,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-next.3",
|
|
45
45
|
],
|
46
46
|
}]
|
47
47
|
}] });
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVpbGwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vZXh0ZXJuYWxzL3F1aWxsL3F1aWxsLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGtCQUFrQixFQUFlLE1BQU0sMkJBQTJCLENBQUM7QUFDNUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQUUvQywrRUFBK0U7QUFDL0UscUVBQXFFO0FBRXJFOztHQUVHO0FBWUgsTUFBTSxPQUFPLFdBQVc7SUFDcEIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFvQjtRQUMvQixPQUFPO1lBQ0gsUUFBUSxFQUFFLFdBQVc7WUFDckIsU0FBUyxFQUFFO2dCQUNQO29CQUNJLE9BQU8sRUFBRSxrQkFBa0I7b0JBQzNCLCtEQUErRDtvQkFDL0QsUUFBUSxFQUFFLE1BQU0sSUFBSSxFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUU7aUJBQ2xEO2FBQ0o7U0FDSixDQUFDO0lBQ04sQ0FBQztxSEFaUSxXQUFXO3NIQUFYLFdBQVcsaUJBVkwsb0JBQW9CLGFBRXpCLFlBQVksYUFEWixvQkFBb0I7c0hBU3JCLFdBQVcsYUFQVDtZQUNQO2dCQUNJLE9BQU8sRUFBRSxrQkFBa0I7Z0JBQzNCLFFBQVEsRUFBRSxFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUU7YUFDeEM7U0FDSixZQU5TLFlBQVk7O2tHQVFiLFdBQVc7a0JBWHZCLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFLENBQUMsb0JBQW9CLENBQUM7b0JBQ3BDLE9BQU8sRUFBRSxDQUFDLG9CQUFvQixDQUFDO29CQUMvQixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLFNBQVMsRUFBRTt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsa0JBQWtCOzRCQUMzQixRQUFRLEVBQUUsRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFO3lCQUN4QztxQkFDSjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IGRlZmF1bHRNb2R1bGVzIH0gZnJvbSAnLi9xdWlsbC1kZWZhdWx0cyc7XG5pbXBvcnQgeyBRdWlsbEVkaXRvckNvbXBvbmVudCB9IGZyb20gJy4vcXVpbGwtZWRpdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBRVUlMTF9DT05GSUdfVE9LRU4sIFF1aWxsQ29uZmlnIH0gZnJvbSAnLi9xdWlsbC1lZGl0b3IuaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5cbi8vIFRPRE86IGludGVncmF0ZSB0aGF0IG1vZHVsZSBhbmQgYWxsIHJlbGF0ZWQgY29kZSB3aXRoIHRoZSBldWktZWRpdG9yIG1vZHVsZS5cbi8vICAgICBSZW1vdmUgdGhpcyBzdWItZW50cnkgYW5kIG1vdmUgYWxsIHRoZSBjb2RlIHRvIHRoZSBldWktZWRpdG9yLlxuXG4vKipcbiAqIEBkZXByZWNhdGVkIHBsZWFzZSBkb24ndCB1c2UgaXQuIEl0IHdpbGwgYmUgcmVtb3ZlZFxuICovXG5ATmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogW1F1aWxsRWRpdG9yQ29tcG9uZW50XSxcbiAgICBleHBvcnRzOiBbUXVpbGxFZGl0b3JDb21wb25lbnRdLFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBRVUlMTF9DT05GSUdfVE9LRU4sXG4gICAgICAgICAgICB1c2VWYWx1ZTogeyBtb2R1bGVzOiBkZWZhdWx0TW9kdWxlcyB9LFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFF1aWxsTW9kdWxlIHtcbiAgICBzdGF0aWMgZm9yUm9vdChjb25maWc/OiBRdWlsbENvbmZpZyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8UXVpbGxNb2R1bGU+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG5nTW9kdWxlOiBRdWlsbE1vZHVsZSxcbiAgICAgICAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogUVVJTExfQ09ORklHX1RPS0VOLFxuICAgICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLWFycm93L3ByZWZlci1hcnJvdy1mdW5jdGlvbnNcbiAgICAgICAgICAgICAgICAgICAgdXNlVmFsdWU6IGNvbmZpZyB8fCB7IG1vZHVsZXM6IGRlZmF1bHRNb2R1bGVzIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgIH07XG4gICAgfVxufVxuIl19
|
@@ -15,8 +15,8 @@ export class EuiAppBreadcrumbComponent {
|
|
15
15
|
getCssClasses() {
|
16
16
|
return ['eui-app-breadcrumb'].join(' ');
|
17
17
|
}
|
18
|
-
|
19
|
-
|
18
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: EuiAppBreadcrumbComponent, deps: [{ token: i1.EuiAppShellService }], target: i0.ɵɵFactoryTarget.Component }); }
|
19
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-next.3", type: EuiAppBreadcrumbComponent, selector: "eui-app-breadcrumb", host: { properties: { "class": "this.cssClasses", "attr.role": "this.role" } }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [".eui-app-breadcrumb{align-items:center;display:flex;flex-direction:row;height:var(--eui-app-breadcrumb-height);top:calc(var(--eui-app-header-height) + var(--eui-app-toolbar-height) + var(--eui-app-top-message-height));position:relative;margin:var(--eui-base-spacing-m) 0 var(--eui-base-spacing-xs) 0;width:100%}@media screen and (max-width: 767px){.eui-app-breadcrumb{visibility:hidden}}\n"], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
|
20
20
|
}
|
21
21
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: EuiAppBreadcrumbComponent, decorators: [{
|
22
22
|
type: Component,
|
@@ -28,4 +28,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-next.3",
|
|
28
28
|
type: HostBinding,
|
29
29
|
args: ['attr.role']
|
30
30
|
}] } });
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9sYXlvdXQvZXVpLWFwcC9ldWktYXBwLWJyZWFkY3J1bWIvYnJlYWRjcnVtYi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9sYXlvdXQvZXVpLWFwcC9ldWktYXBwLWJyZWFkY3J1bWIvYnJlYWRjcnVtYi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBVSxNQUFNLGVBQWUsQ0FBQzs7O0FBVzNHLE1BQU0sT0FBTyx5QkFBeUI7SUFDbEMsSUFDSSxVQUFVO1FBQ1YsT0FBTyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUdELFlBQW9CLFNBQTZCO1FBQTdCLGNBQVMsR0FBVCxTQUFTLENBQW9CO1FBRnZCLFNBQUksR0FBRyxLQUFLLENBQUM7SUFFYSxDQUFDO0lBRXJELFFBQVE7UUFDSixJQUFJLENBQUMsU0FBUyxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUVPLGFBQWE7UUFDakIsT0FBTyxDQUFDLG9CQUFvQixDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzVDLENBQUM7cUhBZlEseUJBQXlCO3lHQUF6Qix5QkFBeUIsMElDWHRDLDZCQUNBOztrR0RVYSx5QkFBeUI7a0JBUHJDLFNBQVM7K0JBQ0ksb0JBQW9CLG1CQUdiLHVCQUF1QixDQUFDLE9BQU8saUJBQ2pDLGlCQUFpQixDQUFDLElBQUk7dUZBSWpDLFVBQVU7c0JBRGIsV0FBVzt1QkFBQyxPQUFPO2dCQUlNLElBQUk7c0JBQTdCLFdBQVc7dUJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBWaWV3RW5jYXBzdWxhdGlvbiwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEV1aUFwcFNoZWxsU2VydmljZSB9IGZyb20gJ0BldWkvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZXVpLWFwcC1icmVhZGNydW1iJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYnJlYWRjcnVtYi5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vX3N0eWxlcy9faW5kZXguc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuRGVmYXVsdCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBFdWlBcHBCcmVhZGNydW1iQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgICBnZXQgY3NzQ2xhc3NlcygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRDc3NDbGFzc2VzKCk7XG4gICAgfVxuICAgIEBIb3N0QmluZGluZygnYXR0ci5yb2xlJykgcm9sZSA9ICduYXYnO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBhc1NlcnZpY2U6IEV1aUFwcFNoZWxsU2VydmljZSkge31cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmFzU2VydmljZS5hY3RpdmF0ZUJyZWFkY3J1bWIoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldENzc0NsYXNzZXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFsnZXVpLWFwcC1icmVhZGNydW1iJ10uam9pbignICcpO1xuICAgIH1cbn1cbiIsIjxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiJdfQ==
|
@@ -3,9 +3,9 @@ import { NgModule } from '@angular/core';
|
|
3
3
|
import { EuiAppBreadcrumbComponent } from './breadcrumb.component';
|
4
4
|
import * as i0 from "@angular/core";
|
5
5
|
export class EuiAppBreadcrumbModule {
|
6
|
-
|
7
|
-
|
8
|
-
|
6
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: EuiAppBreadcrumbModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
7
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.0-next.3", ngImport: i0, type: EuiAppBreadcrumbModule, declarations: [EuiAppBreadcrumbComponent], imports: [CommonModule], exports: [EuiAppBreadcrumbComponent] }); }
|
8
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: EuiAppBreadcrumbModule, imports: [CommonModule] }); }
|
9
9
|
}
|
10
10
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: EuiAppBreadcrumbModule, decorators: [{
|
11
11
|
type: NgModule,
|
@@ -15,4 +15,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-next.3",
|
|
15
15
|
exports: [EuiAppBreadcrumbComponent],
|
16
16
|
}]
|
17
17
|
}] });
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9sYXlvdXQvZXVpLWFwcC9ldWktYXBwLWJyZWFkY3J1bWIvYnJlYWRjcnVtYi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBT25FLE1BQU0sT0FBTyxzQkFBc0I7cUhBQXRCLHNCQUFzQjtzSEFBdEIsc0JBQXNCLGlCQUhoQix5QkFBeUIsYUFEOUIsWUFBWSxhQUVaLHlCQUF5QjtzSEFFMUIsc0JBQXNCLFlBSnJCLFlBQVk7O2tHQUliLHNCQUFzQjtrQkFMbEMsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLFlBQVksRUFBRSxDQUFDLHlCQUF5QixDQUFDO29CQUN6QyxPQUFPLEVBQUUsQ0FBQyx5QkFBeUIsQ0FBQztpQkFDdkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRXVpQXBwQnJlYWRjcnVtYkNvbXBvbmVudCB9IGZyb20gJy4vYnJlYWRjcnVtYi5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICAgIGRlY2xhcmF0aW9uczogW0V1aUFwcEJyZWFkY3J1bWJDb21wb25lbnRdLFxuICAgIGV4cG9ydHM6IFtFdWlBcHBCcmVhZGNydW1iQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgRXVpQXBwQnJlYWRjcnVtYk1vZHVsZSB7fVxuIl19
|
@@ -5,8 +5,8 @@ export class EuiAppFooterComponent {
|
|
5
5
|
this.class = 'eui-app-footer';
|
6
6
|
this.role = 'contentinfo';
|
7
7
|
}
|
8
|
-
|
9
|
-
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: EuiAppFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
9
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0-next.3", type: EuiAppFooterComponent, selector: "eui-app-footer", host: { properties: { "class": "this.class", "attr.role": "this.role" } }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [".eui-app-footer{border-top:1px solid var(--eui-base-color-grey-5);transition:all .2s ease;margin-top:auto}\n"], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
|
10
10
|
}
|
11
11
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: EuiAppFooterComponent, decorators: [{
|
12
12
|
type: Component,
|
@@ -17,4 +17,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-next.3",
|
|
17
17
|
type: HostBinding,
|
18
18
|
args: ['attr.role']
|
19
19
|
}] } });
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xheW91dC9ldWktYXBwL2V1aS1hcHAtZm9vdGVyL2Zvb3Rlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9sYXlvdXQvZXVpLWFwcC9ldWktYXBwLWZvb3Rlci9mb290ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBU25HLE1BQU0sT0FBTyxxQkFBcUI7SUFQbEM7UUFRbUIsVUFBSyxHQUFHLGdCQUFnQixDQUFDO1FBQ2QsU0FBSSxHQUFHLGFBQWEsQ0FBQztLQUNsRDtxSEFIWSxxQkFBcUI7eUdBQXJCLHFCQUFxQixpSUNUbEMsNkJBQ0E7O2tHRFFhLHFCQUFxQjtrQkFQakMsU0FBUzsrQkFDSSxnQkFBZ0IsbUJBRVQsdUJBQXVCLENBQUMsT0FBTyxpQkFFakMsaUJBQWlCLENBQUMsSUFBSTs4QkFHdEIsS0FBSztzQkFBbkIsV0FBVztnQkFDYyxJQUFJO3NCQUE3QixXQUFXO3VCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdldWktYXBwLWZvb3RlcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2Zvb3Rlci5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0LFxuICAgIHN0eWxlVXJsczogWycuL19zdHlsZXMvX2luZGV4LnNjc3MnXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBFdWlBcHBGb290ZXJDb21wb25lbnQge1xuICAgIEBIb3N0QmluZGluZygpIGNsYXNzID0gJ2V1aS1hcHAtZm9vdGVyJztcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIucm9sZScpIHJvbGUgPSAnY29udGVudGluZm8nO1xufVxuIiwiPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuIl19
|
@@ -3,9 +3,9 @@ import { NgModule } from '@angular/core';
|
|
3
3
|
import { EuiAppFooterComponent } from './footer.component';
|
4
4
|
import * as i0 from "@angular/core";
|
5
5
|
export class EuiAppFooterModule {
|
6
|
-
|
7
|
-
|
8
|
-
|
6
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: EuiAppFooterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
7
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.0-next.3", ngImport: i0, type: EuiAppFooterModule, declarations: [EuiAppFooterComponent], imports: [CommonModule], exports: [EuiAppFooterComponent] }); }
|
8
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: EuiAppFooterModule, imports: [CommonModule] }); }
|
9
9
|
}
|
10
10
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: EuiAppFooterModule, decorators: [{
|
11
11
|
type: NgModule,
|
@@ -15,4 +15,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-next.3",
|
|
15
15
|
exports: [EuiAppFooterComponent],
|
16
16
|
}]
|
17
17
|
}] });
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xheW91dC9ldWktYXBwL2V1aS1hcHAtZm9vdGVyL2Zvb3Rlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBTzNELE1BQU0sT0FBTyxrQkFBa0I7cUhBQWxCLGtCQUFrQjtzSEFBbEIsa0JBQWtCLGlCQUhaLHFCQUFxQixhQUQxQixZQUFZLGFBRVoscUJBQXFCO3NIQUV0QixrQkFBa0IsWUFKakIsWUFBWTs7a0dBSWIsa0JBQWtCO2tCQUw5QixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsWUFBWSxFQUFFLENBQUMscUJBQXFCLENBQUM7b0JBQ3JDLE9BQU8sRUFBRSxDQUFDLHFCQUFxQixDQUFDO2lCQUNuQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBFdWlBcHBGb290ZXJDb21wb25lbnQgfSBmcm9tICcuL2Zvb3Rlci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICAgIGRlY2xhcmF0aW9uczogW0V1aUFwcEZvb3RlckNvbXBvbmVudF0sXG4gICAgZXhwb3J0czogW0V1aUFwcEZvb3RlckNvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIEV1aUFwcEZvb3Rlck1vZHVsZSB7fVxuIl19
|