@eo-sdk/client 11.7.0-beta.2 → 11.8.0-rc.1
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/LICENSE +21 -21
- package/README.md +35 -35
- package/app/eo-client/about-state/about-state.component.d.ts.map +1 -1
- package/app/eo-client/dashboard/dashboard.component.d.ts +3 -2
- package/app/eo-client/dashboard/dashboard.component.d.ts.map +1 -1
- package/app/eo-client/dashboard/widgets/charts-widget/charts-setup/charts-setup.component.d.ts +1 -1
- package/app/eo-client/dashboard/widgets/charts-widget/charts-setup/charts-setup.component.d.ts.map +1 -1
- package/app/eo-client/dashboard/widgets/signature-statistics-widget/signature-statistics-setup/signature-statistics-setup.component.d.ts +30 -0
- package/app/eo-client/dashboard/widgets/signature-statistics-widget/signature-statistics-setup/signature-statistics-setup.component.d.ts.map +1 -0
- package/app/eo-client/dashboard/widgets/signature-statistics-widget/signature-statistics-widget.component.d.ts +23 -0
- package/app/eo-client/dashboard/widgets/signature-statistics-widget/signature-statistics-widget.component.d.ts.map +1 -0
- package/app/eo-client/dashboard/widgets/signature-statistics-widget/signature-statistics.interface.d.ts +20 -0
- package/app/eo-client/dashboard/widgets/signature-statistics-widget/signature-statistics.interface.d.ts.map +1 -0
- package/app/eo-client/eo-client.module.d.ts +32 -29
- package/app/eo-client/eo-client.module.d.ts.map +1 -1
- package/app/eo-client/settings/settings.component.d.ts +15 -16
- package/app/eo-client/settings/settings.component.d.ts.map +1 -1
- package/app/eo-client/settings/settings.interface.d.ts +25 -0
- package/app/eo-client/settings/settings.interface.d.ts.map +1 -0
- package/app/eo-framework/actions/action.module.d.ts +15 -13
- package/app/eo-framework/actions/action.module.d.ts.map +1 -1
- package/app/eo-framework/actions/actions/custom-actions/custom-actions.component.d.ts.map +1 -1
- package/app/eo-framework/actions/actions/share-object-action/share-object/share-object.component.d.ts.map +1 -1
- package/app/eo-framework/actions/actions/unlock-action/unlock-action.d.ts +4 -3
- package/app/eo-framework/actions/actions/unlock-action/unlock-action.d.ts.map +1 -1
- package/app/eo-framework/actions/actions/unlock-action/unlock-object-action/unlock-object-action.component.d.ts +23 -0
- package/app/eo-framework/actions/actions/unlock-action/unlock-object-action/unlock-object-action.component.d.ts.map +1 -0
- package/app/eo-framework/app-shell/app-bar/app-search/app-search.component.d.ts +0 -1
- package/app/eo-framework/app-shell/app-bar/app-search/app-search.component.d.ts.map +1 -1
- package/app/eo-framework/form-elements/datetime-range/datetime-range.component.d.ts.map +1 -1
- package/app/eo-framework/media/media.component.d.ts +3 -2
- package/app/eo-framework/media/media.component.d.ts.map +1 -1
- package/app/eo-framework/object-details/object-details.component.d.ts +12 -4
- package/app/eo-framework/object-details/object-details.component.d.ts.map +1 -1
- package/app/eo-framework/upload-overlay/upload-overlay.component.d.ts +51 -26
- package/app/eo-framework/upload-overlay/upload-overlay.component.d.ts.map +1 -1
- package/app/eo-framework-core/agent/agent.service.d.ts +7 -2
- package/app/eo-framework-core/agent/agent.service.d.ts.map +1 -1
- package/app/eo-framework-core/search/app-search.service.d.ts.map +1 -1
- package/assets/_default/README.md +2 -2
- package/assets/_default/config/extend.json +6 -6
- package/assets/_default/config/main.json +44 -44
- package/assets/_default/fonts/roboto_bold_macroman/Roboto-Bold-webfont.svg +765 -765
- package/assets/_default/fonts/roboto_light_macroman/Roboto-Light-webfont.svg +818 -818
- package/assets/_default/fonts/roboto_medium_macroman/Roboto-Medium-webfont.svg +765 -765
- package/assets/_default/fonts/roboto_regular_macroman/Roboto-Regular-webfont.svg +795 -795
- package/assets/_default/i18n/de.json +1150 -1132
- package/assets/_default/i18n/en.json +21 -3
- package/assets/_default/i18n/po/de.po +310 -310
- package/assets/_default/i18n/po/en.po +310 -310
- package/assets/_default/svg/ic_delete_sweep.svg +3 -3
- package/assets/_default/svg/ic_emoticon-cool.svg +1 -1
- package/assets/_default/svg/ic_kitt-loader.svg +1 -1
- package/assets/_default/svg/ic_link.svg +6 -6
- package/assets/_default/svg/ic_not_listed_location.svg +4 -4
- package/assets/_default/theme/theme.css +13 -13
- package/assets/dashboard.json +47 -47
- package/assets/i18n/temp.json +584 -584
- package/assets/i18n/temp.pot +1753 -1753
- package/esm2022/app/eo-client/about-state/about-state.component.mjs +5 -5
- package/esm2022/app/eo-client/dashboard/dashboard.component.mjs +22 -8
- package/esm2022/app/eo-client/dashboard/widgets/charts-widget/charts-setup/charts-setup.component.mjs +13 -17
- package/esm2022/app/eo-client/dashboard/widgets/charts-widget/charts-widget.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/widgets/charts-widget/icharts.mjs +1 -1
- package/esm2022/app/eo-client/dashboard/widgets/count-objects-widget/count-objects-setup/count-objects-setup.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/widgets/count-objects-widget/count-objects-widget.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/widgets/count-objects-widget/count-objects.model.mjs +1 -1
- package/esm2022/app/eo-client/dashboard/widgets/hitlist-widget/IHitlist.mjs +1 -1
- package/esm2022/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-setup/hitlist-setup.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-widget.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/widgets/iframe-widget/iframe-setup/iframe-setup.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/widgets/iframe-widget/iframe-widget.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/widgets/info-inbox-widget/info-inbox-setup/info-inbox-setup.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/widgets/info-inbox-widget/info-inbox-widget.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/widgets/info-inbox-widget/info-inbox.model.mjs +1 -1
- package/esm2022/app/eo-client/dashboard/widgets/info-intray-widget/info-intray-setup/info-intray-setup.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/widgets/info-intray-widget/info-intray-widget.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/widgets/info-intray-widget/info-intray.model.mjs +1 -1
- package/esm2022/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created-setup/last-edited-and-created-setup.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created.mjs +1 -1
- package/esm2022/app/eo-client/dashboard/widgets/picture-widget/picture-widget-setup/picture-widget-setup.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/widgets/picture-widget/picture-widget.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/widgets/search-widget/search-widget.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/widgets/signature-statistics-widget/signature-statistics-setup/signature-statistics-setup.component.mjs +114 -0
- package/esm2022/app/eo-client/dashboard/widgets/signature-statistics-widget/signature-statistics-widget.component.mjs +79 -0
- package/esm2022/app/eo-client/dashboard/widgets/signature-statistics-widget/signature-statistics.interface.mjs +2 -0
- package/esm2022/app/eo-client/dashboard/widgets/todowidget/todo-setup/todo-setup.component.mjs +3 -3
- package/esm2022/app/eo-client/dashboard/widgets/todowidget/todo-widget.component.mjs +3 -3
- package/esm2022/app/eo-client/eo-client-routing.module.mjs +1 -1
- package/esm2022/app/eo-client/eo-client.module.mjs +11 -1
- package/esm2022/app/eo-client/favorite-state/favorite-state.component.mjs +14 -14
- package/esm2022/app/eo-client/inbox-state/inbox-state/inbox-state.component.mjs +18 -18
- package/esm2022/app/eo-client/inbox-state/inbox-state/inbox.types.enum.mjs +1 -1
- package/esm2022/app/eo-client/inbox-state/inbox-state-routing.module.mjs +1 -1
- package/esm2022/app/eo-client/inbox-state/inbox-state.module.mjs +1 -1
- package/esm2022/app/eo-client/index.mjs +1 -1
- package/esm2022/app/eo-client/login/login.component.mjs +3 -3
- package/esm2022/app/eo-client/notifications-state/notifications-state.component.mjs +16 -16
- package/esm2022/app/eo-client/notifications-state/notifications-state.interface.mjs +1 -1
- package/esm2022/app/eo-client/object-state/object-state/object-state.component.mjs +3 -3
- package/esm2022/app/eo-client/object-state/object-state-routing.module.mjs +1 -1
- package/esm2022/app/eo-client/object-state/object-state-service/object-state.interface.mjs +1 -1
- package/esm2022/app/eo-client/object-state/object-state-service/object-state.service.mjs +1 -1
- package/esm2022/app/eo-client/object-state/object-state.module.mjs +1 -1
- package/esm2022/app/eo-client/prepare-state/prepare-state/prepare-state.component.mjs +14 -14
- package/esm2022/app/eo-client/prepare-state/prepare-state-routing.module.mjs +1 -1
- package/esm2022/app/eo-client/prepare-state/prepare-state.module.mjs +1 -1
- package/esm2022/app/eo-client/process-state/filter-label.mjs +1 -1
- package/esm2022/app/eo-client/process-state/process-state.component.mjs +22 -22
- package/esm2022/app/eo-client/recyclebin-state/recyclebin-state.component.mjs +16 -16
- package/esm2022/app/eo-client/result-state/result-state.component.mjs +3 -3
- package/esm2022/app/eo-client/settings/agent-lock-settings.enum.mjs +1 -1
- package/esm2022/app/eo-client/settings/settings.component.mjs +42 -24
- package/esm2022/app/eo-client/settings/settings.interface.mjs +2 -0
- package/esm2022/app/eo-client/stored-queries-state/stored-queries-state.component.mjs +14 -14
- package/esm2022/app/eo-client/version-state/version-state.component.mjs +16 -16
- package/esm2022/app/eo-framework/accordion/accordion.module.mjs +1 -1
- package/esm2022/app/eo-framework/accordion/index.mjs +1 -1
- package/esm2022/app/eo-framework/accordion/simple-accordion/simple-accordion.component.mjs +3 -3
- package/esm2022/app/eo-framework/actions/action-menu/action-component-anchor/action-component-anchor.directive.mjs +1 -1
- package/esm2022/app/eo-framework/actions/action-menu/action-menu.component.mjs +3 -3
- package/esm2022/app/eo-framework/actions/action-service/action.service.mjs +1 -1
- package/esm2022/app/eo-framework/actions/action-target.mjs +1 -1
- package/esm2022/app/eo-framework/actions/action.module.mjs +8 -4
- package/esm2022/app/eo-framework/actions/actions/add-resubmission-action/add-resubmission/add-resubmission.component.mjs +3 -3
- package/esm2022/app/eo-framework/actions/actions/add-resubmission-action/add-resubmission-action.mjs +1 -1
- package/esm2022/app/eo-framework/actions/actions/add-subscription-action/add-subscription/add-subscription.component.mjs +3 -3
- package/esm2022/app/eo-framework/actions/actions/add-subscription-action/add-subscription-action.mjs +1 -1
- package/esm2022/app/eo-framework/actions/actions/cancel-signing-action/cancel-signing/cancel-signing.component.mjs +3 -3
- package/esm2022/app/eo-framework/actions/actions/cancel-signing-action/cancel-signing-action.mjs +1 -1
- package/esm2022/app/eo-framework/actions/actions/clipboard/clipboard-action.mjs +1 -1
- package/esm2022/app/eo-framework/actions/actions/clipboard/clipboard-object-action/clipboard-object-action.component.mjs +3 -3
- package/esm2022/app/eo-framework/actions/actions/copy-action/copy-action.mjs +1 -1
- package/esm2022/app/eo-framework/actions/actions/custom-actions/custom-actions.component.mjs +2 -1
- package/esm2022/app/eo-framework/actions/actions/cut-action/cut-action.mjs +1 -1
- package/esm2022/app/eo-framework/actions/actions/delete-action/delete/delete.component.mjs +3 -3
- package/esm2022/app/eo-framework/actions/actions/delete-action/delete-action.mjs +1 -1
- package/esm2022/app/eo-framework/actions/actions/delete-action/delete-prepared-action.mjs +1 -1
- package/esm2022/app/eo-framework/actions/actions/delete-content-action/delete-content/delete-content.component.mjs +3 -3
- package/esm2022/app/eo-framework/actions/actions/delete-content-action/delete-content-action.mjs +1 -1
- package/esm2022/app/eo-framework/actions/actions/download-action/download-action.mjs +1 -1
- package/esm2022/app/eo-framework/actions/actions/download-action/download-object-action/download-object-action.component.mjs +3 -3
- package/esm2022/app/eo-framework/actions/actions/email/email/email.component.mjs +3 -3
- package/esm2022/app/eo-framework/actions/actions/email/email-action.mjs +1 -1
- package/esm2022/app/eo-framework/actions/actions/favorite-action/favorite-action.mjs +1 -1
- package/esm2022/app/eo-framework/actions/actions/finalize/definalize-action.mjs +1 -1
- package/esm2022/app/eo-framework/actions/actions/finalize/finalize-action.mjs +1 -1
- package/esm2022/app/eo-framework/actions/actions/finalize/finalize-object-action/finalize-object-action.component.mjs +3 -3
- package/esm2022/app/eo-framework/actions/actions/open-context-action/open-context-action.mjs +1 -1
- package/esm2022/app/eo-framework/actions/actions/open-document-action/open-document-action.component.mjs +3 -3
- package/esm2022/app/eo-framework/actions/actions/open-document-action/open-document-action.mjs +2 -2
- package/esm2022/app/eo-framework/actions/actions/open-versions-action/open-versions-action.mjs +1 -1
- package/esm2022/app/eo-framework/actions/actions/remove-subscription-action/remove-subscription-action.mjs +1 -1
- package/esm2022/app/eo-framework/actions/actions/restore-version-action/restore-version-action.mjs +1 -1
- package/esm2022/app/eo-framework/actions/actions/share-object-action/share-object/share-object.component.mjs +7 -4
- package/esm2022/app/eo-framework/actions/actions/share-object-action/share-object-action.mjs +1 -1
- package/esm2022/app/eo-framework/actions/actions/signature-action/sequence-list/sequence-list.component.mjs +3 -3
- package/esm2022/app/eo-framework/actions/actions/signature-action/sequence-list-item/sequence-list-item.component.mjs +3 -3
- package/esm2022/app/eo-framework/actions/actions/signature-action/signature/signature.component.mjs +3 -3
- package/esm2022/app/eo-framework/actions/actions/signature-action/signature-action.component.mjs +1 -1
- package/esm2022/app/eo-framework/actions/actions/signature-action/signature.model.mjs +1 -1
- package/esm2022/app/eo-framework/actions/actions/unlock-action/unlock-action.mjs +3 -4
- package/esm2022/app/eo-framework/actions/actions/unlock-action/unlock-object-action/unlock-object-action.component.mjs +43 -0
- package/esm2022/app/eo-framework/actions/actions/update-resubmission-action/update-resubmission-action.mjs +1 -1
- package/esm2022/app/eo-framework/actions/actions/workflow-action/simple-workflow-action.component.mjs +1 -1
- package/esm2022/app/eo-framework/actions/actions/workflow-action/workflow/workflow.component.mjs +3 -3
- package/esm2022/app/eo-framework/actions/actions/workflow-action/workflow-action.component.mjs +1 -1
- package/esm2022/app/eo-framework/actions/index.mjs +1 -1
- package/esm2022/app/eo-framework/actions/interfaces/action-component.interface.mjs +1 -1
- package/esm2022/app/eo-framework/actions/interfaces/action-list-entry.mjs +1 -1
- package/esm2022/app/eo-framework/actions/interfaces/action.interface.mjs +1 -1
- package/esm2022/app/eo-framework/actions/selection-range.enum.mjs +1 -1
- package/esm2022/app/eo-framework/animations/animations.mjs +1 -1
- package/esm2022/app/eo-framework/app-shell/app-bar/app-add/app-add-dialog/app-add-dialog.component.mjs +3 -3
- package/esm2022/app/eo-framework/app-shell/app-bar/app-add/app-add.component.mjs +3 -3
- package/esm2022/app/eo-framework/app-shell/app-bar/app-bar.component.mjs +3 -3
- package/esm2022/app/eo-framework/app-shell/app-bar/app-process/app-process.component.mjs +3 -3
- package/esm2022/app/eo-framework/app-shell/app-bar/app-search/app-search.component.mjs +11 -8
- package/esm2022/app/eo-framework/app-shell/app-bar/app-search/app-search.interface.mjs +1 -1
- package/esm2022/app/eo-framework/app-shell/app-bar/context-search/context-search.component.mjs +3 -3
- package/esm2022/app/eo-framework/app-shell/app-bar/side-bar/side-bar.component.mjs +3 -3
- package/esm2022/app/eo-framework/app-shell/app-bar/user-avatar-overlay/user-avatar-overlay.component.mjs +3 -3
- package/esm2022/app/eo-framework/app-shell/app-shell-routing.module.mjs +1 -1
- package/esm2022/app/eo-framework/app-shell/app-shell.module.mjs +1 -1
- package/esm2022/app/eo-framework/app-shell/index.mjs +1 -1
- package/esm2022/app/eo-framework/app-shell/license-warning/license-warning.component.mjs +3 -3
- package/esm2022/app/eo-framework/cta/component/cta.component.mjs +3 -3
- package/esm2022/app/eo-framework/cta/cta.module.mjs +1 -1
- package/esm2022/app/eo-framework/cta/index.mjs +1 -1
- package/esm2022/app/eo-framework/eo-framework.module.mjs +1 -1
- package/esm2022/app/eo-framework/error/error.module.mjs +1 -1
- package/esm2022/app/eo-framework/error/error404/error404.component.mjs +3 -3
- package/esm2022/app/eo-framework/error/index.mjs +1 -1
- package/esm2022/app/eo-framework/error/not-found/not-found.component.mjs +1 -1
- package/esm2022/app/eo-framework/form-elements/checkbox/checkbox.component.mjs +3 -3
- package/esm2022/app/eo-framework/form-elements/codesystem/codesystem.component.mjs +3 -3
- package/esm2022/app/eo-framework/form-elements/date/date.component.mjs +3 -3
- package/esm2022/app/eo-framework/form-elements/date/year-range/year-range.directive.mjs +1 -1
- package/esm2022/app/eo-framework/form-elements/datetime-range/datetime-range.component.mjs +8 -3
- package/esm2022/app/eo-framework/form-elements/dynamic-list/dynamic-list.component.mjs +5 -5
- package/esm2022/app/eo-framework/form-elements/form-elements.module.mjs +1 -1
- package/esm2022/app/eo-framework/form-elements/form-input/form-input.component.mjs +3 -3
- package/esm2022/app/eo-framework/form-elements/form-input/input-focus/input-focus.directive.mjs +1 -1
- package/esm2022/app/eo-framework/form-elements/id-reference/animation/reference-finder.animation.mjs +1 -1
- package/esm2022/app/eo-framework/form-elements/id-reference/id-reference.component.mjs +3 -3
- package/esm2022/app/eo-framework/form-elements/id-reference/interface/reference-finder.interface.mjs +1 -1
- package/esm2022/app/eo-framework/form-elements/id-reference/reference-finder/reference-finder.component.mjs +3 -3
- package/esm2022/app/eo-framework/form-elements/id-reference/reference-finder-entry/reference-finder-entry.component.mjs +3 -3
- package/esm2022/app/eo-framework/form-elements/id-reference/service/reference-finder.service.mjs +1 -1
- package/esm2022/app/eo-framework/form-elements/index.mjs +1 -1
- package/esm2022/app/eo-framework/form-elements/number/number.component.mjs +3 -3
- package/esm2022/app/eo-framework/form-elements/number-range/number-range.component.mjs +3 -3
- package/esm2022/app/eo-framework/form-elements/organization/organization.component.mjs +3 -3
- package/esm2022/app/eo-framework/form-elements/password/password.component.mjs +3 -3
- package/esm2022/app/eo-framework/form-elements/reference/reference.component.mjs +3 -3
- package/esm2022/app/eo-framework/form-elements/string/string.component.mjs +3 -3
- package/esm2022/app/eo-framework/frame/frame.component.mjs +3 -3
- package/esm2022/app/eo-framework/grid/column-configurator/column-configurator.component.mjs +3 -3
- package/esm2022/app/eo-framework/grid/extensions/custom-sort/custom-sort.component.mjs +3 -3
- package/esm2022/app/eo-framework/grid/extensions/empty/empty.component.mjs +3 -3
- package/esm2022/app/eo-framework/grid/extensions/filter/abstract-filter.component.mjs +1 -1
- package/esm2022/app/eo-framework/grid/extensions/filter/custom/custom-filter.component.mjs +3 -3
- package/esm2022/app/eo-framework/grid/extensions/filter/setFilters/set-filter.component.mjs +3 -3
- package/esm2022/app/eo-framework/grid/extensions/filter/setFilters/set-filters.interface.mjs +1 -1
- package/esm2022/app/eo-framework/grid/extensions/filter/text/text-filter.component.mjs +3 -3
- package/esm2022/app/eo-framework/grid/extensions/pagination/pagination.component.mjs +3 -3
- package/esm2022/app/eo-framework/grid/extensions/quick-filter/quick-filter.component.mjs +21 -21
- package/esm2022/app/eo-framework/grid/extensions/reset-filter/reset-filter.component.mjs +3 -3
- package/esm2022/app/eo-framework/grid/extensions/services/list-settings.service.mjs +1 -1
- package/esm2022/app/eo-framework/grid/extensions/total-count/total-count.component.mjs +3 -3
- package/esm2022/app/eo-framework/grid/filters/codesystem-filter.component.mjs +3 -3
- package/esm2022/app/eo-framework/grid/filters/datetime-filter.component.mjs +3 -3
- package/esm2022/app/eo-framework/grid/filters/dynamic-list-filter.component.mjs +3 -3
- package/esm2022/app/eo-framework/grid/filters/filesize-filter.component.mjs +1 -1
- package/esm2022/app/eo-framework/grid/filters/list-filter.component.mjs +3 -3
- package/esm2022/app/eo-framework/grid/filters/organization-filter.component.mjs +3 -3
- package/esm2022/app/eo-framework/grid/grid-filter.model.mjs +1 -1
- package/esm2022/app/eo-framework/grid/grid.component.mjs +7 -7
- package/esm2022/app/eo-framework/grid/grid.module.mjs +1 -1
- package/esm2022/app/eo-framework/grid/index.mjs +1 -1
- package/esm2022/app/eo-framework/grid/loader.interface.mjs +1 -1
- package/esm2022/app/eo-framework/inbox-details/duetimeInfo/duetimeInfo.component.mjs +3 -3
- package/esm2022/app/eo-framework/inbox-details/inbox-details.component.mjs +3 -3
- package/esm2022/app/eo-framework/index.mjs +1 -1
- package/esm2022/app/eo-framework/list-container/index.mjs +1 -1
- package/esm2022/app/eo-framework/list-container/list-container.component.mjs +3 -3
- package/esm2022/app/eo-framework/list-container/list-container.module.mjs +1 -1
- package/esm2022/app/eo-framework/media/content-preview.service.mjs +1 -1
- package/esm2022/app/eo-framework/media/index.mjs +1 -1
- package/esm2022/app/eo-framework/media/media.component.mjs +9 -5
- package/esm2022/app/eo-framework/media/media.module.mjs +1 -1
- package/esm2022/app/eo-framework/object-details/edit-icon/edit-icon.component.mjs +3 -3
- package/esm2022/app/eo-framework/object-details/favorite-icon/favorite-icon.component.mjs +3 -3
- package/esm2022/app/eo-framework/object-details/index.mjs +1 -1
- package/esm2022/app/eo-framework/object-details/object-details.component.mjs +26 -13
- package/esm2022/app/eo-framework/object-details/object-details.module.mjs +1 -1
- package/esm2022/app/eo-framework/object-details/object-history/history-filter/history-filter-pipe/history-filter.pipe.mjs +1 -1
- package/esm2022/app/eo-framework/object-details/object-history/history-filter/history-filter.component.mjs +3 -3
- package/esm2022/app/eo-framework/object-details/object-history/history-filter/history-filter.mjs +1 -1
- package/esm2022/app/eo-framework/object-details/object-history/object-history.component.mjs +4 -4
- package/esm2022/app/eo-framework/object-details/object-links/object-links.component.mjs +3 -3
- package/esm2022/app/eo-framework/object-form/form-status-changed-event.interface.mjs +1 -1
- package/esm2022/app/eo-framework/object-form/index.mjs +1 -1
- package/esm2022/app/eo-framework/object-form/object-form/form-element/form-element-template.directive.mjs +1 -1
- package/esm2022/app/eo-framework/object-form/object-form/form-element/form-element.component.mjs +3 -3
- package/esm2022/app/eo-framework/object-form/object-form/form-element-table/form-element-table.component.mjs +12 -12
- package/esm2022/app/eo-framework/object-form/object-form/form-element-table/form-element.interface.mjs +1 -1
- package/esm2022/app/eo-framework/object-form/object-form/form-element-table/row-edit/row-edit.component.mjs +3 -3
- package/esm2022/app/eo-framework/object-form/object-form/form-validation/form-validation.mjs +1 -1
- package/esm2022/app/eo-framework/object-form/object-form/object-form-control-wrapper.mjs +1 -1
- package/esm2022/app/eo-framework/object-form/object-form/object-form-control.mjs +1 -1
- package/esm2022/app/eo-framework/object-form/object-form/object-form-group/object-form-group.component.mjs +3 -3
- package/esm2022/app/eo-framework/object-form/object-form/object-form-group.model.mjs +1 -1
- package/esm2022/app/eo-framework/object-form/object-form/object-form-script/object-form-script.interface.mjs +1 -1
- package/esm2022/app/eo-framework/object-form/object-form/object-form-script/object-form-script.service.mjs +1 -1
- package/esm2022/app/eo-framework/object-form/object-form/object-form-script/object-form-scripting-scope.mjs +1 -1
- package/esm2022/app/eo-framework/object-form/object-form/object-form.component.mjs +3 -3
- package/esm2022/app/eo-framework/object-form/object-form/object-form.model.mjs +1 -1
- package/esm2022/app/eo-framework/object-form/object-form-edit/object-form-edit.component.mjs +3 -3
- package/esm2022/app/eo-framework/object-form/object-form-helper.service.mjs +1 -1
- package/esm2022/app/eo-framework/object-form/object-form-options.interface.mjs +1 -1
- package/esm2022/app/eo-framework/object-form/object-form.module.mjs +1 -1
- package/esm2022/app/eo-framework/object-state-details/object-state-details.component.mjs +3 -3
- package/esm2022/app/eo-framework/plugins/index.mjs +1 -1
- package/esm2022/app/eo-framework/plugins/plugin.component.mjs +15 -15
- package/esm2022/app/eo-framework/plugins/plugin.directive.mjs +1 -1
- package/esm2022/app/eo-framework/plugins/plugin.service.mjs +1 -1
- package/esm2022/app/eo-framework/plugins/plugins.module.mjs +1 -1
- package/esm2022/app/eo-framework/prepare-details/prepare-content-exists-info/prepare-content-exists-info.component.mjs +3 -3
- package/esm2022/app/eo-framework/prepare-details/prepare-details.component.mjs +10 -10
- package/esm2022/app/eo-framework/process/details/process-details.component.mjs +3 -3
- package/esm2022/app/eo-framework/process/history/process-history.component.mjs +3 -3
- package/esm2022/app/eo-framework/process/process-file/file-entry-permissions.interface.mjs +1 -1
- package/esm2022/app/eo-framework/process/process-file/process-file.component.mjs +3 -3
- package/esm2022/app/eo-framework/process-form/process-form.component.mjs +3 -3
- package/esm2022/app/eo-framework/process-form/process-form.module.mjs +1 -1
- package/esm2022/app/eo-framework/quick-search/index.mjs +1 -1
- package/esm2022/app/eo-framework/quick-search/quick-search/quick-search-result.interface.mjs +1 -1
- package/esm2022/app/eo-framework/quick-search/quick-search/quick-search.component.mjs +3 -3
- package/esm2022/app/eo-framework/quick-search/quick-search.module.mjs +1 -1
- package/esm2022/app/eo-framework/recyclebin-details/recyclebin-details.component.mjs +3 -3
- package/esm2022/app/eo-framework/result-list/index.mjs +1 -1
- package/esm2022/app/eo-framework/result-list/result-list.component.mjs +3 -3
- package/esm2022/app/eo-framework/result-list/result-list.module.mjs +1 -1
- package/esm2022/app/eo-framework/settings/change-password/change-password-form/change-password-form.component.mjs +3 -3
- package/esm2022/app/eo-framework/settings/change-password/change-password.interface.mjs +1 -1
- package/esm2022/app/eo-framework/settings/index.mjs +1 -1
- package/esm2022/app/eo-framework/settings/permissions/permissions.component.mjs +3 -3
- package/esm2022/app/eo-framework/settings/settings.module.mjs +1 -1
- package/esm2022/app/eo-framework/shortcuts/global-shortcut-action.interface.mjs +1 -1
- package/esm2022/app/eo-framework/shortcuts/global-shortcut-component.interface.mjs +1 -1
- package/esm2022/app/eo-framework/shortcuts/global-shortcuts/global-shortcuts-section/global-shortcuts-section.component.mjs +3 -3
- package/esm2022/app/eo-framework/shortcuts/global-shortcuts/global-shortcuts.component.mjs +3 -3
- package/esm2022/app/eo-framework/shortcuts/index.mjs +1 -1
- package/esm2022/app/eo-framework/shortcuts/shortcut.interface.mjs +4 -4
- package/esm2022/app/eo-framework/shortcuts/shortcuts.directive.mjs +1 -1
- package/esm2022/app/eo-framework/shortcuts/shortcuts.module.mjs +1 -1
- package/esm2022/app/eo-framework/shortcuts/shortcuts.service.mjs +1 -1
- package/esm2022/app/eo-framework/stored-query/index.mjs +1 -1
- package/esm2022/app/eo-framework/stored-query/stored-query/stored-query.component.mjs +3 -3
- package/esm2022/app/eo-framework/stored-query/stored-query-details/dynamic-property-switch/dynamic-property-switch.component.mjs +4 -3
- package/esm2022/app/eo-framework/stored-query/stored-query-details/stored-query-details.component.mjs +3 -3
- package/esm2022/app/eo-framework/stored-query/stored-query-type-filter.enum.mjs +1 -1
- package/esm2022/app/eo-framework/stored-query/stored-query.interface.mjs +1 -1
- package/esm2022/app/eo-framework/stored-query/stored-query.module.mjs +1 -1
- package/esm2022/app/eo-framework/tree/index.mjs +1 -1
- package/esm2022/app/eo-framework/tree/tree-node/tree-node.component.mjs +3 -3
- package/esm2022/app/eo-framework/tree/tree.component.interface.mjs +1 -1
- package/esm2022/app/eo-framework/tree/tree.component.mjs +3 -3
- package/esm2022/app/eo-framework/tree/tree.module.mjs +1 -1
- package/esm2022/app/eo-framework/ui/animations/panel-loading.animation.mjs +1 -1
- package/esm2022/app/eo-framework/ui/clipboard/clipboard.component.mjs +3 -3
- package/esm2022/app/eo-framework/ui/eo-dialog/eo-dialog.component.mjs +3 -3
- package/esm2022/app/eo-framework/ui/eo-icon/eo-icon.component.mjs +1 -1
- package/esm2022/app/eo-framework/ui/error-message/error-message.component.mjs +3 -3
- package/esm2022/app/eo-framework/ui/index.mjs +1 -1
- package/esm2022/app/eo-framework/ui/indexdata-summary/indexdata-summary-entry/indexdata-summary-entry.component.mjs +3 -3
- package/esm2022/app/eo-framework/ui/indexdata-summary/indexdata-summary-entry.interface.mjs +1 -1
- package/esm2022/app/eo-framework/ui/indexdata-summary/indexdata-summary.component.mjs +3 -3
- package/esm2022/app/eo-framework/ui/indexdata-summary/indexdata-summary.interface.mjs +1 -1
- package/esm2022/app/eo-framework/ui/loading-spinner/loading-spinner.component.mjs +7 -7
- package/esm2022/app/eo-framework/ui/outside-click/outside-click.directive.mjs +1 -1
- package/esm2022/app/eo-framework/ui/overlay/overlay.component.mjs +3 -3
- package/esm2022/app/eo-framework/ui/query-scope-select/query-scope-select.component.mjs +3 -3
- package/esm2022/app/eo-framework/ui/router-link/router-link.directive.mjs +1 -1
- package/esm2022/app/eo-framework/ui/rtl-aware/rtl-aware.directive.mjs +1 -1
- package/esm2022/app/eo-framework/ui/signature-tab/signature-tab.component.mjs +3 -3
- package/esm2022/app/eo-framework/ui/ui.module.mjs +1 -1
- package/esm2022/app/eo-framework/ui/user-avatar/user-avatar.component.mjs +1 -1
- package/esm2022/app/eo-framework/upload-overlay/upload-overlay-guard.service.mjs +1 -1
- package/esm2022/app/eo-framework/upload-overlay/upload-overlay.component.mjs +163 -92
- package/esm2022/app/eo-framework/util/directive/prevent-double-click.directive.mjs +1 -1
- package/esm2022/app/eo-framework/util/directive/trap-focus.directive.mjs +1 -1
- package/esm2022/app/eo-framework/util/index.mjs +1 -1
- package/esm2022/app/eo-framework/util/services/utilities.service.mjs +1 -1
- package/esm2022/app/eo-framework/util/sortable/order-by.pipe.mjs +1 -1
- package/esm2022/app/eo-framework/util/util.module.mjs +1 -1
- package/esm2022/app/eo-framework-core/agent/agent.interface.mjs +1 -1
- package/esm2022/app/eo-framework-core/agent/agent.service.mjs +13 -2
- package/esm2022/app/eo-framework-core/api/grid.service.mjs +6 -6
- package/esm2022/app/eo-framework-core/api/model/dms-object.api.interface.mjs +1 -1
- package/esm2022/app/eo-framework-core/api/plugins.service.mjs +1 -1
- package/esm2022/app/eo-framework-core/empty-state/empty-state.interface.mjs +1 -1
- package/esm2022/app/eo-framework-core/empty-state/empty-state.service.mjs +1 -1
- package/esm2022/app/eo-framework-core/eo-framework-core.module.mjs +1 -1
- package/esm2022/app/eo-framework-core/error-handler/error-handler.service.mjs +1 -1
- package/esm2022/app/eo-framework-core/error-handler/error-keys.mjs +1 -1
- package/esm2022/app/eo-framework-core/index.mjs +1 -1
- package/esm2022/app/eo-framework-core/layout/layout.service.mjs +1 -1
- package/esm2022/app/eo-framework-core/location/location.service.mjs +1 -1
- package/esm2022/app/eo-framework-core/pending-changes/pending-changes-component.interface.mjs +1 -1
- package/esm2022/app/eo-framework-core/pending-changes/pending-changes-guard.service.mjs +1 -1
- package/esm2022/app/eo-framework-core/pending-changes/pending-changes.service.mjs +1 -1
- package/esm2022/app/eo-framework-core/pipes/filesize.pipe.mjs +1 -1
- package/esm2022/app/eo-framework-core/pipes/keys.pipe.mjs +1 -1
- package/esm2022/app/eo-framework-core/pipes/locale-date.pipe.mjs +1 -1
- package/esm2022/app/eo-framework-core/pipes/locale-number.pipe.mjs +1 -1
- package/esm2022/app/eo-framework-core/pipes/pipes.module.mjs +1 -1
- package/esm2022/app/eo-framework-core/pipes/safe-html.pipe.mjs +1 -1
- package/esm2022/app/eo-framework-core/references/reference.service.mjs +1 -1
- package/esm2022/app/eo-framework-core/route-guards/auth/auth-guard.service.mjs +1 -1
- package/esm2022/app/eo-framework-core/route-guards/capabilities/capabilities-guard.service.mjs +1 -1
- package/esm2022/app/eo-framework-core/search/app-search.service.mjs +6 -2
- package/esm2022/app/eo-framework-core/selection/selection.service.mjs +1 -1
- package/esm2022/app/eo-framework-core/title/page-title.service.mjs +1 -1
- package/esm2022/public_api.mjs +1 -1
- package/fesm2022/eo-sdk-client.mjs +966 -614
- package/fesm2022/eo-sdk-client.mjs.map +1 -1
- package/languages/ar.json +523 -523
- package/languages/es.json +523 -523
- package/languages/fr.json +523 -523
- package/languages/po/ar.po +457 -457
- package/languages/pt.json +523 -523
- package/languages/temp.pot +928 -928
- package/languages/zh.json +523 -523
- package/misc/client.properties +1 -1
- package/misc/doc-styles/style.css +175 -175
- package/misc/scripts/copy-client-assets.js +26 -26
- package/misc/scripts/copy-core-styles.js +3 -3
- package/misc/scripts/exclude-core-ng-package.js +11 -11
- package/misc/scripts/helper.js +64 -64
- package/misc/scripts/i18n-apply.js +46 -46
- package/misc/scripts/i18n-diff.js +100 -100
- package/misc/scripts/injectdocbase.js +7 -7
- package/misc/scripts/mvn-deploy.js +66 -66
- package/misc/scripts/prebuild-about-state.js +32 -32
- package/misc/scripts/preparedist.js +39 -39
- package/misc/scripts/zipdist.js +21 -21
- package/misc/template.yml +4 -4
- package/misc/tsscheme.xml +34 -34
- package/package.json +3 -2
- package/proxy.config.js +13 -13
- package/scss/_ag-grid.scss +59 -59
- package/scss/_animation.scss +55 -55
- package/scss/_eo-variables.scss +78 -78
- package/scss/_form.scss +660 -660
- package/scss/_main.scss +394 -394
- package/scss/_migrationTemp.scss +28 -27
- package/scss/_mixins.scss +201 -201
- package/scss/_theme-dark.scss +22 -22
- package/scss/_timeline.scss +98 -98
- package/scss/_yuuvis-components.scss +40 -40
- package/styles.css +1 -0
- package/styles.scss +141 -141
- package/assets/_default/i18n/de_after.json +0 -1137
|
@@ -263,4 +263,4 @@ export class ReferenceService {
|
|
|
263
263
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: ReferenceService, decorators: [{
|
|
264
264
|
type: Injectable
|
|
265
265
|
}], ctorParameters: () => [{ type: i1.SearchService }, { type: i1.SystemService }] });
|
|
266
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmZXJlbmNlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay1jb3JlL3JlZmVyZW5jZXMvcmVmZXJlbmNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLEdBQUcsRUFBRSxRQUFRLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBYSxRQUFRLEVBQUUsRUFBRSxJQUFJLFlBQVksRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUU5RCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxvREFBb0QsQ0FBQzs7O0FBR3BGLE1BQU0sT0FBTyxnQkFBZ0I7SUFFM0IsWUFBb0IsYUFBNEIsRUFDNUIsYUFBNEI7UUFENUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsa0JBQWEsR0FBYixhQUFhLENBQWU7SUFDaEQsQ0FBQztJQUdELFVBQVUsQ0FBQyxTQUFvQjtRQUM3QixNQUFNLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxTQUFTLENBQUMsRUFBRSxJQUFJLENBQUMscUJBQXFCLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztRQUMvRixPQUFPLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsRUFBRSxrQkFBa0IsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUMsbUJBQW1CLEVBQUUsa0JBQWtCLEVBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNoSSxDQUFDO0lBRU8sc0JBQXNCLENBQUMsU0FBb0I7UUFDakQsT0FBTyxJQUFJLENBQUMsd0JBQXdCLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUNsRCxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FB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eEMsT0FBTyxFQUFFLEVBQUMsVUFBVSxFQUFFLElBQUksRUFBQztTQUM1QixDQUFDO1FBQ0YsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUU7WUFDakMsS0FBSyxDQUFDLElBQUksSUFBSSxNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsS0FBSyxLQUFLLEdBQUcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3hFLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQ25FLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNULE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDcEIsT0FBTztvQkFDTCxFQUFFLEVBQUUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFO29CQUNsQixLQUFLLEVBQUUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLO29CQUN4QixXQUFXLEVBQUUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxXQUFXO29CQUNwQyxJQUFJLEVBQUUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJO2lCQUN2QixDQUFDO1lBQ0osQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQzs4R0E5UlUsZ0JBQWdCO2tIQUFoQixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge21hcCwgbWVyZ2VNYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtPYnNlcnZhYmxlLCBmb3JrSm9pbiwgb2YgYXMgb2JzZXJ2YWJsZU9mfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtTZWFyY2hTZXJ2aWNlLCBTeXN0ZW1TZXJ2aWNlLCBEbXNPYmplY3R9IGZyb20gJ0Blby1zZGsvY29yZSc7XHJcbmltcG9ydCB7VXRpbGl0aWVzU2VydmljZX0gZnJvbSAnLi4vLi4vZW8tZnJhbWV3b3JrL3V0aWwvc2VydmljZXMvdXRpbGl0aWVzLnNlcnZpY2UnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgUmVmZXJlbmNlU2VydmljZSB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc2VhcmNoU2VydmljZTogU2VhcmNoU2VydmljZSxcclxuICAgICAgICAgICAgICBwcml2YXRlIHN5c3RlbVNlcnZpY2U6IFN5c3RlbVNlcnZpY2UpIHtcclxuICB9XHJcblxyXG5cclxuICBnZXRRdWVyaWVzKGRtc09iamVjdDogRG1zT2JqZWN0KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGNvbnN0IHJlc3VsdCA9IFt0aGlzLmdldE91dFJlZmVyZW5jZVF1ZXJpZXMoZG1zT2JqZWN0KSwgdGhpcy5nZXRJblJlZmVyZW5jZVF1ZXJpZXMoZG1zT2JqZWN0KV07XHJcbiAgICByZXR1cm4gZm9ya0pvaW4ocmVzdWx0KS5waXBlKG1hcCgoW291dFJlZmVyZW5jZVF1ZXJpZXMsIGluUmVmZXJlbmNlUXVlcmllc10pID0+ICh7b3V0UmVmZXJlbmNlUXVlcmllcywgaW5SZWZlcmVuY2VRdWVyaWVzfSkpKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0T3V0UmVmZXJlbmNlUXVlcmllcyhkbXNPYmplY3Q6IERtc09iamVjdCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5nZXRPdXRSZWZlcmVuY2VNZXRhRGF0YXMoZG1zT2JqZWN0KS5waXBlKFxyXG4gICAgICBtYXAocmVzID0+IHJlcy5tYXAobWV0YURhdGEgPT4ge1xyXG4gICAgICAgICAgbGV0IHF1ZXJ5ID0gdGhpcy5jcmVhdGVPdXRSZWZlcmVuY2VRdWVyeShtZXRhRGF0YSk7XHJcbiAgICAgICAgICBkZWxldGUgcXVlcnkuZmllbGRzO1xyXG4gICAgICAgICAgcmV0dXJuIHF1ZXJ5O1xyXG4gICAgICAgIH0pKSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldEluUmVmZXJlbmNlUXVlcmllcyhkbXNPYmplY3Q6IERtc09iamVjdCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZ2V0SW5SZWZlcmVuY2VNZXRhRGF0YXMoZG1zT2JqZWN0KVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtYXAocmVmVHlwZXMgPT4gcmVmVHlwZXMubWFwKHJlZmVyZW5jZWRUeXBlID0+IHtcclxuICAgICAgICAgICAgbGV0IHF1ZXJ5ID0gdGhpcy5jcmVhdGVJblJlZmVyZW5jZVF1ZXJ5KGRtc09iamVjdCwgcmVmZXJlbmNlZFR5cGUpO1xyXG4gICAgICAgICAgICBkZWxldGUgcXVlcnkuZmllbGRzO1xyXG4gICAgICAgICAgICByZXR1cm4gcXVlcnk7XHJcbiAgICAgICAgICB9KSkpO1xyXG4gIH1cclxuXHJcbiAgZ2V0T3V0UmVmZXJlbmNlcyhkbXNPYmplY3Q6IERtc09iamVjdCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgb2JzID0gW107XHJcbiAgICBsZXQgb3V0UmVmZXJlbmNlTWV0YURhdGFzO1xyXG4gICAgcmV0dXJuIHRoaXMuZ2V0T3V0UmVmZXJlbmNlTWV0YURhdGFzKGRtc09iamVjdCkucGlwZShcclxuICAgICAgbWVyZ2VNYXAocmVzcG9uc2UgPT4ge1xyXG4gICAgICAgICAgb3V0UmVmZXJlbmNlTWV0YURhdGFzID0gcmVzcG9uc2U7XHJcbiAgICAgICAgICBvdXRSZWZlcmVuY2VNZXRhRGF0YXMuZm9yRWFjaChtZXRhRGF0YSA9PiB7XHJcbiAgICAgICAgICAgIGxldCBxdWVyeSA9IHRoaXMuY3JlYXRlT3V0UmVmZXJlbmNlUXVlcnkobWV0YURhdGEpO1xyXG4gICAgICAgICAgICBsZXQgcHJvbWlzZSA9IHRoaXMuZXhlY3V0ZVF1ZXJ5KHF1ZXJ5KTtcclxuICAgICAgICAgICAgb2JzLnB1c2gocHJvbWlzZSk7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICAgIHJldHVybiBvYnMubGVuZ3RoID4gMCA/IGZvcmtKb2luKG9icykgOiBvYnNlcnZhYmxlT2YoW10pO1xyXG4gICAgICAgIH1cclxuICAgICAgKSxcclxuICAgICAgbWFwKHJlc3VsdHMgPT4gdGhpcy5tZXJnZVF1ZXJ5UmVzdWx0cyhyZXN1bHRzLCBvdXRSZWZlcmVuY2VNZXRhRGF0YXMpKSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG1lcmdlUXVlcnlSZXN1bHRzKHJlc3VsdHMsIG1ldGFEYXRhcykge1xyXG4gICAgbGV0IG1lcmdlZFJlc3VsdCA9IFtdO1xyXG4gICAgcmVzdWx0cy5mb3JFYWNoKChyZXN1bHQsIGluZGV4KSA9PiB7XHJcbiAgICAgIHJlc3VsdC5mb3JFYWNoKChoaXQpID0+IGhpdC5fc291cmNlLm1ldGFEYXRhID0gbWV0YURhdGFzW2luZGV4XSk7XHJcbiAgICAgIG1lcmdlZFJlc3VsdCA9IG1lcmdlZFJlc3VsdC5jb25jYXQocmVzdWx0KTtcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIG1lcmdlZFJlc3VsdC5tYXAobVIgPT4gbVIuX3NvdXJjZSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNyZWF0ZU91dFJlZmVyZW5jZVF1ZXJ5KG91dFJlZmVyZW5jZU1ldGFEYXRhKSB7XHJcbiAgICBsZXQgcXVlcnk7XHJcbiAgICBpZiAob3V0UmVmZXJlbmNlTWV0YURhdGEucmVtb3RlRWxlbWVudCkge1xyXG4gICAgICBxdWVyeSA9IHtcclxuICAgICAgICBmaWx0ZXJzOiB7fSxcclxuICAgICAgICBmaWVsZHM6IFsndGl0bGUnLCAnZGVzY3JpcHRpb24nLCAndHlwZSddLFxyXG4gICAgICAgIHR5cGVzOiBbb3V0UmVmZXJlbmNlTWV0YURhdGEub2JqZWN0VHlwZS5uYW1lXSxcclxuICAgICAgICBvcHRpb25zOiB7XHJcbiAgICAgICAgICBzdWdnZXN0OiB0cnVlLFxyXG4gICAgICAgICAgc2VhcmNobW9kZTogJ2lkeHMnXHJcbiAgICAgICAgfVxyXG4gICAgICB9O1xyXG5cclxuICAgICAgcXVlcnkuZmlsdGVyc1tvdXRSZWZlcmVuY2VNZXRhRGF0YS5yZW1vdGVFbGVtZW50LnFuYW1lXSA9IHtcclxuICAgICAgICBvOiBBcnJheS5pc0FycmF5KG91dFJlZmVyZW5jZU1ldGFEYXRhLnZhbHVlKSA/ICdpbicgOiAnZXEnLFxyXG4gICAgICAgIHYxOiBvdXRSZWZlcmVuY2VNZXRhRGF0YS52YWx1ZVxyXG4gICAgICB9O1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcXVlcnkgPSB7XHJcbiAgICAgICAgdGVybTogJycsXHJcbiAgICAgICAgZmllbGRzOiBbJ3RpdGxlJywgJ2Rlc2NyaXB0aW9uJ10sXHJcbiAgICAgICAgb3B0aW9uczoge2V4cGVydG1vZGU6IHRydWV9LFxyXG4gICAgICAgIHR5cGVzOiBbb3V0UmVmZXJlbmNlTWV0YURhdGEub2JqZWN0VHlwZS5uYW1lXVxyXG4gICAgICB9O1xyXG4gICAgICBvdXRSZWZlcmVuY2VNZXRhRGF0YS52YWx1ZS5mb3JFYWNoKCh2YWx1ZSwgaW5kZXgsIGFycikgPT4ge1xyXG4gICAgICAgIHF1ZXJ5LnRlcm0gKz0gJ19pZDonICsgdmFsdWUgKyAoaW5kZXggPT09IGFyci5sZW5ndGggLSAxID8gJycgOiAnIHx8ICcpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIHJldHVybiBxdWVyeTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0T3V0UmVmZXJlbmNlTWV0YURhdGFzKGRtc09iamVjdDogRG1zT2JqZWN0KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBtZXRhRGF0YXMgPSBbXTtcclxuICAgIGxldCB0eXBlcyA9IHRoaXMuc3lzdGVtU2VydmljZS5nZXRPYmplY3RUeXBlcygpO1xyXG5cclxuICAgIGxldCBmb3JtRWxlbWVudHMgPSB0eXBlcy5maW5kKHQgPT4gdC5uYW1lID09PSBkbXNPYmplY3QudHlwZU5hbWUpLmVsZW1lbnRzO1xyXG4gICAgbGV0IG91dFJlZmVyZW5jZUZpZWxkcyA9IHRoaXMuZ2V0T3V0UmVmZXJlbmNlRmllbGRzKGZvcm1FbGVtZW50cyk7XHJcblxyXG4gICAgb3V0UmVmZXJlbmNlRmllbGRzLmZvckVhY2goZmllbGQgPT4ge1xyXG4gICAgICBsZXQgb2JqZWN0VHlwZSA9IHR5cGVzLmZpbmQodCA9PiB0LnFuYW1lID09PSBmaWVsZC5yZWZlcmVuY2UudHlwZSk7XHJcbiAgICAgIGlmIChvYmplY3RUeXBlICYmIG9iamVjdFR5cGUuaXNBYnN0cmFjdCkge1xyXG4gICAgICAgIGxldCBzdWJUeXBlcyA9IHRoaXMuZ2V0U3ViVHlwZXMob2JqZWN0VHlwZS5uYW1lLCB0eXBlcyk7XHJcbiAgICAgICAgc3ViVHlwZXMuZm9yRWFjaChzdWJUeXBlID0+IHtcclxuICAgICAgICAgICAgbGV0IHJlbW90ZUVsZW1lbnQgPSBmaWVsZC50eXBlID09PSAnU1RSSU5HJyA/IHN1YlR5cGUuZWxlbWVudHMuZmluZChlbCA9PiBlbC5xbmFtZSA9PT0gZmllbGQucmVmZXJlbmNlLmVsZW1lbnQpIDogbnVsbDtcclxuICAgICAgICAgICAgbGV0IHZhbHVlcyA9IGRtc09iamVjdC5kYXRhW2ZpZWxkLm5hbWVdO1xyXG4gICAgICAgICAgICBpZiAodmFsdWVzKSB7XHJcbiAgICAgICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHZhbHVlcykpIHtcclxuICAgICAgICAgICAgICAgIHZhbHVlcyA9IFt2YWx1ZXNdO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBsZXQgbWV0YURhdGEgPSB7XHJcbiAgICAgICAgICAgICAgICBncm91cEZpZWxkOiBvYmplY3RUeXBlLm5hbWUgKyAocmVtb3RlRWxlbWVudCA/IHJlbW90ZUVsZW1lbnQubGFiZWwgOiAnSUQnKSxcclxuICAgICAgICAgICAgICAgIHJlbW90ZUVsZW1lbnQ6IHJlbW90ZUVsZW1lbnQsXHJcbiAgICAgICAgICAgICAgICBvYmplY3RUeXBlOiBzdWJUeXBlLFxyXG4gICAgICAgICAgICAgICAgZWxlbWVudDogZmllbGQsXHJcbiAgICAgICAgICAgICAgICB2YWx1ZTogdmFsdWVzXHJcbiAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICBtZXRhRGF0YXMucHVzaChtZXRhRGF0YSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICApXHJcbiAgICAgIH0gZWxzZSBpZiAob2JqZWN0VHlwZSkge1xyXG4gICAgICAgIGxldCByZW1vdGVFbGVtZW50ID0gZmllbGQudHlwZSA9PT0gJ1NUUklORycgPyBvYmplY3RUeXBlLmVsZW1lbnRzLmZpbmQoZWwgPT4gZWwucW5hbWUgPT09IGZpZWxkLnJlZmVyZW5jZS5lbGVtZW50KSA6IG51bGw7XHJcbiAgICAgICAgbGV0IHZhbHVlcyA9IGRtc09iamVjdC5kYXRhW2ZpZWxkLm5hbWVdO1xyXG4gICAgICAgIGlmICh2YWx1ZXMpIHtcclxuICAgICAgICAgIGlmICghQXJyYXkuaXNBcnJheSh2YWx1ZXMpKSB7XHJcbiAgICAgICAgICAgIHZhbHVlcyA9IFt2YWx1ZXNdO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgbGV0IG1ldGFEYXRhID0ge1xyXG4gICAgICAgICAgICBncm91cEZpZWxkOiBvYmplY3RUeXBlLm5hbWUgKyAocmVtb3RlRWxlbWVudCA/IHJlbW90ZUVsZW1lbnQubGFiZWwgOiAnSUQnKSxcclxuICAgICAgICAgICAgcmVtb3RlRWxlbWVudDogcmVtb3RlRWxlbWVudCxcclxuICAgICAgICAgICAgb2JqZWN0VHlwZTogb2JqZWN0VHlwZSxcclxuICAgICAgICAgICAgZWxlbWVudDogZmllbGQsXHJcbiAgICAgICAgICAgIHZhbHVlOiB2YWx1ZXNcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgICBtZXRhRGF0YXMucHVzaChtZXRhRGF0YSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gb2JzZXJ2YWJsZU9mKG1ldGFEYXRhcy5maWx0ZXIobWV0YURhdGEgPT4gIVV0aWxpdGllc1NlcnZpY2UuaXNFbXB0eShtZXRhRGF0YS52YWx1ZSkpKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0T3V0UmVmZXJlbmNlRmllbGRzKGVsZW1lbnRzKSB7XHJcbiAgICBsZXQgb3V0UmVmZXJlbmNlRmllbGRzID0gW107XHJcbiAgICBlbGVtZW50cy5mb3JFYWNoKGVsZW0gPT4ge1xyXG4gICAgICBpZiAoZWxlbS5yZWZlcmVuY2UpIHtcclxuICAgICAgICBvdXRSZWZlcmVuY2VGaWVsZHMucHVzaChlbGVtKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gb3V0UmVmZXJlbmNlRmllbGRzO1xyXG4gIH1cclxuXHJcbiAgZ2V0SW5SZWZlcmVuY2VzKGRtc09iamVjdDogRG1zT2JqZWN0KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBvYnMgPSBbXTtcclxuICAgIGxldCBpblJlZmVyZW5jZU1ldGFEYXRhcyA9IFtdO1xyXG4gICAgcmV0dXJuIHRoaXMuZ2V0SW5SZWZlcmVuY2VNZXRhRGF0YXMoZG1zT2JqZWN0KVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtZXJnZU1hcChtZXRhRGF0YXMgPT4ge1xyXG4gICAgICAgICAgICBtZXRhRGF0YXMuZm9yRWFjaChtZXRhRGF0YSA9PiB7XHJcbiAgICAgICAgICAgICAgaWYgKG1ldGFEYXRhLnJlbW90ZUVsZW1lbnQudHlwZSA9PT0gJ1JFRkVSRU5DRScgfHwgZG1zT2JqZWN0LmRhdGFbbWV0YURhdGEucmVtb3RlRWxlbWVudC5yZWZlcmVuY2UuZWxlbWVudC5zcGxpdCgnLicpWzFdXSkge1xyXG4gICAgICAgICAgICAgICAgbGV0IHF1ZXJ5ID0gdGhpcy5jcmVhdGVJblJlZmVyZW5jZVF1ZXJ5KGRtc09iamVjdCwgbWV0YURhdGEpO1xyXG4gICAgICAgICAgICAgICAgbGV0IG9iID0gdGhpcy5leGVjdXRlUXVlcnkocXVlcnkpO1xyXG4gICAgICAgICAgICAgICAgaW5SZWZlcmVuY2VNZXRhRGF0YXMucHVzaChtZXRhRGF0YSk7XHJcbiAgICAgICAgICAgICAgICBvYnMucHVzaChvYik7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgcmV0dXJuIG9icy5sZW5ndGggPiAwID8gZm9ya0pvaW4ob2JzKSA6IG9ic2VydmFibGVPZihbXSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgKSxcclxuICAgICAgICBtYXAocmVzdWx0cyA9PiB0aGlzLm1lcmdlUXVlcnlSZXN1bHRzKHJlc3VsdHMsIGluUmVmZXJlbmNlTWV0YURhdGFzKSlcclxuICAgICAgKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZXhlY3V0ZVF1ZXJ5KHF1ZXJ5OiBvYmplY3QpIHtcclxuICAgIHJldHVybiB0aGlzLnNlYXJjaFNlcnZpY2VcclxuICAgICAgLmV4ZWN1dGVRdWVyeShxdWVyeSwgdW5kZWZpbmVkLCAxMDAwMClcclxuICAgICAgLnBpcGUobWFwKHJlcyA9PiByZXMuaGl0cy5oaXRzKSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNyZWF0ZUluUmVmZXJlbmNlUXVlcnkoZG1zT2JqZWN0OiBEbXNPYmplY3QsIHJlZmVyZW5jZWRUeXBlKSB7XHJcbiAgICBsZXQgcXVlcnk7XHJcbiAgICBxdWVyeSA9IHtcclxuICAgICAgZmlsdGVyczoge30sXHJcbiAgICAgIGZpZWxkczogWyd0aXRsZScsICdkZXNjcmlwdGlvbicsICd0eXBlJ10sXHJcbiAgICAgIHR5cGVzOiBbcmVmZXJlbmNlZFR5cGUub2JqZWN0VHlwZS5xbmFtZV0sXHJcbiAgICAgIG9wdGlvbnM6IHtcclxuICAgICAgICBzdWdnZXN0OiB0cnVlLFxyXG4gICAgICAgIHNlYXJjaG1vZGU6ICdpZHhzJ1xyXG4gICAgICB9XHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0IHttdWx0aXNlbGVjdCwgcW5hbWV9ID0gcmVmZXJlbmNlZFR5cGUucmVtb3RlRWxlbWVudDtcclxuICAgIGlmIChyZWZlcmVuY2VkVHlwZS5yZW1vdGVFbGVtZW50LnR5cGUgPT09ICdTVFJJTkcnKSB7XHJcbiAgICAgIGNvbnN0IHJlZmVyZW5jZSA9IHJlZmVyZW5jZWRUeXBlLnJlbW90ZUVsZW1lbnQucmVmZXJlbmNlLmVsZW1lbnQuc3BsaXQoJy4nKVsxXTtcclxuICAgICAgcXVlcnkuZmlsdGVyc1txbmFtZV0gPSB7XHJcbiAgICAgICAgbzogbXVsdGlzZWxlY3QgPyAnaW4nIDogJ2VxJyxcclxuICAgICAgICB2MTogbXVsdGlzZWxlY3QgJiYgIUFycmF5LmlzQXJyYXkoZG1zT2JqZWN0LmRhdGFbcmVmZXJlbmNlXSkgPyBbZG1zT2JqZWN0LmRhdGFbcmVmZXJlbmNlXV0gOiBkbXNPYmplY3QuZGF0YVtyZWZlcmVuY2VdXHJcbiAgICAgIH07XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBxdWVyeS5maWx0ZXJzW3FuYW1lXSA9IHtcclxuICAgICAgICBvOiBtdWx0aXNlbGVjdCA/ICdpbicgOiAnZXEnLFxyXG4gICAgICAgIHYxOiBtdWx0aXNlbGVjdCA/IFtkbXNPYmplY3QuaWRdIDogZG1zT2JqZWN0LmlkXHJcbiAgICAgIH07XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcXVlcnk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldEluUmVmZXJlbmNlTWV0YURhdGFzKGRtc09iamVjdDogRG1zT2JqZWN0KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCB0eXBlcyA9IHRoaXMuc3lzdGVtU2VydmljZS5nZXRPYmplY3RUeXBlcygpO1xyXG4gICAgbGV0IHN1cGVyVHlwZXMgPSB0aGlzLmdldFN1cGVyVHlwZXMoZG1zT2JqZWN0LnR5cGVOYW1lLCB0eXBlcyk7XHJcbiAgICBsZXQgbWV0YURhdGFzID0gW107XHJcblxyXG4gICAgdHlwZXMuZm9yRWFjaChvYmplY3RUeXBlID0+IHtcclxuICAgICAgaWYgKCFvYmplY3RUeXBlLmlzQWJzdHJhY3QpIHtcclxuICAgICAgICBvYmplY3RUeXBlLmVsZW1lbnRzXHJcbiAgICAgICAgICAuZm9yRWFjaChlbGVtZW50ID0+IHtcclxuICAgICAgICAgICAgaWYgKGVsZW1lbnQucmVmZXJlbmNlICYmIChlbGVtZW50LnJlZmVyZW5jZS50eXBlID09PSBkbXNPYmplY3QudHlwZS5uYW1lIHx8IHRoaXMuaXNSZWZlcmVuY2VPblN1cGVyVHlwZShlbGVtZW50LnJlZmVyZW5jZS50eXBlLCBzdXBlclR5cGVzKSkpIHtcclxuICAgICAgICAgICAgICBsZXQgbWV0YURhdGEgPSB7XHJcbiAgICAgICAgICAgICAgICBncm91cEZpZWxkOiBvYmplY3RUeXBlLm5hbWUgKyBlbGVtZW50LmxhYmVsLFxyXG4gICAgICAgICAgICAgICAgb2JqZWN0VHlwZTogb2JqZWN0VHlwZSxcclxuICAgICAgICAgICAgICAgIHJlbW90ZUVsZW1lbnQ6IGVsZW1lbnRcclxuICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgIG1ldGFEYXRhcy5wdXNoKG1ldGFEYXRhKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIG9ic2VydmFibGVPZihtZXRhRGF0YXMpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc1JlZmVyZW5jZU9uU3VwZXJUeXBlKHR5cGVOYW1lLCBzdXBlclR5cGVzKSB7XHJcbiAgICBsZXQgaXNSZWZlcmVuY2VPblN1cGVyVHlwZSA9IGZhbHNlO1xyXG4gICAgc3VwZXJUeXBlcy5mb3JFYWNoKHN1cGVyVHlwZSA9PiB7XHJcbiAgICAgICAgaWYgKHN1cGVyVHlwZS5xbmFtZSA9PT0gdHlwZU5hbWUpIHtcclxuICAgICAgICAgIGlzUmVmZXJlbmNlT25TdXBlclR5cGUgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgKTtcclxuICAgIHJldHVybiBpc1JlZmVyZW5jZU9uU3VwZXJUeXBlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRTdXBlclR5cGVzKHR5cGVOYW1lLCB0eXBlcykge1xyXG4gICAgbGV0IHN1cGVyVHlwZXMgPSBbXTtcclxuICAgIGxldCB0eXBlRGVmaW5pdGlvbiA9IHR5cGVzLmZpbmQodCA9PiB0LnFuYW1lID09PSB0eXBlTmFtZSk7XHJcblxyXG4gICAgaWYgKHR5cGVEZWZpbml0aW9uICYmIHR5cGVEZWZpbml0aW9uLnN1cGVydHlwZXMpIHtcclxuICAgICAgdHlwZURlZmluaXRpb24uc3VwZXJ0eXBlc1xyXG4gICAgICAgIC5mb3JFYWNoKHNUeXBlID0+IHtcclxuICAgICAgICAgIHN1cGVyVHlwZXMgPSBzdXBlclR5cGVzLmNvbmNhdCh0aGlzLmdldFN1cGVyVHlwZXMoc1R5cGUsIHR5cGVzKSk7XHJcbiAgICAgICAgICBsZXQgc3VwZXJUeXBlID0gdHlwZXMuZmluZCh0ID0+IHQucW5hbWUgPT09IHNUeXBlKTtcclxuICAgICAgICAgIGlmIChzdXBlclR5cGUpIHtcclxuICAgICAgICAgICAgc3VwZXJUeXBlcy5wdXNoKHN1cGVyVHlwZSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gc3VwZXJUeXBlcztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0U3ViVHlwZXModHlwZU5hbWUsIHR5cGVzKSB7XHJcbiAgICBsZXQgc3ViVHlwZXMgPSBbXTtcclxuICAgIHR5cGVzLmZvckVhY2gob2JqZWN0VHlwZSA9PiB7XHJcbiAgICAgIGlmICghIW9iamVjdFR5cGUuc3VwZXJ0eXBlcy5maW5kKHNUID0+IHNUID09PSB0eXBlTmFtZSkpIHtcclxuICAgICAgICBzdWJUeXBlcy5wdXNoKG9iamVjdFR5cGUpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBzdWJUeXBlcztcclxuICB9XHJcblxyXG4gIGZldGNoSURSZWZlcmVuY2VNZXRhRGF0YSh2YWx1ZXMpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHF1ZXJ5ID0ge1xyXG4gICAgICB0ZXJtOiAnJyxcclxuICAgICAgZmllbGRzOiBbJ3RpdGxlJywgJ2Rlc2NyaXB0aW9uJywgJ3R5cGUnXSxcclxuICAgICAgb3B0aW9uczoge2V4cGVydG1vZGU6IHRydWV9XHJcbiAgICB9O1xyXG4gICAgdmFsdWVzLmZvckVhY2goKHZhbCwgaW5kZXgsIGFycikgPT4ge1xyXG4gICAgICBxdWVyeS50ZXJtICs9ICdfaWQ6JyArIHZhbCArIChpbmRleCA9PT0gYXJyLmxlbmd0aCAtIDEgPyAnJyA6ICcgfHwgJyk7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiAhcXVlcnkudGVybSA/IG9ic2VydmFibGVPZihbXSkgOiB0aGlzLmV4ZWN1dGVRdWVyeShxdWVyeSkucGlwZShcclxuICAgICAgbWFwKGhpdHMgPT4ge1xyXG4gICAgICAgIHJldHVybiBoaXRzLm1hcChoaXQgPT4ge1xyXG4gICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgaWQ6IGhpdC5fc291cmNlLmlkLFxyXG4gICAgICAgICAgICB0aXRsZTogaGl0Ll9zb3VyY2UudGl0bGUsXHJcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBoaXQuX3NvdXJjZS5kZXNjcmlwdGlvbixcclxuICAgICAgICAgICAgdHlwZTogaGl0Ll9zb3VyY2UudHlwZVxyXG4gICAgICAgICAgfTtcclxuICAgICAgICB9KTtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
266
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmZXJlbmNlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay1jb3JlL3JlZmVyZW5jZXMvcmVmZXJlbmNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLEdBQUcsRUFBRSxRQUFRLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBYSxRQUFRLEVBQUUsRUFBRSxJQUFJLFlBQVksRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUU5RCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxvREFBb0QsQ0FBQzs7O0FBR3BGLE1BQU0sT0FBTyxnQkFBZ0I7SUFFM0IsWUFBb0IsYUFBNEIsRUFDNUIsYUFBNEI7UUFENUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsa0JBQWEsR0FBYixhQUFhLENBQWU7SUFDaEQsQ0FBQztJQUdELFVBQVUsQ0FBQyxTQUFvQjtRQUM3QixNQUFNLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxTQUFTLENBQUMsRUFBRSxJQUFJLENBQUMscUJBQXFCLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztRQUMvRixPQUFPLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsRUFBRSxrQkFBa0IsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUMsbUJBQW1CLEVBQUUsa0JBQWtCLEVBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNoSSxDQUFDO0lBRU8sc0JBQXNCLENBQUMsU0FBb0I7UUFDakQsT0FBTyxJQUFJLENBQUMsd0JBQXdCLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUNsRCxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzFCLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNuRCxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUM7WUFDcEIsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDO0lBRU8scUJBQXFCLENBQUMsU0FBb0I7UUFDaEQsT0FBTyxJQUFJLENBQUMsdUJBQXVCLENBQUMsU0FBUyxDQUFDO2FBQzNDLElBQUksQ0FDSCxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxFQUFFO1lBQzFDLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxTQUFTLEVBQUUsY0FBYyxDQUFDLENBQUM7WUFDbkUsT0FBTyxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQ3BCLE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUVELGdCQUFnQixDQUFDLFNBQW9CO1FBQ25DLElBQUksR0FBRyxHQUFHLEVBQUUsQ0FBQztRQUNiLElBQUkscUJBQXFCLENBQUM7UUFDMUIsT0FBTyxJQUFJLENBQUMsd0JBQXdCLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUNsRCxRQUFRLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDaEIscUJBQXFCLEdBQUcsUUFBUSxDQUFDO1lBQ2pDLHFCQUFxQixDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFDdkMsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUNuRCxJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUN2QyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3BCLENBQUMsQ0FBQyxDQUFDO1lBQ0gsT0FBTyxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDM0QsQ0FBQyxDQUNGLEVBQ0QsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sRUFBRSxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBRU8saUJBQWlCLENBQUMsT0FBTyxFQUFFLFNBQVM7UUFDMUMsSUFBSSxZQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ3RCLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUU7WUFDaEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDakUsWUFBWSxHQUFHLFlBQVksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDN0MsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLFlBQVksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVPLHVCQUF1QixDQUFDLG9CQUFvQjtRQUNsRCxJQUFJLEtBQUssQ0FBQztRQUNWLElBQUksb0JBQW9CLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDdkMsS0FBSyxHQUFHO2dCQUNOLE9BQU8sRUFBRSxFQUFFO2dCQUNYLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxDQUFDO2dCQUN4QyxLQUFLLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDO2dCQUM3QyxPQUFPLEVBQUU7b0JBQ1AsT0FBTyxFQUFFLElBQUk7b0JBQ2IsVUFBVSxFQUFFLE1BQU07aUJBQ25CO2FBQ0YsQ0FBQztZQUVGLEtBQUssQ0FBQyxPQUFPLENBQUMsb0JBQW9CLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxHQUFHO2dCQUN4RCxDQUFDLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJO2dCQUMxRCxFQUFFLEVBQUUsb0JBQW9CLENBQUMsS0FBSzthQUMvQixDQUFDO1FBQ0osQ0FBQzthQUFNLENBQUM7WUFDTixLQUFLLEdBQUc7Z0JBQ04sSUFBSSxFQUFFLEVBQUU7Z0JBQ1IsTUFBTSxFQUFFLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQztnQkFDaEMsT0FBTyxFQUFFLEVBQUMsVUFBVSxFQUFFLElBQUksRUFBQztnQkFDM0IsS0FBSyxFQUFFLENBQUMsb0JBQW9CLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQzthQUM5QyxDQUFDO1lBQ0Ysb0JBQW9CLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUU7Z0JBQ3ZELEtBQUssQ0FBQyxJQUFJLElBQUksTUFBTSxHQUFHLEtBQUssR0FBRyxDQUFDLEtBQUssS0FBSyxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUMxRSxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFTyx3QkFBd0IsQ0FBQyxTQUFvQjtRQUNuRCxJQUFJLFNBQVMsR0FBRyxFQUFFLENBQUM7UUFDbkIsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUVoRCxJQUFJLFlBQVksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsUUFBUSxDQUFDO1FBQzNFLElBQUksa0JBQWtCLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRWxFLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNqQyxJQUFJLFVBQVUsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssS0FBSyxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ25FLElBQUksVUFBVSxJQUFJLFVBQVUsQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDeEMsSUFBSSxRQUFRLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUN4RCxRQUFRLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO29CQUN2QixJQUFJLGFBQWEsR0FBRyxLQUFLLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsS0FBSyxLQUFLLEtBQUssQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztvQkFDdkgsSUFBSSxNQUFNLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBQ3hDLElBQUksTUFBTSxFQUFFLENBQUM7d0JBQ1gsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQzs0QkFDM0IsTUFBTSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7d0JBQ3BCLENBQUM7d0JBQ0QsSUFBSSxRQUFRLEdBQUc7NEJBQ2IsVUFBVSxFQUFFLFVBQVUsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQzs0QkFDMUUsYUFBYSxFQUFFLGFBQWE7NEJBQzVCLFVBQVUsRUFBRSxPQUFPOzRCQUNuQixPQUFPLEVBQUUsS0FBSzs0QkFDZCxLQUFLLEVBQUUsTUFBTTt5QkFDZCxDQUFDO3dCQUNGLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7b0JBQzNCLENBQUM7Z0JBQ0gsQ0FBQyxDQUNGLENBQUE7WUFDSCxDQUFDO2lCQUFNLElBQUksVUFBVSxFQUFFLENBQUM7Z0JBQ3RCLElBQUksYUFBYSxHQUFHLEtBQUssQ0FBQyxJQUFJLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEtBQUssS0FBSyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO2dCQUMxSCxJQUFJLE1BQU0sR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDeEMsSUFBSSxNQUFNLEVBQUUsQ0FBQztvQkFDWCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO3dCQUMzQixNQUFNLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDcEIsQ0FBQztvQkFDRCxJQUFJLFFBQVEsR0FBRzt3QkFDYixVQUFVLEVBQUUsVUFBVSxDQUFDLElBQUksR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO3dCQUMxRSxhQUFhLEVBQUUsYUFBYTt3QkFDNUIsVUFBVSxFQUFFLFVBQVU7d0JBQ3RCLE9BQU8sRUFBRSxLQUFLO3dCQUNkLEtBQUssRUFBRSxNQUFNO3FCQUNkLENBQUM7b0JBQ0YsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDM0IsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sWUFBWSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQy9GLENBQUM7SUFFTyxxQkFBcUIsQ0FBQyxRQUFRO1FBQ3BDLElBQUksa0JBQWtCLEdBQUcsRUFBRSxDQUFDO1FBQzVCLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDdEIsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7Z0JBQ25CLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNoQyxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLGtCQUFrQixDQUFDO0lBQzVCLENBQUM7SUFFRCxlQUFlLENBQUMsU0FBb0I7UUFDbEMsSUFBSSxHQUFHLEdBQUcsRUFBRSxDQUFDO1FBQ2IsSUFBSSxvQkFBb0IsR0FBRyxFQUFFLENBQUM7UUFDOUIsT0FBTyxJQUFJLENBQUMsdUJBQXVCLENBQUMsU0FBUyxDQUFDO2FBQzNDLElBQUksQ0FDSCxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDakIsU0FBUyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFDM0IsSUFBSSxRQUFRLENBQUMsYUFBYSxDQUFDLElBQUksS0FBSyxXQUFXLElBQUksU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztvQkFDMUgsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsQ0FBQztvQkFDN0QsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDbEMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO29CQUNwQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNmLENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztZQUNILE9BQU8sR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzNELENBQUMsQ0FDRixFQUNELEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsb0JBQW9CLENBQUMsQ0FBQyxDQUN0RSxDQUFDO0lBQ04sQ0FBQztJQUVPLFlBQVksQ0FBQyxLQUFhO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLGFBQWE7YUFDdEIsWUFBWSxDQUFDLEtBQUssRUFBRSxTQUFTLEVBQUUsS0FBSyxDQUFDO2FBQ3JDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVPLHNCQUFzQixDQUFDLFNBQW9CLEVBQUUsY0FBYztRQUNqRSxJQUFJLEtBQUssQ0FBQztRQUNWLEtBQUssR0FBRztZQUNOLE9BQU8sRUFBRSxFQUFFO1lBQ1gsTUFBTSxFQUFFLENBQUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLENBQUM7WUFDeEMsS0FBSyxFQUFFLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUM7WUFDeEMsT0FBTyxFQUFFO2dCQUNQLE9BQU8sRUFBRSxJQUFJO2dCQUNiLFVBQVUsRUFBRSxNQUFNO2FBQ25CO1NBQ0YsQ0FBQztRQUVGLE1BQU0sRUFBQyxXQUFXLEVBQUUsS0FBSyxFQUFDLEdBQUcsY0FBYyxDQUFDLGFBQWEsQ0FBQztRQUMxRCxJQUFJLGNBQWMsQ0FBQyxhQUFhLENBQUMsSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ25ELE1BQU0sU0FBUyxHQUFHLGNBQWMsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDL0UsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRztnQkFDckIsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJO2dCQUM1QixFQUFFLEVBQUUsV0FBVyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQzthQUN2SCxDQUFDO1FBQ0osQ0FBQzthQUFNLENBQUM7WUFDTixLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHO2dCQUNyQixDQUFDLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUk7Z0JBQzVCLEVBQUUsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsRUFBRTthQUNoRCxDQUFDO1FBQ0osQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVPLHVCQUF1QixDQUFDLFNBQW9CO1FBQ2xELElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDaEQsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQy9ELElBQUksU0FBUyxHQUFHLEVBQUUsQ0FBQztRQUVuQixLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ3pCLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQzNCLFVBQVUsQ0FBQyxRQUFRO3FCQUNoQixPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7b0JBQ2pCLElBQUksT0FBTyxDQUFDLFNBQVMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsQ0FBQyxFQUFFLENBQUM7d0JBQzdJLElBQUksUUFBUSxHQUFHOzRCQUNiLFVBQVUsRUFBRSxVQUFVLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQyxLQUFLOzRCQUMzQyxVQUFVLEVBQUUsVUFBVTs0QkFDdEIsYUFBYSxFQUFFLE9BQU87eUJBQ3ZCLENBQUM7d0JBQ0YsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztvQkFDM0IsQ0FBQztnQkFDSCxDQUFDLENBQUMsQ0FBQztZQUNQLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFTyxzQkFBc0IsQ0FBQyxRQUFRLEVBQUUsVUFBVTtRQUNqRCxJQUFJLHNCQUFzQixHQUFHLEtBQUssQ0FBQztRQUNuQyxVQUFVLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQzNCLElBQUksU0FBUyxDQUFDLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztnQkFDakMsc0JBQXNCLEdBQUcsSUFBSSxDQUFDO1lBQ2hDLENBQUM7UUFDSCxDQUFDLENBQ0YsQ0FBQztRQUNGLE9BQU8sc0JBQXNCLENBQUM7SUFDaEMsQ0FBQztJQUVPLGFBQWEsQ0FBQyxRQUFRLEVBQUUsS0FBSztRQUNuQyxJQUFJLFVBQVUsR0FBRyxFQUFFLENBQUM7UUFDcEIsSUFBSSxjQUFjLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLEtBQUssUUFBUSxDQUFDLENBQUM7UUFFM0QsSUFBSSxjQUFjLElBQUksY0FBYyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2hELGNBQWMsQ0FBQyxVQUFVO2lCQUN0QixPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ2YsVUFBVSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztnQkFDakUsSUFBSSxTQUFTLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLEtBQUssS0FBSyxDQUFDLENBQUM7Z0JBQ25ELElBQUksU0FBUyxFQUFFLENBQUM7b0JBQ2QsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDN0IsQ0FBQztZQUNILENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQztRQUNELE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7SUFFTyxXQUFXLENBQUMsUUFBUSxFQUFFLEtBQUs7UUFDakMsSUFBSSxRQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLEtBQUssQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDekIsSUFBSSxDQUFDLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEtBQUssUUFBUSxDQUFDLEVBQUUsQ0FBQztnQkFDeEQsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUM1QixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQsd0JBQXdCLENBQUMsTUFBTTtRQUM3QixJQUFJLEtBQUssR0FBRztZQUNWLElBQUksRUFBRSxFQUFFO1lBQ1IsTUFBTSxFQUFFLENBQUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLENBQUM7WUFDeEMsT0FBTyxFQUFFLEVBQUMsVUFBVSxFQUFFLElBQUksRUFBQztTQUM1QixDQUFDO1FBQ0YsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUU7WUFDakMsS0FBSyxDQUFDLElBQUksSUFBSSxNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsS0FBSyxLQUFLLEdBQUcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3hFLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQ25FLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNULE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDcEIsT0FBTztvQkFDTCxFQUFFLEVBQUUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFO29CQUNsQixLQUFLLEVBQUUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLO29CQUN4QixXQUFXLEVBQUUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxXQUFXO29CQUNwQyxJQUFJLEVBQUUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJO2lCQUN2QixDQUFDO1lBQ0osQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQzs4R0E5UlUsZ0JBQWdCO2tIQUFoQixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge21hcCwgbWVyZ2VNYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge09ic2VydmFibGUsIGZvcmtKb2luLCBvZiBhcyBvYnNlcnZhYmxlT2Z9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtTZWFyY2hTZXJ2aWNlLCBTeXN0ZW1TZXJ2aWNlLCBEbXNPYmplY3R9IGZyb20gJ0Blby1zZGsvY29yZSc7XG5pbXBvcnQge1V0aWxpdGllc1NlcnZpY2V9IGZyb20gJy4uLy4uL2VvLWZyYW1ld29yay91dGlsL3NlcnZpY2VzL3V0aWxpdGllcy5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFJlZmVyZW5jZVNlcnZpY2Uge1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc2VhcmNoU2VydmljZTogU2VhcmNoU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBzeXN0ZW1TZXJ2aWNlOiBTeXN0ZW1TZXJ2aWNlKSB7XG4gIH1cblxuXG4gIGdldFF1ZXJpZXMoZG1zT2JqZWN0OiBEbXNPYmplY3QpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHJlc3VsdCA9IFt0aGlzLmdldE91dFJlZmVyZW5jZVF1ZXJpZXMoZG1zT2JqZWN0KSwgdGhpcy5nZXRJblJlZmVyZW5jZVF1ZXJpZXMoZG1zT2JqZWN0KV07XG4gICAgcmV0dXJuIGZvcmtKb2luKHJlc3VsdCkucGlwZShtYXAoKFtvdXRSZWZlcmVuY2VRdWVyaWVzLCBpblJlZmVyZW5jZVF1ZXJpZXNdKSA9PiAoe291dFJlZmVyZW5jZVF1ZXJpZXMsIGluUmVmZXJlbmNlUXVlcmllc30pKSk7XG4gIH1cblxuICBwcml2YXRlIGdldE91dFJlZmVyZW5jZVF1ZXJpZXMoZG1zT2JqZWN0OiBEbXNPYmplY3QpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmdldE91dFJlZmVyZW5jZU1ldGFEYXRhcyhkbXNPYmplY3QpLnBpcGUoXG4gICAgICBtYXAocmVzID0+IHJlcy5tYXAobWV0YURhdGEgPT4ge1xuICAgICAgICAgIGxldCBxdWVyeSA9IHRoaXMuY3JlYXRlT3V0UmVmZXJlbmNlUXVlcnkobWV0YURhdGEpO1xuICAgICAgICAgIGRlbGV0ZSBxdWVyeS5maWVsZHM7XG4gICAgICAgICAgcmV0dXJuIHF1ZXJ5O1xuICAgICAgICB9KSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRJblJlZmVyZW5jZVF1ZXJpZXMoZG1zT2JqZWN0OiBEbXNPYmplY3QpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRJblJlZmVyZW5jZU1ldGFEYXRhcyhkbXNPYmplY3QpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKHJlZlR5cGVzID0+IHJlZlR5cGVzLm1hcChyZWZlcmVuY2VkVHlwZSA9PiB7XG4gICAgICAgICAgICBsZXQgcXVlcnkgPSB0aGlzLmNyZWF0ZUluUmVmZXJlbmNlUXVlcnkoZG1zT2JqZWN0LCByZWZlcmVuY2VkVHlwZSk7XG4gICAgICAgICAgICBkZWxldGUgcXVlcnkuZmllbGRzO1xuICAgICAgICAgICAgcmV0dXJuIHF1ZXJ5O1xuICAgICAgICAgIH0pKSk7XG4gIH1cblxuICBnZXRPdXRSZWZlcmVuY2VzKGRtc09iamVjdDogRG1zT2JqZWN0KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgb2JzID0gW107XG4gICAgbGV0IG91dFJlZmVyZW5jZU1ldGFEYXRhcztcbiAgICByZXR1cm4gdGhpcy5nZXRPdXRSZWZlcmVuY2VNZXRhRGF0YXMoZG1zT2JqZWN0KS5waXBlKFxuICAgICAgbWVyZ2VNYXAocmVzcG9uc2UgPT4ge1xuICAgICAgICAgIG91dFJlZmVyZW5jZU1ldGFEYXRhcyA9IHJlc3BvbnNlO1xuICAgICAgICAgIG91dFJlZmVyZW5jZU1ldGFEYXRhcy5mb3JFYWNoKG1ldGFEYXRhID0+IHtcbiAgICAgICAgICAgIGxldCBxdWVyeSA9IHRoaXMuY3JlYXRlT3V0UmVmZXJlbmNlUXVlcnkobWV0YURhdGEpO1xuICAgICAgICAgICAgbGV0IHByb21pc2UgPSB0aGlzLmV4ZWN1dGVRdWVyeShxdWVyeSk7XG4gICAgICAgICAgICBvYnMucHVzaChwcm9taXNlKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgICByZXR1cm4gb2JzLmxlbmd0aCA+IDAgPyBmb3JrSm9pbihvYnMpIDogb2JzZXJ2YWJsZU9mKFtdKTtcbiAgICAgICAgfVxuICAgICAgKSxcbiAgICAgIG1hcChyZXN1bHRzID0+IHRoaXMubWVyZ2VRdWVyeVJlc3VsdHMocmVzdWx0cywgb3V0UmVmZXJlbmNlTWV0YURhdGFzKSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBtZXJnZVF1ZXJ5UmVzdWx0cyhyZXN1bHRzLCBtZXRhRGF0YXMpIHtcbiAgICBsZXQgbWVyZ2VkUmVzdWx0ID0gW107XG4gICAgcmVzdWx0cy5mb3JFYWNoKChyZXN1bHQsIGluZGV4KSA9PiB7XG4gICAgICByZXN1bHQuZm9yRWFjaCgoaGl0KSA9PiBoaXQuX3NvdXJjZS5tZXRhRGF0YSA9IG1ldGFEYXRhc1tpbmRleF0pO1xuICAgICAgbWVyZ2VkUmVzdWx0ID0gbWVyZ2VkUmVzdWx0LmNvbmNhdChyZXN1bHQpO1xuICAgIH0pO1xuICAgIHJldHVybiBtZXJnZWRSZXN1bHQubWFwKG1SID0+IG1SLl9zb3VyY2UpO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVPdXRSZWZlcmVuY2VRdWVyeShvdXRSZWZlcmVuY2VNZXRhRGF0YSkge1xuICAgIGxldCBxdWVyeTtcbiAgICBpZiAob3V0UmVmZXJlbmNlTWV0YURhdGEucmVtb3RlRWxlbWVudCkge1xuICAgICAgcXVlcnkgPSB7XG4gICAgICAgIGZpbHRlcnM6IHt9LFxuICAgICAgICBmaWVsZHM6IFsndGl0bGUnLCAnZGVzY3JpcHRpb24nLCAndHlwZSddLFxuICAgICAgICB0eXBlczogW291dFJlZmVyZW5jZU1ldGFEYXRhLm9iamVjdFR5cGUubmFtZV0sXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBzdWdnZXN0OiB0cnVlLFxuICAgICAgICAgIHNlYXJjaG1vZGU6ICdpZHhzJ1xuICAgICAgICB9XG4gICAgICB9O1xuXG4gICAgICBxdWVyeS5maWx0ZXJzW291dFJlZmVyZW5jZU1ldGFEYXRhLnJlbW90ZUVsZW1lbnQucW5hbWVdID0ge1xuICAgICAgICBvOiBBcnJheS5pc0FycmF5KG91dFJlZmVyZW5jZU1ldGFEYXRhLnZhbHVlKSA/ICdpbicgOiAnZXEnLFxuICAgICAgICB2MTogb3V0UmVmZXJlbmNlTWV0YURhdGEudmFsdWVcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHF1ZXJ5ID0ge1xuICAgICAgICB0ZXJtOiAnJyxcbiAgICAgICAgZmllbGRzOiBbJ3RpdGxlJywgJ2Rlc2NyaXB0aW9uJ10sXG4gICAgICAgIG9wdGlvbnM6IHtleHBlcnRtb2RlOiB0cnVlfSxcbiAgICAgICAgdHlwZXM6IFtvdXRSZWZlcmVuY2VNZXRhRGF0YS5vYmplY3RUeXBlLm5hbWVdXG4gICAgICB9O1xuICAgICAgb3V0UmVmZXJlbmNlTWV0YURhdGEudmFsdWUuZm9yRWFjaCgodmFsdWUsIGluZGV4LCBhcnIpID0+IHtcbiAgICAgICAgcXVlcnkudGVybSArPSAnX2lkOicgKyB2YWx1ZSArIChpbmRleCA9PT0gYXJyLmxlbmd0aCAtIDEgPyAnJyA6ICcgfHwgJyk7XG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHF1ZXJ5O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRPdXRSZWZlcmVuY2VNZXRhRGF0YXMoZG1zT2JqZWN0OiBEbXNPYmplY3QpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBtZXRhRGF0YXMgPSBbXTtcbiAgICBsZXQgdHlwZXMgPSB0aGlzLnN5c3RlbVNlcnZpY2UuZ2V0T2JqZWN0VHlwZXMoKTtcblxuICAgIGxldCBmb3JtRWxlbWVudHMgPSB0eXBlcy5maW5kKHQgPT4gdC5uYW1lID09PSBkbXNPYmplY3QudHlwZU5hbWUpLmVsZW1lbnRzO1xuICAgIGxldCBvdXRSZWZlcmVuY2VGaWVsZHMgPSB0aGlzLmdldE91dFJlZmVyZW5jZUZpZWxkcyhmb3JtRWxlbWVudHMpO1xuXG4gICAgb3V0UmVmZXJlbmNlRmllbGRzLmZvckVhY2goZmllbGQgPT4ge1xuICAgICAgbGV0IG9iamVjdFR5cGUgPSB0eXBlcy5maW5kKHQgPT4gdC5xbmFtZSA9PT0gZmllbGQucmVmZXJlbmNlLnR5cGUpO1xuICAgICAgaWYgKG9iamVjdFR5cGUgJiYgb2JqZWN0VHlwZS5pc0Fic3RyYWN0KSB7XG4gICAgICAgIGxldCBzdWJUeXBlcyA9IHRoaXMuZ2V0U3ViVHlwZXMob2JqZWN0VHlwZS5uYW1lLCB0eXBlcyk7XG4gICAgICAgIHN1YlR5cGVzLmZvckVhY2goc3ViVHlwZSA9PiB7XG4gICAgICAgICAgICBsZXQgcmVtb3RlRWxlbWVudCA9IGZpZWxkLnR5cGUgPT09ICdTVFJJTkcnID8gc3ViVHlwZS5lbGVtZW50cy5maW5kKGVsID0+IGVsLnFuYW1lID09PSBmaWVsZC5yZWZlcmVuY2UuZWxlbWVudCkgOiBudWxsO1xuICAgICAgICAgICAgbGV0IHZhbHVlcyA9IGRtc09iamVjdC5kYXRhW2ZpZWxkLm5hbWVdO1xuICAgICAgICAgICAgaWYgKHZhbHVlcykge1xuICAgICAgICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkodmFsdWVzKSkge1xuICAgICAgICAgICAgICAgIHZhbHVlcyA9IFt2YWx1ZXNdO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGxldCBtZXRhRGF0YSA9IHtcbiAgICAgICAgICAgICAgICBncm91cEZpZWxkOiBvYmplY3RUeXBlLm5hbWUgKyAocmVtb3RlRWxlbWVudCA/IHJlbW90ZUVsZW1lbnQubGFiZWwgOiAnSUQnKSxcbiAgICAgICAgICAgICAgICByZW1vdGVFbGVtZW50OiByZW1vdGVFbGVtZW50LFxuICAgICAgICAgICAgICAgIG9iamVjdFR5cGU6IHN1YlR5cGUsXG4gICAgICAgICAgICAgICAgZWxlbWVudDogZmllbGQsXG4gICAgICAgICAgICAgICAgdmFsdWU6IHZhbHVlc1xuICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICBtZXRhRGF0YXMucHVzaChtZXRhRGF0YSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICApXG4gICAgICB9IGVsc2UgaWYgKG9iamVjdFR5cGUpIHtcbiAgICAgICAgbGV0IHJlbW90ZUVsZW1lbnQgPSBmaWVsZC50eXBlID09PSAnU1RSSU5HJyA/IG9iamVjdFR5cGUuZWxlbWVudHMuZmluZChlbCA9PiBlbC5xbmFtZSA9PT0gZmllbGQucmVmZXJlbmNlLmVsZW1lbnQpIDogbnVsbDtcbiAgICAgICAgbGV0IHZhbHVlcyA9IGRtc09iamVjdC5kYXRhW2ZpZWxkLm5hbWVdO1xuICAgICAgICBpZiAodmFsdWVzKSB7XG4gICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHZhbHVlcykpIHtcbiAgICAgICAgICAgIHZhbHVlcyA9IFt2YWx1ZXNdO1xuICAgICAgICAgIH1cbiAgICAgICAgICBsZXQgbWV0YURhdGEgPSB7XG4gICAgICAgICAgICBncm91cEZpZWxkOiBvYmplY3RUeXBlLm5hbWUgKyAocmVtb3RlRWxlbWVudCA/IHJlbW90ZUVsZW1lbnQubGFiZWwgOiAnSUQnKSxcbiAgICAgICAgICAgIHJlbW90ZUVsZW1lbnQ6IHJlbW90ZUVsZW1lbnQsXG4gICAgICAgICAgICBvYmplY3RUeXBlOiBvYmplY3RUeXBlLFxuICAgICAgICAgICAgZWxlbWVudDogZmllbGQsXG4gICAgICAgICAgICB2YWx1ZTogdmFsdWVzXG4gICAgICAgICAgfTtcbiAgICAgICAgICBtZXRhRGF0YXMucHVzaChtZXRhRGF0YSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiBvYnNlcnZhYmxlT2YobWV0YURhdGFzLmZpbHRlcihtZXRhRGF0YSA9PiAhVXRpbGl0aWVzU2VydmljZS5pc0VtcHR5KG1ldGFEYXRhLnZhbHVlKSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRPdXRSZWZlcmVuY2VGaWVsZHMoZWxlbWVudHMpIHtcbiAgICBsZXQgb3V0UmVmZXJlbmNlRmllbGRzID0gW107XG4gICAgZWxlbWVudHMuZm9yRWFjaChlbGVtID0+IHtcbiAgICAgIGlmIChlbGVtLnJlZmVyZW5jZSkge1xuICAgICAgICBvdXRSZWZlcmVuY2VGaWVsZHMucHVzaChlbGVtKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gb3V0UmVmZXJlbmNlRmllbGRzO1xuICB9XG5cbiAgZ2V0SW5SZWZlcmVuY2VzKGRtc09iamVjdDogRG1zT2JqZWN0KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgb2JzID0gW107XG4gICAgbGV0IGluUmVmZXJlbmNlTWV0YURhdGFzID0gW107XG4gICAgcmV0dXJuIHRoaXMuZ2V0SW5SZWZlcmVuY2VNZXRhRGF0YXMoZG1zT2JqZWN0KVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1lcmdlTWFwKG1ldGFEYXRhcyA9PiB7XG4gICAgICAgICAgICBtZXRhRGF0YXMuZm9yRWFjaChtZXRhRGF0YSA9PiB7XG4gICAgICAgICAgICAgIGlmIChtZXRhRGF0YS5yZW1vdGVFbGVtZW50LnR5cGUgPT09ICdSRUZFUkVOQ0UnIHx8IGRtc09iamVjdC5kYXRhW21ldGFEYXRhLnJlbW90ZUVsZW1lbnQucmVmZXJlbmNlLmVsZW1lbnQuc3BsaXQoJy4nKVsxXV0pIHtcbiAgICAgICAgICAgICAgICBsZXQgcXVlcnkgPSB0aGlzLmNyZWF0ZUluUmVmZXJlbmNlUXVlcnkoZG1zT2JqZWN0LCBtZXRhRGF0YSk7XG4gICAgICAgICAgICAgICAgbGV0IG9iID0gdGhpcy5leGVjdXRlUXVlcnkocXVlcnkpO1xuICAgICAgICAgICAgICAgIGluUmVmZXJlbmNlTWV0YURhdGFzLnB1c2gobWV0YURhdGEpO1xuICAgICAgICAgICAgICAgIG9icy5wdXNoKG9iKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm4gb2JzLmxlbmd0aCA+IDAgPyBmb3JrSm9pbihvYnMpIDogb2JzZXJ2YWJsZU9mKFtdKTtcbiAgICAgICAgICB9XG4gICAgICAgICksXG4gICAgICAgIG1hcChyZXN1bHRzID0+IHRoaXMubWVyZ2VRdWVyeVJlc3VsdHMocmVzdWx0cywgaW5SZWZlcmVuY2VNZXRhRGF0YXMpKVxuICAgICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZXhlY3V0ZVF1ZXJ5KHF1ZXJ5OiBvYmplY3QpIHtcbiAgICByZXR1cm4gdGhpcy5zZWFyY2hTZXJ2aWNlXG4gICAgICAuZXhlY3V0ZVF1ZXJ5KHF1ZXJ5LCB1bmRlZmluZWQsIDEwMDAwKVxuICAgICAgLnBpcGUobWFwKHJlcyA9PiByZXMuaGl0cy5oaXRzKSk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUluUmVmZXJlbmNlUXVlcnkoZG1zT2JqZWN0OiBEbXNPYmplY3QsIHJlZmVyZW5jZWRUeXBlKSB7XG4gICAgbGV0IHF1ZXJ5O1xuICAgIHF1ZXJ5ID0ge1xuICAgICAgZmlsdGVyczoge30sXG4gICAgICBmaWVsZHM6IFsndGl0bGUnLCAnZGVzY3JpcHRpb24nLCAndHlwZSddLFxuICAgICAgdHlwZXM6IFtyZWZlcmVuY2VkVHlwZS5vYmplY3RUeXBlLnFuYW1lXSxcbiAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgc3VnZ2VzdDogdHJ1ZSxcbiAgICAgICAgc2VhcmNobW9kZTogJ2lkeHMnXG4gICAgICB9XG4gICAgfTtcblxuICAgIGNvbnN0IHttdWx0aXNlbGVjdCwgcW5hbWV9ID0gcmVmZXJlbmNlZFR5cGUucmVtb3RlRWxlbWVudDtcbiAgICBpZiAocmVmZXJlbmNlZFR5cGUucmVtb3RlRWxlbWVudC50eXBlID09PSAnU1RSSU5HJykge1xuICAgICAgY29uc3QgcmVmZXJlbmNlID0gcmVmZXJlbmNlZFR5cGUucmVtb3RlRWxlbWVudC5yZWZlcmVuY2UuZWxlbWVudC5zcGxpdCgnLicpWzFdO1xuICAgICAgcXVlcnkuZmlsdGVyc1txbmFtZV0gPSB7XG4gICAgICAgIG86IG11bHRpc2VsZWN0ID8gJ2luJyA6ICdlcScsXG4gICAgICAgIHYxOiBtdWx0aXNlbGVjdCAmJiAhQXJyYXkuaXNBcnJheShkbXNPYmplY3QuZGF0YVtyZWZlcmVuY2VdKSA/IFtkbXNPYmplY3QuZGF0YVtyZWZlcmVuY2VdXSA6IGRtc09iamVjdC5kYXRhW3JlZmVyZW5jZV1cbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHF1ZXJ5LmZpbHRlcnNbcW5hbWVdID0ge1xuICAgICAgICBvOiBtdWx0aXNlbGVjdCA/ICdpbicgOiAnZXEnLFxuICAgICAgICB2MTogbXVsdGlzZWxlY3QgPyBbZG1zT2JqZWN0LmlkXSA6IGRtc09iamVjdC5pZFxuICAgICAgfTtcbiAgICB9XG4gICAgcmV0dXJuIHF1ZXJ5O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRJblJlZmVyZW5jZU1ldGFEYXRhcyhkbXNPYmplY3Q6IERtc09iamVjdCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHR5cGVzID0gdGhpcy5zeXN0ZW1TZXJ2aWNlLmdldE9iamVjdFR5cGVzKCk7XG4gICAgbGV0IHN1cGVyVHlwZXMgPSB0aGlzLmdldFN1cGVyVHlwZXMoZG1zT2JqZWN0LnR5cGVOYW1lLCB0eXBlcyk7XG4gICAgbGV0IG1ldGFEYXRhcyA9IFtdO1xuXG4gICAgdHlwZXMuZm9yRWFjaChvYmplY3RUeXBlID0+IHtcbiAgICAgIGlmICghb2JqZWN0VHlwZS5pc0Fic3RyYWN0KSB7XG4gICAgICAgIG9iamVjdFR5cGUuZWxlbWVudHNcbiAgICAgICAgICAuZm9yRWFjaChlbGVtZW50ID0+IHtcbiAgICAgICAgICAgIGlmIChlbGVtZW50LnJlZmVyZW5jZSAmJiAoZWxlbWVudC5yZWZlcmVuY2UudHlwZSA9PT0gZG1zT2JqZWN0LnR5cGUubmFtZSB8fCB0aGlzLmlzUmVmZXJlbmNlT25TdXBlclR5cGUoZWxlbWVudC5yZWZlcmVuY2UudHlwZSwgc3VwZXJUeXBlcykpKSB7XG4gICAgICAgICAgICAgIGxldCBtZXRhRGF0YSA9IHtcbiAgICAgICAgICAgICAgICBncm91cEZpZWxkOiBvYmplY3RUeXBlLm5hbWUgKyBlbGVtZW50LmxhYmVsLFxuICAgICAgICAgICAgICAgIG9iamVjdFR5cGU6IG9iamVjdFR5cGUsXG4gICAgICAgICAgICAgICAgcmVtb3RlRWxlbWVudDogZWxlbWVudFxuICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICBtZXRhRGF0YXMucHVzaChtZXRhRGF0YSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIG9ic2VydmFibGVPZihtZXRhRGF0YXMpO1xuICB9XG5cbiAgcHJpdmF0ZSBpc1JlZmVyZW5jZU9uU3VwZXJUeXBlKHR5cGVOYW1lLCBzdXBlclR5cGVzKSB7XG4gICAgbGV0IGlzUmVmZXJlbmNlT25TdXBlclR5cGUgPSBmYWxzZTtcbiAgICBzdXBlclR5cGVzLmZvckVhY2goc3VwZXJUeXBlID0+IHtcbiAgICAgICAgaWYgKHN1cGVyVHlwZS5xbmFtZSA9PT0gdHlwZU5hbWUpIHtcbiAgICAgICAgICBpc1JlZmVyZW5jZU9uU3VwZXJUeXBlID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICk7XG4gICAgcmV0dXJuIGlzUmVmZXJlbmNlT25TdXBlclR5cGU7XG4gIH1cblxuICBwcml2YXRlIGdldFN1cGVyVHlwZXModHlwZU5hbWUsIHR5cGVzKSB7XG4gICAgbGV0IHN1cGVyVHlwZXMgPSBbXTtcbiAgICBsZXQgdHlwZURlZmluaXRpb24gPSB0eXBlcy5maW5kKHQgPT4gdC5xbmFtZSA9PT0gdHlwZU5hbWUpO1xuXG4gICAgaWYgKHR5cGVEZWZpbml0aW9uICYmIHR5cGVEZWZpbml0aW9uLnN1cGVydHlwZXMpIHtcbiAgICAgIHR5cGVEZWZpbml0aW9uLnN1cGVydHlwZXNcbiAgICAgICAgLmZvckVhY2goc1R5cGUgPT4ge1xuICAgICAgICAgIHN1cGVyVHlwZXMgPSBzdXBlclR5cGVzLmNvbmNhdCh0aGlzLmdldFN1cGVyVHlwZXMoc1R5cGUsIHR5cGVzKSk7XG4gICAgICAgICAgbGV0IHN1cGVyVHlwZSA9IHR5cGVzLmZpbmQodCA9PiB0LnFuYW1lID09PSBzVHlwZSk7XG4gICAgICAgICAgaWYgKHN1cGVyVHlwZSkge1xuICAgICAgICAgICAgc3VwZXJUeXBlcy5wdXNoKHN1cGVyVHlwZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHN1cGVyVHlwZXM7XG4gIH1cblxuICBwcml2YXRlIGdldFN1YlR5cGVzKHR5cGVOYW1lLCB0eXBlcykge1xuICAgIGxldCBzdWJUeXBlcyA9IFtdO1xuICAgIHR5cGVzLmZvckVhY2gob2JqZWN0VHlwZSA9PiB7XG4gICAgICBpZiAoISFvYmplY3RUeXBlLnN1cGVydHlwZXMuZmluZChzVCA9PiBzVCA9PT0gdHlwZU5hbWUpKSB7XG4gICAgICAgIHN1YlR5cGVzLnB1c2gob2JqZWN0VHlwZSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIHN1YlR5cGVzO1xuICB9XG5cbiAgZmV0Y2hJRFJlZmVyZW5jZU1ldGFEYXRhKHZhbHVlcyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHF1ZXJ5ID0ge1xuICAgICAgdGVybTogJycsXG4gICAgICBmaWVsZHM6IFsndGl0bGUnLCAnZGVzY3JpcHRpb24nLCAndHlwZSddLFxuICAgICAgb3B0aW9uczoge2V4cGVydG1vZGU6IHRydWV9XG4gICAgfTtcbiAgICB2YWx1ZXMuZm9yRWFjaCgodmFsLCBpbmRleCwgYXJyKSA9PiB7XG4gICAgICBxdWVyeS50ZXJtICs9ICdfaWQ6JyArIHZhbCArIChpbmRleCA9PT0gYXJyLmxlbmd0aCAtIDEgPyAnJyA6ICcgfHwgJyk7XG4gICAgfSk7XG4gICAgcmV0dXJuICFxdWVyeS50ZXJtID8gb2JzZXJ2YWJsZU9mKFtdKSA6IHRoaXMuZXhlY3V0ZVF1ZXJ5KHF1ZXJ5KS5waXBlKFxuICAgICAgbWFwKGhpdHMgPT4ge1xuICAgICAgICByZXR1cm4gaGl0cy5tYXAoaGl0ID0+IHtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaWQ6IGhpdC5fc291cmNlLmlkLFxuICAgICAgICAgICAgdGl0bGU6IGhpdC5fc291cmNlLnRpdGxlLFxuICAgICAgICAgICAgZGVzY3JpcHRpb246IGhpdC5fc291cmNlLmRlc2NyaXB0aW9uLFxuICAgICAgICAgICAgdHlwZTogaGl0Ll9zb3VyY2UudHlwZVxuICAgICAgICAgIH07XG4gICAgICAgIH0pO1xuICAgICAgfSlcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -26,4 +26,4 @@ export class AuthGuard {
|
|
|
26
26
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: AuthGuard, decorators: [{
|
|
27
27
|
type: Injectable
|
|
28
28
|
}], ctorParameters: () => [{ type: i1.AuthService }, { type: i2.AgentService }, { type: i3.Router }] });
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1ndWFyZC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1mcmFtZXdvcmstY29yZS9yb3V0ZS1ndWFyZHMvYXV0aC9hdXRoLWd1YXJkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ25DLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7Ozs7O0FBTXpDLE1BQU0sT0FBTyxTQUFTO0lBRXBCLFlBQW9CLFdBQXdCLEVBQVUsWUFBMEIsRUFBVSxNQUFjO1FBQXBGLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQVUsaUJBQVksR0FBWixZQUFZLENBQWM7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFRO0lBQ3hHLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBNkIsRUFBRSxLQUEwQjtRQUVuRSxJQUFJLENBQUMsWUFBWSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDaEYsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQ3pDLEdBQUcsQ0FBQyxDQUFDLGFBQXNCLEVBQUUsRUFBRTtZQUM3QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7Z0JBQ25CLE1BQU0sYUFBYSxHQUFxQixFQUFDLFdBQVcsRUFBRSxFQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsR0FBRyxFQUFDLEVBQUMsQ0FBQztnQkFDOUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxhQUFhLENBQUMsQ0FBQztZQUNsRCxDQUFDO1lBQ0QsT0FBTyxhQUFhLENBQUM7UUFDdkIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7OEdBakJVLFNBQVM7a0hBQVQsU0FBUzs7MkZBQVQsU0FBUztrQkFEckIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWdlbnRTZXJ2aWNlfSBmcm9tICcuLy4uLy4uL2FnZW50L2FnZW50LnNlcnZpY2UnO1xuXG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIFJvdXRlciwgUm91dGVyU3RhdGVTbmFwc2hvdCwgTmF2aWdhdGlvbkV4dHJhcyB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge0F1dGhTZXJ2aWNlfSBmcm9tICdAZW8tc2RrL2NvcmUnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEF1dGhHdWFyZCAge1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlLCBwcml2YXRlIGFnZW50U2VydmljZTogQWdlbnRTZXJ2aWNlLCBwcml2YXRlIHJvdXRlcjogUm91dGVyKSB7XG4gIH1cblxuICBjYW5BY3RpdmF0ZShyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgc3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3QpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHwgUHJvbWlzZTxib29sZWFuPiB8IGJvb2xlYW4ge1xuXG4gICAgdGhpcy5hZ2VudFNlcnZpY2Uuc2V0QWdlbnRTdGF0dXMocm91dGUucXVlcnlQYXJhbXNbJ2Nvbm5lY3RhZ2VudCddKS5zdWJzY3JpYmUoKTtcbiAgICByZXR1cm4gdGhpcy5hdXRoU2VydmljZS5hdXRoZW50aWNhdGVkJC5waXBlKFxuICAgICAgbWFwKChhdXRoZW50aWNhdGVkOiBib29sZWFuKSA9PiB7XG4gICAgICAgIGlmICghYXV0aGVudGljYXRlZCkge1xuICAgICAgICAgIGNvbnN0IHVyaVBhcmFtUXVlcnk6IE5hdmlnYXRpb25FeHRyYXMgPSB7cXVlcnlQYXJhbXM6IHtyZXR1cm5Vcmw6IHN0YXRlLnVybH19O1xuICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2VudGVyJ10sIHVyaVBhcmFtUXVlcnkpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBhdXRoZW50aWNhdGVkO1xuICAgICAgfSlcbiAgICApO1xuICB9XG59XG4iXX0=
|
package/esm2022/app/eo-framework-core/route-guards/capabilities/capabilities-guard.service.mjs
CHANGED
|
@@ -52,4 +52,4 @@ export class CapabilitiesGuard {
|
|
|
52
52
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: CapabilitiesGuard, decorators: [{
|
|
53
53
|
type: Injectable
|
|
54
54
|
}], ctorParameters: () => [{ type: i1.AuthService }, { type: i2.Router }, { type: i1.CapabilitiesService }] });
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FwYWJpbGl0aWVzLWd1YXJkLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay1jb3JlL3JvdXRlLWd1YXJkcy9jYXBhYmlsaXRpZXMvY2FwYWJpbGl0aWVzLWd1YXJkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ25DLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7Ozs7QUFNekMsTUFBTSxPQUFPLGlCQUFpQjtJQUU1QixZQUFvQixJQUFpQixFQUNqQixNQUFjLEVBQ2QsWUFBaUM7UUFGakMsU0FBSSxHQUFKLElBQUksQ0FBYTtRQUNqQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsaUJBQVksR0FBWixZQUFZLENBQXFCO0lBQ3JELENBQUM7SUFFRCxXQUFXLENBQUMsS0FBNkIsRUFBRSxLQUEwQjtRQUVuRSxNQUFNLGFBQWEsR0FBRyxZQUFZLENBQUM7UUFDbkMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUN0QyxDQUFDLGFBQWEsRUFBRSxFQUFFO1lBRWhCLElBQUksYUFBYSxFQUFFLENBQUM7Z0JBQ2xCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsSUFBSSxLQUFLLENBQUMsR0FBRyxLQUFLLFVBQVUsRUFBRSxDQUFDO29CQUMzRSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7b0JBQ3RDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDakIsQ0FBQztxQkFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxRQUFRLEVBQUUsQ0FBQztvQkFDL0UsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO29CQUN0QyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ2pCLENBQUM7cUJBQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssZ0JBQWdCLEVBQUUsQ0FBQztvQkFDL0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO29CQUN0QyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ2pCLENBQUM7cUJBQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssVUFBVSxFQUFFLENBQUM7b0JBQy9FLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztvQkFDdEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNqQixDQUFDO3FCQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsSUFBSSxLQUFLLENBQUMsR0FBRyxLQUFLLFlBQVksRUFBRSxDQUFDO29CQUN2RixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7b0JBQ3RDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDakIsQ0FBQztxQkFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxpQkFBaUIsRUFBRSxDQUFDO29CQUNoRyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7b0JBQ3RDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDakIsQ0FBQztxQkFBTSxDQUFDO29CQUNOLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDaEIsQ0FBQztZQUNILENBQUM7aUJBQU0sQ0FBQztnQkFDTixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDaEIsQ0FBQztRQUNILENBQUMsQ0FDRixDQUFDLENBQUM7SUFDTCxDQUFDOzhHQXhDVSxpQkFBaUI7a0hBQWpCLGlCQUFpQjs7MkZBQWpCLGlCQUFpQjtrQkFEN0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbIlxuaW1wb3J0IHttYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBSb3V0ZXIsIFJvdXRlclN0YXRlU25hcHNob3QgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7QXV0aFNlcnZpY2UsIENhcGFiaWxpdGllc1NlcnZpY2V9IGZyb20gJ0Blby1zZGsvY29yZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDYXBhYmlsaXRpZXNHdWFyZCAge1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYXV0aDogQXV0aFNlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgICAgICAgICAgIHByaXZhdGUgY2FwYWJpbGl0aWVzOiBDYXBhYmlsaXRpZXNTZXJ2aWNlKSB7XG4gIH1cblxuICBjYW5BY3RpdmF0ZShyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgc3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3QpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHwgUHJvbWlzZTxib29sZWFuPiB8IGJvb2xlYW4ge1xuXG4gICAgY29uc3Qgbm90Rm91bmRSb3V0ZSA9ICcvbm90LWZvdW5kJztcbiAgICByZXR1cm4gdGhpcy5hdXRoLmF1dGhlbnRpY2F0ZWQkLnBpcGUobWFwKFxuICAgICAgKGF1dGhlbnRpY2F0ZWQpID0+IHtcblxuICAgICAgICBpZiAoYXV0aGVudGljYXRlZCkge1xuICAgICAgICAgIGlmICghdGhpcy5jYXBhYmlsaXRpZXMuaGFzQ2FwYWJpbGl0eSgnaW50cmF5JykgJiYgc3RhdGUudXJsID09PSAnL3ByZXBhcmUnKSB7XG4gICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbbm90Rm91bmRSb3V0ZV0pO1xuICAgICAgICAgICAgcmV0dXJuIChmYWxzZSk7XG4gICAgICAgICAgfSBlbHNlIGlmICghdGhpcy5jYXBhYmlsaXRpZXMuaGFzQ2FwYWJpbGl0eSgnaW5ib3gnKSAmJiBzdGF0ZS51cmwgPT09ICcvaW5ib3gnKSB7XG4gICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbbm90Rm91bmRSb3V0ZV0pO1xuICAgICAgICAgICAgcmV0dXJuIChmYWxzZSk7XG4gICAgICAgICAgfSBlbHNlIGlmICghdGhpcy5jYXBhYmlsaXRpZXMuaGFzQ2FwYWJpbGl0eSgnbm90aWZpY2F0aW9ucycpICYmIHN0YXRlLnVybCA9PT0gJy9ub3RpZmljYXRpb25zJykge1xuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW25vdEZvdW5kUm91dGVdKTtcbiAgICAgICAgICAgIHJldHVybiAoZmFsc2UpO1xuICAgICAgICAgIH0gZWxzZSBpZiAoIXRoaXMuY2FwYWJpbGl0aWVzLmhhc0NhcGFiaWxpdHkoJ2JwbScpICYmIHN0YXRlLnVybCA9PT0gJy9wcm9jZXNzJykge1xuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW25vdEZvdW5kUm91dGVdKTtcbiAgICAgICAgICAgIHJldHVybiAoZmFsc2UpO1xuICAgICAgICAgIH0gZWxzZSBpZiAoIXRoaXMuY2FwYWJpbGl0aWVzLmhhc0NhcGFiaWxpdHkoJ2Zhdm9yaXRlcycpICYmIHN0YXRlLnVybCA9PT0gJy9mYXZvcml0ZXMnKSB7XG4gICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbbm90Rm91bmRSb3V0ZV0pO1xuICAgICAgICAgICAgcmV0dXJuIChmYWxzZSk7XG4gICAgICAgICAgfSBlbHNlIGlmICghdGhpcy5jYXBhYmlsaXRpZXMuaGFzQ2FwYWJpbGl0eSgnc3RvcmVkcXVlcmllcycpICYmIHN0YXRlLnVybCA9PT0gJy9zdG9yZWQtcXVlcmllcycpIHtcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtub3RGb3VuZFJvdXRlXSk7XG4gICAgICAgICAgICByZXR1cm4gKGZhbHNlKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuICh0cnVlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuICh0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICkpO1xuICB9XG59XG4iXX0=
|
|
@@ -64,7 +64,11 @@ export class AppSearchService {
|
|
|
64
64
|
}
|
|
65
65
|
setDefaultAggs() {
|
|
66
66
|
this.aggs = {
|
|
67
|
-
type: {}
|
|
67
|
+
type: {},
|
|
68
|
+
mimetypegroup: {},
|
|
69
|
+
filesize: {},
|
|
70
|
+
created: {},
|
|
71
|
+
modified: {},
|
|
68
72
|
};
|
|
69
73
|
}
|
|
70
74
|
// helper method for sorting the entries of an object type group
|
|
@@ -405,4 +409,4 @@ export class AppSearchService {
|
|
|
405
409
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: AppSearchService, decorators: [{
|
|
406
410
|
type: Injectable
|
|
407
411
|
}], ctorParameters: () => [{ type: i1.SearchService }, { type: i1.EventService }, { type: i1.SystemService }, { type: i2.TranslateService }] });
|
|
408
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXNlYXJjaC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1mcmFtZXdvcmstY29yZS9zZWFyY2gvYXBwLXNlYXJjaC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxJQUFJLElBQUksY0FBYyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQWEsTUFBTSxNQUFNLENBQUM7QUFDeEYsT0FBTyxFQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQ1MsV0FBVyxFQUFFLFdBQVcsRUFDRyxVQUFVLEVBQUUsS0FBSyxFQUMzRCxNQUFNLGNBQWMsQ0FBQzs7OztBQUd0Qjs7OztHQUlHO0FBRUgsTUFBTSxPQUFPLGdCQUFnQjtJQTJCM0IsWUFBb0IsYUFBNEIsRUFDdEMsWUFBMEIsRUFDMUIsTUFBcUIsRUFDckIsU0FBMkI7UUFIakIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDdEMsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQUNyQixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQTVCN0IsVUFBSyxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7UUFFMUIsY0FBUyxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7UUFDOUIsZUFBVSxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7UUFLdkMseUVBQXlFO1FBQ3pFLHFKQUFxSjtRQUNySixvR0FBb0c7UUFDNUYsZ0JBQVcsR0FBRyxJQUFJLGFBQWEsQ0FBYyxDQUFDLENBQUMsQ0FBQztRQUNoRCxxQkFBZ0IsR0FBRyxJQUFJLGVBQWUsQ0FBYyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFN0UseUZBQXlGO1FBQ3pGLDZGQUE2RjtR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b2JzZXJ2YWJsZUZyb20sIEJlaGF2aW9yU3ViamVjdCwgUmVwbGF5U3ViamVjdCwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7Z3JvdXBCeSwgcmVkdWNlLCBtZXJnZU1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIFNlYXJjaEZpbHRlciwgU2VhcmNoUXVlcnksIFNlYXJjaFN0YXRlLCBTeXN0ZW1TZXJ2aWNlLFxyXG4gIE9iamVjdFR5cGUsIFNlYXJjaFNlcnZpY2UsIEV2ZW50U2VydmljZSwgRW5haW9FdmVudCwgVXRpbHMsIFF1ZXJ5U2NvcGVcclxufSBmcm9tICdAZW8tc2RrL2NvcmUnO1xyXG5pbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XHJcblxyXG4vKipcclxuICogQXBwU2VhcmNoU2VydmljZSBpcyB0aGUgYXBwcyBtYWluIGVudHJ5IHBvaW50IGZvciBzZWFyY2hpbmcgKHVzZWQgYnkgdGhlIGFwcEJhclNlYXJjaCBjb21wb25lbnQpLlxyXG4gKiBJdCBwcm92aWRlcyBhbiBgcXVlcnkkYCBvYnNlcnZhYmxlIGNvbXBvbmVudHMgY2FuIHN1YnNjcmliZSB0bywgdG9cclxuICogc3RheSBpbiB0b3VjaCB3aXRoIHVwZGF0ZXMgdG8gdGhlIHF1ZXJ5LlxyXG4gKi9cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgQXBwU2VhcmNoU2VydmljZSB7XHJcblxyXG4gIHByaXZhdGUgcXVlcnkgPSBuZXcgU2VhcmNoUXVlcnkoKTtcclxuICBwcml2YXRlIGFnZ3M6IGFueTtcclxuICBwcml2YXRlIGxhc3RRdWVyeSA9IG5ldyBTZWFyY2hRdWVyeSgpO1xyXG4gIHByaXZhdGUgcXVlcnlTdGF0ZSA9IG5ldyBTZWFyY2hTdGF0ZSgpO1xyXG4gIC8vIEhvbGRzIHRoZSBsYXN0IGFnZ3JlZ2F0aW9uIHByb3BlcnRpZXMgc2VudCB0byB0aGUgc2VydmVyXHJcbiAgLy8gVXNlZCBmb3IgcHJldmVudGluZyByZWR1bmRhbnQgY2FsbHNcclxuICBwcml2YXRlIGxhc3RBZ2dDYWxsQ29tcGFyYXRvcjogc3RyaW5nO1xyXG5cclxuICAvLyBTdWJqZWN0IGhvbGRpbmcgdGhlIGN1cnJlbnQgcXVlcnkgKGluaXRpYWwgdmFsdWUgaXMgYSBuZXcgU2VhcmNoUXVlcnkpXHJcbiAgLy8gQHNlZTogaHR0cDovL2Jsb2cuYW5ndWxhci11bml2ZXJzaXR5LmlvL2hvdy10by1idWlsZC1hbmd1bGFyMi1hcHBzLXVzaW5nLXJ4anMtb2JzZXJ2YWJsZS1kYXRhLXNlcnZpY2VzLXBpdGZhbGxzLXRvLWF2b2lkLyNyeGpzc3ViamVjdGFuZGhvd3RvdXNlaXRcclxuICAvLyB0b2RvOiBtYXliZSBhZGQgc3VwcG9ydCBmb3IgaG9sZGluZyBhIHF1ZXJ5IGhpc3RvcnksIHNvIHRoZSB1c2VyIGNhbiByZWxvYWQgb2xkZXIgcXVlcmllcyBhcyB3ZWxsXHJcbiAgcHJpdmF0ZSBxdWVyeVNvdXJjZSA9IG5ldyBSZXBsYXlTdWJqZWN0PFNlYXJjaFF1ZXJ5PigxKTtcclxuICBwcml2YXRlIHF1ZXJ5U3RhdGVTb3VyY2UgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFNlYXJjaFN0YXRlPih0aGlzLnF1ZXJ5U3RhdGUpO1xyXG5cclxuICAvLyBFeHBvc2UgYW4gb2JzZXJ2YWJsZSBpbnN0ZWFkIG9mIHRoZSBzdWJqZWN0IGl0c2VsZiB0byBwcmV2ZW50IHRoZSBzZXJ2aWNlIGNsaWVudHMgZnJvbVxyXG4gIC8vIHRoZW1zZWx2ZXMgZW1pdHRpbmcgc3RvcmUgdmFsdWVzIGRpcmVjdGx5IGluc3RlYWQgb2YgY2FsbGluZyBhY3Rpb24gbWV0aG9kcywgYW5kIHRoZXJlZm9yZVxyXG4gIC8vIGJ5cGFzc2luZyB0aGUgc3RvcmUuXHJcbiAgcHVibGljIHF1ZXJ5JDogT2JzZXJ2YWJsZTxTZWFyY2hRdWVyeT4gPSB0aGlzLnF1ZXJ5U291cmNlLmFzT2JzZXJ2YWJsZSgpO1xyXG4gIC8vIFNlYXJjaCBzZXJ2aWNlIGFsc28gZXhwb3NlcyBhbiBvYnNlcnZhYmxlIHRoYXQgZW1pdHMgdGhlIHN0YXRlIG9mIHRoZSBjdXJyZW50IHF1ZXJ5LlxyXG4gIC8vIFdlIHNlcGFyYXRlIHRoZSBzdGF0ZSBvZiB0aGUgcXVlcnkgZnJvbSB0aGUgcXVlcnkgaXRzZWxmIGFzIG90aGVyd2lzZSBjaGFuZ2hpbmcgdGhlIHF1ZXJpZXNcclxuICAvLyBzdGF0ZSB3aWxsIHRyaWdnZXIgYWxsIHN1YnNjcmliZXJzIG9mIHRoZSBxdWVyeSBvYnNlcnZhbGUgYW5kIGxlYWQgdG8gdW5kZXNpcmVkIGJlaGF2aW91clxyXG4gIHB1YmxpYyBxdWVyeVN0YXRlJDogT2JzZXJ2YWJsZTxTZWFyY2hTdGF0ZT4gPSB0aGlzLnF1ZXJ5U3RhdGVTb3VyY2UuYXNPYnNlcnZhYmxlKCk7XHJcbiAgcHVibGljIG9iamVjdFR5cGVHcm91cHMgPSBbXTtcclxuICBwdWJsaWMgdHlwZXNBbGxvd2VkVW5kZXJTeXNyb290ID0gW107XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc2VhcmNoU2VydmljZTogU2VhcmNoU2VydmljZSxcclxuICAgIHByaXZhdGUgZXZlbnRTZXJ2aWNlOiBFdmVudFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHN5c3RlbTogU3lzdGVtU2VydmljZSxcclxuICAgIHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlKSB7XHJcblxyXG4gICAgdGhpcy5zZXREZWZhdWx0QWdncygpO1xyXG4gICAgdGhpcy5ldmVudFNlcnZpY2Uub24oRW5haW9FdmVudC5MT0dPVVQpXHJcbiAgICAgIC5zdWJzY3JpYmUocmVzID0+IHtcclxuICAgICAgICB0aGlzLnJlc2V0KHRydWUpO1xyXG4gICAgICB9KTtcclxuXHJcbiAgICB0aGlzLnF1ZXJ5U291cmNlLm5leHQodGhpcy5xdWVyeSk7XHJcblxyXG4gICAgLy8gRmV0Y2ggb2JqZWN0IHR5cGVzIGFuZCBncm91cHMgdGhhdCBzZXJ2ZSBhcyBzZWFyY2ggZmlsdGVyIHBhcmFtcy5cclxuICAgIC8vIFRoZXNlIGdyb3VwcyBhcmUgcHJvdmlkZWQgdGhyb3VnaCB0aGUgc2VydmljZXMgYG9iamVjdFR5cGVHcm91cHNgIHByb3BlcnR5LlxyXG4gICAgdGhpcy5zeXN0ZW0uc3lzdGVtJC5zdWJzY3JpYmUoKHN5c3RlbURlZmluaXRpb24pID0+IHtcclxuXHJcbiAgICAgIHRoaXMudHlwZXNBbGxvd2VkVW5kZXJTeXNyb290ID0gc3lzdGVtRGVmaW5pdGlvbi50eXBlcy5maWx0ZXIodHlwZSA9PiB0eXBlLnBhcmVudHR5cGVzLmluY2x1ZGVzKCdzeXNyb290JykpO1xyXG5cclxuICAgICAgLy8gdHJhbnNsYXRlcyBsYWJlbHMgZm9yICdzeXNkbXNjb250ZW50dGVtcGxhdGUnIG9iamVjdCB0eXBlcy5cclxuICAgICAgdGhpcy50eXBlc0FsbG93ZWRVbmRlclN5c3Jvb3QgPSB0aGlzLnVwZGF0ZVN5c0Rtc0NvbnRlbnRUZW1wbGF0ZUxhYmVsKHN5c3RlbURlZmluaXRpb24udHlwZXMpO1xyXG5cclxuICAgICAgbGV0IGdyb3VwcyA9IFtdO1xyXG4gICAgICBvYnNlcnZhYmxlRnJvbShzeXN0ZW1EZWZpbml0aW9uLnR5cGVzKVxyXG4gICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgZ3JvdXBCeSgodHlwZTogYW55KSA9PiB0eXBlLmdyb3VwIHx8ICcwJyksXHJcbiAgICAgICAgICBtZXJnZU1hcChnID0+IGcucGlwZShyZWR1Y2UoKGFjYywgY3VycikgPT4gWy4uLmFjYywgY3Vycl0sIFtdKSkpXHJcbiAgICAgICAgKVxyXG4gICAgICAgIC5zdWJzY3JpYmUob3RnID0+IHtcclxuICAgICAgICAgIGdyb3Vwcy5wdXNoKHtcclxuICAgICAgICAgICAgbGFiZWw6IG90Z1swXS5ncm91cCB8fCAnMCcsXHJcbiAgICAgICAgICAgIHR5cGVzOiB0aGlzLnNvcnRPYmplY3RUeXBlR3JvdXAob3RnKVxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIHRoaXMub2JqZWN0VHlwZUdyb3VwcyA9IGdyb3Vwcy5zb3J0KFV0aWxzLnNvcnRWYWx1ZXMoJ2xhYmVsJykpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICByZXNldEFnZ3MoKSB7XHJcbiAgICB0aGlzLnNldERlZmF1bHRBZ2dzKCk7XHJcbiAgICB0aGlzLmxhc3RBZ2dDYWxsQ29tcGFyYXRvciA9IG51bGw7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldERlZmF1bHRBZ2dzKCkge1xyXG4gICAgdGhpcy5hZ2dzID0ge1xyXG4gICAgICB0eXBlOiB7fVxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIC8vIGhlbHBlciBtZXRob2QgZm9yIHNvcnRpbmcgdGhlIGVudHJpZXMgb2YgYW4gb2JqZWN0IHR5cGUgZ3JvdXBcclxuICBwcml2YXRlIHNvcnRPYmplY3RUeXBlR3JvdXAodHlwZXMpIHtcclxuICAgIHJldHVybiB0eXBlcy5zb3J0KChhLCBiKSA9PiB7XHJcblxyXG4gICAgICBpZiAoYS5pc0NvbnRleHRGb2xkZXIgJiYgIWIuaXNDb250ZXh0Rm9sZGVyKSB7XHJcbiAgICAgICAgcmV0dXJuIC0xO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICghYS5pc0NvbnRleHRGb2xkZXIgJiYgYi5pc0NvbnRleHRGb2xkZXIpIHtcclxuICAgICAgICByZXR1cm4gMTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoYS5pc0ZvbGRlciAmJiAhYi5pc0ZvbGRlcikge1xyXG4gICAgICAgIHJldHVybiAtMTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoIWEuaXNGb2xkZXIgJiYgYi5pc0ZvbGRlcikge1xyXG4gICAgICAgIHJldHVybiAxO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChhLmlzRm9sZGVyICYmIGIuaXNGb2xkZXIpIHtcclxuICAgICAgICByZXR1cm4gVXRpbHMuc29ydFZhbHVlcygnbGFiZWwnKS5jYWxsKHRoaXMsIGEsIGIpO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBVdGlscy5zb3J0VmFsdWVzKCdsYWJlbCcpLmNhbGwodGhpcywgYSwgYik7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8vIEV4dGVuZHMgdGhlIG9iamVjdFR5cGVzR3JvdXBzIGJ5IHRoZSBlbGVtZW50cyBmb3IgZWFjaCBvYmplY3QgdHlwZVxyXG4gIC8vIFVzZWQgaW4gZXhwZXJ0IHNlYXJjaCBtb2RlXHJcbiAgcHVibGljIGJ1aWxkVHlwZUdyb3VwVHJlZSgpIHtcclxuXHJcbiAgICBsZXQgZ1RyZWUgPSBbXTtcclxuICAgIGxldCBpID0gMDtcclxuICAgIGZvciAobGV0IGdyb3VwIG9mIHRoaXMub2JqZWN0VHlwZUdyb3Vwcykge1xyXG4gICAgICBsZXQgZyA9IHtcclxuICAgICAgICBpZDogaSsrLFxyXG4gICAgICAgIGxhYmVsOiBncm91cC5sYWJlbCxcclxuICAgICAgICB0cmVlOiBbXVxyXG4gICAgICB9O1xyXG4gICAgICBsZXQgdHlwZXMgPSBbXTtcclxuICAgICAgZm9yIChsZXQgb2JqZWN0VHlwZSBvZiBncm91cC50eXBlcykge1xyXG5cclxuICAgICAgICBsZXQgdCA9IHtcclxuICAgICAgICAgIGlkOiBvYmplY3RUeXBlLmlkLFxyXG4gICAgICAgICAgbGFiZWw6IG9iamVjdFR5cGUubGFiZWwsXHJcbiAgICAgICAgICBjaGlsZHJlbjogW11cclxuICAgICAgICB9O1xyXG4gICAgICAgIGxldCBjaGlsZHJlbiA9IFtdO1xyXG4gICAgICAgIGZvciAobGV0IGVsIG9mIG9iamVjdFR5cGUuZWxlbWVudHMpIHtcclxuICAgICAgICAgIGNoaWxkcmVuLnB1c2goe1xyXG4gICAgICAgICAgICBsYWJlbDogZWwubGFiZWwsXHJcbiAgICAgICAgICAgIHR5cGU6IGVsLnR5cGUsXHJcbiAgICAgICAgICAgIGRhdGE6IGVsLnFuYW1lXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLy8gc29ydCBieSBsYWJlbFxyXG4gICAgICAgIHQuY2hpbGRyZW4gPSBjaGlsZHJlbi5zb3J0KFV0aWxzLnNvcnRWYWx1ZXMoJ2xhYmVsJykpO1xyXG4gICAgICAgIHR5cGVzLnB1c2godCk7XHJcbiAgICAgIH1cclxuICAgICAgZy50cmVlID0gdHlwZXMuc29ydChVdGlscy5zb3J0VmFsdWVzKCdsYWJlbCcpKTtcclxuXHJcblxyXG4gICAgICBnVHJlZS5wdXNoKGcpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGdUcmVlO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogT3ZlcnJpZGUgdGhlIGN1cnJlbnQgcXVlcnkgYnkgYSBkaWZmZXJlbnQgb25lLlxyXG4gICAqIFRoaXMgY291bGQgYmUgZG9uZSBieSBmb3IgZXhhbXBsZSBsb2FkaW5nIGEgc3RvcmVkIHF1ZXJ5LlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHF1ZXJ5IC0gdGhlIHF1ZXJ5IHRoYXQgc2hvdWxkIHJlcGxhY2UgdGhlIGN1cnJlbnQgcXVlcnksIHRoaXMgbWF5IGJlIGVpdGhlciBhIFNlYXJjaFF1ZXJ5IGluc3RhbmNlLFxyXG4gICAqIGEgSlNPTiBzdHJpbmcgb2YgYW4gb2JqZWN0IG1hdGNoaW5nIHRoZSBzZWFyY2ggYXBpXHJcbiAgICovXHJcbiAgcHVibGljIHNldFF1ZXJ5KHF1ZXJ5OiBTZWFyY2hRdWVyeSkge1xyXG4gICAgaWYgKHRoaXMuaXNOZXdRdWVyeShxdWVyeSkpIHtcclxuICAgICAgdGhpcy5zZXREZWZhdWx0QWdncygpO1xyXG4gICAgICB0aGlzLnF1ZXJ5ID0gcXVlcnk7XHJcbiAgICAgIHRoaXMucXVlcnlTb3VyY2UubmV4dCh0aGlzLnF1ZXJ5KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlc2V0cyB0aGUgY3VycmVudCBxdWVyeS5cclxuICAgKi9cclxuICBwdWJsaWMgY2xlYXJRdWVyeSgpIHtcclxuICAgIHRoaXMuc2V0UXVlcnkobmV3IFNlYXJjaFF1ZXJ5KCkpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc05ld1F1ZXJ5KHF1ZXJ5OiBTZWFyY2hRdWVyeSk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHF1ZXJ5LmdldFF1ZXJ5SnNvbigpKSAhPT0gSlNPTi5zdHJpbmdpZnkodGhpcy5xdWVyeS5nZXRRdWVyeUpzb24oKSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiB0b2dnbGVzIHRoZSBzZWFyY2htb2RlIGZyb20gcmVndWxhciBzZWFyY2ggdG8gZXhwZXJ0IHNlYXJjaCBhbmQgdmljZSB2ZXJzYVxyXG4gICAqL1xyXG4gIHB1YmxpYyB0b2dnbGVFeHBlcnRNb2RlKCkge1xyXG4gICAgaWYgKCF0aGlzLnF1ZXJ5LmV4cGVydE1vZGUpIHtcclxuICAgICAgdGhpcy5sYXN0UXVlcnkgPSB0aGlzLnF1ZXJ5O1xyXG4gICAgICB0aGlzLnNldERlZmF1bHRBZ2dzKCk7XHJcbiAgICAgIHRoaXMucXVlcnkgPSBuZXcgU2VhcmNoUXVlcnkoKTtcclxuICAgICAgdGhpcy5xdWVyeS5leHBlcnRNb2RlID0gdHJ1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMucXVlcnkgPSB0aGlzLmxhc3RRdWVyeTtcclxuICAgIH1cclxuICAgIHRoaXMucXVlcnkuX191cGRhdGVDYXVzZSA9IFNlYXJjaFF1ZXJ5LlVQREFURV9DQVVTRS5UT0dHTEVEX0VYUEVSVE1PREU7XHJcbiAgICB0aGlzLnF1ZXJ5U291cmNlLm5leHQodGhpcy5xdWVyeSk7XHJcbiAgICB0aGlzLmFnZ3JlZ2F0ZSgpO1xyXG5cclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXRUZXJtKHRlcm06IHN0cmluZykge1xyXG4gICAgdGhpcy5xdWVyeS50ZXJtID0gdGVybTtcclxuICAgIHRoaXMucXVlcnkuX191cGRhdGVDYXVzZSA9IFNlYXJjaFF1ZXJ5LlVQREFURV9DQVVTRS5URVJNX1NFVDtcclxuICAgIHRoaXMucXVlcnlTb3VyY2UubmV4dCh0aGlzLnF1ZXJ5KTtcclxuICAgIHRoaXMuYWdncmVnYXRlKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0UXVlcnlTY29wZShzY29wZTogUXVlcnlTY29wZSkge1xyXG4gICAgdGhpcy5xdWVyeS5zY29wZSA9IHNjb3BlO1xyXG4gICAgdGhpcy5xdWVyeVNvdXJjZS5uZXh0KHRoaXMucXVlcnkpO1xyXG4gICAgdGhpcy5hZ2dyZWdhdGUoKTtcclxuICB9XHJcblxyXG4gIC8vIHNldCBhZ2dyZWdhdGlvbiBwcm9wZXJ0aWVzIHRvIGJlIGFwcGxpZWQgdG8gT05MWSBhZ2dyZWdhdGUgc2VhcmNoIHF1ZXJpZXNcclxuICBwdWJsaWMgc2V0QWdncyhhZ2dzOiBhbnksIGV4dGVuZCA9IGZhbHNlKSB7XHJcbiAgICB0aGlzLmFnZ3MgPSBleHRlbmQgPyB7Li4udGhpcy5hZ2dzLCAuLi5hZ2dzfSA6IGFnZ3M7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBUb2dnbGVzIGEgdHlwZSBmaWx0ZXIuXHJcbiAgICogQHBhcmFtIHR5cGUgLSBvYmplY3QgdHlwZVxyXG4gICAqL1xyXG4gIHB1YmxpYyB0b2dnbGVRdWVyeVR5cGUodHlwZTogT2JqZWN0VHlwZSkge1xyXG4gICAgdGhpcy5xdWVyeS50b2dnbGVUeXBlKHR5cGUpO1xyXG4gICAgdGhpcy5xdWVyeS5fX3VwZGF0ZUNhdXNlID0gU2VhcmNoUXVlcnkuVVBEQVRFX0NBVVNFLlRPR0dMRURfVFlQRTtcclxuICAgIHRoaXMucXVlcnlTb3VyY2UubmV4dCh0aGlzLnF1ZXJ5KTtcclxuICAgIHRoaXMuYWdncmVnYXRlKFNlYXJjaFF1ZXJ5LkJBU0VfUEFSQU1TLlRZUEUpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU2V0cyB0aGUgcXVlcmllcyB0YXJnZXQgdHlwZXMuXHJcbiAgICpcclxuICAgKiBAcGFyYW0gdHlwZXMgLSBhcnJheSBvZiBPYmplY3RUeXBlc1xyXG4gICAqIEBwYXJhbSBzaWxlbnQgSWYgc2V0IHRvIHRydWUgYWdncmVnYXRlIHdvbid0IGJlIGNhbGxlZFxyXG4gICAqL1xyXG4gIHB1YmxpYyBzZXRRdWVyeVR5cGVzKHR5cGVzOiBPYmplY3RUeXBlW10sIHNpbGVudD86IGJvb2xlYW4pIHtcclxuICAgIHRoaXMucXVlcnkudHlwZXMgPSB0eXBlcztcclxuICAgIHRoaXMuYWdncyA9IHtcclxuICAgICAgdHlwZToge1xyXG4gICAgICAgIHN1Yjoge1xyXG4gICAgICAgICAgY29udGV4dGZvbGRlcnR5cGU6IHt9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9O1xyXG4gICAgdGhpcy5xdWVyeS5fX3VwZGF0ZUNhdXNlID0gU2VhcmNoUXVlcnkuVVBEQVRFX0NBVVNFLlRZUEVTX1NFVDtcclxuICAgIHRoaXMucXVlcnlTb3VyY2UubmV4dCh0aGlzLnF1ZXJ5KTtcclxuICAgIGlmICghc2lsZW50KSB7XHJcbiAgICAgIHRoaXMuYWdncmVnYXRlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZXRzIHRoZSBxdWVyaWVzIHRhcmdldCBjb250ZXh0IHR5cGUuXHJcbiAgICpcclxuICAgKiBAcGFyYW0gdHlwZSBUaGUgY29udGV4dCB0eXBlIHRvIGJlIHNldCBvciBudWxsIGZvciByZXNldHRpbmdcclxuICAgKiBAcGFyYW0gc2lsZW50IElmIHNldCB0byB0cnVlIGFnZ3JlZ2F0ZSB3b24ndCBiZSBjYWxsZWRcclxuICAgKi9cclxuICBwdWJsaWMgc2V0Q29udGV4dFR5cGUodHlwZTogT2JqZWN0VHlwZSwgc2lsZW50PzogYm9vbGVhbikge1xyXG5cclxuICAgIGlmICh0aGlzLnF1ZXJ5LmNvbnRleHRGb2xkZXJUeXBlcy5sZW5ndGggJiYgIXR5cGUpIHtcclxuICAgICAgLy8gY2xlYXIgY29udGV4dCBmb2xkZXJcclxuICAgICAgdGhpcy5lbWl0TmV3Q29udGV4dEZvbGRlclR5cGUobnVsbCk7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMucXVlcnkuY29udGV4dEZvbGRlclR5cGVzLmxlbmd0aCAmJiB0eXBlLm5hbWUgIT09IHRoaXMucXVlcnkuY29udGV4dEZvbGRlclR5cGVzWzBdLm5hbWUpIHtcclxuICAgICAgLy8gZ290IGEgdHlwZSB0byBiZSBzZXQgdXAgdGhhdCBkaWZmZXJzIGZyb20gdGhlIGN1cnJlbnQgb25lXHJcbiAgICAgIHRoaXMuZW1pdE5ld0NvbnRleHRGb2xkZXJUeXBlKHR5cGUpO1xyXG4gICAgfSBlbHNlIGlmICghdGhpcy5xdWVyeS5jb250ZXh0Rm9sZGVyVHlwZXMubGVuZ3RoKSB7XHJcbiAgICAgIC8vIG5vdGhpbmcgc2V0IHVwIHNvIGZhclxyXG4gICAgICB0aGlzLmVtaXROZXdDb250ZXh0Rm9sZGVyVHlwZSh0eXBlKTtcclxuICAgIH1cclxuICAgIC8vIHRyeWluZyB0byBzZXR1cCB0aGUgc2FtZSB0eXBlIGFzIHRoZSBjdXJyZW50IG9uIHNob3VsZCBub3QgZW1pdCBhIG5ldyB2YWx1ZVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBlbWl0TmV3Q29udGV4dEZvbGRlclR5cGUodHlwZSwgc2lsZW50PzogYm9vbGVhbikge1xyXG4gICAgaWYgKCF0eXBlICYmIHRoaXMucXVlcnkuY29udGV4dEZvbGRlclR5cGVzLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLmFnZ3MgPSB7XHJcbiAgICAgIHR5cGU6IHtcclxuICAgICAgICBzdWI6IHtcclxuICAgICAgICAgIGNvbnRleHRmb2xkZXJ0eXBlOiB7fVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfTtcclxuICAgIHRoaXMucXVlcnkuY29udGV4dEZvbGRlclR5cGVzID0gdHlwZSA/IFt0eXBlXSA6IFtdO1xyXG4gICAgdGhpcy5xdWVyeS5fX3VwZGF0ZUNhdXNlID0gU2VhcmNoUXVlcnkuVVBEQVRFX0NBVVNFLkNPTlRFWFRfRk9MREVSX1NFVDtcclxuICAgIHRoaXMucXVlcnlTb3VyY2UubmV4dCh0aGlzLnF1ZXJ5KTtcclxuICAgIGlmICghc2lsZW50KSB7XHJcbiAgICAgIHRoaXMuYWdncmVnYXRlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBUb2dnbGVzIGEgY3JlYXRlZCBmaWx0ZXIuXHJcbiAgICogQHBhcmFtIGZpbHRlciAtIHRoZSBmaWx0ZXIgdG8gYmUgdG9nZ2xlZFxyXG4gICAqL1xyXG4gIHB1YmxpYyB0b2dnbGVRdWVyeUZpbHRlcihmaWx0ZXI6IFNlYXJjaEZpbHRlciwgb3ZlcnJpZGU/OiBib29sZWFuKSB7XHJcbiAgICB0aGlzLnF1ZXJ5LnRvZ2dsZUZpbHRlcihmaWx0ZXIsIG92ZXJyaWRlKTtcclxuICAgIHRoaXMucXVlcnkuX191cGRhdGVDYXVzZSA9IFNlYXJjaFF1ZXJ5LlVQREFURV9DQVVTRS5UT0dHTEVEX0ZJTFRFUjtcclxuICAgIHRoaXMucXVlcnlTb3VyY2UubmV4dCh0aGlzLnF1ZXJ5KTtcclxuICAgIHRoaXMuYWdncmVnYXRlKGZpbHRlci5wcm9wZXJ0eSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBUb2dnbGVzIGNyZWF0ZWQgZmlsdGVycyBhbmQgYWdncmVnYXRlcyB0aGVtIHRvZ2V0aGVyLlxyXG4gICAqIEBwYXJhbSBmaWx0ZXJzIC0gdGhlIGZpbHRlcnMgdG8gYmUgdG9nZ2xlZFxyXG4gICAqL1xyXG4gIHB1YmxpYyB0b2dnbGVRdWVyeUZpbHRlcnMoZmlsdGVyczogU2VhcmNoRmlsdGVyW10sIG92ZXJyaWRlPzogYm9vbGVhbikge1xyXG4gICAgbGV0IGJhc2VQYXJhbSA9ICcnO1xyXG4gICAgZmlsdGVycy5mb3JFYWNoKGZpbHRlciA9PiB7XHJcbiAgICAgIHRoaXMucXVlcnkudG9nZ2xlRmlsdGVyKGZpbHRlciwgb3ZlcnJpZGUpO1xyXG4gICAgICB0aGlzLnF1ZXJ5Ll9fdXBkYXRlQ2F1c2UgPSBTZWFyY2hRdWVyeS5VUERBVEVfQ0FVU0UuVE9HR0xFRF9GSUxURVI7XHJcbiAgICAgIGJhc2VQYXJhbSArPSBmaWx0ZXIucHJvcGVydHkgKyAnICc7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLnF1ZXJ5U291cmNlLm5leHQodGhpcy5xdWVyeSk7XHJcbiAgICB0aGlzLmFnZ3JlZ2F0ZShiYXNlUGFyYW0udHJpbSgpKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEFkZHMgYSBmaWx0ZXIgdG8gdGhlIHF1ZXJ5LlxyXG4gICAqIEBwYXJhbSBmaWx0ZXIgLSB0aGUgZmlsdGVyIHRvIGJlIGFkZGVkXHJcbiAgICovXHJcbiAgcHVibGljIGFkZFF1ZXJ5RmlsdGVyKGZpbHRlcjogU2VhcmNoRmlsdGVyKSB7XHJcbiAgICB0aGlzLnF1ZXJ5LmFkZEZpbHRlcihmaWx0ZXIpO1xyXG4gICAgdGhpcy5xdWVyeS5fX3VwZGF0ZUNhdXNlID0gU2VhcmNoUXVlcnkuVVBEQVRFX0NBVVNFLkFEREVEX0ZJTFRFUjtcclxuICAgIHRoaXMucXVlcnlTb3VyY2UubmV4dCh0aGlzLnF1ZXJ5KTtcclxuICAgIHRoaXMuYWdncmVnYXRlKGZpbHRlci5wcm9wZXJ0eSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZW1vdmVzIGEgZmlsdGVyIHRvIHRoZSBxdWVyeS5cclxuICAgKiBAcGFyYW0gZmlsdGVyIC0gdGhlIGZpbHRlciB0byBiZSByZW1vdmVkXHJcbiAgICovXHJcbiAgcHVibGljIHJlbW92ZVF1ZXJ5RmlsdGVyKGZpbHRlcjogU2VhcmNoRmlsdGVyKSB7XHJcbiAgICB0aGlzLnF1ZXJ5LnJlbW92ZUZpbHRlcihmaWx0ZXIucHJvcGVydHkpO1xyXG4gICAgdGhpcy5xdWVyeS5fX3VwZGF0ZUNhdXNlID0gU2VhcmNoUXVlcnkuVVBEQVRFX0NBVVNFLlJFTU9WRURfRklMVEVSO1xyXG4gICAgdGhpcy5xdWVyeVNvdXJjZS5uZXh0KHRoaXMucXVlcnkpO1xyXG4gICAgdGhpcy5hZ2dyZWdhdGUoZmlsdGVyLnByb3BlcnR5KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNldHMgdGhlIGZpbHRlcnMgZm9yIGFuIGluZGV4ZGF0YSBzZWFyY2guXHJcbiAgICogU2V0dGluZyB0aGVtIHdpbGwgYWxzbyByZW1vdmUgYWxsIGluZGV4ZGF0YSBmaWx0ZXJzIHNldCBiZWZvcmUuXHJcbiAgICpcclxuICAgKiBAcGFyYW0gZmlsdGVycyAtIHRoZSBmaWx0ZXJzIHRvIGJlIHNldFxyXG4gICAqIEBwYXJhbSBzaWxlbnQgSWYgc2V0IHRvIHRydWUgYWdncmVnYXRlIHdvbid0IGJlIGNhbGxlZFxyXG4gICAqL1xyXG4gIHB1YmxpYyBzZXRJbmRleFNlYXJjaFF1ZXJ5RmlsdGVycyhmaWx0ZXJzOiBTZWFyY2hGaWx0ZXJbXSwgc2lsZW50PzogYm9vbGVhbikge1xyXG5cclxuICAgIC8vIHJlbW92ZSBwcmV2aW91cyBmaWx0ZXJzIChhbGwgZmlsdGVycyB0aGF0IGFyZSBub3QgYmFzZXBhcmFtIGZpbHRlcnMpXHJcbiAgICB0aGlzLnF1ZXJ5LmZpbHRlcnMgPSB0aGlzLnF1ZXJ5LmZpbHRlcnMuZmlsdGVyKChmKSA9PiB0aGlzLmlzQmFzZVBhcmFtRmlsdGVyKGYpKTtcclxuICAgIGZvciAobGV0IGYgb2YgZmlsdGVycykge1xyXG4gICAgICB0aGlzLnF1ZXJ5LmFkZEZpbHRlcihmKTtcclxuICAgIH1cclxuICAgIGlmICghc2lsZW50KSB7XHJcbiAgICAgIHRoaXMuYWdncmVnYXRlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0SW5kZXhTZWFyY2hRdWVyeUZpbHRlcnMocXVlcnk/OiBTZWFyY2hRdWVyeSk6IFNlYXJjaEZpbHRlcltdIHtcclxuICAgIGxldCBxID0gcXVlcnkgfHwgdGhpcy5xdWVyeTtcclxuICAgIHJldHVybiBxLmZpbHRlcnMuZmlsdGVyKChmKSA9PiAhdGhpcy5pc0Jhc2VQYXJhbUZpbHRlcihmKSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEZXRlcm1pbmVzIHdoZXRoZXIgb3Igbm90IHRoZSBwcm92aWRlZCBzZWFyY2ggZmlsdGVyIGJlbG9uZ3MgdG8gYSBiYXNlIHBhcmFtLlxyXG4gICAqXHJcbiAgICogQHBhcmFtIGZpbHRlciAtIHRoZSBmaWx0ZXIgdG8gYmUgY2hlY2tlZFxyXG4gICAqL1xyXG4gIHB1YmxpYyBpc0Jhc2VQYXJhbUZpbHRlcihmaWx0ZXI6IFNlYXJjaEZpbHRlcik6IGJvb2xlYW4ge1xyXG4gICAgLy9yZXR1cm4gT2JqZWN0LnZhbHVlcyhTZWFyY2hRdWVyeS5CQVNFX1BBUkFNUykuc29tZSgoYnApID0+IGZpbHRlci5wcm9wZXJ0eSA9PT0gYnApO1xyXG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKFNlYXJjaFF1ZXJ5LkJBU0VfUEFSQU1TKS5zb21lKChicEtleSkgPT4gZmlsdGVyLnByb3BlcnR5ID09PSBTZWFyY2hRdWVyeS5CQVNFX1BBUkFNU1ticEtleV0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRXhlY3V0ZXMgdGhlIGN1cnJlbnQgcXVlcnkgYXMgYWdncmVnYXRlIHNlYXJjaFxyXG4gICAqL1xyXG4gIHB1YmxpYyBhZ2dyZWdhdGUoYmFzZVBhcmFtID0gJycpIHtcclxuXHJcbiAgICBjb25zdCBhZ2dRdWVyeSA9IHthZ2dzOiB0aGlzLmFnZ3MsIC4uLnRoaXMucXVlcnkuZ2V0UXVlcnlKc29uKCl9O1xyXG4gICAgLy8gY29tcGFyZSB0aGUgY2FsbCB0byBiZSBtYWRlIHdpdGggYSBmb3JtZXIgcmVxdWVzdFxyXG4gICAgaWYgKHRoaXMubGFzdEFnZ0NhbGxDb21wYXJhdG9yICE9PSBKU09OLnN0cmluZ2lmeShhZ2dRdWVyeSkpIHtcclxuICAgICAgdGhpcy5sYXN0QWdnQ2FsbENvbXBhcmF0b3IgPSBKU09OLnN0cmluZ2lmeShhZ2dRdWVyeSk7XHJcbiAgICAgIHRoaXMuZ2V0U2VhcmNoU3RhdGUoYWdnUXVlcnkpXHJcbiAgICAgICAgLnN1YnNjcmliZSgocXVlcnlTdGF0ZTogU2VhcmNoU3RhdGUpID0+IHtcclxuICAgICAgICAgIHF1ZXJ5U3RhdGUubGFzdENoYW5nZSA9IGJhc2VQYXJhbTtcclxuICAgICAgICAgIHRoaXMucXVlcnlTdGF0ZSA9IHF1ZXJ5U3RhdGU7XHJcbiAgICAgICAgICB0aGlzLnF1ZXJ5U3RhdGVTb3VyY2UubmV4dCh0aGlzLnF1ZXJ5U3RhdGUpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlc2V0IHRoZSBxdWVyeVxyXG4gICAqL1xyXG4gIHB1YmxpYyByZXNldChzaWxlbnQ/OiBib29sZWFuKSB7XHJcbiAgICB0aGlzLnF1ZXJ5ID0gbmV3IFNlYXJjaFF1ZXJ5KCk7XHJcbiAgICB0aGlzLnNldERlZmF1bHRBZ2dzKCk7XHJcbiAgICB0aGlzLnF1ZXJ5U291cmNlLm5leHQodGhpcy5xdWVyeSk7XHJcbiAgICBpZiAoIXNpbGVudCkge1xyXG4gICAgICB0aGlzLmFnZ3JlZ2F0ZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZXhpdEluZGV4ZGF0YVNlYXJjaCgpIHtcclxuICAgIHRoaXMuc2V0SW5kZXhTZWFyY2hRdWVyeUZpbHRlcnMoW10sIHRydWUpO1xyXG4gICAgdGhpcy5zZXRRdWVyeVR5cGVzKFtdLCB0cnVlKTtcclxuICAgIHRoaXMuc2V0Q29udGV4dFR5cGUobnVsbCwgdHJ1ZSk7XHJcbiAgICB0aGlzLmFnZ3JlZ2F0ZSgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRXhlY3V0ZXMgdGhlIGN1cnJlbnQgcXVlcnkgYXMgYWdncmVnYXRlIHNlYXJjaFxyXG4gICAqL1xyXG4gIHB1YmxpYyBnZXRTZWFyY2hTdGF0ZShxdWVyeUpzb246IGFueSkge1xyXG4gICAgcmV0dXJuIHRoaXMuc2VhcmNoU2VydmljZS5nZXRTZWFyY2hTdGF0ZShxdWVyeUpzb24pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGF1dG9jb21wbGV0ZSh0ZXJtOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLnNlYXJjaFNlcnZpY2UuYXV0b2NvbXBsZXRlKHRlcm0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRmluZHMgdGhlIG9iamVjdCB0eXBlIGVsZW1lbnQgaW5zaWRlIG9mIHRoZSBxdWVyaWVzIHRhcmdldCB0eXBlc1xyXG4gICAqIGZvciBhIGZvcm0gZWxlbWVudHMgbmFtZS4gVXNlZCBlLmcuIGZvciB0aGUgc2VhcmNoIHN1bW1hcnkgcGFuZWwuXHJcbiAgICpcclxuICAgKiBAcGFyYW0gZm9ybUVsZW1lbnROYW1lIC0gdGhlIG5hbWUgb2YgdGhlIGZvcm0gZWxlbWVudFxyXG4gICAqIEByZXR1cm4gdGhlIG9iamVjdCB0eXBlIGVsZW1lbnQgbWF0Y2hpbmcgdGhlIGZvcm0gZWxlbWVudHMgbmFtZVxyXG4gICAqL1xyXG4gIHB1YmxpYyBnZXRUYXJnZXRUeXBlRWxlbWVudEJ5TmFtZShmb3JtRWxlbWVudE5hbWU6IHN0cmluZyk6IGFueSB7XHJcbiAgICBsZXQgaSA9IDA7XHJcbiAgICBsZXQgbWF0Y2g7XHJcbiAgICB3aGlsZSAoIW1hdGNoICYmIGkgPCB0aGlzLnF1ZXJ5LnR5cGVzLmxlbmd0aCkge1xyXG4gICAgICBtYXRjaCA9IHRoaXMucXVlcnkudHlwZXNbaV0uZWxlbWVudHMuZmluZCgoZWxlbWVudCkgPT4gZWxlbWVudC5xbmFtZSA9PT0gZm9ybUVsZW1lbnROYW1lKTtcclxuICAgICAgaSsrO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG1hdGNoO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVXBkYXRlcyB0aGUgbGFiZWwgb2YgYHN5c2Rtc2NvbnRlbnR0ZW1wbGF0ZWAgb2JqZWN0IHR5cGVzIHVzaW5nIHRyYW5zbGF0aW9ucy5cclxuICAgKlxyXG4gICAqIFRoaXMgbWV0aG9kIGlzIHVzZWZ1bCBmb3IgZW5zdXJpbmcgdGhhdCB0aGUgZGlzcGxheWVkIGxhYmVscyBmb3IgdGhlc2Ugb2JqZWN0IHR5cGVzIGFyZSBsb2NhbGl6ZWQuXHJcbiAgICpcclxuICAgKiBAcGFyYW0ge09iamVjdFR5cGVbXX0gdHlwZXMgLSBBbiBhcnJheSBvZiBvYmplY3QgdHlwZXMgdG8gdXBkYXRlLlxyXG4gICAqIEByZXR1cm5zIHtPYmplY3RUeXBlW119IFRoZSB1cGRhdGVkIGFycmF5IG9mIG9iamVjdCB0eXBlcyB3aXRoIHRyYW5zbGF0ZWQgbGFiZWxzIGZvciBgc3lzZG1zY29udGVudHRlbXBsYXRlYCB0eXBlcy5cclxuICAgKi9cclxuICBwcml2YXRlIHVwZGF0ZVN5c0Rtc0NvbnRlbnRUZW1wbGF0ZUxhYmVsKHR5cGVzOiBPYmplY3RUeXBlW10pOiBPYmplY3RUeXBlW10ge1xyXG4gICAgcmV0dXJuIHR5cGVzLm1hcCgodHlwZTogT2JqZWN0VHlwZSkgPT4ge1xyXG4gICAgICBpZiAodHlwZS5xbmFtZSA9PT0gJ3N5c2Rtc2NvbnRlbnR0ZW1wbGF0ZScpIHtcclxuICAgICAgICB0eXBlLmFjdHVhbExhYmVsID0gdHlwZS5hY3R1YWxMYWJlbCB8fCB0eXBlLmxhYmVsO1xyXG4gICAgICAgIHR5cGUubGFiZWwgPSB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KGBlby50eXBlLmxhYmVsLiR7dHlwZS5hY3R1YWxMYWJlbC50b0xvd2VyQ2FzZSgpfWApO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiB0eXBlO1xyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
412
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXNlYXJjaC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1mcmFtZXdvcmstY29yZS9zZWFyY2gvYXBwLXNlYXJjaC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxJQUFJLElBQUksY0FBYyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQWEsTUFBTSxNQUFNLENBQUM7QUFDeEYsT0FBTyxFQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQ1MsV0FBVyxFQUFFLFdBQVcsRUFDRyxVQUFVLEVBQUUsS0FBSyxFQUMzRCxNQUFNLGNBQWMsQ0FBQzs7OztBQUd0Qjs7OztHQUlHO0FBRUgsTUFBTSxPQUFPLGdCQUFnQjtJQTJCM0IsWUFBb0IsYUFBNEIsRUFDdEMsWUFBMEIsRUFDMUIsTUFBcUIsRUFDckIsU0FBMkI7UUFIakIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDdEMsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQUNyQixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQTVCN0IsVUFBSyxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7UUFFMUIsY0FBUyxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7UUFDOUIsZUFBVSxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7UUFLdkMseUVBQXlFO1FBQ3pFLHFKQUFxSjtRQUNySixvR0FBb0c7UUFDNUYsZ0JBQVcsR0FBRyxJQUFJLGFBQWEsQ0FBYyxDQUFDLENBQUMsQ0FBQztRQUNoRCxxQkFBZ0IsR0FBRyxJQUFJLGVBQWUsQ0FBYyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFN0UseUZBQXlGO1FBQ3pGLDZGQUE2RjtRQUM3Rix1QkFBdUI7UUFDaEIsV0FBTSxHQUE0QixJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3pFLHVGQUF1RjtRQUN2Riw4RkFBOEY7UUFDOUYsNEZBQTRGO1FBQ3JGLGdCQUFXLEdBQTRCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUM1RSxxQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFDdEIsNkJBQXdCLEdBQUcsRUFBRSxDQUFDO1FBT25DLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDO2FBQ3BDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNmLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkIsQ0FBQyxDQUFDLENBQUM7UUFFTCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFbEMsb0VBQW9FO1FBQ3BFLDhFQUE4RTtRQUM5RSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRSxFQUFFO1lBRWpELElBQUksQ0FBQyx3QkFBd0IsR0FBRyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztZQUU1Ryw4REFBOEQ7WUFDOUQsSUFBSSxDQUFDLHdCQUF3QixHQUFHLElBQUksQ0FBQyxnQ0FBZ0MsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUU5RixJQUFJLE1BQU0sR0FBRyxFQUFFLENBQUM7WUFDaEIsY0FBYyxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQztpQkFDbkMsSUFBSSxDQUNILE9BQU8sQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxHQUFHLENBQUMsRUFDekMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsR0FBRyxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FDakU7aUJBQ0EsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUNmLE1BQU0sQ0FBQyxJQUFJLENBQUM7b0JBQ1YsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLElBQUksR0FBRztvQkFDMUIsS0FBSyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUM7aUJBQ3JDLENBQUMsQ0FBQztZQUNMLENBQUMsQ0FBQyxDQUFDO1lBQ0wsSUFBSSxDQUFDLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQ2pFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFNBQVM7UUFDUCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLHFCQUFxQixHQUFHLElBQUksQ0FBQztJQUNwQyxDQUFDO0lBRU8sY0FBYztRQUNwQixJQUFJLENBQUMsSUFBSSxHQUFHO1lBQ1YsSUFBSSxFQUFFLEVBQUU7WUFDUixhQUFhLEVBQUUsRUFBRTtZQUNqQixRQUFRLEVBQUUsRUFBRTtZQUNaLE9BQU8sRUFBRSxFQUFFO1lBQ1gsUUFBUSxFQUFFLEVBQUU7U0FFYixDQUFDO0lBQ0osQ0FBQztJQUVELGdFQUFnRTtJQUN4RCxtQkFBbUIsQ0FBQyxLQUFLO1FBQy9CLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUV6QixJQUFJLENBQUMsQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7Z0JBQzVDLE9BQU8sQ0FBQyxDQUFDLENBQUM7WUFDWixDQUFDO1lBQ0QsSUFBSSxDQUFDLENBQUMsQ0FBQyxlQUFlLElBQUksQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDO2dCQUM1QyxPQUFPLENBQUMsQ0FBQztZQUNYLENBQUM7WUFDRCxJQUFJLENBQUMsQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQzlCLE9BQU8sQ0FBQyxDQUFDLENBQUM7WUFDWixDQUFDO1lBQ0QsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUM5QixPQUFPLENBQUMsQ0FBQztZQUNYLENBQUM7WUFDRCxJQUFJLENBQUMsQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUM3QixPQUFPLEtBQUssQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDcEQsQ0FBQztZQUNELE9BQU8sS0FBSyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNwRCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxxRUFBcUU7SUFDckUsNkJBQTZCO0lBQ3RCLGtCQUFrQjtRQUV2QixJQUFJLEtBQUssR0FBRyxFQUFFLENBQUM7UUFDZixJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDVixLQUFLLElBQUksS0FBSyxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQ3hDLElBQUksQ0FBQyxHQUFHO2dCQUNOLEVBQUUsRUFBRSxDQUFDLEVBQUU7Z0JBQ1AsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLO2dCQUNsQixJQUFJLEVBQUUsRUFBRTthQUNULENBQUM7WUFDRixJQUFJLEtBQUssR0FBRyxFQUFFLENBQUM7WUFDZixLQUFLLElBQUksVUFBVSxJQUFJLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFFbkMsSUFBSSxDQUFDLEdBQUc7b0JBQ04sRUFBRSxFQUFFLFVBQVUsQ0FBQyxFQUFFO29CQUNqQixLQUFLLEVBQUUsVUFBVSxDQUFDLEtBQUs7b0JBQ3ZCLFFBQVEsRUFBRSxFQUFFO2lCQUNiLENBQUM7Z0JBQ0YsSUFBSSxRQUFRLEdBQUcsRUFBRSxDQUFDO2dCQUNsQixLQUFLLElBQUksRUFBRSxJQUFJLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFDbkMsUUFBUSxDQUFDLElBQUksQ0FBQzt3QkFDWixLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUs7d0JBQ2YsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJO3dCQUNiLElBQUksRUFBRSxFQUFFLENBQUMsS0FBSztxQkFDZixDQUFDLENBQUM7Z0JBQ0wsQ0FBQztnQkFDRCxnQkFBZ0I7Z0JBQ2hCLENBQUMsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7Z0JBQ3RELEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDaEIsQ0FBQztZQUNELENBQUMsQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7WUFHL0MsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoQixDQUFDO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksUUFBUSxDQUFDLEtBQWtCO1FBQ2hDLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQzNCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN0QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztZQUNuQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEMsQ0FBQztJQUNILENBQUM7SUFFRDs7T0FFRztJQUNJLFVBQVU7UUFDZixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksV0FBVyxFQUFFLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRU8sVUFBVSxDQUFDLEtBQWtCO1FBQ25DLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUMsS0FBSyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztJQUM1RixDQUFDO0lBRUQ7O09BRUc7SUFDSSxnQkFBZ0I7UUFDckIsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDM0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1lBQzVCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN0QixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7WUFDL0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQy9CLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQzlCLENBQUM7UUFDRCxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsR0FBRyxXQUFXLENBQUMsWUFBWSxDQUFDLGtCQUFrQixDQUFDO1FBQ3ZFLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFFbkIsQ0FBQztJQUVNLE9BQU8sQ0FBQyxJQUFZO1FBQ3pCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUN2QixJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsR0FBRyxXQUFXLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQztRQUM3RCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFTSxhQUFhLENBQUMsS0FBaUI7UUFDcEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVELDRFQUE0RTtJQUNyRSxPQUFPLENBQUMsSUFBUyxFQUFFLE1BQU0sR0FBRyxLQUFLO1FBQ3RDLElBQUksQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxHQUFHLElBQUksRUFBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDdEQsQ0FBQztJQUVEOzs7T0FHRztJQUNJLGVBQWUsQ0FBQyxJQUFnQjtRQUNyQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM1QixJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsR0FBRyxXQUFXLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQztRQUNqRSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLGFBQWEsQ0FBQyxLQUFtQixFQUFFLE1BQWdCO1FBQ3hELElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUN6QixJQUFJLENBQUMsSUFBSSxHQUFHO1lBQ1YsSUFBSSxFQUFFO2dCQUNKLEdBQUcsRUFBRTtvQkFDSCxpQkFBaUIsRUFBRSxFQUFFO2lCQUN0QjthQUNGO1NBQ0YsQ0FBQztRQUNGLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxHQUFHLFdBQVcsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDO1FBQzlELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDWixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDbkIsQ0FBQztJQUNILENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLGNBQWMsQ0FBQyxJQUFnQixFQUFFLE1BQWdCO1FBRXRELElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNsRCx1QkFBdUI7WUFDdkIsSUFBSSxDQUFDLHdCQUF3QixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RDLENBQUM7YUFBTSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUN2Ryw0REFBNEQ7WUFDNUQsSUFBSSxDQUFDLHdCQUF3QixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RDLENBQUM7YUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNqRCx3QkFBd0I7WUFDeEIsSUFBSSxDQUFDLHdCQUF3QixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RDLENBQUM7UUFDRCw4RUFBOEU7SUFDaEYsQ0FBQztJQUVPLHdCQUF3QixDQUFDLElBQUksRUFBRSxNQUFnQjtRQUNyRCxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3hELE9BQU87UUFDVCxDQUFDO1FBQ0QsSUFBSSxDQUFDLElBQUksR0FBRztZQUNWLElBQUksRUFBRTtnQkFDSixHQUFHLEVBQUU7b0JBQ0gsaUJBQWlCLEVBQUUsRUFBRTtpQkFDdEI7YUFDRjtTQUNGLENBQUM7UUFDRixJQUFJLENBQUMsS0FBSyxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ25ELElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxHQUFHLFdBQVcsQ0FBQyxZQUFZLENBQUMsa0JBQWtCLENBQUM7UUFDdkUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNaLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNuQixDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7T0FHRztJQUNJLGlCQUFpQixDQUFDLE1BQW9CLEVBQUUsUUFBa0I7UUFDL0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxHQUFHLFdBQVcsQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDO1FBQ25FLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksa0JBQWtCLENBQUMsT0FBdUIsRUFBRSxRQUFrQjtRQUNuRSxJQUFJLFNBQVMsR0FBRyxFQUFFLENBQUM7UUFDbkIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUN2QixJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFDMUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEdBQUcsV0FBVyxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUM7WUFDbkUsU0FBUyxJQUFJLE1BQU0sQ0FBQyxRQUFRLEdBQUcsR0FBRyxDQUFDO1FBQ3JDLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVEOzs7T0FHRztJQUNJLGNBQWMsQ0FBQyxNQUFvQjtRQUN4QyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsR0FBRyxXQUFXLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQztRQUNqRSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVEOzs7T0FHRztJQUNJLGlCQUFpQixDQUFDLE1BQW9CO1FBQzNDLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsR0FBRyxXQUFXLENBQUMsWUFBWSxDQUFDLGNBQWMsQ0FBQztRQUNuRSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLDBCQUEwQixDQUFDLE9BQXVCLEVBQUUsTUFBZ0I7UUFFekUsdUVBQXVFO1FBQ3ZFLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDakYsS0FBSyxJQUFJLENBQUMsSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUN0QixJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxQixDQUFDO1FBQ0QsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ1osSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ25CLENBQUM7SUFDSCxDQUFDO0lBRU0sMEJBQTBCLENBQUMsS0FBbUI7UUFDbkQsSUFBSSxDQUFDLEdBQUcsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDNUIsT0FBTyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLGlCQUFpQixDQUFDLE1BQW9CO1FBQzNDLHFGQUFxRjtRQUNyRixPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFFBQVEsS0FBSyxXQUFXLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbEgsQ0FBQztJQUVEOztPQUVHO0lBQ0ksU0FBUyxDQUFDLFNBQVMsR0FBRyxFQUFFO1FBRTdCLE1BQU0sUUFBUSxHQUFHLEVBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxFQUFDLENBQUM7UUFDakUsb0RBQW9EO1FBQ3BELElBQUksSUFBSSxDQUFDLHFCQUFxQixLQUFLLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUM1RCxJQUFJLENBQUMscUJBQXFCLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN0RCxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQztpQkFDMUIsU0FBUyxDQUFDLENBQUMsVUFBdUIsRUFBRSxFQUFFO2dCQUNyQyxVQUFVLENBQUMsVUFBVSxHQUFHLFNBQVMsQ0FBQztnQkFDbEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7Z0JBQzdCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQzlDLENBQUMsQ0FBQyxDQUFDO1lBQ0wsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsTUFBZ0I7UUFDM0IsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDO1FBQy9CLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ1osSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ25CLENBQUM7SUFDSCxDQUFDO0lBRUQsbUJBQW1CO1FBQ2pCLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDaEMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFRDs7T0FFRztJQUNJLGNBQWMsQ0FBQyxTQUFjO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVNLFlBQVksQ0FBQyxJQUFZO1FBQzlCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLDBCQUEwQixDQUFDLGVBQXVCO1FBQ3ZELElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNWLElBQUksS0FBSyxDQUFDO1FBQ1YsT0FBTyxDQUFDLEtBQUssSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDN0MsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEtBQUssZUFBZSxDQUFDLENBQUM7WUFDMUYsQ0FBQyxFQUFFLENBQUM7UUFDTixDQUFDO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNLLGdDQUFnQyxDQUFDLEtBQW1CO1FBQzFELE9BQU8sS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQWdCLEVBQUUsRUFBRTtZQUNwQyxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssdUJBQXVCLEVBQUUsQ0FBQztnQkFDM0MsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUM7Z0JBQ2xELElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsaUJBQWlCLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3pGLENBQUM7WUFDRCxPQUFPLElBQUksQ0FBQztRQUNkLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs4R0E3YlUsZ0JBQWdCO2tIQUFoQixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2Zyb20gYXMgb2JzZXJ2YWJsZUZyb20sIEJlaGF2aW9yU3ViamVjdCwgUmVwbGF5U3ViamVjdCwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2dyb3VwQnksIHJlZHVjZSwgbWVyZ2VNYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBTZWFyY2hGaWx0ZXIsIFNlYXJjaFF1ZXJ5LCBTZWFyY2hTdGF0ZSwgU3lzdGVtU2VydmljZSxcbiAgT2JqZWN0VHlwZSwgU2VhcmNoU2VydmljZSwgRXZlbnRTZXJ2aWNlLCBFbmFpb0V2ZW50LCBVdGlscywgUXVlcnlTY29wZVxufSBmcm9tICdAZW8tc2RrL2NvcmUnO1xuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tIFwiQG5neC10cmFuc2xhdGUvY29yZVwiO1xuXG4vKipcbiAqIEFwcFNlYXJjaFNlcnZpY2UgaXMgdGhlIGFwcHMgbWFpbiBlbnRyeSBwb2ludCBmb3Igc2VhcmNoaW5nICh1c2VkIGJ5IHRoZSBhcHBCYXJTZWFyY2ggY29tcG9uZW50KS5cbiAqIEl0IHByb3ZpZGVzIGFuIGBxdWVyeSRgIG9ic2VydmFibGUgY29tcG9uZW50cyBjYW4gc3Vic2NyaWJlIHRvLCB0b1xuICogc3RheSBpbiB0b3VjaCB3aXRoIHVwZGF0ZXMgdG8gdGhlIHF1ZXJ5LlxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQXBwU2VhcmNoU2VydmljZSB7XG5cbiAgcHJpdmF0ZSBxdWVyeSA9IG5ldyBTZWFyY2hRdWVyeSgpO1xuICBwcml2YXRlIGFnZ3M6IGFueTtcbiAgcHJpdmF0ZSBsYXN0UXVlcnkgPSBuZXcgU2VhcmNoUXVlcnkoKTtcbiAgcHJpdmF0ZSBxdWVyeVN0YXRlID0gbmV3IFNlYXJjaFN0YXRlKCk7XG4gIC8vIEhvbGRzIHRoZSBsYXN0IGFnZ3JlZ2F0aW9uIHByb3BlcnRpZXMgc2VudCB0byB0aGUgc2VydmVyXG4gIC8vIFVzZWQgZm9yIHByZXZlbnRpbmcgcmVkdW5kYW50IGNhbGxzXG4gIHByaXZhdGUgbGFzdEFnZ0NhbGxDb21wYXJhdG9yOiBzdHJpbmc7XG5cbiAgLy8gU3ViamVjdCBob2xkaW5nIHRoZSBjdXJyZW50IHF1ZXJ5IChpbml0aWFsIHZhbHVlIGlzIGEgbmV3IFNlYXJjaFF1ZXJ5KVxuICAvLyBAc2VlOiBodHRwOi8vYmxvZy5hbmd1bGFyLXVuaXZlcnNpdHkuaW8vaG93LXRvLWJ1aWxkLWFuZ3VsYXIyLWFwcHMtdXNpbmctcnhqcy1vYnNlcnZhYmxlLWRhdGEtc2VydmljZXMtcGl0ZmFsbHMtdG8tYXZvaWQvI3J4anNzdWJqZWN0YW5kaG93dG91c2VpdFxuICAvLyB0b2RvOiBtYXliZSBhZGQgc3VwcG9ydCBmb3IgaG9sZGluZyBhIHF1ZXJ5IGhpc3RvcnksIHNvIHRoZSB1c2VyIGNhbiByZWxvYWQgb2xkZXIgcXVlcmllcyBhcyB3ZWxsXG4gIHByaXZhdGUgcXVlcnlTb3VyY2UgPSBuZXcgUmVwbGF5U3ViamVjdDxTZWFyY2hRdWVyeT4oMSk7XG4gIHByaXZhdGUgcXVlcnlTdGF0ZVNvdXJjZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8U2VhcmNoU3RhdGU+KHRoaXMucXVlcnlTdGF0ZSk7XG5cbiAgLy8gRXhwb3NlIGFuIG9ic2VydmFibGUgaW5zdGVhZCBvZiB0aGUgc3ViamVjdCBpdHNlbGYgdG8gcHJldmVudCB0aGUgc2VydmljZSBjbGllbnRzIGZyb21cbiAgLy8gdGhlbXNlbHZlcyBlbWl0dGluZyBzdG9yZSB2YWx1ZXMgZGlyZWN0bHkgaW5zdGVhZCBvZiBjYWxsaW5nIGFjdGlvbiBtZXRob2RzLCBhbmQgdGhlcmVmb3JlXG4gIC8vIGJ5cGFzc2luZyB0aGUgc3RvcmUuXG4gIHB1YmxpYyBxdWVyeSQ6IE9ic2VydmFibGU8U2VhcmNoUXVlcnk+ID0gdGhpcy5xdWVyeVNvdXJjZS5hc09ic2VydmFibGUoKTtcbiAgLy8gU2VhcmNoIHNlcnZpY2UgYWxzbyBleHBvc2VzIGFuIG9ic2VydmFibGUgdGhhdCBlbWl0cyB0aGUgc3RhdGUgb2YgdGhlIGN1cnJlbnQgcXVlcnkuXG4gIC8vIFdlIHNlcGFyYXRlIHRoZSBzdGF0ZSBvZiB0aGUgcXVlcnkgZnJvbSB0aGUgcXVlcnkgaXRzZWxmIGFzIG90aGVyd2lzZSBjaGFuZ2hpbmcgdGhlIHF1ZXJpZXNcbiAgLy8gc3RhdGUgd2lsbCB0cmlnZ2VyIGFsbCBzdWJzY3JpYmVycyBvZiB0aGUgcXVlcnkgb2JzZXJ2YWxlIGFuZCBsZWFkIHRvIHVuZGVzaXJlZCBiZWhhdmlvdXJcbiAgcHVibGljIHF1ZXJ5U3RhdGUkOiBPYnNlcnZhYmxlPFNlYXJjaFN0YXRlPiA9IHRoaXMucXVlcnlTdGF0ZVNvdXJjZS5hc09ic2VydmFibGUoKTtcbiAgcHVibGljIG9iamVjdFR5cGVHcm91cHMgPSBbXTtcbiAgcHVibGljIHR5cGVzQWxsb3dlZFVuZGVyU3lzcm9vdCA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc2VhcmNoU2VydmljZTogU2VhcmNoU2VydmljZSxcbiAgICBwcml2YXRlIGV2ZW50U2VydmljZTogRXZlbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgc3lzdGVtOiBTeXN0ZW1TZXJ2aWNlLFxuICAgIHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlKSB7XG5cbiAgICB0aGlzLnNldERlZmF1bHRBZ2dzKCk7XG4gICAgdGhpcy5ldmVudFNlcnZpY2Uub24oRW5haW9FdmVudC5MT0dPVVQpXG4gICAgICAuc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICAgIHRoaXMucmVzZXQodHJ1ZSk7XG4gICAgICB9KTtcblxuICAgIHRoaXMucXVlcnlTb3VyY2UubmV4dCh0aGlzLnF1ZXJ5KTtcblxuICAgIC8vIEZldGNoIG9iamVjdCB0eXBlcyBhbmQgZ3JvdXBzIHRoYXQgc2VydmUgYXMgc2VhcmNoIGZpbHRlciBwYXJhbXMuXG4gICAgLy8gVGhlc2UgZ3JvdXBzIGFyZSBwcm92aWRlZCB0aHJvdWdoIHRoZSBzZXJ2aWNlcyBgb2JqZWN0VHlwZUdyb3Vwc2AgcHJvcGVydHkuXG4gICAgdGhpcy5zeXN0ZW0uc3lzdGVtJC5zdWJzY3JpYmUoKHN5c3RlbURlZmluaXRpb24pID0+IHtcblxuICAgICAgdGhpcy50eXBlc0FsbG93ZWRVbmRlclN5c3Jvb3QgPSBzeXN0ZW1EZWZpbml0aW9uLnR5cGVzLmZpbHRlcih0eXBlID0+IHR5cGUucGFyZW50dHlwZXMuaW5jbHVkZXMoJ3N5c3Jvb3QnKSk7XG5cbiAgICAgIC8vIHRyYW5zbGF0ZXMgbGFiZWxzIGZvciAnc3lzZG1zY29udGVudHRlbXBsYXRlJyBvYmplY3QgdHlwZXMuXG4gICAgICB0aGlzLnR5cGVzQWxsb3dlZFVuZGVyU3lzcm9vdCA9IHRoaXMudXBkYXRlU3lzRG1zQ29udGVudFRlbXBsYXRlTGFiZWwoc3lzdGVtRGVmaW5pdGlvbi50eXBlcyk7XG5cbiAgICAgIGxldCBncm91cHMgPSBbXTtcbiAgICAgIG9ic2VydmFibGVGcm9tKHN5c3RlbURlZmluaXRpb24udHlwZXMpXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIGdyb3VwQnkoKHR5cGU6IGFueSkgPT4gdHlwZS5ncm91cCB8fCAnMCcpLFxuICAgICAgICAgIG1lcmdlTWFwKGcgPT4gZy5waXBlKHJlZHVjZSgoYWNjLCBjdXJyKSA9PiBbLi4uYWNjLCBjdXJyXSwgW10pKSlcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKG90ZyA9PiB7XG4gICAgICAgICAgZ3JvdXBzLnB1c2goe1xuICAgICAgICAgICAgbGFiZWw6IG90Z1swXS5ncm91cCB8fCAnMCcsXG4gICAgICAgICAgICB0eXBlczogdGhpcy5zb3J0T2JqZWN0VHlwZUdyb3VwKG90ZylcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgICB0aGlzLm9iamVjdFR5cGVHcm91cHMgPSBncm91cHMuc29ydChVdGlscy5zb3J0VmFsdWVzKCdsYWJlbCcpKTtcbiAgICB9KTtcbiAgfVxuXG4gIHJlc2V0QWdncygpIHtcbiAgICB0aGlzLnNldERlZmF1bHRBZ2dzKCk7XG4gICAgdGhpcy5sYXN0QWdnQ2FsbENvbXBhcmF0b3IgPSBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXREZWZhdWx0QWdncygpIHtcbiAgICB0aGlzLmFnZ3MgPSB7XG4gICAgICB0eXBlOiB7fSxcbiAgICAgIG1pbWV0eXBlZ3JvdXA6IHt9LFxuICAgICAgZmlsZXNpemU6IHt9LFxuICAgICAgY3JlYXRlZDoge30sXG4gICAgICBtb2RpZmllZDoge30sXG5cbiAgICB9O1xuICB9XG5cbiAgLy8gaGVscGVyIG1ldGhvZCBmb3Igc29ydGluZyB0aGUgZW50cmllcyBvZiBhbiBvYmplY3QgdHlwZSBncm91cFxuICBwcml2YXRlIHNvcnRPYmplY3RUeXBlR3JvdXAodHlwZXMpIHtcbiAgICByZXR1cm4gdHlwZXMuc29ydCgoYSwgYikgPT4ge1xuXG4gICAgICBpZiAoYS5pc0NvbnRleHRGb2xkZXIgJiYgIWIuaXNDb250ZXh0Rm9sZGVyKSB7XG4gICAgICAgIHJldHVybiAtMTtcbiAgICAgIH1cbiAgICAgIGlmICghYS5pc0NvbnRleHRGb2xkZXIgJiYgYi5pc0NvbnRleHRGb2xkZXIpIHtcbiAgICAgICAgcmV0dXJuIDE7XG4gICAgICB9XG4gICAgICBpZiAoYS5pc0ZvbGRlciAmJiAhYi5pc0ZvbGRlcikge1xuICAgICAgICByZXR1cm4gLTE7XG4gICAgICB9XG4gICAgICBpZiAoIWEuaXNGb2xkZXIgJiYgYi5pc0ZvbGRlcikge1xuICAgICAgICByZXR1cm4gMTtcbiAgICAgIH1cbiAgICAgIGlmIChhLmlzRm9sZGVyICYmIGIuaXNGb2xkZXIpIHtcbiAgICAgICAgcmV0dXJuIFV0aWxzLnNvcnRWYWx1ZXMoJ2xhYmVsJykuY2FsbCh0aGlzLCBhLCBiKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBVdGlscy5zb3J0VmFsdWVzKCdsYWJlbCcpLmNhbGwodGhpcywgYSwgYik7XG4gICAgfSk7XG4gIH1cblxuICAvLyBFeHRlbmRzIHRoZSBvYmplY3RUeXBlc0dyb3VwcyBieSB0aGUgZWxlbWVudHMgZm9yIGVhY2ggb2JqZWN0IHR5cGVcbiAgLy8gVXNlZCBpbiBleHBlcnQgc2VhcmNoIG1vZGVcbiAgcHVibGljIGJ1aWxkVHlwZUdyb3VwVHJlZSgpIHtcblxuICAgIGxldCBnVHJlZSA9IFtdO1xuICAgIGxldCBpID0gMDtcbiAgICBmb3IgKGxldCBncm91cCBvZiB0aGlzLm9iamVjdFR5cGVHcm91cHMpIHtcbiAgICAgIGxldCBnID0ge1xuICAgICAgICBpZDogaSsrLFxuICAgICAgICBsYWJlbDogZ3JvdXAubGFiZWwsXG4gICAgICAgIHRyZWU6IFtdXG4gICAgICB9O1xuICAgICAgbGV0IHR5cGVzID0gW107XG4gICAgICBmb3IgKGxldCBvYmplY3RUeXBlIG9mIGdyb3VwLnR5cGVzKSB7XG5cbiAgICAgICAgbGV0IHQgPSB7XG4gICAgICAgICAgaWQ6IG9iamVjdFR5cGUuaWQsXG4gICAgICAgICAgbGFiZWw6IG9iamVjdFR5cGUubGFiZWwsXG4gICAgICAgICAgY2hpbGRyZW46IFtdXG4gICAgICAgIH07XG4gICAgICAgIGxldCBjaGlsZHJlbiA9IFtdO1xuICAgICAgICBmb3IgKGxldCBlbCBvZiBvYmplY3RUeXBlLmVsZW1lbnRzKSB7XG4gICAgICAgICAgY2hpbGRyZW4ucHVzaCh7XG4gICAgICAgICAgICBsYWJlbDogZWwubGFiZWwsXG4gICAgICAgICAgICB0eXBlOiBlbC50eXBlLFxuICAgICAgICAgICAgZGF0YTogZWwucW5hbWVcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICAvLyBzb3J0IGJ5IGxhYmVsXG4gICAgICAgIHQuY2hpbGRyZW4gPSBjaGlsZHJlbi5zb3J0KFV0aWxzLnNvcnRWYWx1ZXMoJ2xhYmVsJykpO1xuICAgICAgICB0eXBlcy5wdXNoKHQpO1xuICAgICAgfVxuICAgICAgZy50cmVlID0gdHlwZXMuc29ydChVdGlscy5zb3J0VmFsdWVzKCdsYWJlbCcpKTtcblxuXG4gICAgICBnVHJlZS5wdXNoKGcpO1xuICAgIH1cbiAgICByZXR1cm4gZ1RyZWU7XG4gIH1cblxuICAvKipcbiAgICogT3ZlcnJpZGUgdGhlIGN1cnJlbnQgcXVlcnkgYnkgYSBkaWZmZXJlbnQgb25lLlxuICAgKiBUaGlzIGNvdWxkIGJlIGRvbmUgYnkgZm9yIGV4YW1wbGUgbG9hZGluZyBhIHN0b3JlZCBxdWVyeS5cbiAgICpcbiAgICogQHBhcmFtIHF1ZXJ5IC0gdGhlIHF1ZXJ5IHRoYXQgc2hvdWxkIHJlcGxhY2UgdGhlIGN1cnJlbnQgcXVlcnksIHRoaXMgbWF5IGJlIGVpdGhlciBhIFNlYXJjaFF1ZXJ5IGluc3RhbmNlLFxuICAgKiBhIEpTT04gc3RyaW5nIG9mIGFuIG9iamVjdCBtYXRjaGluZyB0aGUgc2VhcmNoIGFwaVxuICAgKi9cbiAgcHVibGljIHNldFF1ZXJ5KHF1ZXJ5OiBTZWFyY2hRdWVyeSkge1xuICAgIGlmICh0aGlzLmlzTmV3UXVlcnkocXVlcnkpKSB7XG4gICAgICB0aGlzLnNldERlZmF1bHRBZ2dzKCk7XG4gICAgICB0aGlzLnF1ZXJ5ID0gcXVlcnk7XG4gICAgICB0aGlzLnF1ZXJ5U291cmNlLm5leHQodGhpcy5xdWVyeSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJlc2V0cyB0aGUgY3VycmVudCBxdWVyeS5cbiAgICovXG4gIHB1YmxpYyBjbGVhclF1ZXJ5KCkge1xuICAgIHRoaXMuc2V0UXVlcnkobmV3IFNlYXJjaFF1ZXJ5KCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBpc05ld1F1ZXJ5KHF1ZXJ5OiBTZWFyY2hRdWVyeSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeShxdWVyeS5nZXRRdWVyeUpzb24oKSkgIT09IEpTT04uc3RyaW5naWZ5KHRoaXMucXVlcnkuZ2V0UXVlcnlKc29uKCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIHRvZ2dsZXMgdGhlIHNlYXJjaG1vZGUgZnJvbSByZWd1bGFyIHNlYXJjaCB0byBleHBlcnQgc2VhcmNoIGFuZCB2aWNlIHZlcnNhXG4gICAqL1xuICBwdWJsaWMgdG9nZ2xlRXhwZXJ0TW9kZSgpIHtcbiAgICBpZiAoIXRoaXMucXVlcnkuZXhwZXJ0TW9kZSkge1xuICAgICAgdGhpcy5sYXN0UXVlcnkgPSB0aGlzLnF1ZXJ5O1xuICAgICAgdGhpcy5zZXREZWZhdWx0QWdncygpO1xuICAgICAgdGhpcy5xdWVyeSA9IG5ldyBTZWFyY2hRdWVyeSgpO1xuICAgICAgdGhpcy5xdWVyeS5leHBlcnRNb2RlID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5xdWVyeSA9IHRoaXMubGFzdFF1ZXJ5O1xuICAgIH1cbiAgICB0aGlzLnF1ZXJ5Ll9fdXBkYXRlQ2F1c2UgPSBTZWFyY2hRdWVyeS5VUERBVEVfQ0FVU0UuVE9HR0xFRF9FWFBFUlRNT0RFO1xuICAgIHRoaXMucXVlcnlTb3VyY2UubmV4dCh0aGlzLnF1ZXJ5KTtcbiAgICB0aGlzLmFnZ3JlZ2F0ZSgpO1xuXG4gIH1cblxuICBwdWJsaWMgc2V0VGVybSh0ZXJtOiBzdHJpbmcpIHtcbiAgICB0aGlzLnF1ZXJ5LnRlcm0gPSB0ZXJtO1xuICAgIHRoaXMucXVlcnkuX191cGRhdGVDYXVzZSA9IFNlYXJjaFF1ZXJ5LlVQREFURV9DQVVTRS5URVJNX1NFVDtcbiAgICB0aGlzLnF1ZXJ5U291cmNlLm5leHQodGhpcy5xdWVyeSk7XG4gICAgdGhpcy5hZ2dyZWdhdGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRRdWVyeVNjb3BlKHNjb3BlOiBRdWVyeVNjb3BlKSB7XG4gICAgdGhpcy5xdWVyeS5zY29wZSA9IHNjb3BlO1xuICAgIHRoaXMucXVlcnlTb3VyY2UubmV4dCh0aGlzLnF1ZXJ5KTtcbiAgICB0aGlzLmFnZ3JlZ2F0ZSgpO1xuICB9XG5cbiAgLy8gc2V0IGFnZ3JlZ2F0aW9uIHByb3BlcnRpZXMgdG8gYmUgYXBwbGllZCB0byBPTkxZIGFnZ3JlZ2F0ZSBzZWFyY2ggcXVlcmllc1xuICBwdWJsaWMgc2V0QWdncyhhZ2dzOiBhbnksIGV4dGVuZCA9IGZhbHNlKSB7XG4gICAgdGhpcy5hZ2dzID0gZXh0ZW5kID8gey4uLnRoaXMuYWdncywgLi4uYWdnc30gOiBhZ2dzO1xuICB9XG5cbiAgLyoqXG4gICAqIFRvZ2dsZXMgYSB0eXBlIGZpbHRlci5cbiAgICogQHBhcmFtIHR5cGUgLSBvYmplY3QgdHlwZVxuICAgKi9cbiAgcHVibGljIHRvZ2dsZVF1ZXJ5VHlwZSh0eXBlOiBPYmplY3RUeXBlKSB7XG4gICAgdGhpcy5xdWVyeS50b2dnbGVUeXBlKHR5cGUpO1xuICAgIHRoaXMucXVlcnkuX191cGRhdGVDYXVzZSA9IFNlYXJjaFF1ZXJ5LlVQREFURV9DQVVTRS5UT0dHTEVEX1RZUEU7XG4gICAgdGhpcy5xdWVyeVNvdXJjZS5uZXh0KHRoaXMucXVlcnkpO1xuICAgIHRoaXMuYWdncmVnYXRlKFNlYXJjaFF1ZXJ5LkJBU0VfUEFSQU1TLlRZUEUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHF1ZXJpZXMgdGFyZ2V0IHR5cGVzLlxuICAgKlxuICAgKiBAcGFyYW0gdHlwZXMgLSBhcnJheSBvZiBPYmplY3RUeXBlc1xuICAgKiBAcGFyYW0gc2lsZW50IElmIHNldCB0byB0cnVlIGFnZ3JlZ2F0ZSB3b24ndCBiZSBjYWxsZWRcbiAgICovXG4gIHB1YmxpYyBzZXRRdWVyeVR5cGVzKHR5cGVzOiBPYmplY3RUeXBlW10sIHNpbGVudD86IGJvb2xlYW4pIHtcbiAgICB0aGlzLnF1ZXJ5LnR5cGVzID0gdHlwZXM7XG4gICAgdGhpcy5hZ2dzID0ge1xuICAgICAgdHlwZToge1xuICAgICAgICBzdWI6IHtcbiAgICAgICAgICBjb250ZXh0Zm9sZGVydHlwZToge31cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH07XG4gICAgdGhpcy5xdWVyeS5fX3VwZGF0ZUNhdXNlID0gU2VhcmNoUXVlcnkuVVBEQVRFX0NBVVNFLlRZUEVTX1NFVDtcbiAgICB0aGlzLnF1ZXJ5U291cmNlLm5leHQodGhpcy5xdWVyeSk7XG4gICAgaWYgKCFzaWxlbnQpIHtcbiAgICAgIHRoaXMuYWdncmVnYXRlKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHF1ZXJpZXMgdGFyZ2V0IGNvbnRleHQgdHlwZS5cbiAgICpcbiAgICogQHBhcmFtIHR5cGUgVGhlIGNvbnRleHQgdHlwZSB0byBiZSBzZXQgb3IgbnVsbCBmb3IgcmVzZXR0aW5nXG4gICAqIEBwYXJhbSBzaWxlbnQgSWYgc2V0IHRvIHRydWUgYWdncmVnYXRlIHdvbid0IGJlIGNhbGxlZFxuICAgKi9cbiAgcHVibGljIHNldENvbnRleHRUeXBlKHR5cGU6IE9iamVjdFR5cGUsIHNpbGVudD86IGJvb2xlYW4pIHtcblxuICAgIGlmICh0aGlzLnF1ZXJ5LmNvbnRleHRGb2xkZXJUeXBlcy5sZW5ndGggJiYgIXR5cGUpIHtcbiAgICAgIC8vIGNsZWFyIGNvbnRleHQgZm9sZGVyXG4gICAgICB0aGlzLmVtaXROZXdDb250ZXh0Rm9sZGVyVHlwZShudWxsKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMucXVlcnkuY29udGV4dEZvbGRlclR5cGVzLmxlbmd0aCAmJiB0eXBlLm5hbWUgIT09IHRoaXMucXVlcnkuY29udGV4dEZvbGRlclR5cGVzWzBdLm5hbWUpIHtcbiAgICAgIC8vIGdvdCBhIHR5cGUgdG8gYmUgc2V0IHVwIHRoYXQgZGlmZmVycyBmcm9tIHRoZSBjdXJyZW50IG9uZVxuICAgICAgdGhpcy5lbWl0TmV3Q29udGV4dEZvbGRlclR5cGUodHlwZSk7XG4gICAgfSBlbHNlIGlmICghdGhpcy5xdWVyeS5jb250ZXh0Rm9sZGVyVHlwZXMubGVuZ3RoKSB7XG4gICAgICAvLyBub3RoaW5nIHNldCB1cCBzbyBmYXJcbiAgICAgIHRoaXMuZW1pdE5ld0NvbnRleHRGb2xkZXJUeXBlKHR5cGUpO1xuICAgIH1cbiAgICAvLyB0cnlpbmcgdG8gc2V0dXAgdGhlIHNhbWUgdHlwZSBhcyB0aGUgY3VycmVudCBvbiBzaG91bGQgbm90IGVtaXQgYSBuZXcgdmFsdWVcbiAgfVxuXG4gIHByaXZhdGUgZW1pdE5ld0NvbnRleHRGb2xkZXJUeXBlKHR5cGUsIHNpbGVudD86IGJvb2xlYW4pIHtcbiAgICBpZiAoIXR5cGUgJiYgdGhpcy5xdWVyeS5jb250ZXh0Rm9sZGVyVHlwZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuYWdncyA9IHtcbiAgICAgIHR5cGU6IHtcbiAgICAgICAgc3ViOiB7XG4gICAgICAgICAgY29udGV4dGZvbGRlcnR5cGU6IHt9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9O1xuICAgIHRoaXMucXVlcnkuY29udGV4dEZvbGRlclR5cGVzID0gdHlwZSA/IFt0eXBlXSA6IFtdO1xuICAgIHRoaXMucXVlcnkuX191cGRhdGVDYXVzZSA9IFNlYXJjaFF1ZXJ5LlVQREFURV9DQVVTRS5DT05URVhUX0ZPTERFUl9TRVQ7XG4gICAgdGhpcy5xdWVyeVNvdXJjZS5uZXh0KHRoaXMucXVlcnkpO1xuICAgIGlmICghc2lsZW50KSB7XG4gICAgICB0aGlzLmFnZ3JlZ2F0ZSgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBUb2dnbGVzIGEgY3JlYXRlZCBmaWx0ZXIuXG4gICAqIEBwYXJhbSBmaWx0ZXIgLSB0aGUgZmlsdGVyIHRvIGJlIHRvZ2dsZWRcbiAgICovXG4gIHB1YmxpYyB0b2dnbGVRdWVyeUZpbHRlcihmaWx0ZXI6IFNlYXJjaEZpbHRlciwgb3ZlcnJpZGU/OiBib29sZWFuKSB7XG4gICAgdGhpcy5xdWVyeS50b2dnbGVGaWx0ZXIoZmlsdGVyLCBvdmVycmlkZSk7XG4gICAgdGhpcy5xdWVyeS5fX3VwZGF0ZUNhdXNlID0gU2VhcmNoUXVlcnkuVVBEQVRFX0NBVVNFLlRPR0dMRURfRklMVEVSO1xuICAgIHRoaXMucXVlcnlTb3VyY2UubmV4dCh0aGlzLnF1ZXJ5KTtcbiAgICB0aGlzLmFnZ3JlZ2F0ZShmaWx0ZXIucHJvcGVydHkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRvZ2dsZXMgY3JlYXRlZCBmaWx0ZXJzIGFuZCBhZ2dyZWdhdGVzIHRoZW0gdG9nZXRoZXIuXG4gICAqIEBwYXJhbSBmaWx0ZXJzIC0gdGhlIGZpbHRlcnMgdG8gYmUgdG9nZ2xlZFxuICAgKi9cbiAgcHVibGljIHRvZ2dsZVF1ZXJ5RmlsdGVycyhmaWx0ZXJzOiBTZWFyY2hGaWx0ZXJbXSwgb3ZlcnJpZGU/OiBib29sZWFuKSB7XG4gICAgbGV0IGJhc2VQYXJhbSA9ICcnO1xuICAgIGZpbHRlcnMuZm9yRWFjaChmaWx0ZXIgPT4ge1xuICAgICAgdGhpcy5xdWVyeS50b2dnbGVGaWx0ZXIoZmlsdGVyLCBvdmVycmlkZSk7XG4gICAgICB0aGlzLnF1ZXJ5Ll9fdXBkYXRlQ2F1c2UgPSBTZWFyY2hRdWVyeS5VUERBVEVfQ0FVU0UuVE9HR0xFRF9GSUxURVI7XG4gICAgICBiYXNlUGFyYW0gKz0gZmlsdGVyLnByb3BlcnR5ICsgJyAnO1xuICAgIH0pO1xuXG4gICAgdGhpcy5xdWVyeVNvdXJjZS5uZXh0KHRoaXMucXVlcnkpO1xuICAgIHRoaXMuYWdncmVnYXRlKGJhc2VQYXJhbS50cmltKCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBmaWx0ZXIgdG8gdGhlIHF1ZXJ5LlxuICAgKiBAcGFyYW0gZmlsdGVyIC0gdGhlIGZpbHRlciB0byBiZSBhZGRlZFxuICAgKi9cbiAgcHVibGljIGFkZFF1ZXJ5RmlsdGVyKGZpbHRlcjogU2VhcmNoRmlsdGVyKSB7XG4gICAgdGhpcy5xdWVyeS5hZGRGaWx0ZXIoZmlsdGVyKTtcbiAgICB0aGlzLnF1ZXJ5Ll9fdXBkYXRlQ2F1c2UgPSBTZWFyY2hRdWVyeS5VUERBVEVfQ0FVU0UuQURERURfRklMVEVSO1xuICAgIHRoaXMucXVlcnlTb3VyY2UubmV4dCh0aGlzLnF1ZXJ5KTtcbiAgICB0aGlzLmFnZ3JlZ2F0ZShmaWx0ZXIucHJvcGVydHkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZXMgYSBmaWx0ZXIgdG8gdGhlIHF1ZXJ5LlxuICAgKiBAcGFyYW0gZmlsdGVyIC0gdGhlIGZpbHRlciB0byBiZSByZW1vdmVkXG4gICAqL1xuICBwdWJsaWMgcmVtb3ZlUXVlcnlGaWx0ZXIoZmlsdGVyOiBTZWFyY2hGaWx0ZXIpIHtcbiAgICB0aGlzLnF1ZXJ5LnJlbW92ZUZpbHRlcihmaWx0ZXIucHJvcGVydHkpO1xuICAgIHRoaXMucXVlcnkuX191cGRhdGVDYXVzZSA9IFNlYXJjaFF1ZXJ5LlVQREFURV9DQVVTRS5SRU1PVkVEX0ZJTFRFUjtcbiAgICB0aGlzLnF1ZXJ5U291cmNlLm5leHQodGhpcy5xdWVyeSk7XG4gICAgdGhpcy5hZ2dyZWdhdGUoZmlsdGVyLnByb3BlcnR5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBmaWx0ZXJzIGZvciBhbiBpbmRleGRhdGEgc2VhcmNoLlxuICAgKiBTZXR0aW5nIHRoZW0gd2lsbCBhbHNvIHJlbW92ZSBhbGwgaW5kZXhkYXRhIGZpbHRlcnMgc2V0IGJlZm9yZS5cbiAgICpcbiAgICogQHBhcmFtIGZpbHRlcnMgLSB0aGUgZmlsdGVycyB0byBiZSBzZXRcbiAgICogQHBhcmFtIHNpbGVudCBJZiBzZXQgdG8gdHJ1ZSBhZ2dyZWdhdGUgd29uJ3QgYmUgY2FsbGVkXG4gICAqL1xuICBwdWJsaWMgc2V0SW5kZXhTZWFyY2hRdWVyeUZpbHRlcnMoZmlsdGVyczogU2VhcmNoRmlsdGVyW10sIHNpbGVudD86IGJvb2xlYW4pIHtcblxuICAgIC8vIHJlbW92ZSBwcmV2aW91cyBmaWx0ZXJzIChhbGwgZmlsdGVycyB0aGF0IGFyZSBub3QgYmFzZXBhcmFtIGZpbHRlcnMpXG4gICAgdGhpcy5xdWVyeS5maWx0ZXJzID0gdGhpcy5xdWVyeS5maWx0ZXJzLmZpbHRlcigoZikgPT4gdGhpcy5pc0Jhc2VQYXJhbUZpbHRlcihmKSk7XG4gICAgZm9yIChsZXQgZiBvZiBmaWx0ZXJzKSB7XG4gICAgICB0aGlzLnF1ZXJ5LmFkZEZpbHRlcihmKTtcbiAgICB9XG4gICAgaWYgKCFzaWxlbnQpIHtcbiAgICAgIHRoaXMuYWdncmVnYXRlKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldEluZGV4U2VhcmNoUXVlcnlGaWx0ZXJzKHF1ZXJ5PzogU2VhcmNoUXVlcnkpOiBTZWFyY2hGaWx0ZXJbXSB7XG4gICAgbGV0IHEgPSBxdWVyeSB8fCB0aGlzLnF1ZXJ5O1xuICAgIHJldHVybiBxLmZpbHRlcnMuZmlsdGVyKChmKSA9PiAhdGhpcy5pc0Jhc2VQYXJhbUZpbHRlcihmKSk7XG4gIH1cblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyB3aGV0aGVyIG9yIG5vdCB0aGUgcHJvdmlkZWQgc2VhcmNoIGZpbHRlciBiZWxvbmdzIHRvIGEgYmFzZSBwYXJhbS5cbiAgICpcbiAgICogQHBhcmFtIGZpbHRlciAtIHRoZSBmaWx0ZXIgdG8gYmUgY2hlY2tlZFxuICAgKi9cbiAgcHVibGljIGlzQmFzZVBhcmFtRmlsdGVyKGZpbHRlcjogU2VhcmNoRmlsdGVyKTogYm9vbGVhbiB7XG4gICAgLy9yZXR1cm4gT2JqZWN0LnZhbHVlcyhTZWFyY2hRdWVyeS5CQVNFX1BBUkFNUykuc29tZSgoYnApID0+IGZpbHRlci5wcm9wZXJ0eSA9PT0gYnApO1xuICAgIHJldHVybiBPYmplY3Qua2V5cyhTZWFyY2hRdWVyeS5CQVNFX1BBUkFNUykuc29tZSgoYnBLZXkpID0+IGZpbHRlci5wcm9wZXJ0eSA9PT0gU2VhcmNoUXVlcnkuQkFTRV9QQVJBTVNbYnBLZXldKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeGVjdXRlcyB0aGUgY3VycmVudCBxdWVyeSBhcyBhZ2dyZWdhdGUgc2VhcmNoXG4gICAqL1xuICBwdWJsaWMgYWdncmVnYXRlKGJhc2VQYXJhbSA9ICcnKSB7XG5cbiAgICBjb25zdCBhZ2dRdWVyeSA9IHthZ2dzOiB0aGlzLmFnZ3MsIC4uLnRoaXMucXVlcnkuZ2V0UXVlcnlKc29uKCl9O1xuICAgIC8vIGNvbXBhcmUgdGhlIGNhbGwgdG8gYmUgbWFkZSB3aXRoIGEgZm9ybWVyIHJlcXVlc3RcbiAgICBpZiAodGhpcy5sYXN0QWdnQ2FsbENvbXBhcmF0b3IgIT09IEpTT04uc3RyaW5naWZ5KGFnZ1F1ZXJ5KSkge1xuICAgICAgdGhpcy5sYXN0QWdnQ2FsbENvbXBhcmF0b3IgPSBKU09OLnN0cmluZ2lmeShhZ2dRdWVyeSk7XG4gICAgICB0aGlzLmdldFNlYXJjaFN0YXRlKGFnZ1F1ZXJ5KVxuICAgICAgICAuc3Vic2NyaWJlKChxdWVyeVN0YXRlOiBTZWFyY2hTdGF0ZSkgPT4ge1xuICAgICAgICAgIHF1ZXJ5U3RhdGUubGFzdENoYW5nZSA9IGJhc2VQYXJhbTtcbiAgICAgICAgICB0aGlzLnF1ZXJ5U3RhdGUgPSBxdWVyeVN0YXRlO1xuICAgICAgICAgIHRoaXMucXVlcnlTdGF0ZVNvdXJjZS5uZXh0KHRoaXMucXVlcnlTdGF0ZSk7XG4gICAgICAgIH0pO1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNldCB0aGUgcXVlcnlcbiAgICovXG4gIHB1YmxpYyByZXNldChzaWxlbnQ/OiBib29sZWFuKSB7XG4gICAgdGhpcy5xdWVyeSA9IG5ldyBTZWFyY2hRdWVyeSgpO1xuICAgIHRoaXMuc2V0RGVmYXVsdEFnZ3MoKTtcbiAgICB0aGlzLnF1ZXJ5U291cmNlLm5leHQodGhpcy5xdWVyeSk7XG4gICAgaWYgKCFzaWxlbnQpIHtcbiAgICAgIHRoaXMuYWdncmVnYXRlKCk7XG4gICAgfVxuICB9XG5cbiAgZXhpdEluZGV4ZGF0YVNlYXJjaCgpIHtcbiAgICB0aGlzLnNldEluZGV4U2VhcmNoUXVlcnlGaWx0ZXJzKFtdLCB0cnVlKTtcbiAgICB0aGlzLnNldFF1ZXJ5VHlwZXMoW10sIHRydWUpO1xuICAgIHRoaXMuc2V0Q29udGV4dFR5cGUobnVsbCwgdHJ1ZSk7XG4gICAgdGhpcy5hZ2dyZWdhdGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeGVjdXRlcyB0aGUgY3VycmVudCBxdWVyeSBhcyBhZ2dyZWdhdGUgc2VhcmNoXG4gICAqL1xuICBwdWJsaWMgZ2V0U2VhcmNoU3RhdGUocXVlcnlKc29uOiBhbnkpIHtcbiAgICByZXR1cm4gdGhpcy5zZWFyY2hTZXJ2aWNlLmdldFNlYXJjaFN0YXRlKHF1ZXJ5SnNvbik7XG4gIH1cblxuICBwdWJsaWMgYXV0b2NvbXBsZXRlKHRlcm06IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLnNlYXJjaFNlcnZpY2UuYXV0b2NvbXBsZXRlKHRlcm0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEZpbmRzIHRoZSBvYmplY3QgdHlwZSBlbGVtZW50IGluc2lkZSBvZiB0aGUgcXVlcmllcyB0YXJnZXQgdHlwZXNcbiAgICogZm9yIGEgZm9ybSBlbGVtZW50cyBuYW1lLiBVc2VkIGUuZy4gZm9yIHRoZSBzZWFyY2ggc3VtbWFyeSBwYW5lbC5cbiAgICpcbiAgICogQHBhcmFtIGZvcm1FbGVtZW50TmFtZSAtIHRoZSBuYW1lIG9mIHRoZSBmb3JtIGVsZW1lbnRcbiAgICogQHJldHVybiB0aGUgb2JqZWN0IHR5cGUgZWxlbWVudCBtYXRjaGluZyB0aGUgZm9ybSBlbGVtZW50cyBuYW1lXG4gICAqL1xuICBwdWJsaWMgZ2V0VGFyZ2V0VHlwZUVsZW1lbnRCeU5hbWUoZm9ybUVsZW1lbnROYW1lOiBzdHJpbmcpOiBhbnkge1xuICAgIGxldCBpID0gMDtcbiAgICBsZXQgbWF0Y2g7XG4gICAgd2hpbGUgKCFtYXRjaCAmJiBpIDwgdGhpcy5xdWVyeS50eXBlcy5sZW5ndGgpIHtcbiAgICAgIG1hdGNoID0gdGhpcy5xdWVyeS50eXBlc1tpXS5lbGVtZW50cy5maW5kKChlbGVtZW50KSA9PiBlbGVtZW50LnFuYW1lID09PSBmb3JtRWxlbWVudE5hbWUpO1xuICAgICAgaSsrO1xuICAgIH1cbiAgICByZXR1cm4gbWF0Y2g7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlcyB0aGUgbGFiZWwgb2YgYHN5c2Rtc2NvbnRlbnR0ZW1wbGF0ZWAgb2JqZWN0IHR5cGVzIHVzaW5nIHRyYW5zbGF0aW9ucy5cbiAgICpcbiAgICogVGhpcyBtZXRob2QgaXMgdXNlZnVsIGZvciBlbnN1cmluZyB0aGF0IHRoZSBkaXNwbGF5ZWQgbGFiZWxzIGZvciB0aGVzZSBvYmplY3QgdHlwZXMgYXJlIGxvY2FsaXplZC5cbiAgICpcbiAgICogQHBhcmFtIHtPYmplY3RUeXBlW119IHR5cGVzIC0gQW4gYXJyYXkgb2Ygb2JqZWN0IHR5cGVzIHRvIHVwZGF0ZS5cbiAgICogQHJldHVybnMge09iamVjdFR5cGVbXX0gVGhlIHVwZGF0ZWQgYXJyYXkgb2Ygb2JqZWN0IHR5cGVzIHdpdGggdHJhbnNsYXRlZCBsYWJlbHMgZm9yIGBzeXNkbXNjb250ZW50dGVtcGxhdGVgIHR5cGVzLlxuICAgKi9cbiAgcHJpdmF0ZSB1cGRhdGVTeXNEbXNDb250ZW50VGVtcGxhdGVMYWJlbCh0eXBlczogT2JqZWN0VHlwZVtdKTogT2JqZWN0VHlwZVtdIHtcbiAgICByZXR1cm4gdHlwZXMubWFwKCh0eXBlOiBPYmplY3RUeXBlKSA9PiB7XG4gICAgICBpZiAodHlwZS5xbmFtZSA9PT0gJ3N5c2Rtc2NvbnRlbnR0ZW1wbGF0ZScpIHtcbiAgICAgICAgdHlwZS5hY3R1YWxMYWJlbCA9IHR5cGUuYWN0dWFsTGFiZWwgfHwgdHlwZS5sYWJlbDtcbiAgICAgICAgdHlwZS5sYWJlbCA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoYGVvLnR5cGUubGFiZWwuJHt0eXBlLmFjdHVhbExhYmVsLnRvTG93ZXJDYXNlKCl9YCk7XG4gICAgICB9XG4gICAgICByZXR1cm4gdHlwZTtcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -60,4 +60,4 @@ export class SelectionService {
|
|
|
60
60
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: SelectionService, decorators: [{
|
|
61
61
|
type: Injectable
|
|
62
62
|
}], ctorParameters: () => [{ type: i1.EventService }] });
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2VvLWZyYW1ld29yay1jb3JlL3NlbGVjdGlvbi9zZWxlY3Rpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1QyxPQUFPLEVBQWEsYUFBYSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBQyxVQUFVLEVBQWUsTUFBTSxjQUFjLENBQUM7OztBQVN0RCxNQUFNLE9BQU8sZ0JBQWdCO0lBYzNCLFlBQW9CLFlBQTBCO1FBQTFCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBWnRDLGFBQVEsR0FBUSxFQUFFLENBQUM7UUFFbkIsY0FBUyxHQUFVLEVBQUUsQ0FBQztRQUN0QixvQkFBZSxHQUFHLElBQUksYUFBYSxDQUFRLENBQUMsQ0FBQyxDQUFDO1FBQy9DLGVBQVUsR0FBc0IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFFM0YsV0FBTSxHQUFRLEVBQUUsQ0FBQztRQUNqQixnQkFBVyxHQUFHLElBQUksYUFBYSxDQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ3pDLFdBQU0sR0FBb0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFFakYsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUd4QixJQUFJLENBQUMsWUFBWTthQUNkLEVBQUUsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDO2FBQ3JCLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDYixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDcEUsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU0sS0FBSyxDQUFDLEtBQVU7UUFDckIsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztZQUNwQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDckMsQ0FBQztJQUNILENBQUM7SUFFTSxHQUFHLENBQUMsU0FBZ0I7UUFDekIsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztZQUMzQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDNUMsQ0FBQztJQUNILENBQUM7SUFFTSxPQUFPLENBQUMsR0FBRyxHQUFHLElBQUk7UUFDdkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUM7SUFDdkIsQ0FBQztJQUVNLEdBQUc7UUFDUixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVNLEtBQUs7UUFDVixJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2IsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNqQixDQUFDO0lBRU0sUUFBUTtRQUNiLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRU0sSUFBSSxDQUFDLEVBQVU7UUFDcEIsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksSUFBSSxDQUFxQixDQUFDO0lBQ3pELENBQUM7SUFFTSxTQUFTLENBQUMsRUFBVTtRQUN6QixJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzVELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN2QixDQUFDOzhHQTdEVSxnQkFBZ0I7a0hBQWhCLGdCQUFnQjs7MkZBQWhCLGdCQUFnQjtrQkFENUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge2RlYm91bmNlVGltZX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBSZXBsYXlTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7RW5haW9FdmVudCwgRXZlbnRTZXJ2aWNlfSBmcm9tICdAZW8tc2RrL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNlbGVjdGlvbkNvbmZpZyB7XG4gIGluPzogc3RyaW5nO1xuICBvdXQ/OiBzdHJpbmc7XG4gIHVzZVNlbGVjdGlvbj86IGJvb2xlYW47XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTZWxlY3Rpb25TZXJ2aWNlIHtcblxuICBwcml2YXRlIGNoaWxkcmVuOiBhbnkgPSB7fTtcblxuICBwcml2YXRlIHNlbGVjdGlvbjogYW55W10gPSBbXTtcbiAgcHJpdmF0ZSBzZWxlY3Rpb25Tb3VyY2UgPSBuZXcgUmVwbGF5U3ViamVjdDxhbnlbXT4oMSk7XG4gIHB1YmxpYyBzZWxlY3Rpb24kOiBPYnNlcnZhYmxlPGFueVtdPiA9IHRoaXMuc2VsZWN0aW9uU291cmNlLmFzT2JzZXJ2YWJsZSgpLnBpcGUoZGVib3VuY2VUaW1lKDIwMCkpO1xuXG4gIHByaXZhdGUgX2ZvY3VzOiBhbnkgPSB7fTtcbiAgcHJpdmF0ZSBmb2N1c1NvdXJjZSA9IG5ldyBSZXBsYXlTdWJqZWN0PGFueT4oMSk7XG4gIHB1YmxpYyBmb2N1cyQ6IE9ic2VydmFibGU8YW55PiA9IHRoaXMuZm9jdXNTb3VyY2UuYXNPYnNlcnZhYmxlKCkucGlwZShkZWJvdW5jZVRpbWUoMjAwKSk7XG5cbiAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGV2ZW50U2VydmljZTogRXZlbnRTZXJ2aWNlKSB7XG4gICAgdGhpcy5ldmVudFNlcnZpY2VcbiAgICAgIC5vbihFbmFpb0V2ZW50LkxPR09VVClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmNsZWFyKCk7XG4gICAgICAgIE9iamVjdC5rZXlzKHRoaXMuY2hpbGRyZW4pLmZvckVhY2goayA9PiB0aGlzLmNoaWxkcmVuW2tdLmNsZWFyKCkpO1xuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZm9jdXMoZm9jdXM6IGFueSkge1xuICAgIGlmICghdGhpcy5fZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuX2ZvY3VzID0gZm9jdXM7XG4gICAgICB0aGlzLmZvY3VzU291cmNlLm5leHQodGhpcy5fZm9jdXMpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBzZXQoc2VsZWN0aW9uOiBhbnlbXSkge1xuICAgIGlmICghdGhpcy5fZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuc2VsZWN0aW9uID0gc2VsZWN0aW9uO1xuICAgICAgdGhpcy5zZWxlY3Rpb25Tb3VyY2UubmV4dCh0aGlzLnNlbGVjdGlvbik7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGRpc2FibGUodmFsID0gdHJ1ZSkge1xuICAgIHRoaXMuX2Rpc2FibGVkID0gdmFsO1xuICB9XG5cbiAgcHVibGljIGdldCgpIHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3Rpb247XG4gIH1cblxuICBwdWJsaWMgY2xlYXIoKSB7XG4gICAgdGhpcy5zZXQoW10pO1xuICAgIHRoaXMuZm9jdXMoe30pO1xuICB9XG5cbiAgcHVibGljIGdldEZvY3VzKCkge1xuICAgIHJldHVybiB0aGlzLl9mb2N1cztcbiAgfVxuXG4gIHB1YmxpYyBmaW5kKGlkOiBzdHJpbmcpOiBTZWxlY3Rpb25TZXJ2aWNlIHtcbiAgICByZXR1cm4gKHRoaXMuY2hpbGRyZW5baWRdIHx8IHRoaXMpIGFzIFNlbGVjdGlvblNlcnZpY2U7XG4gIH1cblxuICBwdWJsaWMgY3JlYXRlTmV3KGlkOiBzdHJpbmcpOiBTZWxlY3Rpb25TZXJ2aWNlIHtcbiAgICB0aGlzLmNoaWxkcmVuW2lkXSA9IG5ldyBTZWxlY3Rpb25TZXJ2aWNlKHRoaXMuZXZlbnRTZXJ2aWNlKTtcbiAgICByZXR1cm4gdGhpcy5maW5kKGlkKTtcbiAgfVxuXG59XG4iXX0=
|
|
@@ -39,4 +39,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImpor
|
|
|
39
39
|
providedIn: 'root'
|
|
40
40
|
}]
|
|
41
41
|
}], ctorParameters: () => [{ type: i1.Title }, { type: i2.SelectionService }, { type: i3.Config }] });
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS10aXRsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1mcmFtZXdvcmstY29yZS90aXRsZS9wYWdlLXRpdGxlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFRekMsTUFBTSxPQUFPLGdCQUFnQjtJQUszQixZQUFvQixZQUFtQixFQUFVLFNBQTJCLEVBQVUsTUFBYztRQUFoRixpQkFBWSxHQUFaLFlBQVksQ0FBTztRQUFVLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNsRyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLElBQUksb0JBQW9CLENBQUM7UUFDbEYsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNO2FBQ2xCLFNBQVMsQ0FBQyxDQUFDLElBQWUsRUFBRSxFQUFFO1lBQzdCLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUNuQixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsS0FBSyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUN6RyxDQUFDO2lCQUFNLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDOUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3pDLENBQUM7aUJBQU0sQ0FBQztnQkFDTixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDekIsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFlBQVksQ0FBQyxJQUFZO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ2pELENBQUM7OEdBM0JVLGdCQUFnQjtrSEFBaEIsZ0JBQWdCLGNBRmYsTUFBTTs7MkZBRVAsZ0JBQWdCO2tCQUg1QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Rtc09iamVjdCwgQ29uZmlnfSBmcm9tICdAZW8tc2RrL2NvcmUnO1xuaW1wb3J0IHtUaXRsZX0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQge1NlbGVjdGlvblNlcnZpY2V9IGZyb20gJy4uL3NlbGVjdGlvbi9zZWxlY3Rpb24uc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFBhZ2VUaXRsZVNlcnZpY2Uge1xuXG4gIGJhc2VUaXRsZTogc3RyaW5nO1xuICBwcml2YXRlIERFRkFVTFRfVElUTEU6IHN0cmluZztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRpdGxlU2VydmljZTogVGl0bGUsIHByaXZhdGUgc2VsZWN0aW9uOiBTZWxlY3Rpb25TZXJ2aWNlLCBwcml2YXRlIGNvbmZpZzogQ29uZmlnKSB7XG4gICAgdGhpcy5ERUZBVUxUX1RJVExFID0gdGhpcy5jb25maWcuZ2V0UmF3KCdkYXNoYm9hcmRUaXRsZScpIHx8ICd5dXV2aXPCriBSQUQgY2xpZW50JztcbiAgICB0aGlzLnNlbGVjdGlvbi5mb2N1cyRcbiAgICAgIC5zdWJzY3JpYmUoKGl0ZW06IERtc09iamVjdCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5iYXNlVGl0bGUpIHtcbiAgICAgICAgICB0aGlzLnRpdGxlU2VydmljZS5zZXRUaXRsZSgoaXRlbSAmJiBpdGVtLnRpdGxlKSA/IGAke3RoaXMuYmFzZVRpdGxlfTogJHtpdGVtLnRpdGxlfWAgOiB0aGlzLmJhc2VUaXRsZSk7XG4gICAgICAgIH0gZWxzZSBpZiAoaXRlbSAmJiBpdGVtLnRpdGxlKSB7XG4gICAgICAgICAgdGhpcy50aXRsZVNlcnZpY2Uuc2V0VGl0bGUoaXRlbS50aXRsZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5zZXREZWZhdWx0VGl0bGUoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBzZXRCYXNlVGl0bGUoYmFzZTogc3RyaW5nKSB7XG4gICAgdGhpcy5iYXNlVGl0bGUgPSBiYXNlO1xuICAgIHRoaXMudGl0bGVTZXJ2aWNlLnNldFRpdGxlKHRoaXMuYmFzZVRpdGxlIHx8IHRoaXMuREVGQVVMVF9USVRMRSk7XG4gIH1cblxuICBzZXREZWZhdWx0VGl0bGUoKSB7XG4gICAgdGhpcy5iYXNlVGl0bGUgPSBudWxsO1xuICAgIHRoaXMudGl0bGVTZXJ2aWNlLnNldFRpdGxlKHRoaXMuREVGQVVMVF9USVRMRSk7XG4gIH1cbn1cbiJdfQ==
|
package/esm2022/public_api.mjs
CHANGED
|
@@ -4,4 +4,4 @@
|
|
|
4
4
|
export * from './app/eo-framework-core/index';
|
|
5
5
|
export * from './app/eo-framework/index';
|
|
6
6
|
export * from './app/eo-client/index';
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGNsaWVudFxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay1jb3JlL2luZGV4JztcbmV4cG9ydCAqIGZyb20gJy4vYXBwL2VvLWZyYW1ld29yay9pbmRleCc7XG5leHBvcnQgKiBmcm9tICcuL2FwcC9lby1jbGllbnQvaW5kZXgnO1xuXG4iXX0=
|