nuxeo-development-framework 3.9.2 → 3.9.3
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/bundles/nuxeo-development-framework.umd.js +939 -1100
- package/bundles/nuxeo-development-framework.umd.js.map +1 -1
- package/esm2015/lib/components/activities-log/activities-log/activities-log.component.js +4 -4
- package/esm2015/lib/components/activities-log/activities-log/activities-log.service.js +4 -4
- package/esm2015/lib/components/activities-log/activities-log.module.js +5 -5
- package/esm2015/lib/components/activity/activity/activity.component.js +4 -4
- package/esm2015/lib/components/activity/activity.module.js +5 -5
- package/esm2015/lib/components/attachment-item/attachment-item/attachment-item.component.js +4 -4
- package/esm2015/lib/components/attachment-item/attachment-item.module.js +5 -5
- package/esm2015/lib/components/attachment-modal/attachment-modal.module.js +5 -5
- package/esm2015/lib/components/attachment-modal/attachments/attachments.component.js +4 -4
- package/esm2015/lib/components/avatar/avatar/avatar.component.js +4 -4
- package/esm2015/lib/components/avatar/avatar.module.js +5 -5
- package/esm2015/lib/components/card/card.component.js +4 -4
- package/esm2015/lib/components/card/card.module.js +5 -5
- package/esm2015/lib/components/comments/comments.module.js +5 -5
- package/esm2015/lib/components/comments/components/comment-item/comment-item.component.js +5 -4
- package/esm2015/lib/components/comments/components/comments-dashlet/comments-dashlet.component.js +4 -4
- package/esm2015/lib/components/comments/components/comments-list/comments-list.component.js +4 -4
- package/esm2015/lib/components/comments/components/edit-delete-modal/edit-delete-modal.component.js +4 -4
- package/esm2015/lib/components/comments/services/comment-api.service.js +4 -4
- package/esm2015/lib/components/confirm-caller/confirm-caller.dialog.js +4 -4
- package/esm2015/lib/components/confirm-caller/confirm-caller.module.js +5 -5
- package/esm2015/lib/components/confirm-caller/confirm-dialog/confirm-dialog.component.js +4 -4
- package/esm2015/lib/components/confirmation-dialog/confirmation-dialog/confirmation-dialog.component.js +4 -4
- package/esm2015/lib/components/confirmation-dialog/confirmation-dialog.module.js +5 -5
- package/esm2015/lib/components/correspondence-relation/components/correspondence-relation/correspondence-relation.component.js +4 -4
- package/esm2015/lib/components/correspondence-relation/components/correspondence-relation-create-form/correspondence-relation-create-form.component.js +5 -5
- package/esm2015/lib/components/correspondence-relation/components/correspondence-relation-list/correspondence-relation-list.component.js +4 -4
- package/esm2015/lib/components/correspondence-relation/components/correspondence-relation-reply/correspondence-relation-reply.component.js +4 -4
- package/esm2015/lib/components/correspondence-relation/components/versions/versions.component.js +7 -4
- package/esm2015/lib/components/correspondence-relation/correspondence-relation.module.js +5 -5
- package/esm2015/lib/components/correspondence-relation/services/correspondence-realation.service.js +4 -4
- package/esm2015/lib/components/correspondence-relation/services/viewer-files.service.js +4 -4
- package/esm2015/lib/components/create-entity/create-entity/create-entity.component.js +4 -4
- package/esm2015/lib/components/create-entity/create-entity.module.js +5 -5
- package/esm2015/lib/components/cts-tags/components/correspondence-tags/correspondence-tags.component.js +4 -4
- package/esm2015/lib/components/cts-tags/cts-tags.module.js +5 -5
- package/esm2015/lib/components/cts-tags/services/tags-api.service.js +4 -4
- package/esm2015/lib/components/custom-toastr/components/custom-toastr/custom-toastr.component.js +4 -4
- package/esm2015/lib/components/custom-toastr/custom-toastr.module.js +5 -5
- package/esm2015/lib/components/custom-toastr/services/custom-toastr.service.js +4 -4
- package/esm2015/lib/components/display-suitable-icon/display-suitable-icon/display-suitable-icon.component.js +4 -4
- package/esm2015/lib/components/display-suitable-icon/display-suitable-icon/icon.service.js +4 -4
- package/esm2015/lib/components/display-suitable-icon/display-suitable-icon.module.js +5 -5
- package/esm2015/lib/components/documents/components/attachments-list/attachments-list.component.js +4 -4
- package/esm2015/lib/components/documents/components/attachments-page-provider/attachments-page-provider.component.js +4 -4
- package/esm2015/lib/components/documents/components/document-list/documents-list.component.js +4 -4
- package/esm2015/lib/components/documents/components/document-scan/document-scan.component.js +4 -4
- package/esm2015/lib/components/documents/components/document-scan/document-scan.service.js +4 -4
- package/esm2015/lib/components/documents/components/document-upload/document-upload.component.js +4 -4
- package/esm2015/lib/components/documents/components/documents/documents.component.js +4 -4
- package/esm2015/lib/components/documents/documents.module.js +5 -5
- package/esm2015/lib/components/documents/services/document-templates.service.js +4 -4
- package/esm2015/lib/components/documents/services/documents.service.js +4 -4
- package/esm2015/lib/components/dynamic-chart/dynamic-chart/dynamic-chart.component.js +4 -4
- package/esm2015/lib/components/dynamic-chart/dynamic-chart.module.js +5 -5
- package/esm2015/lib/components/dynamic-chart/dynamic-single-chart/dynamic-single-chart.component.js +4 -4
- package/esm2015/lib/components/dynamic-chart/services/chart-data.service.js +4 -4
- package/esm2015/lib/components/dynamic-fields-renderer/dynamic-fields-renderer/dynamic-fields-renderer.component.js +4 -4
- package/esm2015/lib/components/dynamic-fields-renderer/dynamic-fields-renderer.module.js +5 -5
- package/esm2015/lib/components/dynamic-filter/dynamic-filter/dynamic-filter.component.js +4 -4
- package/esm2015/lib/components/dynamic-filter/dynamic-filter.module.js +5 -5
- package/esm2015/lib/components/dynamic-form/components/department-form/department-form.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form/dynamic-form.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form/fields.adapter.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form/form-builder.service.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-boolitem/dynamic-form-boolitem.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-builder/dynamic-form-builder.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-checkbox-item/dynamic-form-checkbox-item.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-dateitem/dynamic-form-dateitem.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-dateitem/owlDateTimeIntl.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-department/dynamic-form-department.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-department/services/department-api.service.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-department/services/department-management.service.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-field/dynamic-form-field.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-hijri-dateitem/dynamic-form-hijri-dateitem.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-item-dispatcher/dynamic-form-item-dispatcher.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-mapitem/dynamic-form-mapitem.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-options/dynamic-form-options.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-select-tag/dynamic-form-select-tag.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-select-user-filter/dynamic-form-select-user-filter.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-select-users/dynamic-form-select-users.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-select-users/services/user-api.service.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-selectitem/dynamic-form-selectitem.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-slide-toggleitem/dynamic-form-slide-toggleitem.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-textarea/dynamic-form-textarea.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-textitem/dynamic-form-textitem.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-treeview-select/dropdown-treeview-select-i18n.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-treeview-select/dropdown-treeview-select.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-viewer/dynamic-form-viewer.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-vocabulary-item/dynamic-form-vocabulary-item.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/form-wrappers/date-wrapper/date-wrapper.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/form-wrappers/toggle-wrapper/toggle-wrapper.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/form-wrappers/user-selector-wrapper/user-selector-wrapper.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/form-wrappers/vocabulary-wrapper/vocabulary-wrapper.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/directives/dynamic-form-content-proxy.directive.js +4 -4
- package/esm2015/lib/components/dynamic-form/dynamic-form.module.js +5 -5
- package/esm2015/lib/components/dynamic-form/services/card-item-types.service.js +4 -4
- package/esm2015/lib/components/dynamic-form/services/dynamic-form-update.service.js +4 -4
- package/esm2015/lib/components/dynamic-search/dynamic-search/dynamic-search.component.js +4 -4
- package/esm2015/lib/components/dynamic-search/dynamic-search.module.js +5 -5
- package/esm2015/lib/components/dynamic-table/dynamic-table/dynamic-table.component.js +4 -4
- package/esm2015/lib/components/dynamic-table/dynamic-table.module.js +5 -5
- package/esm2015/lib/components/dynamic-table/services/dynamic-table.service.js +4 -4
- package/esm2015/lib/components/dynamic-tabs/dynamic-tabs/dynamic-tabs.component.js +4 -4
- package/esm2015/lib/components/dynamic-tabs/dynamic-tabs.module.js +5 -5
- package/esm2015/lib/components/dynamic-view/boolean-viewer/boolean-viewer.component.js +4 -4
- package/esm2015/lib/components/dynamic-view/custom-document-viewer/custom-document-viewer.component.js +4 -4
- package/esm2015/lib/components/dynamic-view/custom-pp-viewer/custom-pp-viewer.component.js +4 -4
- package/esm2015/lib/components/dynamic-view/cutome-voc-viewer/cutome-voc-viewer.component.js +4 -4
- package/esm2015/lib/components/dynamic-view/data-viewer/data-viewer.component.js +4 -4
- package/esm2015/lib/components/dynamic-view/date-viewer/date-viewer.component.js +4 -4
- package/esm2015/lib/components/dynamic-view/department-viewer/department-viewer.component.js +4 -4
- package/esm2015/lib/components/dynamic-view/dropdown-viewer/dropdown-viewer.component.js +4 -4
- package/esm2015/lib/components/dynamic-view/dynamic-view.module.js +5 -5
- package/esm2015/lib/components/dynamic-view/dynamic-viewe.service.js +4 -4
- package/esm2015/lib/components/dynamic-view/list-viewer/list-viewer.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/add-to-collection/add-to-collection.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/clipboard/clipboard.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/copy/copy.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/create-directory/create-directory.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/create-modal/create-modal.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/creation-type/creation-type.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/delete/delete.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/folder-modal/folder-modal.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/loan-request/loan-request.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/move/move.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/publish-dialog/publish-dialog.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/rename/rename.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/scan-modal/scan-modal.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/share-dialog/share-dialog.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/sidepanel/sidepanel.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/template-modal/template-modal.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/transfer-doc/transfer-doc.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/update-modal/update-modal.component.js +4 -4
- package/esm2015/lib/components/file-manger/directives/file-grid-infinite-scroll.directive.js +4 -4
- package/esm2015/lib/components/file-manger/file-manager.abstract.js +4 -4
- package/esm2015/lib/components/file-manger/file-manger.module.js +5 -5
- package/esm2015/lib/components/filter/filter/filter.component.js +4 -4
- package/esm2015/lib/components/filter/filter.module.js +5 -5
- package/esm2015/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/gregorian-datepicker/gregorian-datepicker.component.js +4 -4
- package/esm2015/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/hijri-datepicker/hijri-datepicker.component.js +4 -4
- package/esm2015/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/hijri-gregorian-datepicker.component.js +4 -4
- package/esm2015/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/provide-parent-form.directive.js +4 -4
- package/esm2015/lib/components/hijri-gregorian-datepicker/ngx-hijri-gregorian-datepicker.module.js +5 -5
- package/esm2015/lib/components/hijri-gregorian-datepicker/services/date-formatter.service.js +4 -4
- package/esm2015/lib/components/hijri-gregorian-datepicker/services/date-helper.service.js +4 -4
- package/esm2015/lib/components/hijri-gregorian-datepicker/utils/CustomNgbDateParserFormatter.js +4 -4
- package/esm2015/lib/components/hijri-gregorian-datepicker/utils/IslamicI18n.js +4 -4
- package/esm2015/lib/components/latest-activity/components/activity-line/activity-line.component.js +4 -4
- package/esm2015/lib/components/latest-activity/components/latest-activity/latest-activity.component.js +4 -4
- package/esm2015/lib/components/latest-activity/components/single-activity/single-activity.component.js +4 -4
- package/esm2015/lib/components/latest-activity/latest-activity.module.js +5 -5
- package/esm2015/lib/components/latest-activity/services/activity-log.service.js +4 -4
- package/esm2015/lib/components/mutiple-dynamic-form-viewer/multiple-dynamic-form-viewer/multiple-dynamic-form-viewer.component.js +4 -4
- package/esm2015/lib/components/mutiple-dynamic-form-viewer/mutiple-dynamic-form-viewer.module.js +5 -5
- package/esm2015/lib/components/notifications/components/base-list-notfications.component.js +4 -4
- package/esm2015/lib/components/notifications/components/base-notifications.component.js +7 -7
- package/esm2015/lib/components/notifications/components/notification-item/get-icon.pipe.js +4 -4
- package/esm2015/lib/components/notifications/components/notification-item/notification-item.component.js +4 -4
- package/esm2015/lib/components/notifications/components/notification-source-select/notification-source-select.component.js +4 -4
- package/esm2015/lib/components/notifications/components/notification-status-toggle/notification-status-toggle.component.js +4 -4
- package/esm2015/lib/components/notifications/components/notifications-button/notifications-button.component.js +4 -4
- package/esm2015/lib/components/notifications/components/notifications-date-select/notifications-date-select.component.js +4 -4
- package/esm2015/lib/components/notifications/components/notifications-list/notifications-list.component.js +4 -4
- package/esm2015/lib/components/notifications/components/notifications-list-actions/notifications-list-actions.component.js +4 -4
- package/esm2015/lib/components/notifications/components/notifications-settings/check-if-subscribed.pipe.js +4 -4
- package/esm2015/lib/components/notifications/components/notifications-settings/notifications-settings.component.js +4 -4
- package/esm2015/lib/components/notifications/components/notifications-sidebar/notifications-sidebar-content.js +4 -4
- package/esm2015/lib/components/notifications/components/notifications-sidebar/notifications-sidebar.component.js +4 -4
- package/esm2015/lib/components/notifications/containers/notifications-list-container/notifications-list-container.component.js +4 -4
- package/esm2015/lib/components/notifications/containers/notifications-settings-container/notifications-settings-container.component.js +4 -4
- package/esm2015/lib/components/notifications/directives/button.directive.js +4 -4
- package/esm2015/lib/components/notifications/directives/notification.directive.js +4 -4
- package/esm2015/lib/components/notifications/notifications.module.js +5 -5
- package/esm2015/lib/components/notifications/services/listener.service.js +4 -4
- package/esm2015/lib/components/notifications/services/notifications.service.js +4 -4
- package/esm2015/lib/components/notifications/services/params.service.js +4 -4
- package/esm2015/lib/components/notifications/services/response.service.js +4 -4
- package/esm2015/lib/components/pagination/pagination/pagination.component.js +4 -4
- package/esm2015/lib/components/pagination/pagination.module.js +5 -5
- package/esm2015/lib/components/pdf-tron/pdf-tron.module.js +5 -5
- package/esm2015/lib/components/pdf-tron/pdftron/pdftron.component.js +4 -4
- package/esm2015/lib/components/pdf-tron/pdftron/pdftron.service.js +4 -4
- package/esm2015/lib/components/permissions/add-permissions-dialog/add-permissions-dialog.component.js +4 -4
- package/esm2015/lib/components/permissions/permission.service.js +4 -4
- package/esm2015/lib/components/permissions/permissions/permissions.component.js +4 -4
- package/esm2015/lib/components/permissions/permissions-template/permissions-template.component.js +4 -4
- package/esm2015/lib/components/permissions/permissions.module.js +5 -5
- package/esm2015/lib/components/select/select/select.component.js +4 -4
- package/esm2015/lib/components/select/select.module.js +5 -5
- package/esm2015/lib/components/select-users-by-department/select-users-by-department.module.js +5 -5
- package/esm2015/lib/components/select-users-by-department/select-users-by-departments/department-management.service.js +4 -4
- package/esm2015/lib/components/select-users-by-department/select-users-by-departments/select-users-by-departments.component.js +4 -4
- package/esm2015/lib/components/table/dynamic-column/dynamic-column.component.js +4 -4
- package/esm2015/lib/components/table/table/table.component.js +4 -4
- package/esm2015/lib/components/table/table.module.js +5 -5
- package/esm2015/lib/components/toasts/components/notification-toast/notification-toast.component.js +4 -4
- package/esm2015/lib/components/toasts/toasts.module.js +5 -5
- package/esm2015/lib/components/user/user/user.component.js +4 -4
- package/esm2015/lib/components/user/user.module.js +5 -5
- package/esm2015/lib/components/users-card/users-card.component.js +4 -4
- package/esm2015/lib/components/users-card/users-card.module.js +5 -5
- package/esm2015/lib/components/viewer-log/components/viewer-log/viewer-log.component.js +4 -4
- package/esm2015/lib/components/viewer-log/viewer-log.module.js +5 -5
- package/esm2015/lib/components/vocabulary/services/vocabulary-api.service.js +4 -4
- package/esm2015/lib/components/vocabulary/translated-vocabulary-select/translated-vocabulary-select.component.js +4 -4
- package/esm2015/lib/components/vocabulary/vocabulary/vocabulary.component.js +4 -4
- package/esm2015/lib/components/vocabulary/vocabulary.module.js +5 -5
- package/esm2015/lib/configuration/app-config.service.js +4 -4
- package/esm2015/lib/core/adapters/adapter.service.js +4 -4
- package/esm2015/lib/core/core.module.js +5 -5
- package/esm2015/lib/core/services/callApi/call-api.service.js +4 -4
- package/esm2015/lib/core/services/extension/component-register.service.js +4 -4
- package/esm2015/lib/core/services/extension/extension-loader.service.js +4 -4
- package/esm2015/lib/core/services/extension/extension.service.js +4 -4
- package/esm2015/lib/core/services/initialization/initialization.service.js +4 -4
- package/esm2015/lib/core/services/localStorag/local-storag.service.js +4 -4
- package/esm2015/lib/core/services/nuxeo/nuxeo.service.js +4 -4
- package/esm2015/lib/core/services/roles/roles.service.js +4 -4
- package/esm2015/lib/core/services/translation/translate-loader.service.js +4 -4
- package/esm2015/lib/core/services/translation/translation.service.js +4 -4
- package/esm2015/lib/core/services/user/user-preferences.service.js +4 -4
- package/esm2015/lib/core/utilities/moment-date-adapter.js +4 -4
- package/esm2015/lib/core/utilities/utility.service.js +4 -4
- package/esm2015/lib/directive/app-has-role/app-has-role.directive.js +4 -4
- package/esm2015/lib/directive/clickOutSide/click-outside.directive.js +4 -4
- package/esm2015/lib/directive/directive.module.js +5 -5
- package/esm2015/lib/directive/drag-and-drop/drag-and-drop.directive.js +4 -4
- package/esm2015/lib/directive/permissions/evaluators.service.js +4 -4
- package/esm2015/lib/directive/permissions/permissions.directive.js +4 -4
- package/esm2015/lib/directive/rtl/set-dir-rtl.directive.js +4 -4
- package/esm2015/lib/directive/rtl/set-rtl.directive.js +4 -4
- package/esm2015/lib/nuxeo-development-framework.component.js +4 -4
- package/esm2015/lib/nuxeo-development-framework.module.js +5 -5
- package/esm2015/lib/nuxeo-development-framework.service.js +4 -4
- package/esm2015/lib/pipes/file-size.pipe.js +4 -4
- package/esm2015/lib/pipes/hijri-date.pipe.js +4 -4
- package/esm2015/lib/pipes/localized-date.pipe.js +4 -4
- package/esm2015/lib/pipes/multi-value.pipe.js +4 -4
- package/esm2015/lib/pipes/pipes.module.js +5 -5
- package/esm2015/lib/pipes/secure-html.pipe.js +4 -4
- package/esm2015/lib/pipes/secure.pipe.js +4 -4
- package/esm2015/lib/pipes/time-ago.pipe.js +4 -4
- package/esm2015/lib/shared/components/button/button.component.js +4 -4
- package/esm2015/lib/shared/components/item-list/item-list.component.js +4 -4
- package/esm2015/lib/shared/components/no-data/no-data.component.js +4 -4
- package/esm2015/lib/shared/components/read-more/read-more.component.js +4 -4
- package/esm2015/lib/shared/components/search-autocomplete/search-autocomplete.component.js +4 -4
- package/esm2015/lib/shared/components/spinner/spinner.component.js +4 -4
- package/esm2015/lib/shared/components/user-card/user-card.component.js +4 -4
- package/esm2015/lib/shared/libraryShared.module.js +5 -5
- package/esm2015/lib/shared-services/dialog-mangment.service.js +4 -4
- package/esm2015/lib/shared-services/dynamic-form.service.js +4 -4
- package/esm2015/lib/shared-services/file-manager.adapter.js +4 -4
- package/esm2015/lib/shared-services/file-manager.service.js +4 -4
- package/esm2015/lib/shared-services/global-admin.service.js +4 -4
- package/esm2015/lib/shared-services/global-pdftron.service.js +4 -4
- package/esm2015/lib/shared-services/mainfolder.service.js +4 -4
- package/esm2015/lib/shared-services/publishing-document.service.js +4 -4
- package/esm2015/lib/shared-services/recently-viewed.service.js +4 -4
- package/esm2015/lib/shared-services/shared-docs.service.js +4 -4
- package/esm2015/lib/shared-services/shared-services.module.js +5 -5
- package/esm2015/lib/shared-services/upload-file.service.js +4 -4
- package/esm2015/lib/shared-services/upload-managment.service.js +4 -4
- package/esm2015/lib/shared-services/user.service.js +4 -4
- package/fesm2015/nuxeo-development-framework.js +849 -845
- package/fesm2015/nuxeo-development-framework.js.map +1 -1
- package/lib/components/correspondence-relation/components/versions/versions.component.d.ts +2 -1
- package/package.json +1 -1
|
@@ -399,9 +399,9 @@ export class DynamicChartComponent {
|
|
|
399
399
|
return 'hsl(' + h + ', ' + s + '%, ' + l + '%)';
|
|
400
400
|
}
|
|
401
401
|
}
|
|
402
|
-
DynamicChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
403
|
-
DynamicChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DynamicChartComponent, selector: "cts-dynamic-chart", inputs: { prefix: "prefix", chartType: "chartType", randomColors: "randomColors", pageProvider: "pageProvider", headers: "headers", observable: "observable", aggregations: "aggregations", quickFilters: "quickFilters", systemCurrentLifeCycleState: "systemCurrentLifeCycleState", range: "range", label: "label", selectedRange: "selectedRange", tenantId: "tenantId", colors: "colors", randomColor: "randomColor", fetchedKey: "fetchedKey", pageProviderTwo: "pageProviderTwo", quickFilterTwo: "quickFilterTwo", quickFilterThree: "quickFilterThree", combinedData: "combinedData", statusOne: "statusOne", statusTwo: "statusTwo", statusThree: "statusThree", min: "min", max: "max", width: "width", height: "height", card: "card", cardTitle: "cardTitle", inputChartData: "inputChartData", isInternalActive: "isInternalActive" }, viewQueries: [{ propertyName: "chart", first: true, predicate: ["revenueLineChart"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"card-continer\" *ngIf=\"card; else test\">\r\n <div class=\"chart-card-header\">\r\n <div class=\"chart-card-title\">{{ cardTitle | translate }}</div>\r\n <button class=\"chart-card-button\" (click)=\"previewCorrespondences()\">\r\n {{ \"report.Preview\" | translate }}\r\n </button>\r\n </div>\r\n <ng-container *ngIf=\"isFetching\">\r\n <cts-spinner></cts-spinner>\r\n </ng-container>\r\n <div class=\"stat\" [style.height.px]=\"height\">\r\n <div [hidden]=\"data.data?.length == 0 || data.length == 0\">\r\n <canvas #revenueLineChart [height]=\"height\" [width]=\"width\"></canvas>\r\n </div>\r\n <div class=\"no-stats\" *ngIf=\"data.data?.length == 0 || data.length == 0\">\r\n <span>{{ \"STATS.noData\" | translate }}</span>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #test>\r\n <div class=\"stat\">\r\n <canvas #revenueLineChart [height]=\"height\" [width]=\"width\"></canvas>\r\n </div>\r\n</ng-template>\r\n\r\n", styles: [".bi{margin:0!important}.memo-sorting-wrapper{width:265px;margin:0 10px;height:100%;display:flex}.memo-sorting-wrapper .sorting-direction{width:65px;height:40px;background-color:#465573;color:#fff;font-size:20px;display:flex;justify-content:center;align-items:center;cursor:pointer}.memo-sorting-wrapper .memo-sorting-trigger{width:calc(100% - 65px);height:100%;background-color:transparent;border:1px solid lightgrey;display:flex;justify-content:space-between;align-items:center;padding:0 15px;font-size:14px}.memo-sorting-wrapper .memo-sorting-trigger i{font-size:16px;color:gray}.memo-sorting-menu{width:200px}.my-button{border:1px solid #465573;color:#465573;border-radius:5px;background-color:transparent;font-weight:bold;min-width:80px;height:40px}.my-button.reset{border:none}.my-button:hover{color:#fff;background-color:#465573}.my-button:hover.reset{color:#465573;border:1px solid #465573;background-color:#fff}.app-property-value .app-input-wrapper label{color:#646f85;font-size:13px;margin-bottom:5px}.app-property-value .app-input-wrapper label .text-danger{font-size:16px;line-height:14px;margin:0 5px!important}.app-property-value .app-input-wrapper .form-control{border:1px solid #ccc;border-radius:5px;background-color:#8f98aa1a;height:40px}.app-property-value .app-input-wrapper .form-control:disabled{background-color:#e9ecef!important}.app-property-value .app-input-wrapper .form-control:focus{border:1px solid #1a96c6;box-shadow:0 0 4px #79c3c26b!important}.app-property-value .app-input-wrapper .app-textitem-editable-error .error-containers{list-style:none;padding:0;margin:0;font-size:14px}.app-property-value .app-input-wrapper .app-textitem-editable-error .error-containers .error{margin-top:5px}.autocomplete-container .input-container input:focus,hijri-gregorian-datepicker .form-group .input-group .form-control:focus,.ng-select.ng-select-focused .ng-select-container{border:1px solid #1a96c6!important;box-shadow:0 0 4px #79c3c26b!important}input::placeholder{font-size:12px}.form-control:focus{box-shadow:none!important}.mat-stepper-horizontal{margin-top:-25px}.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header.cdk-program-focused{background-color:transparent}.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header .mat-step-icon-selected{background-color:transparent;color:#fff;background-image:linear-gradient(to right,#0dbab5,#1a96c6)}@media only screen and (max-width: 576px){.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header .mat-step-label .mat-step-text-label{white-space:pre-wrap;overflow:visible}}.mat-stepper-horizontal .mat-horizontal-content-container{overflow:visible}@media only screen and (max-width: 768px){.mat-stepper-horizontal .mat-horizontal-content-container{padding:0 0 24px}}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:first-child:after,.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:last-child:before{display:none}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:first-child:before{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px);left:0}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:last-child:after{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px);right:0}.form-wrapper{padding:30px 15px;border:1px solid #dde0e2}.form-wrapper .buttons-wrapper{display:flex;justify-content:space-between}.form-wrapper .buttons-wrapper .action-buttons-wrapper{display:flex}.form-wrapper .buttons-wrapper button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:125px;margin-top:20px;border-radius:5px}.form-wrapper .buttons-wrapper button:disabled{opacity:.4;cursor:not-allowed}.form-wrapper .buttons-wrapper button:hover{opacity:.7}.form-wrapper .upload-wrapper{display:flex;flex-direction:column;justify-content:flex-end}.form-wrapper .upload-wrapper label{color:#8f98aa;font-size:14px}.form-wrapper .upload-wrapper button{padding:10px;border:1px solid lightgray}.form-wrapper .upload-wrapper button span{margin:0 10px}.renameFileComponent .form-wrapper{padding:30px 15px;border:none!important}.renameFileComponent .form-wrapper .buttons-wrapper{display:flex;justify-content:space-between}.renameFileComponent .form-wrapper .buttons-wrapper .action-buttons-wrapper{display:flex}.renameFileComponent .form-wrapper .buttons-wrapper button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:125px;margin-top:20px;border-radius:5px}.renameFileComponent .form-wrapper .buttons-wrapper button:disabled{opacity:.4;cursor:not-allowed}.renameFileComponent .form-wrapper .buttons-wrapper button:hover{opacity:.7}.renameFileComponent .form-wrapper .upload-wrapper{display:flex;flex-direction:column;justify-content:flex-end}.renameFileComponent .form-wrapper .upload-wrapper label{color:#8f98aa;font-size:14px}.renameFileComponent .form-wrapper .upload-wrapper button{padding:10px;border:1px solid lightgray}.renameFileComponent .form-wrapper .upload-wrapper button span{margin:0 10px}.my-dynamic-viewer{display:flex;align-items:center;font-size:12px;min-height:30px}.my-dynamic-viewer .my-label{font-size:12px;font-weight:500;width:150px;word-break:break-word}@media (max-width: 992px){.my-dynamic-viewer .my-label{width:50%}}.my-dynamic-viewer .my-value{width:calc(100% - 150px);word-break:break-word}@media (max-width: 992px){.my-dynamic-viewer .my-value{width:50%}}.my-dynamic-viewer .direction-img{font-size:14px}.my-dynamic-viewer .direction-img .incoming{display:none}.my-dynamic-viewer .direction-img .outgoing{display:none}.my-dynamic-viewer .direction-img .internal{display:none}.my-dynamic-viewer.draft .my-value{color:#596973}.my-dynamic-viewer.inProgress .my-value{color:#3c3cf0}.my-dynamic-viewer.registered .my-value{color:#4f008c}.my-dynamic-viewer.archived .my-value{color:#fbb62c}.my-dynamic-viewer.closed .my-value{color:#00dca5}.my-dynamic-viewer.approved .my-value{color:#06a57e}.my-dynamic-viewer.assigned .my-value{color:#fd6670}.my-dynamic-viewer.sent .my-value{color:#3c3cf0}.my-dynamic-viewer.published .my-value{color:#00dca5}.my-dynamic-viewer.Outgoing .my-value{display:flex}.my-dynamic-viewer.Outgoing .my-value .direction-img .outgoing{color:#fbb62c;margin:1px 5px;display:flex}.my-dynamic-viewer.Outgoing .my-value .text{margin:0 5px}.my-dynamic-viewer.Internal .my-value{display:flex}.my-dynamic-viewer.Internal .my-value .direction-img .internal{color:#3c3cf0;margin:1px 5px;display:flex}.my-dynamic-viewer.Internal .my-value .text{margin:0 5px}.my-dynamic-viewer.Incoming .my-value{display:flex}.my-dynamic-viewer.Incoming .my-value .direction-img .incoming{color:#00dca5;display:flex}.my-dynamic-viewer.Incoming .my-value .text{margin:-3px 5px 0}.my-dynamic-viewer.vertical{display:block}.my-dynamic-viewer.vertical .my-label{width:auto}.my-dynamic-viewer.vertical .my-value{width:auto}.my-dynamic-viewer.with-out-label{width:100%!important}.no-stats{width:100%;height:100%;display:grid;place-items:center}.card-continer{background:#ffffff;border-radius:5px;width:100%;padding:16px 20px;box-shadow:0 1px 1px #00000017}.card-continer .chart-card-header{display:flex;justify-content:space-between;align-items:center}.card-continer .chart-card-header .chart-card-title{font-weight:500}.card-continer .chart-card-header .chart-card-button{all:unset;background:#3341551a;color:#465573;padding:6px 18px;border-radius:24px;font-size:16px;cursor:pointer}.card-continer .chart-card-header .chart-card-button:hover{background:#8f98aa;color:#fff}\n"], components: [{ type: i5.SpinnerComponent, selector: "cts-spinner" }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i1.TranslatePipe } });
|
|
404
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
402
|
+
DynamicChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: DynamicChartComponent, deps: [{ token: i1.TranslateService }, { token: i0.ChangeDetectorRef }, { token: i2.CallApiService }, { token: i3.Router }, { token: i4.ChartDataService }], target: i0.ɵɵFactoryTarget.Component });
|
|
403
|
+
DynamicChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.4", type: DynamicChartComponent, selector: "cts-dynamic-chart", inputs: { prefix: "prefix", chartType: "chartType", randomColors: "randomColors", pageProvider: "pageProvider", headers: "headers", observable: "observable", aggregations: "aggregations", quickFilters: "quickFilters", systemCurrentLifeCycleState: "systemCurrentLifeCycleState", range: "range", label: "label", selectedRange: "selectedRange", tenantId: "tenantId", colors: "colors", randomColor: "randomColor", fetchedKey: "fetchedKey", pageProviderTwo: "pageProviderTwo", quickFilterTwo: "quickFilterTwo", quickFilterThree: "quickFilterThree", combinedData: "combinedData", statusOne: "statusOne", statusTwo: "statusTwo", statusThree: "statusThree", min: "min", max: "max", width: "width", height: "height", card: "card", cardTitle: "cardTitle", inputChartData: "inputChartData", isInternalActive: "isInternalActive" }, viewQueries: [{ propertyName: "chart", first: true, predicate: ["revenueLineChart"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"card-continer\" *ngIf=\"card; else test\">\r\n <div class=\"chart-card-header\">\r\n <div class=\"chart-card-title\">{{ cardTitle | translate }}</div>\r\n <button class=\"chart-card-button\" (click)=\"previewCorrespondences()\">\r\n {{ \"report.Preview\" | translate }}\r\n </button>\r\n </div>\r\n <ng-container *ngIf=\"isFetching\">\r\n <cts-spinner></cts-spinner>\r\n </ng-container>\r\n <div class=\"stat\" [style.height.px]=\"height\">\r\n <div [hidden]=\"data.data?.length == 0 || data.length == 0\">\r\n <canvas #revenueLineChart [height]=\"height\" [width]=\"width\"></canvas>\r\n </div>\r\n <div class=\"no-stats\" *ngIf=\"data.data?.length == 0 || data.length == 0\">\r\n <span>{{ \"STATS.noData\" | translate }}</span>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #test>\r\n <div class=\"stat\">\r\n <canvas #revenueLineChart [height]=\"height\" [width]=\"width\"></canvas>\r\n </div>\r\n</ng-template>\r\n\r\n", styles: [".bi{margin:0!important}.memo-sorting-wrapper{width:265px;margin:0 10px;height:100%;display:flex}.memo-sorting-wrapper .sorting-direction{width:65px;height:40px;background-color:#465573;color:#fff;font-size:20px;display:flex;justify-content:center;align-items:center;cursor:pointer}.memo-sorting-wrapper .memo-sorting-trigger{width:calc(100% - 65px);height:100%;background-color:transparent;border:1px solid lightgrey;display:flex;justify-content:space-between;align-items:center;padding:0 15px;font-size:14px}.memo-sorting-wrapper .memo-sorting-trigger i{font-size:16px;color:gray}.memo-sorting-menu{width:200px}.my-button{border:1px solid #465573;color:#465573;border-radius:5px;background-color:transparent;font-weight:bold;min-width:80px;height:40px}.my-button.reset{border:none}.my-button:hover{color:#fff;background-color:#465573}.my-button:hover.reset{color:#465573;border:1px solid #465573;background-color:#fff}.app-property-value .app-input-wrapper label{color:#646f85;font-size:13px;margin-bottom:5px}.app-property-value .app-input-wrapper label .text-danger{font-size:16px;line-height:14px;margin:0 5px!important}.app-property-value .app-input-wrapper .form-control{border:1px solid #ccc;border-radius:5px;background-color:#8f98aa1a;height:40px}.app-property-value .app-input-wrapper .form-control:disabled{background-color:#e9ecef!important}.app-property-value .app-input-wrapper .form-control:focus{border:1px solid #1a96c6;box-shadow:0 0 4px #79c3c26b!important}.app-property-value .app-input-wrapper .app-textitem-editable-error .error-containers{list-style:none;padding:0;margin:0;font-size:14px}.app-property-value .app-input-wrapper .app-textitem-editable-error .error-containers .error{margin-top:5px}.autocomplete-container .input-container input:focus,hijri-gregorian-datepicker .form-group .input-group .form-control:focus,.ng-select.ng-select-focused .ng-select-container{border:1px solid #1a96c6!important;box-shadow:0 0 4px #79c3c26b!important}input::placeholder{font-size:12px}.form-control:focus{box-shadow:none!important}.mat-stepper-horizontal{margin-top:-25px}.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header.cdk-program-focused{background-color:transparent}.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header .mat-step-icon-selected{background-color:transparent;color:#fff;background-image:linear-gradient(to right,#0dbab5,#1a96c6)}@media only screen and (max-width: 576px){.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header .mat-step-label .mat-step-text-label{white-space:pre-wrap;overflow:visible}}.mat-stepper-horizontal .mat-horizontal-content-container{overflow:visible}@media only screen and (max-width: 768px){.mat-stepper-horizontal .mat-horizontal-content-container{padding:0 0 24px}}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:first-child:after,.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:last-child:before{display:none}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:first-child:before{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px);left:0}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:last-child:after{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px);right:0}.form-wrapper{padding:30px 15px;border:1px solid #dde0e2}.form-wrapper .buttons-wrapper{display:flex;justify-content:space-between}.form-wrapper .buttons-wrapper .action-buttons-wrapper{display:flex}.form-wrapper .buttons-wrapper button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:125px;margin-top:20px;border-radius:5px}.form-wrapper .buttons-wrapper button:disabled{opacity:.4;cursor:not-allowed}.form-wrapper .buttons-wrapper button:hover{opacity:.7}.form-wrapper .upload-wrapper{display:flex;flex-direction:column;justify-content:flex-end}.form-wrapper .upload-wrapper label{color:#8f98aa;font-size:14px}.form-wrapper .upload-wrapper button{padding:10px;border:1px solid lightgray}.form-wrapper .upload-wrapper button span{margin:0 10px}.renameFileComponent .form-wrapper{padding:30px 15px;border:none!important}.renameFileComponent .form-wrapper .buttons-wrapper{display:flex;justify-content:space-between}.renameFileComponent .form-wrapper .buttons-wrapper .action-buttons-wrapper{display:flex}.renameFileComponent .form-wrapper .buttons-wrapper button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:125px;margin-top:20px;border-radius:5px}.renameFileComponent .form-wrapper .buttons-wrapper button:disabled{opacity:.4;cursor:not-allowed}.renameFileComponent .form-wrapper .buttons-wrapper button:hover{opacity:.7}.renameFileComponent .form-wrapper .upload-wrapper{display:flex;flex-direction:column;justify-content:flex-end}.renameFileComponent .form-wrapper .upload-wrapper label{color:#8f98aa;font-size:14px}.renameFileComponent .form-wrapper .upload-wrapper button{padding:10px;border:1px solid lightgray}.renameFileComponent .form-wrapper .upload-wrapper button span{margin:0 10px}.my-dynamic-viewer{display:flex;align-items:center;font-size:12px;min-height:30px}.my-dynamic-viewer .my-label{font-size:12px;font-weight:500;width:150px;word-break:break-word}@media (max-width: 992px){.my-dynamic-viewer .my-label{width:50%}}.my-dynamic-viewer .my-value{width:calc(100% - 150px);word-break:break-word}@media (max-width: 992px){.my-dynamic-viewer .my-value{width:50%}}.my-dynamic-viewer .direction-img{font-size:14px}.my-dynamic-viewer .direction-img .incoming{display:none}.my-dynamic-viewer .direction-img .outgoing{display:none}.my-dynamic-viewer .direction-img .internal{display:none}.my-dynamic-viewer.draft .my-value{color:#596973}.my-dynamic-viewer.inProgress .my-value{color:#3c3cf0}.my-dynamic-viewer.registered .my-value{color:#4f008c}.my-dynamic-viewer.archived .my-value{color:#fbb62c}.my-dynamic-viewer.closed .my-value{color:#00dca5}.my-dynamic-viewer.approved .my-value{color:#06a57e}.my-dynamic-viewer.assigned .my-value{color:#fd6670}.my-dynamic-viewer.sent .my-value{color:#3c3cf0}.my-dynamic-viewer.published .my-value{color:#00dca5}.my-dynamic-viewer.Outgoing .my-value{display:flex}.my-dynamic-viewer.Outgoing .my-value .direction-img .outgoing{color:#fbb62c;margin:1px 5px;display:flex}.my-dynamic-viewer.Outgoing .my-value .text{margin:0 5px}.my-dynamic-viewer.Internal .my-value{display:flex}.my-dynamic-viewer.Internal .my-value .direction-img .internal{color:#3c3cf0;margin:1px 5px;display:flex}.my-dynamic-viewer.Internal .my-value .text{margin:0 5px}.my-dynamic-viewer.Incoming .my-value{display:flex}.my-dynamic-viewer.Incoming .my-value .direction-img .incoming{color:#00dca5;display:flex}.my-dynamic-viewer.Incoming .my-value .text{margin:-3px 5px 0}.my-dynamic-viewer.vertical{display:block}.my-dynamic-viewer.vertical .my-label{width:auto}.my-dynamic-viewer.vertical .my-value{width:auto}.my-dynamic-viewer.with-out-label{width:100%!important}.no-stats{width:100%;height:100%;display:grid;place-items:center}.card-continer{background:#ffffff;border-radius:5px;width:100%;padding:16px 20px;box-shadow:0 1px 1px #00000017}.card-continer .chart-card-header{display:flex;justify-content:space-between;align-items:center}.card-continer .chart-card-header .chart-card-title{font-weight:500}.card-continer .chart-card-header .chart-card-button{all:unset;background:#3341551a;color:#465573;padding:6px 18px;border-radius:24px;font-size:16px;cursor:pointer}.card-continer .chart-card-header .chart-card-button:hover{background:#8f98aa;color:#fff}\n"], components: [{ type: i5.SpinnerComponent, selector: "cts-spinner" }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i1.TranslatePipe } });
|
|
404
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: DynamicChartComponent, decorators: [{
|
|
405
405
|
type: Component,
|
|
406
406
|
args: [{
|
|
407
407
|
selector: "cts-dynamic-chart",
|
|
@@ -474,4 +474,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
474
474
|
}], isInternalActive: [{
|
|
475
475
|
type: Input
|
|
476
476
|
}] } });
|
|
477
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jaGFydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtY2hhcnQvZHluYW1pYy1jaGFydC9keW5hbWljLWNoYXJ0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZHluYW1pYy1jaGFydC9keW5hbWljLWNoYXJ0L2R5bmFtaWMtY2hhcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFFTCxTQUFTLEVBRVQsS0FBSyxFQUtMLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ2pDLE9BQU8sRUFBYyxPQUFPLEVBQWdCLFFBQVEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNuRSxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUc5RCxPQUFPLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUU1QixPQUFPLG1DQUFtQyxDQUFDO0FBQzNDLE9BQU8sdUJBQXVCLENBQUM7Ozs7Ozs7O0FBQy9CLGNBQWM7QUFNZCxNQUFNLE9BQU8scUJBQXFCO0lBcUVoQyxZQUNTLFNBQTJCLEVBQzNCLGNBQWlDLEVBQ2hDLE9BQXVCLEVBQVUsTUFBYyxFQUNoRCxTQUEyQjtRQUgzQixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFDaEMsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2hELGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBdEVwQyxXQUFNLEdBQUcsUUFBUSxDQUFDLENBQUMsa0JBQWtCO1FBRzVCLGlCQUFZLEdBQVksS0FBSyxDQUFDO1FBRS9CLGVBQVUsR0FBRyxJQUFJLE9BQU8sRUFBVyxDQUFDO1FBQzVDLGVBQVUsR0FBRyxJQUFJLE9BQU8sRUFBTyxDQUFDO1FBRXZCLFlBQU8sR0FBRyxFQUFFLENBQUMsQ0FBQyx1QkFBdUI7UUFLckMsVUFBSyxHQUFHLHdCQUF3QixDQUFDO1FBRzFDLGtCQUFhLEdBQUcsTUFBTSxDQUFDLENBQUMseUJBQXlCO1FBRXhDLFdBQU0sR0FBUTtZQUNyQixVQUFVLEVBQUUsU0FBUztZQUNyQixVQUFVLEVBQUUsU0FBUztZQUNyQixLQUFLLEVBQUUsU0FBUztZQUNoQixRQUFRLEVBQUUsU0FBUztZQUNuQixNQUFNLEVBQUUsU0FBUztZQUNqQixRQUFRLEVBQUUsU0FBUztZQUNuQixTQUFTLEVBQUUsU0FBUztZQUNwQixLQUFLLEVBQUUsU0FBUztTQUNqQixDQUFDO1FBQ0YsU0FBSSxHQUFRLEVBQUUsQ0FBQztRQUNmLGVBQVUsR0FBWSxLQUFLLENBQUM7UUFHNUIsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFVN0IsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFnQnJCLFNBQUksR0FBRyxLQUFLLENBQUM7UUFFYixjQUFTLEdBQUcsRUFBRSxDQUFDO1FBSU4scUJBQWdCLEdBQUcsS0FBSyxDQUFDLENBQUMsMEVBQTBFO1FBUTNHLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLGlCQUFpQixHQUFHLHNCQUFzQixDQUFDO1FBQ2pFLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLGVBQWUsR0FBRyxFQUFFLENBQUM7UUFDM0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZO2FBQ3hCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2FBQ2hDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDekIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ0QsV0FBVztRQUNULElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ3hELElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTs7Z0JBQ2hDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO2dCQUNqQixJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFDO2dCQUNwQyxJQUFJLFlBQVksR0FBRyxFQUFFLENBQUM7Z0JBQ3RCLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtvQkFDckIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTt3QkFDekIsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQzlDLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxFQUNmLEVBQUUsRUFDRixFQUFFLENBQ0gsQ0FBQztvQkFDSixDQUFDLENBQUMsQ0FBQztpQkFDSjtnQkFDRCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztnQkFDN0QsTUFBTSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztvQkFDNUQsSUFBSSxFQUFFLElBQUk7b0JBQ1YsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO29CQUNuQixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07aUJBQ3BCLENBQUMsQ0FBQztnQkFDSCxJQUFJLENBQUEsTUFBQSxJQUFJLENBQUMsSUFBSSwwQ0FBRSxNQUFNLEtBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtvQkFDcEMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7d0JBQ2xCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQzt3QkFDdEQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLEtBQUssQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7cUJBQ3pDO3lCQUFNO3dCQUNMLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxTQUFTLENBQUM7d0JBQ3JDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7cUJBQ3hCO2lCQUNGO3FCQUFNO29CQUNMLHlEQUF5RDtvQkFDekQsb0JBQW9CO29CQUNwQix3QkFBd0I7b0JBQ3hCLFlBQVk7b0JBQ1osb0JBQW9CO29CQUNwQixPQUFPO29CQUNQLGlCQUFpQjtvQkFDakIsS0FBSztvQkFDTCw2Q0FBNkM7b0JBQzdDLGlDQUFpQztpQkFDbEM7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELG9CQUFvQjtRQUNsQixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUN2QixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTs7WUFDdEQsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDO1lBQ2hDLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDcEMsSUFBSSxZQUFZLEdBQUcsRUFBRSxDQUFDO1lBQ3RCLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtnQkFDckIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7b0JBQzlCLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUM5QyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFDZixFQUFFLEVBQ0YsRUFBRSxDQUNILENBQUM7Z0JBQ0osQ0FBQyxDQUFDLENBQUM7YUFDSjtZQUNELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO1lBQzdELE1BQU0sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7Z0JBQzVELElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtnQkFDZixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07Z0JBQ25CLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTthQUNwQixDQUFDLENBQUM7WUFDSCxJQUFJLENBQUEsTUFBQSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksMENBQUUsTUFBTSxLQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO2dCQUM5QyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtvQkFDbEIsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUN0RCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksS0FBSyxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQztvQkFDeEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7aUJBQ3pCO3FCQUFNO29CQUNMLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxTQUFTLENBQUM7b0JBQ3JDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7b0JBQ3ZCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO2lCQUV6QjthQUNGO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO2dCQUN4Qix5REFBeUQ7Z0JBQ3pELG9CQUFvQjtnQkFDcEIsd0JBQXdCO2dCQUN4QixZQUFZO2dCQUNaLG9CQUFvQjtnQkFDcEIsT0FBTztnQkFDUCxpQkFBaUI7Z0JBQ2pCLEtBQUs7Z0JBQ0wsNkNBQTZDO2dCQUM3QyxpQ0FBaUM7YUFDbEM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBRyxJQUFJLENBQUMsY0FBYyxFQUFDO1lBQ3ZCLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1NBQzNCO2FBQUk7WUFDTCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7U0FFbEI7SUFDSCxDQUFDO0lBRUssUUFBUTs7WUFDWixVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUcsSUFBSSxDQUFDLGNBQWMsRUFBQztvQkFDckIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7b0JBQzVCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7aUJBQ3hCO3FCQUFJO29CQUNMLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztvQkFDbkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztpQkFDdEI7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7S0FBQTtJQUNELFdBQVcsQ0FBQyxPQUFzQjs7UUFDaEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7UUFDdkIsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUEsTUFBQSxPQUFPLENBQUMsR0FBRywwQ0FBRSxXQUFXLENBQUEsQ0FBQztRQUM1RCxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQSxNQUFBLE9BQU8sQ0FBQyxHQUFHLDBDQUFFLFdBQVcsQ0FBQSxDQUFDO1FBQzVELE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFBLE1BQUEsT0FBTyxDQUFDLEtBQUssMENBQUUsV0FBVyxDQUFBLENBQUM7UUFDbEUsSUFBSSxVQUFVLElBQUksVUFBVSxJQUFJLFlBQVksRUFBRTtZQUM1QyxVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ3ZCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1lBQzFCLENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBQ0QsV0FBVztRQUNULElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDckUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFDRCxPQUFPO1FBQ0wsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7UUFDdkIsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3JCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FDekIsSUFBSSxDQUFDLFlBQVksRUFDakIsSUFBSSxDQUFDLFlBQVksRUFDakIsSUFBSSxDQUFDLEtBQUssRUFDVixJQUFJLENBQUMsZUFBZSxFQUNwQixJQUFJLENBQUMsY0FBYyxFQUNuQixJQUFJLENBQUMsZ0JBQWdCLEVBQ3JCLElBQUksQ0FBQyxTQUFTLEVBQ2QsSUFBSSxDQUFDLFNBQVMsRUFDZCxJQUFJLENBQUMsV0FBVyxDQUNqQixDQUFDO1NBQ0g7YUFBTTtZQUNMLElBQUksTUFBTSxHQUFHO2dCQUNYLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtnQkFDL0IsZ0JBQWdCLEVBQUUsQ0FBQztnQkFDbkIsTUFBTSxFQUFFLENBQUM7Z0JBQ1QsUUFBUSxFQUFFLENBQUM7Z0JBQ1gsc0JBQXNCLEVBQUUsSUFBSSxDQUFDLEtBQUs7Z0JBQ2xDLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtnQkFDL0Isc0JBQXNCLEVBQUUsSUFBSSxDQUFDLEdBQUc7Z0JBQ2hDLHNCQUFzQixFQUFFLElBQUksQ0FBQyxHQUFHO2dCQUNoQyw4QkFBOEIsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUM1QyxJQUFJLENBQUMsMkJBQTJCLENBQ2pDO2FBQ0YsQ0FBQTtZQUNELGlFQUFpRTtZQUNqRSxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7Z0JBQ2pCLE1BQU0sQ0FBQyxhQUFhLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQTthQUMzQztZQUNELE9BQU8sSUFBSSxDQUFDLE9BQU87aUJBQ2hCLEtBQUssQ0FDSixNQUFNLEVBQ047Z0JBQ0UsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO2FBQ3RCLENBQ0Y7aUJBQ0EsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO2dCQUNYLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLE9BQU87b0JBQ3hELENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO3dCQUM1RCxLQUFLLEVBQUUsSUFBSSxDQUFDLFVBQVU7NEJBQ3BCLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDOzRCQUM5QixDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUc7d0JBQ1osS0FBSyxFQUFFLElBQUksQ0FBQyxRQUFRO3FCQUNyQixDQUFDLENBQUM7b0JBQ0gsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDUCxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztnQkFDeEIsT0FBTztvQkFDTCxJQUFJLEVBQUUsS0FBSztvQkFDWCxVQUFVLEVBQUUsSUFBSSxDQUFDLFNBQVM7aUJBQzNCLENBQUM7WUFDSixDQUFDLENBQUMsQ0FDSCxDQUFDO1NBQ0w7SUFDSCxDQUFDO0lBRUQsZUFBZSxDQUNiLGVBQWUsRUFDZixjQUFjLEVBQ2QsYUFBYSxFQUNiLGVBQWUsRUFDZixjQUFjLEVBQ2QsZ0JBQWdCLEVBQ2hCLFNBQVMsRUFDVCxTQUFTLEVBQ1QsV0FBVztRQUVYLElBQUksY0FBYyxHQUFHO1lBQ25CLFlBQVksRUFBRSxlQUFlO1lBQzdCLGdCQUFnQixFQUFFLENBQUM7WUFDbkIsTUFBTSxFQUFFLENBQUM7WUFDVCxRQUFRLEVBQUUsQ0FBQztZQUNYLHNCQUFzQixFQUFFLGFBQWE7WUFDckMsWUFBWSxFQUFFLGNBQWM7WUFDNUIsc0JBQXNCLEVBQUUsSUFBSSxDQUFDLEdBQUc7WUFDaEMsc0JBQXNCLEVBQUUsSUFBSSxDQUFDLEdBQUc7WUFDaEMsOEJBQThCLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FDNUMsSUFBSSxDQUFDLDJCQUEyQixDQUNqQztTQUNGLENBQUE7UUFDRCxpRUFBaUU7UUFDakUsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLGNBQWMsQ0FBQyxhQUFhLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQTtTQUNuRDtRQUNELE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxPQUFPO2FBQzlCLEtBQUssQ0FDSixjQUFjLEVBQ2Q7WUFDRSxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87U0FDdEIsQ0FDRjthQUNBLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNYLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLE9BQU87Z0JBQ3hELENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO29CQUM1RCxLQUFLLEVBQUUsSUFBSSxDQUFDLFVBQVU7d0JBQ3BCLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDO3dCQUM5QixDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUc7b0JBQ1osS0FBSyxFQUFFLElBQUksQ0FBQyxRQUFRO29CQUNwQixFQUFFLEVBQUUsSUFBSSxDQUFDLEdBQUc7b0JBQ1osTUFBTSxFQUFFLFNBQVM7b0JBQ2pCLFVBQVUsRUFBRSxJQUFJLENBQUMsU0FBUztpQkFDM0IsQ0FBQyxDQUFDO2dCQUNILENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDUCxPQUFPO2dCQUNMLElBQUksRUFBRSxLQUFLO2dCQUNYLFVBQVUsRUFBRSxJQUFJLENBQUMsU0FBUzthQUMzQixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUNKLElBQUksY0FBYyxHQUFHO1lBQ25CLFlBQVksRUFBRSxlQUFlO1lBQzdCLGdCQUFnQixFQUFFLENBQUM7WUFDbkIsTUFBTSxFQUFFLENBQUM7WUFDVCxRQUFRLEVBQUUsQ0FBQztZQUNYLHNCQUFzQixFQUFFLGFBQWE7WUFDckMsWUFBWSxFQUFFLGNBQWM7WUFDNUIsc0JBQXNCLEVBQUUsSUFBSSxDQUFDLEdBQUc7WUFDaEMsc0JBQXNCLEVBQUUsSUFBSSxDQUFDLEdBQUc7WUFDaEMsOEJBQThCLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FDNUMsSUFBSSxDQUFDLDJCQUEyQixDQUNqQztTQUNGLENBQUE7UUFDRCxpRUFBaUU7UUFDakUsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLGNBQWMsQ0FBQyxhQUFhLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQTtTQUNuRDtRQUNELE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxPQUFPO2FBQzlCLEtBQUssQ0FDSixjQUFjLEVBQ2Q7WUFDRSxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87U0FDdEIsQ0FDRjthQUNBLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNYLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLE9BQU87Z0JBQ3hELENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO29CQUM1RCxLQUFLLEVBQUUsSUFBSSxDQUFDLFVBQVU7d0JBQ3BCLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDO3dCQUM5QixDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUc7b0JBQ1osS0FBSyxFQUFFLElBQUksQ0FBQyxRQUFRO29CQUNwQixFQUFFLEVBQUUsSUFBSSxDQUFDLEdBQUc7b0JBQ1osTUFBTSxFQUFFLFNBQVM7b0JBQ2pCLFVBQVUsRUFBRSxJQUFJLENBQUMsU0FBUztpQkFDM0IsQ0FBQyxDQUFDO2dCQUNILENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDUCxPQUFPO2dCQUNMLElBQUksRUFBRSxLQUFLO2dCQUNYLFVBQVUsRUFBRSxJQUFJLENBQUMsU0FBUzthQUMzQixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUNKLElBQUksY0FBYyxHQUFHO1lBQ25CLFlBQVksRUFBRSxlQUFlO1lBQzdCLGdCQUFnQixFQUFFLENBQUM7WUFDbkIsTUFBTSxFQUFFLENBQUM7WUFDVCxRQUFRLEVBQUUsQ0FBQztZQUNYLHNCQUFzQixFQUFFLGFBQWE7WUFDckMsWUFBWSxFQUFFLGdCQUFnQjtZQUM5QixzQkFBc0IsRUFBRSxJQUFJLENBQUMsR0FBRztZQUNoQyxzQkFBc0IsRUFBRSxJQUFJLENBQUMsR0FBRztZQUNoQyw4QkFBOEIsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUM1QyxJQUFJLENBQUMsMkJBQTJCLENBQ2pDO1NBQ0YsQ0FBQTtRQUNELGlFQUFpRTtRQUNqRSxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsY0FBYyxDQUFDLGFBQWEsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFBO1NBQ25EO1FBQ0QsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQU87YUFDOUIsS0FBSyxDQUNKLGNBQWMsRUFDZDtZQUNFLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztTQUN0QixDQUNGO2FBQ0EsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ1gsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsT0FBTztnQkFDeEQsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7b0JBQzVELEtBQUssRUFBRSxJQUFJLENBQUMsVUFBVTt3QkFDcEIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUM7d0JBQzlCLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRztvQkFDWixLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVE7b0JBQ3BCLEVBQUUsRUFBRSxJQUFJLENBQUMsR0FBRztvQkFDWixNQUFNLEVBQUUsV0FBVztvQkFDbkIsVUFBVSxFQUFFLElBQUksQ0FBQyxTQUFTO2lCQUMzQixDQUFDLENBQUM7Z0JBQ0gsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNQLE9BQU87Z0JBQ0wsSUFBSSxFQUFFLEtBQUs7Z0JBQ1gsVUFBVSxFQUFFLElBQUksQ0FBQyxTQUFTO2FBQzNCLENBQUM7UUFDSixDQUFDLENBQUMsQ0FDSCxDQUFDO1FBQ0osSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7WUFDekIsT0FBTyxRQUFRLENBQUMsQ0FBQyxZQUFZLEVBQUUsWUFBWSxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUM5RCxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtnQkFDWCxJQUFJLFlBQVksR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ3ZFLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO2dCQUN4QixPQUFPLFlBQVksQ0FBQztZQUN0QixDQUFDLENBQUMsQ0FDSCxDQUFDO1NBQ0g7YUFBTTtZQUNMLE9BQU8sUUFBUSxDQUFDLENBQUMsWUFBWSxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUNoRCxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtnQkFDWCxJQUFJLFlBQVksR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDdEQsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7Z0JBQ3hCLE9BQU8sWUFBWSxDQUFDO1lBQ3RCLENBQUMsQ0FBQyxDQUNILENBQUM7U0FDSDtJQUNILENBQUM7SUFFRCxzQkFBc0I7UUFDcEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLDJCQUEyQixDQUFDLENBQUE7UUFDdkQsSUFBSSxXQUFXLENBQUM7UUFDaEIsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3JCLFdBQVcsR0FBRztnQkFDWixZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7Z0JBQy9CLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtnQkFDL0IsT0FBTyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztnQkFDckMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO2dCQUNqQixZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7Z0JBQy9CLGNBQWMsRUFBRSxJQUFJLENBQUMsWUFBWTtnQkFDakMsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjO2dCQUNuQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsZ0JBQWdCO2dCQUN2QywyQkFBMkIsRUFBRSxJQUFJLENBQUMsMkJBQTJCO2dCQUM3RCxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7Z0JBQ3pCLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztnQkFDekIsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO2dCQUM3QixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7Z0JBQ2IsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHO2FBQ2QsQ0FBQztTQUNIO2FBQU07WUFDTCxXQUFXLEdBQUc7Z0JBQ1osWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO2dCQUMvQixZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7Z0JBQy9CLGNBQWMsRUFBRSxJQUFJLENBQUMsWUFBWTtnQkFDakMsT0FBTyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztnQkFDckMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO2dCQUNqQixZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7Z0JBQy9CLDJCQUEyQixFQUFFLElBQUksQ0FBQywyQkFBMkI7Z0JBQzdELEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRztnQkFDYixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7YUFDZCxDQUFDO1NBQ0g7UUFDRCxpRUFBaUU7UUFDakUsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLFdBQVcsQ0FBQyxhQUFhLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQTtTQUNoRDtRQUNELElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsUUFBUSxFQUFFLGVBQWUsQ0FBQyxFQUFFO1lBQ2hELFdBQVcsRUFBRSxXQUFXO1NBQ3pCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFDeEIsSUFBSSxJQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQ2IsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDbkMsSUFBSSxHQUFHLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztTQUNqRDtRQUNELElBQUksQ0FBQyxHQUFHLElBQUksR0FBRyxHQUFHLENBQUM7UUFDbkIsT0FBTyxNQUFNLEdBQUcsQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsS0FBSyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUM7SUFDbEQsQ0FBQzs7bUhBaGVVLHFCQUFxQjt1R0FBckIscUJBQXFCLDYrQkMzQmxDLGkrQkEwQkE7NEZEQ2EscUJBQXFCO2tCQUxqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQkFBbUI7b0JBQzdCLFdBQVcsRUFBRSxnQ0FBZ0M7b0JBQzdDLFNBQVMsRUFBRSxDQUFDLGdDQUFnQyxDQUFDO2lCQUM5Qzt3TkFFbUQsS0FBSztzQkFBdEQsU0FBUzt1QkFBQyxrQkFBa0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBRWhELE1BQU07c0JBREwsS0FBSztnQkFHTixTQUFTO3NCQURSLEtBQUs7Z0JBRUcsWUFBWTtzQkFBcEIsS0FBSztnQkFJRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRywyQkFBMkI7c0JBQW5DLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFFTixhQUFhO3NCQURaLEtBQUs7Z0JBRUcsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBY04sV0FBVztzQkFEVixLQUFLO2dCQUdOLFVBQVU7c0JBRFQsS0FBSztnQkFHTixlQUFlO3NCQURkLEtBQUs7Z0JBR04sY0FBYztzQkFEYixLQUFLO2dCQUdOLGdCQUFnQjtzQkFEZixLQUFLO2dCQUdOLFlBQVk7c0JBRFgsS0FBSztnQkFHTixTQUFTO3NCQURSLEtBQUs7Z0JBR04sU0FBUztzQkFEUixLQUFLO2dCQUdOLFdBQVc7c0JBRFYsS0FBSztnQkFHTixHQUFHO3NCQURGLEtBQUs7Z0JBR04sR0FBRztzQkFERixLQUFLO2dCQUdOLEtBQUs7c0JBREosS0FBSztnQkFHTixNQUFNO3NCQURMLEtBQUs7Z0JBR04sSUFBSTtzQkFESCxLQUFLO2dCQUdOLFNBQVM7c0JBRFIsS0FBSztnQkFHTixjQUFjO3NCQURiLEtBQUs7Z0JBR0csZ0JBQWdCO3NCQUF4QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBJbnB1dCxcclxuICBPbkNoYW5nZXMsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25Jbml0LFxyXG4gIFZpZXdDaGlsZCxcclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSBcIkBuZ3gtdHJhbnNsYXRlL2NvcmVcIjtcclxuaW1wb3J0IHsgQ2hhcnQgfSBmcm9tIFwiY2hhcnQuanNcIjtcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCwgU3Vic2NyaXB0aW9uLCBmb3JrSm9pbiB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IG1hcCwgdGFrZVVudGlsLCBkZWJvdW5jZVRpbWUgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuaW1wb3J0IHsgQ2FsbEFwaVNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy9jYWxsQXBpL2NhbGwtYXBpLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgQ2hhcnREYXRhU2VydmljZSB9IGZyb20gXCIuLi9zZXJ2aWNlcy9jaGFydC1kYXRhLnNlcnZpY2VcIjtcclxuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgJ2NoYXJ0anMtcGx1Z2luLXBpZWNoYXJ0LW91dGxhYmVscyc7XHJcbmltcG9ydCAnY2hhcnRqcy1wbHVnaW4tbGFiZWxzJztcclxuLyoqIEBpZ25vcmUgKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiY3RzLWR5bmFtaWMtY2hhcnRcIixcclxuICB0ZW1wbGF0ZVVybDogXCIuL2R5bmFtaWMtY2hhcnQuY29tcG9uZW50Lmh0bWxcIixcclxuICBzdHlsZVVybHM6IFtcIi4vZHluYW1pYy1jaGFydC5jb21wb25lbnQuc2Nzc1wiXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIER5bmFtaWNDaGFydENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xyXG4gIEBWaWV3Q2hpbGQoJ3JldmVudWVMaW5lQ2hhcnQnLCB7IHN0YXRpYzogZmFsc2UgfSkgY2hhcnQ6IEVsZW1lbnRSZWY7XHJcbiAgQElucHV0KClcclxuICBwcmVmaXggPSAnU1RBVFMuJzsgLy8gZm9yIHRyYW5zbGF0aW9uXHJcbiAgQElucHV0KClcclxuICBjaGFydFR5cGU7IC8vIGZ1bmN0aW9ucyBleGlzdCBpbnNpZGUgQ2hhcnREYXRhU2VydmljZVxyXG4gIEBJbnB1dCgpIHJhbmRvbUNvbG9yczogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHByaXZhdGUgY2hhcnRPYmo7XHJcbiAgcHJpdmF0ZSBvbkRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcclxuICBjcmVhdENoYXJ0ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIEBJbnB1dCgpIHBhZ2VQcm92aWRlcjsgLy8gZGVmaW5lIGFwaSB0byBnZXQgdGhlIGRhdGEgZnJvbVxyXG4gIEBJbnB1dCgpIGhlYWRlcnMgPSB7fTsgLy8gaGVhZGVycyBpbiBjb25zdGFudHNcclxuICBASW5wdXQoKSBvYnNlcnZhYmxlOyAvLyBvYnNlcnZhYmxlIGluIGNhc2Ugb2YgY2FsbCBhcGkgaXMgY2FsbGVkIGZyb20gb3V0c2lkZSB0aGUgY29tcG9uZW50XHJcbiAgQElucHV0KCkgYWdncmVnYXRpb25zO1xyXG4gIEBJbnB1dCgpIHF1aWNrRmlsdGVycztcclxuICBASW5wdXQoKSBzeXN0ZW1DdXJyZW50TGlmZUN5Y2xlU3RhdGU7XHJcbiAgQElucHV0KCkgcmFuZ2UgPSAnW1wiZnJvbV9ub3ctN2RfdG9fbm93XCJdJztcclxuICBASW5wdXQoKSBsYWJlbDtcclxuICBASW5wdXQoKVxyXG4gIHNlbGVjdGVkUmFuZ2UgPSBcIndlZWtcIjsgLy8gcmFuZ2UgdG8gYmUgZmlsdGVyZCBvblxyXG4gIEBJbnB1dCgpIHRlbmFudElkOyAvLyB3aWxsIGJlIHNlbnQgb25seSBpbiBjYXNlIG9mIG11bHRpIHRlbmFudFxyXG4gIEBJbnB1dCgpIGNvbG9yczogYW55ID0ge1xyXG4gICAgaW5Qcm9ncmVzczogJyMzYzNjZjAnLFxyXG4gICAgcmVnaXN0ZXJlZDogJyM1YTE0OTYnLFxyXG4gICAgZHJhZnQ6ICcjNTk2OTczJyxcclxuICAgIGFyY2hpdmVkOiAnI2ZiYjYyYycsXHJcbiAgICBjbG9zZWQ6ICcjMDBkY2E1JyxcclxuICAgIGFzc2lnbmVkOiAnI2ZkNjY3MCcsXHJcbiAgICB1bmRlZmluZWQ6ICcjZjdmOGY5JyxcclxuICAgIG90aGVyOiAnI2YxNzIwNScsXHJcbiAgfTtcclxuICBkYXRhOiBhbnkgPSBbXTtcclxuICBpc0ZldGNoaW5nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgY2hhcnRzOiBbXTtcclxuICBASW5wdXQoKVxyXG4gIHJhbmRvbUNvbG9yOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KClcclxuICBmZXRjaGVkS2V5O1xyXG4gIEBJbnB1dCgpXHJcbiAgcGFnZVByb3ZpZGVyVHdvO1xyXG4gIEBJbnB1dCgpXHJcbiAgcXVpY2tGaWx0ZXJUd287XHJcbiAgQElucHV0KClcclxuICBxdWlja0ZpbHRlclRocmVlO1xyXG4gIEBJbnB1dCgpXHJcbiAgY29tYmluZWREYXRhID0gZmFsc2U7XHJcbiAgQElucHV0KClcclxuICBzdGF0dXNPbmU7XHJcbiAgQElucHV0KClcclxuICBzdGF0dXNUd287XHJcbiAgQElucHV0KClcclxuICBzdGF0dXNUaHJlZTtcclxuICBASW5wdXQoKVxyXG4gIG1pbjtcclxuICBASW5wdXQoKVxyXG4gIG1heDtcclxuICBASW5wdXQoKVxyXG4gIHdpZHRoO1xyXG4gIEBJbnB1dCgpXHJcbiAgaGVpZ2h0O1xyXG4gIEBJbnB1dCgpXHJcbiAgY2FyZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpXHJcbiAgY2FyZFRpdGxlID0gJyc7XHJcbiAgQElucHV0KClcclxuICBpbnB1dENoYXJ0RGF0YTtcclxuXHJcbiAgQElucHV0KCkgaXNJbnRlcm5hbEFjdGl2ZSA9IGZhbHNlOyAvLyB1c2VkIHRvIGNvbnRyb2wgb24gc2hvd2luZyByZXN1bHRzIG9mIGludGVybmFsIGNvcmVzcCByZXN1bHRzIGluIGNoYXJ0c1xyXG4gIG15RGF0YVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcclxuICAgIHB1YmxpYyBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIGNhbGxBcGk6IENhbGxBcGlTZXJ2aWNlLCBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICAgcHVibGljIGNoYXJ0RGF0YTogQ2hhcnREYXRhU2VydmljZVxyXG4gICkge1xyXG4gICAgQ2hhcnQuZGVmYXVsdHMuZ2xvYmFsLmRlZmF1bHRGb250RmFtaWx5ID0gXCJGUyBBbGJlcnQgQXJhYmljIFdlYlwiO1xyXG4gICAgQ2hhcnQuZGVmYXVsdHMuZ2xvYmFsLmRlZmF1bHRGb250U2l6ZSA9IDEzO1xyXG4gICAgdGhpcy50cmFuc2xhdGUub25MYW5nQ2hhbmdlXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChkYXRhKSA9PiB7XHJcbiAgICAgICAgdGhpcy5jcmVhdENoYXJ0Lm5leHQoKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG4gIGNyZWF0ZUNoYXJ0KCkge1xyXG4gICAgdGhpcy5jcmVhdENoYXJ0LnBpcGUoZGVib3VuY2VUaW1lKDUwMCkpLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgIHRoaXMuZ2V0RGF0YSgpLnN1YnNjcmliZSgoZGF0YSkgPT4ge1xyXG4gICAgICAgIHRoaXMuZGF0YSA9IGRhdGE7XHJcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgbGV0IHJhbmRvbUNvbG9ycyA9IHt9O1xyXG4gICAgICAgIGlmICh0aGlzLnJhbmRvbUNvbG9ycykge1xyXG4gICAgICAgICAgZGF0YS5kYXRhLmZvckVhY2goKGl0ZW0pID0+IHtcclxuICAgICAgICAgICAgcmFuZG9tQ29sb3JzW2l0ZW0ubGFiZWxdID0gdGhpcy5zdHJpbmdUb0hzbENvbG9yKFxyXG4gICAgICAgICAgICAgIGAke2l0ZW0ubGFiZWx9YCxcclxuICAgICAgICAgICAgICA0MCxcclxuICAgICAgICAgICAgICA3MFxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuY29sb3JzID0gdGhpcy5yYW5kb21Db2xvcnMgPyByYW5kb21Db2xvcnMgOiB0aGlzLmNvbG9ycztcclxuICAgICAgICBjb25zdCB7IG9wdGlvbnMsIGNoYXJ0RGF0YSB9ID0gdGhpcy5jaGFydERhdGFbdGhpcy5jaGFydFR5cGVdKHtcclxuICAgICAgICAgIGRhdGE6IGRhdGEsXHJcbiAgICAgICAgICBjb2xvcnM6IHRoaXMuY29sb3JzLFxyXG4gICAgICAgICAgcHJlZml4OiB0aGlzLnByZWZpeCxcclxuICAgICAgICB9KTtcclxuICAgICAgICBpZiAoZGF0YS5kYXRhPy5sZW5ndGggfHwgZGF0YS5sZW5ndGgpIHtcclxuICAgICAgICAgIGlmICghdGhpcy5jaGFydE9iaikge1xyXG4gICAgICAgICAgICBjb25zdCBjdHggPSB0aGlzLmNoYXJ0Lm5hdGl2ZUVsZW1lbnQuZ2V0Q29udGV4dCgnMmQnKTtcclxuICAgICAgICAgICAgdGhpcy5jaGFydE9iaiA9IG5ldyBDaGFydChjdHgsIG9wdGlvbnMpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5jaGFydE9iai5jaGFydC5kYXRhID0gY2hhcnREYXRhO1xyXG4gICAgICAgICAgICB0aGlzLmNoYXJ0T2JqLnVwZGF0ZSgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAvLyBjb25zdCBjdHggPSB0aGlzLmNoYXJ0Lm5hdGl2ZUVsZW1lbnQuZ2V0Q29udGV4dCgnMmQnKTtcclxuICAgICAgICAgIC8vIGxldCBub09wdGlvbnMgPSB7XHJcbiAgICAgICAgICAvLyAgIHR5cGU6IG9wdGlvbnMudHlwZSxcclxuICAgICAgICAgIC8vICAgZGF0YToge1xyXG4gICAgICAgICAgLy8gICAgIGRhdGFzZXRzOiBbXSxcclxuICAgICAgICAgIC8vICAgfSxcclxuICAgICAgICAgIC8vICAgb3B0aW9uczoge30sXHJcbiAgICAgICAgICAvLyB9O1xyXG4gICAgICAgICAgLy8gdGhpcy5jaGFydE9iaiA9IG5ldyBDaGFydChjdHgsIG5vT3B0aW9ucyk7XHJcbiAgICAgICAgICAvLyB0aGlzLmNoYXJ0T2JqLmNoYXJ0LmRhdGEgPSBbXTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG4gIGNyZWF0ZUNoYXJ0V2l0aG91dFBQKCkge1xyXG4gICAgdGhpcy5pc0ZldGNoaW5nID0gdHJ1ZTtcclxuICAgIHRoaXMuY3JlYXRDaGFydC5waXBlKGRlYm91bmNlVGltZSgzMDApKS5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG4gICAgICAgIHRoaXMuZGF0YSA9IHRoaXMuaW5wdXRDaGFydERhdGE7XHJcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgbGV0IHJhbmRvbUNvbG9ycyA9IHt9O1xyXG4gICAgICAgIGlmICh0aGlzLnJhbmRvbUNvbG9ycykge1xyXG4gICAgICAgICAgdGhpcy5kYXRhLmRhdGEuZm9yRWFjaCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgICByYW5kb21Db2xvcnNbaXRlbS5sYWJlbF0gPSB0aGlzLnN0cmluZ1RvSHNsQ29sb3IoXHJcbiAgICAgICAgICAgICAgYCR7aXRlbS5sYWJlbH1gLFxyXG4gICAgICAgICAgICAgIDQwLFxyXG4gICAgICAgICAgICAgIDcwXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5jb2xvcnMgPSB0aGlzLnJhbmRvbUNvbG9ycyA/IHJhbmRvbUNvbG9ycyA6IHRoaXMuY29sb3JzO1xyXG4gICAgICAgIGNvbnN0IHsgb3B0aW9ucywgY2hhcnREYXRhIH0gPSB0aGlzLmNoYXJ0RGF0YVt0aGlzLmNoYXJ0VHlwZV0oe1xyXG4gICAgICAgICAgZGF0YTogdGhpcy5kYXRhLFxyXG4gICAgICAgICAgY29sb3JzOiB0aGlzLmNvbG9ycyxcclxuICAgICAgICAgIHByZWZpeDogdGhpcy5wcmVmaXgsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgaWYgKHRoaXMuZGF0YS5kYXRhPy5sZW5ndGggfHwgdGhpcy5kYXRhLmxlbmd0aCkge1xyXG4gICAgICAgICAgaWYgKCF0aGlzLmNoYXJ0T2JqKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGN0eCA9IHRoaXMuY2hhcnQubmF0aXZlRWxlbWVudC5nZXRDb250ZXh0KCcyZCcpO1xyXG4gICAgICAgICAgICB0aGlzLmNoYXJ0T2JqID0gbmV3IENoYXJ0KGN0eCwgb3B0aW9ucyk7XHJcbiAgICAgICAgICAgIHRoaXMuaXNGZXRjaGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5jaGFydE9iai5jaGFydC5kYXRhID0gY2hhcnREYXRhO1xyXG4gICAgICAgICAgICB0aGlzLmNoYXJ0T2JqLnVwZGF0ZSgpO1xyXG4gICAgICAgICAgICB0aGlzLmlzRmV0Y2hpbmcgPSBmYWxzZTtcclxuXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuaXNGZXRjaGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgLy8gY29uc3QgY3R4ID0gdGhpcy5jaGFydC5uYXRpdmVFbGVtZW50LmdldENvbnRleHQoJzJkJyk7XHJcbiAgICAgICAgICAvLyBsZXQgbm9PcHRpb25zID0ge1xyXG4gICAgICAgICAgLy8gICB0eXBlOiBvcHRpb25zLnR5cGUsXHJcbiAgICAgICAgICAvLyAgIGRhdGE6IHtcclxuICAgICAgICAgIC8vICAgICBkYXRhc2V0czogW10sXHJcbiAgICAgICAgICAvLyAgIH0sXHJcbiAgICAgICAgICAvLyAgIG9wdGlvbnM6IHt9LFxyXG4gICAgICAgICAgLy8gfTtcclxuICAgICAgICAgIC8vIHRoaXMuY2hhcnRPYmogPSBuZXcgQ2hhcnQoY3R4LCBub09wdGlvbnMpO1xyXG4gICAgICAgICAgLy8gdGhpcy5jaGFydE9iai5jaGFydC5kYXRhID0gW107XHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICB1cGRhdGVTdGF0cygpIHtcclxuICAgIGlmKHRoaXMuaW5wdXRDaGFydERhdGEpe1xyXG4gICAgdGhpcy5jcmVhdGVDaGFydFdpdGhvdXRQUCgpO1xyXG4gICAgfWVsc2V7XHJcbiAgICB0aGlzLmNyZWF0ZUNoYXJ0KCk7XHJcblxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYXN5bmMgbmdPbkluaXQoKSB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgaWYodGhpcy5pbnB1dENoYXJ0RGF0YSl7XHJcbiAgICAgICAgdGhpcy5jcmVhdGVDaGFydFdpdGhvdXRQUCgpO1xyXG4gICAgICAgIHRoaXMuY3JlYXRDaGFydC5uZXh0KCk7XHJcbiAgICAgIH1lbHNle1xyXG4gICAgICB0aGlzLmNyZWF0ZUNoYXJ0KCk7XHJcbiAgICAgIHRoaXMuY3JlYXRDaGFydC5uZXh0KCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICB0aGlzLmlzRmV0Y2hpbmcgPSB0cnVlO1xyXG4gICAgY29uc3QgbWluQ2hhbmdlZCA9IGNoYW5nZXMubWluICYmICFjaGFuZ2VzLm1pbj8uZmlyc3RDaGFuZ2U7XHJcbiAgICBjb25zdCBtYXhDaGFuZ2VkID0gY2hhbmdlcy5tYXggJiYgIWNoYW5nZXMubWF4Py5maXJzdENoYW5nZTtcclxuICAgIGNvbnN0IHJhbmdlQ2hhbmdlZCA9IGNoYW5nZXMucmFuZ2UgJiYgIWNoYW5nZXMucmFuZ2U/LmZpcnN0Q2hhbmdlO1xyXG4gICAgaWYgKG1pbkNoYW5nZWQgfHwgbWF4Q2hhbmdlZCB8fCByYW5nZUNoYW5nZWQpIHtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5jcmVhdENoYXJ0Lm5leHQoKTtcclxuICAgICAgICB0aGlzLmlzRmV0Y2hpbmcgPSBmYWxzZTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5teURhdGFTdWJzY3JpcHRpb24gPyB0aGlzLm15RGF0YVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpIDogJyc7XHJcbiAgICB0aGlzLm9uRGVzdHJveSQubmV4dCh0cnVlKTtcclxuICAgIHRoaXMub25EZXN0cm95JC5jb21wbGV0ZSgpO1xyXG4gICAgdGhpcy5jcmVhdENoYXJ0LnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG4gIGdldERhdGEoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHRoaXMuaXNGZXRjaGluZyA9IHRydWU7XHJcbiAgICBpZiAodGhpcy5jb21iaW5lZERhdGEpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuZ2V0Q29tYmluZWREYXRhKFxyXG4gICAgICAgIHRoaXMucGFnZVByb3ZpZGVyLFxyXG4gICAgICAgIHRoaXMucXVpY2tGaWx0ZXJzLFxyXG4gICAgICAgIHRoaXMucmFuZ2UsXHJcbiAgICAgICAgdGhpcy5wYWdlUHJvdmlkZXJUd28sXHJcbiAgICAgICAgdGhpcy5xdWlja0ZpbHRlclR3byxcclxuICAgICAgICB0aGlzLnF1aWNrRmlsdGVyVGhyZWUsXHJcbiAgICAgICAgdGhpcy5zdGF0dXNPbmUsXHJcbiAgICAgICAgdGhpcy5zdGF0dXNUd28sXHJcbiAgICAgICAgdGhpcy5zdGF0dXNUaHJlZVxyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbGV0IHBhcmFtcyA9IHtcclxuICAgICAgICBwYWdlUHJvdmlkZXI6IHRoaXMucGFnZVByb3ZpZGVyLFxyXG4gICAgICAgIGN1cnJlbnRQYWdlSW5kZXg6IDAsXHJcbiAgICAgICAgb2Zmc2V0OiAwLFxyXG4gICAgICAgIHBhZ2VTaXplOiAxLFxyXG4gICAgICAgIGR1YmxpbmNvcmVfY3JlYXRlZF9hZ2c6IHRoaXMucmFuZ2UsXHJcbiAgICAgICAgcXVpY2tGaWx0ZXJzOiB0aGlzLnF1aWNrRmlsdGVycyxcclxuICAgICAgICBkdWJsaW5jb3JlX2NyZWF0ZWRfbWluOiB0aGlzLm1pbixcclxuICAgICAgICBkdWJsaW5jb3JlX2NyZWF0ZWRfbWF4OiB0aGlzLm1heCxcclxuICAgICAgICBzeXN0ZW1fY3VycmVudExpZmVDeWNsZVN0YXRlXzM6IEpTT04uc3RyaW5naWZ5KFxyXG4gICAgICAgICAgdGhpcy5zeXN0ZW1DdXJyZW50TGlmZUN5Y2xlU3RhdGVcclxuICAgICAgICApLFxyXG4gICAgICB9XHJcbiAgICAgIC8vIGlmIHRoZXJlIHRlbmFudCBpZCBzZW50IGZyb20gb3V0c2lkZSB0aGVuIGFkZCBpdCB0byB0aGUgcGFyYW1zXHJcbiAgICAgIGlmICh0aGlzLnRlbmFudElkKSB7XHJcbiAgICAgICAgcGFyYW1zWydxdWVyeVBhcmFtcyddID0gYCR7dGhpcy50ZW5hbnRJZH1gXHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIHRoaXMuY2FsbEFwaVxyXG4gICAgICAgIC5xdWVyeShcclxuICAgICAgICAgIHBhcmFtcyxcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgaGVhZGVyczogdGhpcy5oZWFkZXJzLFxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIClcclxuICAgICAgICAucGlwZShcclxuICAgICAgICAgIG1hcCgoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBpdGVtcyA9IGRhdGEuYWdncmVnYXRpb25zW3RoaXMuYWdncmVnYXRpb25zXS5idWNrZXRzXHJcbiAgICAgICAgICAgICAgPyBkYXRhLmFnZ3JlZ2F0aW9uc1t0aGlzLmFnZ3JlZ2F0aW9uc10uYnVja2V0cy5tYXAoKGl0ZW0pID0+ICh7XHJcbiAgICAgICAgICAgICAgICBsYWJlbDogdGhpcy5mZXRjaGVkS2V5XHJcbiAgICAgICAgICAgICAgICAgID8gXy5nZXQoaXRlbSwgdGhpcy5mZXRjaGVkS2V5KVxyXG4gICAgICAgICAgICAgICAgICA6IGl0ZW0ua2V5LFxyXG4gICAgICAgICAgICAgICAgY291bnQ6IGl0ZW0uZG9jQ291bnQsXHJcbiAgICAgICAgICAgICAgfSkpXHJcbiAgICAgICAgICAgICAgOiBbXTtcclxuICAgICAgICAgICAgdGhpcy5pc0ZldGNoaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgZGF0YTogaXRlbXMsXHJcbiAgICAgICAgICAgICAgdG90YWxJdGVtczogZGF0YS50b3RhbFNpemUsXHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRDb21iaW5lZERhdGEoXHJcbiAgICBwYWdlUHJvdmlkZXJPbmUsXHJcbiAgICBxdWlja0ZpbHRlck9uZSxcclxuICAgIHNlbGVjdGVkUmFuZ2UsXHJcbiAgICBwYWdlUHJvdmlkZXJUd28sXHJcbiAgICBxdWlja0ZpbHRlclR3byxcclxuICAgIHF1aWNrRmlsdGVyVGhyZWUsXHJcbiAgICBzdGF0dXNPbmUsXHJcbiAgICBzdGF0dXNUd28sXHJcbiAgICBzdGF0dXNUaHJlZVxyXG4gICkge1xyXG4gICAgbGV0IG91dGdvaW5nUGFyYW1zID0ge1xyXG4gICAgICBwYWdlUHJvdmlkZXI6IHBhZ2VQcm92aWRlck9uZSxcclxuICAgICAgY3VycmVudFBhZ2VJbmRleDogMCxcclxuICAgICAgb2Zmc2V0OiAwLFxyXG4gICAgICBwYWdlU2l6ZTogMSxcclxuICAgICAgZHVibGluY29yZV9jcmVhdGVkX2FnZzogc2VsZWN0ZWRSYW5nZSxcclxuICAgICAgcXVpY2tGaWx0ZXJzOiBxdWlja0ZpbHRlck9uZSxcclxuICAgICAgZHVibGluY29yZV9jcmVhdGVkX21pbjogdGhpcy5taW4sXHJcbiAgICAgIGR1YmxpbmNvcmVfY3JlYXRlZF9tYXg6IHRoaXMubWF4LFxyXG4gICAgICBzeXN0ZW1fY3VycmVudExpZmVDeWNsZVN0YXRlXzM6IEpTT04uc3RyaW5naWZ5KFxyXG4gICAgICAgIHRoaXMuc3lzdGVtQ3VycmVudExpZmVDeWNsZVN0YXRlXHJcbiAgICAgICksXHJcbiAgICB9XHJcbiAgICAvLyBpZiB0aGVyZSB0ZW5hbnQgaWQgc2VudCBmcm9tIG91dHNpZGUgdGhlbiBhZGQgaXQgdG8gdGhlIHBhcmFtc1xyXG4gICAgaWYgKHRoaXMudGVuYW50SWQpIHtcclxuICAgICAgb3V0Z29pbmdQYXJhbXNbJ3F1ZXJ5UGFyYW1zJ10gPSBgJHt0aGlzLnRlbmFudElkfWBcclxuICAgIH1cclxuICAgIGNvbnN0IGdldE91dGdvaW5nJCA9IHRoaXMuY2FsbEFwaVxyXG4gICAgICAucXVlcnkoXHJcbiAgICAgICAgb3V0Z29pbmdQYXJhbXMsXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgaGVhZGVyczogdGhpcy5oZWFkZXJzLFxyXG4gICAgICAgIH1cclxuICAgICAgKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtYXAoKGRhdGEpID0+IHtcclxuICAgICAgICAgIGNvbnN0IGl0ZW1zID0gZGF0YS5hZ2dyZWdhdGlvbnNbdGhpcy5hZ2dyZWdhdGlvbnNdLmJ1Y2tldHNcclxuICAgICAgICAgICAgPyBkYXRhLmFnZ3JlZ2F0aW9uc1t0aGlzLmFnZ3JlZ2F0aW9uc10uYnVja2V0cy5tYXAoKGl0ZW0pID0+ICh7XHJcbiAgICAgICAgICAgICAgbGFiZWw6IHRoaXMuZmV0Y2hlZEtleVxyXG4gICAgICAgICAgICAgICAgPyBfLmdldChpdGVtLCB0aGlzLmZldGNoZWRLZXkpXHJcbiAgICAgICAgICAgICAgICA6IGl0ZW0ua2V5LFxyXG4gICAgICAgICAgICAgIGNvdW50OiBpdGVtLmRvY0NvdW50LFxyXG4gICAgICAgICAgICAgIGlkOiBpdGVtLmtleSxcclxuICAgICAgICAgICAgICBzdGF0dXM6IHN0YXR1c09uZSxcclxuICAgICAgICAgICAgICB0b3RhbEl0ZW1zOiBkYXRhLnRvdGFsU2l6ZSxcclxuICAgICAgICAgICAgfSkpXHJcbiAgICAgICAgICAgIDogW107XHJcbiAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBkYXRhOiBpdGVtcyxcclxuICAgICAgICAgICAgdG90YWxJdGVtczogZGF0YS50b3RhbFNpemUsXHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgIH0pXHJcbiAgICAgICk7XHJcbiAgICBsZXQgaW5jb21pbmdQYXJhbXMgPSB7XHJcbiAgICAgIHBhZ2VQcm92aWRlcjogcGFnZVByb3ZpZGVyVHdvLFxyXG4gICAgICBjdXJyZW50UGFnZUluZGV4OiAwLFxyXG4gICAgICBvZmZzZXQ6IDAsXHJcbiAgICAgIHBhZ2VTaXplOiAxLFxyXG4gICAgICBkdWJsaW5jb3JlX2NyZWF0ZWRfYWdnOiBzZWxlY3RlZFJhbmdlLFxyXG4gICAgICBxdWlja0ZpbHRlcnM6IHF1aWNrRmlsdGVyVHdvLFxyXG4gICAgICBkdWJsaW5jb3JlX2NyZWF0ZWRfbWluOiB0aGlzLm1pbixcclxuICAgICAgZHVibGluY29yZV9jcmVhdGVkX21heDogdGhpcy5tYXgsXHJcbiAgICAgIHN5c3RlbV9jdXJyZW50TGlmZUN5Y2xlU3RhdGVfMzogSlNPTi5zdHJpbmdpZnkoXHJcbiAgICAgICAgdGhpcy5zeXN0ZW1DdXJyZW50TGlmZUN5Y2xlU3RhdGVcclxuICAgICAgKSxcclxuICAgIH1cclxuICAgIC8vIGlmIHRoZXJlIHRlbmFudCBpZCBzZW50IGZyb20gb3V0c2lkZSB0aGVuIGFkZCBpdCB0byB0aGUgcGFyYW1zXHJcbiAgICBpZiAodGhpcy50ZW5hbnRJZCkge1xyXG4gICAgICBpbmNvbWluZ1BhcmFtc1sncXVlcnlQYXJhbXMnXSA9IGAke3RoaXMudGVuYW50SWR9YFxyXG4gICAgfVxyXG4gICAgY29uc3QgZ2V0SW5jb21pbmckID0gdGhpcy5jYWxsQXBpXHJcbiAgICAgIC5xdWVyeShcclxuICAgICAgICBpbmNvbWluZ1BhcmFtcyxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBoZWFkZXJzOiB0aGlzLmhlYWRlcnMsXHJcbiAgICAgICAgfVxyXG4gICAgICApXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIG1hcCgoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgY29uc3QgaXRlbXMgPSBkYXRhLmFnZ3JlZ2F0aW9uc1t0aGlzLmFnZ3JlZ2F0aW9uc10uYnVja2V0c1xyXG4gICAgICAgICAgICA/IGRhdGEuYWdncmVnYXRpb25zW3RoaXMuYWdncmVnYXRpb25zXS5idWNrZXRzLm1hcCgoaXRlbSkgPT4gKHtcclxuICAgICAgICAgICAgICBsYWJlbDogdGhpcy5mZXRjaGVkS2V5XHJcbiAgICAgICAgICAgICAgICA/IF8uZ2V0KGl0ZW0sIHRoaXMuZmV0Y2hlZEtleSlcclxuICAgICAgICAgICAgICAgIDogaXRlbS5rZXksXHJcbiAgICAgICAgICAgICAgY291bnQ6IGl0ZW0uZG9jQ291bnQsXHJcbiAgICAgICAgICAgICAgaWQ6IGl0ZW0ua2V5LFxyXG4gICAgICAgICAgICAgIHN0YXR1czogc3RhdHVzVHdvLFxyXG4gICAgICAgICAgICAgIHRvdGFsSXRlbXM6IGRhdGEudG90YWxTaXplLFxyXG4gICAgICAgICAgICB9KSlcclxuICAgICAgICAgICAgOiBbXTtcclxuICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIGRhdGE6IGl0ZW1zLFxyXG4gICAgICAgICAgICB0b3RhbEl0ZW1zOiBkYXRhLnRvdGFsU2l6ZSxcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfSlcclxuICAgICAgKTtcclxuICAgIGxldCBpbnRlcm5hbFBhcmFtcyA9IHtcclxuICAgICAgcGFnZVByb3ZpZGVyOiBwYWdlUHJvdmlkZXJUd28sXHJcbiAgICAgIGN1cnJlbnRQYWdlSW5kZXg6IDAsXHJcbiAgICAgIG9mZnNldDogMCxcclxuICAgICAgcGFnZVNpemU6IDEsXHJcbiAgICAgIGR1YmxpbmNvcmVfY3JlYXRlZF9hZ2c6IHNlbGVjdGVkUmFuZ2UsXHJcbiAgICAgIHF1aWNrRmlsdGVyczogcXVpY2tGaWx0ZXJUaHJlZSxcclxuICAgICAgZHVibGluY29yZV9jcmVhdGVkX21pbjogdGhpcy5taW4sXHJcbiAgICAgIGR1YmxpbmNvcmVfY3JlYXRlZF9tYXg6IHRoaXMubWF4LFxyXG4gICAgICBzeXN0ZW1fY3VycmVudExpZmVDeWNsZVN0YXRlXzM6IEpTT04uc3RyaW5naWZ5KFxyXG4gICAgICAgIHRoaXMuc3lzdGVtQ3VycmVudExpZmVDeWNsZVN0YXRlXHJcbiAgICAgICksXHJcbiAgICB9XHJcbiAgICAvLyBpZiB0aGVyZSB0ZW5hbnQgaWQgc2VudCBmcm9tIG91dHNpZGUgdGhlbiBhZGQgaXQgdG8gdGhlIHBhcmFtc1xyXG4gICAgaWYgKHRoaXMudGVuYW50SWQpIHtcclxuICAgICAgaW50ZXJuYWxQYXJhbXNbJ3F1ZXJ5UGFyYW1zJ10gPSBgJHt0aGlzLnRlbmFudElkfWBcclxuICAgIH1cclxuICAgIGNvbnN0IGdldEludGVybmFsJCA9IHRoaXMuY2FsbEFwaVxyXG4gICAgICAucXVlcnkoXHJcbiAgICAgICAgaW50ZXJuYWxQYXJhbXMsXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgaGVhZGVyczogdGhpcy5oZWFkZXJzLFxyXG4gICAgICAgIH1cclxuICAgICAgKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtYXAoKGRhdGEpID0+IHtcclxuICAgICAgICAgIGNvbnN0IGl0ZW1zID0gZGF0YS5hZ2dyZWdhdGlvbnNbdGhpcy5hZ2dyZWdhdGlvbnNdLmJ1Y2tldHNcclxuICAgICAgICAgICAgPyBkYXRhLmFnZ3JlZ2F0aW9uc1t0aGlzLmFnZ3JlZ2F0aW9uc10uYnVja2V0cy5tYXAoKGl0ZW0pID0+ICh7XHJcbiAgICAgICAgICAgICAgbGFiZWw6IHRoaXMuZmV0Y2hlZEtleVxyXG4gICAgICAgICAgICAgICAgPyBfLmdldChpdGVtLCB0aGlzLmZldGNoZWRLZXkpXHJcbiAgICAgICAgICAgICAgICA6IGl0ZW0ua2V5LFxyXG4gICAgICAgICAgICAgIGNvdW50OiBpdGVtLmRvY0NvdW50LFxyXG4gICAgICAgICAgICAgIGlkOiBpdGVtLmtleSxcclxuICAgICAgICAgICAgICBzdGF0dXM6IHN0YXR1c1RocmVlLFxyXG4gICAgICAgICAgICAgIHRvdGFsSXRlbXM6IGRhdGEudG90YWxTaXplLFxyXG4gICAgICAgICAgICB9KSlcclxuICAgICAgICAgICAgOiBbXTtcclxuICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIGRhdGE6IGl0ZW1zLFxyXG4gICAgICAgICAgICB0b3RhbEl0ZW1zOiBkYXRhLnRvdGFsU2l6ZSxcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfSlcclxuICAgICAgKTtcclxuICAgIGlmICh0aGlzLmlzSW50ZXJuYWxBY3RpdmUpIHtcclxuICAgICAgcmV0dXJuIGZvcmtKb2luKFtnZXRPdXRnb2luZyQsIGdldEluY29taW5nJCwgZ2V0SW50ZXJuYWwkXSkucGlwZShcclxuICAgICAgICBtYXAoKGRhdGEpID0+IHtcclxuICAgICAgICAgIGxldCBjb21iaW5lZERhdGEgPSBbLi4uZGF0YVswXS5kYXRhLCAuLi5kYXRhWzFdLmRhdGEsIC4uLmRhdGFbMl0uZGF0YV07XHJcbiAgICAgICAgICB0aGlzLmlzRmV0Y2hpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIHJldHVybiBjb21iaW5lZERhdGE7XHJcbiAgICAgICAgfSlcclxuICAgICAgKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBmb3JrSm9pbihbZ2V0T3V0Z29pbmckLCBnZXRJbmNvbWluZyRdKS5waXBlKFxyXG4gICAgICAgIG1hcCgoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgbGV0IGNvbWJpbmVkRGF0YSA9IFsuLi5kYXRhWzBdLmRhdGEsIC4uLmRhdGFbMV0uZGF0YV07XHJcbiAgICAgICAgICB0aGlzLmlzRmV0Y2hpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIHJldHVybiBjb21iaW5lZERhdGE7XHJcbiAgICAgICAgfSlcclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByZXZpZXdDb3JyZXNwb25kZW5jZXMoKSB7XHJcbiAgICBjb25zb2xlLmxvZyhcInBhcmFtc1wiLCB0aGlzLnN5c3RlbUN1cnJlbnRMaWZlQ3ljbGVTdGF0ZSlcclxuICAgIGxldCBxdWVyeVBhcmFtcztcclxuICAgIGlmICh0aGlzLmNvbWJpbmVkRGF0YSkge1xyXG4gICAgICBxdWVyeVBhcmFtcyA9IHtcclxuICAgICAgICBjb21iaW5lZERhdGE6IHRoaXMuY29tYmluZWREYXRhLFxyXG4gICAgICAgIHBhZ2VQcm92aWRlcjogdGhpcy5wYWdlUHJvdmlkZXIsXHJcbiAgICAgICAgaGVhZGVyczogSlNPTi5zdHJpbmdpZnkodGhpcy5oZWFkZXJzKSxcclxuICAgICAgICByYW5nZTogdGhpcy5yYW5nZSxcclxuICAgICAgICBhZ2dyZWdhdGlvbnM6IHRoaXMuYWdncmVnYXRpb25zLFxyXG4gICAgICAgIHF1aWNrRmlsdGVyT25lOiB0aGlzLnF1aWNrRmlsdGVycyxcclxuICAgICAgICBxdWlja0ZpbHRlclR3bzogdGhpcy5xdWlja0ZpbHRlclR3byxcclxuICAgICAgICBxdWlja0ZpbHRlclRocmVlOiB0aGlzLnF1aWNrRmlsdGVyVGhyZWUsXHJcbiAgICAgICAgc3lzdGVtQ3VycmVudExpZmVDeWNsZVN0YXRlOiB0aGlzLnN5c3RlbUN1cnJlbnRMaWZlQ3ljbGVTdGF0ZSxcclxuICAgICAgICBzdGF0dXNPbmU6IHRoaXMuc3RhdHVzT25lLFxyXG4gICAgICAgIHN0YXR1c1R3bzogdGhpcy5zdGF0dXNUd28sXHJcbiAgICAgICAgc3RhdHVzVGhyZWU6IHRoaXMuc3RhdHVzVGhyZWUsXHJcbiAgICAgICAgbWluOiB0aGlzLm1pbixcclxuICAgICAgICBtYXg6IHRoaXMubWF4LFxyXG4gICAgICB9O1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcXVlcnlQYXJhbXMgPSB7XHJcbiAgICAgICAgY29tYmluZWREYXRhOiB0aGlzLmNvbWJpbmVkRGF0YSxcclxuICAgICAgICBwYWdlUHJvdmlkZXI6IHRoaXMucGFnZVByb3ZpZGVyLFxyXG4gICAgICAgIHF1aWNrRmlsdGVyT25lOiB0aGlzLnF1aWNrRmlsdGVycyxcclxuICAgICAgICBoZWFkZXJzOiBKU09OLnN0cmluZ2lmeSh0aGlzLmhlYWRlcnMpLFxyXG4gICAgICAgIHJhbmdlOiB0aGlzLnJhbmdlLFxyXG4gICAgICAgIGFnZ3JlZ2F0aW9uczogdGhpcy5hZ2dyZWdhdGlvbnMsXHJcbiAgICAgICAgc3lzdGVtQ3VycmVudExpZmVDeWNsZVN0YXRlOiB0aGlzLnN5c3RlbUN1cnJlbnRMaWZlQ3ljbGVTdGF0ZSxcclxuICAgICAgICBtaW46IHRoaXMubWluLFxyXG4gICAgICAgIG1heDogdGhpcy5tYXgsXHJcbiAgICAgIH07XHJcbiAgICB9XHJcbiAgICAvLyBpZiB0aGVyZSB0ZW5hbnQgaWQgc2VudCBmcm9tIG91dHNpZGUgdGhlbiBhZGQgaXQgdG8gdGhlIHBhcmFtc1xyXG4gICAgaWYgKHRoaXMudGVuYW50SWQpIHtcclxuICAgICAgcXVlcnlQYXJhbXNbJ3F1ZXJ5UGFyYW1zJ10gPSBgJHt0aGlzLnRlbmFudElkfWBcclxuICAgIH1cclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsncmVwb3J0JywgJ2NoYXJ0LWRldGFpbHMnXSwge1xyXG4gICAgICBxdWVyeVBhcmFtczogcXVlcnlQYXJhbXMsXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHN0cmluZ1RvSHNsQ29sb3Ioc3RyLCBzLCBsKSB7XHJcbiAgICB2YXIgaGFzaCA9IDA7XHJcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IHN0ci5sZW5ndGg7IGkrKykge1xyXG4gICAgICBoYXNoID0gc3RyLmNoYXJDb2RlQXQoaSkgKyAoKGhhc2ggPDwgNSkgLSBoYXNoKTtcclxuICAgIH1cclxuICAgIHZhciBoID0gaGFzaCAlIDM2MDtcclxuICAgIHJldHVybiAnaHNsKCcgKyBoICsgJywgJyArIHMgKyAnJSwgJyArIGwgKyAnJSknO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiY2FyZC1jb250aW5lclwiICpuZ0lmPVwiY2FyZDsgZWxzZSB0ZXN0XCI+XHJcbiAgPGRpdiBjbGFzcz1cImNoYXJ0LWNhcmQtaGVhZGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY2hhcnQtY2FyZC10aXRsZVwiPnt7IGNhcmRUaXRsZSB8IHRyYW5zbGF0ZSB9fTwvZGl2PlxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cImNoYXJ0LWNhcmQtYnV0dG9uXCIgKGNsaWNrKT1cInByZXZpZXdDb3JyZXNwb25kZW5jZXMoKVwiPlxyXG4gICAgICB7eyBcInJlcG9ydC5QcmV2aWV3XCIgfCB0cmFuc2xhdGUgfX1cclxuICAgIDwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc0ZldGNoaW5nXCI+XHJcbiAgICA8Y3RzLXNwaW5uZXI+PC9jdHMtc3Bpbm5lcj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuICA8ZGl2IGNsYXNzPVwic3RhdFwiIFtzdHlsZS5oZWlnaHQucHhdPVwiaGVpZ2h0XCI+XHJcbiAgICA8ZGl2IFtoaWRkZW5dPVwiZGF0YS5kYXRhPy5sZW5ndGggPT0gMCB8fCBkYXRhLmxlbmd0aCA9PSAwXCI+XHJcbiAgICAgIDxjYW52YXMgI3JldmVudWVMaW5lQ2hhcnQgW2hlaWdodF09XCJoZWlnaHRcIiBbd2lkdGhdPVwid2lkdGhcIj48L2NhbnZhcz5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cIm5vLXN0YXRzXCIgKm5nSWY9XCJkYXRhLmRhdGE/Lmxlbmd0aCA9PSAwIHx8IGRhdGEubGVuZ3RoID09IDBcIj5cclxuICAgICAgPHNwYW4+e3sgXCJTVEFUUy5ub0RhdGFcIiB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjdGVzdD5cclxuICA8ZGl2IGNsYXNzPVwic3RhdFwiPlxyXG4gICAgPGNhbnZhcyAjcmV2ZW51ZUxpbmVDaGFydCBbaGVpZ2h0XT1cImhlaWdodFwiIFt3aWR0aF09XCJ3aWR0aFwiPjwvY2FudmFzPlxyXG4gIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuIl19
|
|
477
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jaGFydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtY2hhcnQvZHluYW1pYy1jaGFydC9keW5hbWljLWNoYXJ0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZHluYW1pYy1jaGFydC9keW5hbWljLWNoYXJ0L2R5bmFtaWMtY2hhcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFFTCxTQUFTLEVBRVQsS0FBSyxFQUtMLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ2pDLE9BQU8sRUFBYyxPQUFPLEVBQWdCLFFBQVEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNuRSxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUc5RCxPQUFPLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUU1QixPQUFPLG1DQUFtQyxDQUFDO0FBQzNDLE9BQU8sdUJBQXVCLENBQUM7Ozs7Ozs7O0FBQy9CLGNBQWM7QUFNZCxNQUFNLE9BQU8scUJBQXFCO0lBcUVoQyxZQUNTLFNBQTJCLEVBQzNCLGNBQWlDLEVBQ2hDLE9BQXVCLEVBQVUsTUFBYyxFQUNoRCxTQUEyQjtRQUgzQixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFDaEMsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2hELGNBQVMsR0FBVCxTQUFT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SztnQkFFTixhQUFhO3NCQURaLEtBQUs7Z0JBRUcsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBY04sV0FBVztzQkFEVixLQUFLO2dCQUdOLFVBQVU7c0JBRFQsS0FBSztnQkFHTixlQUFlO3NCQURkLEtBQUs7Z0JBR04sY0FBYztzQkFEYixLQUFLO2dCQUdOLGdCQUFnQjtzQkFEZixLQUFLO2dCQUdOLFlBQVk7c0JBRFgsS0FBSztnQkFHTixTQUFTO3NCQURSLEtBQUs7Z0JBR04sU0FBUztzQkFEUixLQUFLO2dCQUdOLFdBQVc7c0JBRFYsS0FBSztnQkFHTixHQUFHO3NCQURGLEtBQUs7Z0JBR04sR0FBRztzQkFERixLQUFLO2dCQUdOLEtBQUs7c0JBREosS0FBSztnQkFHTixNQUFNO3NCQURMLEtBQUs7Z0JBR04sSUFBSTtzQkFESCxLQUFLO2dCQUdOLFNBQVM7c0JBRFIsS0FBSztnQkFHTixjQUFjO3NCQURiLEtBQUs7Z0JBR0csZ0JBQWdCO3NCQUF4QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBJbnB1dCxcclxuICBPbkNoYW5nZXMsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25Jbml0LFxyXG4gIFZpZXdDaGlsZCxcclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSBcIkBuZ3gtdHJhbnNsYXRlL2NvcmVcIjtcclxuaW1wb3J0IHsgQ2hhcnQgfSBmcm9tIFwiY2hhcnQuanNcIjtcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCwgU3Vic2NyaXB0aW9uLCBmb3JrSm9pbiB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IG1hcCwgdGFrZVVudGlsLCBkZWJvdW5jZVRpbWUgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuaW1wb3J0IHsgQ2FsbEFwaVNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy9jYWxsQXBpL2NhbGwtYXBpLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgQ2hhcnREYXRhU2VydmljZSB9IGZyb20gXCIuLi9zZXJ2aWNlcy9jaGFydC1kYXRhLnNlcnZpY2VcIjtcclxuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgJ2NoYXJ0anMtcGx1Z2luLXBpZWNoYXJ0LW91dGxhYmVscyc7XHJcbmltcG9ydCAnY2hhcnRqcy1wbHVnaW4tbGFiZWxzJztcclxuLyoqIEBpZ25vcmUgKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiY3RzLWR5bmFtaWMtY2hhcnRcIixcclxuICB0ZW1wbGF0ZVVybDogXCIuL2R5bmFtaWMtY2hhcnQuY29tcG9uZW50Lmh0bWxcIixcclxuICBzdHlsZVVybHM6IFtcIi4vZHluYW1pYy1jaGFydC5jb21wb25lbnQuc2Nzc1wiXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIER5bmFtaWNDaGFydENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xyXG4gIEBWaWV3Q2hpbGQoJ3JldmVudWVMaW5lQ2hhcnQnLCB7IHN0YXRpYzogZmFsc2UgfSkgY2hhcnQ6IEVsZW1lbnRSZWY7XHJcbiAgQElucHV0KClcclxuICBwcmVmaXggPSAnU1RBVFMuJzsgLy8gZm9yIHRyYW5zbGF0aW9uXHJcbiAgQElucHV0KClcclxuICBjaGFydFR5cGU7IC8vIGZ1bmN0aW9ucyBleGlzdCBpbnNpZGUgQ2hhcnREYXRhU2VydmljZVxyXG4gIEBJbnB1dCgpIHJhbmRvbUNvbG9yczogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHByaXZhdGUgY2hhcnRPYmo7XHJcbiAgcHJpdmF0ZSBvbkRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcclxuICBjcmVhdENoYXJ0ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIEBJbnB1dCgpIHBhZ2VQcm92aWRlcjsgLy8gZGVmaW5lIGFwaSB0byBnZXQgdGhlIGRhdGEgZnJvbVxyXG4gIEBJbnB1dCgpIGhlYWRlcnMgPSB7fTsgLy8gaGVhZGVycyBpbiBjb25zdGFudHNcclxuICBASW5wdXQoKSBvYnNlcnZhYmxlOyAvLyBvYnNlcnZhYmxlIGluIGNhc2Ugb2YgY2FsbCBhcGkgaXMgY2FsbGVkIGZyb20gb3V0c2lkZSB0aGUgY29tcG9uZW50XHJcbiAgQElucHV0KCkgYWdncmVnYXRpb25zO1xyXG4gIEBJbnB1dCgpIHF1aWNrRmlsdGVycztcclxuICBASW5wdXQoKSBzeXN0ZW1DdXJyZW50TGlmZUN5Y2xlU3RhdGU7XHJcbiAgQElucHV0KCkgcmFuZ2UgPSAnW1wiZnJvbV9ub3ctN2RfdG9fbm93XCJdJztcclxuICBASW5wdXQoKSBsYWJlbDtcclxuICBASW5wdXQoKVxyXG4gIHNlbGVjdGVkUmFuZ2UgPSBcIndlZWtcIjsgLy8gcmFuZ2UgdG8gYmUgZmlsdGVyZCBvblxyXG4gIEBJbnB1dCgpIHRlbmFudElkOyAvLyB3aWxsIGJlIHNlbnQgb25seSBpbiBjYXNlIG9mIG11bHRpIHRlbmFudFxyXG4gIEBJbnB1dCgpIGNvbG9yczogYW55ID0ge1xyXG4gICAgaW5Qcm9ncmVzczogJyMzYzNjZjAnLFxyXG4gICAgcmVnaXN0ZXJlZDogJyM1YTE0OTYnLFxyXG4gICAgZHJhZnQ6ICcjNTk2OTczJyxcclxuICAgIGFyY2hpdmVkOiAnI2ZiYjYyYycsXHJcbiAgICBjbG9zZWQ6ICcjMDBkY2E1JyxcclxuICAgIGFzc2lnbmVkOiAnI2ZkNjY3MCcsXHJcbiAgICB1bmRlZmluZWQ6ICcjZjdmOGY5JyxcclxuICAgIG90aGVyOiAnI2YxNzIwNScsXHJcbiAgfTtcclxuICBkYXRhOiBhbnkgPSBbXTtcclxuICBpc0ZldGNoaW5nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgY2hhcnRzOiBbXTtcclxuICBASW5wdXQoKVxyXG4gIHJhbmRvbUNvbG9yOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KClcclxuICBmZXRjaGVkS2V5O1xyXG4gIEBJbnB1dCgpXHJcbiAgcGFnZVByb3ZpZGVyVHdvO1xyXG4gIEBJbnB1dCgpXHJcbiAgcXVpY2tGaWx0ZXJUd287XHJcbiAgQElucHV0KClcclxuICBxdWlja0ZpbHRlclRocmVlO1xyXG4gIEBJbnB1dCgpXHJcbiAgY29tYmluZWREYXRhID0gZmFsc2U7XHJcbiAgQElucHV0KClcclxuICBzdGF0dXNPbmU7XHJcbiAgQElucHV0KClcclxuICBzdGF0dXNUd287XHJcbiAgQElucHV0KClcclxuICBzdGF0dXNUaHJlZTtcclxuICBASW5wdXQoKVxyXG4gIG1pbjtcclxuICBASW5wdXQoKVxyXG4gIG1heDtcclxuICBASW5wdXQoKVxyXG4gIHdpZHRoO1xyXG4gIEBJbnB1dCgpXHJcbiAgaGVpZ2h0O1xyXG4gIEBJbnB1dCgpXHJcbiAgY2FyZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpXHJcbiAgY2FyZFRpdGxlID0gJyc7XHJcbiAgQElucHV0KClcclxuICBpbnB1dENoYXJ0RGF0YTtcclxuXHJcbiAgQElucHV0KCkgaXNJbnRlcm5hbEFjdGl2ZSA9IGZhbHNlOyAvLyB1c2VkIHRvIGNvbnRyb2wgb24gc2hvd2luZyByZXN1bHRzIG9mIGludGVybmFsIGNvcmVzcCByZXN1bHRzIGluIGNoYXJ0c1xyXG4gIG15RGF0YVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcclxuICAgIHB1YmxpYyBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIGNhbGxBcGk6IENhbGxBcGlTZXJ2aWNlLCBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICAgcHVibGljIGNoYXJ0RGF0YTogQ2hhcnREYXRhU2VydmljZVxyXG4gICkge1xyXG4gICAgQ2hhcnQuZGVmYXVsdHMuZ2xvYmFsLmRlZmF1bHRGb250RmFtaWx5ID0gXCJGUyBBbGJlcnQgQXJhYmljIFdlYlwiO1xyXG4gICAgQ2hhcnQuZGVmYXVsdHMuZ2xvYmFsLmRlZmF1bHRGb250U2l6ZSA9IDEzO1xyXG4gICAgdGhpcy50cmFuc2xhdGUub25MYW5nQ2hhbmdlXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChkYXRhKSA9PiB7XHJcbiAgICAgICAgdGhpcy5jcmVhdENoYXJ0Lm5leHQoKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG4gIGNyZWF0ZUNoYXJ0KCkge1xyXG4gICAgdGhpcy5jcmVhdENoYXJ0LnBpcGUoZGVib3VuY2VUaW1lKDUwMCkpLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgIHRoaXMuZ2V0RGF0YSgpLnN1YnNjcmliZSgoZGF0YSkgPT4ge1xyXG4gICAgICAgIHRoaXMuZGF0YSA9IGRhdGE7XHJcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgbGV0IHJhbmRvbUNvbG9ycyA9IHt9O1xyXG4gICAgICAgIGlmICh0aGlzLnJhbmRvbUNvbG9ycykge1xyXG4gICAgICAgICAgZGF0YS5kYXRhLmZvckVhY2goKGl0ZW0pID0+IHtcclxuICAgICAgICAgICAgcmFuZG9tQ29sb3JzW2l0ZW0ubGFiZWxdID0gdGhpcy5zdHJpbmdUb0hzbENvbG9yKFxyXG4gICAgICAgICAgICAgIGAke2l0ZW0ubGFiZWx9YCxcclxuICAgICAgICAgICAgICA0MCxcclxuICAgICAgICAgICAgICA3MFxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuY29sb3JzID0gdGhpcy5yYW5kb21Db2xvcnMgPyByYW5kb21Db2xvcnMgOiB0aGlzLmNvbG9ycztcclxuICAgICAgICBjb25zdCB7IG9wdGlvbnMsIGNoYXJ0RGF0YSB9ID0gdGhpcy5jaGFydERhdGFbdGhpcy5jaGFydFR5cGVdKHtcclxuICAgICAgICAgIGRhdGE6IGRhdGEsXHJcbiAgICAgICAgICBjb2xvcnM6IHRoaXMuY29sb3JzLFxyXG4gICAgICAgICAgcHJlZml4OiB0aGlzLnByZWZpeCxcclxuICAgICAgICB9KTtcclxuICAgICAgICBpZiAoZGF0YS5kYXRhPy5sZW5ndGggfHwgZGF0YS5sZW5ndGgpIHtcclxuICAgICAgICAgIGlmICghdGhpcy5jaGFydE9iaikge1xyXG4gICAgICAgICAgICBjb25zdCBjdHggPSB0aGlzLmNoYXJ0Lm5hdGl2ZUVsZW1lbnQuZ2V0Q29udGV4dCgnMmQnKTtcclxuICAgICAgICAgICAgdGhpcy5jaGFydE9iaiA9IG5ldyBDaGFydChjdHgsIG9wdGlvbnMpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5jaGFydE9iai5jaGFydC5kYXRhID0gY2hhcnREYXRhO1xyXG4gICAgICAgICAgICB0aGlzLmNoYXJ0T2JqLnVwZGF0ZSgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAvLyBjb25zdCBjdHggPSB0aGlzLmNoYXJ0Lm5hdGl2ZUVsZW1lbnQuZ2V0Q29udGV4dCgnMmQnKTtcclxuICAgICAgICAgIC8vIGxldCBub09wdGlvbnMgPSB7XHJcbiAgICAgICAgICAvLyAgIHR5cGU6IG9wdGlvbnMudHlwZSxcclxuICAgICAgICAgIC8vICAgZGF0YToge1xyXG4gICAgICAgICAgLy8gICAgIGRhdGFzZXRzOiBbXSxcclxuICAgICAgICAgIC8vICAgfSxcclxuICAgICAgICAgIC8vICAgb3B0aW9uczoge30sXHJcbiAgICAgICAgICAvLyB9O1xyXG4gICAgICAgICAgLy8gdGhpcy5jaGFydE9iaiA9IG5ldyBDaGFydChjdHgsIG5vT3B0aW9ucyk7XHJcbiAgICAgICAgICAvLyB0aGlzLmNoYXJ0T2JqLmNoYXJ0LmRhdGEgPSBbXTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG4gIGNyZWF0ZUNoYXJ0V2l0aG91dFBQKCkge1xyXG4gICAgdGhpcy5pc0ZldGNoaW5nID0gdHJ1ZTtcclxuICAgIHRoaXMuY3JlYXRDaGFydC5waXBlKGRlYm91bmNlVGltZSgzMDApKS5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG4gICAgICAgIHRoaXMuZGF0YSA9IHRoaXMuaW5wdXRDaGFydERhdGE7XHJcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgbGV0IHJhbmRvbUNvbG9ycyA9IHt9O1xyXG4gICAgICAgIGlmICh0aGlzLnJhbmRvbUNvbG9ycykge1xyXG4gICAgICAgICAgdGhpcy5kYXRhLmRhdGEuZm9yRWFjaCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgICByYW5kb21Db2xvcnNbaXRlbS5sYWJlbF0gPSB0aGlzLnN0cmluZ1RvSHNsQ29sb3IoXHJcbiAgICAgICAgICAgICAgYCR7aXRlbS5sYWJlbH1gLFxyXG4gICAgICAgICAgICAgIDQwLFxyXG4gICAgICAgICAgICAgIDcwXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5jb2xvcnMgPSB0aGlzLnJhbmRvbUNvbG9ycyA/IHJhbmRvbUNvbG9ycyA6IHRoaXMuY29sb3JzO1xyXG4gICAgICAgIGNvbnN0IHsgb3B0aW9ucywgY2hhcnREYXRhIH0gPSB0aGlzLmNoYXJ0RGF0YVt0aGlzLmNoYXJ0VHlwZV0oe1xyXG4gICAgICAgICAgZGF0YTogdGhpcy5kYXRhLFxyXG4gICAgICAgICAgY29sb3JzOiB0aGlzLmNvbG9ycyxcclxuICAgICAgICAgIHByZWZpeDogdGhpcy5wcmVmaXgsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgaWYgKHRoaXMuZGF0YS5kYXRhPy5sZW5ndGggfHwgdGhpcy5kYXRhLmxlbmd0aCkge1xyXG4gICAgICAgICAgaWYgKCF0aGlzLmNoYXJ0T2JqKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGN0eCA9IHRoaXMuY2hhcnQubmF0aXZlRWxlbWVudC5nZXRDb250ZXh0KCcyZCcpO1xyXG4gICAgICAgICAgICB0aGlzLmNoYXJ0T2JqID0gbmV3IENoYXJ0KGN0eCwgb3B0aW9ucyk7XHJcbiAgICAgICAgICAgIHRoaXMuaXNGZXRjaGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5jaGFydE9iai5jaGFydC5kYXRhID0gY2hhcnREYXRhO1xyXG4gICAgICAgICAgICB0aGlzLmNoYXJ0T2JqLnVwZGF0ZSgpO1xyXG4gICAgICAgICAgICB0aGlzLmlzRmV0Y2hpbmcgPSBmYWxzZTtcclxuXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuaXNGZXRjaGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgLy8gY29uc3QgY3R4ID0gdGhpcy5jaGFydC5uYXRpdmVFbGVtZW50LmdldENvbnRleHQoJzJkJyk7XHJcbiAgICAgICAgICAvLyBsZXQgbm9PcHRpb25zID0ge1xyXG4gICAgICAgICAgLy8gICB0eXBlOiBvcHRpb25zLnR5cGUsXHJcbiAgICAgICAgICAvLyAgIGRhdGE6IHtcclxuICAgICAgICAgIC8vICAgICBkYXRhc2V0czogW10sXHJcbiAgICAgICAgICAvLyAgIH0sXHJcbiAgICAgICAgICAvLyAgIG9wdGlvbnM6IHt9LFxyXG4gICAgICAgICAgLy8gfTtcclxuICAgICAgICAgIC8vIHRoaXMuY2hhcnRPYmogPSBuZXcgQ2hhcnQoY3R4LCBub09wdGlvbnMpO1xyXG4gICAgICAgICAgLy8gdGhpcy5jaGFydE9iai5jaGFydC5kYXRhID0gW107XHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICB1cGRhdGVTdGF0cygpIHtcclxuICAgIGlmKHRoaXMuaW5wdXRDaGFydERhdGEpe1xyXG4gICAgdGhpcy5jcmVhdGVDaGFydFdpdGhvdXRQUCgpO1xyXG4gICAgfWVsc2V7XHJcbiAgICB0aGlzLmNyZWF0ZUNoYXJ0KCk7XHJcblxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYXN5bmMgbmdPbkluaXQoKSB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgaWYodGhpcy5pbnB1dENoYXJ0RGF0YSl7XHJcbiAgICAgICAgdGhpcy5jcmVhdGVDaGFydFdpdGhvdXRQUCgpO1xyXG4gICAgICAgIHRoaXMuY3JlYXRDaGFydC5uZXh0KCk7XHJcbiAgICAgIH1lbHNle1xyXG4gICAgICB0aGlzLmNyZWF0ZUNoYXJ0KCk7XHJcbiAgICAgIHRoaXMuY3JlYXRDaGFydC5uZXh0KCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICB0aGlzLmlzRmV0Y2hpbmcgPSB0cnVlO1xyXG4gICAgY29uc3QgbWluQ2hhbmdlZCA9IGNoYW5nZXMubWluICYmICFjaGFuZ2VzLm1pbj8uZmlyc3RDaGFuZ2U7XHJcbiAgICBjb25zdCBtYXhDaGFuZ2VkID0gY2hhbmdlcy5tYXggJiYgIWNoYW5nZXMubWF4Py5maXJzdENoYW5nZTtcclxuICAgIGNvbnN0IHJhbmdlQ2hhbmdlZCA9IGNoYW5nZXMucmFuZ2UgJiYgIWNoYW5nZXMucmFuZ2U/LmZpcnN0Q2hhbmdlO1xyXG4gICAgaWYgKG1pbkNoYW5nZWQgfHwgbWF4Q2hhbmdlZCB8fCByYW5nZUNoYW5nZWQpIHtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5jcmVhdENoYXJ0Lm5leHQoKTtcclxuICAgICAgICB0aGlzLmlzRmV0Y2hpbmcgPSBmYWxzZTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5teURhdGFTdWJzY3JpcHRpb24gPyB0aGlzLm15RGF0YVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpIDogJyc7XHJcbiAgICB0aGlzLm9uRGVzdHJveSQubmV4dCh0cnVlKTtcclxuICAgIHRoaXMub25EZXN0cm95JC5jb21wbGV0ZSgpO1xyXG4gICAgdGhpcy5jcmVhdENoYXJ0LnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG4gIGdldERhdGEoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHRoaXMuaXNGZXRjaGluZyA9IHRydWU7XHJcbiAgICBpZiAodGhpcy5jb21iaW5lZERhdGEpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuZ2V0Q29tYmluZWREYXRhKFxyXG4gICAgICAgIHRoaXMucGFnZVByb3ZpZGVyLFxyXG4gICAgICAgIHRoaXMucXVpY2tGaWx0ZXJzLFxyXG4gICAgICAgIHRoaXMucmFuZ2UsXHJcbiAgICAgICAgdGhpcy5wYWdlUHJvdmlkZXJUd28sXHJcbiAgICAgICAgdGhpcy5xdWlja0ZpbHRlclR3byxcclxuICAgICAgICB0aGlzLnF1aWNrRmlsdGVyVGhyZWUsXHJcbiAgICAgICAgdGhpcy5zdGF0dXNPbmUsXHJcbiAgICAgICAgdGhpcy5zdGF0dXNUd28sXHJcbiAgICAgICAgdGhpcy5zdGF0dXNUaHJlZVxyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbGV0IHBhcmFtcyA9IHtcclxuICAgICAgICBwYWdlUHJvdmlkZXI6IHRoaXMucGFnZVByb3ZpZGVyLFxyXG4gICAgICAgIGN1cnJlbnRQYWdlSW5kZXg6IDAsXHJcbiAgICAgICAgb2Zmc2V0OiAwLFxyXG4gICAgICAgIHBhZ2VTaXplOiAxLFxyXG4gICAgICAgIGR1YmxpbmNvcmVfY3JlYXRlZF9hZ2c6IHRoaXMucmFuZ2UsXHJcbiAgICAgICAgcXVpY2tGaWx0ZXJzOiB0aGlzLnF1aWNrRmlsdGVycyxcclxuICAgICAgICBkdWJsaW5jb3JlX2NyZWF0ZWRfbWluOiB0aGlzLm1pbixcclxuICAgICAgICBkdWJsaW5jb3JlX2NyZWF0ZWRfbWF4OiB0aGlzLm1heCxcclxuICAgICAgICBzeXN0ZW1fY3VycmVudExpZmVDeWNsZVN0YXRlXzM6IEpTT04uc3RyaW5naWZ5KFxyXG4gICAgICAgICAgdGhpcy5zeXN0ZW1DdXJyZW50TGlmZUN5Y2xlU3RhdGVcclxuICAgICAgICApLFxyXG4gICAgICB9XHJcbiAgICAgIC8vIGlmIHRoZXJlIHRlbmFudCBpZCBzZW50IGZyb20gb3V0c2lkZSB0aGVuIGFkZCBpdCB0byB0aGUgcGFyYW1zXHJcbiAgICAgIGlmICh0aGlzLnRlbmFudElkKSB7XHJcbiAgICAgICAgcGFyYW1zWydxdWVyeVBhcmFtcyddID0gYCR7dGhpcy50ZW5hbnRJZH1gXHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIHRoaXMuY2FsbEFwaVxyXG4gICAgICAgIC5xdWVyeShcclxuICAgICAgICAgIHBhcmFtcyxcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgaGVhZGVyczogdGhpcy5oZWFkZXJzLFxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIClcclxuICAgICAgICAucGlwZShcclxuICAgICAgICAgIG1hcCgoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBpdGVtcyA9IGRhdGEuYWdncmVnYXRpb25zW3RoaXMuYWdncmVnYXRpb25zXS5idWNrZXRzXHJcbiAgICAgICAgICAgICAgPyBkYXRhLmFnZ3JlZ2F0aW9uc1t0aGlzLmFnZ3JlZ2F0aW9uc10uYnVja2V0cy5tYXAoKGl0ZW0pID0+ICh7XHJcbiAgICAgICAgICAgICAgICBsYWJlbDogdGhpcy5mZXRjaGVkS2V5XHJcbiAgICAgICAgICAgICAgICAgID8gXy5nZXQoaXRlbSwgdGhpcy5mZXRjaGVkS2V5KVxyXG4gICAgICAgICAgICAgICAgICA6IGl0ZW0ua2V5LFxyXG4gICAgICAgICAgICAgICAgY291bnQ6IGl0ZW0uZG9jQ291bnQsXHJcbiAgICAgICAgICAgICAgfSkpXHJcbiAgICAgICAgICAgICAgOiBbXTtcclxuICAgICAgICAgICAgdGhpcy5pc0ZldGNoaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgZGF0YTogaXRlbXMsXHJcbiAgICAgICAgICAgICAgdG90YWxJdGVtczogZGF0YS50b3RhbFNpemUsXHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRDb21iaW5lZERhdGEoXHJcbiAgICBwYWdlUHJvdmlkZXJPbmUsXHJcbiAgICBxdWlja0ZpbHRlck9uZSxcclxuICAgIHNlbGVjdGVkUmFuZ2UsXHJcbiAgICBwYWdlUHJvdmlkZXJUd28sXHJcbiAgICBxdWlja0ZpbHRlclR3byxcclxuICAgIHF1aWNrRmlsdGVyVGhyZWUsXHJcbiAgICBzdGF0dXNPbmUsXHJcbiAgICBzdGF0dXNUd28sXHJcbiAgICBzdGF0dXNUaHJlZVxyXG4gICkge1xyXG4gICAgbGV0IG91dGdvaW5nUGFyYW1zID0ge1xyXG4gICAgICBwYWdlUHJvdmlkZXI6IHBhZ2VQcm92aWRlck9uZSxcclxuICAgICAgY3VycmVudFBhZ2VJbmRleDogMCxcclxuICAgICAgb2Zmc2V0OiAwLFxyXG4gICAgICBwYWdlU2l6ZTogMSxcclxuICAgICAgZHVibGluY29yZV9jcmVhdGVkX2FnZzogc2VsZWN0ZWRSYW5nZSxcclxuICAgICAgcXVpY2tGaWx0ZXJzOiBxdWlja0ZpbHRlck9uZSxcclxuICAgICAgZHVibGluY29yZV9jcmVhdGVkX21pbjogdGhpcy5taW4sXHJcbiAgICAgIGR1YmxpbmNvcmVfY3JlYXRlZF9tYXg6IHRoaXMubWF4LFxyXG4gICAgICBzeXN0ZW1fY3VycmVudExpZmVDeWNsZVN0YXRlXzM6IEpTT04uc3RyaW5naWZ5KFxyXG4gICAgICAgIHRoaXMuc3lzdGVtQ3VycmVudExpZmVDeWNsZVN0YXRlXHJcbiAgICAgICksXHJcbiAgICB9XHJcbiAgICAvLyBpZiB0aGVyZSB0ZW5hbnQgaWQgc2VudCBmcm9tIG91dHNpZGUgdGhlbiBhZGQgaXQgdG8gdGhlIHBhcmFtc1xyXG4gICAgaWYgKHRoaXMudGVuYW50SWQpIHtcclxuICAgICAgb3V0Z29pbmdQYXJhbXNbJ3F1ZXJ5UGFyYW1zJ10gPSBgJHt0aGlzLnRlbmFudElkfWBcclxuICAgIH1cclxuICAgIGNvbnN0IGdldE91dGdvaW5nJCA9IHRoaXMuY2FsbEFwaVxyXG4gICAgICAucXVlcnkoXHJcbiAgICAgICAgb3V0Z29pbmdQYXJhbXMsXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgaGVhZGVyczogdGhpcy5oZWFkZXJzLFxyXG4gICAgICAgIH1cclxuICAgICAgKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtYXAoKGRhdGEpID0+IHtcclxuICAgICAgICAgIGNvbnN0IGl0ZW1zID0gZGF0YS5hZ2dyZWdhdGlvbnNbdGhpcy5hZ2dyZWdhdGlvbnNdLmJ1Y2tldHNcclxuICAgICAgICAgICAgPyBkYXRhLmFnZ3JlZ2F0aW9uc1t0aGlzLmFnZ3JlZ2F0aW9uc10uYnVja2V0cy5tYXAoKGl0ZW0pID0+ICh7XHJcbiAgICAgICAgICAgICAgbGFiZWw6IHRoaXMuZmV0Y2hlZEtleVxyXG4gICAgICAgICAgICAgICAgPyBfLmdldChpdGVtLCB0aGlzLmZldGNoZWRLZXkpXHJcbiAgICAgICAgICAgICAgICA6IGl0ZW0ua2V5LFxyXG4gICAgICAgICAgICAgIGNvdW50OiBpdGVtLmRvY0NvdW50LFxyXG4gICAgICAgICAgICAgIGlkOiBpdGVtLmtleSxcclxuICAgICAgICAgICAgICBzdGF0dXM6IHN0YXR1c09uZSxcclxuICAgICAgICAgICAgICB0b3RhbEl0ZW1zOiBkYXRhLnRvdGFsU2l6ZSxcclxuICAgICAgICAgICAgfSkpXHJcbiAgICAgICAgICAgIDogW107XHJcbiAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBkYXRhOiBpdGVtcyxcclxuICAgICAgICAgICAgdG90YWxJdGVtczogZGF0YS50b3RhbFNpemUsXHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgIH0pXHJcbiAgICAgICk7XHJcbiAgICBsZXQgaW5jb21pbmdQYXJhbXMgPSB7XHJcbiAgICAgIHBhZ2VQcm92aWRlcjogcGFnZVByb3ZpZGVyVHdvLFxyXG4gICAgICBjdXJyZW50UGFnZUluZGV4OiAwLFxyXG4gICAgICBvZmZzZXQ6IDAsXHJcbiAgICAgIHBhZ2VTaXplOiAxLFxyXG4gICAgICBkdWJsaW5jb3JlX2NyZWF0ZWRfYWdnOiBzZWxlY3RlZFJhbmdlLFxyXG4gICAgICBxdWlja0ZpbHRlcnM6IHF1aWNrRmlsdGVyVHdvLFxyXG4gICAgICBkdWJsaW5jb3JlX2NyZWF0ZWRfbWluOiB0aGlzLm1pbixcclxuICAgICAgZHVibGluY29yZV9jcmVhdGVkX21heDogdGhpcy5tYXgsXHJcbiAgICAgIHN5c3RlbV9jdXJyZW50TGlmZUN5Y2xlU3RhdGVfMzogSlNPTi5zdHJpbmdpZnkoXHJcbiAgICAgICAgdGhpcy5zeXN0ZW1DdXJyZW50TGlmZUN5Y2xlU3RhdGVcclxuICAgICAgKSxcclxuICAgIH1cclxuICAgIC8vIGlmIHRoZXJlIHRlbmFudCBpZCBzZW50IGZyb20gb3V0c2lkZSB0aGVuIGFkZCBpdCB0byB0aGUgcGFyYW1zXHJcbiAgICBpZiAodGhpcy50ZW5hbnRJZCkge1xyXG4gICAgICBpbmNvbWluZ1BhcmFtc1sncXVlcnlQYXJhbXMnXSA9IGAke3RoaXMudGVuYW50SWR9YFxyXG4gICAgfVxyXG4gICAgY29uc3QgZ2V0SW5jb21pbmckID0gdGhpcy5jYWxsQXBpXHJcbiAgICAgIC5xdWVyeShcclxuICAgICAgICBpbmNvbWluZ1BhcmFtcyxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBoZWFkZXJzOiB0aGlzLmhlYWRlcnMsXHJcbiAgICAgICAgfVxyXG4gICAgICApXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIG1hcCgoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgY29uc3QgaXRlbXMgPSBkYXRhLmFnZ3JlZ2F0aW9uc1t0aGlzLmFnZ3JlZ2F0aW9uc10uYnVja2V0c1xyXG4gICAgICAgICAgICA/IGRhdGEuYWdncmVnYXRpb25zW3RoaXMuYWdncmVnYXRpb25zXS5idWNrZXRzLm1hcCgoaXRlbSkgPT4gKHtcclxuICAgICAgICAgICAgICBsYWJlbDogdGhpcy5mZXRjaGVkS2V5XHJcbiAgICAgICAgICAgICAgICA/IF8uZ2V0KGl0ZW0sIHRoaXMuZmV0Y2hlZEtleSlcclxuICAgICAgICAgICAgICAgIDogaXRlbS5rZXksXHJcbiAgICAgICAgICAgICAgY291bnQ6IGl0ZW0uZG9jQ291bnQsXHJcbiAgICAgICAgICAgICAgaWQ6IGl0ZW0ua2V5LFxyXG4gICAgICAgICAgICAgIHN0YXR1czogc3RhdHVzVHdvLFxyXG4gICAgICAgICAgICAgIHRvdGFsSXRlbXM6IGRhdGEudG90YWxTaXplLFxyXG4gICAgICAgICAgICB9KSlcclxuICAgICAgICAgICAgOiBbXTtcclxuICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIGRhdGE6IGl0ZW1zLFxyXG4gICAgICAgICAgICB0b3RhbEl0ZW1zOiBkYXRhLnRvdGFsU2l6ZSxcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfSlcclxuICAgICAgKTtcclxuICAgIGxldCBpbnRlcm5hbFBhcmFtcyA9IHtcclxuICAgICAgcGFnZVByb3ZpZGVyOiBwYWdlUHJvdmlkZXJUd28sXHJcbiAgICAgIGN1cnJlbnRQYWdlSW5kZXg6IDAsXHJcbiAgICAgIG9mZnNldDogMCxcclxuICAgICAgcGFnZVNpemU6IDEsXHJcbiAgICAgIGR1YmxpbmNvcmVfY3JlYXRlZF9hZ2c6IHNlbGVjdGVkUmFuZ2UsXHJcbiAgICAgIHF1aWNrRmlsdGVyczogcXVpY2tGaWx0ZXJUaHJlZSxcclxuICAgICAgZHVibGluY29yZV9jcmVhdGVkX21pbjogdGhpcy5taW4sXHJcbiAgICAgIGR1YmxpbmNvcmVfY3JlYXRlZF9tYXg6IHRoaXMubWF4LFxyXG4gICAgICBzeXN0ZW1fY3VycmVudExpZmVDeWNsZVN0YXRlXzM6IEpTT04uc3RyaW5naWZ5KFxyXG4gICAgICAgIHRoaXMuc3lzdGVtQ3VycmVudExpZmVDeWNsZVN0YXRlXHJcbiAgICAgICksXHJcbiAgICB9XHJcbiAgICAvLyBpZiB0aGVyZSB0ZW5hbnQgaWQgc2VudCBmcm9tIG91dHNpZGUgdGhlbiBhZGQgaXQgdG8gdGhlIHBhcmFtc1xyXG4gICAgaWYgKHRoaXMudGVuYW50SWQpIHtcclxuICAgICAgaW50ZXJuYWxQYXJhbXNbJ3F1ZXJ5UGFyYW1zJ10gPSBgJHt0aGlzLnRlbmFudElkfWBcclxuICAgIH1cclxuICAgIGNvbnN0IGdldEludGVybmFsJCA9IHRoaXMuY2FsbEFwaVxyXG4gICAgICAucXVlcnkoXHJcbiAgICAgICAgaW50ZXJuYWxQYXJhbXMsXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgaGVhZGVyczogdGhpcy5oZWFkZXJzLFxyXG4gICAgICAgIH1cclxuICAgICAgKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtYXAoKGRhdGEpID0+IHtcclxuICAgICAgICAgIGNvbnN0IGl0ZW1zID0gZGF0YS5hZ2dyZWdhdGlvbnNbdGhpcy5hZ2dyZWdhdGlvbnNdLmJ1Y2tldHNcclxuICAgICAgICAgICAgPyBkYXRhLmFnZ3JlZ2F0aW9uc1t0aGlzLmFnZ3JlZ2F0aW9uc10uYnVja2V0cy5tYXAoKGl0ZW0pID0+ICh7XHJcbiAgICAgICAgICAgICAgbGFiZWw6IHRoaXMuZmV0Y2hlZEtleVxyXG4gICAgICAgICAgICAgICAgPyBfLmdldChpdGVtLCB0aGlzLmZldGNoZWRLZXkpXHJcbiAgICAgICAgICAgICAgICA6IGl0ZW0ua2V5LFxyXG4gICAgICAgICAgICAgIGNvdW50OiBpdGVtLmRvY0NvdW50LFxyXG4gICAgICAgICAgICAgIGlkOiBpdGVtLmtleSxcclxuICAgICAgICAgICAgICBzdGF0dXM6IHN0YXR1c1RocmVlLFxyXG4gICAgICAgICAgICAgIHRvdGFsSXRlbXM6IGRhdGEudG90YWxTaXplLFxyXG4gICAgICAgICAgICB9KSlcclxuICAgICAgICAgICAgOiBbXTtcclxuICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIGRhdGE6IGl0ZW1zLFxyXG4gICAgICAgICAgICB0b3RhbEl0ZW1zOiBkYXRhLnRvdGFsU2l6ZSxcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfSlcclxuICAgICAgKTtcclxuICAgIGlmICh0aGlzLmlzSW50ZXJuYWxBY3RpdmUpIHtcclxuICAgICAgcmV0dXJuIGZvcmtKb2luKFtnZXRPdXRnb2luZyQsIGdldEluY29taW5nJCwgZ2V0SW50ZXJuYWwkXSkucGlwZShcclxuICAgICAgICBtYXAoKGRhdGEpID0+IHtcclxuICAgICAgICAgIGxldCBjb21iaW5lZERhdGEgPSBbLi4uZGF0YVswXS5kYXRhLCAuLi5kYXRhWzFdLmRhdGEsIC4uLmRhdGFbMl0uZGF0YV07XHJcbiAgICAgICAgICB0aGlzLmlzRmV0Y2hpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIHJldHVybiBjb21iaW5lZERhdGE7XHJcbiAgICAgICAgfSlcclxuICAgICAgKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBmb3JrSm9pbihbZ2V0T3V0Z29pbmckLCBnZXRJbmNvbWluZyRdKS5waXBlKFxyXG4gICAgICAgIG1hcCgoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgbGV0IGNvbWJpbmVkRGF0YSA9IFsuLi5kYXRhWzBdLmRhdGEsIC4uLmRhdGFbMV0uZGF0YV07XHJcbiAgICAgICAgICB0aGlzLmlzRmV0Y2hpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIHJldHVybiBjb21iaW5lZERhdGE7XHJcbiAgICAgICAgfSlcclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByZXZpZXdDb3JyZXNwb25kZW5jZXMoKSB7XHJcbiAgICBjb25zb2xlLmxvZyhcInBhcmFtc1wiLCB0aGlzLnN5c3RlbUN1cnJlbnRMaWZlQ3ljbGVTdGF0ZSlcclxuICAgIGxldCBxdWVyeVBhcmFtcztcclxuICAgIGlmICh0aGlzLmNvbWJpbmVkRGF0YSkge1xyXG4gICAgICBxdWVyeVBhcmFtcyA9IHtcclxuICAgICAgICBjb21iaW5lZERhdGE6IHRoaXMuY29tYmluZWREYXRhLFxyXG4gICAgICAgIHBhZ2VQcm92aWRlcjogdGhpcy5wYWdlUHJvdmlkZXIsXHJcbiAgICAgICAgaGVhZGVyczogSlNPTi5zdHJpbmdpZnkodGhpcy5oZWFkZXJzKSxcclxuICAgICAgICByYW5nZTogdGhpcy5yYW5nZSxcclxuICAgICAgICBhZ2dyZWdhdGlvbnM6IHRoaXMuYWdncmVnYXRpb25zLFxyXG4gICAgICAgIHF1aWNrRmlsdGVyT25lOiB0aGlzLnF1aWNrRmlsdGVycyxcclxuICAgICAgICBxdWlja0ZpbHRlclR3bzogdGhpcy5xdWlja0ZpbHRlclR3byxcclxuICAgICAgICBxdWlja0ZpbHRlclRocmVlOiB0aGlzLnF1aWNrRmlsdGVyVGhyZWUsXHJcbiAgICAgICAgc3lzdGVtQ3VycmVudExpZmVDeWNsZVN0YXRlOiB0aGlzLnN5c3RlbUN1cnJlbnRMaWZlQ3ljbGVTdGF0ZSxcclxuICAgICAgICBzdGF0dXNPbmU6IHRoaXMuc3RhdHVzT25lLFxyXG4gICAgICAgIHN0YXR1c1R3bzogdGhpcy5zdGF0dXNUd28sXHJcbiAgICAgICAgc3RhdHVzVGhyZWU6IHRoaXMuc3RhdHVzVGhyZWUsXHJcbiAgICAgICAgbWluOiB0aGlzLm1pbixcclxuICAgICAgICBtYXg6IHRoaXMubWF4LFxyXG4gICAgICB9O1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcXVlcnlQYXJhbXMgPSB7XHJcbiAgICAgICAgY29tYmluZWREYXRhOiB0aGlzLmNvbWJpbmVkRGF0YSxcclxuICAgICAgICBwYWdlUHJvdmlkZXI6IHRoaXMucGFnZVByb3ZpZGVyLFxyXG4gICAgICAgIHF1aWNrRmlsdGVyT25lOiB0aGlzLnF1aWNrRmlsdGVycyxcclxuICAgICAgICBoZWFkZXJzOiBKU09OLnN0cmluZ2lmeSh0aGlzLmhlYWRlcnMpLFxyXG4gICAgICAgIHJhbmdlOiB0aGlzLnJhbmdlLFxyXG4gICAgICAgIGFnZ3JlZ2F0aW9uczogdGhpcy5hZ2dyZWdhdGlvbnMsXHJcbiAgICAgICAgc3lzdGVtQ3VycmVudExpZmVDeWNsZVN0YXRlOiB0aGlzLnN5c3RlbUN1cnJlbnRMaWZlQ3ljbGVTdGF0ZSxcclxuICAgICAgICBtaW46IHRoaXMubWluLFxyXG4gICAgICAgIG1heDogdGhpcy5tYXgsXHJcbiAgICAgIH07XHJcbiAgICB9XHJcbiAgICAvLyBpZiB0aGVyZSB0ZW5hbnQgaWQgc2VudCBmcm9tIG91dHNpZGUgdGhlbiBhZGQgaXQgdG8gdGhlIHBhcmFtc1xyXG4gICAgaWYgKHRoaXMudGVuYW50SWQpIHtcclxuICAgICAgcXVlcnlQYXJhbXNbJ3F1ZXJ5UGFyYW1zJ10gPSBgJHt0aGlzLnRlbmFudElkfWBcclxuICAgIH1cclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsncmVwb3J0JywgJ2NoYXJ0LWRldGFpbHMnXSwge1xyXG4gICAgICBxdWVyeVBhcmFtczogcXVlcnlQYXJhbXMsXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHN0cmluZ1RvSHNsQ29sb3Ioc3RyLCBzLCBsKSB7XHJcbiAgICB2YXIgaGFzaCA9IDA7XHJcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IHN0ci5sZW5ndGg7IGkrKykge1xyXG4gICAgICBoYXNoID0gc3RyLmNoYXJDb2RlQXQoaSkgKyAoKGhhc2ggPDwgNSkgLSBoYXNoKTtcclxuICAgIH1cclxuICAgIHZhciBoID0gaGFzaCAlIDM2MDtcclxuICAgIHJldHVybiAnaHNsKCcgKyBoICsgJywgJyArIHMgKyAnJSwgJyArIGwgKyAnJSknO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiY2FyZC1jb250aW5lclwiICpuZ0lmPVwiY2FyZDsgZWxzZSB0ZXN0XCI+XHJcbiAgPGRpdiBjbGFzcz1cImNoYXJ0LWNhcmQtaGVhZGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY2hhcnQtY2FyZC10aXRsZVwiPnt7IGNhcmRUaXRsZSB8IHRyYW5zbGF0ZSB9fTwvZGl2PlxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cImNoYXJ0LWNhcmQtYnV0dG9uXCIgKGNsaWNrKT1cInByZXZpZXdDb3JyZXNwb25kZW5jZXMoKVwiPlxyXG4gICAgICB7eyBcInJlcG9ydC5QcmV2aWV3XCIgfCB0cmFuc2xhdGUgfX1cclxuICAgIDwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc0ZldGNoaW5nXCI+XHJcbiAgICA8Y3RzLXNwaW5uZXI+PC9jdHMtc3Bpbm5lcj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuICA8ZGl2IGNsYXNzPVwic3RhdFwiIFtzdHlsZS5oZWlnaHQucHhdPVwiaGVpZ2h0XCI+XHJcbiAgICA8ZGl2IFtoaWRkZW5dPVwiZGF0YS5kYXRhPy5sZW5ndGggPT0gMCB8fCBkYXRhLmxlbmd0aCA9PSAwXCI+XHJcbiAgICAgIDxjYW52YXMgI3JldmVudWVMaW5lQ2hhcnQgW2hlaWdodF09XCJoZWlnaHRcIiBbd2lkdGhdPVwid2lkdGhcIj48L2NhbnZhcz5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cIm5vLXN0YXRzXCIgKm5nSWY9XCJkYXRhLmRhdGE/Lmxlbmd0aCA9PSAwIHx8IGRhdGEubGVuZ3RoID09IDBcIj5cclxuICAgICAgPHNwYW4+e3sgXCJTVEFUUy5ub0RhdGFcIiB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjdGVzdD5cclxuICA8ZGl2IGNsYXNzPVwic3RhdFwiPlxyXG4gICAgPGNhbnZhcyAjcmV2ZW51ZUxpbmVDaGFydCBbaGVpZ2h0XT1cImhlaWdodFwiIFt3aWR0aF09XCJ3aWR0aFwiPjwvY2FudmFzPlxyXG4gIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuIl19
|
|
@@ -12,12 +12,12 @@ import * as i0 from "@angular/core";
|
|
|
12
12
|
*/
|
|
13
13
|
export class DynamicChartModule {
|
|
14
14
|
}
|
|
15
|
-
DynamicChartModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
16
|
-
DynamicChartModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.
|
|
15
|
+
DynamicChartModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: DynamicChartModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
16
|
+
DynamicChartModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: DynamicChartModule, declarations: [DynamicChartComponent,
|
|
17
17
|
DynamicSingleChartComponent], imports: [CommonModule, TranslateModule, LibrarySharedModule, MatTooltipModule], exports: [DynamicChartComponent,
|
|
18
18
|
DynamicSingleChartComponent] });
|
|
19
|
-
DynamicChartModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.
|
|
20
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
19
|
+
DynamicChartModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: DynamicChartModule, imports: [[CommonModule, TranslateModule, LibrarySharedModule, MatTooltipModule]] });
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: DynamicChartModule, decorators: [{
|
|
21
21
|
type: NgModule,
|
|
22
22
|
args: [{
|
|
23
23
|
declarations: [
|
|
@@ -31,4 +31,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
31
31
|
],
|
|
32
32
|
}]
|
|
33
33
|
}] });
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jaGFydC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtY2hhcnQvZHluYW1pYy1jaGFydC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDaEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQUM3RDs7O0dBR0c7QUFXSCxNQUFNLE9BQU8sa0JBQWtCOzsrR0FBbEIsa0JBQWtCO2dIQUFsQixrQkFBa0IsaUJBUjNCLHFCQUFxQjtRQUNyQiwyQkFBMkIsYUFFbkIsWUFBWSxFQUFFLGVBQWUsRUFBRyxtQkFBbUIsRUFBRyxnQkFBZ0IsYUFFOUUscUJBQXFCO1FBQ3JCLDJCQUEyQjtnSEFFbEIsa0JBQWtCLFlBTHBCLENBQUMsWUFBWSxFQUFFLGVBQWUsRUFBRyxtQkFBbUIsRUFBRyxnQkFBZ0IsQ0FBQzsyRkFLdEUsa0JBQWtCO2tCQVY5QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixxQkFBcUI7d0JBQ3JCLDJCQUEyQjtxQkFDNUI7b0JBQ0QsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGVBQWUsRUFBRyxtQkFBbUIsRUFBRyxnQkFBZ0IsQ0FBQztvQkFDakYsT0FBTyxFQUFFO3dCQUNQLHFCQUFxQjt3QkFDckIsMkJBQTJCO3FCQUFDO2lCQUMvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IER5bmFtaWNDaGFydENvbXBvbmVudCB9IGZyb20gJy4vZHluYW1pYy1jaGFydC9keW5hbWljLWNoYXJ0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBEeW5hbWljU2luZ2xlQ2hhcnRDb21wb25lbnQgfSBmcm9tICcuL2R5bmFtaWMtc2luZ2xlLWNoYXJ0L2R5bmFtaWMtc2luZ2xlLWNoYXJ0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExpYnJhcnlTaGFyZWRNb2R1bGUgfSBmcm9tICcuLi8uLi9zaGFyZWQvbGlicmFyeVNoYXJlZC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XHJcbi8qKlxyXG4gKiBAdGl0bGVcclxuICogQ2hhcnQgTW9kdWxlXHJcbiAqL1xyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgRHluYW1pY0NoYXJ0Q29tcG9uZW50LCBcclxuICAgIER5bmFtaWNTaW5nbGVDaGFydENvbXBvbmVudCBcclxuICBdLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFRyYW5zbGF0ZU1vZHVsZSAsIExpYnJhcnlTaGFyZWRNb2R1bGUgLCBNYXRUb29sdGlwTW9kdWxlXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBEeW5hbWljQ2hhcnRDb21wb25lbnQsXHJcbiAgICBEeW5hbWljU2luZ2xlQ2hhcnRDb21wb25lbnRdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRHluYW1pY0NoYXJ0TW9kdWxlIHt9XHJcbiJdfQ==
|
package/esm2015/lib/components/dynamic-chart/dynamic-single-chart/dynamic-single-chart.component.js
CHANGED
|
@@ -140,9 +140,9 @@ export class DynamicSingleChartComponent {
|
|
|
140
140
|
}, 200);
|
|
141
141
|
}
|
|
142
142
|
}
|
|
143
|
-
DynamicSingleChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
144
|
-
DynamicSingleChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.
|
|
145
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
143
|
+
DynamicSingleChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: DynamicSingleChartComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
144
|
+
DynamicSingleChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.4", type: DynamicSingleChartComponent, selector: "cts-dynamic-single-chart", inputs: { totalItems: "totalItems", count: "count", label: "label", colorCode: "colorCode" }, viewQueries: [{ propertyName: "chart", first: true, predicate: ["myChart"], descendants: true }], ngImport: i0, template: "<div class=\"chart\">\r\n <canvas width=\"70\" height=\"70\" #myChart></canvas>\r\n <label class=\"chart-lable\">{{ \"STATS.\" + label | translate }}</label>\r\n</div>\r\n", styles: [".chart{display:flex;flex-direction:column;justify-content:center;text-align:center}.chart .chart-lable{color:#596973;font-size:12px;margin-top:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}\n"], pipes: { "translate": i1.TranslatePipe } });
|
|
145
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: DynamicSingleChartComponent, decorators: [{
|
|
146
146
|
type: Component,
|
|
147
147
|
args: [{
|
|
148
148
|
selector: 'cts-dynamic-single-chart',
|
|
@@ -161,4 +161,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
161
161
|
type: ViewChild,
|
|
162
162
|
args: ['myChart']
|
|
163
163
|
}] } });
|
|
164
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1zaW5nbGUtY2hhcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9keW5hbWljLWNoYXJ0L2R5bmFtaWMtc2luZ2xlLWNoYXJ0L2R5bmFtaWMtc2luZ2xlLWNoYXJ0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZHluYW1pYy1jaGFydC9keW5hbWljLXNpbmdsZS1jaGFydC9keW5hbWljLXNpbmdsZS1jaGFydC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBVSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFVBQVUsQ0FBQzs7O0FBQ2pDOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBTUgsTUFBTSxPQUFPLDJCQUEyQjtJQWV0QztRQUxBLHFDQUFxQztRQUVyQyxjQUFTLEdBQUcsRUFBRSxDQUFDO0lBR0MsQ0FBQztJQUVqQixRQUFRLEtBQVcsQ0FBQztJQUVwQixlQUFlO1FBQ2IsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUVkLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN0RCxJQUFJLE9BQU8sR0FBRyxJQUFJLEtBQUssQ0FBQyxHQUFHLEVBQUU7Z0JBQzNCLElBQUksRUFBRSxVQUFVO2dCQUNoQixJQUFJLEVBQUU7b0JBQ0osUUFBUSxFQUFFO3dCQUNSOzRCQUNFLEtBQUssRUFBRSxZQUFZOzRCQUNuQixJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMs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LFFBQVEsRUFBRSwwQkFBMEI7b0JBQ3BDLFdBQVcsRUFBRSx1Q0FBdUM7b0JBQ3BELFNBQVMsRUFBRSxDQUFDLHVDQUF1QyxDQUFDO2lCQUNyRDswRUFJQyxVQUFVO3NCQURULEtBQUs7Z0JBSU4sS0FBSztzQkFESixLQUFLO2dCQUlOLEtBQUs7c0JBREosS0FBSztnQkFJTixTQUFTO3NCQURSLEtBQUs7Z0JBRWdCLEtBQUs7c0JBQTFCLFNBQVM7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENoYXJ0IH0gZnJvbSAnY2hhcnQuanMnO1xyXG4vKipcclxuICogQSBVSSBkb3VnaG51dCBjaGFydCBjb21wb25lbnRcclxuICpcclxuICogIVtTY3JlZW5zaG90LTFdKC4uL3NjcmVlbnNob3RzL3NpbmdsZUNoYXJ0LnBuZylcclxuICogQHRpdGxlXHJcbiAqIGRvdWdobnV0IGNoYXJ0XHJcbiAqXHJcbiAqIEBleGFtcGxlXHJcbiAqIDxjdHMtZHluYW1pYy1zaW5nbGUtY2hhcnRcclxuICogICBbdG90YWxJdGVtc109XCJ0b3RhbEl0ZW1zXCJcclxuICogICBbbGFiZWxdPVwibGFiZWxcIlxyXG4gKiAgIFtjb3VudF09XCJjb3VudFwiXHJcbiAqICAgW2NvbG9yQ29kZV09XCJhcnJheU9mQ29sb3JzXCJcclxuICogPjwvY3RzLWR5bmFtaWMtc2luZ2xlLWNoYXJ0PlxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjdHMtZHluYW1pYy1zaW5nbGUtY2hhcnQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9keW5hbWljLXNpbmdsZS1jaGFydC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZHluYW1pYy1zaW5nbGUtY2hhcnQuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIER5bmFtaWNTaW5nbGVDaGFydENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgLyoqIFRvdGFsIEl0ZW1zICovXHJcbiAgQElucHV0KClcclxuICB0b3RhbEl0ZW1zO1xyXG4gIC8qKiBDaGFydCBjb3VudCAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgY291bnQ7XHJcbiAgLyoqIENoYXJ0IGxhYmVsICovXHJcbiAgQElucHV0KClcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIC8qKiBhcnJheSBvZiBjb2xvciBjb2RlcyBmb3IgY2hhcnQgKi9cclxuICBASW5wdXQoKVxyXG4gIGNvbG9yQ29kZSA9IFtdO1xyXG4gIEBWaWV3Q2hpbGQoJ215Q2hhcnQnKSBjaGFydDogRWxlbWVudFJlZjtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7IH1cclxuICBcclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuXHJcbiAgICAgIGNvbnN0IGN0eCA9IHRoaXMuY2hhcnQubmF0aXZlRWxlbWVudC5nZXRDb250ZXh0KCcyZCcpO1xyXG4gICAgICBsZXQgbXlDaGFydCA9IG5ldyBDaGFydChjdHgsIHtcclxuICAgICAgICB0eXBlOiAnZG91Z2hudXQnLFxyXG4gICAgICAgIGRhdGE6IHtcclxuICAgICAgICAgIGRhdGFzZXRzOiBbXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICBsYWJlbDogJyMgb2YgVm90ZXMnLFxyXG4gICAgICAgICAgICAgIGRhdGE6IFt0aGlzLmNvdW50LCB0aGlzLnRvdGFsSXRlbXNdLFxyXG4gICAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogdGhpcy5jb2xvckNvZGUsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICBdLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgcGx1Z2luczogW1xyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICBiZWZvcmVEcmF3OiBmdW5jdGlvbiAoY2hhcnQpIHtcclxuICAgICAgICAgICAgICBpZiAoY2hhcnQuY29uZmlnLm9wdGlvbnMuZWxlbWVudHMuY2VudGVyKSB7XHJcbiAgICAgICAgICAgICAgICAvLyBHZXQgY3R4IGZyb20gc3RyaW5nXHJcbiAgICAgICAgICAgICAgICB2YXIgY3R4ID0gY2hhcnQuY2hhcnQuY3R4O1xyXG5cclxuICAgICAgICAgICAgICAgIC8vIEdldCBvcHRpb25zIGZyb20gdGhlIGNlbnRlciBvYmplY3QgaW4gb3B0aW9uc1xyXG4gICAgICAgICAgICAgICAgdmFyIGNlbnRlckNvbmZpZyA9IGNoYXJ0LmNvbmZpZy5vcHRpb25zLmVsZW1lbnRzLmNlbnRlcjtcclxuICAgICAgICAgICAgICAgIHZhciBmb250U3R5bGUgPSBjZW50ZXJDb25maWcuZm9udFN0eWxlIHx8ICdBcmlhbCc7XHJcbiAgICAgICAgICAgICAgICB2YXIgdHh0ID0gY2VudGVyQ29uZmlnLnRleHQ7XHJcbiAgICAgICAgICAgICAgICB2YXIgY29sb3IgPSBjZW50ZXJDb25maWcuY29sb3IgfHwgJyMwMDAnO1xyXG4gICAgICAgICAgICAgICAgdmFyIG1heEZvbnRTaXplID0gY2VudGVyQ29uZmlnLm1heEZvbnRTaXplIHx8IDc1O1xyXG4gICAgICAgICAgICAgICAgdmFyIHNpZGVQYWRkaW5nID0gY2VudGVyQ29uZmlnLnNpZGVQYWRkaW5nIHx8IDIwO1xyXG4gICAgICAgICAgICAgICAgdmFyIHNpZGVQYWRkaW5nQ2FsY3VsYXRlZCA9XHJcbiAgICAgICAgICAgICAgICAgIChzaWRlUGFkZGluZyAvIDEwMCkgKiAoY2hhcnQuaW5uZXJSYWRpdXMgKiAyKTtcclxuICAgICAgICAgICAgICAgIC8vIFN0YXJ0IHdpdGggYSBiYXNlIGZvbnQgb2YgMzBweFxyXG4gICAgICAgICAgICAgICAgY3R4LmZvbnQgPSAnMzBweCAnICsgZm9udFN0eWxlO1xyXG5cclxuICAgICAgICAgICAgICAgIC8vIEdldCB0aGUgd2lkdGggb2YgdGhlIHN0cmluZyBhbmQgYWxzbyB0aGUgd2lkdGggb2YgdGhlIGVsZW1lbnQgbWludXMgMTAgdG8gZ2l2ZSBpdCA1cHggc2lkZSBwYWRkaW5nXHJcbiAgICAgICAgICAgICAgICB2YXIgc3RyaW5nV2lkdGggPSBjdHgubWVhc3VyZVRleHQodHh0KS53aWR0aDtcclxuICAgICAgICAgICAgICAgIHZhciBlbGVtZW50V2lkdGggPSBjaGFydC5pbm5lclJhZGl1cyAqIDIgLSBzaWRlUGFkZGluZ0NhbGN1bGF0ZWQ7XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gRmluZCBvdXQgaG93IG11Y2ggdGhlIGZvbnQgY2FuIGdyb3cgaW4gd2lkdGguXHJcbiAgICAgICAgICAgICAgICB2YXIgd2lkdGhSYXRpbyA9IGVsZW1lbnRXaWR0aCAvIHN0cmluZ1dpZHRoO1xyXG4gICAgICAgICAgICAgICAgdmFyIG5ld0ZvbnRTaXplID0gTWF0aC5mbG9vcigzMCAqIHdpZHRoUmF0aW8pO1xyXG4gICAgICAgICAgICAgICAgdmFyIGVsZW1lbnRIZWlnaHQgPSBjaGFydC5pbm5lclJhZGl1cyAqIDI7XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gUGljayBhIG5ldyBmb250IHNpemUgc28gaXQgd2lsbCBub3QgYmUgbGFyZ2VyIHRoYW4gdGhlIGhlaWdodCBvZiBsYWJlbC5cclxuICAgICAgICAgICAgICAgIHZhciBmb250U2l6ZVRvVXNlID0gTWF0aC5taW4oXHJcbiAgICAgICAgICAgICAgICAgIG5ld0ZvbnRTaXplLFxyXG4gICAgICAgICAgICAgICAgICBlbGVtZW50SGVpZ2h0LFxyXG4gICAgICAgICAgICAgICAgICBtYXhGb250U2l6ZVxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgIHZhciBtaW5Gb250U2l6ZSA9IGNlbnRlckNvbmZpZy5taW5Gb250U2l6ZTtcclxuICAgICAgICAgICAgICAgIHZhciBsaW5lSGVpZ2h0ID0gY2VudGVyQ29uZmlnLmxpbmVIZWlnaHQgfHwgMjU7XHJcbiAgICAgICAgICAgICAgICB2YXIgd3JhcFRleHQgPSBmYWxzZTtcclxuXHJcbiAgICAgICAgICAgICAgICBpZiAobWluRm9udFNpemUgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICAgICAgICBtaW5Gb250U2l6ZSA9IDIwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGlmIChtaW5Gb250U2l6ZSAmJiBmb250U2l6ZVRvVXNlIDwgbWluRm9udFNpemUpIHtcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemVUb1VzZSA9IG1pbkZvbnRTaXplO1xyXG4gICAgICAgICAgICAgICAgICB3cmFwVGV4dCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gU2V0IGZvbnQgc2V0dGluZ3MgdG8gZHJhdyBpdCBjb3JyZWN0bHkuXHJcbiAgICAgICAgICAgICAgICBjdHgudGV4dEFsaWduID0gJ2NlbnRlcic7XHJcbiAgICAgICAgICAgICAgICBjdHgudGV4dEJhc2VsaW5lID0gJ21pZGRsZSc7XHJcbiAgICAgICAgICAgICAgICB2YXIgY2VudGVyWCA9XHJcbiAgICAgICAgICAgICAgICAgIChjaGFydC5jaGFydEFyZWEubGVmdCArIGNoYXJ0LmNoYXJ0QXJlYS5yaWdodCkgLyAxLjk3O1xyXG4gICAgICAgICAgICAgICAgdmFyIGNlbnRlclkgPSAoY2hhcnQuY2hhcnRBcmVhLnRvcCArIGNoYXJ0LmNoYXJ0QXJlYS5ib3R0b20pIC8gMjtcclxuICAgICAgICAgICAgICAgIGN0eC5mb250ID0gJzE0JyArICdweCAnICsgZm9udFN0eWxlO1xyXG4gICAgICAgICAgICAgICAgY3R4LmZpbGxTdHlsZSA9IGNvbG9yO1xyXG5cclxuICAgICAgICAgICAgICAgIGlmICghd3JhcFRleHQpIHtcclxuICAgICAgICAgICAgICAgICAgY3R4LmZpbGxUZXh0KHR4dCwgY2VudGVyWCwgY2VudGVyWSk7XHJcbiAgICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICB2YXIgd29yZHMgPSB0eHQuc3BsaXQoJyAnKTtcclxuICAgICAgICAgICAgICAgIHZhciBsaW5lID0gJyc7XHJcbiAgICAgICAgICAgICAgICB2YXIgbGluZXMgPSBbXTtcclxuXHJcbiAgICAgICAgICAgICAgICAvLyBCcmVhayB3b3JkcyB1cCBpbnRvIG11bHRpcGxlIGxpbmVzIGlmIG5lY2Vzc2FyeVxyXG4gICAgICAgICAgICAgICAgZm9yICh2YXIgbiA9IDA7IG4gPCB3b3Jkcy5sZW5ndGg7IG4rKykge1xyXG4gICAgICAgICAgICAgICAgICB2YXIgdGVzdExpbmUgPSBsaW5lICsgd29yZHNbbl0gKyAnICc7XHJcbiAgICAgICAgICAgICAgICAgIHZhciBtZXRyaWNzID0gY3R4Lm1lYXN1cmVUZXh0KHRlc3RMaW5lKTtcclxuICAgICAgICAgICAgICAgICAgdmFyIHRlc3RXaWR0aCA9IG1ldHJpY3Mud2lkdGg7XHJcbiAgICAgICAgICAgICAgICAgIGlmICh0ZXN0V2lkdGggPiBlbGVtZW50V2lkdGggJiYgbiA+IDApIHtcclxuICAgICAgICAgICAgICAgICAgICBsaW5lcy5wdXNoKGxpbmUpO1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUgPSB3b3Jkc1tuXSArICcgJztcclxuICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICBsaW5lID0gdGVzdExpbmU7XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAvLyBNb3ZlIHRoZSBjZW50ZXIgdXAgZGVwZW5kaW5nIG9uIGxpbmUgaGVpZ2h0IGFuZCBudW1iZXIgb2YgbGluZXNcclxuICAgICAgICAgICAgICAgIGNlbnRlclkgLT0gKGxpbmVzLmxlbmd0aCAvIDIpICogbGluZUhlaWdodDtcclxuXHJcbiAgICAgICAgICAgICAgICBmb3IgKHZhciBuID0gMDsgbiA8IGxpbmVzLmxlbmd0aDsgbisrKSB7XHJcbiAgICAgICAgICAgICAgICAgIGN0eC5maWxsVGV4dChsaW5lc1tuXSwgY2VudGVyWCwgY2VudGVyWSk7XHJcbiAgICAgICAgICAgICAgICAgIGNlbnRlclkgKz0gbGluZUhlaWdodDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC8vRHJhdyB0ZXh0IGluIGNlbnRlclxyXG4gICAgICAgICAgICAgICAgY3R4LmZpbGxUZXh0KGxpbmUsIGNlbnRlclgsIGNlbnRlclkpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgXSxcclxuICAgICAgICBvcHRpb25zOiB7XHJcbiAgICAgICAgICByZXNwb25zaXZlOiB0cnVlLFxyXG4gICAgICAgICAgb3V0bGFiZWxzOiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZhbHNlLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHBsdWdpbnM6IHtcclxuICAgICAgICAgICAgb3V0bGFiZWxzOiB7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogZmFsc2UsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIGxhYmVsczogZmFsc2VcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICB0b29sdGlwczogeyBlbmFibGVkOiBmYWxzZSB9LFxyXG4gICAgICAgICAgZWxlbWVudHM6IHtcclxuICAgICAgICAgICAgY2VudGVyOiB7XHJcbiAgICAgICAgICAgICAgdGV4dDogYCR7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNvdW50ID49IDEwMDBcclxuICAgICAgICAgICAgICAgICAgPyBwYXJzZUZsb2F0KCh0aGlzLmNvdW50IC8gMTAwMCkudG9GaXhlZCgyKSkgKyAnSydcclxuICAgICAgICAgICAgICAgICAgOiB0aGlzLmNvdW50XHJcbiAgICAgICAgICAgICAgfWAsXHJcbiAgICAgICAgICAgICAgY29sb3I6ICcjNTk2OTczJywgLy8gRGVmYXVsdCBpcyAjMDAwMDAwXHJcbiAgICAgICAgICAgICAgZm9udFN0eWxlOiAnQXJpYWwnLCAvLyBEZWZhdWx0IGlzIEFyaWFsXHJcbiAgICAgICAgICAgICAgc2lkZVBhZGRpbmc6IDIwLCAvLyBEZWZhdWx0IGlzIDIwIChhcyBhIHBlcmNlbnRhZ2UpXHJcbiAgICAgICAgICAgICAgbWluRm9udFNpemU6IDIwLCAvLyBEZWZhdWx0IGlzIDIwIChpbiBweCksIHNldCB0byBmYWxzZSBhbmQgdGV4dCB3aWxsIG5vdCB3cmFwLlxyXG4gICAgICAgICAgICAgIGxpbmVIZWlnaHQ6IDI1LCAvLyBEZWZhdWx0IGlzIDI1IChpbiBweCksIHVzZWQgZm9yIHdoZW4gdGV4dCB3cmFwc1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICB9KTtcclxuICAgIH0sIDIwMCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjaGFydFwiPlxyXG4gIDxjYW52YXMgd2lkdGg9XCI3MFwiIGhlaWdodD1cIjcwXCIgI215Q2hhcnQ+PC9jYW52YXM+XHJcbiAgPGxhYmVsIGNsYXNzPVwiY2hhcnQtbGFibGVcIj57eyBcIlNUQVRTLlwiICsgbGFiZWwgfCB0cmFuc2xhdGUgfX08L2xhYmVsPlxyXG48L2Rpdj5cclxuIl19
|
|
164
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1zaW5nbGUtY2hhcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9keW5hbWljLWNoYXJ0L2R5bmFtaWMtc2luZ2xlLWNoYXJ0L2R5bmFtaWMtc2luZ2xlLWNoYXJ0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZHluYW1pYy1jaGFydC9keW5hbWljLXNpbmdsZS1jaGFydC9keW5hbWljLXNpbmdsZS1jaGFydC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBVSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFVBQVUsQ0FBQzs7O0FBQ2pDOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBTUgsTUFBTSxPQUFPLDJCQUEyQjtJQWV0QztRQUxBLHFDQUFxQztRQUVyQyxjQUFTLEdBQUcsRUFBRSxDQUFDO0lBR0MsQ0FBQztJQUVqQixRQUFRLEtBQVcsQ0FBQztJQUVwQixlQUFlO1FBQ2IsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUVkLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN0RCxJQUFJLE9BQU8sR0FBRyxJQUFJLEtBQUssQ0FBQyxHQUFHLEVBQUU7Z0JBQzNCLElBQUksRUFBRSxVQUFVO2dCQUNoQixJQUFJLEVBQUU7b0JBQ0osUUFBUSxFQUFFO3dCQUNSOzRCQUNFLEtBQUssRUFBRSxZQUFZOzRCQUNuQixJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUM7NEJBQ25DLGVBQWUsRUFBRSxJQUFJLENBQUMsU0FBUzt5QkFDaEM7cUJBQ0Y7aUJBQ0Y7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQO3dCQUNFLFVBQVUsRUFBRSxVQUFVLEtBQUs7NEJBQ3pCLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRTtnQ0FDeEMsc0JBQXNCO2dDQUN0QixJQUFJLEdBQUcsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQztnQ0FFMUIsZ0RBQWdEO2dDQUNoRCxJQUFJLFlBQVksR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO2dDQUN4RCxJQUFJLFNBQVMsR0FBRyxZQUFZLENBQUMsU0FBUyxJQUFJLE9BQU8sQ0FBQztnQ0FDbEQsSUFBSSxHQUFHLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQztnQ0FDNUIsSUFBSSxLQUFLLEdBQUcsWUFBWSxDQUFDLEtBQUssSUFBSSxNQUFNLENBQUM7Z0NBQ3pDLElBQUksV0FBVyxHQUFHLFlBQVksQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDO2dDQUNqRCxJQUFJLFdBQVcsR0FBRyxZQUFZLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQztnQ0FDakQsSUFBSSxxQkFBcUIsR0FDdkIsQ0FBQyxXQUFXLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQyxDQUFDO2dDQUNoRCxpQ0FBaUM7Z0NBQ2pDLEdBQUcsQ0FBQyxJQUFJLEdBQUcsT0FBTyxHQUFHLFNBQVMsQ0FBQztnQ0FFL0IscUdBQXFHO2dDQUNyRyxJQUFJLFdBQVcsR0FBRyxHQUFHLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQztnQ0FDN0MsSUFBSSxZQUFZLEdBQUcsS0FBSyxDQUFDLFdBQVcsR0FBRyxDQUFDLEdBQUcscUJBQXFCLENBQUM7Z0NBRWpFLGdEQUFnRDtnQ0FDaEQsSUFBSSxVQUFVLEdBQUcsWUFBWSxHQUFHLFdBQVcsQ0FBQztnQ0FDNUMsSUFBSSxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLEdBQUcsVUFBVSxDQUFDLENBQUM7Z0NBQzlDLElBQUksYUFBYSxHQUFHLEtBQUssQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDO2dDQUUxQywwRUFBMEU7Z0NBQzFFLElBQUksYUFBYSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQzFCLFdBQVcsRUFDWCxhQUFhLEVBQ2IsV0FBVyxDQUNaLENBQUM7Z0NBQ0YsSUFBSSxXQUFXLEdBQUcsWUFBWSxDQUFDLFdBQVcsQ0FBQztnQ0FDM0MsSUFBSSxVQUFVLEdBQUcsWUFBWSxDQUFDLFVBQVUsSUFBSSxFQUFFLENBQUM7Z0NBQy9DLElBQUksUUFBUSxHQUFHLEtBQUssQ0FBQztnQ0FFckIsSUFBSSxXQUFXLEtBQUssU0FBUyxFQUFFO29DQUM3QixXQUFXLEdBQUcsRUFBRSxDQUFDO2lDQUNsQjtnQ0FFRCxJQUFJLFdBQVcsSUFBSSxhQUFhLEdBQUcsV0FBVyxFQUFFO29DQUM5QyxhQUFhLEdBQUcsV0FBVyxDQUFDO29DQUM1QixRQUFRLEdBQUcsSUFBSSxDQUFDO2lDQUNqQjtnQ0FFRCwwQ0FBMEM7Z0NBQzFDLEdBQUcsQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO2dDQUN6QixHQUFHLENBQUMsWUFBWSxHQUFHLFFBQVEsQ0FBQztnQ0FDNUIsSUFBSSxPQUFPLEdBQ1QsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQztnQ0FDeEQsSUFBSSxPQUFPLEdBQUcsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztnQ0FDakUsR0FBRyxDQUFDLElBQUksR0FBRyxJQUFJLEdBQUcsS0FBSyxHQUFHLFNBQVMsQ0FBQztnQ0FDcEMsR0FBRyxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7Z0NBRXRCLElBQUksQ0FBQyxRQUFRLEVBQUU7b0NBQ2IsR0FBRyxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO29DQUNwQyxPQUFPO2lDQUNSO2dDQUVELElBQUksS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7Z0NBQzNCLElBQUksSUFBSSxHQUFHLEVBQUUsQ0FBQztnQ0FDZCxJQUFJLEtBQUssR0FBRyxFQUFFLENBQUM7Z0NBRWYsa0RBQWtEO2dDQUNsRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtvQ0FDckMsSUFBSSxRQUFRLEdBQUcsSUFBSSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUM7b0NBQ3JDLElBQUksT0FBTyxHQUFHLEdBQUcsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7b0NBQ3hDLElBQUksU0FBUyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7b0NBQzlCLElBQUksU0FBUyxHQUFHLFlBQVksSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO3dDQUNyQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO3dDQUNqQixJQUFJLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQztxQ0FDdkI7eUNBQU07d0NBQ0wsSUFBSSxHQUFHLFFBQVEsQ0FBQztxQ0FDakI7aUNBQ0Y7Z0NBRUQsa0VBQWtFO2dDQUNsRSxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQztnQ0FFM0MsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7b0NBQ3JDLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztvQ0FDekMsT0FBTyxJQUFJLFVBQVUsQ0FBQztpQ0FDdkI7Z0NBQ0QscUJBQXFCO2dDQUNyQixHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7NkJBQ3RDO3dCQUNILENBQUM7cUJBQ0Y7aUJBQ0Y7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLFVBQVUsRUFBRSxJQUFJO29CQUNoQixTQUFTLEVBQUU7d0JBQ1QsT0FBTyxFQUFFLEtBQUs7cUJBQ2Y7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFNBQVMsRUFBRTs0QkFDVCxPQUFPLEVBQUUsS0FBSzt5QkFDZjt3QkFDRCxNQUFNLEVBQUUsS0FBSztxQkFDZDtvQkFDRCxRQUFRLEVBQUUsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFO29CQUM1QixRQUFRLEVBQUU7d0JBQ1IsTUFBTSxFQUFFOzRCQUNOLElBQUksRUFBRSxHQUNKLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSTtnQ0FDaEIsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRztnQ0FDbEQsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUNYLEVBQUU7NEJBQ0YsS0FBSyxFQUFFLFNBQVM7NEJBQ2hCLFNBQVMsRUFBRSxPQUFPOzRCQUNsQixXQUFXLEVBQUUsRUFBRTs0QkFDZixXQUFXLEVBQUUsRUFBRTs0QkFDZixVQUFVLEVBQUUsRUFBRSxFQUFFLGtEQUFrRDt5QkFDbkU7cUJBQ0Y7aUJBQ0Y7YUFDRixDQUFDLENBQUM7UUFDTCxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDVixDQUFDOzt3SEExSlUsMkJBQTJCOzRHQUEzQiwyQkFBMkIsZ1FDdEJ4QywrS0FJQTsyRkRrQmEsMkJBQTJCO2tCQUx2QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwwQkFBMEI7b0JBQ3BDLFdBQVcsRUFBRSx1Q0FBdUM7b0JBQ3BELFNBQVMsRUFBRSxDQUFDLHVDQUF1QyxDQUFDO2lCQUNyRDswRUFJQyxVQUFVO3NCQURULEtBQUs7Z0JBSU4sS0FBSztzQkFESixLQUFLO2dCQUlOLEtBQUs7c0JBREosS0FBSztnQkFJTixTQUFTO3NCQURSLEtBQUs7Z0JBRWdCLEtBQUs7c0JBQTFCLFNBQVM7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENoYXJ0IH0gZnJvbSAnY2hhcnQuanMnO1xyXG4vKipcclxuICogQSBVSSBkb3VnaG51dCBjaGFydCBjb21wb25lbnRcclxuICpcclxuICogIVtTY3JlZW5zaG90LTFdKC4uL3NjcmVlbnNob3RzL3NpbmdsZUNoYXJ0LnBuZylcclxuICogQHRpdGxlXHJcbiAqIGRvdWdobnV0IGNoYXJ0XHJcbiAqXHJcbiAqIEBleGFtcGxlXHJcbiAqIDxjdHMtZHluYW1pYy1zaW5nbGUtY2hhcnRcclxuICogICBbdG90YWxJdGVtc109XCJ0b3RhbEl0ZW1zXCJcclxuICogICBbbGFiZWxdPVwibGFiZWxcIlxyXG4gKiAgIFtjb3VudF09XCJjb3VudFwiXHJcbiAqICAgW2NvbG9yQ29kZV09XCJhcnJheU9mQ29sb3JzXCJcclxuICogPjwvY3RzLWR5bmFtaWMtc2luZ2xlLWNoYXJ0PlxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjdHMtZHluYW1pYy1zaW5nbGUtY2hhcnQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9keW5hbWljLXNpbmdsZS1jaGFydC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZHluYW1pYy1zaW5nbGUtY2hhcnQuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIER5bmFtaWNTaW5nbGVDaGFydENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgLyoqIFRvdGFsIEl0ZW1zICovXHJcbiAgQElucHV0KClcclxuICB0b3RhbEl0ZW1zO1xyXG4gIC8qKiBDaGFydCBjb3VudCAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgY291bnQ7XHJcbiAgLyoqIENoYXJ0IGxhYmVsICovXHJcbiAgQElucHV0KClcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIC8qKiBhcnJheSBvZiBjb2xvciBjb2RlcyBmb3IgY2hhcnQgKi9cclxuICBASW5wdXQoKVxyXG4gIGNvbG9yQ29kZSA9IFtdO1xyXG4gIEBWaWV3Q2hpbGQoJ215Q2hhcnQnKSBjaGFydDogRWxlbWVudFJlZjtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7IH1cclxuICBcclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuXHJcbiAgICAgIGNvbnN0IGN0eCA9IHRoaXMuY2hhcnQubmF0aXZlRWxlbWVudC5nZXRDb250ZXh0KCcyZCcpO1xyXG4gICAgICBsZXQgbXlDaGFydCA9IG5ldyBDaGFydChjdHgsIHtcclxuICAgICAgICB0eXBlOiAnZG91Z2hudXQnLFxyXG4gICAgICAgIGRhdGE6IHtcclxuICAgICAgICAgIGRhdGFzZXRzOiBbXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICBsYWJlbDogJyMgb2YgVm90ZXMnLFxyXG4gICAgICAgICAgICAgIGRhdGE6IFt0aGlzLmNvdW50LCB0aGlzLnRvdGFsSXRlbXNdLFxyXG4gICAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogdGhpcy5jb2xvckNvZGUsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICBdLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgcGx1Z2luczogW1xyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICBiZWZvcmVEcmF3OiBmdW5jdGlvbiAoY2hhcnQpIHtcclxuICAgICAgICAgICAgICBpZiAoY2hhcnQuY29uZmlnLm9wdGlvbnMuZWxlbWVudHMuY2VudGVyKSB7XHJcbiAgICAgICAgICAgICAgICAvLyBHZXQgY3R4IGZyb20gc3RyaW5nXHJcbiAgICAgICAgICAgICAgICB2YXIgY3R4ID0gY2hhcnQuY2hhcnQuY3R4O1xyXG5cclxuICAgICAgICAgICAgICAgIC8vIEdldCBvcHRpb25zIGZyb20gdGhlIGNlbnRlciBvYmplY3QgaW4gb3B0aW9uc1xyXG4gICAgICAgICAgICAgICAgdmFyIGNlbnRlckNvbmZpZyA9IGNoYXJ0LmNvbmZpZy5vcHRpb25zLmVsZW1lbnRzLmNlbnRlcjtcclxuICAgICAgICAgICAgICAgIHZhciBmb250U3R5bGUgPSBjZW50ZXJDb25maWcuZm9udFN0eWxlIHx8ICdBcmlhbCc7XHJcbiAgICAgICAgICAgICAgICB2YXIgdHh0ID0gY2VudGVyQ29uZmlnLnRleHQ7XHJcbiAgICAgICAgICAgICAgICB2YXIgY29sb3IgPSBjZW50ZXJDb25maWcuY29sb3IgfHwgJyMwMDAnO1xyXG4gICAgICAgICAgICAgICAgdmFyIG1heEZvbnRTaXplID0gY2VudGVyQ29uZmlnLm1heEZvbnRTaXplIHx8IDc1O1xyXG4gICAgICAgICAgICAgICAgdmFyIHNpZGVQYWRkaW5nID0gY2VudGVyQ29uZmlnLnNpZGVQYWRkaW5nIHx8IDIwO1xyXG4gICAgICAgICAgICAgICAgdmFyIHNpZGVQYWRkaW5nQ2FsY3VsYXRlZCA9XHJcbiAgICAgICAgICAgICAgICAgIChzaWRlUGFkZGluZyAvIDEwMCkgKiAoY2hhcnQuaW5uZXJSYWRpdXMgKiAyKTtcclxuICAgICAgICAgICAgICAgIC8vIFN0YXJ0IHdpdGggYSBiYXNlIGZvbnQgb2YgMzBweFxyXG4gICAgICAgICAgICAgICAgY3R4LmZvbnQgPSAnMzBweCAnICsgZm9udFN0eWxlO1xyXG5cclxuICAgICAgICAgICAgICAgIC8vIEdldCB0aGUgd2lkdGggb2YgdGhlIHN0cmluZyBhbmQgYWxzbyB0aGUgd2lkdGggb2YgdGhlIGVsZW1lbnQgbWludXMgMTAgdG8gZ2l2ZSBpdCA1cHggc2lkZSBwYWRkaW5nXHJcbiAgICAgICAgICAgICAgICB2YXIgc3RyaW5nV2lkdGggPSBjdHgubWVhc3VyZVRleHQodHh0KS53aWR0aDtcclxuICAgICAgICAgICAgICAgIHZhciBlbGVtZW50V2lkdGggPSBjaGFydC5pbm5lclJhZGl1cyAqIDIgLSBzaWRlUGFkZGluZ0NhbGN1bGF0ZWQ7XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gRmluZCBvdXQgaG93IG11Y2ggdGhlIGZvbnQgY2FuIGdyb3cgaW4gd2lkdGguXHJcbiAgICAgICAgICAgICAgICB2YXIgd2lkdGhSYXRpbyA9IGVsZW1lbnRXaWR0aCAvIHN0cmluZ1dpZHRoO1xyXG4gICAgICAgICAgICAgICAgdmFyIG5ld0ZvbnRTaXplID0gTWF0aC5mbG9vcigzMCAqIHdpZHRoUmF0aW8pO1xyXG4gICAgICAgICAgICAgICAgdmFyIGVsZW1lbnRIZWlnaHQgPSBjaGFydC5pbm5lclJhZGl1cyAqIDI7XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gUGljayBhIG5ldyBmb250IHNpemUgc28gaXQgd2lsbCBub3QgYmUgbGFyZ2VyIHRoYW4gdGhlIGhlaWdodCBvZiBsYWJlbC5cclxuICAgICAgICAgICAgICAgIHZhciBmb250U2l6ZVRvVXNlID0gTWF0aC5taW4oXHJcbiAgICAgICAgICAgICAgICAgIG5ld0ZvbnRTaXplLFxyXG4gICAgICAgICAgICAgICAgICBlbGVtZW50SGVpZ2h0LFxyXG4gICAgICAgICAgICAgICAgICBtYXhGb250U2l6ZVxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgIHZhciBtaW5Gb250U2l6ZSA9IGNlbnRlckNvbmZpZy5taW5Gb250U2l6ZTtcclxuICAgICAgICAgICAgICAgIHZhciBsaW5lSGVpZ2h0ID0gY2VudGVyQ29uZmlnLmxpbmVIZWlnaHQgfHwgMjU7XHJcbiAgICAgICAgICAgICAgICB2YXIgd3JhcFRleHQgPSBmYWxzZTtcclxuXHJcbiAgICAgICAgICAgICAgICBpZiAobWluRm9udFNpemUgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICAgICAgICBtaW5Gb250U2l6ZSA9IDIwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGlmIChtaW5Gb250U2l6ZSAmJiBmb250U2l6ZVRvVXNlIDwgbWluRm9udFNpemUpIHtcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemVUb1VzZSA9IG1pbkZvbnRTaXplO1xyXG4gICAgICAgICAgICAgICAgICB3cmFwVGV4dCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gU2V0IGZvbnQgc2V0dGluZ3MgdG8gZHJhdyBpdCBjb3JyZWN0bHkuXHJcbiAgICAgICAgICAgICAgICBjdHgudGV4dEFsaWduID0gJ2NlbnRlcic7XHJcbiAgICAgICAgICAgICAgICBjdHgudGV4dEJhc2VsaW5lID0gJ21pZGRsZSc7XHJcbiAgICAgICAgICAgICAgICB2YXIgY2VudGVyWCA9XHJcbiAgICAgICAgICAgICAgICAgIChjaGFydC5jaGFydEFyZWEubGVmdCArIGNoYXJ0LmNoYXJ0QXJlYS5yaWdodCkgLyAxLjk3O1xyXG4gICAgICAgICAgICAgICAgdmFyIGNlbnRlclkgPSAoY2hhcnQuY2hhcnRBcmVhLnRvcCArIGNoYXJ0LmNoYXJ0QXJlYS5ib3R0b20pIC8gMjtcclxuICAgICAgICAgICAgICAgIGN0eC5mb250ID0gJzE0JyArICdweCAnICsgZm9udFN0eWxlO1xyXG4gICAgICAgICAgICAgICAgY3R4LmZpbGxTdHlsZSA9IGNvbG9yO1xyXG5cclxuICAgICAgICAgICAgICAgIGlmICghd3JhcFRleHQpIHtcclxuICAgICAgICAgICAgICAgICAgY3R4LmZpbGxUZXh0KHR4dCwgY2VudGVyWCwgY2VudGVyWSk7XHJcbiAgICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICB2YXIgd29yZHMgPSB0eHQuc3BsaXQoJyAnKTtcclxuICAgICAgICAgICAgICAgIHZhciBsaW5lID0gJyc7XHJcbiAgICAgICAgICAgICAgICB2YXIgbGluZXMgPSBbXTtcclxuXHJcbiAgICAgICAgICAgICAgICAvLyBCcmVhayB3b3JkcyB1cCBpbnRvIG11bHRpcGxlIGxpbmVzIGlmIG5lY2Vzc2FyeVxyXG4gICAgICAgICAgICAgICAgZm9yICh2YXIgbiA9IDA7IG4gPCB3b3Jkcy5sZW5ndGg7IG4rKykge1xyXG4gICAgICAgICAgICAgICAgICB2YXIgdGVzdExpbmUgPSBsaW5lICsgd29yZHNbbl0gKyAnICc7XHJcbiAgICAgICAgICAgICAgICAgIHZhciBtZXRyaWNzID0gY3R4Lm1lYXN1cmVUZXh0KHRlc3RMaW5lKTtcclxuICAgICAgICAgICAgICAgICAgdmFyIHRlc3RXaWR0aCA9IG1ldHJpY3Mud2lkdGg7XHJcbiAgICAgICAgICAgICAgICAgIGlmICh0ZXN0V2lkdGggPiBlbGVtZW50V2lkdGggJiYgbiA+IDApIHtcclxuICAgICAgICAgICAgICAgICAgICBsaW5lcy5wdXNoKGxpbmUpO1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUgPSB3b3Jkc1tuXSArICcgJztcclxuICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICBsaW5lID0gdGVzdExpbmU7XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAvLyBNb3ZlIHRoZSBjZW50ZXIgdXAgZGVwZW5kaW5nIG9uIGxpbmUgaGVpZ2h0IGFuZCBudW1iZXIgb2YgbGluZXNcclxuICAgICAgICAgICAgICAgIGNlbnRlclkgLT0gKGxpbmVzLmxlbmd0aCAvIDIpICogbGluZUhlaWdodDtcclxuXHJcbiAgICAgICAgICAgICAgICBmb3IgKHZhciBuID0gMDsgbiA8IGxpbmVzLmxlbmd0aDsgbisrKSB7XHJcbiAgICAgICAgICAgICAgICAgIGN0eC5maWxsVGV4dChsaW5lc1tuXSwgY2VudGVyWCwgY2VudGVyWSk7XHJcbiAgICAgICAgICAgICAgICAgIGNlbnRlclkgKz0gbGluZUhlaWdodDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC8vRHJhdyB0ZXh0IGluIGNlbnRlclxyXG4gICAgICAgICAgICAgICAgY3R4LmZpbGxUZXh0KGxpbmUsIGNlbnRlclgsIGNlbnRlclkpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgXSxcclxuICAgICAgICBvcHRpb25zOiB7XHJcbiAgICAgICAgICByZXNwb25zaXZlOiB0cnVlLFxyXG4gICAgICAgICAgb3V0bGFiZWxzOiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZhbHNlLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHBsdWdpbnM6IHtcclxuICAgICAgICAgICAgb3V0bGFiZWxzOiB7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogZmFsc2UsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIGxhYmVsczogZmFsc2VcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICB0b29sdGlwczogeyBlbmFibGVkOiBmYWxzZSB9LFxyXG4gICAgICAgICAgZWxlbWVudHM6IHtcclxuICAgICAgICAgICAgY2VudGVyOiB7XHJcbiAgICAgICAgICAgICAgdGV4dDogYCR7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNvdW50ID49IDEwMDBcclxuICAgICAgICAgICAgICAgICAgPyBwYXJzZUZsb2F0KCh0aGlzLmNvdW50IC8gMTAwMCkudG9GaXhlZCgyKSkgKyAnSydcclxuICAgICAgICAgICAgICAgICAgOiB0aGlzLmNvdW50XHJcbiAgICAgICAgICAgICAgfWAsXHJcbiAgICAgICAgICAgICAgY29sb3I6ICcjNTk2OTczJywgLy8gRGVmYXVsdCBpcyAjMDAwMDAwXHJcbiAgICAgICAgICAgICAgZm9udFN0eWxlOiAnQXJpYWwnLCAvLyBEZWZhdWx0IGlzIEFyaWFsXHJcbiAgICAgICAgICAgICAgc2lkZVBhZGRpbmc6IDIwLCAvLyBEZWZhdWx0IGlzIDIwIChhcyBhIHBlcmNlbnRhZ2UpXHJcbiAgICAgICAgICAgICAgbWluRm9udFNpemU6IDIwLCAvLyBEZWZhdWx0IGlzIDIwIChpbiBweCksIHNldCB0byBmYWxzZSBhbmQgdGV4dCB3aWxsIG5vdCB3cmFwLlxyXG4gICAgICAgICAgICAgIGxpbmVIZWlnaHQ6IDI1LCAvLyBEZWZhdWx0IGlzIDI1IChpbiBweCksIHVzZWQgZm9yIHdoZW4gdGV4dCB3cmFwc1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICB9KTtcclxuICAgIH0sIDIwMCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjaGFydFwiPlxyXG4gIDxjYW52YXMgd2lkdGg9XCI3MFwiIGhlaWdodD1cIjcwXCIgI215Q2hhcnQ+PC9jYW52YXM+XHJcbiAgPGxhYmVsIGNsYXNzPVwiY2hhcnQtbGFibGVcIj57eyBcIlNUQVRTLlwiICsgbGFiZWwgfCB0cmFuc2xhdGUgfX08L2xhYmVsPlxyXG48L2Rpdj5cclxuIl19
|