@ng-nest/ui 15.0.5 → 15.0.6
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/anchor/anchor.component.d.ts +5 -5
- package/api/api.component.d.ts +1 -1
- package/auto-complete/auto-complete.component.d.ts +1 -1
- package/avatar/avatar.component.d.ts +3 -3
- package/back-top/back-top.component.d.ts +2 -2
- package/badge/badge.component.d.ts +2 -2
- package/border/border.component.d.ts +1 -1
- package/button/button.component.d.ts +2 -2
- package/button/buttons.component.d.ts +1 -1
- package/calendar/calendar.component.d.ts +2 -2
- package/card/card.component.d.ts +2 -2
- package/carousel/carousel-panel.component.d.ts +2 -2
- package/carousel/carousel.component.d.ts +4 -4
- package/cascade/cascade.component.d.ts +1 -1
- package/checkbox/checkbox.component.d.ts +3 -3
- package/collapse/collapse-panel.component.d.ts +2 -2
- package/collapse/collapse.component.d.ts +2 -2
- package/color/color.component.d.ts +1 -1
- package/color-picker/color-picker-portal.component.d.ts +4 -4
- package/color-picker/color-picker.component.d.ts +1 -1
- package/comment/comment-reply.component.d.ts +2 -2
- package/comment/comment.component.d.ts +2 -2
- package/container/aside.component.d.ts +1 -1
- package/container/container.component.d.ts +1 -1
- package/container/footer.component.d.ts +1 -1
- package/container/header.component.d.ts +1 -1
- package/container/main.component.d.ts +1 -1
- package/core/config/config.d.ts +1 -0
- package/core/functions/chunk.d.ts +1 -0
- package/core/functions/flex.d.ts +1 -1
- package/core/functions/group-by.d.ts +1 -0
- package/core/functions/guid.d.ts +4 -0
- package/core/functions/public-api.d.ts +4 -0
- package/core/{util → functions}/resize.d.ts +0 -0
- package/core/util/public-api.d.ts +0 -4
- package/date-picker/date-picker.component.d.ts +1 -1
- package/date-picker/date-range.component.d.ts +1 -1
- package/dialog/dialog.component.d.ts +2 -2
- package/drawer/drawer.component.d.ts +2 -2
- package/dropdown/dropdown-portal.component.d.ts +2 -2
- package/dropdown/dropdown.component.d.ts +3 -3
- package/esm2020/anchor/anchor.component.mjs +1 -2
- package/esm2020/api/api.component.mjs +1 -1
- package/esm2020/auto-complete/auto-complete.component.mjs +1 -1
- package/esm2020/avatar/avatar.component.mjs +1 -1
- package/esm2020/back-top/back-top.component.mjs +1 -1
- package/esm2020/badge/badge.component.mjs +1 -1
- package/esm2020/base-form/base-form.component.mjs +3 -3
- package/esm2020/border/border.component.mjs +1 -1
- package/esm2020/button/button.component.mjs +1 -1
- package/esm2020/button/buttons.component.mjs +1 -1
- package/esm2020/calendar/calendar.component.mjs +1 -1
- package/esm2020/card/card.component.mjs +1 -1
- package/esm2020/carousel/carousel-panel.component.mjs +1 -1
- package/esm2020/carousel/carousel.component.mjs +1 -1
- package/esm2020/cascade/cascade.component.mjs +1 -1
- package/esm2020/checkbox/checkbox.component.mjs +1 -1
- package/esm2020/collapse/collapse-panel.component.mjs +1 -1
- package/esm2020/collapse/collapse.component.mjs +1 -1
- package/esm2020/color/color.component.mjs +1 -1
- package/esm2020/color-picker/color-picker-portal.component.mjs +1 -1
- package/esm2020/color-picker/color-picker.component.mjs +1 -1
- package/esm2020/comment/comment-reply.component.mjs +1 -1
- package/esm2020/comment/comment.component.mjs +1 -1
- package/esm2020/container/aside.component.mjs +1 -1
- package/esm2020/container/container.component.mjs +1 -1
- package/esm2020/container/footer.component.mjs +1 -1
- package/esm2020/container/header.component.mjs +1 -1
- package/esm2020/container/main.component.mjs +1 -1
- package/esm2020/core/config/config.mjs +1 -1
- package/esm2020/core/functions/chunk.mjs +14 -0
- package/esm2020/core/functions/flex.mjs +2 -2
- package/esm2020/core/functions/group-by.mjs +10 -0
- package/esm2020/core/functions/guid.mjs +10 -0
- package/esm2020/core/functions/order-by.mjs +24 -3
- package/esm2020/core/functions/public-api.mjs +5 -1
- package/esm2020/core/functions/resize.mjs +17 -0
- package/esm2020/core/util/public-api.mjs +1 -5
- package/esm2020/date-picker/date-picker-portal.component.mjs +2 -2
- package/esm2020/date-picker/date-picker.component.mjs +1 -1
- package/esm2020/date-picker/date-range.component.mjs +1 -1
- package/esm2020/date-picker/picker-date.component.mjs +3 -3
- package/esm2020/date-picker/picker-month.component.mjs +3 -3
- package/esm2020/date-picker/picker-year.component.mjs +3 -3
- package/esm2020/dialog/dialog.component.mjs +2 -2
- package/esm2020/drawer/drawer.component.mjs +1 -1
- package/esm2020/dropdown/dropdown-portal.component.mjs +1 -1
- package/esm2020/dropdown/dropdown.component.mjs +1 -1
- package/esm2020/find/find.component.mjs +1 -1
- package/esm2020/form/control.component.mjs +2 -2
- package/esm2020/form/form.component.mjs +8 -1
- package/esm2020/highlight/highlight.component.mjs +2 -2
- package/esm2020/i18n/i18n.property.mjs +1 -1
- package/esm2020/i18n/languages/en_GB.mjs +44 -18
- package/esm2020/i18n/languages/en_US.mjs +8 -2
- package/esm2020/i18n/languages/zh_CN.mjs +8 -2
- package/esm2020/i18n/languages/zh_TW.mjs +9 -3
- package/esm2020/icon/icon.component.mjs +1 -1
- package/esm2020/image/image-preview.component.mjs +1 -1
- package/esm2020/image/image.component.mjs +1 -1
- package/esm2020/inner/inner.component.mjs +1 -1
- package/esm2020/input/input-group.component.mjs +1 -1
- package/esm2020/input/input.component.mjs +1 -1
- package/esm2020/input-number/input-number.component.mjs +1 -1
- package/esm2020/link/link.component.mjs +1 -1
- package/esm2020/list/list-option.component.mjs +1 -1
- package/esm2020/list/list.component.mjs +2 -2
- package/esm2020/loading/loading.component.mjs +2 -2
- package/esm2020/menu/menu-node.component.mjs +1 -1
- package/esm2020/menu/menu.component.mjs +3 -3
- package/esm2020/message/message.component.mjs +1 -1
- package/esm2020/message-box/message-box.component.mjs +1 -1
- package/esm2020/notification/notification.component.mjs +1 -1
- package/esm2020/pagination/pagination.component.mjs +1 -1
- package/esm2020/popconfirm/popconfirm.component.mjs +1 -1
- package/esm2020/popover/popover-portal.component.mjs +1 -1
- package/esm2020/progress/progress.component.mjs +1 -1
- package/esm2020/radio/radio.component.mjs +1 -1
- package/esm2020/rate/rate.component.mjs +1 -1
- package/esm2020/result/result.component.mjs +1 -1
- package/esm2020/select/select.component.mjs +3 -3
- package/esm2020/skeleton/skeleton.component.mjs +1 -1
- package/esm2020/slider/slider.component.mjs +1 -1
- package/esm2020/slider-select/slider-select.component.mjs +1 -1
- package/esm2020/steps/steps.component.mjs +1 -1
- package/esm2020/switch/switch.component.mjs +1 -1
- package/esm2020/table/table-body.component.mjs +1 -1
- package/esm2020/table/table-foot.component.mjs +1 -1
- package/esm2020/table/table-head.component.mjs +1 -1
- package/esm2020/table/table.component.mjs +1 -1
- package/esm2020/tabs/tab-content.component.mjs +1 -1
- package/esm2020/tabs/tab.component.mjs +3 -3
- package/esm2020/tabs/tabs.component.mjs +3 -3
- package/esm2020/tag/tag.component.mjs +1 -1
- package/esm2020/text-retract/text-retract.component.mjs +1 -1
- package/esm2020/textarea/textarea.component.mjs +1 -1
- package/esm2020/time-picker/time-picker-frame.component.mjs +188 -55
- package/esm2020/time-picker/time-picker-portal.component.mjs +30 -8
- package/esm2020/time-picker/time-picker.component.mjs +36 -9
- package/esm2020/time-picker/time-picker.module.mjs +8 -4
- package/esm2020/time-picker/time-picker.property.mjs +37 -3
- package/esm2020/timeline/timeline.component.mjs +1 -1
- package/esm2020/tooltip/tooltip-portal.component.mjs +3 -3
- package/esm2020/transfer/transfer.component.mjs +3 -3
- package/esm2020/transfer/transfer.module.mjs +8 -4
- package/esm2020/tree/tree-node.component.mjs +1 -1
- package/esm2020/tree/tree.component.mjs +1 -1
- package/esm2020/tree-file/tree-file.component.mjs +1 -1
- package/esm2020/tree-select/tree-select.component.mjs +1 -1
- package/esm2020/upload/upload-portal.component.mjs +5 -1
- package/esm2020/upload/upload.component.mjs +1 -1
- package/fesm2015/ng-nest-ui-anchor.mjs +0 -2
- package/fesm2015/ng-nest-ui-anchor.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-api.mjs +0 -1
- package/fesm2015/ng-nest-ui-api.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-auto-complete.mjs +0 -1
- package/fesm2015/ng-nest-ui-auto-complete.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-avatar.mjs +0 -1
- package/fesm2015/ng-nest-ui-avatar.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-back-top.mjs +0 -1
- package/fesm2015/ng-nest-ui-back-top.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-badge.mjs +0 -1
- package/fesm2015/ng-nest-ui-badge.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-base-form.mjs +2 -3
- package/fesm2015/ng-nest-ui-base-form.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-border.mjs +0 -1
- package/fesm2015/ng-nest-ui-border.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-button.mjs +0 -1
- package/fesm2015/ng-nest-ui-button.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-calendar.mjs +0 -1
- package/fesm2015/ng-nest-ui-calendar.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-card.mjs +0 -1
- package/fesm2015/ng-nest-ui-card.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-carousel.mjs +0 -1
- package/fesm2015/ng-nest-ui-carousel.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-cascade.mjs +0 -1
- package/fesm2015/ng-nest-ui-cascade.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-checkbox.mjs +0 -1
- package/fesm2015/ng-nest-ui-checkbox.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-collapse.mjs +0 -1
- package/fesm2015/ng-nest-ui-collapse.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-color-picker.mjs +0 -1
- package/fesm2015/ng-nest-ui-color-picker.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-color.mjs +0 -1
- package/fesm2015/ng-nest-ui-color.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-comment.mjs +0 -1
- package/fesm2015/ng-nest-ui-comment.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-container.mjs +0 -1
- package/fesm2015/ng-nest-ui-container.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-core.mjs +76 -56
- package/fesm2015/ng-nest-ui-core.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-date-picker.mjs +5 -6
- package/fesm2015/ng-nest-ui-date-picker.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-dialog.mjs +1 -2
- package/fesm2015/ng-nest-ui-dialog.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-drawer.mjs +0 -1
- package/fesm2015/ng-nest-ui-drawer.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-dropdown.mjs +0 -1
- package/fesm2015/ng-nest-ui-dropdown.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-find.mjs +0 -1
- package/fesm2015/ng-nest-ui-find.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-form.mjs +8 -2
- package/fesm2015/ng-nest-ui-form.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-highlight.mjs +1 -2
- package/fesm2015/ng-nest-ui-highlight.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-i18n.mjs +65 -22
- package/fesm2015/ng-nest-ui-i18n.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-icon.mjs +0 -1
- package/fesm2015/ng-nest-ui-icon.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-image.mjs +0 -1
- package/fesm2015/ng-nest-ui-image.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-inner.mjs +0 -1
- package/fesm2015/ng-nest-ui-inner.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-input-number.mjs +0 -1
- package/fesm2015/ng-nest-ui-input-number.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-input.mjs +0 -1
- package/fesm2015/ng-nest-ui-input.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-link.mjs +0 -1
- package/fesm2015/ng-nest-ui-link.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-list.mjs +1 -2
- package/fesm2015/ng-nest-ui-list.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-loading.mjs +1 -2
- package/fesm2015/ng-nest-ui-loading.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-menu.mjs +2 -3
- package/fesm2015/ng-nest-ui-menu.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-message-box.mjs +0 -1
- package/fesm2015/ng-nest-ui-message-box.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-message.mjs +0 -1
- package/fesm2015/ng-nest-ui-message.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-notification.mjs +0 -1
- package/fesm2015/ng-nest-ui-notification.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-pagination.mjs +0 -1
- package/fesm2015/ng-nest-ui-pagination.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-popconfirm.mjs +0 -1
- package/fesm2015/ng-nest-ui-popconfirm.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-popover.mjs +0 -1
- package/fesm2015/ng-nest-ui-popover.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-progress.mjs +0 -1
- package/fesm2015/ng-nest-ui-progress.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-radio.mjs +0 -1
- package/fesm2015/ng-nest-ui-radio.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-rate.mjs +0 -1
- package/fesm2015/ng-nest-ui-rate.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-result.mjs +0 -1
- package/fesm2015/ng-nest-ui-result.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-select.mjs +2 -3
- package/fesm2015/ng-nest-ui-select.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-skeleton.mjs +0 -1
- package/fesm2015/ng-nest-ui-skeleton.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-slider-select.mjs +0 -1
- package/fesm2015/ng-nest-ui-slider-select.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-slider.mjs +0 -1
- package/fesm2015/ng-nest-ui-slider.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-steps.mjs +0 -1
- package/fesm2015/ng-nest-ui-steps.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-switch.mjs +0 -1
- package/fesm2015/ng-nest-ui-switch.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-table.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-tabs.mjs +4 -5
- package/fesm2015/ng-nest-ui-tabs.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-tag.mjs +0 -1
- package/fesm2015/ng-nest-ui-tag.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-text-retract.mjs +0 -1
- package/fesm2015/ng-nest-ui-text-retract.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-textarea.mjs +0 -1
- package/fesm2015/ng-nest-ui-textarea.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-time-picker.mjs +292 -81
- package/fesm2015/ng-nest-ui-time-picker.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-timeline.mjs +0 -1
- package/fesm2015/ng-nest-ui-timeline.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-tooltip.mjs +2 -3
- package/fesm2015/ng-nest-ui-tooltip.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-transfer.mjs +9 -6
- package/fesm2015/ng-nest-ui-transfer.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-tree-file.mjs +0 -1
- package/fesm2015/ng-nest-ui-tree-file.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-tree-select.mjs +0 -1
- package/fesm2015/ng-nest-ui-tree-select.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-tree.mjs +0 -1
- package/fesm2015/ng-nest-ui-tree.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-upload.mjs +4 -1
- package/fesm2015/ng-nest-ui-upload.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-anchor.mjs +0 -2
- package/fesm2020/ng-nest-ui-anchor.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-api.mjs +0 -1
- package/fesm2020/ng-nest-ui-api.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-auto-complete.mjs +0 -1
- package/fesm2020/ng-nest-ui-auto-complete.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-avatar.mjs +0 -1
- package/fesm2020/ng-nest-ui-avatar.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-back-top.mjs +0 -1
- package/fesm2020/ng-nest-ui-back-top.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-badge.mjs +0 -1
- package/fesm2020/ng-nest-ui-badge.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-base-form.mjs +2 -3
- package/fesm2020/ng-nest-ui-base-form.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-border.mjs +0 -1
- package/fesm2020/ng-nest-ui-border.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-button.mjs +0 -1
- package/fesm2020/ng-nest-ui-button.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-calendar.mjs +0 -1
- package/fesm2020/ng-nest-ui-calendar.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-card.mjs +0 -1
- package/fesm2020/ng-nest-ui-card.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-carousel.mjs +0 -1
- package/fesm2020/ng-nest-ui-carousel.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-cascade.mjs +0 -1
- package/fesm2020/ng-nest-ui-cascade.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-checkbox.mjs +0 -1
- package/fesm2020/ng-nest-ui-checkbox.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-collapse.mjs +0 -1
- package/fesm2020/ng-nest-ui-collapse.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-color-picker.mjs +0 -1
- package/fesm2020/ng-nest-ui-color-picker.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-color.mjs +0 -1
- package/fesm2020/ng-nest-ui-color.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-comment.mjs +0 -1
- package/fesm2020/ng-nest-ui-comment.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-container.mjs +0 -1
- package/fesm2020/ng-nest-ui-container.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-core.mjs +76 -56
- package/fesm2020/ng-nest-ui-core.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-date-picker.mjs +5 -6
- package/fesm2020/ng-nest-ui-date-picker.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-dialog.mjs +1 -2
- package/fesm2020/ng-nest-ui-dialog.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-drawer.mjs +0 -1
- package/fesm2020/ng-nest-ui-drawer.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-dropdown.mjs +0 -1
- package/fesm2020/ng-nest-ui-dropdown.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-find.mjs +0 -1
- package/fesm2020/ng-nest-ui-find.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-form.mjs +8 -2
- package/fesm2020/ng-nest-ui-form.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-highlight.mjs +1 -2
- package/fesm2020/ng-nest-ui-highlight.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-i18n.mjs +65 -22
- package/fesm2020/ng-nest-ui-i18n.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-icon.mjs +0 -1
- package/fesm2020/ng-nest-ui-icon.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-image.mjs +0 -1
- package/fesm2020/ng-nest-ui-image.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-inner.mjs +0 -1
- package/fesm2020/ng-nest-ui-inner.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-input-number.mjs +0 -1
- package/fesm2020/ng-nest-ui-input-number.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-input.mjs +0 -1
- package/fesm2020/ng-nest-ui-input.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-link.mjs +0 -1
- package/fesm2020/ng-nest-ui-link.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-list.mjs +1 -2
- package/fesm2020/ng-nest-ui-list.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-loading.mjs +1 -2
- package/fesm2020/ng-nest-ui-loading.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-menu.mjs +2 -3
- package/fesm2020/ng-nest-ui-menu.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-message-box.mjs +0 -1
- package/fesm2020/ng-nest-ui-message-box.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-message.mjs +0 -1
- package/fesm2020/ng-nest-ui-message.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-notification.mjs +0 -1
- package/fesm2020/ng-nest-ui-notification.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-pagination.mjs +0 -1
- package/fesm2020/ng-nest-ui-pagination.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-popconfirm.mjs +0 -1
- package/fesm2020/ng-nest-ui-popconfirm.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-popover.mjs +0 -1
- package/fesm2020/ng-nest-ui-popover.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-progress.mjs +0 -1
- package/fesm2020/ng-nest-ui-progress.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-radio.mjs +0 -1
- package/fesm2020/ng-nest-ui-radio.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-rate.mjs +0 -1
- package/fesm2020/ng-nest-ui-rate.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-result.mjs +0 -1
- package/fesm2020/ng-nest-ui-result.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-select.mjs +2 -3
- package/fesm2020/ng-nest-ui-select.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-skeleton.mjs +0 -1
- package/fesm2020/ng-nest-ui-skeleton.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-slider-select.mjs +0 -1
- package/fesm2020/ng-nest-ui-slider-select.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-slider.mjs +0 -1
- package/fesm2020/ng-nest-ui-slider.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-steps.mjs +0 -1
- package/fesm2020/ng-nest-ui-steps.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-switch.mjs +0 -1
- package/fesm2020/ng-nest-ui-switch.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-table.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-tabs.mjs +4 -5
- package/fesm2020/ng-nest-ui-tabs.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-tag.mjs +0 -1
- package/fesm2020/ng-nest-ui-tag.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-text-retract.mjs +0 -1
- package/fesm2020/ng-nest-ui-text-retract.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-textarea.mjs +0 -1
- package/fesm2020/ng-nest-ui-textarea.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-time-picker.mjs +291 -78
- package/fesm2020/ng-nest-ui-time-picker.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-timeline.mjs +0 -1
- package/fesm2020/ng-nest-ui-timeline.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-tooltip.mjs +2 -3
- package/fesm2020/ng-nest-ui-tooltip.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-transfer.mjs +9 -6
- package/fesm2020/ng-nest-ui-transfer.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-tree-file.mjs +0 -1
- package/fesm2020/ng-nest-ui-tree-file.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-tree-select.mjs +0 -1
- package/fesm2020/ng-nest-ui-tree-select.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-tree.mjs +0 -1
- package/fesm2020/ng-nest-ui-tree.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-upload.mjs +4 -1
- package/fesm2020/ng-nest-ui-upload.mjs.map +1 -1
- package/find/find.component.d.ts +1 -1
- package/form/form.component.d.ts +1 -0
- package/highlight/highlight.component.d.ts +3 -3
- package/i18n/i18n.property.d.ts +6 -0
- package/i18n/languages/en_GB.d.ts +26 -0
- package/i18n/languages/en_US.d.ts +6 -0
- package/i18n/languages/zh_CN.d.ts +6 -0
- package/i18n/languages/zh_TW.d.ts +6 -0
- package/icon/icon.component.d.ts +2 -2
- package/image/image-preview.component.d.ts +2 -2
- package/image/image.component.d.ts +2 -2
- package/inner/inner.component.d.ts +1 -1
- package/input/input-group.component.d.ts +2 -2
- package/input/input.component.d.ts +5 -5
- package/input-number/input-number.component.d.ts +1 -1
- package/link/link.component.d.ts +2 -2
- package/list/list-option.component.d.ts +2 -2
- package/list/list.component.d.ts +7 -7
- package/loading/loading.component.d.ts +2 -2
- package/menu/menu-node.component.d.ts +2 -2
- package/menu/menu.component.d.ts +3 -3
- package/message/message.component.d.ts +2 -2
- package/message-box/message-box.component.d.ts +2 -2
- package/notification/notification.component.d.ts +2 -2
- package/package.json +1 -1
- package/pagination/pagination.component.d.ts +2 -2
- package/popconfirm/popconfirm.component.d.ts +2 -2
- package/popover/popover-portal.component.d.ts +2 -2
- package/progress/progress.component.d.ts +2 -2
- package/radio/radio.component.d.ts +3 -3
- package/rate/rate.component.d.ts +3 -3
- package/result/result.component.d.ts +2 -2
- package/select/select.component.d.ts +1 -1
- package/skeleton/skeleton.component.d.ts +2 -2
- package/slider/slider.component.d.ts +4 -4
- package/slider-select/slider-select.component.d.ts +6 -6
- package/steps/steps.component.d.ts +2 -2
- package/switch/switch.component.d.ts +1 -1
- package/table/table-body.component.d.ts +3 -3
- package/table/table-foot.component.d.ts +3 -3
- package/table/table-head.component.d.ts +3 -3
- package/table/table.component.d.ts +12 -12
- package/tabs/tab-content.component.d.ts +1 -1
- package/tabs/tabs.component.d.ts +1 -1
- package/tag/tag.component.d.ts +2 -2
- package/text-retract/text-retract.component.d.ts +2 -2
- package/textarea/textarea.component.d.ts +4 -4
- package/time-picker/time-picker-frame.component.d.ts +30 -23
- package/time-picker/time-picker-portal.component.d.ts +13 -3
- package/time-picker/time-picker.component.d.ts +6 -3
- package/time-picker/time-picker.module.d.ts +2 -1
- package/time-picker/time-picker.property.d.ts +38 -2
- package/timeline/timeline.component.d.ts +2 -2
- package/tooltip/tooltip-portal.component.d.ts +3 -3
- package/transfer/transfer.component.d.ts +2 -2
- package/transfer/transfer.module.d.ts +2 -1
- package/tree/tree-node.component.d.ts +2 -2
- package/tree/tree.component.d.ts +3 -3
- package/tree-file/tree-file.component.d.ts +2 -2
- package/tree-select/tree-select.component.d.ts +1 -1
- package/upload/upload-portal.component.d.ts +6 -6
- package/upload/upload.component.d.ts +3 -3
- package/core/util/chunk.d.ts +0 -1
- package/core/util/group-by.d.ts +0 -1
- package/core/util/guid.d.ts +0 -4
- package/esm2020/core/util/chunk.mjs +0 -14
- package/esm2020/core/util/group-by.mjs +0 -10
- package/esm2020/core/util/guid.mjs +0 -10
- package/esm2020/core/util/resize.mjs +0 -17
|
@@ -121,4 +121,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImpor
|
|
|
121
121
|
type: ViewChild,
|
|
122
122
|
args: ['drawerTpl', { static: true }]
|
|
123
123
|
}] } });
|
|
124
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhd2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL2RyYXdlci9kcmF3ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvZHJhd2VyL2RyYXdlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULGlCQUFpQixFQUlqQix1QkFBdUIsRUFDdkIsU0FBUyxFQUtULFFBQVEsRUFDUixNQUFNLEVBQ04sV0FBVyxFQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdkYsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsZUFBZSxFQUFrQixXQUFXLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7Ozs7O0FBY3JHLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxlQUFlO0lBVW5ELFlBQ1MsUUFBbUIsRUFDbkIsVUFBc0IsRUFDdEIsR0FBc0IsRUFDdEIsT0FBZ0IsRUFDaEIsYUFBNkIsRUFDN0IsZ0JBQWtDLEVBQ2xDLGFBQTZCLEVBQ1csU0FBcUM7UUFFcEYsS0FBSyxFQUFFLENBQUM7UUFURCxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDdEIsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUNoQixrQkFBYSxHQUFiLGFBQWEsQ0FBZ0I7UUFDN0IscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxrQkFBYSxHQUFiLGFBQWEsQ0FBZ0I7UUFDVyxjQUFTLEdBQVQsU0FBUyxDQUE0QjtRQVp0RixVQUFLLEdBQXdCLElBQUksQ0FBQztRQUNsQyxVQUFLLEdBQUcsTUFBTSxDQUFDO1FBQ2YsV0FB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RUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBPbkluaXQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbiAgUmVuZGVyZXIyLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgVmlld0NoaWxkLFxyXG4gIFNpbXBsZUNoYW5nZXMsXHJcbiAgT25DaGFuZ2VzLFxyXG4gIFRlbXBsYXRlUmVmLFxyXG4gIFZpZXdDb250YWluZXJSZWYsXHJcbiAgT3B0aW9uYWwsXHJcbiAgSW5qZWN0LFxyXG4gIEhvc3RCaW5kaW5nXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFhEcmF3ZXJQcmVmaXgsIFhEcmF3ZXJQcm9wZXJ0eSwgWF9EUkFXRVJfQ09OVEFJTkVSIH0gZnJvbSAnLi9kcmF3ZXIucHJvcGVydHknO1xyXG5pbXBvcnQgeyBYSXNDaGFuZ2UsIFhJc0VtcHR5LCBYU2xpZGVBbmltYXRpb24sIFhDb25maWdTZXJ2aWNlLCBYQ2xlYXJDbGFzcyB9IGZyb20gJ0BuZy1uZXN0L3VpL2NvcmUnO1xyXG5pbXBvcnQgeyBYUG9ydGFsU2VydmljZSwgWFBvcnRhbE92ZXJsYXlSZWYgfSBmcm9tICdAbmctbmVzdC91aS9wb3J0YWwnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgT3ZlcmxheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcclxuaW1wb3J0IHsgWERyYXdlckNvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vZHJhd2VyLWNvbnRhaW5lci5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IGAke1hEcmF3ZXJQcmVmaXh9YCxcclxuICB0ZW1wbGF0ZVVybDogJy4vZHJhd2VyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9kcmF3ZXIuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIGFuaW1hdGlvbnM6IFtYU2xpZGVBbmltYXRpb25dXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBYRHJhd2VyQ29tcG9uZW50IGV4dGVuZHMgWERyYXdlclByb3BlcnR5IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MueC1kcmF3ZXItdmlzaWJsZScpIGdldCBnZXRWaXNpYmxlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMudmlzaWJsZTtcclxuICB9XHJcbiAgQFZpZXdDaGlsZCgnZHJhd2VyVHBsJywgeyBzdGF0aWM6IHRydWUgfSkgZHJhd2VyVHBsITogVGVtcGxhdGVSZWY8dm9pZD47XHJcbiAgcG9ydGFsITogWFBvcnRhbE92ZXJsYXlSZWY8YW55PjtcclxuICBiYWNrJDogU3Vic2NyaXB0aW9uIHwgbnVsbCA9IG51bGw7XHJcbiAgd2lkdGggPSAnMTAwJSc7XHJcbiAgaGVpZ2h0ID0gJzEwMCUnO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyByZW5kZXJlcjogUmVuZGVyZXIyLFxyXG4gICAgcHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXHJcbiAgICBwdWJsaWMgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHB1YmxpYyBvdmVybGF5OiBPdmVybGF5LFxyXG4gICAgcHVibGljIHBvcnRhbFNlcnZpY2U6IFhQb3J0YWxTZXJ2aWNlLFxyXG4gICAgcHVibGljIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXHJcbiAgICBwdWJsaWMgY29uZmlnU2VydmljZTogWENvbmZpZ1NlcnZpY2UsXHJcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFhfRFJBV0VSX0NPTlRBSU5FUikgcHVibGljIGNvbnRhaW5lcj86IFhEcmF3ZXJDb250YWluZXJDb21wb25lbnRcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc2V0Q2xhc3NNYXAoKTtcclxuICAgIHRoaXMuc2V0U2l6ZSgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoc2ltcGxlczogU2ltcGxlQ2hhbmdlcykge1xyXG4gICAgY29uc3QgeyB2aXNpYmxlLCBwbGFjZW1lbnQgfSA9IHNpbXBsZXM7XHJcbiAgICBYSXNDaGFuZ2UodmlzaWJsZSkgJiYgdGhpcy5zZXRWaXNpYmxlKCk7XHJcbiAgICBpZiAoWElzQ2hhbmdlKHBsYWNlbWVudCkpIHtcclxuICAgICAgdGhpcy5zZXRDbGFzc01hcCgpO1xyXG4gICAgICB0aGlzLnNldFNpemUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgdW5zdWJzY3JpYmUoKSB7XHJcbiAgICB0aGlzLmJhY2skPy51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgc2V0Q2xhc3NNYXAoKSB7XHJcbiAgICBYQ2xlYXJDbGFzcyh0aGlzLmNsYXNzTWFwKTtcclxuICAgIHRoaXMuY2xhc3NNYXAgPSB7XHJcbiAgICAgIFtgJHtYRHJhd2VyUHJlZml4fS0ke3RoaXMucGxhY2VtZW50fWBdOiAhWElzRW1wdHkodGhpcy5wbGFjZW1lbnQpLFxyXG4gICAgICBbYCR7WERyYXdlclByZWZpeH0tbm8tdGl0bGVgXTogWElzRW1wdHkodGhpcy50aXRsZSlcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBzZXRTaXplKCkge1xyXG4gICAgaWYgKHRoaXMuY29udGFpbmVyKSBbdGhpcy53aWR0aCwgdGhpcy5oZWlnaHRdID0gdGhpcy5nZXRTaXplKCk7XHJcbiAgfVxyXG5cclxuICBnZXRTaXplKCk6IHN0cmluZ1tdIHtcclxuICAgIHJldHVybiBbXHJcbiAgICAgIHRoaXMucGxhY2VtZW50ID09PSAnbGVmdCcgfHwgdGhpcy5wbGFjZW1lbnQgPT09ICdyaWdodCcgPyB0aGlzLnNpemUhIDogJzEwMCUnLFxyXG4gICAgICB0aGlzLnBsYWNlbWVudCA9PT0gJ3RvcCcgfHwgdGhpcy5wbGFjZW1lbnQgPT09ICdib3R0b20nID8gdGhpcy5zaXplISA6ICcxMDAlJ1xyXG4gICAgXTtcclxuICB9XHJcblxyXG4gIHNldFZpc2libGUoKSB7XHJcbiAgICBpZiAodGhpcy52aXNpYmxlKSB7XHJcbiAgICAgIHRoaXMuY3JlYXRlUG9ydGFsKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmNsb3NlUG9ydGFsKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjcmVhdGVQb3J0YWwoKSB7XHJcbiAgICBpZiAodGhpcy5jb250YWluZXIpIHJldHVybjtcclxuICAgIGNvbnN0IFt3aWR0aCwgaGVpZ2h0XSA9IHRoaXMuZ2V0U2l6ZSgpO1xyXG4gICAgdGhpcy5wb3J0YWwgPSB0aGlzLnBvcnRhbFNlcnZpY2UuYXR0YWNoKHtcclxuICAgICAgY29udGVudDogdGhpcy5kcmF3ZXJUcGwsXHJcbiAgICAgIHZpZXdDb250YWluZXJSZWY6IHRoaXMudmlld0NvbnRhaW5lclJlZixcclxuICAgICAgb3ZlcmxheUNvbmZpZzoge1xyXG4gICAgICAgIGhhc0JhY2tkcm9wOiB0cnVlLFxyXG4gICAgICAgIHNjcm9sbFN0cmF0ZWd5OiB0aGlzLm92ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5ibG9jaygpLFxyXG4gICAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IHRoaXMucG9ydGFsU2VydmljZS5zZXRQb3NpdGlvbih0aGlzLnBsYWNlbWVudCwgd2lkdGgsIGhlaWdodClcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICBpZiAodGhpcy5wb3J0YWwub3ZlcmxheVJlZikgdGhpcy5iYWNrJCA9IHRoaXMucG9ydGFsLm92ZXJsYXlSZWYuYmFja2Ryb3BDbGljaygpLnN1YnNjcmliZSgoKSA9PiB0aGlzLmNsb3NlUG9ydGFsKCkpO1xyXG4gIH1cclxuXHJcbiAgcG9ydGFsQXR0YWNoZWQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5wb3J0YWw/Lm92ZXJsYXlSZWY/Lmhhc0F0dGFjaGVkKCk7XHJcbiAgfVxyXG5cclxuICBjbG9zZVBvcnRhbCgpIHtcclxuICAgIGlmICh0aGlzLmNvbnRhaW5lcikge1xyXG4gICAgICB0aGlzLnZpc2libGVDaGFuZ2UuZW1pdCh0aGlzLnZpc2libGUgYXMgYm9vbGVhbik7XHJcbiAgICAgIHRoaXMuY2xvc2UuZW1pdCgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKHRoaXMucG9ydGFsQXR0YWNoZWQoKSkge1xyXG4gICAgICAgIHRoaXMucG9ydGFsPy5vdmVybGF5UmVmPy5kZXRhY2goKTtcclxuICAgICAgICB0aGlzLnVuc3Vic2NyaWJlKCk7XHJcbiAgICAgICAgdGhpcy52aXNpYmxlQ2hhbmdlLmVtaXQodGhpcy52aXNpYmxlIGFzIGJvb2xlYW4pO1xyXG4gICAgICAgIHRoaXMuY2xvc2UuZW1pdCgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxuZy10ZW1wbGF0ZSAjZHJhd2VyVHBsPlxyXG4gIDxkaXYgY2xhc3M9XCJ4LWRyYXdlci1iYWNrZHJvcFwiICpuZ0lmPVwiY29udGFpbmVyXCIgKGNsaWNrKT1cImNsb3NlUG9ydGFsKClcIj48L2Rpdj5cclxuICA8ZGl2XHJcbiAgICBjbGFzcz1cIngtZHJhd2VyXCJcclxuICAgIFtuZ0NsYXNzXT1cImNsYXNzTWFwXCJcclxuICAgIFtzdHlsZS53aWR0aF09XCJ3aWR0aFwiXHJcbiAgICBbc3R5bGUuaGVpZ2h0XT1cImhlaWdodFwiXHJcbiAgICBbY2xhc3MueC1kcmF3ZXItdmlzaWJsZV09XCJ2aXNpYmxlXCJcclxuICAgIFtAeC1zbGlkZS1hbmltYXRpb25dPVwicGxhY2VtZW50XCJcclxuICA+XHJcbiAgICA8ZGl2IGNsYXNzPVwieC1kcmF3ZXItaGVhZGVyXCIgKm5nSWY9XCJ0aXRsZVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwieC1kcmF3ZXItdGl0bGVcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICp4T3V0bGV0PVwidGl0bGVcIj57eyB0aXRsZSB9fTwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPHgtYnV0dG9uIGNsYXNzPVwieC1kcmF3ZXItY2xvc2VcIiBpY29uPVwiZnRvLXhcIiAoY2xpY2spPVwiY2xvc2VQb3J0YWwoKVwiIG9ubHlJY29uIGNsb3NhYmxlPjwveC1idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJ4LWRyYXdlci1jb250ZW50XCI+XHJcbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG48bmctY29udGFpbmVyICpuZ0lmPVwiY29udGFpbmVyXCI+XHJcbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRyYXdlclRwbFwiPjwvbmctY29udGFpbmVyPlxyXG48L25nLWNvbnRhaW5lcj5cclxuIl19
|
|
124
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhd2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL2RyYXdlci9kcmF3ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvZHJhd2VyL2RyYXdlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULGlCQUFpQixFQUlqQix1QkFBdUIsRUFDdkIsU0FBUyxFQUtULFFBQVEsRUFDUixNQUFNLEVBQ04sV0FBVyxFQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdkYsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsZUFBZSxFQUFrQixXQUFXLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7Ozs7O0FBY3JHLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxlQUFlO0lBVW5ELFlBQ1MsUUFBbUIsRUFDbkIsVUFBbUMsRUFDbkMsR0FBc0IsRUFDdEIsT0FBZ0IsRUFDaEIsYUFBNkIsRUFDN0IsZ0JBQWtDLEVBQ2xDLGFBQTZCLEVBQ1csU0FBcUM7UUFFcEYsS0FBSyxFQUFFLENBQUM7UUFURCxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLGVBQVUsR0FBVixVQUFVLENBQXlCO1FBQ25DLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQ3RCLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDaEIsa0JBQWEsR0FBYixhQUFhLENBQWdCO1FBQzdCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsa0JBQWEsR0FBYixhQUFhLENBQWdCO1FBQ1csY0FBUyxHQUFULFNBQVMsQ0FBNEI7UUFadEYsVUFBSyxHQUF3QixJQUFJLENBQUM7UUFDbEMsVUFBSyxHQUFHLE1BQU0sQ0FBQztRQUNmLFdB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LEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgT25Jbml0LFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG4gIFJlbmRlcmVyMixcclxuICBFbGVtZW50UmVmLFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIFZpZXdDaGlsZCxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIE9uQ2hhbmdlcyxcclxuICBUZW1wbGF0ZVJlZixcclxuICBWaWV3Q29udGFpbmVyUmVmLFxyXG4gIE9wdGlvbmFsLFxyXG4gIEluamVjdCxcclxuICBIb3N0QmluZGluZ1xyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBYRHJhd2VyUHJlZml4LCBYRHJhd2VyUHJvcGVydHksIFhfRFJBV0VSX0NPTlRBSU5FUiB9IGZyb20gJy4vZHJhd2VyLnByb3BlcnR5JztcclxuaW1wb3J0IHsgWElzQ2hhbmdlLCBYSXNFbXB0eSwgWFNsaWRlQW5pbWF0aW9uLCBYQ29uZmlnU2VydmljZSwgWENsZWFyQ2xhc3MgfSBmcm9tICdAbmctbmVzdC91aS9jb3JlJztcclxuaW1wb3J0IHsgWFBvcnRhbFNlcnZpY2UsIFhQb3J0YWxPdmVybGF5UmVmIH0gZnJvbSAnQG5nLW5lc3QvdWkvcG9ydGFsJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IE92ZXJsYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XHJcbmltcG9ydCB7IFhEcmF3ZXJDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL2RyYXdlci1jb250YWluZXIuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBgJHtYRHJhd2VyUHJlZml4fWAsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2RyYXdlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZHJhd2VyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBhbmltYXRpb25zOiBbWFNsaWRlQW5pbWF0aW9uXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgWERyYXdlckNvbXBvbmVudCBleHRlbmRzIFhEcmF3ZXJQcm9wZXJ0eSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLngtZHJhd2VyLXZpc2libGUnKSBnZXQgZ2V0VmlzaWJsZSgpIHtcclxuICAgIHJldHVybiB0aGlzLnZpc2libGU7XHJcbiAgfVxyXG4gIEBWaWV3Q2hpbGQoJ2RyYXdlclRwbCcsIHsgc3RhdGljOiB0cnVlIH0pIGRyYXdlclRwbCE6IFRlbXBsYXRlUmVmPHZvaWQ+O1xyXG4gIHBvcnRhbCE6IFhQb3J0YWxPdmVybGF5UmVmPGFueT47XHJcbiAgYmFjayQ6IFN1YnNjcmlwdGlvbiB8IG51bGwgPSBudWxsO1xyXG4gIHdpZHRoID0gJzEwMCUnO1xyXG4gIGhlaWdodCA9ICcxMDAlJztcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcclxuICAgIHB1YmxpYyBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHVibGljIG92ZXJsYXk6IE92ZXJsYXksXHJcbiAgICBwdWJsaWMgcG9ydGFsU2VydmljZTogWFBvcnRhbFNlcnZpY2UsXHJcbiAgICBwdWJsaWMgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcclxuICAgIHB1YmxpYyBjb25maWdTZXJ2aWNlOiBYQ29uZmlnU2VydmljZSxcclxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoWF9EUkFXRVJfQ09OVEFJTkVSKSBwdWJsaWMgY29udGFpbmVyPzogWERyYXdlckNvbnRhaW5lckNvbXBvbmVudFxyXG4gICkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5zZXRDbGFzc01hcCgpO1xyXG4gICAgdGhpcy5zZXRTaXplKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhzaW1wbGVzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICBjb25zdCB7IHZpc2libGUsIHBsYWNlbWVudCB9ID0gc2ltcGxlcztcclxuICAgIFhJc0NoYW5nZSh2aXNpYmxlKSAmJiB0aGlzLnNldFZpc2libGUoKTtcclxuICAgIGlmIChYSXNDaGFuZ2UocGxhY2VtZW50KSkge1xyXG4gICAgICB0aGlzLnNldENsYXNzTWFwKCk7XHJcbiAgICAgIHRoaXMuc2V0U2l6ZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICB1bnN1YnNjcmliZSgpIHtcclxuICAgIHRoaXMuYmFjayQ/LnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICBzZXRDbGFzc01hcCgpIHtcclxuICAgIFhDbGVhckNsYXNzKHRoaXMuY2xhc3NNYXApO1xyXG4gICAgdGhpcy5jbGFzc01hcCA9IHtcclxuICAgICAgW2Ake1hEcmF3ZXJQcmVmaXh9LSR7dGhpcy5wbGFjZW1lbnR9YF06ICFYSXNFbXB0eSh0aGlzLnBsYWNlbWVudCksXHJcbiAgICAgIFtgJHtYRHJhd2VyUHJlZml4fS1uby10aXRsZWBdOiBYSXNFbXB0eSh0aGlzLnRpdGxlKVxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHNldFNpemUoKSB7XHJcbiAgICBpZiAodGhpcy5jb250YWluZXIpIFt0aGlzLndpZHRoLCB0aGlzLmhlaWdodF0gPSB0aGlzLmdldFNpemUoKTtcclxuICB9XHJcblxyXG4gIGdldFNpemUoKTogc3RyaW5nW10ge1xyXG4gICAgcmV0dXJuIFtcclxuICAgICAgdGhpcy5wbGFjZW1lbnQgPT09ICdsZWZ0JyB8fCB0aGlzLnBsYWNlbWVudCA9PT0gJ3JpZ2h0JyA/IHRoaXMuc2l6ZSEgOiAnMTAwJScsXHJcbiAgICAgIHRoaXMucGxhY2VtZW50ID09PSAndG9wJyB8fCB0aGlzLnBsYWNlbWVudCA9PT0gJ2JvdHRvbScgPyB0aGlzLnNpemUhIDogJzEwMCUnXHJcbiAgICBdO1xyXG4gIH1cclxuXHJcbiAgc2V0VmlzaWJsZSgpIHtcclxuICAgIGlmICh0aGlzLnZpc2libGUpIHtcclxuICAgICAgdGhpcy5jcmVhdGVQb3J0YWwoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY2xvc2VQb3J0YWwoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNyZWF0ZVBvcnRhbCgpIHtcclxuICAgIGlmICh0aGlzLmNvbnRhaW5lcikgcmV0dXJuO1xyXG4gICAgY29uc3QgW3dpZHRoLCBoZWlnaHRdID0gdGhpcy5nZXRTaXplKCk7XHJcbiAgICB0aGlzLnBvcnRhbCA9IHRoaXMucG9ydGFsU2VydmljZS5hdHRhY2goe1xyXG4gICAgICBjb250ZW50OiB0aGlzLmRyYXdlclRwbCxcclxuICAgICAgdmlld0NvbnRhaW5lclJlZjogdGhpcy52aWV3Q29udGFpbmVyUmVmLFxyXG4gICAgICBvdmVybGF5Q29uZmlnOiB7XHJcbiAgICAgICAgaGFzQmFja2Ryb3A6IHRydWUsXHJcbiAgICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMub3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLmJsb2NrKCksXHJcbiAgICAgICAgcG9zaXRpb25TdHJhdGVneTogdGhpcy5wb3J0YWxTZXJ2aWNlLnNldFBvc2l0aW9uKHRoaXMucGxhY2VtZW50LCB3aWR0aCwgaGVpZ2h0KVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIGlmICh0aGlzLnBvcnRhbC5vdmVybGF5UmVmKSB0aGlzLmJhY2skID0gdGhpcy5wb3J0YWwub3ZlcmxheVJlZi5iYWNrZHJvcENsaWNrKCkuc3Vic2NyaWJlKCgpID0+IHRoaXMuY2xvc2VQb3J0YWwoKSk7XHJcbiAgfVxyXG5cclxuICBwb3J0YWxBdHRhY2hlZCgpIHtcclxuICAgIHJldHVybiB0aGlzLnBvcnRhbD8ub3ZlcmxheVJlZj8uaGFzQXR0YWNoZWQoKTtcclxuICB9XHJcblxyXG4gIGNsb3NlUG9ydGFsKCkge1xyXG4gICAgaWYgKHRoaXMuY29udGFpbmVyKSB7XHJcbiAgICAgIHRoaXMudmlzaWJsZUNoYW5nZS5lbWl0KHRoaXMudmlzaWJsZSBhcyBib29sZWFuKTtcclxuICAgICAgdGhpcy5jbG9zZS5lbWl0KCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAodGhpcy5wb3J0YWxBdHRhY2hlZCgpKSB7XHJcbiAgICAgICAgdGhpcy5wb3J0YWw/Lm92ZXJsYXlSZWY/LmRldGFjaCgpO1xyXG4gICAgICAgIHRoaXMudW5zdWJzY3JpYmUoKTtcclxuICAgICAgICB0aGlzLnZpc2libGVDaGFuZ2UuZW1pdCh0aGlzLnZpc2libGUgYXMgYm9vbGVhbik7XHJcbiAgICAgICAgdGhpcy5jbG9zZS5lbWl0KCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPG5nLXRlbXBsYXRlICNkcmF3ZXJUcGw+XHJcbiAgPGRpdiBjbGFzcz1cIngtZHJhd2VyLWJhY2tkcm9wXCIgKm5nSWY9XCJjb250YWluZXJcIiAoY2xpY2spPVwiY2xvc2VQb3J0YWwoKVwiPjwvZGl2PlxyXG4gIDxkaXZcclxuICAgIGNsYXNzPVwieC1kcmF3ZXJcIlxyXG4gICAgW25nQ2xhc3NdPVwiY2xhc3NNYXBcIlxyXG4gICAgW3N0eWxlLndpZHRoXT1cIndpZHRoXCJcclxuICAgIFtzdHlsZS5oZWlnaHRdPVwiaGVpZ2h0XCJcclxuICAgIFtjbGFzcy54LWRyYXdlci12aXNpYmxlXT1cInZpc2libGVcIlxyXG4gICAgW0B4LXNsaWRlLWFuaW1hdGlvbl09XCJwbGFjZW1lbnRcIlxyXG4gID5cclxuICAgIDxkaXYgY2xhc3M9XCJ4LWRyYXdlci1oZWFkZXJcIiAqbmdJZj1cInRpdGxlXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ4LWRyYXdlci10aXRsZVwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKnhPdXRsZXQ9XCJ0aXRsZVwiPnt7IHRpdGxlIH19PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8eC1idXR0b24gY2xhc3M9XCJ4LWRyYXdlci1jbG9zZVwiIGljb249XCJmdG8teFwiIChjbGljayk9XCJjbG9zZVBvcnRhbCgpXCIgb25seUljb24gY2xvc2FibGU+PC94LWJ1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cIngtZHJhd2VyLWNvbnRlbnRcIj5cclxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcbjxuZy1jb250YWluZXIgKm5nSWY9XCJjb250YWluZXJcIj5cclxuICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZHJhd2VyVHBsXCI+PC9uZy1jb250YWluZXI+XHJcbjwvbmctY29udGFpbmVyPlxyXG4iXX0=
|
|
@@ -179,4 +179,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImpor
|
|
|
179
179
|
type: HostListener,
|
|
180
180
|
args: ['mouseleave']
|
|
181
181
|
}] } });
|
|
182
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tcG9ydGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL2Ryb3Bkb3duL2Ryb3Bkb3duLXBvcnRhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS9kcm9wZG93bi9kcm9wZG93bi1wb3J0YWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxpQkFBaUIsRUFFakIsVUFBVSxFQUVWLHVCQUF1QixFQUV2QixZQUFZLEVBRVosV0FBVyxFQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxxQkFBcUIsRUFBbUMsTUFBTSxxQkFBcUIsQ0FBQztBQUM3RixPQUFPLEVBQUUsd0JBQXdCLEVBQXFDLE1BQU0sb0JBQW9CLENBQUM7QUFDakcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLFNBQVMsRUFBc0IsTUFBTSxrQkFBa0IsQ0FBQztBQUN4RixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7O0FBVzNDLE1BQU0sT0FBTyx3QkFBd0I7SUFxRG5DLFlBQ1MsUUFBbUIsRUFDbkIsVUFBc0IsRUFDdEIsR0FBc0IsRUFDckIsYUFBNkIsRUFDN0IsT0FBZ0IsRUFDaEIsZ0JBQWtDO1FBTG5DLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUNyQixrQkFBYSxHQUFiLGFBQWEsQ0FBZ0I7UUFDN0IsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUNoQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBekM1Qyx5QkFBb0IsR0FBaUIsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUduRCxhQUFRLEdBQUcs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Qix3QkFBd0IsbVRDM0JyQyw2YkFnQkEsOHdCRFNjLENBQUMscUJBQXFCLENBQUM7MkZBRXhCLHdCQUF3QjtrQkFScEMsU0FBUzsrQkFDRSxHQUFHLHFCQUFxQixFQUFFLGlCQUdyQixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLENBQUMscUJBQXFCLENBQUM7Mk9BR2MsU0FBUztzQkFBekQsV0FBVzt1QkFBQywyQkFBMkI7Z0JBQ29CLElBQUk7c0JBQS9ELFlBQVk7dUJBQUMsZ0NBQWdDLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBSUcsS0FBSztzQkFBakUsWUFBWTt1QkFBQyxpQ0FBaUMsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkF1Qy9CLFVBQVU7c0JBQXJDLFlBQVk7dUJBQUMsWUFBWTtnQkFJRSxVQUFVO3NCQUFyQyxZQUFZO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICBSZW5kZXJlcjIsXHJcbiAgRWxlbWVudFJlZixcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBPbkRlc3Ryb3ksXHJcbiAgSG9zdExpc3RlbmVyLFxyXG4gIFZpZXdDb250YWluZXJSZWYsXHJcbiAgSG9zdEJpbmRpbmdcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgWERyb3Bkb3duUG9ydGFsUHJlZml4LCBYRHJvcGRvd25Ob2RlLCBYRHJvcGRvd25UcmlnZ2VyIH0gZnJvbSAnLi9kcm9wZG93bi5wcm9wZXJ0eSc7XHJcbmltcG9ydCB7IFhQb3J0YWxDb25uZWN0ZWRQb3NpdGlvbiwgWFBvcnRhbE92ZXJsYXlSZWYsIFhQb3J0YWxTZXJ2aWNlIH0gZnJvbSAnQG5nLW5lc3QvdWkvcG9ydGFsJztcclxuaW1wb3J0IHsgWENvbm5lY3RCYXNlQW5pbWF0aW9uLCBYSXNTdHJpbmcsIFhQb3NpdGlvblRvcEJvdHRvbSB9IGZyb20gJ0BuZy1uZXN0L3VpL2NvcmUnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgQ29ubmVjdGVkT3ZlcmxheVBvc2l0aW9uQ2hhbmdlLCBGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uU3RyYXRlZ3ksIE92ZXJsYXksIE92ZXJsYXlDb25maWcgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogYCR7WERyb3Bkb3duUG9ydGFsUHJlZml4fWAsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2Ryb3Bkb3duLXBvcnRhbC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZHJvcGRvd24tcG9ydGFsLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBhbmltYXRpb25zOiBbWENvbm5lY3RCYXNlQW5pbWF0aW9uXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgWERyb3Bkb3duUG9ydGFsQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcclxuICBASG9zdEJpbmRpbmcoJ0B4LWNvbm5lY3QtYmFzZS1hbmltYXRpb24nKSBwdWJsaWMgcGxhY2VtZW50ITogWFBvc2l0aW9uVG9wQm90dG9tO1xyXG4gIEBIb3N0TGlzdGVuZXIoJ0B4LWNvbm5lY3QtYmFzZS1hbmltYXRpb24uZG9uZScsIFsnJGV2ZW50J10pIGRvbmUoZXZlbnQ6IHsgdG9TdGF0ZTogYW55IH0pIHtcclxuICAgIHRoaXMuYW5pbWF0aW5nKGZhbHNlKTtcclxuICAgIGV2ZW50LnRvU3RhdGUgPT09ICd2b2lkJyAmJiB0aGlzLmRlc3Ryb3lQb3J0YWwoKTtcclxuICB9XHJcbiAgQEhvc3RMaXN0ZW5lcignQHgtY29ubmVjdC1iYXNlLWFuaW1hdGlvbi5zdGFydCcsIFsnJGV2ZW50J10pIHN0YXJ0KCkge1xyXG4gICAgdGhpcy5hbmltYXRpbmcodHJ1ZSk7XHJcbiAgfVxyXG4gIGRhdGEhOiBYRHJvcGRvd25Ob2RlW107XHJcbiAgdHJpZ2dlciE6IFhEcm9wZG93blRyaWdnZXI7XHJcbiAgY2xvc2UhOiBGdW5jdGlvbjtcclxuICBub2RlRW1pdCE6IEZ1bmN0aW9uO1xyXG4gIHBvcnRhbEhvdmVyITogRnVuY3Rpb247XHJcbiAgYW5pbWF0aW5nITogRnVuY3Rpb247XHJcbiAgZGVzdHJveVBvcnRhbCE6IEZ1bmN0aW9uO1xyXG4gIHBvcnRhbCE6IFhQb3J0YWxPdmVybGF5UmVmPFhEcm9wZG93blBvcnRhbENvbXBvbmVudD47XHJcbiAgcG9zaXRpb25DaGFuZ2UhOiBTdWJqZWN0PGFueT47XHJcbiAgcG9ydGFsUG9zaXRpb25DaGFuZ2U6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0KCk7XHJcbiAgbm9kZSE6IFhEcm9wZG93bk5vZGU7XHJcbiAgdGltZW91dEhpZGU6IGFueTtcclxuICB0aW1lc3BhbiA9IDIwMDtcclxuICBtaW5XaWR0aCE6IHN0cmluZyB8IG51bWJlcjtcclxuICBtYXhXaWR0aCE6IHN0cmluZyB8IG51bWJlcjtcclxuICBtaW5IZWlnaHQhOiBzdHJpbmcgfCBudW1iZXI7XHJcbiAgbWF4SGVpZ2h0ITogc3RyaW5nIHwgbnVtYmVyO1xyXG4gIHBvcnRhbFBsYWNlbWVudCE6IFhQb3NpdGlvblRvcEJvdHRvbTtcclxuICBjaGlsZEFuaW1hdGluZyA9IGZhbHNlO1xyXG4gIGFjdGl2YXRlZElkITogYW55O1xyXG4gIGFjdGl2YXRlZElkU3ViITogU3ViamVjdDxhbnk+O1xyXG4gIHByaXZhdGUgX3VuU3ViamVjdCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcblxyXG4gIGdldCBnZXRNaW5XaWR0aCgpIHtcclxuICAgIHJldHVybiBYSXNTdHJpbmcodGhpcy5taW5XaWR0aCkgPyB0aGlzLm1pbldpZHRoIDogYCR7dGhpcy5taW5XaWR0aH1weGA7XHJcbiAgfVxyXG4gIGdldCBnZXRNYXhXaWR0aCgpIHtcclxuICAgIHJldHVybiBYSXNTdHJpbmcodGhpcy5tYXhXaWR0aCkgPyB0aGlzLm1heFdpZHRoIDogYCR7dGhpcy5tYXhXaWR0aH1weGA7XHJcbiAgfVxyXG4gIGdldCBnZXRNaW5IZWlnaHQoKSB7XHJcbiAgICByZXR1cm4gWElzU3RyaW5nKHRoaXMubWluSGVpZ2h0KSA/IHRoaXMubWluSGVpZ2h0IDogYCR7dGhpcy5taW5IZWlnaHR9cHhgO1xyXG4gIH1cclxuICBnZXQgZ2V0TWF4SGVpZ2h0KCkge1xyXG4gICAgcmV0dXJuIFhJc1N0cmluZyh0aGlzLm1heEhlaWdodCkgPyB0aGlzLm1heEhlaWdodCA6IGAke3RoaXMubWF4SGVpZ2h0fXB4YDtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlZW50ZXInKSBtb3VzZWVudGVyKCkge1xyXG4gICAgdGhpcy5wb3J0YWxIb3Zlcih0cnVlKTtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlbGVhdmUnKSBtb3VzZWxlYXZlKCkge1xyXG4gICAgIXRoaXMucG9ydGFsQXR0YWNoZWQoKSAmJiB0aGlzLnBvcnRhbEhvdmVyKGZhbHNlKTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHJlbmRlcmVyOiBSZW5kZXJlcjIsXHJcbiAgICBwdWJsaWMgZWxlbWVudFJlZjogRWxlbWVudFJlZixcclxuICAgIHB1YmxpYyBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSBwb3J0YWxTZXJ2aWNlOiBYUG9ydGFsU2VydmljZSxcclxuICAgIHByaXZhdGUgb3ZlcmxheTogT3ZlcmxheSxcclxuICAgIHByaXZhdGUgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZlxyXG4gICkge31cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnBvc2l0aW9uQ2hhbmdlLnBpcGUodGFrZVVudGlsKHRoaXMuX3VuU3ViamVjdCkpLnN1YnNjcmliZSgoeCkgPT4ge1xyXG4gICAgICB0aGlzLnBsYWNlbWVudCA9IHg7XHJcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge31cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLl91blN1YmplY3QubmV4dCgpO1xyXG4gICAgdGhpcy5fdW5TdWJqZWN0LnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICBub2RlQ2xpY2sobm9kZTogWERyb3Bkb3duTm9kZSkge1xyXG4gICAgaWYgKCFub2RlLmxlYWYpIHtcclxuICAgICAgdGhpcy5jbG9zZSgpO1xyXG4gICAgICB0aGlzLmFjdGl2YXRlZElkID0gbm9kZS5pZDtcclxuICAgICAgdGhpcy5hY3RpdmF0ZWRJZFN1Yi5uZXh0KHRoaXMuYWN0aXZhdGVkSWQpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5ub2RlRW1pdChub2RlKTtcclxuICB9XHJcblxyXG4gIHBvcnRhbEF0dGFjaGVkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMucG9ydGFsPy5vdmVybGF5UmVmPy5oYXNBdHRhY2hlZCgpO1xyXG4gIH1cclxuXHJcbiAgY2xvc2VQb3J0YWwoKSB7XHJcbiAgICBpZiAodGhpcy5wb3J0YWxBdHRhY2hlZCgpKSB7XHJcbiAgICAgIHRoaXMucG9ydGFsPy5vdmVybGF5UmVmPy5kaXNwb3NlKCk7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgY3JlYXRlUG9ydGFsKCkge1xyXG4gICAgY29uc3QgY29uZmlnOiBPdmVybGF5Q29uZmlnID0ge1xyXG4gICAgICBiYWNrZHJvcENsYXNzOiAnJyxcclxuICAgICAgcGFuZWxDbGFzczogJ3gtZHJvcGRvd24tcG9ydGFsLWNoaWxkJyxcclxuICAgICAgcG9zaXRpb25TdHJhdGVneTogdGhpcy5zZXRQbGFjZW1lbnQoKSxcclxuICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMub3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLnJlcG9zaXRpb24oKSxcclxuICAgICAgbWluV2lkdGg6IHRoaXMubWluV2lkdGhcclxuICAgIH07XHJcbiAgICB0aGlzLnNldFBvc2l0aW9uKGNvbmZpZyk7XHJcbiAgICB0aGlzLnBvcnRhbCA9IHRoaXMucG9ydGFsU2VydmljZS5hdHRhY2goe1xyXG4gICAgICBjb250ZW50OiBYRHJvcGRvd25Qb3J0YWxDb21wb25lbnQsXHJcbiAgICAgIHZpZXdDb250YWluZXJSZWY6IHRoaXMudmlld0NvbnRhaW5lclJlZixcclxuICAgICAgb3ZlcmxheUNvbmZpZzogY29uZmlnXHJcbiAgICB9KTtcclxuICAgIHRoaXMuc2V0SW5zdGFuY2UoKTtcclxuICB9XHJcblxyXG4gIHNldFBvc2l0aW9uKGNvbmZpZzogT3ZlcmxheUNvbmZpZykge1xyXG4gICAgbGV0IHBvc2l0aW9uID0gY29uZmlnLnBvc2l0aW9uU3RyYXRlZ3kgYXMgRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5O1xyXG4gICAgcG9zaXRpb24ucG9zaXRpb25DaGFuZ2VzLnBpcGUodGFrZVVudGlsKHRoaXMuX3VuU3ViamVjdCkpLnN1YnNjcmliZSgocG9zOiBDb25uZWN0ZWRPdmVybGF5UG9zaXRpb25DaGFuZ2UpID0+IHtcclxuICAgICAgY29uc3QgcGxhY2UgPSBYUG9ydGFsQ29ubmVjdGVkUG9zaXRpb24uZ2V0KHBvcy5jb25uZWN0aW9uUGFpcikgYXMgWFBvc2l0aW9uVG9wQm90dG9tO1xyXG4gICAgICBwbGFjZSAhPT0gdGhpcy5wb3J0YWxQbGFjZW1lbnQgJiYgdGhpcy5wb3J0YWxQb3NpdGlvbkNoYW5nZS5uZXh0KHBsYWNlKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc2V0SW5zdGFuY2UoKSB7XHJcbiAgICBsZXQgY29tcG9uZW50UmVmID0gdGhpcy5wb3J0YWw/LmNvbXBvbmVudFJlZjtcclxuICAgIGlmICghY29tcG9uZW50UmVmKSByZXR1cm47XHJcbiAgICBPYmplY3QuYXNzaWduKGNvbXBvbmVudFJlZi5pbnN0YW5jZSwge1xyXG4gICAgICBkYXRhOiB0aGlzLm5vZGU/LmNoaWxkcmVuLFxyXG4gICAgICBtaW5XaWR0aDogdGhpcy5taW5XaWR0aCxcclxuICAgICAgbWF4V2lkdGg6IHRoaXMubWF4V2lkdGgsXHJcbiAgICAgIG1pbkhlaWdodDogdGhpcy5taW5IZWlnaHQsXHJcbiAgICAgIG1heEhlaWdodDogdGhpcy5tYXhIZWlnaHQsXHJcbiAgICAgIGNsb3NlOiAoKSA9PiB0aGlzLmNsb3NlUG9ydGFsKCksXHJcbiAgICAgIHBsYWNlbWVudDogdGhpcy5wb3J0YWxQbGFjZW1lbnQsXHJcbiAgICAgIHBvc2l0aW9uQ2hhbmdlOiB0aGlzLnBvcnRhbFBvc2l0aW9uQ2hhbmdlLFxyXG4gICAgICBhY3RpdmF0ZWRJZDogdGhpcy5hY3RpdmF0ZWRJZCxcclxuICAgICAgYWN0aXZhdGVkSWRTdWI6IHRoaXMuYWN0aXZhdGVkSWRTdWIsXHJcbiAgICAgIG5vZGVFbWl0OiAobm9kZTogWERyb3Bkb3duTm9kZSkgPT4gdGhpcy5ub2RlQ2xpY2sobm9kZSksXHJcbiAgICAgIHBvcnRhbEhvdmVyOiAoaG92ZXI6IGJvb2xlYW4pID0+IHRoaXMuaG92ZXIoaG92ZXIpLFxyXG4gICAgICBhbmltYXRpbmc6IChpbmc6IGJvb2xlYW4pID0+ICh0aGlzLmNoaWxkQW5pbWF0aW5nID0gaW5nKVxyXG4gICAgfSk7XHJcbiAgICBjb21wb25lbnRSZWYuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgaG92ZXIoaG92ZXI6IGJvb2xlYW4pIHtcclxuICAgIGlmICh0aGlzLnRpbWVvdXRIaWRlICYmIGhvdmVyKSB7XHJcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLnRpbWVvdXRIaWRlKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMucG9ydGFsSG92ZXIoZmFsc2UpO1xyXG4gICAgICB0aGlzLm9uTGVhdmUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNldFBsYWNlbWVudCgpIHtcclxuICAgIHJldHVybiB0aGlzLnBvcnRhbFNlcnZpY2Uuc2V0UGxhY2VtZW50KHtcclxuICAgICAgZWxlbWVudFJlZjogbmV3IEVsZW1lbnRSZWYodGhpcy5ub2RlPy5ldmVudD8udGFyZ2V0KSxcclxuICAgICAgcGxhY2VtZW50OiBbJ3JpZ2h0LXN0YXJ0JywgJ3JpZ2h0LWVuZCcsICdsZWZ0LXN0YXJ0JywgJ2xlZnQtZW5kJ10sXHJcbiAgICAgIHRyYW5zZm9ybU9yaWdpbk9uOiAneC1kcm9wZG93bi1wb3J0YWwnXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9uRW50ZXIobm9kZTogWERyb3Bkb3duTm9kZSkge1xyXG4gICAgaWYgKCFub2RlLmxlYWYgfHwgbm9kZS5kaXNhYmxlZCB8fCB0aGlzLmNoaWxkQW5pbWF0aW5nKSByZXR1cm47XHJcbiAgICBpZiAodGhpcy50aW1lb3V0SGlkZSkgY2xlYXJUaW1lb3V0KHRoaXMudGltZW91dEhpZGUpO1xyXG4gICAgaWYgKHRoaXMucG9ydGFsQXR0YWNoZWQoKSAmJiB0aGlzLm5vZGU/LmlkICE9PSBub2RlLmlkKSB7XHJcbiAgICAgIHRoaXMucG9ydGFsPy5vdmVybGF5UmVmPy5kaXNwb3NlKCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLm5vZGUgPSBub2RlO1xyXG4gICAgaWYgKCF0aGlzLnBvcnRhbEF0dGFjaGVkKCkpIHtcclxuICAgICAgdGhpcy5jcmVhdGVQb3J0YWwoKTtcclxuICAgIH1cclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIG9uTGVhdmUoKSB7XHJcbiAgICBpZiAodGhpcy5wb3J0YWxBdHRhY2hlZCgpKSB7XHJcbiAgICAgIHRoaXMudGltZW91dEhpZGUgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLnBvcnRhbD8ub3ZlcmxheVJlZj8uZGlzcG9zZSgpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGRpdlxyXG4gICNkcm9wZG93blBvcnRhbFxyXG4gIGNsYXNzPVwieC1kcm9wZG93bi1wb3J0YWxcIlxyXG4gIFtzdHlsZS5taW5XaWR0aF09XCJnZXRNaW5XaWR0aFwiXHJcbiAgW3N0eWxlLm1heFdpZHRoXT1cImdldE1heFdpZHRoXCJcclxuICBbc3R5bGUubWluSGVpZ2h0XT1cImdldE1pbkhlaWdodFwiXHJcbiAgW3N0eWxlLm1heEhlaWdodF09XCJnZXRNYXhIZWlnaHRcIlxyXG4+XHJcbiAgPHgtbGlzdFxyXG4gICAgW2RhdGFdPVwiZGF0YVwiXHJcbiAgICAobm9kZUNsaWNrKT1cIm5vZGVDbGljaygkZXZlbnQpXCJcclxuICAgIFsobmdNb2RlbCldPVwiYWN0aXZhdGVkSWRcIlxyXG4gICAgKG5vZGVNb3VzZWVudGVyKT1cIm9uRW50ZXIoJGV2ZW50KVwiXHJcbiAgICAobm9kZU1vdXNlbGVhdmUpPVwib25MZWF2ZSgpXCJcclxuICA+PC94LWxpc3Q+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
182
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tcG9ydGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL2Ryb3Bkb3duL2Ryb3Bkb3duLXBvcnRhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS9kcm9wZG93bi9kcm9wZG93bi1wb3J0YWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxpQkFBaUIsRUFFakIsVUFBVSxFQUVWLHVCQUF1QixFQUV2QixZQUFZLEVBRVosV0FBVyxFQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxxQkFBcUIsRUFBbUMsTUFBTSxxQkFBcUIsQ0FBQztBQUM3RixPQUFPLEVBQUUsd0JBQXdCLEVBQXFDLE1BQU0sb0JBQW9CLENBQUM7QUFDakcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLFNBQVMsRUFBc0IsTUFBTSxrQkFBa0IsQ0FBQztBQUN4RixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7O0FBVzNDLE1BQU0sT0FBTyx3QkFBd0I7SUFxRG5DLFlBQ1MsUUFBbUIsRUFDbkIsVUFBbUMsRUFDbkMsR0FBc0IsRUFDckIsYUFBNkIsRUFDN0IsT0FBZ0IsRUFDaEIsZ0JBQWtDO1FBTG5DLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFDbkMsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDckIsa0JBQWEsR0FBYixhQUFhLENBQWdCO1FBQzdCLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDaEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQXpDNUMseUJBQW9CLEdBQWlCLElBQUksT0FBTyxFQUFFLENBQUM7UUFHbkQsYUFBUSxHQUFH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eEIsd0JBQXdCLG1UQzNCckMsNmJBZ0JBLDh3QkRTYyxDQUFDLHFCQUFxQixDQUFDOzJGQUV4Qix3QkFBd0I7a0JBUnBDLFNBQVM7K0JBQ0UsR0FBRyxxQkFBcUIsRUFBRSxpQkFHckIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxDQUFDLHFCQUFxQixDQUFDOzJPQUdjLFNBQVM7c0JBQXpELFdBQVc7dUJBQUMsMkJBQTJCO2dCQUNvQixJQUFJO3NCQUEvRCxZQUFZO3VCQUFDLGdDQUFnQyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQUlHLEtBQUs7c0JBQWpFLFlBQVk7dUJBQUMsaUNBQWlDLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBdUMvQixVQUFVO3NCQUFyQyxZQUFZO3VCQUFDLFlBQVk7Z0JBSUUsVUFBVTtzQkFBckMsWUFBWTt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbiAgUmVuZGVyZXIyLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgT25EZXN0cm95LFxyXG4gIEhvc3RMaXN0ZW5lcixcclxuICBWaWV3Q29udGFpbmVyUmVmLFxyXG4gIEhvc3RCaW5kaW5nXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFhEcm9wZG93blBvcnRhbFByZWZpeCwgWERyb3Bkb3duTm9kZSwgWERyb3Bkb3duVHJpZ2dlciB9IGZyb20gJy4vZHJvcGRvd24ucHJvcGVydHknO1xyXG5pbXBvcnQgeyBYUG9ydGFsQ29ubmVjdGVkUG9zaXRpb24sIFhQb3J0YWxPdmVybGF5UmVmLCBYUG9ydGFsU2VydmljZSB9IGZyb20gJ0BuZy1uZXN0L3VpL3BvcnRhbCc7XHJcbmltcG9ydCB7IFhDb25uZWN0QmFzZUFuaW1hdGlvbiwgWElzU3RyaW5nLCBYUG9zaXRpb25Ub3BCb3R0b20gfSBmcm9tICdAbmctbmVzdC91aS9jb3JlJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IENvbm5lY3RlZE92ZXJsYXlQb3NpdGlvbkNoYW5nZSwgRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5LCBPdmVybGF5LCBPdmVybGF5Q29uZmlnIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IGAke1hEcm9wZG93blBvcnRhbFByZWZpeH1gLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9kcm9wZG93bi1wb3J0YWwuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2Ryb3Bkb3duLXBvcnRhbC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgYW5pbWF0aW9uczogW1hDb25uZWN0QmFzZUFuaW1hdGlvbl1cclxufSlcclxuZXhwb3J0IGNsYXNzIFhEcm9wZG93blBvcnRhbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XHJcbiAgQEhvc3RCaW5kaW5nKCdAeC1jb25uZWN0LWJhc2UtYW5pbWF0aW9uJykgcHVibGljIHBsYWNlbWVudCE6IFhQb3NpdGlvblRvcEJvdHRvbTtcclxuICBASG9zdExpc3RlbmVyKCdAeC1jb25uZWN0LWJhc2UtYW5pbWF0aW9uLmRvbmUnLCBbJyRldmVudCddKSBkb25lKGV2ZW50OiB7IHRvU3RhdGU6IGFueSB9KSB7XHJcbiAgICB0aGlzLmFuaW1hdGluZyhmYWxzZSk7XHJcbiAgICBldmVudC50b1N0YXRlID09PSAndm9pZCcgJiYgdGhpcy5kZXN0cm95UG9ydGFsKCk7XHJcbiAgfVxyXG4gIEBIb3N0TGlzdGVuZXIoJ0B4LWNvbm5lY3QtYmFzZS1hbmltYXRpb24uc3RhcnQnLCBbJyRldmVudCddKSBzdGFydCgpIHtcclxuICAgIHRoaXMuYW5pbWF0aW5nKHRydWUpO1xyXG4gIH1cclxuICBkYXRhITogWERyb3Bkb3duTm9kZVtdO1xyXG4gIHRyaWdnZXIhOiBYRHJvcGRvd25UcmlnZ2VyO1xyXG4gIGNsb3NlITogRnVuY3Rpb247XHJcbiAgbm9kZUVtaXQhOiBGdW5jdGlvbjtcclxuICBwb3J0YWxIb3ZlciE6IEZ1bmN0aW9uO1xyXG4gIGFuaW1hdGluZyE6IEZ1bmN0aW9uO1xyXG4gIGRlc3Ryb3lQb3J0YWwhOiBGdW5jdGlvbjtcclxuICBwb3J0YWwhOiBYUG9ydGFsT3ZlcmxheVJlZjxYRHJvcGRvd25Qb3J0YWxDb21wb25lbnQ+O1xyXG4gIHBvc2l0aW9uQ2hhbmdlITogU3ViamVjdDxhbnk+O1xyXG4gIHBvcnRhbFBvc2l0aW9uQ2hhbmdlOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdCgpO1xyXG4gIG5vZGUhOiBYRHJvcGRvd25Ob2RlO1xyXG4gIHRpbWVvdXRIaWRlOiBhbnk7XHJcbiAgdGltZXNwYW4gPSAyMDA7XHJcbiAgbWluV2lkdGghOiBzdHJpbmcgfCBudW1iZXI7XHJcbiAgbWF4V2lkdGghOiBzdHJpbmcgfCBudW1iZXI7XHJcbiAgbWluSGVpZ2h0ITogc3RyaW5nIHwgbnVtYmVyO1xyXG4gIG1heEhlaWdodCE6IHN0cmluZyB8IG51bWJlcjtcclxuICBwb3J0YWxQbGFjZW1lbnQhOiBYUG9zaXRpb25Ub3BCb3R0b207XHJcbiAgY2hpbGRBbmltYXRpbmcgPSBmYWxzZTtcclxuICBhY3RpdmF0ZWRJZCE6IGFueTtcclxuICBhY3RpdmF0ZWRJZFN1YiE6IFN1YmplY3Q8YW55PjtcclxuICBwcml2YXRlIF91blN1YmplY3QgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG5cclxuICBnZXQgZ2V0TWluV2lkdGgoKSB7XHJcbiAgICByZXR1cm4gWElzU3RyaW5nKHRoaXMubWluV2lkdGgpID8gdGhpcy5taW5XaWR0aCA6IGAke3RoaXMubWluV2lkdGh9cHhgO1xyXG4gIH1cclxuICBnZXQgZ2V0TWF4V2lkdGgoKSB7XHJcbiAgICByZXR1cm4gWElzU3RyaW5nKHRoaXMubWF4V2lkdGgpID8gdGhpcy5tYXhXaWR0aCA6IGAke3RoaXMubWF4V2lkdGh9cHhgO1xyXG4gIH1cclxuICBnZXQgZ2V0TWluSGVpZ2h0KCkge1xyXG4gICAgcmV0dXJuIFhJc1N0cmluZyh0aGlzLm1pbkhlaWdodCkgPyB0aGlzLm1pbkhlaWdodCA6IGAke3RoaXMubWluSGVpZ2h0fXB4YDtcclxuICB9XHJcbiAgZ2V0IGdldE1heEhlaWdodCgpIHtcclxuICAgIHJldHVybiBYSXNTdHJpbmcodGhpcy5tYXhIZWlnaHQpID8gdGhpcy5tYXhIZWlnaHQgOiBgJHt0aGlzLm1heEhlaWdodH1weGA7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdtb3VzZWVudGVyJykgbW91c2VlbnRlcigpIHtcclxuICAgIHRoaXMucG9ydGFsSG92ZXIodHJ1ZSk7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdtb3VzZWxlYXZlJykgbW91c2VsZWF2ZSgpIHtcclxuICAgICF0aGlzLnBvcnRhbEF0dGFjaGVkKCkgJiYgdGhpcy5wb3J0YWxIb3ZlcihmYWxzZSk7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyByZW5kZXJlcjogUmVuZGVyZXIyLFxyXG4gICAgcHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxyXG4gICAgcHVibGljIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIHBvcnRhbFNlcnZpY2U6IFhQb3J0YWxTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBvdmVybGF5OiBPdmVybGF5LFxyXG4gICAgcHJpdmF0ZSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMucG9zaXRpb25DaGFuZ2UucGlwZSh0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KSkuc3Vic2NyaWJlKCh4KSA9PiB7XHJcbiAgICAgIHRoaXMucGxhY2VtZW50ID0geDtcclxuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7fVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3VuU3ViamVjdC5uZXh0KCk7XHJcbiAgICB0aGlzLl91blN1YmplY3QudW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIG5vZGVDbGljayhub2RlOiBYRHJvcGRvd25Ob2RlKSB7XHJcbiAgICBpZiAoIW5vZGUubGVhZikge1xyXG4gICAgICB0aGlzLmNsb3NlKCk7XHJcbiAgICAgIHRoaXMuYWN0aXZhdGVkSWQgPSBub2RlLmlkO1xyXG4gICAgICB0aGlzLmFjdGl2YXRlZElkU3ViLm5leHQodGhpcy5hY3RpdmF0ZWRJZCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLm5vZGVFbWl0KG5vZGUpO1xyXG4gIH1cclxuXHJcbiAgcG9ydGFsQXR0YWNoZWQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5wb3J0YWw/Lm92ZXJsYXlSZWY/Lmhhc0F0dGFjaGVkKCk7XHJcbiAgfVxyXG5cclxuICBjbG9zZVBvcnRhbCgpIHtcclxuICAgIGlmICh0aGlzLnBvcnRhbEF0dGFjaGVkKCkpIHtcclxuICAgICAgdGhpcy5wb3J0YWw/Lm92ZXJsYXlSZWY/LmRpc3Bvc2UoKTtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBjcmVhdGVQb3J0YWwoKSB7XHJcbiAgICBjb25zdCBjb25maWc6IE92ZXJsYXlDb25maWcgPSB7XHJcbiAgICAgIGJhY2tkcm9wQ2xhc3M6ICcnLFxyXG4gICAgICBwYW5lbENsYXNzOiAneC1kcm9wZG93bi1wb3J0YWwtY2hpbGQnLFxyXG4gICAgICBwb3NpdGlvblN0cmF0ZWd5OiB0aGlzLnNldFBsYWNlbWVudCgpLFxyXG4gICAgICBzY3JvbGxTdHJhdGVneTogdGhpcy5vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMucmVwb3NpdGlvbigpLFxyXG4gICAgICBtaW5XaWR0aDogdGhpcy5taW5XaWR0aFxyXG4gICAgfTtcclxuICAgIHRoaXMuc2V0UG9zaXRpb24oY29uZmlnKTtcclxuICAgIHRoaXMucG9ydGFsID0gdGhpcy5wb3J0YWxTZXJ2aWNlLmF0dGFjaCh7XHJcbiAgICAgIGNvbnRlbnQ6IFhEcm9wZG93blBvcnRhbENvbXBvbmVudCxcclxuICAgICAgdmlld0NvbnRhaW5lclJlZjogdGhpcy52aWV3Q29udGFpbmVyUmVmLFxyXG4gICAgICBvdmVybGF5Q29uZmlnOiBjb25maWdcclxuICAgIH0pO1xyXG4gICAgdGhpcy5zZXRJbnN0YW5jZSgpO1xyXG4gIH1cclxuXHJcbiAgc2V0UG9zaXRpb24oY29uZmlnOiBPdmVybGF5Q29uZmlnKSB7XHJcbiAgICBsZXQgcG9zaXRpb24gPSBjb25maWcucG9zaXRpb25TdHJhdGVneSBhcyBGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uU3RyYXRlZ3k7XHJcbiAgICBwb3NpdGlvbi5wb3NpdGlvbkNoYW5nZXMucGlwZSh0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KSkuc3Vic2NyaWJlKChwb3M6IENvbm5lY3RlZE92ZXJsYXlQb3NpdGlvbkNoYW5nZSkgPT4ge1xyXG4gICAgICBjb25zdCBwbGFjZSA9IFhQb3J0YWxDb25uZWN0ZWRQb3NpdGlvbi5nZXQocG9zLmNvbm5lY3Rpb25QYWlyKSBhcyBYUG9zaXRpb25Ub3BCb3R0b207XHJcbiAgICAgIHBsYWNlICE9PSB0aGlzLnBvcnRhbFBsYWNlbWVudCAmJiB0aGlzLnBvcnRhbFBvc2l0aW9uQ2hhbmdlLm5leHQocGxhY2UpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBzZXRJbnN0YW5jZSgpIHtcclxuICAgIGxldCBjb21wb25lbnRSZWYgPSB0aGlzLnBvcnRhbD8uY29tcG9uZW50UmVmO1xyXG4gICAgaWYgKCFjb21wb25lbnRSZWYpIHJldHVybjtcclxuICAgIE9iamVjdC5hc3NpZ24oY29tcG9uZW50UmVmLmluc3RhbmNlLCB7XHJcbiAgICAgIGRhdGE6IHRoaXMubm9kZT8uY2hpbGRyZW4sXHJcbiAgICAgIG1pbldpZHRoOiB0aGlzLm1pbldpZHRoLFxyXG4gICAgICBtYXhXaWR0aDogdGhpcy5tYXhXaWR0aCxcclxuICAgICAgbWluSGVpZ2h0OiB0aGlzLm1pbkhlaWdodCxcclxuICAgICAgbWF4SGVpZ2h0OiB0aGlzLm1heEhlaWdodCxcclxuICAgICAgY2xvc2U6ICgpID0+IHRoaXMuY2xvc2VQb3J0YWwoKSxcclxuICAgICAgcGxhY2VtZW50OiB0aGlzLnBvcnRhbFBsYWNlbWVudCxcclxuICAgICAgcG9zaXRpb25DaGFuZ2U6IHRoaXMucG9ydGFsUG9zaXRpb25DaGFuZ2UsXHJcbiAgICAgIGFjdGl2YXRlZElkOiB0aGlzLmFjdGl2YXRlZElkLFxyXG4gICAgICBhY3RpdmF0ZWRJZFN1YjogdGhpcy5hY3RpdmF0ZWRJZFN1YixcclxuICAgICAgbm9kZUVtaXQ6IChub2RlOiBYRHJvcGRvd25Ob2RlKSA9PiB0aGlzLm5vZGVDbGljayhub2RlKSxcclxuICAgICAgcG9ydGFsSG92ZXI6IChob3ZlcjogYm9vbGVhbikgPT4gdGhpcy5ob3Zlcihob3ZlciksXHJcbiAgICAgIGFuaW1hdGluZzogKGluZzogYm9vbGVhbikgPT4gKHRoaXMuY2hpbGRBbmltYXRpbmcgPSBpbmcpXHJcbiAgICB9KTtcclxuICAgIGNvbXBvbmVudFJlZi5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBob3Zlcihob3ZlcjogYm9vbGVhbikge1xyXG4gICAgaWYgKHRoaXMudGltZW91dEhpZGUgJiYgaG92ZXIpIHtcclxuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMudGltZW91dEhpZGUpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5wb3J0YWxIb3ZlcihmYWxzZSk7XHJcbiAgICAgIHRoaXMub25MZWF2ZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2V0UGxhY2VtZW50KCkge1xyXG4gICAgcmV0dXJuIHRoaXMucG9ydGFsU2VydmljZS5zZXRQbGFjZW1lbnQoe1xyXG4gICAgICBlbGVtZW50UmVmOiBuZXcgRWxlbWVudFJlZih0aGlzLm5vZGU/LmV2ZW50Py50YXJnZXQpLFxyXG4gICAgICBwbGFjZW1lbnQ6IFsncmlnaHQtc3RhcnQnLCAncmlnaHQtZW5kJywgJ2xlZnQtc3RhcnQnLCAnbGVmdC1lbmQnXSxcclxuICAgICAgdHJhbnNmb3JtT3JpZ2luT246ICd4LWRyb3Bkb3duLXBvcnRhbCdcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb25FbnRlcihub2RlOiBYRHJvcGRvd25Ob2RlKSB7XHJcbiAgICBpZiAoIW5vZGUubGVhZiB8fCBub2RlLmRpc2FibGVkIHx8IHRoaXMuY2hpbGRBbmltYXRpbmcpIHJldHVybjtcclxuICAgIGlmICh0aGlzLnRpbWVvdXRIaWRlKSBjbGVhclRpbWVvdXQodGhpcy50aW1lb3V0SGlkZSk7XHJcbiAgICBpZiAodGhpcy5wb3J0YWxBdHRhY2hlZCgpICYmIHRoaXMubm9kZT8uaWQgIT09IG5vZGUuaWQpIHtcclxuICAgICAgdGhpcy5wb3J0YWw/Lm92ZXJsYXlSZWY/LmRpc3Bvc2UoKTtcclxuICAgIH1cclxuICAgIHRoaXMubm9kZSA9IG5vZGU7XHJcbiAgICBpZiAoIXRoaXMucG9ydGFsQXR0YWNoZWQoKSkge1xyXG4gICAgICB0aGlzLmNyZWF0ZVBvcnRhbCgpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgb25MZWF2ZSgpIHtcclxuICAgIGlmICh0aGlzLnBvcnRhbEF0dGFjaGVkKCkpIHtcclxuICAgICAgdGhpcy50aW1lb3V0SGlkZSA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMucG9ydGFsPy5vdmVybGF5UmVmPy5kaXNwb3NlKCk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2XHJcbiAgI2Ryb3Bkb3duUG9ydGFsXHJcbiAgY2xhc3M9XCJ4LWRyb3Bkb3duLXBvcnRhbFwiXHJcbiAgW3N0eWxlLm1pbldpZHRoXT1cImdldE1pbldpZHRoXCJcclxuICBbc3R5bGUubWF4V2lkdGhdPVwiZ2V0TWF4V2lkdGhcIlxyXG4gIFtzdHlsZS5taW5IZWlnaHRdPVwiZ2V0TWluSGVpZ2h0XCJcclxuICBbc3R5bGUubWF4SGVpZ2h0XT1cImdldE1heEhlaWdodFwiXHJcbj5cclxuICA8eC1saXN0XHJcbiAgICBbZGF0YV09XCJkYXRhXCJcclxuICAgIChub2RlQ2xpY2spPVwibm9kZUNsaWNrKCRldmVudClcIlxyXG4gICAgWyhuZ01vZGVsKV09XCJhY3RpdmF0ZWRJZFwiXHJcbiAgICAobm9kZU1vdXNlZW50ZXIpPVwib25FbnRlcigkZXZlbnQpXCJcclxuICAgIChub2RlTW91c2VsZWF2ZSk9XCJvbkxlYXZlKClcIlxyXG4gID48L3gtbGlzdD5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -196,4 +196,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImpor
|
|
|
196
196
|
type: ViewChild,
|
|
197
197
|
args: ['dropdown', { static: true }]
|
|
198
198
|
}] } });
|
|
199
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvZHJvcGRvd24vZHJvcGRvd24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvZHJvcGRvd24vZHJvcGRvd24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxpQkFBaUIsRUFJakIsdUJBQXVCLEVBSXZCLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZUFBZSxFQUFpQixpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hGLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQWtELE1BQU0sa0JBQWtCLENBQUM7QUFDL0gsT0FBTyxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbkMsT0FBTyxFQUFFLHdCQUF3QixFQUFxQyxNQUFNLG9CQUFvQixDQUFDO0FBQ2pHLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7QUFVaEUsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGlCQUFpQjtJQWdCdkQsWUFDUyxRQUFtQixFQUNuQixVQUFzQixFQUN0QixHQUFzQixFQUNyQixhQUE2QixFQUM3QixnQkFBa0MsRUFDbEMsT0FBZ0IsRUFDakIsYUFBNkI7UUFFcEMsS0FBSyxFQUFFLENBQUM7UUFSRCxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDckIsa0JBQWEsR0FBYixhQUFhLENBQWdCO1FBQzdCLHFC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LEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQWdCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNoRztpQkFBTTtnQkFDTCxJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQzthQUNoQjtZQUNELElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztrSUEvTFUsa0JBQWtCO3NIQUFsQixrQkFBa0Isa05DM0IvQiw4UEFXQTsyRkRnQmEsa0JBQWtCO2tCQVA5QixTQUFTOytCQUNFLEdBQUcsZUFBZSxFQUFFLGlCQUdmLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU07d1FBR04sUUFBUTtzQkFBaEQsU0FBUzt1QkFBQyxVQUFVLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbiAgUmVuZGVyZXIyLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBPbkNoYW5nZXMsXHJcbiAgVmlld0NvbnRhaW5lclJlZixcclxuICBWaWV3Q2hpbGRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgWERyb3Bkb3duUHJlZml4LCBYRHJvcGRvd25Ob2RlLCBYRHJvcGRvd25Qcm9wZXJ0eSB9IGZyb20gJy4vZHJvcGRvd24ucHJvcGVydHknO1xyXG5pbXBvcnQgeyBYSXNDaGFuZ2UsIFhJc0VtcHR5LCBYU2V0RGF0YSwgWEdldENoaWxkcmVuLCBYQ29uZmlnU2VydmljZSwgWFBvc2l0aW9uVG9wQm90dG9tLCBYUGxhY2VtZW50IH0gZnJvbSAnQG5nLW5lc3QvdWkvY29yZSc7XHJcbmltcG9ydCB7IG9mLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFhQb3J0YWxDb25uZWN0ZWRQb3NpdGlvbiwgWFBvcnRhbE92ZXJsYXlSZWYsIFhQb3J0YWxTZXJ2aWNlIH0gZnJvbSAnQG5nLW5lc3QvdWkvcG9ydGFsJztcclxuaW1wb3J0IHsgWERyb3Bkb3duUG9ydGFsQ29tcG9uZW50IH0gZnJvbSAnLi9kcm9wZG93bi1wb3J0YWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBkZWxheSwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBDb25uZWN0ZWRPdmVybGF5UG9zaXRpb25DaGFuZ2UsIEZsZXhpYmxlQ29ubmVjdGVkUG9zaXRpb25TdHJhdGVneSwgT3ZlcmxheSwgT3ZlcmxheUNvbmZpZyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBgJHtYRHJvcGRvd25QcmVmaXh9YCxcclxuICB0ZW1wbGF0ZVVybDogJy4vZHJvcGRvd24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2Ryb3Bkb3duLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgWERyb3Bkb3duQ29tcG9uZW50IGV4dGVuZHMgWERyb3Bkb3duUHJvcGVydHkgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xyXG4gIEBWaWV3Q2hpbGQoJ2Ryb3Bkb3duJywgeyBzdGF0aWM6IHRydWUgfSkgZHJvcGRvd24hOiBFbGVtZW50UmVmO1xyXG4gIGRhdGFzOiBYRHJvcGRvd25Ob2RlW10gPSBbXTtcclxuICBub2RlczogWERyb3Bkb3duTm9kZVtdID0gW107XHJcbiAgcG9ydGFsITogWFBvcnRhbE92ZXJsYXlSZWY8WERyb3Bkb3duUG9ydGFsQ29tcG9uZW50PjtcclxuICB0aW1lb3V0SGlkZTogYW55O1xyXG4gIHZpc2libGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBhbmltYXRpbmcgPSBmYWxzZTtcclxuICBvdXRzaWRlQ2xpY2sgPSBmYWxzZTtcclxuICBtaW5XaWR0aCE6IHN0cmluZyB8IG51bWJlcjtcclxuICBob3ZlckRlbGF5VW5zdWIgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG4gIHBvc2l0aW9uQ2hhbmdlOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdCgpO1xyXG4gIGNsb3NlU3ViamVjdDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0KCk7XHJcbiAgYWN0aXZhdGVkSWRTdWIgPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgcHJpdmF0ZSBfdW5TdWJqZWN0ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxyXG4gICAgcHVibGljIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIHBvcnRhbFNlcnZpY2U6IFhQb3J0YWxTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxyXG4gICAgcHJpdmF0ZSBvdmVybGF5OiBPdmVybGF5LFxyXG4gICAgcHVibGljIGNvbmZpZ1NlcnZpY2U6IFhDb25maWdTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnNldFN1YmplY3QoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuICAgIGNvbnN0IHsgZGF0YSB9ID0gY2hhbmdlcztcclxuICAgIFhJc0NoYW5nZShkYXRhKSAmJiB0aGlzLnNldERhdGEoKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fdW5TdWJqZWN0Lm5leHQoKTtcclxuICAgIHRoaXMuX3VuU3ViamVjdC5jb21wbGV0ZSgpO1xyXG4gICAgdGhpcy5ob3ZlckRlbGF5VW5zdWIubmV4dCgpO1xyXG4gICAgdGhpcy5ob3ZlckRlbGF5VW5zdWIuY29tcGxldGUoKTtcclxuICB9XHJcblxyXG4gIHNldFN1YmplY3QoKSB7XHJcbiAgICB0aGlzLmNsb3NlU3ViamVjdC5waXBlKHRha2VVbnRpbCh0aGlzLl91blN1YmplY3QpKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICB0aGlzLmNsb3NlUG9ydGFsKCk7XHJcbiAgICB9KTtcclxuICAgIHRoaXMuYWN0aXZhdGVkSWRTdWIucGlwZSh0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KSkuc3Vic2NyaWJlKCh4KSA9PiB7XHJcbiAgICAgIHRoaXMuYWN0aXZhdGVkSWQgPSB4O1xyXG4gICAgICB0aGlzLmFjdGl2YXRlZElkQ2hhbmdlLmVtaXQoeCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9uRW50ZXIoKSB7XHJcbiAgICBvZih0cnVlKVxyXG4gICAgICAucGlwZShkZWxheSh0aGlzLmhvdmVyRGVsYXkpLCB0YWtlVW50aWwodGhpcy5ob3ZlckRlbGF5VW5zdWIpKVxyXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLnRyaWdnZXIgPT09ICdjbGljaycpIHJldHVybjtcclxuICAgICAgICBpZiAodGhpcy50aW1lb3V0SGlkZSkge1xyXG4gICAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMudGltZW91dEhpZGUpO1xyXG4gICAgICAgICAgdGhpcy50aW1lb3V0SGlkZSA9IG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICghdGhpcy5wb3J0YWwgfHwgKHRoaXMucG9ydGFsICYmICF0aGlzLnBvcnRhbD8ub3ZlcmxheVJlZj8uaGFzQXR0YWNoZWQoKSkpIHtcclxuICAgICAgICAgIHRoaXMudmlzaWJsZSA9IHRydWU7XHJcbiAgICAgICAgICB0aGlzLmNyZWF0ZVBvcnRhbCgpO1xyXG4gICAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBvbkxlYXZlKCkge1xyXG4gICAgdGhpcy5ob3ZlckRlbGF5VW5zdWIubmV4dCgpO1xyXG4gICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgdGhpcy50cmlnZ2VyID09PSAnY2xpY2snKSByZXR1cm47XHJcbiAgICBpZiAodGhpcy5wb3J0YWw/Lm92ZXJsYXlSZWY/Lmhhc0F0dGFjaGVkKCkpIHtcclxuICAgICAgdGhpcy50aW1lb3V0SGlkZSA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMucG9ydGFsPy5vdmVybGF5UmVmPy5kaXNwb3NlKCk7XHJcbiAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNob3dQb3J0YWwoKSB7XHJcbiAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLnRyaWdnZXIgPT09ICdob3ZlcicgfHwgdGhpcy5hbmltYXRpbmcpIHJldHVybjtcclxuICAgIGlmICh0aGlzLnRyaWdnZXIgPT09ICdjbGljaycgJiYgdGhpcy5wb3J0YWxBdHRhY2hlZCgpKSB7XHJcbiAgICAgIHRoaXMuY2xvc2VTdWJqZWN0Lm5leHQoKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5jcmVhdGVQb3J0YWwoKTtcclxuICB9XHJcblxyXG4gIHBvcnRhbEF0dGFjaGVkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMucG9ydGFsPy5vdmVybGF5UmVmPy5oYXNBdHRhY2hlZCgpO1xyXG4gIH1cclxuXHJcbiAgY2xvc2VQb3J0YWwoKSB7XHJcbiAgICBpZiAodGhpcy5wb3J0YWxBdHRhY2hlZCgpKSB7XHJcbiAgICAgIHRoaXMucG9ydGFsPy5vdmVybGF5UmVmPy5kaXNwb3NlKCk7XHJcbiAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIGRlc3Ryb3lQb3J0YWwoKSB7XHJcbiAgICB0aGlzLnBvcnRhbD8ub3ZlcmxheVJlZj8uZGlzcG9zZSgpO1xyXG4gIH1cclxuXHJcbiAgY3JlYXRlUG9ydGFsKCkge1xyXG4gICAgbGV0IGJveCA9IHRoaXMuZHJvcGRvd24ubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgIHRoaXMubWluV2lkdGggPSB0aGlzLnBvcnRhbE1pbldpZHRoID8gdGhpcy5wb3J0YWxNaW5XaWR0aCA6IGJveC53aWR0aDtcclxuICAgIGNvbnN0IGNvbmZpZzogT3ZlcmxheUNvbmZpZyA9IHtcclxuICAgICAgYmFja2Ryb3BDbGFzczogJycsXHJcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IHRoaXMuc2V0UGxhY2VtZW50KCksXHJcbiAgICAgIHNjcm9sbFN0cmF0ZWd5OiB0aGlzLm92ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5yZXBvc2l0aW9uKCksXHJcbiAgICAgIG1pbldpZHRoOiB0aGlzLm1pbldpZHRoXHJcbiAgICB9O1xyXG4gICAgdGhpcy5zZXRQb3NpdGlvbihjb25maWcpO1xyXG4gICAgdGhpcy5wb3J0YWwgPSB0aGlzLnBvcnRhbFNlcnZpY2UuYXR0YWNoKHtcclxuICAgICAgY29udGVudDogWERyb3Bkb3duUG9ydGFsQ29tcG9uZW50LFxyXG4gICAgICB2aWV3Q29udGFpbmVyUmVmOiB0aGlzLnZpZXdDb250YWluZXJSZWYsXHJcbiAgICAgIG92ZXJsYXlDb25maWc6IGNvbmZpZ1xyXG4gICAgfSk7XHJcbiAgICBpZiAodGhpcy50cmlnZ2VyID09PSAnY2xpY2snKSB7XHJcbiAgICAgIHRoaXMucG9ydGFsLm92ZXJsYXlSZWZcclxuICAgICAgICA/Lm91dHNpZGVQb2ludGVyRXZlbnRzKClcclxuICAgICAgICAucGlwZShkZWJvdW5jZVRpbWUoMzApLCB0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KSlcclxuICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgIHRoaXMuY2xvc2VTdWJqZWN0Lm5leHQoKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICAgIHRoaXMuc2V0SW5zdGFuY2UoKTtcclxuICB9XHJcblxyXG4gIHNldFBvc2l0aW9uKGNvbmZpZzogT3ZlcmxheUNvbmZpZykge1xyXG4gICAgbGV0IHBvc2l0aW9uID0gY29uZmlnLnBvc2l0aW9uU3RyYXRlZ3kgYXMgRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5O1xyXG4gICAgcG9zaXRpb24ucG9zaXRpb25DaGFuZ2VzLnBpcGUodGFrZVVudGlsKHRoaXMuX3VuU3ViamVjdCkpLnN1YnNjcmliZSgocG9zOiBDb25uZWN0ZWRPdmVybGF5UG9zaXRpb25DaGFuZ2UpID0+IHtcclxuICAgICAgY29uc3QgcGxhY2UgPSBYUG9ydGFsQ29ubmVjdGVkUG9zaXRpb24uZ2V0KHBvcy5jb25uZWN0aW9uUGFpcikgYXMgWFBvc2l0aW9uVG9wQm90dG9tO1xyXG4gICAgICBwbGFjZSAhPT0gdGhpcy5wbGFjZW1lbnQgJiYgdGhpcy5wb3NpdGlvbkNoYW5nZS5uZXh0KHBsYWNlKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc2V0SW5zdGFuY2UoKSB7XHJcbiAgICBsZXQgY29tcG9uZW50UmVmID0gdGhpcy5wb3J0YWw/LmNvbXBvbmVudFJlZjtcclxuICAgIGlmICghY29tcG9uZW50UmVmKSByZXR1cm47XHJcbiAgICBPYmplY3QuYXNzaWduKGNvbXBvbmVudFJlZi5pbnN0YW5jZSwge1xyXG4gICAgICBkYXRhOiB0aGlzLm5vZGVzLFxyXG4gICAgICB0cmlnZ2VyOiB0aGlzLnRyaWdnZXIsXHJcbiAgICAgIG1pbldpZHRoOiB0aGlzLm1pbldpZHRoLFxyXG4gICAgICBtYXhXaWR0aDogdGhpcy5wb3J0YWxNYXhXaWR0aCxcclxuICAgICAgbWluSGVpZ2h0OiB0aGlzLnBvcnRhbE1pbkhlaWdodCxcclxuICAgICAgbWF4SGVpZ2h0OiB0aGlzLnBvcnRhbE1heEhlaWdodCxcclxuICAgICAgYWN0aXZhdGVkSWQ6IHRoaXMuYWN0aXZhdGVkSWQsXHJcbiAgICAgIGFjdGl2YXRlZElkU3ViOiB0aGlzLmFjdGl2YXRlZElkU3ViLFxyXG4gICAgICBjbG9zZTogKCkgPT4gdGhpcy5jbG9zZVN1YmplY3QubmV4dCgpLFxyXG4gICAgICBwb3NpdGlvbkNoYW5nZTogdGhpcy5wb3NpdGlvbkNoYW5nZSxcclxuICAgICAgZGVzdHJveVBvcnRhbDogKCkgPT4gdGhpcy5kZXN0cm95UG9ydGFsKCksXHJcbiAgICAgIG5vZGVFbWl0OiAobm9kZTogWERyb3Bkb3duTm9kZSkgPT4gdGhpcy5ub2RlQ2xpY2suZW1pdChub2RlKSxcclxuICAgICAgcG9ydGFsSG92ZXI6IChob3ZlcjogYm9vbGVhbikgPT4gdGhpcy5wb3J0YWxIb3Zlcihob3ZlciksXHJcbiAgICAgIGFuaW1hdGluZzogKGluZzogYm9vbGVhbikgPT4gKHRoaXMuYW5pbWF0aW5nID0gaW5nKVxyXG4gICAgfSk7XHJcbiAgICBjb21wb25lbnRSZWYuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgcG9ydGFsSG92ZXIoaG92ZXI6IGJvb2xlYW4pIHtcclxuICAgIGlmICh0aGlzLnRpbWVvdXRIaWRlICYmIGhvdmVyKSB7XHJcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLnRpbWVvdXRIaWRlKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMub25MZWF2ZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2V0UGxhY2VtZW50KCkge1xyXG4gICAgcmV0dXJuIHRoaXMucG9ydGFsU2VydmljZS5zZXRQbGFjZW1lbnQoe1xyXG4gICAgICBlbGVtZW50UmVmOiB0aGlzLmRyb3Bkb3duLFxyXG4gICAgICBwbGFjZW1lbnQ6IFt0aGlzLnBsYWNlbWVudCBhcyBYUGxhY2VtZW50LCAnYm90dG9tLXN0YXJ0JywgJ3RvcC1zdGFydCcsICdib3R0b20tZW5kJywgJ3RvcC1lbmQnXSxcclxuICAgICAgdHJhbnNmb3JtT3JpZ2luT246ICd4LWRyb3Bkb3duLXBvcnRhbCdcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXREYXRhKCkge1xyXG4gICAgWFNldERhdGE8WERyb3Bkb3duTm9kZT4odGhpcy5kYXRhLCB0aGlzLl91blN1YmplY3QpLnN1YnNjcmliZSgoeCkgPT4ge1xyXG4gICAgICB0aGlzLmRhdGFzID0geDtcclxuICAgICAgaWYgKCF0aGlzLmNoaWxkcmVuKSB7XHJcbiAgICAgICAgdGhpcy5ub2RlcyA9IHguZmlsdGVyKCh5KSA9PiBYSXNFbXB0eSh5LnBpZCkpLm1hcCgoeSkgPT4gWEdldENoaWxkcmVuPFhEcm9wZG93bk5vZGU+KHgsIHksIDApKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLm5vZGVzID0geDtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiPGRpdlxyXG4gICNkcm9wZG93blxyXG4gIGNsYXNzPVwieC1kcm9wZG93blwiXHJcbiAgW25nQ2xhc3NdPVwiY2xhc3NNYXBcIlxyXG4gIFtjbGFzcy54LXZpc2libGVdPVwidmlzaWJsZVwiXHJcbiAgKG1vdXNlZW50ZXIpPVwib25FbnRlcigpXCJcclxuICAobW91c2VsZWF2ZSk9XCJvbkxlYXZlKClcIlxyXG4gIChjbGljayk9XCJzaG93UG9ydGFsKClcIlxyXG4+XHJcbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG48L2Rpdj5cclxuIl19
|
|
199
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvZHJvcGRvd24vZHJvcGRvd24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvZHJvcGRvd24vZHJvcGRvd24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxpQkFBaUIsRUFJakIsdUJBQXVCLEVBSXZCLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZUFBZSxFQUFpQixpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hGLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQWtELE1BQU0sa0JBQWtCLENBQUM7QUFDL0gsT0FBTyxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbkMsT0FBTyxFQUFFLHdCQUF3QixFQUFxQyxNQUFNLG9CQUFvQixDQUFDO0FBQ2pHLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7QUFVaEUsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGlCQUFpQjtJQWdCdkQsWUFDUyxRQUFtQixFQUNuQixVQUFtQyxFQUNuQyxHQUFzQixFQUNyQixhQUE2QixFQUM3QixnQkFBa0MsRUFDbEMsT0FBZ0IsRUFDakIsYUFBNkI7UUFFcEMsS0FBSyxFQUFFLENBQUM7UUFSRCxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLGVBQVUsR0FBVixVQUFVLENBQXlCO1FBQ25DLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQ3JCLGtCQUFhLEdBQWIsYUFBYSxDQUFnQjtRQUM3Qixx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QyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFnQixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDaEc7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7YUFDaEI7WUFDRCxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzNCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7a0lBL0xVLGtCQUFrQjtzSEFBbEIsa0JBQWtCLGtOQzNCL0IsOFBBV0E7MkZEZ0JhLGtCQUFrQjtrQkFQOUIsU0FBUzsrQkFDRSxHQUFHLGVBQWUsRUFBRSxpQkFHZixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNO3dRQUdOLFFBQVE7c0JBQWhELFNBQVM7dUJBQUMsVUFBVSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG4gIFJlbmRlcmVyMixcclxuICBFbGVtZW50UmVmLFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIFNpbXBsZUNoYW5nZXMsXHJcbiAgT25DaGFuZ2VzLFxyXG4gIFZpZXdDb250YWluZXJSZWYsXHJcbiAgVmlld0NoaWxkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFhEcm9wZG93blByZWZpeCwgWERyb3Bkb3duTm9kZSwgWERyb3Bkb3duUHJvcGVydHkgfSBmcm9tICcuL2Ryb3Bkb3duLnByb3BlcnR5JztcclxuaW1wb3J0IHsgWElzQ2hhbmdlLCBYSXNFbXB0eSwgWFNldERhdGEsIFhHZXRDaGlsZHJlbiwgWENvbmZpZ1NlcnZpY2UsIFhQb3NpdGlvblRvcEJvdHRvbSwgWFBsYWNlbWVudCB9IGZyb20gJ0BuZy1uZXN0L3VpL2NvcmUnO1xyXG5pbXBvcnQgeyBvZiwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBYUG9ydGFsQ29ubmVjdGVkUG9zaXRpb24sIFhQb3J0YWxPdmVybGF5UmVmLCBYUG9ydGFsU2VydmljZSB9IGZyb20gJ0BuZy1uZXN0L3VpL3BvcnRhbCc7XHJcbmltcG9ydCB7IFhEcm9wZG93blBvcnRhbENvbXBvbmVudCB9IGZyb20gJy4vZHJvcGRvd24tcG9ydGFsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZGVsYXksIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgQ29ubmVjdGVkT3ZlcmxheVBvc2l0aW9uQ2hhbmdlLCBGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uU3RyYXRlZ3ksIE92ZXJsYXksIE92ZXJsYXlDb25maWcgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogYCR7WERyb3Bkb3duUHJlZml4fWAsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2Ryb3Bkb3duLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9kcm9wZG93bi5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIFhEcm9wZG93bkNvbXBvbmVudCBleHRlbmRzIFhEcm9wZG93blByb3BlcnR5IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcclxuICBAVmlld0NoaWxkKCdkcm9wZG93bicsIHsgc3RhdGljOiB0cnVlIH0pIGRyb3Bkb3duITogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XHJcbiAgZGF0YXM6IFhEcm9wZG93bk5vZGVbXSA9IFtdO1xyXG4gIG5vZGVzOiBYRHJvcGRvd25Ob2RlW10gPSBbXTtcclxuICBwb3J0YWwhOiBYUG9ydGFsT3ZlcmxheVJlZjxYRHJvcGRvd25Qb3J0YWxDb21wb25lbnQ+O1xyXG4gIHRpbWVvdXRIaWRlOiBhbnk7XHJcbiAgdmlzaWJsZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGFuaW1hdGluZyA9IGZhbHNlO1xyXG4gIG91dHNpZGVDbGljayA9IGZhbHNlO1xyXG4gIG1pbldpZHRoITogc3RyaW5nIHwgbnVtYmVyO1xyXG4gIGhvdmVyRGVsYXlVbnN1YiA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgcG9zaXRpb25DaGFuZ2U6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0KCk7XHJcbiAgY2xvc2VTdWJqZWN0OiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3QoKTtcclxuICBhY3RpdmF0ZWRJZFN1YiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICBwcml2YXRlIF91blN1YmplY3QgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyByZW5kZXJlcjogUmVuZGVyZXIyLFxyXG4gICAgcHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxyXG4gICAgcHVibGljIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIHBvcnRhbFNlcnZpY2U6IFhQb3J0YWxTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxyXG4gICAgcHJpdmF0ZSBvdmVybGF5OiBPdmVybGF5LFxyXG4gICAgcHVibGljIGNvbmZpZ1NlcnZpY2U6IFhDb25maWdTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnNldFN1YmplY3QoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuICAgIGNvbnN0IHsgZGF0YSB9ID0gY2hhbmdlcztcclxuICAgIFhJc0NoYW5nZShkYXRhKSAmJiB0aGlzLnNldERhdGEoKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fdW5TdWJqZWN0Lm5leHQoKTtcclxuICAgIHRoaXMuX3VuU3ViamVjdC5jb21wbGV0ZSgpO1xyXG4gICAgdGhpcy5ob3ZlckRlbGF5VW5zdWIubmV4dCgpO1xyXG4gICAgdGhpcy5ob3ZlckRlbGF5VW5zdWIuY29tcGxldGUoKTtcclxuICB9XHJcblxyXG4gIHNldFN1YmplY3QoKSB7XHJcbiAgICB0aGlzLmNsb3NlU3ViamVjdC5waXBlKHRha2VVbnRpbCh0aGlzLl91blN1YmplY3QpKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICB0aGlzLmNsb3NlUG9ydGFsKCk7XHJcbiAgICB9KTtcclxuICAgIHRoaXMuYWN0aXZhdGVkSWRTdWIucGlwZSh0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KSkuc3Vic2NyaWJlKCh4KSA9PiB7XHJcbiAgICAgIHRoaXMuYWN0aXZhdGVkSWQgPSB4O1xyXG4gICAgICB0aGlzLmFjdGl2YXRlZElkQ2hhbmdlLmVtaXQoeCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9uRW50ZXIoKSB7XHJcbiAgICBvZih0cnVlKVxyXG4gICAgICAucGlwZShkZWxheSh0aGlzLmhvdmVyRGVsYXkpLCB0YWtlVW50aWwodGhpcy5ob3ZlckRlbGF5VW5zdWIpKVxyXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLnRyaWdnZXIgPT09ICdjbGljaycpIHJldHVybjtcclxuICAgICAgICBpZiAodGhpcy50aW1lb3V0SGlkZSkge1xyXG4gICAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMudGltZW91dEhpZGUpO1xyXG4gICAgICAgICAgdGhpcy50aW1lb3V0SGlkZSA9IG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICghdGhpcy5wb3J0YWwgfHwgKHRoaXMucG9ydGFsICYmICF0aGlzLnBvcnRhbD8ub3ZlcmxheVJlZj8uaGFzQXR0YWNoZWQoKSkpIHtcclxuICAgICAgICAgIHRoaXMudmlzaWJsZSA9IHRydWU7XHJcbiAgICAgICAgICB0aGlzLmNyZWF0ZVBvcnRhbCgpO1xyXG4gICAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBvbkxlYXZlKCkge1xyXG4gICAgdGhpcy5ob3ZlckRlbGF5VW5zdWIubmV4dCgpO1xyXG4gICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgdGhpcy50cmlnZ2VyID09PSAnY2xpY2snKSByZXR1cm47XHJcbiAgICBpZiAodGhpcy5wb3J0YWw/Lm92ZXJsYXlSZWY/Lmhhc0F0dGFjaGVkKCkpIHtcclxuICAgICAgdGhpcy50aW1lb3V0SGlkZSA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMucG9ydGFsPy5vdmVybGF5UmVmPy5kaXNwb3NlKCk7XHJcbiAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNob3dQb3J0YWwoKSB7XHJcbiAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLnRyaWdnZXIgPT09ICdob3ZlcicgfHwgdGhpcy5hbmltYXRpbmcpIHJldHVybjtcclxuICAgIGlmICh0aGlzLnRyaWdnZXIgPT09ICdjbGljaycgJiYgdGhpcy5wb3J0YWxBdHRhY2hlZCgpKSB7XHJcbiAgICAgIHRoaXMuY2xvc2VTdWJqZWN0Lm5leHQoKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5jcmVhdGVQb3J0YWwoKTtcclxuICB9XHJcblxyXG4gIHBvcnRhbEF0dGFjaGVkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMucG9ydGFsPy5vdmVybGF5UmVmPy5oYXNBdHRhY2hlZCgpO1xyXG4gIH1cclxuXHJcbiAgY2xvc2VQb3J0YWwoKSB7XHJcbiAgICBpZiAodGhpcy5wb3J0YWxBdHRhY2hlZCgpKSB7XHJcbiAgICAgIHRoaXMucG9ydGFsPy5vdmVybGF5UmVmPy5kaXNwb3NlKCk7XHJcbiAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIGRlc3Ryb3lQb3J0YWwoKSB7XHJcbiAgICB0aGlzLnBvcnRhbD8ub3ZlcmxheVJlZj8uZGlzcG9zZSgpO1xyXG4gIH1cclxuXHJcbiAgY3JlYXRlUG9ydGFsKCkge1xyXG4gICAgbGV0IGJveCA9IHRoaXMuZHJvcGRvd24ubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgIHRoaXMubWluV2lkdGggPSB0aGlzLnBvcnRhbE1pbldpZHRoID8gdGhpcy5wb3J0YWxNaW5XaWR0aCA6IGJveC53aWR0aDtcclxuICAgIGNvbnN0IGNvbmZpZzogT3ZlcmxheUNvbmZpZyA9IHtcclxuICAgICAgYmFja2Ryb3BDbGFzczogJycsXHJcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IHRoaXMuc2V0UGxhY2VtZW50KCksXHJcbiAgICAgIHNjcm9sbFN0cmF0ZWd5OiB0aGlzLm92ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5yZXBvc2l0aW9uKCksXHJcbiAgICAgIG1pbldpZHRoOiB0aGlzLm1pbldpZHRoXHJcbiAgICB9O1xyXG4gICAgdGhpcy5zZXRQb3NpdGlvbihjb25maWcpO1xyXG4gICAgdGhpcy5wb3J0YWwgPSB0aGlzLnBvcnRhbFNlcnZpY2UuYXR0YWNoKHtcclxuICAgICAgY29udGVudDogWERyb3Bkb3duUG9ydGFsQ29tcG9uZW50LFxyXG4gICAgICB2aWV3Q29udGFpbmVyUmVmOiB0aGlzLnZpZXdDb250YWluZXJSZWYsXHJcbiAgICAgIG92ZXJsYXlDb25maWc6IGNvbmZpZ1xyXG4gICAgfSk7XHJcbiAgICBpZiAodGhpcy50cmlnZ2VyID09PSAnY2xpY2snKSB7XHJcbiAgICAgIHRoaXMucG9ydGFsLm92ZXJsYXlSZWZcclxuICAgICAgICA/Lm91dHNpZGVQb2ludGVyRXZlbnRzKClcclxuICAgICAgICAucGlwZShkZWJvdW5jZVRpbWUoMzApLCB0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KSlcclxuICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgIHRoaXMuY2xvc2VTdWJqZWN0Lm5leHQoKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICAgIHRoaXMuc2V0SW5zdGFuY2UoKTtcclxuICB9XHJcblxyXG4gIHNldFBvc2l0aW9uKGNvbmZpZzogT3ZlcmxheUNvbmZpZykge1xyXG4gICAgbGV0IHBvc2l0aW9uID0gY29uZmlnLnBvc2l0aW9uU3RyYXRlZ3kgYXMgRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5O1xyXG4gICAgcG9zaXRpb24ucG9zaXRpb25DaGFuZ2VzLnBpcGUodGFrZVVudGlsKHRoaXMuX3VuU3ViamVjdCkpLnN1YnNjcmliZSgocG9zOiBDb25uZWN0ZWRPdmVybGF5UG9zaXRpb25DaGFuZ2UpID0+IHtcclxuICAgICAgY29uc3QgcGxhY2UgPSBYUG9ydGFsQ29ubmVjdGVkUG9zaXRpb24uZ2V0KHBvcy5jb25uZWN0aW9uUGFpcikgYXMgWFBvc2l0aW9uVG9wQm90dG9tO1xyXG4gICAgICBwbGFjZSAhPT0gdGhpcy5wbGFjZW1lbnQgJiYgdGhpcy5wb3NpdGlvbkNoYW5nZS5uZXh0KHBsYWNlKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc2V0SW5zdGFuY2UoKSB7XHJcbiAgICBsZXQgY29tcG9uZW50UmVmID0gdGhpcy5wb3J0YWw/LmNvbXBvbmVudFJlZjtcclxuICAgIGlmICghY29tcG9uZW50UmVmKSByZXR1cm47XHJcbiAgICBPYmplY3QuYXNzaWduKGNvbXBvbmVudFJlZi5pbnN0YW5jZSwge1xyXG4gICAgICBkYXRhOiB0aGlzLm5vZGVzLFxyXG4gICAgICB0cmlnZ2VyOiB0aGlzLnRyaWdnZXIsXHJcbiAgICAgIG1pbldpZHRoOiB0aGlzLm1pbldpZHRoLFxyXG4gICAgICBtYXhXaWR0aDogdGhpcy5wb3J0YWxNYXhXaWR0aCxcclxuICAgICAgbWluSGVpZ2h0OiB0aGlzLnBvcnRhbE1pbkhlaWdodCxcclxuICAgICAgbWF4SGVpZ2h0OiB0aGlzLnBvcnRhbE1heEhlaWdodCxcclxuICAgICAgYWN0aXZhdGVkSWQ6IHRoaXMuYWN0aXZhdGVkSWQsXHJcbiAgICAgIGFjdGl2YXRlZElkU3ViOiB0aGlzLmFjdGl2YXRlZElkU3ViLFxyXG4gICAgICBjbG9zZTogKCkgPT4gdGhpcy5jbG9zZVN1YmplY3QubmV4dCgpLFxyXG4gICAgICBwb3NpdGlvbkNoYW5nZTogdGhpcy5wb3NpdGlvbkNoYW5nZSxcclxuICAgICAgZGVzdHJveVBvcnRhbDogKCkgPT4gdGhpcy5kZXN0cm95UG9ydGFsKCksXHJcbiAgICAgIG5vZGVFbWl0OiAobm9kZTogWERyb3Bkb3duTm9kZSkgPT4gdGhpcy5ub2RlQ2xpY2suZW1pdChub2RlKSxcclxuICAgICAgcG9ydGFsSG92ZXI6IChob3ZlcjogYm9vbGVhbikgPT4gdGhpcy5wb3J0YWxIb3Zlcihob3ZlciksXHJcbiAgICAgIGFuaW1hdGluZzogKGluZzogYm9vbGVhbikgPT4gKHRoaXMuYW5pbWF0aW5nID0gaW5nKVxyXG4gICAgfSk7XHJcbiAgICBjb21wb25lbnRSZWYuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgcG9ydGFsSG92ZXIoaG92ZXI6IGJvb2xlYW4pIHtcclxuICAgIGlmICh0aGlzLnRpbWVvdXRIaWRlICYmIGhvdmVyKSB7XHJcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLnRpbWVvdXRIaWRlKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMub25MZWF2ZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2V0UGxhY2VtZW50KCkge1xyXG4gICAgcmV0dXJuIHRoaXMucG9ydGFsU2VydmljZS5zZXRQbGFjZW1lbnQoe1xyXG4gICAgICBlbGVtZW50UmVmOiB0aGlzLmRyb3Bkb3duLFxyXG4gICAgICBwbGFjZW1lbnQ6IFt0aGlzLnBsYWNlbWVudCBhcyBYUGxhY2VtZW50LCAnYm90dG9tLXN0YXJ0JywgJ3RvcC1zdGFydCcsICdib3R0b20tZW5kJywgJ3RvcC1lbmQnXSxcclxuICAgICAgdHJhbnNmb3JtT3JpZ2luT246ICd4LWRyb3Bkb3duLXBvcnRhbCdcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXREYXRhKCkge1xyXG4gICAgWFNldERhdGE8WERyb3Bkb3duTm9kZT4odGhpcy5kYXRhLCB0aGlzLl91blN1YmplY3QpLnN1YnNjcmliZSgoeCkgPT4ge1xyXG4gICAgICB0aGlzLmRhdGFzID0geDtcclxuICAgICAgaWYgKCF0aGlzLmNoaWxkcmVuKSB7XHJcbiAgICAgICAgdGhpcy5ub2RlcyA9IHguZmlsdGVyKCh5KSA9PiBYSXNFbXB0eSh5LnBpZCkpLm1hcCgoeSkgPT4gWEdldENoaWxkcmVuPFhEcm9wZG93bk5vZGU+KHgsIHksIDApKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLm5vZGVzID0geDtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiPGRpdlxyXG4gICNkcm9wZG93blxyXG4gIGNsYXNzPVwieC1kcm9wZG93blwiXHJcbiAgW25nQ2xhc3NdPVwiY2xhc3NNYXBcIlxyXG4gIFtjbGFzcy54LXZpc2libGVdPVwidmlzaWJsZVwiXHJcbiAgKG1vdXNlZW50ZXIpPVwib25FbnRlcigpXCJcclxuICAobW91c2VsZWF2ZSk9XCJvbkxlYXZlKClcIlxyXG4gIChjbGljayk9XCJzaG93UG9ydGFsKClcIlxyXG4+XHJcbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG48L2Rpdj5cclxuIl19
|
|
@@ -356,4 +356,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImpor
|
|
|
356
356
|
type: ViewChild,
|
|
357
357
|
args: ['treeRef']
|
|
358
358
|
}] } });
|
|
359
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS9maW5kL2ZpbmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvZmluZC9maW5kLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsaUJBQWlCLEVBQ2pCLHVCQUF1QixFQUl2QixTQUFTLEVBRVYsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFrQixRQUFRLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUkzRyxPQUFPLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7Ozs7Ozs7OztBQVV2RCxNQUFNLE9BQU8sY0FBZSxTQUFRLGFBQWE7SUFvRS9DLFlBQW1CLFFBQW1CLEVBQWtCLEdBQXNCLEVBQVMsYUFBNkI7UUFDbEgsS0FBSyxFQUFFLENBQUM7UUFEUyxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQWtCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQVMsa0JBQWEsR0FBYixhQUFhLENBQWdCO1FBVnBILFdBQU0sR0FBRyxHQUFHLENBQUM7UUFFTCxlQUFVLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQVV6QyxDQUFDO0lBOURELElBQVcsUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUNELElBQ1csUUFBUSxDQUFDLEtB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STtzQkFBeEMsU0FBUzt1QkFBQyxNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUNYLFNBQVM7c0JBQWhDLFNBQVM7dUJBQUMsV0FBVztnQkFDQyxRQUFRO3NCQUE5QixTQUFTO3VCQUFDLFVBQVU7Z0JBQ0MsT0FBTztzQkFBNUIsU0FBUzt1QkFBQyxTQUFTO2dCQUNJLFNBQVM7c0JBQWhDLFNBQVM7dUJBQUMsV0FBVztnQkFPWCxRQUFRO3NCQURsQixTQUFTO3VCQUFDLFVBQVU7Z0JBYVYsT0FBTztzQkFEakIsU0FBUzt1QkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgT25Jbml0LFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIFJlbmRlcmVyMixcclxuICBFbGVtZW50UmVmLFxyXG4gIFZpZXdDaGlsZCxcclxuICBTaW1wbGVDaGFuZ2VzXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFhGaW5kUHJvcGVydHksIFhGaW5kUHJlZml4IH0gZnJvbSAnLi9maW5kLnByb3BlcnR5JztcclxuaW1wb3J0IHsgWENsZWFyQ2xhc3MsIFhSZXNpemUsIFhJc1VuZGVmaW5lZCwgWElzQ2hhbmdlLCBYQ29uZmlnU2VydmljZSwgWElzRW1wdHkgfSBmcm9tICdAbmctbmVzdC91aS9jb3JlJztcclxuaW1wb3J0IHsgWFRhYmxlQ29tcG9uZW50LCBYVGFibGVSb3cgfSBmcm9tICdAbmctbmVzdC91aS90YWJsZSc7XHJcbmltcG9ydCB7IFhEaWFsb2dDb21wb25lbnQgfSBmcm9tICdAbmctbmVzdC91aS9kaWFsb2cnO1xyXG5pbXBvcnQgeyBYQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQG5nLW5lc3QvdWkvYnV0dG9uJztcclxuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgWFRyZWVOb2RlLCBYVHJlZUNvbXBvbmVudCB9IGZyb20gJ0BuZy1uZXN0L3VpL3RyZWUnO1xyXG5pbXBvcnQgeyBYVmFsdWVBY2Nlc3NvciB9IGZyb20gJ0BuZy1uZXN0L3VpL2Jhc2UtZm9ybSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogYCR7WEZpbmRQcmVmaXh9YCxcclxuICB0ZW1wbGF0ZVVybDogJy4vZmluZC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZmluZC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgcHJvdmlkZXJzOiBbWFZhbHVlQWNjZXNzb3IoWEZpbmRDb21wb25lbnQpXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgWEZpbmRDb21wb25lbnQgZXh0ZW5kcyBYRmluZFByb3BlcnR5IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBAVmlld0NoaWxkKCdmaW5kJywgeyBzdGF0aWM6IHRydWUgfSkgZmluZCE6IEVsZW1lbnRSZWY7XHJcbiAgQFZpZXdDaGlsZCgnZGlhbG9nQ29tJykgZGlhbG9nQ29tITogWERpYWxvZ0NvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKCd0YWJsZUNvbScpIHRhYmxlQ29tITogWFRhYmxlQ29tcG9uZW50O1xyXG4gIEBWaWV3Q2hpbGQoJ3RyZWVDb20nKSB0cmVlQ29tITogWFRyZWVDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgnYnV0dG9uQ29tJykgYnV0dG9uQ29tITogWEJ1dHRvbkNvbXBvbmVudDtcclxuXHJcbiAgcHJpdmF0ZSBfdGFibGVSZWYhOiBFbGVtZW50UmVmO1xyXG4gIHB1YmxpYyBnZXQgdGFibGVSZWYoKTogRWxlbWVudFJlZiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdGFibGVSZWY7XHJcbiAgfVxyXG4gIEBWaWV3Q2hpbGQoJ3RhYmxlUmVmJylcclxuICBwdWJsaWMgc2V0IHRhYmxlUmVmKHZhbHVlOiBFbGVtZW50UmVmKSB7XHJcbiAgICB0aGlzLl90YWJsZVJlZiA9IHZhbHVlO1xyXG4gICAgaWYgKHZhbHVlICYmIHRoaXMubXVsdGlwbGUpIHtcclxuICAgICAgdGhpcy5zZXRTdWJzY3JpYmUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3RyZWVSZWYhOiBFbGVtZW50UmVmO1xyXG4gIHB1YmxpYyBnZXQgdHJlZVJlZigpOiBFbGVtZW50UmVmIHtcclxuICAgIHJldHVybiB0aGlzLl90cmVlUmVmO1xyXG4gIH1cclxuICBAVmlld0NoaWxkKCd0cmVlUmVmJylcclxuICBwdWJsaWMgc2V0IHRyZWVSZWYodmFsdWU6IEVsZW1lbnRSZWYpIHtcclxuICAgIHRoaXMuX3RyZWVSZWYgPSB2YWx1ZTtcclxuICAgIGlmICh2YWx1ZSAmJiB0aGlzLm11bHRpcGxlKSB7XHJcbiAgICAgIHRoaXMuc2V0U3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXQgZ2V0RW1wdHkoKSB7XHJcbiAgICByZXR1cm4gIXRoaXMudGVtcCB8fCB0aGlzLnRlbXAubGVuZ3RoID09PSAwO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGhhc1RhYmxlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMudGFibGVDb2x1bW5zPy5sZW5ndGggPiAwO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGhhc1RyZWUoKSB7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICAoQXJyYXkuaXNBcnJheSh0aGlzLnRyZWVEYXRhKSAmJiB0aGlzLnRyZWVEYXRhLmxlbmd0aCA+IDApIHx8IHRoaXMudHJlZURhdGEgaW5zdGFuY2VvZiBGdW5jdGlvbiB8fCB0aGlzLnRyZWVEYXRhIGluc3RhbmNlb2YgT2JzZXJ2YWJsZVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGdldCBoYXNUcmVlVGFibGUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5oYXNUYWJsZSAmJiB0aGlzLmhhc1RyZWU7XHJcbiAgfVxyXG5cclxuICBnZXQgaGFzVHJlZU11bHRpcGxlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuaGFzVHJlZSAmJiAhdGhpcy5oYXNUcmVlVGFibGUgJiYgdGhpcy5tdWx0aXBsZTtcclxuICB9XHJcblxyXG4gIGdldCBoYXNTZWFyY2goKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zZWFyY2ggJiYgdGhpcy5oYXNUYWJsZTtcclxuICB9XHJcblxyXG4gIHRlbXA6IGFueTtcclxuICBoZWlnaHQgPSAxMDA7XHJcblxyXG4gIHByaXZhdGUgX3VuU3ViamVjdCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgcHJpdmF0ZSBfcmVzaXplT2JzZXJ2ZXIhOiBSZXNpemVPYnNlcnZlcjtcclxuXHJcbiAgb3ZlcnJpZGUgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XHJcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XHJcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVuZGVyZXI6IFJlbmRlcmVyMiwgcHVibGljIG92ZXJyaWRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsIHB1YmxpYyBjb25maWdTZXJ2aWNlOiBYQ29uZmlnU2VydmljZSkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKHNpbXBsZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuICAgIGNvbnN0IHsgdGFibGVEYXRhLCBsYWJlbEFsaWduLCBzaXplIH0gPSBzaW1wbGVzO1xyXG4gICAgWElzQ2hhbmdlKHRhYmxlRGF0YSkgJiYgdGhpcy5zZXRUYWJsZUNoZWNrZWRSb3coKTtcclxuICAgIFhJc0NoYW5nZShsYWJlbEFsaWduLCBzaXplKSAmJiB0aGlzLnNldENsYXNzTWFwKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc2V0RmxleCh0aGlzLmZpbmQubmF0aXZlRWxlbWVudCwgdGhpcy5yZW5kZXJlciwgdGhpcy5qdXN0aWZ5LCB0aGlzLmFsaWduLCB0aGlzLmRpcmVjdGlvbik7XHJcbiAgICB0aGlzLnNldENsYXNzTWFwKCk7XHJcbiAgICB0aGlzLnNldE11bHRpcGxlKCk7XHJcbiAgICB0aGlzLnNldFdpZHRoKCk7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICBpZiAodGhpcy52YWx1ZSkgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLl9yZXNpemVPYnNlcnZlcj8uZGlzY29ubmVjdCgpO1xyXG4gIH1cclxuXHJcbiAgc2V0Q2xhc3NNYXAoKSB7XHJcbiAgICBYQ2xlYXJDbGFzcyh0aGlzLmxhYmVsTWFwLCB0aGlzLmNsYXNzTWFwKTtcclxuICAgIHRoaXMubGFiZWxNYXBbYHgtdGV4dC1hbGlnbi0ke3RoaXMubGFiZWxBbGlnbn1gXSA9IHRoaXMubGFiZWxBbGlnbiA/IHRydWUgOiBmYWxzZTtcclxuICAgIHRoaXMuY2xhc3NNYXBbYHgtZmluZC0ke3RoaXMuc2l6ZX1gXSA9ICFYSXNFbXB0eSh0aGlzLnNpemUpO1xyXG4gIH1cclxuXHJcbiAgc2V0U3Vic2NyaWJlKCkge1xyXG4gICAgbGV0IHJlc2l6ZVJlZjogRWxlbWVudFtdID0gW107XHJcbiAgICBpZiAodGhpcy5oYXNUYWJsZSkge1xyXG4gICAgICByZXNpemVSZWYgPSBbdGhpcy50YWJsZVJlZj8ubmF0aXZlRWxlbWVudF07XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5oYXNUcmVlICYmICF0aGlzLmhhc1RyZWVUYWJsZSkge1xyXG4gICAgICByZXNpemVSZWYucHVzaCh0aGlzLnRyZWVSZWY/Lm5hdGl2ZUVsZW1lbnQpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5fdW5TdWJqZWN0Lm5leHQoKTtcclxuICAgIFhSZXNpemUoLi4ucmVzaXplUmVmKVxyXG4gICAgICAucGlwZShkZWJvdW5jZVRpbWUoMzApLCB0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KSlcclxuICAgICAgLnN1YnNjcmliZSgoeCkgPT4ge1xyXG4gICAgICAgIHRoaXMuX3Jlc2l6ZU9ic2VydmVyID0geC5yZXNpemVPYnNlcnZlcjtcclxuICAgICAgICBpZiAodGhpcy50YWJsZVJlZikge1xyXG4gICAgICAgICAgdGhpcy5oZWlnaHQgPSB0aGlzLnRhYmxlUmVmLm5hdGl2ZUVsZW1lbnQuY2xpZW50SGVpZ2h0O1xyXG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5oYXNUcmVlKSB7XHJcbiAgICAgICAgICB0aGlzLmhlaWdodCA9IHRoaXMudHJlZVJlZj8ubmF0aXZlRWxlbWVudC5jbGllbnRIZWlnaHQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBzZXRNdWx0aXBsZSgpIHtcclxuICAgIGlmICghdGhpcy5tdWx0aXBsZSkgcmV0dXJuO1xyXG4gICAgaWYgKHRoaXMuaGFzVGFibGUpIHtcclxuICAgICAgaWYgKCF0aGlzLnRhYmxlQ29sdW1ucy5maW5kKCh4KSA9PiB4LnJvd0NoZWNrZWQpKSB7XHJcbiAgICAgICAgdGhpcy50YWJsZUNvbHVtbnMgPSBbXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIGlkOiAnJGNoZWNrZWQnLFxyXG4gICAgICAgICAgICBsYWJlbDogdGhpcy5kaWFsb2dDaGVja2JveExhYmVsLFxyXG4gICAgICAgICAgICByb3dDaGVja2VkOiB0cnVlLFxyXG4gICAgICAgICAgICB0eXBlOiAnY2hlY2tib3gnLFxyXG4gICAgICAgICAgICB3aWR0aDogdGhpcy5kaWFsb2dDaGVja2JveFdpZHRoXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgLi4udGhpcy50YWJsZUNvbHVtbnNcclxuICAgICAgICBdO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRXaWR0aCgpIHtcclxuICAgIGlmIChYSXNVbmRlZmluZWQodGhpcy5kaWFsb2dXaWR0aCkpIHtcclxuICAgICAgaWYgKCh0aGlzLmhhc1RhYmxlICYmIHRoaXMuaGFzVHJlZSkgfHwgdGhpcy5oYXNUYWJsZSkge1xyXG4gICAgICAgIHRoaXMuZGlhbG9nV2lkdGggPSAnNTByZW0nO1xyXG4gICAgICB9IGVsc2UgaWYgKHRoaXMuaGFzVHJlZSAmJiB0aGlzLm11bHRpcGxlKSB7XHJcbiAgICAgICAgdGhpcy5kaWFsb2dXaWR0aCA9ICczMHJlbSc7XHJcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5oYXNUcmVlKSB7XHJcbiAgICAgICAgdGhpcy5kaWFsb2dXaWR0aCA9ICcyMHJlbSc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNob3dNb2RhbCgpIHtcclxuICAgIGlmICh0aGlzLmRpc2FibGVkKSByZXR1cm47XHJcbiAgICB0aGlzLmRpYWxvZ1Zpc2libGUgPSB0cnVlO1xyXG4gICAgdGhpcy5kaWFsb2dWaXNpYmxlQ2hhbmdlLmVtaXQodGhpcy5kaWFsb2dWaXNpYmxlKTtcclxuICAgIGlmICh0aGlzLnZhbHVlKSB7XHJcbiAgICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XHJcbiAgICAgICAgdGhpcy50ZW1wID0gKHRoaXMudmFsdWUgYXMgQXJyYXk8YW55PikubWFwKCh4KSA9PiBPYmplY3QuYXNzaWduKHt9LCB4KSk7XHJcbiAgICAgICAgdGhpcy5zZXRUYWJsZUNoZWNrZWRSb3coKTtcclxuICAgICAgICB0aGlzLnNldFRyZWVDaGVja2VkKCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy50YWJsZUFjdGl2YXRlZFJvdyA9IHRoaXMudmFsdWU7XHJcbiAgICAgICAgaWYgKCF0aGlzLmhhc1RyZWVUYWJsZSAmJiB0aGlzLmhhc1RyZWUpIHtcclxuICAgICAgICAgIHRoaXMudHJlZUFjdGl2YXRlZElkID0gdGhpcy52YWx1ZS5pZDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMudGVtcCA9IHRoaXMubXVsdGlwbGUgPyBbXSA6IG51bGw7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5oYXNUYWJsZSkge1xyXG4gICAgICB0aGlzLnRhYmxlQ29tLnZpcnR1YWxCb2R5Py5zY3JvbGxUb0luZGV4KDApO1xyXG4gICAgICB0aGlzLnRhYmxlQ29tLnZpcnR1YWxCb2R5Py5jaGVja1ZpZXdwb3J0U2l6ZSgpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgc2V0VGFibGVDaGVja2VkUm93KCkge1xyXG4gICAgaWYgKCF0aGlzLm11bHRpcGxlIHx8IFhJc1VuZGVmaW5lZCh0aGlzLnRlbXApKSByZXR1cm47XHJcbiAgICBjb25zdCBpZHMgPSAodGhpcy50ZW1wIGFzIEFycmF5PGFueT4pLm1hcCgoeCkgPT4geC5pZCk7XHJcbiAgICB0aGlzLnRhYmxlQ2hlY2tlZFJvdyA9IHtcclxuICAgICAgLi4udGhpcy50YWJsZUNoZWNrZWRSb3csXHJcbiAgICAgICRjaGVja2VkOiBpZHNcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBzZXRUcmVlQ2hlY2tlZCgpIHtcclxuICAgIGlmICh0aGlzLmhhc1RyZWVNdWx0aXBsZSkgdGhpcy50cmVlQ2hlY2tlZCA9IHRoaXMudGVtcC5tYXAoKHg6IGFueSkgPT4geC5pZCk7XHJcbiAgfVxyXG5cclxuICBzdXJlKCkge1xyXG4gICAgdGhpcy52YWx1ZSA9IHRoaXMudGVtcDtcclxuICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XHJcbiAgICB0aGlzLmZvcm1Db250cm9sVmFsaWRhdG9yKCk7XHJcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBjbG9zZU1vZGFsKCkge1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgZGlhbG9nQ2xvc2VEb25lKCkge1xyXG4gICAgaWYgKHRoaXMuaGFzVHJlZSkge1xyXG4gICAgICB0aGlzLnRyZWVBY3RpdmF0ZWRJZCA9IG51bGw7XHJcbiAgICAgIHRoaXMudGVtcCA9IG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB0ZW1wQ2xvc2UoaW5kZXg6IG51bWJlciwgaXRlbTogYW55KSB7XHJcbiAgICB0aGlzLnRlbXAuc3BsaWNlKGluZGV4LCAxKTtcclxuICAgIGlmICh0aGlzLmhhc1RhYmxlKSB7XHJcbiAgICAgIGxldCBpdCA9IHRoaXMudGFibGVDb20/LnRhYmxlRGF0YS5maW5kKCh4KSA9PiBpdGVtLmlkID09PSB4LmlkKTtcclxuICAgICAgaWYgKGl0KSB7XHJcbiAgICAgICAgaXRbJyRjaGVja2VkJ10gPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnRhYmxlQ29tPy5ib2R5Q2hhbmdlKCk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSBpZiAodGhpcy5oYXNUcmVlKSB7XHJcbiAgICAgIGxldCBpdCA9IHRoaXMudHJlZUNvbT8udHJlZURhdGEuZmluZCgoeCkgPT4gaXRlbS5pZCA9PT0geC5pZCk7XHJcbiAgICAgIGlmIChpdCkge1xyXG4gICAgICAgIGl0LmNoZWNrZWQgPSBmYWxzZTtcclxuICAgICAgICBpdC5jaGFuZ2UgJiYgaXQuY2hhbmdlKCk7XHJcbiAgICAgICAgdGhpcy50cmVlQ29tPy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgdGFnQ2xvc2UoaW5kZXg6IG51bWJlciA9IC0xKSB7XHJcbiAgICBpZiAoaW5kZXggPj0gMCkge1xyXG4gICAgICB0aGlzLnZhbHVlLnNwbGljZShpbmRleCwgMSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnZhbHVlID0gbnVsbDtcclxuICAgICAgdGhpcy50YWJsZUFjdGl2YXRlZFJvdyA9IG51bGw7XHJcbiAgICAgIGlmICghdGhpcy5oYXNUcmVlVGFibGUgJiYgdGhpcy5oYXNUcmVlKSB7XHJcbiAgICAgICAgdGhpcy50cmVlQWN0aXZhdGVkSWQgPSBudWxsO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xyXG4gICAgdGhpcy5mb3JtQ29udHJvbFZhbGlkYXRvcigpO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgdGFibGVBY3RpdmF0ZWRSb3dDaGFuZ2UoZGF0YTogWFRhYmxlUm93KSB7XHJcbiAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xyXG4gICAgICB0aGlzLnJvd011bHRpcGxlKGRhdGEpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy50ZW1wID0gZGF0YTtcclxuICAgICAgdGhpcy5kaWFsb2dWaXNpYmxlID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuc3VyZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcm93TXVsdGlwbGUoZGF0YTogWFRhYmxlUm93KSB7XHJcbiAgICBpZiAodHlwZW9mIHRoaXMudGVtcCA9PT0gJ3VuZGVmaW5lZCcpIHRoaXMudGVtcCA9IFtdO1xyXG4gICAgLy8gZGF0YVsnJGNoZWNrZWQnXSA9ICFkYXRhWyckY2hlY2tlZCddO1xyXG4gICAgaWYgKGRhdGFbJyRjaGVja2VkJ10pIHtcclxuICAgICAgdGhpcy50ZW1wID0gWy4uLnRoaXMudGVtcCwgZGF0YV07XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnRlbXAuc3BsaWNlKFxyXG4gICAgICAgICh0aGlzLnRlbXAgYXMgQXJyYXk8YW55PikuZmluZEluZGV4KCh4KSA9PiB4LmlkID09PSBkYXRhLmlkKSxcclxuICAgICAgICAxXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICB0cmVlTXVsdGlwbGUobm9kZTogWFRyZWVOb2RlKSB7XHJcbiAgICBpZiAodHlwZW9mIHRoaXMudGVtcCA9PT0gJ3VuZGVmaW5lZCcpIHRoaXMudGVtcCA9IFtdO1xyXG4gICAgLy8gbm9kZS4kY2hlY2tlZCA9ICFub2RlLiRjaGVja2VkO1xyXG4gICAgaWYgKG5vZGUuY2hlY2tlZCkge1xyXG4gICAgICB0aGlzLnRlbXAgPSBbLi4udGhpcy50ZW1wLCBub2RlXTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMudGVtcC5zcGxpY2UoXHJcbiAgICAgICAgKHRoaXMudGVtcCBhcyBBcnJheTxhbnk+KS5maW5kSW5kZXgoKHgpID0+IHguaWQgPT09IG5vZGUuaWQpLFxyXG4gICAgICAgIDFcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHRyZWVBY3RpdmF0ZWRDbGljayhub2RlOiBYVHJlZU5vZGUpIHtcclxuICAgIGlmICghdGhpcy5oYXNUcmVlVGFibGUgJiYgdGhpcy5oYXNUcmVlKSB7XHJcbiAgICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XHJcbiAgICAgICAgLy8gdGhpcy50cmVlTXVsdGlwbGUobm9kZSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy50ZW1wID0gbm9kZTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmICh0aGlzLmhhc1RyZWVUYWJsZSAmJiB0aGlzLnRyZWVUYWJsZUNvbm5lY3QpIHtcclxuICAgICAgaWYgKCF0aGlzLnRhYmxlUXVlcnkpIHRoaXMudGFibGVRdWVyeSA9IHt9O1xyXG4gICAgICBpZiAoIXRoaXMudGFibGVRdWVyeS5maWx0ZXIpIHRoaXMudGFibGVRdWVyeS5maWx0ZXIgPSBbXTtcclxuICAgICAgbGV0IGZpZWxkID0gdGhpcy50YWJsZVF1ZXJ5LmZpbHRlci5maW5kKCh4KSA9PiB4LmZpZWxkID09PSB0aGlzLnRyZWVUYWJsZUNvbm5lY3QpO1xyXG4gICAgICBpZiAoZmllbGQpIHtcclxuICAgICAgICBmaWVsZC52YWx1ZSA9IG5vZGUuaWQ7XHJcbiAgICAgICAgZmllbGQub3BlcmF0aW9uID0gJz0nO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMudGFibGVRdWVyeS5maWx0ZXIgPSBbLi4udGhpcy50YWJsZVF1ZXJ5LmZpbHRlciwgeyBmaWVsZDogdGhpcy50cmVlVGFibGVDb25uZWN0LCB2YWx1ZTogbm9kZS5pZCwgb3BlcmF0aW9uOiAnPScgfV07XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy50YWJsZUNvbS5jaGFuZ2UoMSk7XHJcbiAgICAgIHRoaXMudHJlZUFjdGl2YXRlZElkID0gbm9kZS5pZDtcclxuICAgIH1cclxuICAgIHRoaXMudHJlZUFjdGl2YXRlZENoYW5nZS5lbWl0KG5vZGUpO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgdHJlZUNoZWNrYm94Q2hhbmdlKG5vZGU6IFhUcmVlTm9kZSkge1xyXG4gICAgdGhpcy50cmVlTXVsdGlwbGUobm9kZSk7XHJcbiAgfVxyXG5cclxuICB0cmFja0J5SXRlbShfaW5kZXg6IG51bWJlciwgaXRlbTogYW55KSB7XHJcbiAgICByZXR1cm4gaXRlbS5pZDtcclxuICB9XHJcblxyXG4gIGZvcm1Db250cm9sQ2hhbmdlcygpIHtcclxuICAgIHRoaXMubmdPbkluaXQoKTtcclxuICAgIHRoaXMubmdBZnRlclZpZXdJbml0KCk7XHJcbiAgICB0aGlzLnRyZWVDb20/LnNldERhdGEoKTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHNlYXJjaEtleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcclxuICAgIGlmIChldmVudC5rZXkgPT09ICdFbnRlcicpIHtcclxuICAgICAgdGhpcy5zZWFyY2hDbGljaygpO1xyXG4gICAgfSBlbHNlIGlmIChldmVudC5rZXkgPT09ICdEZWxldGUnKSB7XHJcbiAgICAgIHRoaXMuc2VhcmNoLnZhbHVlID0gJyc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZWFyY2hDbGljaygpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5oYXNTZWFyY2gpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMudGFibGVRdWVyeSA9IHRoaXMudGFibGVRdWVyeSB8fCBbXTtcclxuICAgIHRoaXMudGFibGVRdWVyeS5maWx0ZXIgPSB0aGlzLnRhYmxlUXVlcnkuZmlsdGVyIHx8IFtdO1xyXG4gICAgY29uc3QgZmllbGQgPSB0aGlzLnRhYmxlUXVlcnkuZmlsdGVyLmZpbmQoKHgpID0+IHguZmllbGQgPT09IHRoaXMuc2VhcmNoLmZpZWxkKTtcclxuXHJcbiAgICBpZiAoZmllbGQpIHtcclxuICAgICAgZmllbGQudmFsdWUgPSB0aGlzLnNlYXJjaC52YWx1ZSB8fCAnJztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMudGFibGVRdWVyeS5maWx0ZXIgPSBbLi4udGhpcy50YWJsZVF1ZXJ5Py5maWx0ZXIsIHRoaXMuc2VhcmNoXTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnRhYmxlQ29tLmNoYW5nZSgxKTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdlxyXG4gICNmaW5kXHJcbiAgY2xhc3M9XCJ4LWZpbmRcIlxyXG4gIFtjbGFzcy54LWZsZXhdPVwianVzdGlmeSB8fCBhbGlnbiB8fCBkaXJlY3Rpb25cIlxyXG4gIFtjbGFzcy54LWNoZWNrZWRdPVwidmFsdWVcIlxyXG4gIFtjbGFzcy54LWRpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICBbY2xhc3MueC1yZXF1aXJlZF09XCJyZXF1aXJlZElzRW1wdHlcIlxyXG4gIFtjbGFzcy54LWludmFsaWRdPVwiaW52YWxpZFwiXHJcbiAgW25nQ2xhc3NdPVwiY2xhc3NNYXBcIlxyXG4+XHJcbiAgPGxhYmVsICpuZ0lmPVwibGFiZWxcIiBbY2xhc3MueC1maW5kLWxhYmVsLXJlcXVpcmVkXT1cInJlcXVpcmVkXCIgW3N0eWxlLndpZHRoXT1cImxhYmVsV2lkdGhcIiBbbmdDbGFzc109XCJsYWJlbE1hcFwiPnt7IGxhYmVsIH19PC9sYWJlbD5cclxuICA8ZGl2IGNsYXNzPVwieC1maW5kLXJvd1wiPlxyXG4gICAgPHgtYnV0dG9uXHJcbiAgICAgICNidXR0b25Db21cclxuICAgICAgaWNvbj1cImZ0by1zZWFyY2hcIlxyXG4gICAgICBbb25seUljb25dPVwiIWJvcmRlcmVkXCJcclxuICAgICAgW3NpemVdPVwic2l6ZVwiXHJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICAgIGF0dHJUeXBlPVwiYnV0dG9uXCJcclxuICAgICAgKGNsaWNrKT1cInNob3dNb2RhbCgpXCJcclxuICAgID48L3gtYnV0dG9uPlxyXG4gICAgPGRpdiBjbGFzcz1cIngtZmluZC10YWdzXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJtdWx0aXBsZTsgZWxzZSBzaW5nbGVUcGxcIj5cclxuICAgICAgICA8eC10YWdcclxuICAgICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIHZhbHVlOyBpbmRleCBhcyBpOyB0cmFja0J5OiB0cmFja0J5SXRlbVwiXHJcbiAgICAgICAgICBjbG9zYWJsZVxyXG4gICAgICAgICAgW3NpemVdPVwic2l6ZVwiXHJcbiAgICAgICAgICBbYm9yZGVyZWRdPVwiYm9yZGVyZWRcIlxyXG4gICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgICAgICAgIChjbG9zZSk9XCJ0YWdDbG9zZShpKVwiXHJcbiAgICAgICAgICA+e3sgaXRlbVtjb2x1bW5MYWJlbF0gfX08L3gtdGFnXHJcbiAgICAgICAgPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPG5nLXRlbXBsYXRlICNzaW5nbGVUcGw+XHJcbiAgICAgICAgPHgtdGFnICpuZ0lmPVwidmFsdWVcIiBjbG9zYWJsZSBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbYm9yZGVyZWRdPVwiYm9yZGVyZWRcIiBbc2l6ZV09XCJzaXplXCIgKGNsb3NlKT1cInRhZ0Nsb3NlKClcIj57e1xyXG4gICAgICAgICAgdmFsdWVbY29sdW1uTGFiZWxdXHJcbiAgICAgICAgfX08L3gtdGFnPlxyXG4gICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPHgtZGlhbG9nXHJcbiAgI2RpYWxvZ0NvbVxyXG4gIFt0aXRsZV09XCJkaWFsb2dUaXRsZVwiXHJcbiAgW3dpZHRoXT1cImRpYWxvZ1dpZHRoXCJcclxuICBbaGVpZ2h0XT1cImRpYWxvZ0hlaWdodFwiXHJcbiAgW2J1dHRvbnNDZW50ZXJdPVwiZGlhbG9nQnV0dG9uc0NlbnRlclwiXHJcbiAgWyh2aXNpYmxlKV09XCJkaWFsb2dWaXNpYmxlXCJcclxuICAodmlzaWJsZUNoYW5nZSk9XCJkaWFsb2dWaXNpYmxlQ2hhbmdlLmVtaXQoJGV2ZW50KVwiXHJcbiAgKGNsb3NlRG9uZSk9XCJkaWFsb2dDbG9zZURvbmUoKVwiXHJcbiAgKGNhbmNlbCk9XCJjbG9zZU1vZGFsKClcIlxyXG4gIChjbG9zZSk9XCJjbG9zZU1vZGFsKClcIlxyXG4gIChjb25maXJtKT1cInN1cmUoKVwiXHJcbj5cclxuICA8ZGl2IGNsYXNzPVwieC1maW5kLWRpYWxvZ1wiIFtjbGFzcy54LWZpbmQtZGlhbG9nLXRyZWUtdGFibGVdPVwiaGFzVGFibGUgJiYgaGFzVHJlZVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cIngtZmluZC1kaWFsb2ctdHJlZVwiICpuZ0lmPVwiaGFzVHJlZVwiICN0cmVlUmVmIFtzdHlsZS5oZWlnaHQucHhdPVwiaGFzVHJlZVRhYmxlICYmIG11bHRpcGxlICYmIGhlaWdodFwiPlxyXG4gICAgICA8eC10cmVlXHJcbiAgICAgICAgI3RyZWVDb21cclxuICAgICAgICBbZGF0YV09XCJ0cmVlRGF0YVwiXHJcbiAgICAgICAgbm9kZUhlaWdodD1cIjEuOFwiXHJcbiAgICAgICAgWyhtYW51YWwpXT1cImRpYWxvZ1Zpc2libGVcIlxyXG4gICAgICAgIFthY3RpdmF0ZWRJZF09XCJ0cmVlQWN0aXZhdGVkSWRcIlxyXG4gICAgICAgIFtleHBhbmRlZExldmVsXT1cInRyZWVFeHBhbmRlZExldmVsXCJcclxuICAgICAgICAoYWN0aXZhdGVkQ2hhbmdlKT1cInRyZWVBY3RpdmF0ZWRDbGljaygkZXZlbnQpXCJcclxuICAgICAgICBbY2hlY2tib3hdPVwiaGFzVHJlZU11bHRpcGxlXCJcclxuICAgICAgICBbY2hlY2tlZF09XCJ0cmVlQ2hlY2tlZFwiXHJcbiAgICAgICAgKGNoZWNrYm94Q2hhbmdlKT1cInRyZWVDaGVja2JveENoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICBbbGV2ZWxDaGVja109XCIhaGFzVHJlZU11bHRpcGxlXCJcclxuICAgICAgPjwveC10cmVlPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwieC1maW5kLWRpYWxvZy10YWJsZVwiICpuZ0lmPVwiaGFzVGFibGVcIiAjdGFibGVSZWY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ4LWZpbmQtc2VhcmNoXCIgKm5nSWY9XCJoYXNTZWFyY2hcIj5cclxuICAgICAgICA8eC1pbnB1dCBbbGFiZWxdPVwic2VhcmNoLmxhYmVsXCIgZGlyZWN0aW9uPVwicm93XCIgKHhLZXlkb3duKT1cInNlYXJjaEtleURvd24oJGV2ZW50KVwiIFsobmdNb2RlbCldPVwic2VhcmNoLnZhbHVlXCI+PC94LWlucHV0PlxyXG4gICAgICAgIDx4LWJ1dHRvbiB0eXBlPVwicHJpbWFyeVwiIHBsYWluIChjbGljayk9XCJzZWFyY2hDbGljaygpXCI+e3sgc2VhcmNoLmJ1dHRvbiB8fCAn5p+l6K+iJyB9fTwveC1idXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8eC10YWJsZVxyXG4gICAgICAgICN0YWJsZUNvbVxyXG4gICAgICAgIFtkYXRhXT1cInRhYmxlRGF0YVwiXHJcbiAgICAgICAgW2NvbHVtbnNdPVwidGFibGVDb2x1bW5zXCJcclxuICAgICAgICBbKG1hbnVhbCldPVwiZGlhbG9nVmlzaWJsZVwiXHJcbiAgICAgICAgWyhpbmRleCldPVwidGFibGVJbmRleFwiXHJcbiAgICAgICAgWyhzaXplKV09XCJ0YWJsZVNpemVcIlxyXG4gICAgICAgIFtxdWVyeV09XCJ0YWJsZVF1ZXJ5XCJcclxuICAgICAgICBbdG90YWxdPVwidGFibGVUb3RhbFwiXHJcbiAgICAgICAgW2FsbG93U2VsZWN0Um93XT1cIiFtdWx0aXBsZVwiXHJcbiAgICAgICAgW2FsbG93Q2hlY2tSb3ddPVwibXVsdGlwbGVcIlxyXG4gICAgICAgIFtjaGVja2VkUm93XT1cInRhYmxlQ2hlY2tlZFJvd1wiXHJcbiAgICAgICAgW2xvYWRpbmddPVwidGFibGVMb2FkaW5nXCJcclxuICAgICAgICAoaW5kZXhDaGFuZ2UpPVwidGFibGVJbmRleENoYW5nZS5lbWl0KCRldmVudClcIlxyXG4gICAgICAgIChzb3J0Q2hhbmdlKT1cInRhYmxlU29ydENoYW5nZS5lbWl0KCRldmVudClcIlxyXG4gICAgICAgIFsoYWN0aXZhdGVkUm93KV09XCJ0YWJsZUFjdGl2YXRlZFJvd1wiXHJcbiAgICAgICAgKGFjdGl2YXRlZFJvd0NoYW5nZSk9XCJ0YWJsZUFjdGl2YXRlZFJvd0NoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICBbcm93SGVpZ2h0XT1cInRhYmxlUm93SGVpZ2h0XCJcclxuICAgICAgICBbYm9keUhlaWdodF09XCJ0YWJsZUJvZHlIZWlnaHRcIlxyXG4gICAgICAgIFt2aXJ0dWFsU2Nyb2xsXT1cInRhYmxlVmlydHVhbFNjcm9sbFwiXHJcbiAgICAgICAgW21pbkJ1ZmZlclB4XT1cInRhYmxlTWluQnVmZmVyUHhcIlxyXG4gICAgICAgIFttYXhCdWZmZXJQeF09XCJ0YWJsZU1heEJ1ZmZlclB4XCJcclxuICAgICAgICBbYWRhcHRpb25IZWlnaHRdPVwidGFibGVBZGFwdGlvbkhlaWdodFwiXHJcbiAgICAgICAgW2RvY1BlcmNlbnRdPVwidGFibGVEb2NQZXJjZW50XCJcclxuICAgICAgPjwveC10YWJsZT5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiAqbmdJZj1cIm11bHRpcGxlXCIgY2xhc3M9XCJ4LWZpbmQtZGlhbG9nLWNoZWNrZWRcIiBbY2xhc3MueC1maW5kLWVtcHR5XT1cImdldEVtcHR5XCIgW3N0eWxlLmhlaWdodC5weF09XCJoZWlnaHRcIj5cclxuICAgICAgPHgtZW1wdHkgKm5nSWY9XCJnZXRFbXB0eVwiIFtjb250ZW50XT1cImRpYWxvZ0VtcHR5Q29udGVudFwiPjwveC1lbXB0eT5cclxuICAgICAgPGRpdiBjbGFzcz1cIngtZmluZC1kaWFsb2ctdGFnc1wiPlxyXG4gICAgICAgIDx4LXRhZyAqbmdGb3I9XCJsZXQgaXRlbSBvZiB0ZW1wOyBpbmRleCBhcyBpOyB0cmFja0J5OiB0cmFja0J5SXRlbVwiIGNsb3NhYmxlIChjbG9zZSk9XCJ0ZW1wQ2xvc2UoaSwgaXRlbSlcIj5cclxuICAgICAgICAgIDxzcGFuPnt7IGl0ZW1bY29sdW1uTGFiZWxdIH19PC9zcGFuPlxyXG4gICAgICAgIDwveC10YWc+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwveC1kaWFsb2c+XHJcblxyXG48bmctdGVtcGxhdGUgI3RyZWVMYWJlbFRwbCBsZXQtbm9kZT1cIiRub2RlXCI+XHJcbiAgPGRpdiBjbGFzcz1cIngtZmluZC1kaWFsb2ctdHJlZS1ub2RlXCI+XHJcbiAgICA8c3Bhbj57eyBub2RlLmxhYmVsIH19IDwvc3Bhbj5cclxuICAgIDx4LWljb24gdHlwZT1cImZ0by1jaGVja1wiICpuZ0lmPVwibm9kZS4kY2hlY2tlZFwiPjwveC1pY29uPlxyXG4gIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
|
|
359
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS9maW5kL2ZpbmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvZmluZC9maW5kLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsaUJBQWlCLEVBQ2pCLHVCQUF1QixFQUl2QixTQUFTLEVBRVYsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFrQixRQUFRLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUkzRyxPQUFPLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7Ozs7Ozs7OztBQVV2RCxNQUFNLE9BQU8sY0FBZSxTQUFRLGFBQWE7SUFvRS9DLFlBQW1CLFFBQW1CLEVBQWtCLEdBQXNCLEVBQVMsYUFBNkI7UUFDbEgsS0FBSyxFQUFFLENBQUM7UUFEUyxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQWtCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQVMsa0JBQWEsR0FBYixhQUFhLENBQWdCO1FBVnBILFdBQU0sR0FBRyxHQUFHLENBQUM7UUFFTCxlQUFVLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQVV6QyxDQUFDO0lBOURELElBQVcsUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUNELElBQ1csUUFBUSxDQUFDLEtB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STtzQkFBeEMsU0FBUzt1QkFBQyxNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUNYLFNBQVM7c0JBQWhDLFNBQVM7dUJBQUMsV0FBVztnQkFDQyxRQUFRO3NCQUE5QixTQUFTO3VCQUFDLFVBQVU7Z0JBQ0MsT0FBTztzQkFBNUIsU0FBUzt1QkFBQyxTQUFTO2dCQUNJLFNBQVM7c0JBQWhDLFNBQVM7dUJBQUMsV0FBVztnQkFPWCxRQUFRO3NCQURsQixTQUFTO3VCQUFDLFVBQVU7Z0JBYVYsT0FBTztzQkFEakIsU0FBUzt1QkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgT25Jbml0LFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIFJlbmRlcmVyMixcclxuICBFbGVtZW50UmVmLFxyXG4gIFZpZXdDaGlsZCxcclxuICBTaW1wbGVDaGFuZ2VzXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFhGaW5kUHJvcGVydHksIFhGaW5kUHJlZml4IH0gZnJvbSAnLi9maW5kLnByb3BlcnR5JztcclxuaW1wb3J0IHsgWENsZWFyQ2xhc3MsIFhSZXNpemUsIFhJc1VuZGVmaW5lZCwgWElzQ2hhbmdlLCBYQ29uZmlnU2VydmljZSwgWElzRW1wdHkgfSBmcm9tICdAbmctbmVzdC91aS9jb3JlJztcclxuaW1wb3J0IHsgWFRhYmxlQ29tcG9uZW50LCBYVGFibGVSb3cgfSBmcm9tICdAbmctbmVzdC91aS90YWJsZSc7XHJcbmltcG9ydCB7IFhEaWFsb2dDb21wb25lbnQgfSBmcm9tICdAbmctbmVzdC91aS9kaWFsb2cnO1xyXG5pbXBvcnQgeyBYQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQG5nLW5lc3QvdWkvYnV0dG9uJztcclxuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgWFRyZWVOb2RlLCBYVHJlZUNvbXBvbmVudCB9IGZyb20gJ0BuZy1uZXN0L3VpL3RyZWUnO1xyXG5pbXBvcnQgeyBYVmFsdWVBY2Nlc3NvciB9IGZyb20gJ0BuZy1uZXN0L3VpL2Jhc2UtZm9ybSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogYCR7WEZpbmRQcmVmaXh9YCxcclxuICB0ZW1wbGF0ZVVybDogJy4vZmluZC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZmluZC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgcHJvdmlkZXJzOiBbWFZhbHVlQWNjZXNzb3IoWEZpbmRDb21wb25lbnQpXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgWEZpbmRDb21wb25lbnQgZXh0ZW5kcyBYRmluZFByb3BlcnR5IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBAVmlld0NoaWxkKCdmaW5kJywgeyBzdGF0aWM6IHRydWUgfSkgZmluZCE6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xyXG4gIEBWaWV3Q2hpbGQoJ2RpYWxvZ0NvbScpIGRpYWxvZ0NvbSE6IFhEaWFsb2dDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgndGFibGVDb20nKSB0YWJsZUNvbSE6IFhUYWJsZUNvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKCd0cmVlQ29tJykgdHJlZUNvbSE6IFhUcmVlQ29tcG9uZW50O1xyXG4gIEBWaWV3Q2hpbGQoJ2J1dHRvbkNvbScpIGJ1dHRvbkNvbSE6IFhCdXR0b25Db21wb25lbnQ7XHJcblxyXG4gIHByaXZhdGUgX3RhYmxlUmVmITogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XHJcbiAgcHVibGljIGdldCB0YWJsZVJlZigpOiBFbGVtZW50UmVmIHtcclxuICAgIHJldHVybiB0aGlzLl90YWJsZVJlZjtcclxuICB9XHJcbiAgQFZpZXdDaGlsZCgndGFibGVSZWYnKVxyXG4gIHB1YmxpYyBzZXQgdGFibGVSZWYodmFsdWU6IEVsZW1lbnRSZWYpIHtcclxuICAgIHRoaXMuX3RhYmxlUmVmID0gdmFsdWU7XHJcbiAgICBpZiAodmFsdWUgJiYgdGhpcy5tdWx0aXBsZSkge1xyXG4gICAgICB0aGlzLnNldFN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfdHJlZVJlZiE6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xyXG4gIHB1YmxpYyBnZXQgdHJlZVJlZigpOiBFbGVtZW50UmVmIHtcclxuICAgIHJldHVybiB0aGlzLl90cmVlUmVmO1xyXG4gIH1cclxuICBAVmlld0NoaWxkKCd0cmVlUmVmJylcclxuICBwdWJsaWMgc2V0IHRyZWVSZWYodmFsdWU6IEVsZW1lbnRSZWYpIHtcclxuICAgIHRoaXMuX3RyZWVSZWYgPSB2YWx1ZTtcclxuICAgIGlmICh2YWx1ZSAmJiB0aGlzLm11bHRpcGxlKSB7XHJcbiAgICAgIHRoaXMuc2V0U3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXQgZ2V0RW1wdHkoKSB7XHJcbiAgICByZXR1cm4gIXRoaXMudGVtcCB8fCB0aGlzLnRlbXAubGVuZ3RoID09PSAwO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGhhc1RhYmxlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMudGFibGVDb2x1bW5zPy5sZW5ndGggPiAwO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGhhc1RyZWUoKSB7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICAoQXJyYXkuaXNBcnJheSh0aGlzLnRyZWVEYXRhKSAmJiB0aGlzLnRyZWVEYXRhLmxlbmd0aCA+IDApIHx8IHRoaXMudHJlZURhdGEgaW5zdGFuY2VvZiBGdW5jdGlvbiB8fCB0aGlzLnRyZWVEYXRhIGluc3RhbmNlb2YgT2JzZXJ2YWJsZVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGdldCBoYXNUcmVlVGFibGUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5oYXNUYWJsZSAmJiB0aGlzLmhhc1RyZWU7XHJcbiAgfVxyXG5cclxuICBnZXQgaGFzVHJlZU11bHRpcGxlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuaGFzVHJlZSAmJiAhdGhpcy5oYXNUcmVlVGFibGUgJiYgdGhpcy5tdWx0aXBsZTtcclxuICB9XHJcblxyXG4gIGdldCBoYXNTZWFyY2goKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zZWFyY2ggJiYgdGhpcy5oYXNUYWJsZTtcclxuICB9XHJcblxyXG4gIHRlbXA6IGFueTtcclxuICBoZWlnaHQgPSAxMDA7XHJcblxyXG4gIHByaXZhdGUgX3VuU3ViamVjdCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgcHJpdmF0ZSBfcmVzaXplT2JzZXJ2ZXIhOiBSZXNpemVPYnNlcnZlcjtcclxuXHJcbiAgb3ZlcnJpZGUgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XHJcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XHJcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVuZGVyZXI6IFJlbmRlcmVyMiwgcHVibGljIG92ZXJyaWRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsIHB1YmxpYyBjb25maWdTZXJ2aWNlOiBYQ29uZmlnU2VydmljZSkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKHNpbXBsZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuICAgIGNvbnN0IHsgdGFibGVEYXRhLCBsYWJlbEFsaWduLCBzaXplIH0gPSBzaW1wbGVzO1xyXG4gICAgWElzQ2hhbmdlKHRhYmxlRGF0YSkgJiYgdGhpcy5zZXRUYWJsZUNoZWNrZWRSb3coKTtcclxuICAgIFhJc0NoYW5nZShsYWJlbEFsaWduLCBzaXplKSAmJiB0aGlzLnNldENsYXNzTWFwKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc2V0RmxleCh0aGlzLmZpbmQubmF0aXZlRWxlbWVudCwgdGhpcy5yZW5kZXJlciwgdGhpcy5qdXN0aWZ5LCB0aGlzLmFsaWduLCB0aGlzLmRpcmVjdGlvbik7XHJcbiAgICB0aGlzLnNldENsYXNzTWFwKCk7XHJcbiAgICB0aGlzLnNldE11bHRpcGxlKCk7XHJcbiAgICB0aGlzLnNldFdpZHRoKCk7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICBpZiAodGhpcy52YWx1ZSkgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLl9yZXNpemVPYnNlcnZlcj8uZGlzY29ubmVjdCgpO1xyXG4gIH1cclxuXHJcbiAgc2V0Q2xhc3NNYXAoKSB7XHJcbiAgICBYQ2xlYXJDbGFzcyh0aGlzLmxhYmVsTWFwLCB0aGlzLmNsYXNzTWFwKTtcclxuICAgIHRoaXMubGFiZWxNYXBbYHgtdGV4dC1hbGlnbi0ke3RoaXMubGFiZWxBbGlnbn1gXSA9IHRoaXMubGFiZWxBbGlnbiA/IHRydWUgOiBmYWxzZTtcclxuICAgIHRoaXMuY2xhc3NNYXBbYHgtZmluZC0ke3RoaXMuc2l6ZX1gXSA9ICFYSXNFbXB0eSh0aGlzLnNpemUpO1xyXG4gIH1cclxuXHJcbiAgc2V0U3Vic2NyaWJlKCkge1xyXG4gICAgbGV0IHJlc2l6ZVJlZjogRWxlbWVudFtdID0gW107XHJcbiAgICBpZiAodGhpcy5oYXNUYWJsZSkge1xyXG4gICAgICByZXNpemVSZWYgPSBbdGhpcy50YWJsZVJlZj8ubmF0aXZlRWxlbWVudF07XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5oYXNUcmVlICYmICF0aGlzLmhhc1RyZWVUYWJsZSkge1xyXG4gICAgICByZXNpemVSZWYucHVzaCh0aGlzLnRyZWVSZWY/Lm5hdGl2ZUVsZW1lbnQpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5fdW5TdWJqZWN0Lm5leHQoKTtcclxuICAgIFhSZXNpemUoLi4ucmVzaXplUmVmKVxyXG4gICAgICAucGlwZShkZWJvdW5jZVRpbWUoMzApLCB0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KSlcclxuICAgICAgLnN1YnNjcmliZSgoeCkgPT4ge1xyXG4gICAgICAgIHRoaXMuX3Jlc2l6ZU9ic2VydmVyID0geC5yZXNpemVPYnNlcnZlcjtcclxuICAgICAgICBpZiAodGhpcy50YWJsZVJlZikge1xyXG4gICAgICAgICAgdGhpcy5oZWlnaHQgPSB0aGlzLnRhYmxlUmVmLm5hdGl2ZUVsZW1lbnQuY2xpZW50SGVpZ2h0O1xyXG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5oYXNUcmVlKSB7XHJcbiAgICAgICAgICB0aGlzLmhlaWdodCA9IHRoaXMudHJlZVJlZj8ubmF0aXZlRWxlbWVudC5jbGllbnRIZWlnaHQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBzZXRNdWx0aXBsZSgpIHtcclxuICAgIGlmICghdGhpcy5tdWx0aXBsZSkgcmV0dXJuO1xyXG4gICAgaWYgKHRoaXMuaGFzVGFibGUpIHtcclxuICAgICAgaWYgKCF0aGlzLnRhYmxlQ29sdW1ucy5maW5kKCh4KSA9PiB4LnJvd0NoZWNrZWQpKSB7XHJcbiAgICAgICAgdGhpcy50YWJsZUNvbHVtbnMgPSBbXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIGlkOiAnJGNoZWNrZWQnLFxyXG4gICAgICAgICAgICBsYWJlbDogdGhpcy5kaWFsb2dDaGVja2JveExhYmVsLFxyXG4gICAgICAgICAgICByb3dDaGVja2VkOiB0cnVlLFxyXG4gICAgICAgICAgICB0eXBlOiAnY2hlY2tib3gnLFxyXG4gICAgICAgICAgICB3aWR0aDogdGhpcy5kaWFsb2dDaGVja2JveFdpZHRoXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgLi4udGhpcy50YWJsZUNvbHVtbnNcclxuICAgICAgICBdO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRXaWR0aCgpIHtcclxuICAgIGlmIChYSXNVbmRlZmluZWQodGhpcy5kaWFsb2dXaWR0aCkpIHtcclxuICAgICAgaWYgKCh0aGlzLmhhc1RhYmxlICYmIHRoaXMuaGFzVHJlZSkgfHwgdGhpcy5oYXNUYWJsZSkge1xyXG4gICAgICAgIHRoaXMuZGlhbG9nV2lkdGggPSAnNTByZW0nO1xyXG4gICAgICB9IGVsc2UgaWYgKHRoaXMuaGFzVHJlZSAmJiB0aGlzLm11bHRpcGxlKSB7XHJcbiAgICAgICAgdGhpcy5kaWFsb2dXaWR0aCA9ICczMHJlbSc7XHJcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5oYXNUcmVlKSB7XHJcbiAgICAgICAgdGhpcy5kaWFsb2dXaWR0aCA9ICcyMHJlbSc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNob3dNb2RhbCgpIHtcclxuICAgIGlmICh0aGlzLmRpc2FibGVkKSByZXR1cm47XHJcbiAgICB0aGlzLmRpYWxvZ1Zpc2libGUgPSB0cnVlO1xyXG4gICAgdGhpcy5kaWFsb2dWaXNpYmxlQ2hhbmdlLmVtaXQodGhpcy5kaWFsb2dWaXNpYmxlKTtcclxuICAgIGlmICh0aGlzLnZhbHVlKSB7XHJcbiAgICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XHJcbiAgICAgICAgdGhpcy50ZW1wID0gKHRoaXMudmFsdWUgYXMgQXJyYXk8YW55PikubWFwKCh4KSA9PiBPYmplY3QuYXNzaWduKHt9LCB4KSk7XHJcbiAgICAgICAgdGhpcy5zZXRUYWJsZUNoZWNrZWRSb3coKTtcclxuICAgICAgICB0aGlzLnNldFRyZWVDaGVja2VkKCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy50YWJsZUFjdGl2YXRlZFJvdyA9IHRoaXMudmFsdWU7XHJcbiAgICAgICAgaWYgKCF0aGlzLmhhc1RyZWVUYWJsZSAmJiB0aGlzLmhhc1RyZWUpIHtcclxuICAgICAgICAgIHRoaXMudHJlZUFjdGl2YXRlZElkID0gdGhpcy52YWx1ZS5pZDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMudGVtcCA9IHRoaXMubXVsdGlwbGUgPyBbXSA6IG51bGw7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5oYXNUYWJsZSkge1xyXG4gICAgICB0aGlzLnRhYmxlQ29tLnZpcnR1YWxCb2R5Py5zY3JvbGxUb0luZGV4KDApO1xyXG4gICAgICB0aGlzLnRhYmxlQ29tLnZpcnR1YWxCb2R5Py5jaGVja1ZpZXdwb3J0U2l6ZSgpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgc2V0VGFibGVDaGVja2VkUm93KCkge1xyXG4gICAgaWYgKCF0aGlzLm11bHRpcGxlIHx8IFhJc1VuZGVmaW5lZCh0aGlzLnRlbXApKSByZXR1cm47XHJcbiAgICBjb25zdCBpZHMgPSAodGhpcy50ZW1wIGFzIEFycmF5PGFueT4pLm1hcCgoeCkgPT4geC5pZCk7XHJcbiAgICB0aGlzLnRhYmxlQ2hlY2tlZFJvdyA9IHtcclxuICAgICAgLi4udGhpcy50YWJsZUNoZWNrZWRSb3csXHJcbiAgICAgICRjaGVja2VkOiBpZHNcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBzZXRUcmVlQ2hlY2tlZCgpIHtcclxuICAgIGlmICh0aGlzLmhhc1RyZWVNdWx0aXBsZSkgdGhpcy50cmVlQ2hlY2tlZCA9IHRoaXMudGVtcC5tYXAoKHg6IGFueSkgPT4geC5pZCk7XHJcbiAgfVxyXG5cclxuICBzdXJlKCkge1xyXG4gICAgdGhpcy52YWx1ZSA9IHRoaXMudGVtcDtcclxuICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XHJcbiAgICB0aGlzLmZvcm1Db250cm9sVmFsaWRhdG9yKCk7XHJcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBjbG9zZU1vZGFsKCkge1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgZGlhbG9nQ2xvc2VEb25lKCkge1xyXG4gICAgaWYgKHRoaXMuaGFzVHJlZSkge1xyXG4gICAgICB0aGlzLnRyZWVBY3RpdmF0ZWRJZCA9IG51bGw7XHJcbiAgICAgIHRoaXMudGVtcCA9IG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB0ZW1wQ2xvc2UoaW5kZXg6IG51bWJlciwgaXRlbTogYW55KSB7XHJcbiAgICB0aGlzLnRlbXAuc3BsaWNlKGluZGV4LCAxKTtcclxuICAgIGlmICh0aGlzLmhhc1RhYmxlKSB7XHJcbiAgICAgIGxldCBpdCA9IHRoaXMudGFibGVDb20/LnRhYmxlRGF0YS5maW5kKCh4KSA9PiBpdGVtLmlkID09PSB4LmlkKTtcclxuICAgICAgaWYgKGl0KSB7XHJcbiAgICAgICAgaXRbJyRjaGVja2VkJ10gPSBmYWxzZTtcclxuICAgICAgICB0aGlzLnRhYmxlQ29tPy5ib2R5Q2hhbmdlKCk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSBpZiAodGhpcy5oYXNUcmVlKSB7XHJcbiAgICAgIGxldCBpdCA9IHRoaXMudHJlZUNvbT8udHJlZURhdGEuZmluZCgoeCkgPT4gaXRlbS5pZCA9PT0geC5pZCk7XHJcbiAgICAgIGlmIChpdCkge1xyXG4gICAgICAgIGl0LmNoZWNrZWQgPSBmYWxzZTtcclxuICAgICAgICBpdC5jaGFuZ2UgJiYgaXQuY2hhbmdlKCk7XHJcbiAgICAgICAgdGhpcy50cmVlQ29tPy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgdGFnQ2xvc2UoaW5kZXg6IG51bWJlciA9IC0xKSB7XHJcbiAgICBpZiAoaW5kZXggPj0gMCkge1xyXG4gICAgICB0aGlzLnZhbHVlLnNwbGljZShpbmRleCwgMSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnZhbHVlID0gbnVsbDtcclxuICAgICAgdGhpcy50YWJsZUFjdGl2YXRlZFJvdyA9IG51bGw7XHJcbiAgICAgIGlmICghdGhpcy5oYXNUcmVlVGFibGUgJiYgdGhpcy5oYXNUcmVlKSB7XHJcbiAgICAgICAgdGhpcy50cmVlQWN0aXZhdGVkSWQgPSBudWxsO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xyXG4gICAgdGhpcy5mb3JtQ29udHJvbFZhbGlkYXRvcigpO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgdGFibGVBY3RpdmF0ZWRSb3dDaGFuZ2UoZGF0YTogWFRhYmxlUm93KSB7XHJcbiAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xyXG4gICAgICB0aGlzLnJvd011bHRpcGxlKGRhdGEpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy50ZW1wID0gZGF0YTtcclxuICAgICAgdGhpcy5kaWFsb2dWaXNpYmxlID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuc3VyZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcm93TXVsdGlwbGUoZGF0YTogWFRhYmxlUm93KSB7XHJcbiAgICBpZiAodHlwZW9mIHRoaXMudGVtcCA9PT0gJ3VuZGVmaW5lZCcpIHRoaXMudGVtcCA9IFtdO1xyXG4gICAgLy8gZGF0YVsnJGNoZWNrZWQnXSA9ICFkYXRhWyckY2hlY2tlZCddO1xyXG4gICAgaWYgKGRhdGFbJyRjaGVja2VkJ10pIHtcclxuICAgICAgdGhpcy50ZW1wID0gWy4uLnRoaXMudGVtcCwgZGF0YV07XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnRlbXAuc3BsaWNlKFxyXG4gICAgICAgICh0aGlzLnRlbXAgYXMgQXJyYXk8YW55PikuZmluZEluZGV4KCh4KSA9PiB4LmlkID09PSBkYXRhLmlkKSxcclxuICAgICAgICAxXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICB0cmVlTXVsdGlwbGUobm9kZTogWFRyZWVOb2RlKSB7XHJcbiAgICBpZiAodHlwZW9mIHRoaXMudGVtcCA9PT0gJ3VuZGVmaW5lZCcpIHRoaXMudGVtcCA9IFtdO1xyXG4gICAgLy8gbm9kZS4kY2hlY2tlZCA9ICFub2RlLiRjaGVja2VkO1xyXG4gICAgaWYgKG5vZGUuY2hlY2tlZCkge1xyXG4gICAgICB0aGlzLnRlbXAgPSBbLi4udGhpcy50ZW1wLCBub2RlXTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMudGVtcC5zcGxpY2UoXHJcbiAgICAgICAgKHRoaXMudGVtcCBhcyBBcnJheTxhbnk+KS5maW5kSW5kZXgoKHgpID0+IHguaWQgPT09IG5vZGUuaWQpLFxyXG4gICAgICAgIDFcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHRyZWVBY3RpdmF0ZWRDbGljayhub2RlOiBYVHJlZU5vZGUpIHtcclxuICAgIGlmICghdGhpcy5oYXNUcmVlVGFibGUgJiYgdGhpcy5oYXNUcmVlKSB7XHJcbiAgICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XHJcbiAgICAgICAgLy8gdGhpcy50cmVlTXVsdGlwbGUobm9kZSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy50ZW1wID0gbm9kZTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmICh0aGlzLmhhc1RyZWVUYWJsZSAmJiB0aGlzLnRyZWVUYWJsZUNvbm5lY3QpIHtcclxuICAgICAgaWYgKCF0aGlzLnRhYmxlUXVlcnkpIHRoaXMudGFibGVRdWVyeSA9IHt9O1xyXG4gICAgICBpZiAoIXRoaXMudGFibGVRdWVyeS5maWx0ZXIpIHRoaXMudGFibGVRdWVyeS5maWx0ZXIgPSBbXTtcclxuICAgICAgbGV0IGZpZWxkID0gdGhpcy50YWJsZVF1ZXJ5LmZpbHRlci5maW5kKCh4KSA9PiB4LmZpZWxkID09PSB0aGlzLnRyZWVUYWJsZUNvbm5lY3QpO1xyXG4gICAgICBpZiAoZmllbGQpIHtcclxuICAgICAgICBmaWVsZC52YWx1ZSA9IG5vZGUuaWQ7XHJcbiAgICAgICAgZmllbGQub3BlcmF0aW9uID0gJz0nO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMudGFibGVRdWVyeS5maWx0ZXIgPSBbLi4udGhpcy50YWJsZVF1ZXJ5LmZpbHRlciwgeyBmaWVsZDogdGhpcy50cmVlVGFibGVDb25uZWN0LCB2YWx1ZTogbm9kZS5pZCwgb3BlcmF0aW9uOiAnPScgfV07XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy50YWJsZUNvbS5jaGFuZ2UoMSk7XHJcbiAgICAgIHRoaXMudHJlZUFjdGl2YXRlZElkID0gbm9kZS5pZDtcclxuICAgIH1cclxuICAgIHRoaXMudHJlZUFjdGl2YXRlZENoYW5nZS5lbWl0KG5vZGUpO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgdHJlZUNoZWNrYm94Q2hhbmdlKG5vZGU6IFhUcmVlTm9kZSkge1xyXG4gICAgdGhpcy50cmVlTXVsdGlwbGUobm9kZSk7XHJcbiAgfVxyXG5cclxuICB0cmFja0J5SXRlbShfaW5kZXg6IG51bWJlciwgaXRlbTogYW55KSB7XHJcbiAgICByZXR1cm4gaXRlbS5pZDtcclxuICB9XHJcblxyXG4gIGZvcm1Db250cm9sQ2hhbmdlcygpIHtcclxuICAgIHRoaXMubmdPbkluaXQoKTtcclxuICAgIHRoaXMubmdBZnRlclZpZXdJbml0KCk7XHJcbiAgICB0aGlzLnRyZWVDb20/LnNldERhdGEoKTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHNlYXJjaEtleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcclxuICAgIGlmIChldmVudC5rZXkgPT09ICdFbnRlcicpIHtcclxuICAgICAgdGhpcy5zZWFyY2hDbGljaygpO1xyXG4gICAgfSBlbHNlIGlmIChldmVudC5rZXkgPT09ICdEZWxldGUnKSB7XHJcbiAgICAgIHRoaXMuc2VhcmNoLnZhbHVlID0gJyc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZWFyY2hDbGljaygpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5oYXNTZWFyY2gpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMudGFibGVRdWVyeSA9IHRoaXMudGFibGVRdWVyeSB8fCBbXTtcclxuICAgIHRoaXMudGFibGVRdWVyeS5maWx0ZXIgPSB0aGlzLnRhYmxlUXVlcnkuZmlsdGVyIHx8IFtdO1xyXG4gICAgY29uc3QgZmllbGQgPSB0aGlzLnRhYmxlUXVlcnkuZmlsdGVyLmZpbmQoKHgpID0+IHguZmllbGQgPT09IHRoaXMuc2VhcmNoLmZpZWxkKTtcclxuXHJcbiAgICBpZiAoZmllbGQpIHtcclxuICAgICAgZmllbGQudmFsdWUgPSB0aGlzLnNlYXJjaC52YWx1ZSB8fCAnJztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMudGFibGVRdWVyeS5maWx0ZXIgPSBbLi4udGhpcy50YWJsZVF1ZXJ5Py5maWx0ZXIsIHRoaXMuc2VhcmNoXTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnRhYmxlQ29tLmNoYW5nZSgxKTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdlxyXG4gICNmaW5kXHJcbiAgY2xhc3M9XCJ4LWZpbmRcIlxyXG4gIFtjbGFzcy54LWZsZXhdPVwianVzdGlmeSB8fCBhbGlnbiB8fCBkaXJlY3Rpb25cIlxyXG4gIFtjbGFzcy54LWNoZWNrZWRdPVwidmFsdWVcIlxyXG4gIFtjbGFzcy54LWRpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICBbY2xhc3MueC1yZXF1aXJlZF09XCJyZXF1aXJlZElzRW1wdHlcIlxyXG4gIFtjbGFzcy54LWludmFsaWRdPVwiaW52YWxpZFwiXHJcbiAgW25nQ2xhc3NdPVwiY2xhc3NNYXBcIlxyXG4+XHJcbiAgPGxhYmVsICpuZ0lmPVwibGFiZWxcIiBbY2xhc3MueC1maW5kLWxhYmVsLXJlcXVpcmVkXT1cInJlcXVpcmVkXCIgW3N0eWxlLndpZHRoXT1cImxhYmVsV2lkdGhcIiBbbmdDbGFzc109XCJsYWJlbE1hcFwiPnt7IGxhYmVsIH19PC9sYWJlbD5cclxuICA8ZGl2IGNsYXNzPVwieC1maW5kLXJvd1wiPlxyXG4gICAgPHgtYnV0dG9uXHJcbiAgICAgICNidXR0b25Db21cclxuICAgICAgaWNvbj1cImZ0by1zZWFyY2hcIlxyXG4gICAgICBbb25seUljb25dPVwiIWJvcmRlcmVkXCJcclxuICAgICAgW3NpemVdPVwic2l6ZVwiXHJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICAgIGF0dHJUeXBlPVwiYnV0dG9uXCJcclxuICAgICAgKGNsaWNrKT1cInNob3dNb2RhbCgpXCJcclxuICAgID48L3gtYnV0dG9uPlxyXG4gICAgPGRpdiBjbGFzcz1cIngtZmluZC10YWdzXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJtdWx0aXBsZTsgZWxzZSBzaW5nbGVUcGxcIj5cclxuICAgICAgICA8eC10YWdcclxuICAgICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIHZhbHVlOyBpbmRleCBhcyBpOyB0cmFja0J5OiB0cmFja0J5SXRlbVwiXHJcbiAgICAgICAgICBjbG9zYWJsZVxyXG4gICAgICAgICAgW3NpemVdPVwic2l6ZVwiXHJcbiAgICAgICAgICBbYm9yZGVyZWRdPVwiYm9yZGVyZWRcIlxyXG4gICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgICAgICAgIChjbG9zZSk9XCJ0YWdDbG9zZShpKVwiXHJcbiAgICAgICAgICA+e3sgaXRlbVtjb2x1bW5MYWJlbF0gfX08L3gtdGFnXHJcbiAgICAgICAgPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPG5nLXRlbXBsYXRlICNzaW5nbGVUcGw+XHJcbiAgICAgICAgPHgtdGFnICpuZ0lmPVwidmFsdWVcIiBjbG9zYWJsZSBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbYm9yZGVyZWRdPVwiYm9yZGVyZWRcIiBbc2l6ZV09XCJzaXplXCIgKGNsb3NlKT1cInRhZ0Nsb3NlKClcIj57e1xyXG4gICAgICAgICAgdmFsdWVbY29sdW1uTGFiZWxdXHJcbiAgICAgICAgfX08L3gtdGFnPlxyXG4gICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPHgtZGlhbG9nXHJcbiAgI2RpYWxvZ0NvbVxyXG4gIFt0aXRsZV09XCJkaWFsb2dUaXRsZVwiXHJcbiAgW3dpZHRoXT1cImRpYWxvZ1dpZHRoXCJcclxuICBbaGVpZ2h0XT1cImRpYWxvZ0hlaWdodFwiXHJcbiAgW2J1dHRvbnNDZW50ZXJdPVwiZGlhbG9nQnV0dG9uc0NlbnRlclwiXHJcbiAgWyh2aXNpYmxlKV09XCJkaWFsb2dWaXNpYmxlXCJcclxuICAodmlzaWJsZUNoYW5nZSk9XCJkaWFsb2dWaXNpYmxlQ2hhbmdlLmVtaXQoJGV2ZW50KVwiXHJcbiAgKGNsb3NlRG9uZSk9XCJkaWFsb2dDbG9zZURvbmUoKVwiXHJcbiAgKGNhbmNlbCk9XCJjbG9zZU1vZGFsKClcIlxyXG4gIChjbG9zZSk9XCJjbG9zZU1vZGFsKClcIlxyXG4gIChjb25maXJtKT1cInN1cmUoKVwiXHJcbj5cclxuICA8ZGl2IGNsYXNzPVwieC1maW5kLWRpYWxvZ1wiIFtjbGFzcy54LWZpbmQtZGlhbG9nLXRyZWUtdGFibGVdPVwiaGFzVGFibGUgJiYgaGFzVHJlZVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cIngtZmluZC1kaWFsb2ctdHJlZVwiICpuZ0lmPVwiaGFzVHJlZVwiICN0cmVlUmVmIFtzdHlsZS5oZWlnaHQucHhdPVwiaGFzVHJlZVRhYmxlICYmIG11bHRpcGxlICYmIGhlaWdodFwiPlxyXG4gICAgICA8eC10cmVlXHJcbiAgICAgICAgI3RyZWVDb21cclxuICAgICAgICBbZGF0YV09XCJ0cmVlRGF0YVwiXHJcbiAgICAgICAgbm9kZUhlaWdodD1cIjEuOFwiXHJcbiAgICAgICAgWyhtYW51YWwpXT1cImRpYWxvZ1Zpc2libGVcIlxyXG4gICAgICAgIFthY3RpdmF0ZWRJZF09XCJ0cmVlQWN0aXZhdGVkSWRcIlxyXG4gICAgICAgIFtleHBhbmRlZExldmVsXT1cInRyZWVFeHBhbmRlZExldmVsXCJcclxuICAgICAgICAoYWN0aXZhdGVkQ2hhbmdlKT1cInRyZWVBY3RpdmF0ZWRDbGljaygkZXZlbnQpXCJcclxuICAgICAgICBbY2hlY2tib3hdPVwiaGFzVHJlZU11bHRpcGxlXCJcclxuICAgICAgICBbY2hlY2tlZF09XCJ0cmVlQ2hlY2tlZFwiXHJcbiAgICAgICAgKGNoZWNrYm94Q2hhbmdlKT1cInRyZWVDaGVja2JveENoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICBbbGV2ZWxDaGVja109XCIhaGFzVHJlZU11bHRpcGxlXCJcclxuICAgICAgPjwveC10cmVlPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwieC1maW5kLWRpYWxvZy10YWJsZVwiICpuZ0lmPVwiaGFzVGFibGVcIiAjdGFibGVSZWY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ4LWZpbmQtc2VhcmNoXCIgKm5nSWY9XCJoYXNTZWFyY2hcIj5cclxuICAgICAgICA8eC1pbnB1dCBbbGFiZWxdPVwic2VhcmNoLmxhYmVsXCIgZGlyZWN0aW9uPVwicm93XCIgKHhLZXlkb3duKT1cInNlYXJjaEtleURvd24oJGV2ZW50KVwiIFsobmdNb2RlbCldPVwic2VhcmNoLnZhbHVlXCI+PC94LWlucHV0PlxyXG4gICAgICAgIDx4LWJ1dHRvbiB0eXBlPVwicHJpbWFyeVwiIHBsYWluIChjbGljayk9XCJzZWFyY2hDbGljaygpXCI+e3sgc2VhcmNoLmJ1dHRvbiB8fCAn5p+l6K+iJyB9fTwveC1idXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8eC10YWJsZVxyXG4gICAgICAgICN0YWJsZUNvbVxyXG4gICAgICAgIFtkYXRhXT1cInRhYmxlRGF0YVwiXHJcbiAgICAgICAgW2NvbHVtbnNdPVwidGFibGVDb2x1bW5zXCJcclxuICAgICAgICBbKG1hbnVhbCldPVwiZGlhbG9nVmlzaWJsZVwiXHJcbiAgICAgICAgWyhpbmRleCldPVwidGFibGVJbmRleFwiXHJcbiAgICAgICAgWyhzaXplKV09XCJ0YWJsZVNpemVcIlxyXG4gICAgICAgIFtxdWVyeV09XCJ0YWJsZVF1ZXJ5XCJcclxuICAgICAgICBbdG90YWxdPVwidGFibGVUb3RhbFwiXHJcbiAgICAgICAgW2FsbG93U2VsZWN0Um93XT1cIiFtdWx0aXBsZVwiXHJcbiAgICAgICAgW2FsbG93Q2hlY2tSb3ddPVwibXVsdGlwbGVcIlxyXG4gICAgICAgIFtjaGVja2VkUm93XT1cInRhYmxlQ2hlY2tlZFJvd1wiXHJcbiAgICAgICAgW2xvYWRpbmddPVwidGFibGVMb2FkaW5nXCJcclxuICAgICAgICAoaW5kZXhDaGFuZ2UpPVwidGFibGVJbmRleENoYW5nZS5lbWl0KCRldmVudClcIlxyXG4gICAgICAgIChzb3J0Q2hhbmdlKT1cInRhYmxlU29ydENoYW5nZS5lbWl0KCRldmVudClcIlxyXG4gICAgICAgIFsoYWN0aXZhdGVkUm93KV09XCJ0YWJsZUFjdGl2YXRlZFJvd1wiXHJcbiAgICAgICAgKGFjdGl2YXRlZFJvd0NoYW5nZSk9XCJ0YWJsZUFjdGl2YXRlZFJvd0NoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICBbcm93SGVpZ2h0XT1cInRhYmxlUm93SGVpZ2h0XCJcclxuICAgICAgICBbYm9keUhlaWdodF09XCJ0YWJsZUJvZHlIZWlnaHRcIlxyXG4gICAgICAgIFt2aXJ0dWFsU2Nyb2xsXT1cInRhYmxlVmlydHVhbFNjcm9sbFwiXHJcbiAgICAgICAgW21pbkJ1ZmZlclB4XT1cInRhYmxlTWluQnVmZmVyUHhcIlxyXG4gICAgICAgIFttYXhCdWZmZXJQeF09XCJ0YWJsZU1heEJ1ZmZlclB4XCJcclxuICAgICAgICBbYWRhcHRpb25IZWlnaHRdPVwidGFibGVBZGFwdGlvbkhlaWdodFwiXHJcbiAgICAgICAgW2RvY1BlcmNlbnRdPVwidGFibGVEb2NQZXJjZW50XCJcclxuICAgICAgPjwveC10YWJsZT5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiAqbmdJZj1cIm11bHRpcGxlXCIgY2xhc3M9XCJ4LWZpbmQtZGlhbG9nLWNoZWNrZWRcIiBbY2xhc3MueC1maW5kLWVtcHR5XT1cImdldEVtcHR5XCIgW3N0eWxlLmhlaWdodC5weF09XCJoZWlnaHRcIj5cclxuICAgICAgPHgtZW1wdHkgKm5nSWY9XCJnZXRFbXB0eVwiIFtjb250ZW50XT1cImRpYWxvZ0VtcHR5Q29udGVudFwiPjwveC1lbXB0eT5cclxuICAgICAgPGRpdiBjbGFzcz1cIngtZmluZC1kaWFsb2ctdGFnc1wiPlxyXG4gICAgICAgIDx4LXRhZyAqbmdGb3I9XCJsZXQgaXRlbSBvZiB0ZW1wOyBpbmRleCBhcyBpOyB0cmFja0J5OiB0cmFja0J5SXRlbVwiIGNsb3NhYmxlIChjbG9zZSk9XCJ0ZW1wQ2xvc2UoaSwgaXRlbSlcIj5cclxuICAgICAgICAgIDxzcGFuPnt7IGl0ZW1bY29sdW1uTGFiZWxdIH19PC9zcGFuPlxyXG4gICAgICAgIDwveC10YWc+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwveC1kaWFsb2c+XHJcblxyXG48bmctdGVtcGxhdGUgI3RyZWVMYWJlbFRwbCBsZXQtbm9kZT1cIiRub2RlXCI+XHJcbiAgPGRpdiBjbGFzcz1cIngtZmluZC1kaWFsb2ctdHJlZS1ub2RlXCI+XHJcbiAgICA8c3Bhbj57eyBub2RlLmxhYmVsIH19IDwvc3Bhbj5cclxuICAgIDx4LWljb24gdHlwZT1cImZ0by1jaGVja1wiICpuZ0lmPVwibm9kZS4kY2hlY2tlZFwiPjwveC1pY29uPlxyXG4gIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
|
|
@@ -192,6 +192,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImpor
|
|
|
192
192
|
type: Input
|
|
193
193
|
}], control: [{
|
|
194
194
|
type: ViewChild,
|
|
195
|
-
args: [FormControlName
|
|
195
|
+
args: [FormControlName]
|
|
196
196
|
}] } });
|
|
197
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS9mb3JtL2NvbnRyb2wuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvZm9ybS9jb250cm9sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsaUJBQWlCLEVBQ2pCLHVCQUF1QixFQUN2QixLQUFLLEVBQ0wsU0FBUyxFQUtWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxnQkFBZ0IsRUFJaEIsZUFBZSxFQUVmLGFBQWEsRUFFYixjQUFjLEVBRWQsZ0JBQWdCLEVBRWhCLGFBQWEsRUFHYixrQkFBa0IsRUFDbEIsbUJBQW1CLEVBRW5CLGNBQWMsRUFFZCxZQUFZLEVBRVosb0JBQW9CLEVBRXBCLGtCQUFrQixFQUVsQixtQkFBbUIsRUFHbkIsWUFBWSxFQUdaLGdCQUFnQixFQUNoQixvQkFBb0IsRUFFckIsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxrQkFBa0IsRUFBd0QsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2SSxPQUFPLEVBQUUsUUFBUSxFQUFrQixXQUFXLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFaEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVM1RCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsZ0JBQWdCO0lBWXJEO0lBQ0UsbURBQW1EO0lBQzVDLEdBQXNCLEVBQ3RCLGFBQTZCLEVBQzdCLElBQWtCO1FBRXpCLEtBQUssRUFB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TUFBbUMsQ0FBQyxDQUFDO1lBQ3RFLEtBQUssZUFBZTtnQkFDbEIsT0FBTyxJQUFJLG9CQUFvQixDQUFDLE1BQW9DLENBQUMsQ0FBQztZQUN4RSxLQUFLLFNBQVM7Z0JBQ1osT0FBTyxJQUFJLGVBQWUsQ0FBQyxNQUErQixDQUFDLENBQUM7WUFDOUQsS0FBSyxjQUFjO2dCQUNqQixPQUFPLElBQUksbUJBQW1CLENBQUMsTUFBbUMsQ0FBQyxDQUFDO1lBQ3RFLEtBQUssVUFBVTtnQkFDYixPQUFPLElBQUksZ0JBQWdCLENBQUMsTUFBZ0MsQ0FBQyxDQUFDO1lBQ2hFLEtBQUssTUFBTTtnQkFDVCxPQUFPLElBQUksWUFBWSxDQUFDLE1BQTRCLENBQUMsQ0FBQztZQUN4RCxLQUFLLGVBQWU7Z0JBQ2xCLE9BQU8sSUFBSSxvQkFBb0IsQ0FBQyxNQUFvQyxDQUFDLENBQUM7WUFDeEU7Z0JBQ0UsT0FBTyxJQUFJLGFBQWEsQ0FBQyxNQUE2QixDQUFDLENBQUM7U0FDM0Q7SUFDSCxDQUFDOztpSUFwS1UsaUJBQWlCO3FIQUFqQixpQkFBaUIsc0lBR2pCLGVBQWUsdUVDakU1QixtaEZBaURBOzJGRGFhLGlCQUFpQjtrQkFQN0IsU0FBUzsrQkFDRSxXQUFXLGlCQUdOLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU07Z0tBRzdCLE1BQU07c0JBQXZCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUN5QyxPQUFPO3NCQUFyRCxTQUFTO3VCQUFDLGVBQWUsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBJbnB1dCxcclxuICBWaWV3Q2hpbGQsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgT25Jbml0LFxyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgT25EZXN0cm95XHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgWENvbnRyb2xQcm9wZXJ0eSxcclxuICBYRm9ybUNvbnRyb2xPcHRpb24sXHJcbiAgWEZvcm1Db250cm9sQ29tcG9uZW50LFxyXG4gIFhGb3JtQ29udHJvbFR5cGUsXHJcbiAgWENhc2NhZGVDb250cm9sLFxyXG4gIFhDYXNjYWRlQ29udHJvbE9wdGlvbixcclxuICBYSW5wdXRDb250cm9sLFxyXG4gIFhJbnB1dENvbnRyb2xPcHRpb24sXHJcbiAgWFNlbGVjdENvbnRyb2wsXHJcbiAgWFNlbGVjdENvbnRyb2xPcHRpb24sXHJcbiAgWENoZWNrYm94Q29udHJvbCxcclxuICBYQ2hlY2tib3hDb250cm9sT3B0aW9uLFxyXG4gIFhSYWRpb0NvbnRyb2wsXHJcbiAgWFJhZGlvQ29udHJvbE9wdGlvbixcclxuICBYRGF0ZVBpY2tlckNvbnRyb2xPcHRpb24sXHJcbiAgWERhdGVQaWNrZXJDb250cm9sLFxyXG4gIFhJbnB1dE51bWJlckNvbnRyb2wsXHJcbiAgWElucHV0TnVtYmVyQ29udHJvbE9wdGlvbixcclxuICBYU3dpdGNoQ29udHJvbCxcclxuICBYU3dpdGNoQ29udHJvbE9wdGlvbixcclxuICBYUmF0ZUNvbnRyb2wsXHJcbiAgWFJhdGVDb250cm9sT3B0aW9uLFxyXG4gIFhTbGlkZXJTZWxlY3RDb250cm9sLFxyXG4gIFhTbGlkZXJTZWxlY3RDb250cm9sT3B0aW9uLFxyXG4gIFhUaW1lUGlja2VyQ29udHJvbCxcclxuICBYVGltZVBpY2tlckNvbnRyb2xPcHRpb24sXHJcbiAgWENvbG9yUGlja2VyQ29udHJvbCxcclxuICBYQ29sb3JQaWNrZXJDb250cm9sT3B0aW9uLFxyXG4gIFhGb3JtQ29udHJvbCxcclxuICBYRmluZENvbnRyb2wsXHJcbiAgWEZpbmRDb250cm9sT3B0aW9uLFxyXG4gIFhUZXh0YXJlYUNvbnRyb2xPcHRpb24sXHJcbiAgWFRleHRhcmVhQ29udHJvbCxcclxuICBYQXV0b0NvbXBsZXRlQ29udHJvbCxcclxuICBYQXV0b0NvbXBsZXRlQ29udHJvbE9wdGlvblxyXG59IGZyb20gJy4vZm9ybS5wcm9wZXJ0eSc7XHJcbmltcG9ydCB7IEZvcm1Db250cm9sTmFtZSwgVmFsaWRhdG9ycywgVW50eXBlZEZvcm1Db250cm9sLCBWYWxpZGF0b3JGbiwgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEZvcm1Db250cm9sU3RhdHVzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBYSXNFbXB0eSwgWENvbmZpZ1NlcnZpY2UsIFhJc0Z1bmN0aW9uIH0gZnJvbSAnQG5nLW5lc3QvdWkvY29yZSc7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgbWFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFhJMThuRm9ybSwgWEkxOG5TZXJ2aWNlIH0gZnJvbSAnQG5nLW5lc3QvdWkvaTE4bic7XHJcbmltcG9ydCB7IFhGb3JtSW5wdXRWYWxpZGF0b3IgfSBmcm9tICdAbmctbmVzdC91aS9iYXNlLWZvcm0nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd4LWNvbnRyb2wnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jb250cm9sLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jb250cm9sLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgWENvbnRyb2xDb21wb25lbnQgZXh0ZW5kcyBYQ29udHJvbFByb3BlcnR5IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xyXG4gIEBJbnB1dCgpIG92ZXJyaWRlIG9wdGlvbiE6IFhGb3JtQ29udHJvbE9wdGlvbjtcclxuICBASW5wdXQoKSBmb3JtOiBhbnk7XHJcbiAgQFZpZXdDaGlsZChGb3JtQ29udHJvbE5hbWUsIHsgc3RhdGljOiBmYWxzZSB9KSBjb250cm9sITogRm9ybUNvbnRyb2xOYW1lO1xyXG4gIGxvY2FsZTogWEkxOG5Gb3JtID0ge307XHJcbiAgcHJpdmF0ZSBfc2hhcmVkUHJvcHMgPSBbJ3NwYW4nLCAnZGlyZWN0aW9uJywgJ2p1c3RpZnknLCAnYWxpZ24nLCAnbGFiZWxXaWR0aCcsICdsYWJlbEFsaWduJ107XHJcbiAgcHJpdmF0ZSBfY2hhbmdlUHJvcHMgPSBbJ2xhYmVsJywgLi4udGhpcy5fc2hhcmVkUHJvcHNdO1xyXG4gIHByaXZhdGUgX2NvbnRyb2whOiBYRm9ybUNvbnRyb2xUeXBlO1xyXG4gIHByaXZhdGUgX3ZhbGlkYXRvckZuczogVmFsaWRhdG9yRm5bXSA9IFtdO1xyXG4gIHByaXZhdGUgX3VuU3ViamVjdCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgcHJpdmF0ZSBfZm9ybUNvbnRyb2whOiBVbnR5cGVkRm9ybUNvbnRyb2w7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgLy8gQEhvc3QoKSBAT3B0aW9uYWwoKSBwdWJsaWMgZm9ybTogWEZvcm1Db21wb25lbnQsXHJcbiAgICBwdWJsaWMgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHB1YmxpYyBjb25maWdTZXJ2aWNlOiBYQ29uZmlnU2VydmljZSxcclxuICAgIHB1YmxpYyBpMThuOiBYSTE4blNlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMub3B0aW9uID0geyAuLi50aGlzLm9wdGlvbiB9O1xyXG4gICAgdGhpcy5zZXRQcm9wcygpO1xyXG4gICAgaWYgKFhJc0VtcHR5KHRoaXMub3B0aW9uLmxhYmVsKSkgdGhpcy5vcHRpb24ubGFiZWwgPSAnJztcclxuICAgIHRoaXMub3B0aW9uLmxhYmVsID0gYCR7dGhpcy5vcHRpb24ubGFiZWx9JHt0aGlzLmZvcm0ubGFiZWxTdWZmaXh9YDtcclxuICAgIHRoaXMuX2NvbnRyb2wgPSB0aGlzLmNyZWF0ZUNvbnRyb2wodGhpcy5vcHRpb24pO1xyXG4gICAgdGhpcy5fZm9ybUNvbnRyb2wgPSBuZXcgVW50eXBlZEZvcm1Db250cm9sKHRoaXMuX2NvbnRyb2wudmFsdWUpO1xyXG4gICAgdGhpcy5zZXRWYWxpZGF0b3JzKCk7XHJcbiAgICB0aGlzLl9mb3JtQ29udHJvbC5zdGF0dXNDaGFuZ2VzLnBpcGUodGFrZVVudGlsKHRoaXMuX3VuU3ViamVjdCkpLnN1YnNjcmliZSgoeCkgPT4ge1xyXG4gICAgICB0aGlzLnNldE1lc3NhZ2VzKHgpO1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLl9jb250cm9sLnNldFZhbGlkYXRvcnMgPSAoKSA9PiB0aGlzLnNldFZhbGlkYXRvcnMoKTtcclxuICAgIHRoaXMuZm9ybS5mb3JtR3JvdXAuYWRkQ29udHJvbCh0aGlzLl9jb250cm9sLmlkLCB0aGlzLl9mb3JtQ29udHJvbCk7XHJcbiAgICB0aGlzLm9wdGlvbi5jaGFuZ2UgPSAoKSA9PiB7XHJcbiAgICAgIHRoaXMuX2NoYW5nZVByb3BzLmZvckVhY2goKHg6IHN0cmluZykgPT4ge1xyXG4gICAgICAgIGlmICh0aGlzLmNvbnRyb2wudmFsdWVBY2Nlc3NvciAmJiB0aGlzLm9wdGlvblt4XSkge1xyXG4gICAgICAgICAgKHRoaXMuY29udHJvbC52YWx1ZUFjY2Vzc29yIGFzIGFueSlbeF0gPSB0aGlzLm9wdGlvblt4XTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgICB0aGlzLmZvcm0uY29udHJvbENvbXBvbmVudHNbdGhpcy5fY29udHJvbC5pZF0uZm9ybUNvbnRyb2xDaGFuZ2VzKCk7XHJcbiAgICB9O1xyXG4gICAgdGhpcy5pMThuLmxvY2FsZUNoYW5nZVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtYXAoKHgpID0+IHguZm9ybSBhcyBYSTE4bkZvcm0pLFxyXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl91blN1YmplY3QpXHJcbiAgICAgIClcclxuICAgICAgLnN1YnNjcmliZSgoeCkgPT4ge1xyXG4gICAgICAgIHRoaXMubG9jYWxlID0geDtcclxuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICBPYmplY3QuYXNzaWduKHRoaXMuY29udHJvbC52YWx1ZUFjY2Vzc29yISwgdGhpcy5fY29udHJvbCBhcyBDb250cm9sVmFsdWVBY2Nlc3Nvcik7XHJcbiAgICB0aGlzLmZvcm0uY29udHJvbFR5cGVzW3RoaXMuX2NvbnRyb2wuaWRdID0gdGhpcy5fY29udHJvbDtcclxuICAgIHRoaXMuZm9ybS5jb250cm9sQ29tcG9uZW50c1t0aGlzLl9jb250cm9sLmlkXSA9IHRoaXMuY29udHJvbC52YWx1ZUFjY2Vzc29yIGFzIFhGb3JtQ29udHJvbENvbXBvbmVudDtcclxuICAgIHRoaXMuZm9ybS5jb250cm9sQ29tcG9uZW50c1t0aGlzLl9jb250cm9sLmlkXS5mb3JtQ29udHJvbENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5fdW5TdWJqZWN0Lm5leHQoKTtcclxuICAgIHRoaXMuX3VuU3ViamVjdC51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgc2V0VmFsaWRhdG9ycygpIHtcclxuICAgIHRoaXMuX3ZhbGlkYXRvckZucyA9IFtdO1xyXG4gICAgaWYgKHRoaXMuX2NvbnRyb2wuZGlzYWJsZWQgfHwgdGhpcy5mb3JtLmRpc2FibGVkKSB7XHJcbiAgICAgIHRoaXMuX2Zvcm1Db250cm9sLmRpc2FibGUoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuX2Zvcm1Db250cm9sLmVuYWJsZSgpO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuX2NvbnRyb2wucmVxdWlyZWQgJiYgIXRoaXMuZm9ybS5kaXNhYmxlZCkge1xyXG4gICAgICB0aGlzLl92YWxpZGF0b3JGbnMgPSBbLi4udGhpcy5fdmFsaWRhdG9yRm5zLCBWYWxpZGF0b3JzLnJlcXVpcmVkXTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLl9jb250cm9sLnBhdHRlcm4pIHtcclxuICAgICAgdGhpcy5zZXRQYXR0ZXJuKCk7XHJcbiAgICB9XHJcbiAgICBpZiAoWElzRnVuY3Rpb24odGhpcy5fY29udHJvbC5pbnB1dFZhbGlkYXRvcikpIHtcclxuICAgICAgdGhpcy5fdmFsaWRhdG9yRm5zID0gWy4uLnRoaXMuX3ZhbGlkYXRvckZucywgWEZvcm1JbnB1dFZhbGlkYXRvcih0aGlzLl9jb250cm9sLmlucHV0VmFsaWRhdG9yISldO1xyXG4gICAgfVxyXG4gICAgdGhpcy5fZm9ybUNvbnRyb2wuc2V0VmFsaWRhdG9ycyh0aGlzLl92YWxpZGF0b3JGbnMpO1xyXG4gICAgdGhpcy5fZm9ybUNvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gIH1cclxuXHJcbiAgc2V0UHJvcHMoKSB7XHJcbiAgICBmb3IgKGxldCBwcm9wIG9mIHRoaXMuX3NoYXJlZFByb3BzKSB7XHJcbiAgICAgIGlmIChYSXNFbXB0eSh0aGlzLm9wdGlvbltwcm9wXSkpIHRoaXMub3B0aW9uW3Byb3BdID0gKHRoaXMuZm9ybSBhcyBhbnkpW3Byb3BdO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2V0UGF0dGVybigpIHtcclxuICAgIGlmIChBcnJheS5pc0FycmF5KHRoaXMuX2NvbnRyb2wucGF0dGVybikpIHtcclxuICAgICAgZm9yIChjb25zdCBwdCBvZiB0aGlzLl9jb250cm9sLnBhdHRlcm4pIHtcclxuICAgICAgICB0aGlzLl92YWxpZGF0b3JGbnMgPSBbLi4udGhpcy5fdmFsaWRhdG9yRm5zLCBWYWxpZGF0b3JzLnBhdHRlcm4ocHQpXTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5fdmFsaWRhdG9yRm5zID0gWy4uLnRoaXMuX3ZhbGlkYXRvckZucywgVmFsaWRhdG9ycy5wYXR0ZXJuKHRoaXMuX2NvbnRyb2wucGF0dGVybiBhcyBSZWdFeHApXTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldFBhdHRlcm5Nc2cocGF0dGVybjogc3RyaW5nKSB7XHJcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh0aGlzLl9jb250cm9sLnBhdHRlcm4pKSB7XHJcbiAgICAgIHJldHVybiAodGhpcy5fY29udHJvbC5tZXNzYWdlIGFzIEFycmF5PGFueT4pW3RoaXMuX2NvbnRyb2wucGF0dGVybi5maW5kSW5kZXgoKHgpID0+IFN0cmluZyh4KSA9PT0gcGF0dGVybildO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIHRoaXMuX2NvbnRyb2wubWVzc2FnZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNldE1lc3NhZ2VzKHN0YXRlOiBGb3JtQ29udHJvbFN0YXR1cykge1xyXG4gICAgbGV0IGNvbnRyb2w6IFhGb3JtQ29udHJvbCA9IHRoaXMuX2Zvcm1Db250cm9sO1xyXG4gICAgaWYgKHN0YXRlID09PSAnSU5WQUxJRCcgJiYgdGhpcy5fZm9ybUNvbnRyb2wuZXJyb3JzICE9PSBudWxsKSB7XHJcbiAgICAgIGxldCBtZXNzYWdlczogc3RyaW5nW10gPSBbXTtcclxuICAgICAgZm9yIChjb25zdCBrZXkgaW4gY29udHJvbC5lcnJvcnMpIHtcclxuICAgICAgICBjb25zdCBsYWJlbCA9IHRoaXMuX2NvbnRyb2wubGFiZWwgfHwgdGhpcy5fY29udHJvbC5pZDtcclxuICAgICAgICBpZiAoa2V5ID09PSAncmVxdWlyZWQnKSB7XHJcbiAgICAgICAgICBtZXNzYWdlcyA9IFsuLi5tZXNzYWdlcywgYCR7bGFiZWx9ICR7dGhpcy5sb2NhbGU/LnJlcXVpcmVkIHx8ICdyZXF1aXJlZCd9YF07XHJcbiAgICAgICAgfSBlbHNlIGlmIChrZXkgPT09ICdwYXR0ZXJuJykge1xyXG4gICAgICAgICAgbWVzc2FnZXMgPSBbLi4ubWVzc2FnZXMsIGAke2xhYmVsfSAke3RoaXMuZ2V0UGF0dGVybk1zZyhjb250cm9sLmVycm9yc1trZXldLnJlcXVpcmVkUGF0dGVybil9YF07XHJcbiAgICAgICAgfSBlbHNlIGlmIChrZXkgPT09ICdpbnB1dFZhbGlkYXRvcicpIHtcclxuICAgICAgICAgIG1lc3NhZ2VzID0gWy4uLm1lc3NhZ2VzLCBgJHtsYWJlbH0gJHt0aGlzLl9jb250cm9sLm1lc3NhZ2V9YF07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGNvbnRyb2wubWVzc2FnZXMgPSBtZXNzYWdlcztcclxuICAgIH0gZWxzZSBpZiAoc3RhdGUgPT09ICdWQUxJRCcpIHtcclxuICAgICAgY29udHJvbC5tZXNzYWdlcyA9IFtdO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY3JlYXRlQ29udHJvbChvcHRpb246IFhGb3JtQ29udHJvbE9wdGlvbikge1xyXG4gICAgc3dpdGNoIChvcHRpb24uY29udHJvbCkge1xyXG4gICAgICBjYXNlICdpbnB1dCc6XHJcbiAgICAgICAgcmV0dXJuIG5ldyBYSW5wdXRDb250cm9sKG9wdGlvbiBhcyBYSW5wdXRDb250cm9sT3B0aW9uKTtcclxuICAgICAgY2FzZSAnc2VsZWN0JzpcclxuICAgICAgICByZXR1cm4gbmV3IFhTZWxlY3RDb250cm9sKG9wdGlvbiBhcyBYU2VsZWN0Q29udHJvbE9wdGlvbik7XHJcbiAgICAgIGNhc2UgJ2NoZWNrYm94JzpcclxuICAgICAgICByZXR1cm4gbmV3IFhDaGVja2JveENvbnRyb2wob3B0aW9uIGFzIFhDaGVja2JveENvbnRyb2xPcHRpb24pO1xyXG4gICAgICBjYXNlICdyYWRpbyc6XHJcbiAgICAgICAgcmV0dXJuIG5ldyBYUmFkaW9Db250cm9sKG9wdGlvbiBhcyBYUmFkaW9Db250cm9sT3B0aW9uKTtcclxuICAgICAgY2FzZSAnc3dpdGNoJzpcclxuICAgICAgICByZXR1cm4gbmV3IFhTd2l0Y2hDb250cm9sKG9wdGlvbiBhcyBYU3dpdGNoQ29udHJvbE9wdGlvbik7XHJcbiAgICAgIGNhc2UgJ3JhdGUnOlxyXG4gICAgICAgIHJldHVybiBuZXcgWFJhdGVDb250cm9sKG9wdGlvbiBhcyBYUmF0ZUNvbnRyb2xPcHRpb24pO1xyXG4gICAgICBjYXNlICdkYXRlLXBpY2tlcic6XHJcbiAgICAgICAgcmV0dXJuIG5ldyBYRGF0ZVBpY2tlckNvbnRyb2wob3B0aW9uIGFzIFhEYXRlUGlja2VyQ29udHJvbE9wdGlvbik7XHJcbiAgICAgIGNhc2UgJ3RpbWUtcGlja2VyJzpcclxuICAgICAgICByZXR1cm4gbmV3IFhUaW1lUGlja2VyQ29udHJvbChvcHRpb24gYXMgWFRpbWVQaWNrZXJDb250cm9sT3B0aW9uKTtcclxuICAgICAgY2FzZSAnaW5wdXQtbnVtYmVyJzpcclxuICAgICAgICByZXR1cm4gbmV3IFhJbnB1dE51bWJlckNvbnRyb2wob3B0aW9uIGFzIFhJbnB1dE51bWJlckNvbnRyb2xPcHRpb24pO1xyXG4gICAgICBjYXNlICdzbGlkZXItc2VsZWN0JzpcclxuICAgICAgICByZXR1cm4gbmV3IFhTbGlkZXJTZWxlY3RDb250cm9sKG9wdGlvbiBhcyBYU2xpZGVyU2VsZWN0Q29udHJvbE9wdGlvbik7XHJcbiAgICAgIGNhc2UgJ2Nhc2NhZGUnOlxyXG4gICAgICAgIHJldHVybiBuZXcgWENhc2NhZGVDb250cm9sKG9wdGlvbiBhcyBYQ2FzY2FkZUNvbnRyb2xPcHRpb24pO1xyXG4gICAgICBjYXNlICdjb2xvci1waWNrZXInOlxyXG4gICAgICAgIHJldHVybiBuZXcgWENvbG9yUGlja2VyQ29udHJvbChvcHRpb24gYXMgWENvbG9yUGlja2VyQ29udHJvbE9wdGlvbik7XHJcbiAgICAgIGNhc2UgJ3RleHRhcmVhJzpcclxuICAgICAgICByZXR1cm4gbmV3IFhUZXh0YXJlYUNvbnRyb2wob3B0aW9uIGFzIFhUZXh0YXJlYUNvbnRyb2xPcHRpb24pO1xyXG4gICAgICBjYXNlICdmaW5kJzpcclxuICAgICAgICByZXR1cm4gbmV3IFhGaW5kQ29udHJvbChvcHRpb24gYXMgWEZpbmRDb250cm9sT3B0aW9uKTtcclxuICAgICAgY2FzZSAnYXV0by1jb21wbGV0ZSc6XHJcbiAgICAgICAgcmV0dXJuIG5ldyBYQXV0b0NvbXBsZXRlQ29udHJvbChvcHRpb24gYXMgWEF1dG9Db21wbGV0ZUNvbnRyb2xPcHRpb24pO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHJldHVybiBuZXcgWElucHV0Q29udHJvbChvcHRpb24gYXMgWElucHV0Q29udHJvbE9wdGlvbik7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJ4LWNvbnRyb2xcIiBbZm9ybUdyb3VwXT1cImZvcm0uZm9ybUdyb3VwXCI+XHJcbiAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwib3B0aW9uLmNvbnRyb2xcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidpbnB1dCdcIj5cclxuICAgICAgPHgtaW5wdXQgW2Zvcm1Db250cm9sTmFtZV09XCJvcHRpb24uaWRcIiAoY2xlYXJFbWl0KT1cIm9wdGlvbi5jbGVhckNsaWNrICYmIG9wdGlvbi5jbGVhckNsaWNrKCRldmVudClcIj48L3gtaW5wdXQ+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidzZWxlY3QnXCI+XHJcbiAgICAgIDx4LXNlbGVjdCBbZm9ybUNvbnRyb2xOYW1lXT1cIm9wdGlvbi5pZFwiPjwveC1zZWxlY3Q+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidjYXNjYWRlJ1wiPlxyXG4gICAgICA8eC1jYXNjYWRlIFtmb3JtQ29udHJvbE5hbWVdPVwib3B0aW9uLmlkXCIgKG5vZGVFbWl0KT1cIm9wdGlvbi5ub2RlQ2xpY2sgJiYgb3B0aW9uLm5vZGVDbGljaygkZXZlbnQpXCI+PC94LWNhc2NhZGU+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidjaGVja2JveCdcIj5cclxuICAgICAgPHgtY2hlY2tib3ggW2Zvcm1Db250cm9sTmFtZV09XCJvcHRpb24uaWRcIj48L3gtY2hlY2tib3g+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidjb2xvci1waWNrZXInXCI+XHJcbiAgICAgIDx4LWNvbG9yLXBpY2tlciBbZm9ybUNvbnRyb2xOYW1lXT1cIm9wdGlvbi5pZFwiPjwveC1jb2xvci1waWNrZXI+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidkYXRlLXBpY2tlcidcIj5cclxuICAgICAgPHgtZGF0ZS1waWNrZXIgW2Zvcm1Db250cm9sTmFtZV09XCJvcHRpb24uaWRcIiAobm9kZUVtaXQpPVwib3B0aW9uLm5vZGVDbGljayAmJiBvcHRpb24ubm9kZUNsaWNrKCRldmVudClcIj48L3gtZGF0ZS1waWNrZXI+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidpbnB1dC1udW1iZXInXCI+XHJcbiAgICAgIDx4LWlucHV0LW51bWJlciBbZm9ybUNvbnRyb2xOYW1lXT1cIm9wdGlvbi5pZFwiPjwveC1pbnB1dC1udW1iZXI+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidyYWRpbydcIj5cclxuICAgICAgPHgtcmFkaW8gW2Zvcm1Db250cm9sTmFtZV09XCJvcHRpb24uaWRcIj48L3gtcmFkaW8+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidyYXRlJ1wiPlxyXG4gICAgICA8eC1yYXRlIFtmb3JtQ29udHJvbE5hbWVdPVwib3B0aW9uLmlkXCI+PC94LXJhdGU+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidzbGlkZXItc2VsZWN0J1wiPlxyXG4gICAgICA8eC1zbGlkZXItc2VsZWN0IFtmb3JtQ29udHJvbE5hbWVdPVwib3B0aW9uLmlkXCI+PC94LXNsaWRlci1zZWxlY3Q+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidzd2l0Y2gnXCI+XHJcbiAgICAgIDx4LXN3aXRjaCBbZm9ybUNvbnRyb2xOYW1lXT1cIm9wdGlvbi5pZFwiPjwveC1zd2l0Y2g+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIid0aW1lLXBpY2tlcidcIj5cclxuICAgICAgPHgtdGltZS1waWNrZXIgW2Zvcm1Db250cm9sTmFtZV09XCJvcHRpb24uaWRcIj48L3gtdGltZS1waWNrZXI+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIid0ZXh0YXJlYSdcIj5cclxuICAgICAgPHgtdGV4dGFyZWEgW2Zvcm1Db250cm9sTmFtZV09XCJvcHRpb24uaWRcIiAoY2xlYXJFbWl0KT1cIm9wdGlvbi5jbGVhckNsaWNrICYmIG9wdGlvbi5jbGVhckNsaWNrKCRldmVudClcIj48L3gtdGV4dGFyZWE+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidhdXRvLWNvbXBsZXRlJ1wiPlxyXG4gICAgICA8eC1hdXRvLWNvbXBsZXRlIFtmb3JtQ29udHJvbE5hbWVdPVwib3B0aW9uLmlkXCIgKG5vZGVFbWl0KT1cIm9wdGlvbi5ub2RlQ2xpY2sgJiYgb3B0aW9uLm5vZGVDbGljaygkZXZlbnQpXCI+PC94LWF1dG8tY29tcGxldGU+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidmaW5kJ1wiPlxyXG4gICAgICA8eC1maW5kIFtmb3JtQ29udHJvbE5hbWVdPVwib3B0aW9uLmlkXCI+PC94LWZpbmQ+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
197
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS9mb3JtL2NvbnRyb2wuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvZm9ybS9jb250cm9sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsaUJBQWlCLEVBQ2pCLHVCQUF1QixFQUN2QixLQUFLLEVBQ0wsU0FBUyxFQUtWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxnQkFBZ0IsRUFJaEIsZUFBZSxFQUVmLGFBQWEsRUFFYixjQUFjLEVBRWQsZ0JBQWdCLEVBRWhCLGFBQWEsRUFHYixrQkFBa0IsRUFDbEIsbUJBQW1CLEVBRW5CLGNBQWMsRUFFZCxZQUFZLEVBRVosb0JBQW9CLEVBRXBCLGtCQUFrQixFQUVsQixtQkFBbUIsRUFHbkIsWUFBWSxFQUdaLGdCQUFnQixFQUNoQixvQkFBb0IsRUFFckIsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxrQkFBa0IsRUFBd0QsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2SSxPQUFPLEVBQUUsUUFBUSxFQUFrQixXQUFXLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFaEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVM1RCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsZ0JBQWdCO0lBWXJEO0lBQ0UsbURBQW1EO0lBQzVDLEdBQXNCLEVBQ3RCLGFBQTZCLEVBQzdCLElBQWtCO1FBRXpCLEtBQUssRUFB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TUFBbUMsQ0FBQyxDQUFDO1lBQ3RFLEtBQUssZUFBZTtnQkFDbEIsT0FBTyxJQUFJLG9CQUFvQixDQUFDLE1BQW9DLENBQUMsQ0FBQztZQUN4RSxLQUFLLFNBQVM7Z0JBQ1osT0FBTyxJQUFJLGVBQWUsQ0FBQyxNQUErQixDQUFDLENBQUM7WUFDOUQsS0FBSyxjQUFjO2dCQUNqQixPQUFPLElBQUksbUJBQW1CLENBQUMsTUFBbUMsQ0FBQyxDQUFDO1lBQ3RFLEtBQUssVUFBVTtnQkFDYixPQUFPLElBQUksZ0JBQWdCLENBQUMsTUFBZ0MsQ0FBQyxDQUFDO1lBQ2hFLEtBQUssTUFBTTtnQkFDVCxPQUFPLElBQUksWUFBWSxDQUFDLE1BQTRCLENBQUMsQ0FBQztZQUN4RCxLQUFLLGVBQWU7Z0JBQ2xCLE9BQU8sSUFBSSxvQkFBb0IsQ0FBQyxNQUFvQyxDQUFDLENBQUM7WUFDeEU7Z0JBQ0UsT0FBTyxJQUFJLGFBQWEsQ0FBQyxNQUE2QixDQUFDLENBQUM7U0FDM0Q7SUFDSCxDQUFDOztpSUFwS1UsaUJBQWlCO3FIQUFqQixpQkFBaUIsc0lBR2pCLGVBQWUsdUVDakU1QixtaEZBaURBOzJGRGFhLGlCQUFpQjtrQkFQN0IsU0FBUzsrQkFDRSxXQUFXLGlCQUdOLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU07Z0tBRzdCLE1BQU07c0JBQXZCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNzQixPQUFPO3NCQUFsQyxTQUFTO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBJbnB1dCxcclxuICBWaWV3Q2hpbGQsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgT25Jbml0LFxyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgT25EZXN0cm95XHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgWENvbnRyb2xQcm9wZXJ0eSxcclxuICBYRm9ybUNvbnRyb2xPcHRpb24sXHJcbiAgWEZvcm1Db250cm9sQ29tcG9uZW50LFxyXG4gIFhGb3JtQ29udHJvbFR5cGUsXHJcbiAgWENhc2NhZGVDb250cm9sLFxyXG4gIFhDYXNjYWRlQ29udHJvbE9wdGlvbixcclxuICBYSW5wdXRDb250cm9sLFxyXG4gIFhJbnB1dENvbnRyb2xPcHRpb24sXHJcbiAgWFNlbGVjdENvbnRyb2wsXHJcbiAgWFNlbGVjdENvbnRyb2xPcHRpb24sXHJcbiAgWENoZWNrYm94Q29udHJvbCxcclxuICBYQ2hlY2tib3hDb250cm9sT3B0aW9uLFxyXG4gIFhSYWRpb0NvbnRyb2wsXHJcbiAgWFJhZGlvQ29udHJvbE9wdGlvbixcclxuICBYRGF0ZVBpY2tlckNvbnRyb2xPcHRpb24sXHJcbiAgWERhdGVQaWNrZXJDb250cm9sLFxyXG4gIFhJbnB1dE51bWJlckNvbnRyb2wsXHJcbiAgWElucHV0TnVtYmVyQ29udHJvbE9wdGlvbixcclxuICBYU3dpdGNoQ29udHJvbCxcclxuICBYU3dpdGNoQ29udHJvbE9wdGlvbixcclxuICBYUmF0ZUNvbnRyb2wsXHJcbiAgWFJhdGVDb250cm9sT3B0aW9uLFxyXG4gIFhTbGlkZXJTZWxlY3RDb250cm9sLFxyXG4gIFhTbGlkZXJTZWxlY3RDb250cm9sT3B0aW9uLFxyXG4gIFhUaW1lUGlja2VyQ29udHJvbCxcclxuICBYVGltZVBpY2tlckNvbnRyb2xPcHRpb24sXHJcbiAgWENvbG9yUGlja2VyQ29udHJvbCxcclxuICBYQ29sb3JQaWNrZXJDb250cm9sT3B0aW9uLFxyXG4gIFhGb3JtQ29udHJvbCxcclxuICBYRmluZENvbnRyb2wsXHJcbiAgWEZpbmRDb250cm9sT3B0aW9uLFxyXG4gIFhUZXh0YXJlYUNvbnRyb2xPcHRpb24sXHJcbiAgWFRleHRhcmVhQ29udHJvbCxcclxuICBYQXV0b0NvbXBsZXRlQ29udHJvbCxcclxuICBYQXV0b0NvbXBsZXRlQ29udHJvbE9wdGlvblxyXG59IGZyb20gJy4vZm9ybS5wcm9wZXJ0eSc7XHJcbmltcG9ydCB7IEZvcm1Db250cm9sTmFtZSwgVmFsaWRhdG9ycywgVW50eXBlZEZvcm1Db250cm9sLCBWYWxpZGF0b3JGbiwgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEZvcm1Db250cm9sU3RhdHVzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBYSXNFbXB0eSwgWENvbmZpZ1NlcnZpY2UsIFhJc0Z1bmN0aW9uIH0gZnJvbSAnQG5nLW5lc3QvdWkvY29yZSc7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgbWFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFhJMThuRm9ybSwgWEkxOG5TZXJ2aWNlIH0gZnJvbSAnQG5nLW5lc3QvdWkvaTE4bic7XHJcbmltcG9ydCB7IFhGb3JtSW5wdXRWYWxpZGF0b3IgfSBmcm9tICdAbmctbmVzdC91aS9iYXNlLWZvcm0nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd4LWNvbnRyb2wnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jb250cm9sLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jb250cm9sLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgWENvbnRyb2xDb21wb25lbnQgZXh0ZW5kcyBYQ29udHJvbFByb3BlcnR5IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xyXG4gIEBJbnB1dCgpIG92ZXJyaWRlIG9wdGlvbiE6IFhGb3JtQ29udHJvbE9wdGlvbjtcclxuICBASW5wdXQoKSBmb3JtOiBhbnk7XHJcbiAgQFZpZXdDaGlsZChGb3JtQ29udHJvbE5hbWUpIGNvbnRyb2whOiBGb3JtQ29udHJvbE5hbWU7XHJcbiAgbG9jYWxlOiBYSTE4bkZvcm0gPSB7fTtcclxuICBwcml2YXRlIF9zaGFyZWRQcm9wcyA9IFsnc3BhbicsICdkaXJlY3Rpb24nLCAnanVzdGlmeScsICdhbGlnbicsICdsYWJlbFdpZHRoJywgJ2xhYmVsQWxpZ24nXTtcclxuICBwcml2YXRlIF9jaGFuZ2VQcm9wcyA9IFsnbGFiZWwnLCAuLi50aGlzLl9zaGFyZWRQcm9wc107XHJcbiAgcHJpdmF0ZSBfY29udHJvbCE6IFhGb3JtQ29udHJvbFR5cGU7XHJcbiAgcHJpdmF0ZSBfdmFsaWRhdG9yRm5zOiBWYWxpZGF0b3JGbltdID0gW107XHJcbiAgcHJpdmF0ZSBfdW5TdWJqZWN0ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuICBwcml2YXRlIF9mb3JtQ29udHJvbCE6IFVudHlwZWRGb3JtQ29udHJvbDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICAvLyBASG9zdCgpIEBPcHRpb25hbCgpIHB1YmxpYyBmb3JtOiBYRm9ybUNvbXBvbmVudCxcclxuICAgIHB1YmxpYyBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHVibGljIGNvbmZpZ1NlcnZpY2U6IFhDb25maWdTZXJ2aWNlLFxyXG4gICAgcHVibGljIGkxOG46IFhJMThuU2VydmljZVxyXG4gICkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5vcHRpb24gPSB7IC4uLnRoaXMub3B0aW9uIH07XHJcbiAgICB0aGlzLnNldFByb3BzKCk7XHJcbiAgICBpZiAoWElzRW1wdHkodGhpcy5vcHRpb24ubGFiZWwpKSB0aGlzLm9wdGlvbi5sYWJlbCA9ICcnO1xyXG4gICAgdGhpcy5vcHRpb24ubGFiZWwgPSBgJHt0aGlzLm9wdGlvbi5sYWJlbH0ke3RoaXMuZm9ybS5sYWJlbFN1ZmZpeH1gO1xyXG4gICAgdGhpcy5fY29udHJvbCA9IHRoaXMuY3JlYXRlQ29udHJvbCh0aGlzLm9wdGlvbik7XHJcbiAgICB0aGlzLl9mb3JtQ29udHJvbCA9IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wodGhpcy5fY29udHJvbC52YWx1ZSk7XHJcbiAgICB0aGlzLnNldFZhbGlkYXRvcnMoKTtcclxuICAgIHRoaXMuX2Zvcm1Db250cm9sLnN0YXR1c0NoYW5nZXMucGlwZSh0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KSkuc3Vic2NyaWJlKCh4KSA9PiB7XHJcbiAgICAgIHRoaXMuc2V0TWVzc2FnZXMoeCk7XHJcbiAgICB9KTtcclxuICAgIHRoaXMuX2NvbnRyb2wuc2V0VmFsaWRhdG9ycyA9ICgpID0+IHRoaXMuc2V0VmFsaWRhdG9ycygpO1xyXG4gICAgdGhpcy5mb3JtLmZvcm1Hcm91cC5hZGRDb250cm9sKHRoaXMuX2NvbnRyb2wuaWQsIHRoaXMuX2Zvcm1Db250cm9sKTtcclxuICAgIHRoaXMub3B0aW9uLmNoYW5nZSA9ICgpID0+IHtcclxuICAgICAgdGhpcy5fY2hhbmdlUHJvcHMuZm9yRWFjaCgoeDogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgaWYgKHRoaXMuY29udHJvbC52YWx1ZUFjY2Vzc29yICYmIHRoaXMub3B0aW9uW3hdKSB7XHJcbiAgICAgICAgICAodGhpcy5jb250cm9sLnZhbHVlQWNjZXNzb3IgYXMgYW55KVt4XSA9IHRoaXMub3B0aW9uW3hdO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMuZm9ybS5jb250cm9sQ29tcG9uZW50c1t0aGlzLl9jb250cm9sLmlkXS5mb3JtQ29udHJvbENoYW5nZXMoKTtcclxuICAgIH07XHJcbiAgICB0aGlzLmkxOG4ubG9jYWxlQ2hhbmdlXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIG1hcCgoeCkgPT4geC5mb3JtIGFzIFhJMThuRm9ybSksXHJcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX3VuU3ViamVjdClcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKCh4KSA9PiB7XHJcbiAgICAgICAgdGhpcy5sb2NhbGUgPSB4O1xyXG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIE9iamVjdC5hc3NpZ24odGhpcy5jb250cm9sLnZhbHVlQWNjZXNzb3IhLCB0aGlzLl9jb250cm9sIGFzIENvbnRyb2xWYWx1ZUFjY2Vzc29yKTtcclxuICAgIHRoaXMuZm9ybS5jb250cm9sVHlwZXNbdGhpcy5fY29udHJvbC5pZF0gPSB0aGlzLl9jb250cm9sO1xyXG4gICAgdGhpcy5mb3JtLmNvbnRyb2xDb21wb25lbnRzW3RoaXMuX2NvbnRyb2wuaWRdID0gdGhpcy5jb250cm9sLnZhbHVlQWNjZXNzb3IgYXMgWEZvcm1Db250cm9sQ29tcG9uZW50O1xyXG4gICAgdGhpcy5mb3JtLmNvbnRyb2xDb21wb25lbnRzW3RoaXMuX2NvbnRyb2wuaWRdLmZvcm1Db250cm9sQ2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLl91blN1YmplY3QubmV4dCgpO1xyXG4gICAgdGhpcy5fdW5TdWJqZWN0LnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICBzZXRWYWxpZGF0b3JzKCkge1xyXG4gICAgdGhpcy5fdmFsaWRhdG9yRm5zID0gW107XHJcbiAgICBpZiAodGhpcy5fY29udHJvbC5kaXNhYmxlZCB8fCB0aGlzLmZvcm0uZGlzYWJsZWQpIHtcclxuICAgICAgdGhpcy5fZm9ybUNvbnRyb2wuZGlzYWJsZSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5fZm9ybUNvbnRyb2wuZW5hYmxlKCk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5fY29udHJvbC5yZXF1aXJlZCAmJiAhdGhpcy5mb3JtLmRpc2FibGVkKSB7XHJcbiAgICAgIHRoaXMuX3ZhbGlkYXRvckZucyA9IFsuLi50aGlzLl92YWxpZGF0b3JGbnMsIFZhbGlkYXRvcnMucmVxdWlyZWRdO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuX2NvbnRyb2wucGF0dGVybikge1xyXG4gICAgICB0aGlzLnNldFBhdHRlcm4oKTtcclxuICAgIH1cclxuICAgIGlmIChYSXNGdW5jdGlvbih0aGlzLl9jb250cm9sLmlucHV0VmFsaWRhdG9yKSkge1xyXG4gICAgICB0aGlzLl92YWxpZGF0b3JGbnMgPSBbLi4udGhpcy5fdmFsaWRhdG9yRm5zLCBYRm9ybUlucHV0VmFsaWRhdG9yKHRoaXMuX2NvbnRyb2wuaW5wdXRWYWxpZGF0b3IhKV07XHJcbiAgICB9XHJcbiAgICB0aGlzLl9mb3JtQ29udHJvbC5zZXRWYWxpZGF0b3JzKHRoaXMuX3ZhbGlkYXRvckZucyk7XHJcbiAgICB0aGlzLl9mb3JtQ29udHJvbC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgfVxyXG5cclxuICBzZXRQcm9wcygpIHtcclxuICAgIGZvciAobGV0IHByb3Agb2YgdGhpcy5fc2hhcmVkUHJvcHMpIHtcclxuICAgICAgaWYgKFhJc0VtcHR5KHRoaXMub3B0aW9uW3Byb3BdKSkgdGhpcy5vcHRpb25bcHJvcF0gPSAodGhpcy5mb3JtIGFzIGFueSlbcHJvcF07XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRQYXR0ZXJuKCkge1xyXG4gICAgaWYgKEFycmF5LmlzQXJyYXkodGhpcy5fY29udHJvbC5wYXR0ZXJuKSkge1xyXG4gICAgICBmb3IgKGNvbnN0IHB0IG9mIHRoaXMuX2NvbnRyb2wucGF0dGVybikge1xyXG4gICAgICAgIHRoaXMuX3ZhbGlkYXRvckZucyA9IFsuLi50aGlzLl92YWxpZGF0b3JGbnMsIFZhbGlkYXRvcnMucGF0dGVybihwdCldO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLl92YWxpZGF0b3JGbnMgPSBbLi4udGhpcy5fdmFsaWRhdG9yRm5zLCBWYWxpZGF0b3JzLnBhdHRlcm4odGhpcy5fY29udHJvbC5wYXR0ZXJuIGFzIFJlZ0V4cCldO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0UGF0dGVybk1zZyhwYXR0ZXJuOiBzdHJpbmcpIHtcclxuICAgIGlmIChBcnJheS5pc0FycmF5KHRoaXMuX2NvbnRyb2wucGF0dGVybikpIHtcclxuICAgICAgcmV0dXJuICh0aGlzLl9jb250cm9sLm1lc3NhZ2UgYXMgQXJyYXk8YW55PilbdGhpcy5fY29udHJvbC5wYXR0ZXJuLmZpbmRJbmRleCgoeCkgPT4gU3RyaW5nKHgpID09PSBwYXR0ZXJuKV07XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gdGhpcy5fY29udHJvbC5tZXNzYWdlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2V0TWVzc2FnZXMoc3RhdGU6IEZvcm1Db250cm9sU3RhdHVzKSB7XHJcbiAgICBsZXQgY29udHJvbDogWEZvcm1Db250cm9sID0gdGhpcy5fZm9ybUNvbnRyb2w7XHJcbiAgICBpZiAoc3RhdGUgPT09ICdJTlZBTElEJyAmJiB0aGlzLl9mb3JtQ29udHJvbC5lcnJvcnMgIT09IG51bGwpIHtcclxuICAgICAgbGV0IG1lc3NhZ2VzOiBzdHJpbmdbXSA9IFtdO1xyXG4gICAgICBmb3IgKGNvbnN0IGtleSBpbiBjb250cm9sLmVycm9ycykge1xyXG4gICAgICAgIGNvbnN0IGxhYmVsID0gdGhpcy5fY29udHJvbC5sYWJlbCB8fCB0aGlzLl9jb250cm9sLmlkO1xyXG4gICAgICAgIGlmIChrZXkgPT09ICdyZXF1aXJlZCcpIHtcclxuICAgICAgICAgIG1lc3NhZ2VzID0gWy4uLm1lc3NhZ2VzLCBgJHtsYWJlbH0gJHt0aGlzLmxvY2FsZT8ucmVxdWlyZWQgfHwgJ3JlcXVpcmVkJ31gXTtcclxuICAgICAgICB9IGVsc2UgaWYgKGtleSA9PT0gJ3BhdHRlcm4nKSB7XHJcbiAgICAgICAgICBtZXNzYWdlcyA9IFsuLi5tZXNzYWdlcywgYCR7bGFiZWx9ICR7dGhpcy5nZXRQYXR0ZXJuTXNnKGNvbnRyb2wuZXJyb3JzW2tleV0ucmVxdWlyZWRQYXR0ZXJuKX1gXTtcclxuICAgICAgICB9IGVsc2UgaWYgKGtleSA9PT0gJ2lucHV0VmFsaWRhdG9yJykge1xyXG4gICAgICAgICAgbWVzc2FnZXMgPSBbLi4ubWVzc2FnZXMsIGAke2xhYmVsfSAke3RoaXMuX2NvbnRyb2wubWVzc2FnZX1gXTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgY29udHJvbC5tZXNzYWdlcyA9IG1lc3NhZ2VzO1xyXG4gICAgfSBlbHNlIGlmIChzdGF0ZSA9PT0gJ1ZBTElEJykge1xyXG4gICAgICBjb250cm9sLm1lc3NhZ2VzID0gW107XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjcmVhdGVDb250cm9sKG9wdGlvbjogWEZvcm1Db250cm9sT3B0aW9uKSB7XHJcbiAgICBzd2l0Y2ggKG9wdGlvbi5jb250cm9sKSB7XHJcbiAgICAgIGNhc2UgJ2lucHV0JzpcclxuICAgICAgICByZXR1cm4gbmV3IFhJbnB1dENvbnRyb2wob3B0aW9uIGFzIFhJbnB1dENvbnRyb2xPcHRpb24pO1xyXG4gICAgICBjYXNlICdzZWxlY3QnOlxyXG4gICAgICAgIHJldHVybiBuZXcgWFNlbGVjdENvbnRyb2wob3B0aW9uIGFzIFhTZWxlY3RDb250cm9sT3B0aW9uKTtcclxuICAgICAgY2FzZSAnY2hlY2tib3gnOlxyXG4gICAgICAgIHJldHVybiBuZXcgWENoZWNrYm94Q29udHJvbChvcHRpb24gYXMgWENoZWNrYm94Q29udHJvbE9wdGlvbik7XHJcbiAgICAgIGNhc2UgJ3JhZGlvJzpcclxuICAgICAgICByZXR1cm4gbmV3IFhSYWRpb0NvbnRyb2wob3B0aW9uIGFzIFhSYWRpb0NvbnRyb2xPcHRpb24pO1xyXG4gICAgICBjYXNlICdzd2l0Y2gnOlxyXG4gICAgICAgIHJldHVybiBuZXcgWFN3aXRjaENvbnRyb2wob3B0aW9uIGFzIFhTd2l0Y2hDb250cm9sT3B0aW9uKTtcclxuICAgICAgY2FzZSAncmF0ZSc6XHJcbiAgICAgICAgcmV0dXJuIG5ldyBYUmF0ZUNvbnRyb2wob3B0aW9uIGFzIFhSYXRlQ29udHJvbE9wdGlvbik7XHJcbiAgICAgIGNhc2UgJ2RhdGUtcGlja2VyJzpcclxuICAgICAgICByZXR1cm4gbmV3IFhEYXRlUGlja2VyQ29udHJvbChvcHRpb24gYXMgWERhdGVQaWNrZXJDb250cm9sT3B0aW9uKTtcclxuICAgICAgY2FzZSAndGltZS1waWNrZXInOlxyXG4gICAgICAgIHJldHVybiBuZXcgWFRpbWVQaWNrZXJDb250cm9sKG9wdGlvbiBhcyBYVGltZVBpY2tlckNvbnRyb2xPcHRpb24pO1xyXG4gICAgICBjYXNlICdpbnB1dC1udW1iZXInOlxyXG4gICAgICAgIHJldHVybiBuZXcgWElucHV0TnVtYmVyQ29udHJvbChvcHRpb24gYXMgWElucHV0TnVtYmVyQ29udHJvbE9wdGlvbik7XHJcbiAgICAgIGNhc2UgJ3NsaWRlci1zZWxlY3QnOlxyXG4gICAgICAgIHJldHVybiBuZXcgWFNsaWRlclNlbGVjdENvbnRyb2wob3B0aW9uIGFzIFhTbGlkZXJTZWxlY3RDb250cm9sT3B0aW9uKTtcclxuICAgICAgY2FzZSAnY2FzY2FkZSc6XHJcbiAgICAgICAgcmV0dXJuIG5ldyBYQ2FzY2FkZUNvbnRyb2wob3B0aW9uIGFzIFhDYXNjYWRlQ29udHJvbE9wdGlvbik7XHJcbiAgICAgIGNhc2UgJ2NvbG9yLXBpY2tlcic6XHJcbiAgICAgICAgcmV0dXJuIG5ldyBYQ29sb3JQaWNrZXJDb250cm9sKG9wdGlvbiBhcyBYQ29sb3JQaWNrZXJDb250cm9sT3B0aW9uKTtcclxuICAgICAgY2FzZSAndGV4dGFyZWEnOlxyXG4gICAgICAgIHJldHVybiBuZXcgWFRleHRhcmVhQ29udHJvbChvcHRpb24gYXMgWFRleHRhcmVhQ29udHJvbE9wdGlvbik7XHJcbiAgICAgIGNhc2UgJ2ZpbmQnOlxyXG4gICAgICAgIHJldHVybiBuZXcgWEZpbmRDb250cm9sKG9wdGlvbiBhcyBYRmluZENvbnRyb2xPcHRpb24pO1xyXG4gICAgICBjYXNlICdhdXRvLWNvbXBsZXRlJzpcclxuICAgICAgICByZXR1cm4gbmV3IFhBdXRvQ29tcGxldGVDb250cm9sKG9wdGlvbiBhcyBYQXV0b0NvbXBsZXRlQ29udHJvbE9wdGlvbik7XHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgcmV0dXJuIG5ldyBYSW5wdXRDb250cm9sKG9wdGlvbiBhcyBYSW5wdXRDb250cm9sT3B0aW9uKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cIngtY29udHJvbFwiIFtmb3JtR3JvdXBdPVwiZm9ybS5mb3JtR3JvdXBcIj5cclxuICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJvcHRpb24uY29udHJvbFwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2lucHV0J1wiPlxyXG4gICAgICA8eC1pbnB1dCBbZm9ybUNvbnRyb2xOYW1lXT1cIm9wdGlvbi5pZFwiIChjbGVhckVtaXQpPVwib3B0aW9uLmNsZWFyQ2xpY2sgJiYgb3B0aW9uLmNsZWFyQ2xpY2soJGV2ZW50KVwiPjwveC1pbnB1dD5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3NlbGVjdCdcIj5cclxuICAgICAgPHgtc2VsZWN0IFtmb3JtQ29udHJvbE5hbWVdPVwib3B0aW9uLmlkXCI+PC94LXNlbGVjdD5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2Nhc2NhZGUnXCI+XHJcbiAgICAgIDx4LWNhc2NhZGUgW2Zvcm1Db250cm9sTmFtZV09XCJvcHRpb24uaWRcIiAobm9kZUVtaXQpPVwib3B0aW9uLm5vZGVDbGljayAmJiBvcHRpb24ubm9kZUNsaWNrKCRldmVudClcIj48L3gtY2FzY2FkZT5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2NoZWNrYm94J1wiPlxyXG4gICAgICA8eC1jaGVja2JveCBbZm9ybUNvbnRyb2xOYW1lXT1cIm9wdGlvbi5pZFwiPjwveC1jaGVja2JveD5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2NvbG9yLXBpY2tlcidcIj5cclxuICAgICAgPHgtY29sb3ItcGlja2VyIFtmb3JtQ29udHJvbE5hbWVdPVwib3B0aW9uLmlkXCI+PC94LWNvbG9yLXBpY2tlcj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2RhdGUtcGlja2VyJ1wiPlxyXG4gICAgICA8eC1kYXRlLXBpY2tlciBbZm9ybUNvbnRyb2xOYW1lXT1cIm9wdGlvbi5pZFwiIChub2RlRW1pdCk9XCJvcHRpb24ubm9kZUNsaWNrICYmIG9wdGlvbi5ub2RlQ2xpY2soJGV2ZW50KVwiPjwveC1kYXRlLXBpY2tlcj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2lucHV0LW51bWJlcidcIj5cclxuICAgICAgPHgtaW5wdXQtbnVtYmVyIFtmb3JtQ29udHJvbE5hbWVdPVwib3B0aW9uLmlkXCI+PC94LWlucHV0LW51bWJlcj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3JhZGlvJ1wiPlxyXG4gICAgICA8eC1yYWRpbyBbZm9ybUNvbnRyb2xOYW1lXT1cIm9wdGlvbi5pZFwiPjwveC1yYWRpbz5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3JhdGUnXCI+XHJcbiAgICAgIDx4LXJhdGUgW2Zvcm1Db250cm9sTmFtZV09XCJvcHRpb24uaWRcIj48L3gtcmF0ZT5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3NsaWRlci1zZWxlY3QnXCI+XHJcbiAgICAgIDx4LXNsaWRlci1zZWxlY3QgW2Zvcm1Db250cm9sTmFtZV09XCJvcHRpb24uaWRcIj48L3gtc2xpZGVyLXNlbGVjdD5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3N3aXRjaCdcIj5cclxuICAgICAgPHgtc3dpdGNoIFtmb3JtQ29udHJvbE5hbWVdPVwib3B0aW9uLmlkXCI+PC94LXN3aXRjaD5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3RpbWUtcGlja2VyJ1wiPlxyXG4gICAgICA8eC10aW1lLXBpY2tlciBbZm9ybUNvbnRyb2xOYW1lXT1cIm9wdGlvbi5pZFwiPjwveC10aW1lLXBpY2tlcj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3RleHRhcmVhJ1wiPlxyXG4gICAgICA8eC10ZXh0YXJlYSBbZm9ybUNvbnRyb2xOYW1lXT1cIm9wdGlvbi5pZFwiIChjbGVhckVtaXQpPVwib3B0aW9uLmNsZWFyQ2xpY2sgJiYgb3B0aW9uLmNsZWFyQ2xpY2soJGV2ZW50KVwiPjwveC10ZXh0YXJlYT5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2F1dG8tY29tcGxldGUnXCI+XHJcbiAgICAgIDx4LWF1dG8tY29tcGxldGUgW2Zvcm1Db250cm9sTmFtZV09XCJvcHRpb24uaWRcIiAobm9kZUVtaXQpPVwib3B0aW9uLm5vZGVDbGljayAmJiBvcHRpb24ubm9kZUNsaWNrKCRldmVudClcIj48L3gtYXV0by1jb21wbGV0ZT5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2ZpbmQnXCI+XHJcbiAgICAgIDx4LWZpbmQgW2Zvcm1Db250cm9sTmFtZV09XCJvcHRpb24uaWRcIj48L3gtZmluZD5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG48L2Rpdj5cclxuIl19
|