@symphony-talent/component-library 4.11.0 → 4.13.0
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/esm2020/lib/atoms/input-search-checkbox-dropdown/input-search-checkbox-dropdown.component.mjs +3 -2
- package/esm2020/lib/pipe/trim-id.pipe.mjs +2 -2
- package/esm2020/projects/component-library/lib/atoms/input-search-checkbox-dropdown/input-search-checkbox-dropdown.component.mjs +3 -2
- package/esm2020/projects/component-library/lib/pipe/trim-id.pipe.mjs +2 -2
- package/fesm2015/symphony-talent-component-library-projects-component-library.mjs +3 -2
- package/fesm2015/symphony-talent-component-library-projects-component-library.mjs.map +1 -1
- package/fesm2015/symphony-talent-component-library.mjs +3 -2
- package/fesm2015/symphony-talent-component-library.mjs.map +1 -1
- package/fesm2020/symphony-talent-component-library-projects-component-library.mjs +3 -2
- package/fesm2020/symphony-talent-component-library-projects-component-library.mjs.map +1 -1
- package/fesm2020/symphony-talent-component-library.mjs +3 -2
- package/fesm2020/symphony-talent-component-library.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -58,7 +58,8 @@ export class InputSearchCheckboxDropdownComponent {
|
|
|
58
58
|
}
|
|
59
59
|
focusOnSearchInput() {
|
|
60
60
|
if (this.multiSelectSearch.componentHeading) {
|
|
61
|
-
this.renderer.selectRootElement(
|
|
61
|
+
let focusText = this.renderer.selectRootElement(`#dropdown-search-'${this.multiSelectSearch.componentHeading.replace(/[^\w]/g, "")}'`);
|
|
62
|
+
focusText.focus();
|
|
62
63
|
}
|
|
63
64
|
}
|
|
64
65
|
scrollHandler(event) {
|
|
@@ -222,4 +223,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImpor
|
|
|
222
223
|
}], initializeDropdown: [{
|
|
223
224
|
type: Output
|
|
224
225
|
}] } });
|
|
225
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtc2VhcmNoLWNoZWNrYm94LWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvYXRvbXMvaW5wdXQtc2VhcmNoLWNoZWNrYm94LWRyb3Bkb3duL2lucHV0LXNlYXJjaC1jaGVja2JveC1kcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2F0b21zL2lucHV0LXNlYXJjaC1jaGVja2JveC1kcm9wZG93bi9pbnB1dC1zZWFyY2gtY2hlY2tib3gtZHJvcGRvd24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEdBT1YsTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7Ozs7QUFZN0IsTUFBTSxPQUFPLG9DQUFvQztJQWtDL0MsWUFDVSxtQkFBaUQsRUFDakQsUUFBbUIsRUFDbkIsS0FBd0I7UUFGeEIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUE4QjtRQUNqRCxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLFVBQUssR0FBTCxLQUFLLENBQW1CO1FBNUJ6QiwyQkFBc0IsR0FBVyxFQUFFLENBQUMsQ0FBQyw0QkFBNEI7UUFNaEUsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBNkIsQ0FBQztRQUM3RCxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQTZCLENBQUM7UUFDM0Qsc0JBQWlCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUMvQyxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDckMsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDOUIs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QyxZQUFZLEdBQUcsS0FBSyxDQUFDO1lBQzFCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQ2pELENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDLFlBQVksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLENBQ25ELENBQUM7U0FDSDtJQUNILENBQUM7O2lJQXpOVSxvQ0FBb0M7cUhBQXBDLG9DQUFvQyw4MUJDN0JqRCx5L09BbU5NOzJGRHRMTyxvQ0FBb0M7a0JBTGhELFNBQVM7K0JBQ0UseUNBQXlDOzJLQU9kLEdBQUc7c0JBQXZDLFNBQVM7dUJBQUMsS0FBSyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFDWixRQUFRO3NCQUE5QixTQUFTO3VCQUFDLFVBQVU7Z0JBRVosVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLHNCQUFzQjtzQkFBOUIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFFSSxZQUFZO3NCQUFyQixNQUFNO2dCQUNHLFVBQVU7c0JBQW5CLE1BQU07Z0JBQ0csaUJBQWlCO3NCQUExQixNQUFNO2dCQUNHLGVBQWU7c0JBQXhCLE1BQU07Z0JBQ0csUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxjQUFjO3NCQUF2QixNQUFNO2dCQUNHLGFBQWE7c0JBQXRCLE1BQU07Z0JBQ0csU0FBUztzQkFBbEIsTUFBTTtnQkFDRyxrQkFBa0I7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIE9uSW5pdCxcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgRXZlbnRFbWl0dGVyLFxuICBWaWV3Q2hpbGQsXG4gIE9uQ2hhbmdlcyxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgUmVuZGVyZXIyLFxuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQnNEcm9wZG93bkRpcmVjdGl2ZSB9IGZyb20gJ25neC1ib290c3RyYXAvZHJvcGRvd24nO1xuXG5pbXBvcnQgeyBQb3BvdmVyRGlyZWN0aXZlIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9wb3BvdmVyJztcbmltcG9ydCB7IHRpbWVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDYXBpdGFsaXplRmlyc3RDaGFyYWN0ZXJQaXBlIH0gZnJvbSAnLi9jYXBpdGFsaXplLWZpcnN0LWNoYXJhY3Rlci5waXBlJztcbmltcG9ydCB7XG4gIE11bHRpU2VsZWN0RGF0YU1vZHVsZSxcbiAgTXVsdGlzZWxlY3RTZWFyY2hDaGVja2JveCxcbn0gZnJvbSAnLi9pbnB1dC1zZWFyY2gtY2hlY2tib3gtZHJvcGRvd24ubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzeW1waG9ueS1pbnB1dC1zZWFyY2gtY2hlY2tib3gtZHJvcGRvd24nLFxuICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQtc2VhcmNoLWNoZWNrYm94LWRyb3Bkb3duLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaW5wdXQtc2VhcmNoLWNoZWNrYm94LWRyb3Bkb3duLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgSW5wdXRTZWFyY2hDaGVja2JveERyb3Bkb3duQ29tcG9uZW50XG4gIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIEFmdGVyVmlld0luaXRcbntcbiAgQFZpZXdDaGlsZCgncG9wJywgeyBzdGF0aWM6IGZhbHNlIH0pIHBvcDogUG9wb3ZlckRpcmVjdGl2ZTtcbiAgQFZpZXdDaGlsZCgnZHJvcGRvd24nKSBkcm9wZG93bjogQnNEcm9wZG93bkRpcmVjdGl2ZTtcblxuICBASW5wdXQoKSBpc0Rpc2FibGVkOiBib29sZWFuO1xuICBASW5wdXQoKSBtdWx0aVNlbGVjdFNlYXJjaDogTXVsdGlTZWxlY3REYXRhTW9kdWxlO1xuICBASW5wdXQoKSBlbmFibGVQbGFjZUhvbGRlcjogYm9vbGVhbjtcbiAgQElucHV0KCkgc2Nyb2xsSGVpZ2h0UGVyY2VudGFnZTogbnVtYmVyID0gNTA7IC8vIHNldHRpbmcgdGhlIGRlZmF1bHQgdG8gNTBcbiAgQElucHV0KCkgaXNMb2FkaW5nRGF0YTogYm9vbGVhbjtcbiAgQElucHV0KCkgaXNMb2FkaW5nSW5pdGlhbERhdGE6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGlzSW52ZXJzZTogYm9vbGVhbjtcbiAgQElucHV0KCkgc2l6ZTogc3RyaW5nO1xuXG4gIEBPdXRwdXQoKSBkZXNlbGVjdEl0ZW0gPSBuZXcgRXZlbnRFbWl0dGVyPE11bHRpc2VsZWN0U2VhcmNoQ2hlY2tib3g+KCk7XG4gIEBPdXRwdXQoKSBzZWxlY3RJdGVtID0gbmV3IEV2ZW50RW1pdHRlcjxNdWx0aXNlbGVjdFNlYXJjaENoZWNrYm94PigpO1xuICBAT3V0cHV0KCkgc2VhcmNoSW5wdXRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpIHNlbGVjdGlvblJldGFpbiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGNsZWFyQWxsID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgY29uZGl0aW9uQ2hlY2sgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpIGNyZWF0ZU5ld0l0ZW0gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpIHNjcm9sbEVuZCA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcbiAgQE91dHB1dCgpIGluaXRpYWxpemVEcm9wZG93biA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICBwdWJsaWMgaXNBbGxUb2dnbGVkOiBib29sZWFuO1xuICBwdWJsaWMgcG9wTW91c2VMZWZ0OiBib29sZWFuO1xuICBwdWJsaWMgb3BlbkRyb3Bkb3duID0gZmFsc2U7XG4gIHB1YmxpYyBzZWxlY3RlZCA9IHRydWU7XG4gIHB1YmxpYyBjb25kaXRpb25TZWxlY3Rpb25JZDogc3RyaW5nID0gJyc7XG4gIHB1YmxpYyBoYXNPa2F5QnV0dG9uQmVlbkNsaWNrZWQ6IGJvb2xlYW47XG4gIHB1YmxpYyBpc0luRm9jdXMgPSBmYWxzZTtcbiAgcHVibGljIGlzSW52YWxpZDogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNhcGl0YWxpemVGaXJzdENoYXI6IENhcGl0YWxpemVGaXJzdENoYXJhY3RlclBpcGUsXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICkge31cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgdGhpcy5zZXRTZWxlY3RlZEl0ZW1zVGV4dCgpO1xuICAgIHRoaXMuc2l6ZT0gJzE0cHgnXG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnNldFNlbGVjdGVkSXRlbXNUZXh0KCk7XG4gICAgLy8gcmFkaW8gYnV0dG9uIGlkIGdlbmVyYXRvciwgdG8gcHJvdmlkZSB1bmlxdWUgaWRzIGZvciBhZHZhbmNlZCBzZWFyY2ggYW5kIGVkaXQgc21hcnQgZm9sZGVyLlxuICAgIGlmICh0aGlzLm11bHRpU2VsZWN0U2VhcmNoLmNvbXBvbmVudEhlYWRpbmcpIHtcbiAgICAgIHRoaXMuY29uZGl0aW9uU2VsZWN0aW9uSWQgPVxuICAgICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLmNvbXBvbmVudEhlYWRpbmcucmVwbGFjZSgvXFxzL2csICcnKTtcblxuICAgICAgLy8gRm9yIEN1c3RvbSBGaWVsZHNcbiAgICAgIHRoaXMuY29uZGl0aW9uU2VsZWN0aW9uSWQgPSB0aGlzLmNvbmRpdGlvblNlbGVjdGlvbklkLnJlcGxhY2UoXG4gICAgICAgIC9bXmEtekEtWl0vZyxcbiAgICAgICAgJydcbiAgICAgICk7XG4gICAgfVxuICAgIGlmICh0aGlzLm11bHRpU2VsZWN0U2VhcmNoLm1vZGVsSWRlbnRpZmllcikge1xuICAgICAgdGhpcy5jb25kaXRpb25TZWxlY3Rpb25JZCA9XG4gICAgICAgIHRoaXMuY29uZGl0aW9uU2VsZWN0aW9uSWQgK1xuICAgICAgICAnXycgK1xuICAgICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLm1vZGVsSWRlbnRpZmllci5yZXBsYWNlKC9cXHMvZywgJycpO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5pc0V4cGFuZGVkT25Jbml0aWFsaXplKSB7XG4gICAgICB0aGlzLmRyb3Bkb3duLmlzT3BlbiA9IHRydWU7XG4gICAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG4gIH1cbiAgZm9jdXNPblNlYXJjaElucHV0KCkge1xuICAgIGlmICh0aGlzLm11bHRpU2VsZWN0U2VhcmNoLmNvbXBvbmVudEhlYWRpbmcpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2VsZWN0Um9vdEVsZW1lbnQoYCMke3RoaXMuY29uZGl0aW9uU2VsZWN0aW9uSWR9YCkuZm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICBzY3JvbGxIYW5kbGVyKGV2ZW50KTogdm9pZCB7XG4gICAgLy8gdHJpZ2dlciBhbiBldmVudCBvbiBlbmQgb2YgdGhlIHNjcm9sbFxuICAgIGlmIChcbiAgICAgIGV2ZW50LnRhcmdldC5vZmZzZXRIZWlnaHQgKyBldmVudC50YXJnZXQuc2Nyb2xsVG9wID49XG4gICAgICBldmVudC50YXJnZXQuc2Nyb2xsSGVpZ2h0ICogKHRoaXMuc2Nyb2xsSGVpZ2h0UGVyY2VudGFnZSAvIDEwMClcbiAgICApIHtcbiAgICAgIHRoaXMuc2Nyb2xsRW5kLmVtaXQodHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgb25TZWFyY2hJbnB1dENoYW5nZSgpIHtcbiAgICB0aGlzLnNlYXJjaElucHV0Q2hhbmdlLmVtaXQodGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hJbnB1dCk7XG4gIH1cblxuICBvbkRlc2VsZWN0SXRlbShkZXNlbGVjdGVkSXRlbSkge1xuICAgIHRoaXMuZm9jdXNPblNlYXJjaElucHV0KCk7XG4gICAgdGhpcy5kZXNlbGVjdEl0ZW0uZW1pdChkZXNlbGVjdGVkSXRlbSk7XG4gIH1cblxuICBvblNlbGVjdEl0ZW0oc2VsZWN0ZWRJdGVtKSB7XG4gICAgaWYgKHRoaXMubXVsdGlTZWxlY3RTZWFyY2guaXNTZWxlY3RBbGxFbmFibGVkID09IHRydWUpIHtcbiAgICAgIHNlbGVjdGVkSXRlbS5pc0NoZWNrZWQgPSAhc2VsZWN0ZWRJdGVtLmlzQ2hlY2tlZDtcbiAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VsZWN0ZWREcm9wZG93bkxpc3QgPVxuICAgICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaGVkRHJvcGRvd25MaXN0LmZpbHRlcihcbiAgICAgICAgICAoc2VsZWN0ZWRBbGxJdGVtKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gc2VsZWN0ZWRBbGxJdGVtLmlzQ2hlY2tlZCA9PSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICAgIGlmIChcbiAgICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWxlY3RlZERyb3Bkb3duTGlzdC5sZW5ndGggPT1cbiAgICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hlZERyb3Bkb3duTGlzdC5sZW5ndGhcbiAgICAgICkge1xuICAgICAgICB0aGlzLmlzQWxsVG9nZ2xlZCA9IHRydWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmlzQWxsVG9nZ2xlZCA9IGZhbHNlO1xuICAgICAgfVxuICAgIH0gXG4gICAgdGhpcy5mb2N1c09uU2VhcmNoSW5wdXQoKTtcbiAgICB0aGlzLnNlbGVjdEl0ZW0uZW1pdChzZWxlY3RlZEl0ZW0pO1xuICB9XG5cbiAgb25DbGVhckFsbENsaWNrKCkge1xuICAgIHRoaXMuZm9jdXNPblNlYXJjaElucHV0KCk7XG4gICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hJbnB1dCA9ICcnO1xuICAgIHRoaXMuY2xlYXJBbGwuZW1pdCgpO1xuICB9XG5cbiAgb25Pa0NsaWNrKGlzSGlkZGVuID0gZmFsc2UpIHtcbiAgICBpZiAoIXRoaXMubXVsdGlTZWxlY3RTZWFyY2guaXNFeHBhbmRlZE9uSW5pdGlhbGl6ZSB8fCAhaXNIaWRkZW4pIHtcbiAgICAgIGlmICghdGhpcy5pc0luRm9jdXMpIHtcbiAgICAgICAgaWYgKCF0aGlzLm11bHRpU2VsZWN0U2VhcmNoLmlzRXhwYW5kZWRPbkluaXRpYWxpemUpIHtcbiAgICAgICAgICB0aGlzLm9wZW5Ecm9wZG93biA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc2V0U2VsZWN0ZWRJdGVtc1RleHQoKTtcbiAgICAgICAgaWYgKCF0aGlzLmhhc09rYXlCdXR0b25CZWVuQ2xpY2tlZCkge1xuICAgICAgICAgIHRoaXMuc2VsZWN0aW9uUmV0YWluLmVtaXQoKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIXRoaXMubXVsdGlTZWxlY3RTZWFyY2guaXNFeHBhbmRlZE9uSW5pdGlhbGl6ZSkge1xuICAgICAgICAgIHRoaXMuaGFzT2theUJ1dHRvbkJlZW5DbGlja2VkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHRvZ2dsZURyb3Bkb3duKCkge1xuICAgIGlmICghdGhpcy5vcGVuRHJvcGRvd24pIHtcbiAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoSW5wdXQgPSAnJztcbiAgICAgIHRoaXMuaW5pdGlhbGl6ZURyb3Bkb3duLmVtaXQodHJ1ZSk7XG4gICAgfVxuICAgIHRoaXMuaGFzT2theUJ1dHRvbkJlZW5DbGlja2VkID0gZmFsc2U7XG4gICAgdGhpcy5vcGVuRHJvcGRvd24gPSB0cnVlO1xuICB9XG5cbiAgcG9wT3ZlclRleHQoKSB7XG4gICAgaWYgKCF0aGlzLm9wZW5Ecm9wZG93bikge1xuICAgICAgcmV0dXJuIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoSW5wdXQ7XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgc2hvd1BvcCgpIHtcbiAgICB0aGlzLnBvcE1vdXNlTGVmdCA9IGZhbHNlO1xuXG4gICAgY29uc3Qgc2NoZWR1bGVyID0gdGltZXIoNTAwKTtcbiAgICBzY2hlZHVsZXIuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIGlmICghdGhpcy5wb3BNb3VzZUxlZnQgJiYgdGhpcy5wb3ApIHtcbiAgICAgICAgdGhpcy5wb3Auc2hvdygpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgb25Qb3BNb3VzZUxlYXZlKCkge1xuICAgIHRoaXMucG9wTW91c2VMZWZ0ID0gdHJ1ZTtcbiAgICB0aGlzLnBvcC5oaWRlKCk7XG4gIH1cblxuICBvbkNvbmRpdGlvbkNsaWNrKGNvbmRpdGlvbjogc3RyaW5nKSB7XG4gICAgdGhpcy5jb25kaXRpb25DaGVjay5lbWl0KGNvbmRpdGlvbik7XG4gIH1cblxuICBzZXRTZWxlY3RlZEl0ZW1zVGV4dCgpIHtcbiAgICBpZiAoIXRoaXMub3BlbkRyb3Bkb3duKSB7XG4gICAgICBpZiAodGhpcy5tdWx0aVNlbGVjdFNlYXJjaCkge1xuICAgICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaElucHV0ID0gJyc7XG5cbiAgICAgICAgaWYgKHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VsZWN0ZWREcm9wZG93bkxpc3QpIHtcbiAgICAgICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaElucHV0ID1cbiAgICAgICAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VsZWN0ZWREcm9wZG93bkxpc3RcbiAgICAgICAgICAgICAgLm1hcCgoZHJvcGRvd25saXN0KSA9PlxuICAgICAgICAgICAgICAgIHRoaXMuY2FwaXRhbGl6ZUZpcnN0Q2hhci50cmFuc2Zvcm0oZHJvcGRvd25saXN0Lm5hbWUpXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgLmpvaW4oJywgJyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBvbkNyZWF0ZU5ld0l0ZW0oKSB7XG4gICAgdGhpcy5jcmVhdGVOZXdJdGVtLmVtaXQodGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hJbnB1dCk7XG4gIH1cblxuICBvbkZvY3VzQ2xpY2soaXNJbkZvY3VzOiBib29sZWFuKSB7XG4gICAgdGhpcy5pc0luRm9jdXMgPSBpc0luRm9jdXM7XG4gIH1cblxuICBvblRvZ2dsZUNsaWNrKGV2ZW50KSB7XG4gICAgaWYgKGV2ZW50ID09IHRydWUpIHtcbiAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoZWREcm9wZG93bkxpc3QuZm9yRWFjaChcbiAgICAgICAgKGRyb3Bkb3dubGlzdCkgPT4gKGRyb3Bkb3dubGlzdC5pc0NoZWNrZWQgPSB0cnVlKVxuICAgICAgKTtcbiAgICAgIHRoaXMuaXNBbGxUb2dnbGVkID0gdHJ1ZTtcbiAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VsZWN0ZWREcm9wZG93bkxpc3QgPVxuICAgICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaGVkRHJvcGRvd25MaXN0O1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmlzQWxsVG9nZ2xlZCA9IGZhbHNlO1xuICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hlZERyb3Bkb3duTGlzdC5mb3JFYWNoKFxuICAgICAgICAoZHJvcGRvd25saXN0KSA9PiAoZHJvcGRvd25saXN0LmlzQ2hlY2tlZCA9IGZhbHNlKVxuICAgICAgKTtcbiAgICB9XG4gIH1cbn1cbiIsIlxuPGRpdiBbbmdDbGFzc109XCJ7ICdpc0ludmVyc2UnOiBpc0ludmVyc2UgfVwiPlxuICA8ZGl2XG4gICAgKm5nSWY9XCJtdWx0aVNlbGVjdFNlYXJjaC5jb21wb25lbnRIZWFkaW5nXCJcbiAgICBjbGFzcz1cInNmeC1maWx0ZXItbGFiZWwgc2Z4LWQtaW5saW5lLWJsb2NrXCJcbiAgPlxuICAgIDxiXG4gICAgICA+e3sgZW5hYmxlUGxhY2VIb2xkZXIgPyBcIlwiIDogbXVsdGlTZWxlY3RTZWFyY2guY29tcG9uZW50SGVhZGluZyB9fVxuICAgICAgPHNwYW4gKm5nSWY9XCJtdWx0aVNlbGVjdFNlYXJjaC5yZXF1aXJlZFwiIGNsYXNzPVwicmVxdWlyZWRGaWVsZFwiPio8L3NwYW4+XG4gICAgPC9iPlxuICA8L2Rpdj5cbiAgPGRpdiAqbmdJZj1cIm11bHRpU2VsZWN0U2VhcmNoLmNvbmRpdGlvblwiIGNsYXNzPVwic2Z4LXN3aXRjaC1maWVsZCBwdWxsLXJpZ2h0XCI+XG4gICAgPGlucHV0XG4gICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgaWQ9XCJyYWRpby1hbmQte3sgY29uZGl0aW9uU2VsZWN0aW9uSWQgfX1cIlxuICAgICAgbmFtZT1cInJhZGlvLWFuZC17eyBjb25kaXRpb25TZWxlY3Rpb25JZCB9fVwiXG4gICAgICB2YWx1ZT1cInllc1wiXG4gICAgICAoY2xpY2spPVwib25Db25kaXRpb25DbGljaygnIEFORCAnKVwiXG4gICAgICBbY2hlY2tlZF09XCJtdWx0aVNlbGVjdFNlYXJjaC5jb25kaXRpb24gPT09ICcgQU5EICdcIlxuICAgIC8+XG4gICAgPGxhYmVsIGNsYXNzPVwiRm9udDQwMFwiIGZvcj1cInJhZGlvLWFuZC17eyBjb25kaXRpb25TZWxlY3Rpb25JZCB9fVwiXG4gICAgICA+YW5kPC9sYWJlbFxuICAgID5cbiAgICA8aW5wdXRcbiAgICAgIHR5cGU9XCJyYWRpb1wiXG4gICAgICBpZD1cInJhZGlvLW9yLXt7IGNvbmRpdGlvblNlbGVjdGlvbklkIH19XCJcbiAgICAgIG5hbWU9XCJyYWRpby1vci17eyBjb25kaXRpb25TZWxlY3Rpb25JZCB9fVwiXG4gICAgICB2YWx1ZT1cInllc1wiXG4gICAgICAoY2xpY2spPVwib25Db25kaXRpb25DbGljaygnIE9SICcpXCJcbiAgICAgIFtjaGVja2VkXT1cIm11bHRpU2VsZWN0U2VhcmNoLmNvbmRpdGlvbiA9PT0gJyBPUiAnXCJcbiAgICAvPlxuICAgIDxsYWJlbCBjbGFzcz1cIkZvbnQ0MDBcIiBmb3I9XCJyYWRpby1vci17eyBjb25kaXRpb25TZWxlY3Rpb25JZCB9fVwiPm9yPC9sYWJlbD5cbiAgPC9kaXY+XG4gIDxkaXZcbiAgICBjbGFzcz1cInNmeC1jdXN0b20tZHJvcGRvd24td3JhcFwiXG4gICAgW25nQ2xhc3NdPVwieyBvcGVuOiBvcGVuRHJvcGRvd24gfVwiXG4gICAgZHJvcGRvd25cbiAgICAjZHJvcGRvd249XCJicy1kcm9wZG93blwiXG4gICAgKG9uU2hvd24pPVwidG9nZ2xlRHJvcGRvd24oKVwiXG4gICAgW2luc2lkZUNsaWNrXT1cInRydWVcIlxuICAgIChvbkhpZGRlbik9XCJvbk9rQ2xpY2sodHJ1ZSlcIlxuICA+XG4gICAgPGlucHV0XG4gICAgICBbbmdDbGFzc109XCJ7ICdpbnZhbGlkLWNvbnRyb2wnOiBpc0ludmFsaWQgfVwiXG4gICAgICAoY2xpY2spPVwiZHJvcGRvd24uaXNPcGVuID0gdHJ1ZVwiXG4gICAgICB0eXBlPVwidGV4dFwiXG4gICAgICBpZD1cImRyb3Bkb3duLXNlYXJjaC17eyBtdWx0aVNlbGVjdFNlYXJjaC5jb21wb25lbnRIZWFkaW5nIHwgdHJpbUlkfX1cIlxuICAgICAgWyhuZ01vZGVsKV09XCJtdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hJbnB1dFwiXG4gICAgICAobmdNb2RlbENoYW5nZSk9XCJvblNlYXJjaElucHV0Q2hhbmdlKClcIlxuICAgICAgZHJvcGRvd25Ub2dnbGVcbiAgICAgIHBvcG92ZXI9XCJ7eyBwb3BPdmVyVGV4dCgpIH19XCJcbiAgICAgIGNvbnRhaW5lckNsYXNzPVwic2Z4LWlucHV0LXBvcG92ZXJcIlxuICAgICAgdHJpZ2dlcnM9XCJcIlxuICAgICAgcGxhY2VtZW50PVwidG9wXCJcbiAgICAgICNwb3A9XCJicy1wb3BvdmVyXCJcbiAgICAgIChtb3VzZWVudGVyKT1cInNob3dQb3AoKVwiXG4gICAgICAobW91c2VsZWF2ZSk9XCJvblBvcE1vdXNlTGVhdmUoKVwiXG4gICAgICAoZm9jdXMpPVwib25Gb2N1c0NsaWNrKHRydWUpXCJcbiAgICAgIChibHVyKT1cIm9uRm9jdXNDbGljayhmYWxzZSlcIlxuICAgICAgY2xhc3M9XCJzZngtcGxhY2Vob2xkZXJcIlxuICAgICAgcGxhY2Vob2xkZXI9XCJ7e1xuICAgICAgICBlbmFibGVQbGFjZUhvbGRlciA/IG11bHRpU2VsZWN0U2VhcmNoLmNvbXBvbmVudEhlYWRpbmcgOiAnJ1xuICAgICAgfX1cIlxuICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcbiAgICAgIFtkaXNhYmxlZF09XCJpc0Rpc2FibGVkXCJcbiAgICAvPlxuICAgIDxzeW1waG9ueS1pY29uIFtzaXplXT1cInNpemVcIiBbaWNvbl09XCInc2ktc2VhcmNoLW5ldydcIj48L3N5bXBob255LWljb24+XG4gICAgPGRpdiAqZHJvcGRvd25NZW51PlxuICAgICAgPGRpdiBjbGFzcz1cInNmeC1jdXN0b20tZHJvcGRvd25cIiAqbmdJZj1cIm9wZW5Ecm9wZG93blwiPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwibXVsdGlTZWxlY3RTZWFyY2guaXNTZWxlY3RBbGxFbmFibGVkXCIgY2xhc3M9XCJzZngtc2VsZWN0LWFsbC10b2dnbGVcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNmeC1mb250LWJvbGQgc2Z4LW1yLTEwXCI+U2VsZWN0IEFsbDwvc3Bhbj5cbiAgICAgICAgICA8c3ltcGhvbnktaW5wdXQtdG9nZ2xlXG4gICAgICAgICAgW2lzVG9nZ2xlZF09XCJpc0FsbFRvZ2dsZWRcIlxuICAgICAgICAgIFtpc0ludmVyc2VdPVwiZmFsc2VcIlxuICAgICAgICAgICh0b2dnbGVDbGljayk9XCJvblRvZ2dsZUNsaWNrKCRldmVudClcIlxuICAgICAgICAgID48L3N5bXBob255LWlucHV0LXRvZ2dsZT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDwhLS0gQ3JlYXRlIEFuZCBBZGQgVGFncyAtLT5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwic2Z4LWNyZWF0ZS1uZXctaXRlbXNcIlxuICAgICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICBtdWx0aVNlbGVjdFNlYXJjaC5sYWJlbENyZWF0ZU5ld0l0ZW1zICYmXG4gICAgICAgICAgICBtdWx0aVNlbGVjdFNlYXJjaC5zaG93Q3JlYXRlTmV3SXRlbXNcbiAgICAgICAgICBcIlxuICAgICAgICAgIChjbGljayk9XCJvbkNyZWF0ZU5ld0l0ZW0oKVwiXG4gICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgJ3NmeC1mb250LWJvbGQnOiBtdWx0aVNlbGVjdFNlYXJjaC5zaG93Q3JlYXRlTmV3TW9kYWxcbiAgICAgICAgICB9XCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IG11bHRpU2VsZWN0U2VhcmNoLmxhYmVsQ3JlYXRlTmV3SXRlbXMgfX1cbiAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgY2xhc3M9XCJzZngtZm9udC1ib2xkXCJcbiAgICAgICAgICAgICpuZ0lmPVwiIW11bHRpU2VsZWN0U2VhcmNoLnNob3dDcmVhdGVOZXdNb2RhbFwiXG4gICAgICAgICAgICA+Jm5ic3A7JmFwb3M7XG4gICAgICAgICAgICB7eyBtdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hJbnB1dCB8IGNhcGl0YWxpemVGaXJzdENoYXJhY3RlciB9fSZhcG9zO1xuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICA8aSBjbGFzcz1cInNmeC1pY29uLVBsdXMgc2Z4LWNyZWF0ZS1uZXctaXRlbXMtaWNvblwiPjwvaT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDwhLS0gQ3JlYXRlIEFuZCBBZGQgVGFncyBlbmRzIGhlcmUgLS0+XG4gICAgICAgIDwhLS0gc2VsZWN0ZWQgbGlzdCBkaXYgLS0+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cInNmeC1kcm9wZG93bi1zZWxlY3RlZCBzZngtY3VzdG9tLXNjcm9sbFwiXG4gICAgICAgICAgKm5nSWY9XCJtdWx0aVNlbGVjdFNlYXJjaC5zZWxlY3RlZERyb3Bkb3duTGlzdC5sZW5ndGggPiAwICYmICFtdWx0aVNlbGVjdFNlYXJjaC5pc1NlbGVjdEFsbEVuYWJsZWRcIlxuICAgICAgICA+XG4gICAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJzZngtZC1pbmxpbmUtYmxvY2tcIlxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IHNlbGVjdGVkSXRlbSBvZiBtdWx0aVNlbGVjdFNlYXJjaC5zZWxlY3RlZERyb3Bkb3duTGlzdFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAoY2xpY2spPVwib25EZXNlbGVjdEl0ZW0oc2VsZWN0ZWRJdGVtKTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJzZngtY2hlY2tib3ggc2Z4LWQtaW5saW5lLWJsb2NrXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgICAgICBjaGVja2VkXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJzZngtY2hlY2tib3gtaW5wdXRcIlxuICAgICAgICAgICAgICAgIGlkPVwie3sgc2VsZWN0ZWRJdGVtLmlkIH19X3t7IHNlbGVjdGVkSXRlbS5uYW1lIH19XCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPGxhYmVsXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJGb250NDAwXCJcbiAgICAgICAgICAgICAgICBmb3I9XCJ7eyBzZWxlY3RlZEl0ZW0uaWQgfX1fe3sgc2VsZWN0ZWRJdGVtLm5hbWUgfX1cIlxuICAgICAgICAgICAgICAgID57eyBzZWxlY3RlZEl0ZW0ubmFtZSB8IGNhcGl0YWxpemVGaXJzdENoYXJhY3RlciB9fVxuICAgICAgICAgICAgICAgIDxiciAvPlxuICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAqbmdJZj1cInNlbGVjdGVkSXRlbS5hZGRpdGlvbmFsSW5mb1wiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInNlbGVjdGVkLWFkZGl0aW9uYWwtaW5mb1wiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge3sgc2VsZWN0ZWRJdGVtLmFkZGl0aW9uYWxJbmZvIH19PC9zcGFuXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2PjwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPCEtLSBzZWxlY3RlZCBsaXN0IGRpdiBlbmRzIGhlcmUgLS0+XG4gICAgICAgIDwhLS0gU2VhcmNoIGxpc3QgIC0tPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJzZngtZHJvcGRvd24tdW5zZWxlY3RlZCBzZngtY3VzdG9tLXNjcm9sbFwiXG4gICAgICAgICAgKHNjcm9sbCk9XCJzY3JvbGxIYW5kbGVyKCRldmVudClcIlxuICAgICAgICAgICpuZ0lmPVwibXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoZWREcm9wZG93bkxpc3QubGVuZ3RoID4gMFwiXG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBpZD1cImRyb3Bkb3duLXRyaWdnZXJzLW1hbnVhbGx5XCJcbiAgICAgICAgICAgICpuZ0Zvcj1cIlxuICAgICAgICAgICAgICBsZXQgZmlsdGVyRHJvcGRvd25PcHRpb24gb2YgbXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoZWREcm9wZG93bkxpc3RcbiAgICAgICAgICAgIFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNmeC1jaGVja2JveFwiPlxuICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgICAgICAgICAgIGlkPVwie3sgZmlsdGVyRHJvcGRvd25PcHRpb24uaWQgfX1fe3tcbiAgICAgICAgICAgICAgICAgIGZpbHRlckRyb3Bkb3duT3B0aW9uLm5hbWUgfCB0cmltSWRcbiAgICAgICAgICAgICAgICB9fVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJzZngtY2hlY2tib3gtaW5wdXRcIlxuICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJtdWx0aVNlbGVjdFNlYXJjaC5oYXNNYXhTZWxlY3Rpb25zXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiXG4gICAgICAgICAgICAgICAgb25TZWxlY3RJdGVtKGZpbHRlckRyb3Bkb3duT3B0aW9uKTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImZpbHRlckRyb3Bkb3duT3B0aW9uLmlzQ2hlY2tlZFwiXG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDxsYWJlbFxuICAgICAgICAgICAgICAgIGNsYXNzPVwiRm9udDQwMFwiXG4gICAgICAgICAgICAgICAgZm9yPVwie3sgZmlsdGVyRHJvcGRvd25PcHRpb24uaWQgfX1fe3tcbiAgICAgICAgICAgICAgICAgIGZpbHRlckRyb3Bkb3duT3B0aW9uLm5hbWUgfCB0cmltSWRcbiAgICAgICAgICAgICAgICB9fVwiXG4gICAgICAgICAgICAgICAgPnt7IGZpbHRlckRyb3Bkb3duT3B0aW9uLm5hbWUgfCBjYXBpdGFsaXplRmlyc3RDaGFyYWN0ZXIgfX1cbiAgICAgICAgICAgICAgICA8YnIgLz5cbiAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgKm5nSWY9XCJmaWx0ZXJEcm9wZG93bk9wdGlvbi5hZGRpdGlvbmFsSW5mb1wiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImFkZGl0aW9uYWwtaW5mb1wiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge3sgZmlsdGVyRHJvcGRvd25PcHRpb24uYWRkaXRpb25hbEluZm8gfX08L3NwYW5cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXY+PC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxzeW1waG9ueS1zZngtbG9hZGVyXG4gICAgICAgICAgICAgIFtoaWRkZW5dPVwiIWlzTG9hZGluZ0RhdGFcIlxuICAgICAgICAgICAgPjwvc3ltcGhvbnktc2Z4LWxvYWRlcj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxzeW1waG9ueS1zZngtbG9hZGVyXG4gICAgICAgICAgW2hpZGRlbl09XCIhaXNMb2FkaW5nSW5pdGlhbERhdGFcIlxuICAgICAgICA+PC9zeW1waG9ueS1zZngtbG9hZGVyPlxuICAgICAgICA8IS0tIHNlYXJjaCBsaXN0IGVuZHMgaGVyZSAtLT5cbiAgICAgICAgPCEtLSBGb290ZXIgLS0+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJvcGVuRHJvcGRvd25cIiBjbGFzcz1cInNmeC1maWx0ZXItaXRlbS1mb290ZXJcIj5cbiAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIGNsYXNzPVwicHVsbC1sZWZ0XCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJcbiAgICAgICAgICAgICAgIShcbiAgICAgICAgICAgICAgICBtdWx0aVNlbGVjdFNlYXJjaC5zZWxlY3RlZERyb3Bkb3duTGlzdCAmJlxuICAgICAgICAgICAgICAgIG11bHRpU2VsZWN0U2VhcmNoLnNlbGVjdGVkRHJvcGRvd25MaXN0Lmxlbmd0aCA+IDBcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgXCJcbiAgICAgICAgICAgIChjbGljayk9XCJvbkNsZWFyQWxsQ2xpY2soKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgQ2xlYXIgQWxsXG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPGEgaHJlZj1cImphdmFzY3JpcHQ6O1wiIChjbGljayk9XCJvbk9rQ2xpY2soKVwiIGNsYXNzPVwicHVsbC1yaWdodFwiPk9LPC9hPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPCEtLSBFbmQgRm9vdGVyIC0tPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwiaXNJbnZhbGlkXCIgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+XG4gICAgUGxlYXNlIHNlbGVjdCBhIHZhbGlkIG9wdGlvblxuICA8L2Rpdj5cbjwvZGl2PiJdfQ==
|
|
226
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtc2VhcmNoLWNoZWNrYm94LWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvYXRvbXMvaW5wdXQtc2VhcmNoLWNoZWNrYm94LWRyb3Bkb3duL2lucHV0LXNlYXJjaC1jaGVja2JveC1kcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2F0b21zL2lucHV0LXNlYXJjaC1jaGVja2JveC1kcm9wZG93bi9pbnB1dC1zZWFyY2gtY2hlY2tib3gtZHJvcGRvd24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEdBT1YsTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7Ozs7QUFZN0IsTUFBTSxPQUFPLG9DQUFvQztJQWtDL0MsWUFDVSxtQkFBaUQsRUFDakQsUUFBbUIsRUFDbkIsS0FBd0I7UUFGeEIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUE4QjtRQUNqRCxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLFVBQUssR0FBTCxLQUFLLENBQW1CO1FBNUJ6QiwyQkFBc0IsR0FBVyxFQUFFLENBQUMsQ0FBQyw0QkFBNEI7UUFNaEUsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBNkIsQ0FBQztRQUM3RCxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQTZCLENBQUM7UUFDM0Qsc0JBQWlCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUMvQyxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDckMsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDOUIs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aUIsQ0FBQyxvQkFBb0I7Z0JBQ3pDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxvQkFBb0IsQ0FBQztTQUMvQzthQUFNO1lBQ0wsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7WUFDMUIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLG9CQUFvQixDQUFDLE9BQU8sQ0FDakQsQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDLENBQUMsWUFBWSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUMsQ0FDbkQsQ0FBQztTQUNIO0lBQ0gsQ0FBQzs7aUlBMU5VLG9DQUFvQztxSEFBcEMsb0NBQW9DLDgxQkM3QmpELHkvT0FtTk07MkZEdExPLG9DQUFvQztrQkFMaEQsU0FBUzsrQkFDRSx5Q0FBeUM7MktBT2QsR0FBRztzQkFBdkMsU0FBUzt1QkFBQyxLQUFLLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUNaLFFBQVE7c0JBQTlCLFNBQVM7dUJBQUMsVUFBVTtnQkFFWixVQUFVO3NCQUFsQixLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csc0JBQXNCO3NCQUE5QixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csb0JBQW9CO3NCQUE1QixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUVJLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csVUFBVTtzQkFBbkIsTUFBTTtnQkFDRyxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBQ0csZUFBZTtzQkFBeEIsTUFBTTtnQkFDRyxRQUFRO3NCQUFqQixNQUFNO2dCQUNHLGNBQWM7c0JBQXZCLE1BQU07Z0JBQ0csYUFBYTtzQkFBdEIsTUFBTTtnQkFDRyxTQUFTO3NCQUFsQixNQUFNO2dCQUNHLGtCQUFrQjtzQkFBM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgT25Jbml0LFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBFdmVudEVtaXR0ZXIsXG4gIFZpZXdDaGlsZCxcbiAgT25DaGFuZ2VzLFxuICBTaW1wbGVDaGFuZ2VzLFxuICBSZW5kZXJlcjIsXG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCc0Ryb3Bkb3duRGlyZWN0aXZlIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9kcm9wZG93bic7XG5cbmltcG9ydCB7IFBvcG92ZXJEaXJlY3RpdmUgfSBmcm9tICduZ3gtYm9vdHN0cmFwL3BvcG92ZXInO1xuaW1wb3J0IHsgdGltZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENhcGl0YWxpemVGaXJzdENoYXJhY3RlclBpcGUgfSBmcm9tICcuL2NhcGl0YWxpemUtZmlyc3QtY2hhcmFjdGVyLnBpcGUnO1xuaW1wb3J0IHtcbiAgTXVsdGlTZWxlY3REYXRhTW9kdWxlLFxuICBNdWx0aXNlbGVjdFNlYXJjaENoZWNrYm94LFxufSBmcm9tICcuL2lucHV0LXNlYXJjaC1jaGVja2JveC1kcm9wZG93bi5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3N5bXBob255LWlucHV0LXNlYXJjaC1jaGVja2JveC1kcm9wZG93bicsXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnB1dC1zZWFyY2gtY2hlY2tib3gtZHJvcGRvd24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pbnB1dC1zZWFyY2gtY2hlY2tib3gtZHJvcGRvd24uY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBJbnB1dFNlYXJjaENoZWNrYm94RHJvcGRvd25Db21wb25lbnRcbiAgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdFxue1xuICBAVmlld0NoaWxkKCdwb3AnLCB7IHN0YXRpYzogZmFsc2UgfSkgcG9wOiBQb3BvdmVyRGlyZWN0aXZlO1xuICBAVmlld0NoaWxkKCdkcm9wZG93bicpIGRyb3Bkb3duOiBCc0Ryb3Bkb3duRGlyZWN0aXZlO1xuXG4gIEBJbnB1dCgpIGlzRGlzYWJsZWQ6IGJvb2xlYW47XG4gIEBJbnB1dCgpIG11bHRpU2VsZWN0U2VhcmNoOiBNdWx0aVNlbGVjdERhdGFNb2R1bGU7XG4gIEBJbnB1dCgpIGVuYWJsZVBsYWNlSG9sZGVyOiBib29sZWFuO1xuICBASW5wdXQoKSBzY3JvbGxIZWlnaHRQZXJjZW50YWdlOiBudW1iZXIgPSA1MDsgLy8gc2V0dGluZyB0aGUgZGVmYXVsdCB0byA1MFxuICBASW5wdXQoKSBpc0xvYWRpbmdEYXRhOiBib29sZWFuO1xuICBASW5wdXQoKSBpc0xvYWRpbmdJbml0aWFsRGF0YTogYm9vbGVhbjtcbiAgQElucHV0KCkgaXNJbnZlcnNlOiBib29sZWFuO1xuICBASW5wdXQoKSBzaXplOiBzdHJpbmc7XG5cbiAgQE91dHB1dCgpIGRlc2VsZWN0SXRlbSA9IG5ldyBFdmVudEVtaXR0ZXI8TXVsdGlzZWxlY3RTZWFyY2hDaGVja2JveD4oKTtcbiAgQE91dHB1dCgpIHNlbGVjdEl0ZW0gPSBuZXcgRXZlbnRFbWl0dGVyPE11bHRpc2VsZWN0U2VhcmNoQ2hlY2tib3g+KCk7XG4gIEBPdXRwdXQoKSBzZWFyY2hJbnB1dENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBAT3V0cHV0KCkgc2VsZWN0aW9uUmV0YWluID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgY2xlYXJBbGwgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBjb25kaXRpb25DaGVjayA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBAT3V0cHV0KCkgY3JlYXRlTmV3SXRlbSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBAT3V0cHV0KCkgc2Nyb2xsRW5kID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuICBAT3V0cHV0KCkgaW5pdGlhbGl6ZURyb3Bkb3duID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIHB1YmxpYyBpc0FsbFRvZ2dsZWQ6IGJvb2xlYW47XG4gIHB1YmxpYyBwb3BNb3VzZUxlZnQ6IGJvb2xlYW47XG4gIHB1YmxpYyBvcGVuRHJvcGRvd24gPSBmYWxzZTtcbiAgcHVibGljIHNlbGVjdGVkID0gdHJ1ZTtcbiAgcHVibGljIGNvbmRpdGlvblNlbGVjdGlvbklkOiBzdHJpbmcgPSAnJztcbiAgcHVibGljIGhhc09rYXlCdXR0b25CZWVuQ2xpY2tlZDogYm9vbGVhbjtcbiAgcHVibGljIGlzSW5Gb2N1cyA9IGZhbHNlO1xuICBwdWJsaWMgaXNJbnZhbGlkOiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY2FwaXRhbGl6ZUZpcnN0Q2hhcjogQ2FwaXRhbGl6ZUZpcnN0Q2hhcmFjdGVyUGlwZSxcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgcHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7fVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICB0aGlzLnNldFNlbGVjdGVkSXRlbXNUZXh0KCk7XG4gICAgdGhpcy5zaXplPSAnMTRweCdcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2V0U2VsZWN0ZWRJdGVtc1RleHQoKTtcbiAgICAvLyByYWRpbyBidXR0b24gaWQgZ2VuZXJhdG9yLCB0byBwcm92aWRlIHVuaXF1ZSBpZHMgZm9yIGFkdmFuY2VkIHNlYXJjaCBhbmQgZWRpdCBzbWFydCBmb2xkZXIuXG4gICAgaWYgKHRoaXMubXVsdGlTZWxlY3RTZWFyY2guY29tcG9uZW50SGVhZGluZykge1xuICAgICAgdGhpcy5jb25kaXRpb25TZWxlY3Rpb25JZCA9XG4gICAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guY29tcG9uZW50SGVhZGluZy5yZXBsYWNlKC9cXHMvZywgJycpO1xuXG4gICAgICAvLyBGb3IgQ3VzdG9tIEZpZWxkc1xuICAgICAgdGhpcy5jb25kaXRpb25TZWxlY3Rpb25JZCA9IHRoaXMuY29uZGl0aW9uU2VsZWN0aW9uSWQucmVwbGFjZShcbiAgICAgICAgL1teYS16QS1aXS9nLFxuICAgICAgICAnJ1xuICAgICAgKTtcbiAgICB9XG4gICAgaWYgKHRoaXMubXVsdGlTZWxlY3RTZWFyY2gubW9kZWxJZGVudGlmaWVyKSB7XG4gICAgICB0aGlzLmNvbmRpdGlvblNlbGVjdGlvbklkID1cbiAgICAgICAgdGhpcy5jb25kaXRpb25TZWxlY3Rpb25JZCArXG4gICAgICAgICdfJyArXG4gICAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2gubW9kZWxJZGVudGlmaWVyLnJlcGxhY2UoL1xccy9nLCAnJyk7XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLm11bHRpU2VsZWN0U2VhcmNoLmlzRXhwYW5kZWRPbkluaXRpYWxpemUpIHtcbiAgICAgIHRoaXMuZHJvcGRvd24uaXNPcGVuID0gdHJ1ZTtcbiAgICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbiAgfVxuICBmb2N1c09uU2VhcmNoSW5wdXQoKSB7XG4gICAgaWYgKHRoaXMubXVsdGlTZWxlY3RTZWFyY2guY29tcG9uZW50SGVhZGluZykge1xuICAgICAgbGV0IGZvY3VzVGV4dCA9IHRoaXMucmVuZGVyZXIuc2VsZWN0Um9vdEVsZW1lbnQoYCNkcm9wZG93bi1zZWFyY2gtJyR7dGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5jb21wb25lbnRIZWFkaW5nLnJlcGxhY2UoL1teXFx3XS9nLCBcIlwiKX0nYClcbiAgICAgIGZvY3VzVGV4dC5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIHNjcm9sbEhhbmRsZXIoZXZlbnQpOiB2b2lkIHtcbiAgICAvLyB0cmlnZ2VyIGFuIGV2ZW50IG9uIGVuZCBvZiB0aGUgc2Nyb2xsXG4gICAgaWYgKFxuICAgICAgZXZlbnQudGFyZ2V0Lm9mZnNldEhlaWdodCArIGV2ZW50LnRhcmdldC5zY3JvbGxUb3AgPj1cbiAgICAgIGV2ZW50LnRhcmdldC5zY3JvbGxIZWlnaHQgKiAodGhpcy5zY3JvbGxIZWlnaHRQZXJjZW50YWdlIC8gMTAwKVxuICAgICkge1xuICAgICAgdGhpcy5zY3JvbGxFbmQuZW1pdCh0cnVlKTtcbiAgICB9XG4gIH1cblxuICBvblNlYXJjaElucHV0Q2hhbmdlKCkge1xuICAgIHRoaXMuc2VhcmNoSW5wdXRDaGFuZ2UuZW1pdCh0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaElucHV0KTtcbiAgfVxuXG4gIG9uRGVzZWxlY3RJdGVtKGRlc2VsZWN0ZWRJdGVtKSB7XG4gICAgdGhpcy5mb2N1c09uU2VhcmNoSW5wdXQoKTtcbiAgICB0aGlzLmRlc2VsZWN0SXRlbS5lbWl0KGRlc2VsZWN0ZWRJdGVtKTtcbiAgfVxuXG4gIG9uU2VsZWN0SXRlbShzZWxlY3RlZEl0ZW0pIHtcbiAgICBpZiAodGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5pc1NlbGVjdEFsbEVuYWJsZWQgPT0gdHJ1ZSkge1xuICAgICAgc2VsZWN0ZWRJdGVtLmlzQ2hlY2tlZCA9ICFzZWxlY3RlZEl0ZW0uaXNDaGVja2VkO1xuICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWxlY3RlZERyb3Bkb3duTGlzdCA9XG4gICAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoZWREcm9wZG93bkxpc3QuZmlsdGVyKFxuICAgICAgICAgIChzZWxlY3RlZEFsbEl0ZW0pID0+IHtcbiAgICAgICAgICAgIHJldHVybiBzZWxlY3RlZEFsbEl0ZW0uaXNDaGVja2VkID09IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICApO1xuICAgICAgaWYgKFxuICAgICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlbGVjdGVkRHJvcGRvd25MaXN0Lmxlbmd0aCA9PVxuICAgICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaGVkRHJvcGRvd25MaXN0Lmxlbmd0aFxuICAgICAgKSB7XG4gICAgICAgIHRoaXMuaXNBbGxUb2dnbGVkID0gdHJ1ZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuaXNBbGxUb2dnbGVkID0gZmFsc2U7XG4gICAgICB9XG4gICAgfSBcbiAgICB0aGlzLmZvY3VzT25TZWFyY2hJbnB1dCgpO1xuICAgIHRoaXMuc2VsZWN0SXRlbS5lbWl0KHNlbGVjdGVkSXRlbSk7XG4gIH1cblxuICBvbkNsZWFyQWxsQ2xpY2soKSB7XG4gICAgdGhpcy5mb2N1c09uU2VhcmNoSW5wdXQoKTtcbiAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaElucHV0ID0gJyc7XG4gICAgdGhpcy5jbGVhckFsbC5lbWl0KCk7XG4gIH1cblxuICBvbk9rQ2xpY2soaXNIaWRkZW4gPSBmYWxzZSkge1xuICAgIGlmICghdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5pc0V4cGFuZGVkT25Jbml0aWFsaXplIHx8ICFpc0hpZGRlbikge1xuICAgICAgaWYgKCF0aGlzLmlzSW5Gb2N1cykge1xuICAgICAgICBpZiAoIXRoaXMubXVsdGlTZWxlY3RTZWFyY2guaXNFeHBhbmRlZE9uSW5pdGlhbGl6ZSkge1xuICAgICAgICAgIHRoaXMub3BlbkRyb3Bkb3duID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zZXRTZWxlY3RlZEl0ZW1zVGV4dCgpO1xuICAgICAgICBpZiAoIXRoaXMuaGFzT2theUJ1dHRvbkJlZW5DbGlja2VkKSB7XG4gICAgICAgICAgdGhpcy5zZWxlY3Rpb25SZXRhaW4uZW1pdCgpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5pc0V4cGFuZGVkT25Jbml0aWFsaXplKSB7XG4gICAgICAgICAgdGhpcy5oYXNPa2F5QnV0dG9uQmVlbkNsaWNrZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgdG9nZ2xlRHJvcGRvd24oKSB7XG4gICAgaWYgKCF0aGlzLm9wZW5Ecm9wZG93bikge1xuICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hJbnB1dCA9ICcnO1xuICAgICAgdGhpcy5pbml0aWFsaXplRHJvcGRvd24uZW1pdCh0cnVlKTtcbiAgICB9XG4gICAgdGhpcy5oYXNPa2F5QnV0dG9uQmVlbkNsaWNrZWQgPSBmYWxzZTtcbiAgICB0aGlzLm9wZW5Ecm9wZG93biA9IHRydWU7XG4gIH1cblxuICBwb3BPdmVyVGV4dCgpIHtcbiAgICBpZiAoIXRoaXMub3BlbkRyb3Bkb3duKSB7XG4gICAgICByZXR1cm4gdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hJbnB1dDtcbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBzaG93UG9wKCkge1xuICAgIHRoaXMucG9wTW91c2VMZWZ0ID0gZmFsc2U7XG5cbiAgICBjb25zdCBzY2hlZHVsZXIgPSB0aW1lcig1MDApO1xuICAgIHNjaGVkdWxlci5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgaWYgKCF0aGlzLnBvcE1vdXNlTGVmdCAmJiB0aGlzLnBvcCkge1xuICAgICAgICB0aGlzLnBvcC5zaG93KCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBvblBvcE1vdXNlTGVhdmUoKSB7XG4gICAgdGhpcy5wb3BNb3VzZUxlZnQgPSB0cnVlO1xuICAgIHRoaXMucG9wLmhpZGUoKTtcbiAgfVxuXG4gIG9uQ29uZGl0aW9uQ2xpY2soY29uZGl0aW9uOiBzdHJpbmcpIHtcbiAgICB0aGlzLmNvbmRpdGlvbkNoZWNrLmVtaXQoY29uZGl0aW9uKTtcbiAgfVxuXG4gIHNldFNlbGVjdGVkSXRlbXNUZXh0KCkge1xuICAgIGlmICghdGhpcy5vcGVuRHJvcGRvd24pIHtcbiAgICAgIGlmICh0aGlzLm11bHRpU2VsZWN0U2VhcmNoKSB7XG4gICAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoSW5wdXQgPSAnJztcblxuICAgICAgICBpZiAodGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWxlY3RlZERyb3Bkb3duTGlzdCkge1xuICAgICAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoSW5wdXQgPVxuICAgICAgICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWxlY3RlZERyb3Bkb3duTGlzdFxuICAgICAgICAgICAgICAubWFwKChkcm9wZG93bmxpc3QpID0+XG4gICAgICAgICAgICAgICAgdGhpcy5jYXBpdGFsaXplRmlyc3RDaGFyLnRyYW5zZm9ybShkcm9wZG93bmxpc3QubmFtZSlcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAuam9pbignLCAnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG9uQ3JlYXRlTmV3SXRlbSgpIHtcbiAgICB0aGlzLmNyZWF0ZU5ld0l0ZW0uZW1pdCh0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaElucHV0KTtcbiAgfVxuXG4gIG9uRm9jdXNDbGljayhpc0luRm9jdXM6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmlzSW5Gb2N1cyA9IGlzSW5Gb2N1cztcbiAgfVxuXG4gIG9uVG9nZ2xlQ2xpY2soZXZlbnQpIHtcbiAgICBpZiAoZXZlbnQgPT0gdHJ1ZSkge1xuICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hlZERyb3Bkb3duTGlzdC5mb3JFYWNoKFxuICAgICAgICAoZHJvcGRvd25saXN0KSA9PiAoZHJvcGRvd25saXN0LmlzQ2hlY2tlZCA9IHRydWUpXG4gICAgICApO1xuICAgICAgdGhpcy5pc0FsbFRvZ2dsZWQgPSB0cnVlO1xuICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWxlY3RlZERyb3Bkb3duTGlzdCA9XG4gICAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoZWREcm9wZG93bkxpc3Q7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaXNBbGxUb2dnbGVkID0gZmFsc2U7XG4gICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaGVkRHJvcGRvd25MaXN0LmZvckVhY2goXG4gICAgICAgIChkcm9wZG93bmxpc3QpID0+IChkcm9wZG93bmxpc3QuaXNDaGVja2VkID0gZmFsc2UpXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuIiwiXG48ZGl2IFtuZ0NsYXNzXT1cInsgJ2lzSW52ZXJzZSc6IGlzSW52ZXJzZSB9XCI+XG4gIDxkaXZcbiAgICAqbmdJZj1cIm11bHRpU2VsZWN0U2VhcmNoLmNvbXBvbmVudEhlYWRpbmdcIlxuICAgIGNsYXNzPVwic2Z4LWZpbHRlci1sYWJlbCBzZngtZC1pbmxpbmUtYmxvY2tcIlxuICA+XG4gICAgPGJcbiAgICAgID57eyBlbmFibGVQbGFjZUhvbGRlciA/IFwiXCIgOiBtdWx0aVNlbGVjdFNlYXJjaC5jb21wb25lbnRIZWFkaW5nIH19XG4gICAgICA8c3BhbiAqbmdJZj1cIm11bHRpU2VsZWN0U2VhcmNoLnJlcXVpcmVkXCIgY2xhc3M9XCJyZXF1aXJlZEZpZWxkXCI+Kjwvc3Bhbj5cbiAgICA8L2I+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwibXVsdGlTZWxlY3RTZWFyY2guY29uZGl0aW9uXCIgY2xhc3M9XCJzZngtc3dpdGNoLWZpZWxkIHB1bGwtcmlnaHRcIj5cbiAgICA8aW5wdXRcbiAgICAgIHR5cGU9XCJyYWRpb1wiXG4gICAgICBpZD1cInJhZGlvLWFuZC17eyBjb25kaXRpb25TZWxlY3Rpb25JZCB9fVwiXG4gICAgICBuYW1lPVwicmFkaW8tYW5kLXt7IGNvbmRpdGlvblNlbGVjdGlvbklkIH19XCJcbiAgICAgIHZhbHVlPVwieWVzXCJcbiAgICAgIChjbGljayk9XCJvbkNvbmRpdGlvbkNsaWNrKCcgQU5EICcpXCJcbiAgICAgIFtjaGVja2VkXT1cIm11bHRpU2VsZWN0U2VhcmNoLmNvbmRpdGlvbiA9PT0gJyBBTkQgJ1wiXG4gICAgLz5cbiAgICA8bGFiZWwgY2xhc3M9XCJGb250NDAwXCIgZm9yPVwicmFkaW8tYW5kLXt7IGNvbmRpdGlvblNlbGVjdGlvbklkIH19XCJcbiAgICAgID5hbmQ8L2xhYmVsXG4gICAgPlxuICAgIDxpbnB1dFxuICAgICAgdHlwZT1cInJhZGlvXCJcbiAgICAgIGlkPVwicmFkaW8tb3Ite3sgY29uZGl0aW9uU2VsZWN0aW9uSWQgfX1cIlxuICAgICAgbmFtZT1cInJhZGlvLW9yLXt7IGNvbmRpdGlvblNlbGVjdGlvbklkIH19XCJcbiAgICAgIHZhbHVlPVwieWVzXCJcbiAgICAgIChjbGljayk9XCJvbkNvbmRpdGlvbkNsaWNrKCcgT1IgJylcIlxuICAgICAgW2NoZWNrZWRdPVwibXVsdGlTZWxlY3RTZWFyY2guY29uZGl0aW9uID09PSAnIE9SICdcIlxuICAgIC8+XG4gICAgPGxhYmVsIGNsYXNzPVwiRm9udDQwMFwiIGZvcj1cInJhZGlvLW9yLXt7IGNvbmRpdGlvblNlbGVjdGlvbklkIH19XCI+b3I8L2xhYmVsPlxuICA8L2Rpdj5cbiAgPGRpdlxuICAgIGNsYXNzPVwic2Z4LWN1c3RvbS1kcm9wZG93bi13cmFwXCJcbiAgICBbbmdDbGFzc109XCJ7IG9wZW46IG9wZW5Ecm9wZG93biB9XCJcbiAgICBkcm9wZG93blxuICAgICNkcm9wZG93bj1cImJzLWRyb3Bkb3duXCJcbiAgICAob25TaG93bik9XCJ0b2dnbGVEcm9wZG93bigpXCJcbiAgICBbaW5zaWRlQ2xpY2tdPVwidHJ1ZVwiXG4gICAgKG9uSGlkZGVuKT1cIm9uT2tDbGljayh0cnVlKVwiXG4gID5cbiAgICA8aW5wdXRcbiAgICAgIFtuZ0NsYXNzXT1cInsgJ2ludmFsaWQtY29udHJvbCc6IGlzSW52YWxpZCB9XCJcbiAgICAgIChjbGljayk9XCJkcm9wZG93bi5pc09wZW4gPSB0cnVlXCJcbiAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgIGlkPVwiZHJvcGRvd24tc2VhcmNoLXt7IG11bHRpU2VsZWN0U2VhcmNoLmNvbXBvbmVudEhlYWRpbmcgfCB0cmltSWR9fVwiXG4gICAgICBbKG5nTW9kZWwpXT1cIm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaElucHV0XCJcbiAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uU2VhcmNoSW5wdXRDaGFuZ2UoKVwiXG4gICAgICBkcm9wZG93blRvZ2dsZVxuICAgICAgcG9wb3Zlcj1cInt7IHBvcE92ZXJUZXh0KCkgfX1cIlxuICAgICAgY29udGFpbmVyQ2xhc3M9XCJzZngtaW5wdXQtcG9wb3ZlclwiXG4gICAgICB0cmlnZ2Vycz1cIlwiXG4gICAgICBwbGFjZW1lbnQ9XCJ0b3BcIlxuICAgICAgI3BvcD1cImJzLXBvcG92ZXJcIlxuICAgICAgKG1vdXNlZW50ZXIpPVwic2hvd1BvcCgpXCJcbiAgICAgIChtb3VzZWxlYXZlKT1cIm9uUG9wTW91c2VMZWF2ZSgpXCJcbiAgICAgIChmb2N1cyk9XCJvbkZvY3VzQ2xpY2sodHJ1ZSlcIlxuICAgICAgKGJsdXIpPVwib25Gb2N1c0NsaWNrKGZhbHNlKVwiXG4gICAgICBjbGFzcz1cInNmeC1wbGFjZWhvbGRlclwiXG4gICAgICBwbGFjZWhvbGRlcj1cInt7XG4gICAgICAgIGVuYWJsZVBsYWNlSG9sZGVyID8gbXVsdGlTZWxlY3RTZWFyY2guY29tcG9uZW50SGVhZGluZyA6ICcnXG4gICAgICB9fVwiXG4gICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgW2Rpc2FibGVkXT1cImlzRGlzYWJsZWRcIlxuICAgIC8+XG4gICAgPHN5bXBob255LWljb24gW3NpemVdPVwic2l6ZVwiIFtpY29uXT1cIidzaS1zZWFyY2gtbmV3J1wiPjwvc3ltcGhvbnktaWNvbj5cbiAgICA8ZGl2ICpkcm9wZG93bk1lbnU+XG4gICAgICA8ZGl2IGNsYXNzPVwic2Z4LWN1c3RvbS1kcm9wZG93blwiICpuZ0lmPVwib3BlbkRyb3Bkb3duXCI+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJtdWx0aVNlbGVjdFNlYXJjaC5pc1NlbGVjdEFsbEVuYWJsZWRcIiBjbGFzcz1cInNmeC1zZWxlY3QtYWxsLXRvZ2dsZVwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2Z4LWZvbnQtYm9sZCBzZngtbXItMTBcIj5TZWxlY3QgQWxsPC9zcGFuPlxuICAgICAgICAgIDxzeW1waG9ueS1pbnB1dC10b2dnbGVcbiAgICAgICAgICBbaXNUb2dnbGVkXT1cImlzQWxsVG9nZ2xlZFwiXG4gICAgICAgICAgW2lzSW52ZXJzZV09XCJmYWxzZVwiXG4gICAgICAgICAgKHRvZ2dsZUNsaWNrKT1cIm9uVG9nZ2xlQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgPjwvc3ltcGhvbnktaW5wdXQtdG9nZ2xlPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPCEtLSBDcmVhdGUgQW5kIEFkZCBUYWdzIC0tPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJzZngtY3JlYXRlLW5ldy1pdGVtc1wiXG4gICAgICAgICAgKm5nSWY9XCJcbiAgICAgICAgICAgIG11bHRpU2VsZWN0U2VhcmNoLmxhYmVsQ3JlYXRlTmV3SXRlbXMgJiZcbiAgICAgICAgICAgIG11bHRpU2VsZWN0U2VhcmNoLnNob3dDcmVhdGVOZXdJdGVtc1xuICAgICAgICAgIFwiXG4gICAgICAgICAgKGNsaWNrKT1cIm9uQ3JlYXRlTmV3SXRlbSgpXCJcbiAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAnc2Z4LWZvbnQtYm9sZCc6IG11bHRpU2VsZWN0U2VhcmNoLnNob3dDcmVhdGVOZXdNb2RhbFxuICAgICAgICAgIH1cIlxuICAgICAgICA+XG4gICAgICAgICAge3sgbXVsdGlTZWxlY3RTZWFyY2gubGFiZWxDcmVhdGVOZXdJdGVtcyB9fVxuICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICBjbGFzcz1cInNmeC1mb250LWJvbGRcIlxuICAgICAgICAgICAgKm5nSWY9XCIhbXVsdGlTZWxlY3RTZWFyY2guc2hvd0NyZWF0ZU5ld01vZGFsXCJcbiAgICAgICAgICAgID4mbmJzcDsmYXBvcztcbiAgICAgICAgICAgIHt7IG11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaElucHV0IHwgY2FwaXRhbGl6ZUZpcnN0Q2hhcmFjdGVyIH19JmFwb3M7XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIDxpIGNsYXNzPVwic2Z4LWljb24tUGx1cyBzZngtY3JlYXRlLW5ldy1pdGVtcy1pY29uXCI+PC9pPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPCEtLSBDcmVhdGUgQW5kIEFkZCBUYWdzIGVuZHMgaGVyZSAtLT5cbiAgICAgICAgPCEtLSBzZWxlY3RlZCBsaXN0IGRpdiAtLT5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwic2Z4LWRyb3Bkb3duLXNlbGVjdGVkIHNmeC1jdXN0b20tc2Nyb2xsXCJcbiAgICAgICAgICAqbmdJZj1cIm11bHRpU2VsZWN0U2VhcmNoLnNlbGVjdGVkRHJvcGRvd25MaXN0Lmxlbmd0aCA+IDAgJiYgIW11bHRpU2VsZWN0U2VhcmNoLmlzU2VsZWN0QWxsRW5hYmxlZFwiXG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cInNmeC1kLWlubGluZS1ibG9ja1wiXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgc2VsZWN0ZWRJdGVtIG9mIG11bHRpU2VsZWN0U2VhcmNoLnNlbGVjdGVkRHJvcGRvd25MaXN0XCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgIChjbGljayk9XCJvbkRlc2VsZWN0SXRlbShzZWxlY3RlZEl0ZW0pOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgICAgICAgICAgICBjbGFzcz1cInNmeC1jaGVja2JveCBzZngtZC1pbmxpbmUtYmxvY2tcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgICAgICAgICAgIGNoZWNrZWRcbiAgICAgICAgICAgICAgICBjbGFzcz1cInNmeC1jaGVja2JveC1pbnB1dFwiXG4gICAgICAgICAgICAgICAgaWQ9XCJ7eyBzZWxlY3RlZEl0ZW0uaWQgfX1fe3sgc2VsZWN0ZWRJdGVtLm5hbWUgfX1cIlxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgICAgICBjbGFzcz1cIkZvbnQ0MDBcIlxuICAgICAgICAgICAgICAgIGZvcj1cInt7IHNlbGVjdGVkSXRlbS5pZCB9fV97eyBzZWxlY3RlZEl0ZW0ubmFtZSB9fVwiXG4gICAgICAgICAgICAgICAgPnt7IHNlbGVjdGVkSXRlbS5uYW1lIHwgY2FwaXRhbGl6ZUZpcnN0Q2hhcmFjdGVyIH19XG4gICAgICAgICAgICAgICAgPGJyIC8+XG4gICAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAgICpuZ0lmPVwic2VsZWN0ZWRJdGVtLmFkZGl0aW9uYWxJbmZvXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2VsZWN0ZWQtYWRkaXRpb25hbC1pbmZvXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7eyBzZWxlY3RlZEl0ZW0uYWRkaXRpb25hbEluZm8gfX08L3NwYW5cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXY+PC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8IS0tIHNlbGVjdGVkIGxpc3QgZGl2IGVuZHMgaGVyZSAtLT5cbiAgICAgICAgPCEtLSBTZWFyY2ggbGlzdCAgLS0+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cInNmeC1kcm9wZG93bi11bnNlbGVjdGVkIHNmeC1jdXN0b20tc2Nyb2xsXCJcbiAgICAgICAgICAoc2Nyb2xsKT1cInNjcm9sbEhhbmRsZXIoJGV2ZW50KVwiXG4gICAgICAgICAgKm5nSWY9XCJtdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hlZERyb3Bkb3duTGlzdC5sZW5ndGggPiAwXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIGlkPVwiZHJvcGRvd24tdHJpZ2dlcnMtbWFudWFsbHlcIlxuICAgICAgICAgICAgKm5nRm9yPVwiXG4gICAgICAgICAgICAgIGxldCBmaWx0ZXJEcm9wZG93bk9wdGlvbiBvZiBtdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hlZERyb3Bkb3duTGlzdFxuICAgICAgICAgICAgXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2Z4LWNoZWNrYm94XCI+XG4gICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAgICAgaWQ9XCJ7eyBmaWx0ZXJEcm9wZG93bk9wdGlvbi5pZCB9fV97e1xuICAgICAgICAgICAgICAgICAgZmlsdGVyRHJvcGRvd25PcHRpb24ubmFtZSB8IHRyaW1JZFxuICAgICAgICAgICAgICAgIH19XCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInNmeC1jaGVja2JveC1pbnB1dFwiXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIm11bHRpU2VsZWN0U2VhcmNoLmhhc01heFNlbGVjdGlvbnNcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJcbiAgICAgICAgICAgICAgICBvblNlbGVjdEl0ZW0oZmlsdGVyRHJvcGRvd25PcHRpb24pOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiZmlsdGVyRHJvcGRvd25PcHRpb24uaXNDaGVja2VkXCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPGxhYmVsXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJGb250NDAwXCJcbiAgICAgICAgICAgICAgICBmb3I9XCJ7eyBmaWx0ZXJEcm9wZG93bk9wdGlvbi5pZCB9fV97e1xuICAgICAgICAgICAgICAgICAgZmlsdGVyRHJvcGRvd25PcHRpb24ubmFtZSB8IHRyaW1JZFxuICAgICAgICAgICAgICAgIH19XCJcbiAgICAgICAgICAgICAgICA+e3sgZmlsdGVyRHJvcGRvd25PcHRpb24ubmFtZSB8IGNhcGl0YWxpemVGaXJzdENoYXJhY3RlciB9fVxuICAgICAgICAgICAgICAgIDxiciAvPlxuICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAqbmdJZj1cImZpbHRlckRyb3Bkb3duT3B0aW9uLmFkZGl0aW9uYWxJbmZvXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYWRkaXRpb25hbC1pbmZvXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7eyBmaWx0ZXJEcm9wZG93bk9wdGlvbi5hZGRpdGlvbmFsSW5mbyB9fTwvc3BhblxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdj48L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgPHN5bXBob255LXNmeC1sb2FkZXJcbiAgICAgICAgICAgICAgW2hpZGRlbl09XCIhaXNMb2FkaW5nRGF0YVwiXG4gICAgICAgICAgICA+PC9zeW1waG9ueS1zZngtbG9hZGVyPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPHN5bXBob255LXNmeC1sb2FkZXJcbiAgICAgICAgICBbaGlkZGVuXT1cIiFpc0xvYWRpbmdJbml0aWFsRGF0YVwiXG4gICAgICAgID48L3N5bXBob255LXNmeC1sb2FkZXI+XG4gICAgICAgIDwhLS0gc2VhcmNoIGxpc3QgZW5kcyBoZXJlIC0tPlxuICAgICAgICA8IS0tIEZvb3RlciAtLT5cbiAgICAgICAgPGRpdiAqbmdJZj1cIm9wZW5Ecm9wZG93blwiIGNsYXNzPVwic2Z4LWZpbHRlci1pdGVtLWZvb3RlclwiPlxuICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgY2xhc3M9XCJwdWxsLWxlZnRcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cIlxuICAgICAgICAgICAgICAhKFxuICAgICAgICAgICAgICAgIG11bHRpU2VsZWN0U2VhcmNoLnNlbGVjdGVkRHJvcGRvd25MaXN0ICYmXG4gICAgICAgICAgICAgICAgbXVsdGlTZWxlY3RTZWFyY2guc2VsZWN0ZWREcm9wZG93bkxpc3QubGVuZ3RoID4gMFxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICBcIlxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2xlYXJBbGxDbGljaygpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICBDbGVhciBBbGxcbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8YSBocmVmPVwiamF2YXNjcmlwdDo7XCIgKGNsaWNrKT1cIm9uT2tDbGljaygpXCIgY2xhc3M9XCJwdWxsLXJpZ2h0XCI+T0s8L2E+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8IS0tIEVuZCBGb290ZXIgLS0+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJpc0ludmFsaWRcIiBjbGFzcz1cImVycm9yLW1lc3NhZ2VcIj5cbiAgICBQbGVhc2Ugc2VsZWN0IGEgdmFsaWQgb3B0aW9uXG4gIDwvZGl2PlxuPC9kaXY+Il19
|
|
@@ -2,7 +2,7 @@ import { Pipe, Injectable } from '@angular/core';
|
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export class TrimIdPipe {
|
|
4
4
|
transform(value) {
|
|
5
|
-
return value?.replace(
|
|
5
|
+
return value?.replace(/[^\w]/g, "");
|
|
6
6
|
}
|
|
7
7
|
}
|
|
8
8
|
TrimIdPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: TrimIdPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
@@ -19,4 +19,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImpor
|
|
|
19
19
|
providedIn: 'root',
|
|
20
20
|
}]
|
|
21
21
|
}] });
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJpbS1pZC5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50LWxpYnJhcnkvc3JjL2xpYi9waXBlL3RyaW0taWQucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBUWhFLE1BQU0sT0FBTyxVQUFVO0lBRXJCLFNBQVMsQ0FBQyxLQUFhO1FBQ3JCLE9BQU8sS0FBSyxFQUFFLE9BQU8sQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUE7SUFDckMsQ0FBQzs7dUdBSlUsVUFBVTtxR0FBVixVQUFVOzJHQUFWLFVBQVUsY0FGVCxNQUFNOzJGQUVQLFVBQVU7a0JBTnRCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLFFBQVE7aUJBQ2Y7O2tCQUNBLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICd0cmltSWQnXG59KVxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFRyaW1JZFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcblxuICB0cmFuc2Zvcm0odmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHZhbHVlPy5yZXBsYWNlKC9bXlxcd10vZywgXCJcIilcbiAgfVxuXG59XG4iXX0=
|
|
@@ -58,7 +58,8 @@ export class InputSearchCheckboxDropdownComponent {
|
|
|
58
58
|
}
|
|
59
59
|
focusOnSearchInput() {
|
|
60
60
|
if (this.multiSelectSearch.componentHeading) {
|
|
61
|
-
this.renderer.selectRootElement(
|
|
61
|
+
let focusText = this.renderer.selectRootElement(`#dropdown-search-'${this.multiSelectSearch.componentHeading.replace(/[^\w]/g, "")}'`);
|
|
62
|
+
focusText.focus();
|
|
62
63
|
}
|
|
63
64
|
}
|
|
64
65
|
scrollHandler(event) {
|
|
@@ -222,4 +223,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImpor
|
|
|
222
223
|
}], initializeDropdown: [{
|
|
223
224
|
type: Output
|
|
224
225
|
}] } });
|
|
225
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtc2VhcmNoLWNoZWNrYm94LWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvYXRvbXMvaW5wdXQtc2VhcmNoLWNoZWNrYm94LWRyb3Bkb3duL2lucHV0LXNlYXJjaC1jaGVja2JveC1kcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2F0b21zL2lucHV0LXNlYXJjaC1jaGVja2JveC1kcm9wZG93bi9pbnB1dC1zZWFyY2gtY2hlY2tib3gtZHJvcGRvd24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEdBT1YsTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7Ozs7QUFZN0IsTUFBTSxPQUFPLG9DQUFvQztJQWtDL0MsWUFDVSxtQkFBaUQsRUFDakQsUUFBbUIsRUFDbkIsS0FBd0I7UUFGeEIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUE4QjtRQUNqRCxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLFVBQUssR0FBTCxLQUFLLENBQW1CO1FBNUJ6QiwyQkFBc0IsR0FBVyxFQUFFLENBQUMsQ0FBQyw0QkFBNEI7UUFNaEUsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBNkIsQ0FBQztRQUM3RCxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQTZCLENBQUM7UUFDM0Qsc0JBQWlCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUMvQyxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDckMsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFF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QUNMLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO1lBQzFCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQ2pELENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDLFlBQVksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLENBQ25ELENBQUM7U0FDSDtJQUNILENBQUM7O2lJQXpOVSxvQ0FBb0M7cUhBQXBDLG9DQUFvQyw4MUJDN0JqRCx5L09BbU5NOzJGRHRMTyxvQ0FBb0M7a0JBTGhELFNBQVM7K0JBQ0UseUNBQXlDOzJLQU9kLEdBQUc7c0JBQXZDLFNBQVM7dUJBQUMsS0FBSyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFDWixRQUFRO3NCQUE5QixTQUFTO3VCQUFDLFVBQVU7Z0JBRVosVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLHNCQUFzQjtzQkFBOUIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFFSSxZQUFZO3NCQUFyQixNQUFNO2dCQUNHLFVBQVU7c0JBQW5CLE1BQU07Z0JBQ0csaUJBQWlCO3NCQUExQixNQUFNO2dCQUNHLGVBQWU7c0JBQXhCLE1BQU07Z0JBQ0csUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxjQUFjO3NCQUF2QixNQUFNO2dCQUNHLGFBQWE7c0JBQXRCLE1BQU07Z0JBQ0csU0FBUztzQkFBbEIsTUFBTTtnQkFDRyxrQkFBa0I7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIE9uSW5pdCxcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgRXZlbnRFbWl0dGVyLFxuICBWaWV3Q2hpbGQsXG4gIE9uQ2hhbmdlcyxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgUmVuZGVyZXIyLFxuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQnNEcm9wZG93bkRpcmVjdGl2ZSB9IGZyb20gJ25neC1ib290c3RyYXAvZHJvcGRvd24nO1xuXG5pbXBvcnQgeyBQb3BvdmVyRGlyZWN0aXZlIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9wb3BvdmVyJztcbmltcG9ydCB7IHRpbWVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDYXBpdGFsaXplRmlyc3RDaGFyYWN0ZXJQaXBlIH0gZnJvbSAnLi9jYXBpdGFsaXplLWZpcnN0LWNoYXJhY3Rlci5waXBlJztcbmltcG9ydCB7XG4gIE11bHRpU2VsZWN0RGF0YU1vZHVsZSxcbiAgTXVsdGlzZWxlY3RTZWFyY2hDaGVja2JveCxcbn0gZnJvbSAnLi9pbnB1dC1zZWFyY2gtY2hlY2tib3gtZHJvcGRvd24ubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzeW1waG9ueS1pbnB1dC1zZWFyY2gtY2hlY2tib3gtZHJvcGRvd24nLFxuICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQtc2VhcmNoLWNoZWNrYm94LWRyb3Bkb3duLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaW5wdXQtc2VhcmNoLWNoZWNrYm94LWRyb3Bkb3duLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgSW5wdXRTZWFyY2hDaGVja2JveERyb3Bkb3duQ29tcG9uZW50XG4gIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIEFmdGVyVmlld0luaXRcbntcbiAgQFZpZXdDaGlsZCgncG9wJywgeyBzdGF0aWM6IGZhbHNlIH0pIHBvcDogUG9wb3ZlckRpcmVjdGl2ZTtcbiAgQFZpZXdDaGlsZCgnZHJvcGRvd24nKSBkcm9wZG93bjogQnNEcm9wZG93bkRpcmVjdGl2ZTtcblxuICBASW5wdXQoKSBpc0Rpc2FibGVkOiBib29sZWFuO1xuICBASW5wdXQoKSBtdWx0aVNlbGVjdFNlYXJjaDogTXVsdGlTZWxlY3REYXRhTW9kdWxlO1xuICBASW5wdXQoKSBlbmFibGVQbGFjZUhvbGRlcjogYm9vbGVhbjtcbiAgQElucHV0KCkgc2Nyb2xsSGVpZ2h0UGVyY2VudGFnZTogbnVtYmVyID0gNTA7IC8vIHNldHRpbmcgdGhlIGRlZmF1bHQgdG8gNTBcbiAgQElucHV0KCkgaXNMb2FkaW5nRGF0YTogYm9vbGVhbjtcbiAgQElucHV0KCkgaXNMb2FkaW5nSW5pdGlhbERhdGE6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGlzSW52ZXJzZTogYm9vbGVhbjtcbiAgQElucHV0KCkgc2l6ZTogc3RyaW5nO1xuXG4gIEBPdXRwdXQoKSBkZXNlbGVjdEl0ZW0gPSBuZXcgRXZlbnRFbWl0dGVyPE11bHRpc2VsZWN0U2VhcmNoQ2hlY2tib3g+KCk7XG4gIEBPdXRwdXQoKSBzZWxlY3RJdGVtID0gbmV3IEV2ZW50RW1pdHRlcjxNdWx0aXNlbGVjdFNlYXJjaENoZWNrYm94PigpO1xuICBAT3V0cHV0KCkgc2VhcmNoSW5wdXRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpIHNlbGVjdGlvblJldGFpbiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGNsZWFyQWxsID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgY29uZGl0aW9uQ2hlY2sgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpIGNyZWF0ZU5ld0l0ZW0gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpIHNjcm9sbEVuZCA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcbiAgQE91dHB1dCgpIGluaXRpYWxpemVEcm9wZG93biA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICBwdWJsaWMgaXNBbGxUb2dnbGVkOiBib29sZWFuO1xuICBwdWJsaWMgcG9wTW91c2VMZWZ0OiBib29sZWFuO1xuICBwdWJsaWMgb3BlbkRyb3Bkb3duID0gZmFsc2U7XG4gIHB1YmxpYyBzZWxlY3RlZCA9IHRydWU7XG4gIHB1YmxpYyBjb25kaXRpb25TZWxlY3Rpb25JZDogc3RyaW5nID0gJyc7XG4gIHB1YmxpYyBoYXNPa2F5QnV0dG9uQmVlbkNsaWNrZWQ6IGJvb2xlYW47XG4gIHB1YmxpYyBpc0luRm9jdXMgPSBmYWxzZTtcbiAgcHVibGljIGlzSW52YWxpZDogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNhcGl0YWxpemVGaXJzdENoYXI6IENhcGl0YWxpemVGaXJzdENoYXJhY3RlclBpcGUsXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICkge31cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgdGhpcy5zZXRTZWxlY3RlZEl0ZW1zVGV4dCgpO1xuICAgIHRoaXMuc2l6ZT0gJzE0cHgnXG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnNldFNlbGVjdGVkSXRlbXNUZXh0KCk7XG4gICAgLy8gcmFkaW8gYnV0dG9uIGlkIGdlbmVyYXRvciwgdG8gcHJvdmlkZSB1bmlxdWUgaWRzIGZvciBhZHZhbmNlZCBzZWFyY2ggYW5kIGVkaXQgc21hcnQgZm9sZGVyLlxuICAgIGlmICh0aGlzLm11bHRpU2VsZWN0U2VhcmNoLmNvbXBvbmVudEhlYWRpbmcpIHtcbiAgICAgIHRoaXMuY29uZGl0aW9uU2VsZWN0aW9uSWQgPVxuICAgICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLmNvbXBvbmVudEhlYWRpbmcucmVwbGFjZSgvXFxzL2csICcnKTtcblxuICAgICAgLy8gRm9yIEN1c3RvbSBGaWVsZHNcbiAgICAgIHRoaXMuY29uZGl0aW9uU2VsZWN0aW9uSWQgPSB0aGlzLmNvbmRpdGlvblNlbGVjdGlvbklkLnJlcGxhY2UoXG4gICAgICAgIC9bXmEtekEtWl0vZyxcbiAgICAgICAgJydcbiAgICAgICk7XG4gICAgfVxuICAgIGlmICh0aGlzLm11bHRpU2VsZWN0U2VhcmNoLm1vZGVsSWRlbnRpZmllcikge1xuICAgICAgdGhpcy5jb25kaXRpb25TZWxlY3Rpb25JZCA9XG4gICAgICAgIHRoaXMuY29uZGl0aW9uU2VsZWN0aW9uSWQgK1xuICAgICAgICAnXycgK1xuICAgICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLm1vZGVsSWRlbnRpZmllci5yZXBsYWNlKC9cXHMvZywgJycpO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5pc0V4cGFuZGVkT25Jbml0aWFsaXplKSB7XG4gICAgICB0aGlzLmRyb3Bkb3duLmlzT3BlbiA9IHRydWU7XG4gICAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG4gIH1cbiAgZm9jdXNPblNlYXJjaElucHV0KCkge1xuICAgIGlmICh0aGlzLm11bHRpU2VsZWN0U2VhcmNoLmNvbXBvbmVudEhlYWRpbmcpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2VsZWN0Um9vdEVsZW1lbnQoYCMke3RoaXMuY29uZGl0aW9uU2VsZWN0aW9uSWR9YCkuZm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICBzY3JvbGxIYW5kbGVyKGV2ZW50KTogdm9pZCB7XG4gICAgLy8gdHJpZ2dlciBhbiBldmVudCBvbiBlbmQgb2YgdGhlIHNjcm9sbFxuICAgIGlmIChcbiAgICAgIGV2ZW50LnRhcmdldC5vZmZzZXRIZWlnaHQgKyBldmVudC50YXJnZXQuc2Nyb2xsVG9wID49XG4gICAgICBldmVudC50YXJnZXQuc2Nyb2xsSGVpZ2h0ICogKHRoaXMuc2Nyb2xsSGVpZ2h0UGVyY2VudGFnZSAvIDEwMClcbiAgICApIHtcbiAgICAgIHRoaXMuc2Nyb2xsRW5kLmVtaXQodHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgb25TZWFyY2hJbnB1dENoYW5nZSgpIHtcbiAgICB0aGlzLnNlYXJjaElucHV0Q2hhbmdlLmVtaXQodGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hJbnB1dCk7XG4gIH1cblxuICBvbkRlc2VsZWN0SXRlbShkZXNlbGVjdGVkSXRlbSkge1xuICAgIHRoaXMuZm9jdXNPblNlYXJjaElucHV0KCk7XG4gICAgdGhpcy5kZXNlbGVjdEl0ZW0uZW1pdChkZXNlbGVjdGVkSXRlbSk7XG4gIH1cblxuICBvblNlbGVjdEl0ZW0oc2VsZWN0ZWRJdGVtKSB7XG4gICAgaWYgKHRoaXMubXVsdGlTZWxlY3RTZWFyY2guaXNTZWxlY3RBbGxFbmFibGVkID09IHRydWUpIHtcbiAgICAgIHNlbGVjdGVkSXRlbS5pc0NoZWNrZWQgPSAhc2VsZWN0ZWRJdGVtLmlzQ2hlY2tlZDtcbiAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VsZWN0ZWREcm9wZG93bkxpc3QgPVxuICAgICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaGVkRHJvcGRvd25MaXN0LmZpbHRlcihcbiAgICAgICAgICAoc2VsZWN0ZWRBbGxJdGVtKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gc2VsZWN0ZWRBbGxJdGVtLmlzQ2hlY2tlZCA9PSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICAgIGlmIChcbiAgICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWxlY3RlZERyb3Bkb3duTGlzdC5sZW5ndGggPT1cbiAgICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hlZERyb3Bkb3duTGlzdC5sZW5ndGhcbiAgICAgICkge1xuICAgICAgICB0aGlzLmlzQWxsVG9nZ2xlZCA9IHRydWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmlzQWxsVG9nZ2xlZCA9IGZhbHNlO1xuICAgICAgfVxuICAgIH0gXG4gICAgdGhpcy5mb2N1c09uU2VhcmNoSW5wdXQoKTtcbiAgICB0aGlzLnNlbGVjdEl0ZW0uZW1pdChzZWxlY3RlZEl0ZW0pO1xuICB9XG5cbiAgb25DbGVhckFsbENsaWNrKCkge1xuICAgIHRoaXMuZm9jdXNPblNlYXJjaElucHV0KCk7XG4gICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hJbnB1dCA9ICcnO1xuICAgIHRoaXMuY2xlYXJBbGwuZW1pdCgpO1xuICB9XG5cbiAgb25Pa0NsaWNrKGlzSGlkZGVuID0gZmFsc2UpIHtcbiAgICBpZiAoIXRoaXMubXVsdGlTZWxlY3RTZWFyY2guaXNFeHBhbmRlZE9uSW5pdGlhbGl6ZSB8fCAhaXNIaWRkZW4pIHtcbiAgICAgIGlmICghdGhpcy5pc0luRm9jdXMpIHtcbiAgICAgICAgaWYgKCF0aGlzLm11bHRpU2VsZWN0U2VhcmNoLmlzRXhwYW5kZWRPbkluaXRpYWxpemUpIHtcbiAgICAgICAgICB0aGlzLm9wZW5Ecm9wZG93biA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc2V0U2VsZWN0ZWRJdGVtc1RleHQoKTtcbiAgICAgICAgaWYgKCF0aGlzLmhhc09rYXlCdXR0b25CZWVuQ2xpY2tlZCkge1xuICAgICAgICAgIHRoaXMuc2VsZWN0aW9uUmV0YWluLmVtaXQoKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIXRoaXMubXVsdGlTZWxlY3RTZWFyY2guaXNFeHBhbmRlZE9uSW5pdGlhbGl6ZSkge1xuICAgICAgICAgIHRoaXMuaGFzT2theUJ1dHRvbkJlZW5DbGlja2VkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHRvZ2dsZURyb3Bkb3duKCkge1xuICAgIGlmICghdGhpcy5vcGVuRHJvcGRvd24pIHtcbiAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoSW5wdXQgPSAnJztcbiAgICAgIHRoaXMuaW5pdGlhbGl6ZURyb3Bkb3duLmVtaXQodHJ1ZSk7XG4gICAgfVxuICAgIHRoaXMuaGFzT2theUJ1dHRvbkJlZW5DbGlja2VkID0gZmFsc2U7XG4gICAgdGhpcy5vcGVuRHJvcGRvd24gPSB0cnVlO1xuICB9XG5cbiAgcG9wT3ZlclRleHQoKSB7XG4gICAgaWYgKCF0aGlzLm9wZW5Ecm9wZG93bikge1xuICAgICAgcmV0dXJuIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoSW5wdXQ7XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgc2hvd1BvcCgpIHtcbiAgICB0aGlzLnBvcE1vdXNlTGVmdCA9IGZhbHNlO1xuXG4gICAgY29uc3Qgc2NoZWR1bGVyID0gdGltZXIoNTAwKTtcbiAgICBzY2hlZHVsZXIuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIGlmICghdGhpcy5wb3BNb3VzZUxlZnQgJiYgdGhpcy5wb3ApIHtcbiAgICAgICAgdGhpcy5wb3Auc2hvdygpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgb25Qb3BNb3VzZUxlYXZlKCkge1xuICAgIHRoaXMucG9wTW91c2VMZWZ0ID0gdHJ1ZTtcbiAgICB0aGlzLnBvcC5oaWRlKCk7XG4gIH1cblxuICBvbkNvbmRpdGlvbkNsaWNrKGNvbmRpdGlvbjogc3RyaW5nKSB7XG4gICAgdGhpcy5jb25kaXRpb25DaGVjay5lbWl0KGNvbmRpdGlvbik7XG4gIH1cblxuICBzZXRTZWxlY3RlZEl0ZW1zVGV4dCgpIHtcbiAgICBpZiAoIXRoaXMub3BlbkRyb3Bkb3duKSB7XG4gICAgICBpZiAodGhpcy5tdWx0aVNlbGVjdFNlYXJjaCkge1xuICAgICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaElucHV0ID0gJyc7XG5cbiAgICAgICAgaWYgKHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VsZWN0ZWREcm9wZG93bkxpc3QpIHtcbiAgICAgICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaElucHV0ID1cbiAgICAgICAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VsZWN0ZWREcm9wZG93bkxpc3RcbiAgICAgICAgICAgICAgLm1hcCgoZHJvcGRvd25saXN0KSA9PlxuICAgICAgICAgICAgICAgIHRoaXMuY2FwaXRhbGl6ZUZpcnN0Q2hhci50cmFuc2Zvcm0oZHJvcGRvd25saXN0Lm5hbWUpXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgLmpvaW4oJywgJyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBvbkNyZWF0ZU5ld0l0ZW0oKSB7XG4gICAgdGhpcy5jcmVhdGVOZXdJdGVtLmVtaXQodGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hJbnB1dCk7XG4gIH1cblxuICBvbkZvY3VzQ2xpY2soaXNJbkZvY3VzOiBib29sZWFuKSB7XG4gICAgdGhpcy5pc0luRm9jdXMgPSBpc0luRm9jdXM7XG4gIH1cblxuICBvblRvZ2dsZUNsaWNrKGV2ZW50KSB7XG4gICAgaWYgKGV2ZW50ID09IHRydWUpIHtcbiAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoZWREcm9wZG93bkxpc3QuZm9yRWFjaChcbiAgICAgICAgKGRyb3Bkb3dubGlzdCkgPT4gKGRyb3Bkb3dubGlzdC5pc0NoZWNrZWQgPSB0cnVlKVxuICAgICAgKTtcbiAgICAgIHRoaXMuaXNBbGxUb2dnbGVkID0gdHJ1ZTtcbiAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VsZWN0ZWREcm9wZG93bkxpc3QgPVxuICAgICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaGVkRHJvcGRvd25MaXN0O1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmlzQWxsVG9nZ2xlZCA9IGZhbHNlO1xuICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hlZERyb3Bkb3duTGlzdC5mb3JFYWNoKFxuICAgICAgICAoZHJvcGRvd25saXN0KSA9PiAoZHJvcGRvd25saXN0LmlzQ2hlY2tlZCA9IGZhbHNlKVxuICAgICAgKTtcbiAgICB9XG4gIH1cbn1cbiIsIlxuPGRpdiBbbmdDbGFzc109XCJ7ICdpc0ludmVyc2UnOiBpc0ludmVyc2UgfVwiPlxuICA8ZGl2XG4gICAgKm5nSWY9XCJtdWx0aVNlbGVjdFNlYXJjaC5jb21wb25lbnRIZWFkaW5nXCJcbiAgICBjbGFzcz1cInNmeC1maWx0ZXItbGFiZWwgc2Z4LWQtaW5saW5lLWJsb2NrXCJcbiAgPlxuICAgIDxiXG4gICAgICA+e3sgZW5hYmxlUGxhY2VIb2xkZXIgPyBcIlwiIDogbXVsdGlTZWxlY3RTZWFyY2guY29tcG9uZW50SGVhZGluZyB9fVxuICAgICAgPHNwYW4gKm5nSWY9XCJtdWx0aVNlbGVjdFNlYXJjaC5yZXF1aXJlZFwiIGNsYXNzPVwicmVxdWlyZWRGaWVsZFwiPio8L3NwYW4+XG4gICAgPC9iPlxuICA8L2Rpdj5cbiAgPGRpdiAqbmdJZj1cIm11bHRpU2VsZWN0U2VhcmNoLmNvbmRpdGlvblwiIGNsYXNzPVwic2Z4LXN3aXRjaC1maWVsZCBwdWxsLXJpZ2h0XCI+XG4gICAgPGlucHV0XG4gICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgaWQ9XCJyYWRpby1hbmQte3sgY29uZGl0aW9uU2VsZWN0aW9uSWQgfX1cIlxuICAgICAgbmFtZT1cInJhZGlvLWFuZC17eyBjb25kaXRpb25TZWxlY3Rpb25JZCB9fVwiXG4gICAgICB2YWx1ZT1cInllc1wiXG4gICAgICAoY2xpY2spPVwib25Db25kaXRpb25DbGljaygnIEFORCAnKVwiXG4gICAgICBbY2hlY2tlZF09XCJtdWx0aVNlbGVjdFNlYXJjaC5jb25kaXRpb24gPT09ICcgQU5EICdcIlxuICAgIC8+XG4gICAgPGxhYmVsIGNsYXNzPVwiRm9udDQwMFwiIGZvcj1cInJhZGlvLWFuZC17eyBjb25kaXRpb25TZWxlY3Rpb25JZCB9fVwiXG4gICAgICA+YW5kPC9sYWJlbFxuICAgID5cbiAgICA8aW5wdXRcbiAgICAgIHR5cGU9XCJyYWRpb1wiXG4gICAgICBpZD1cInJhZGlvLW9yLXt7IGNvbmRpdGlvblNlbGVjdGlvbklkIH19XCJcbiAgICAgIG5hbWU9XCJyYWRpby1vci17eyBjb25kaXRpb25TZWxlY3Rpb25JZCB9fVwiXG4gICAgICB2YWx1ZT1cInllc1wiXG4gICAgICAoY2xpY2spPVwib25Db25kaXRpb25DbGljaygnIE9SICcpXCJcbiAgICAgIFtjaGVja2VkXT1cIm11bHRpU2VsZWN0U2VhcmNoLmNvbmRpdGlvbiA9PT0gJyBPUiAnXCJcbiAgICAvPlxuICAgIDxsYWJlbCBjbGFzcz1cIkZvbnQ0MDBcIiBmb3I9XCJyYWRpby1vci17eyBjb25kaXRpb25TZWxlY3Rpb25JZCB9fVwiPm9yPC9sYWJlbD5cbiAgPC9kaXY+XG4gIDxkaXZcbiAgICBjbGFzcz1cInNmeC1jdXN0b20tZHJvcGRvd24td3JhcFwiXG4gICAgW25nQ2xhc3NdPVwieyBvcGVuOiBvcGVuRHJvcGRvd24gfVwiXG4gICAgZHJvcGRvd25cbiAgICAjZHJvcGRvd249XCJicy1kcm9wZG93blwiXG4gICAgKG9uU2hvd24pPVwidG9nZ2xlRHJvcGRvd24oKVwiXG4gICAgW2luc2lkZUNsaWNrXT1cInRydWVcIlxuICAgIChvbkhpZGRlbik9XCJvbk9rQ2xpY2sodHJ1ZSlcIlxuICA+XG4gICAgPGlucHV0XG4gICAgICBbbmdDbGFzc109XCJ7ICdpbnZhbGlkLWNvbnRyb2wnOiBpc0ludmFsaWQgfVwiXG4gICAgICAoY2xpY2spPVwiZHJvcGRvd24uaXNPcGVuID0gdHJ1ZVwiXG4gICAgICB0eXBlPVwidGV4dFwiXG4gICAgICBpZD1cImRyb3Bkb3duLXNlYXJjaC17eyBtdWx0aVNlbGVjdFNlYXJjaC5jb21wb25lbnRIZWFkaW5nIHwgdHJpbUlkfX1cIlxuICAgICAgWyhuZ01vZGVsKV09XCJtdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hJbnB1dFwiXG4gICAgICAobmdNb2RlbENoYW5nZSk9XCJvblNlYXJjaElucHV0Q2hhbmdlKClcIlxuICAgICAgZHJvcGRvd25Ub2dnbGVcbiAgICAgIHBvcG92ZXI9XCJ7eyBwb3BPdmVyVGV4dCgpIH19XCJcbiAgICAgIGNvbnRhaW5lckNsYXNzPVwic2Z4LWlucHV0LXBvcG92ZXJcIlxuICAgICAgdHJpZ2dlcnM9XCJcIlxuICAgICAgcGxhY2VtZW50PVwidG9wXCJcbiAgICAgICNwb3A9XCJicy1wb3BvdmVyXCJcbiAgICAgIChtb3VzZWVudGVyKT1cInNob3dQb3AoKVwiXG4gICAgICAobW91c2VsZWF2ZSk9XCJvblBvcE1vdXNlTGVhdmUoKVwiXG4gICAgICAoZm9jdXMpPVwib25Gb2N1c0NsaWNrKHRydWUpXCJcbiAgICAgIChibHVyKT1cIm9uRm9jdXNDbGljayhmYWxzZSlcIlxuICAgICAgY2xhc3M9XCJzZngtcGxhY2Vob2xkZXJcIlxuICAgICAgcGxhY2Vob2xkZXI9XCJ7e1xuICAgICAgICBlbmFibGVQbGFjZUhvbGRlciA/IG11bHRpU2VsZWN0U2VhcmNoLmNvbXBvbmVudEhlYWRpbmcgOiAnJ1xuICAgICAgfX1cIlxuICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcbiAgICAgIFtkaXNhYmxlZF09XCJpc0Rpc2FibGVkXCJcbiAgICAvPlxuICAgIDxzeW1waG9ueS1pY29uIFtzaXplXT1cInNpemVcIiBbaWNvbl09XCInc2ktc2VhcmNoLW5ldydcIj48L3N5bXBob255LWljb24+XG4gICAgPGRpdiAqZHJvcGRvd25NZW51PlxuICAgICAgPGRpdiBjbGFzcz1cInNmeC1jdXN0b20tZHJvcGRvd25cIiAqbmdJZj1cIm9wZW5Ecm9wZG93blwiPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwibXVsdGlTZWxlY3RTZWFyY2guaXNTZWxlY3RBbGxFbmFibGVkXCIgY2xhc3M9XCJzZngtc2VsZWN0LWFsbC10b2dnbGVcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNmeC1mb250LWJvbGQgc2Z4LW1yLTEwXCI+U2VsZWN0IEFsbDwvc3Bhbj5cbiAgICAgICAgICA8c3ltcGhvbnktaW5wdXQtdG9nZ2xlXG4gICAgICAgICAgW2lzVG9nZ2xlZF09XCJpc0FsbFRvZ2dsZWRcIlxuICAgICAgICAgIFtpc0ludmVyc2VdPVwiZmFsc2VcIlxuICAgICAgICAgICh0b2dnbGVDbGljayk9XCJvblRvZ2dsZUNsaWNrKCRldmVudClcIlxuICAgICAgICAgID48L3N5bXBob255LWlucHV0LXRvZ2dsZT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDwhLS0gQ3JlYXRlIEFuZCBBZGQgVGFncyAtLT5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwic2Z4LWNyZWF0ZS1uZXctaXRlbXNcIlxuICAgICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICBtdWx0aVNlbGVjdFNlYXJjaC5sYWJlbENyZWF0ZU5ld0l0ZW1zICYmXG4gICAgICAgICAgICBtdWx0aVNlbGVjdFNlYXJjaC5zaG93Q3JlYXRlTmV3SXRlbXNcbiAgICAgICAgICBcIlxuICAgICAgICAgIChjbGljayk9XCJvbkNyZWF0ZU5ld0l0ZW0oKVwiXG4gICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgJ3NmeC1mb250LWJvbGQnOiBtdWx0aVNlbGVjdFNlYXJjaC5zaG93Q3JlYXRlTmV3TW9kYWxcbiAgICAgICAgICB9XCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IG11bHRpU2VsZWN0U2VhcmNoLmxhYmVsQ3JlYXRlTmV3SXRlbXMgfX1cbiAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgY2xhc3M9XCJzZngtZm9udC1ib2xkXCJcbiAgICAgICAgICAgICpuZ0lmPVwiIW11bHRpU2VsZWN0U2VhcmNoLnNob3dDcmVhdGVOZXdNb2RhbFwiXG4gICAgICAgICAgICA+Jm5ic3A7JmFwb3M7XG4gICAgICAgICAgICB7eyBtdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hJbnB1dCB8IGNhcGl0YWxpemVGaXJzdENoYXJhY3RlciB9fSZhcG9zO1xuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICA8aSBjbGFzcz1cInNmeC1pY29uLVBsdXMgc2Z4LWNyZWF0ZS1uZXctaXRlbXMtaWNvblwiPjwvaT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDwhLS0gQ3JlYXRlIEFuZCBBZGQgVGFncyBlbmRzIGhlcmUgLS0+XG4gICAgICAgIDwhLS0gc2VsZWN0ZWQgbGlzdCBkaXYgLS0+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cInNmeC1kcm9wZG93bi1zZWxlY3RlZCBzZngtY3VzdG9tLXNjcm9sbFwiXG4gICAgICAgICAgKm5nSWY9XCJtdWx0aVNlbGVjdFNlYXJjaC5zZWxlY3RlZERyb3Bkb3duTGlzdC5sZW5ndGggPiAwICYmICFtdWx0aVNlbGVjdFNlYXJjaC5pc1NlbGVjdEFsbEVuYWJsZWRcIlxuICAgICAgICA+XG4gICAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJzZngtZC1pbmxpbmUtYmxvY2tcIlxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IHNlbGVjdGVkSXRlbSBvZiBtdWx0aVNlbGVjdFNlYXJjaC5zZWxlY3RlZERyb3Bkb3duTGlzdFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAoY2xpY2spPVwib25EZXNlbGVjdEl0ZW0oc2VsZWN0ZWRJdGVtKTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJzZngtY2hlY2tib3ggc2Z4LWQtaW5saW5lLWJsb2NrXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgICAgICBjaGVja2VkXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJzZngtY2hlY2tib3gtaW5wdXRcIlxuICAgICAgICAgICAgICAgIGlkPVwie3sgc2VsZWN0ZWRJdGVtLmlkIH19X3t7IHNlbGVjdGVkSXRlbS5uYW1lIH19XCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPGxhYmVsXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJGb250NDAwXCJcbiAgICAgICAgICAgICAgICBmb3I9XCJ7eyBzZWxlY3RlZEl0ZW0uaWQgfX1fe3sgc2VsZWN0ZWRJdGVtLm5hbWUgfX1cIlxuICAgICAgICAgICAgICAgID57eyBzZWxlY3RlZEl0ZW0ubmFtZSB8IGNhcGl0YWxpemVGaXJzdENoYXJhY3RlciB9fVxuICAgICAgICAgICAgICAgIDxiciAvPlxuICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAqbmdJZj1cInNlbGVjdGVkSXRlbS5hZGRpdGlvbmFsSW5mb1wiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInNlbGVjdGVkLWFkZGl0aW9uYWwtaW5mb1wiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge3sgc2VsZWN0ZWRJdGVtLmFkZGl0aW9uYWxJbmZvIH19PC9zcGFuXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2PjwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPCEtLSBzZWxlY3RlZCBsaXN0IGRpdiBlbmRzIGhlcmUgLS0+XG4gICAgICAgIDwhLS0gU2VhcmNoIGxpc3QgIC0tPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJzZngtZHJvcGRvd24tdW5zZWxlY3RlZCBzZngtY3VzdG9tLXNjcm9sbFwiXG4gICAgICAgICAgKHNjcm9sbCk9XCJzY3JvbGxIYW5kbGVyKCRldmVudClcIlxuICAgICAgICAgICpuZ0lmPVwibXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoZWREcm9wZG93bkxpc3QubGVuZ3RoID4gMFwiXG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBpZD1cImRyb3Bkb3duLXRyaWdnZXJzLW1hbnVhbGx5XCJcbiAgICAgICAgICAgICpuZ0Zvcj1cIlxuICAgICAgICAgICAgICBsZXQgZmlsdGVyRHJvcGRvd25PcHRpb24gb2YgbXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoZWREcm9wZG93bkxpc3RcbiAgICAgICAgICAgIFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNmeC1jaGVja2JveFwiPlxuICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgICAgICAgICAgIGlkPVwie3sgZmlsdGVyRHJvcGRvd25PcHRpb24uaWQgfX1fe3tcbiAgICAgICAgICAgICAgICAgIGZpbHRlckRyb3Bkb3duT3B0aW9uLm5hbWUgfCB0cmltSWRcbiAgICAgICAgICAgICAgICB9fVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJzZngtY2hlY2tib3gtaW5wdXRcIlxuICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJtdWx0aVNlbGVjdFNlYXJjaC5oYXNNYXhTZWxlY3Rpb25zXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiXG4gICAgICAgICAgICAgICAgb25TZWxlY3RJdGVtKGZpbHRlckRyb3Bkb3duT3B0aW9uKTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImZpbHRlckRyb3Bkb3duT3B0aW9uLmlzQ2hlY2tlZFwiXG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDxsYWJlbFxuICAgICAgICAgICAgICAgIGNsYXNzPVwiRm9udDQwMFwiXG4gICAgICAgICAgICAgICAgZm9yPVwie3sgZmlsdGVyRHJvcGRvd25PcHRpb24uaWQgfX1fe3tcbiAgICAgICAgICAgICAgICAgIGZpbHRlckRyb3Bkb3duT3B0aW9uLm5hbWUgfCB0cmltSWRcbiAgICAgICAgICAgICAgICB9fVwiXG4gICAgICAgICAgICAgICAgPnt7IGZpbHRlckRyb3Bkb3duT3B0aW9uLm5hbWUgfCBjYXBpdGFsaXplRmlyc3RDaGFyYWN0ZXIgfX1cbiAgICAgICAgICAgICAgICA8YnIgLz5cbiAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgKm5nSWY9XCJmaWx0ZXJEcm9wZG93bk9wdGlvbi5hZGRpdGlvbmFsSW5mb1wiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImFkZGl0aW9uYWwtaW5mb1wiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge3sgZmlsdGVyRHJvcGRvd25PcHRpb24uYWRkaXRpb25hbEluZm8gfX08L3NwYW5cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXY+PC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxzeW1waG9ueS1zZngtbG9hZGVyXG4gICAgICAgICAgICAgIFtoaWRkZW5dPVwiIWlzTG9hZGluZ0RhdGFcIlxuICAgICAgICAgICAgPjwvc3ltcGhvbnktc2Z4LWxvYWRlcj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxzeW1waG9ueS1zZngtbG9hZGVyXG4gICAgICAgICAgW2hpZGRlbl09XCIhaXNMb2FkaW5nSW5pdGlhbERhdGFcIlxuICAgICAgICA+PC9zeW1waG9ueS1zZngtbG9hZGVyPlxuICAgICAgICA8IS0tIHNlYXJjaCBsaXN0IGVuZHMgaGVyZSAtLT5cbiAgICAgICAgPCEtLSBGb290ZXIgLS0+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJvcGVuRHJvcGRvd25cIiBjbGFzcz1cInNmeC1maWx0ZXItaXRlbS1mb290ZXJcIj5cbiAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIGNsYXNzPVwicHVsbC1sZWZ0XCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJcbiAgICAgICAgICAgICAgIShcbiAgICAgICAgICAgICAgICBtdWx0aVNlbGVjdFNlYXJjaC5zZWxlY3RlZERyb3Bkb3duTGlzdCAmJlxuICAgICAgICAgICAgICAgIG11bHRpU2VsZWN0U2VhcmNoLnNlbGVjdGVkRHJvcGRvd25MaXN0Lmxlbmd0aCA+IDBcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgXCJcbiAgICAgICAgICAgIChjbGljayk9XCJvbkNsZWFyQWxsQ2xpY2soKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgQ2xlYXIgQWxsXG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPGEgaHJlZj1cImphdmFzY3JpcHQ6O1wiIChjbGljayk9XCJvbk9rQ2xpY2soKVwiIGNsYXNzPVwicHVsbC1yaWdodFwiPk9LPC9hPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPCEtLSBFbmQgRm9vdGVyIC0tPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwiaXNJbnZhbGlkXCIgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+XG4gICAgUGxlYXNlIHNlbGVjdCBhIHZhbGlkIG9wdGlvblxuICA8L2Rpdj5cbjwvZGl2PiJdfQ==
|
|
226
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtc2VhcmNoLWNoZWNrYm94LWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvYXRvbXMvaW5wdXQtc2VhcmNoLWNoZWNrYm94LWRyb3Bkb3duL2lucHV0LXNlYXJjaC1jaGVja2JveC1kcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2F0b21zL2lucHV0LXNlYXJjaC1jaGVja2JveC1kcm9wZG93bi9pbnB1dC1zZWFyY2gtY2hlY2tib3gtZHJvcGRvd24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEdBT1YsTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7Ozs7QUFZN0IsTUFBTSxPQUFPLG9DQUFvQztJQWtDL0MsWUFDVSxtQkFBaUQsRUFDakQsUUFBbUIsRUFDbkIsS0FBd0I7UUFGeEIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUE4QjtRQUNqRCxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLFVBQUssR0FBTCxLQUFLLENBQW1CO1FBNUJ6QiwyQkFBc0IsR0FBVyxFQUFFLENBQUMsQ0FBQyw0QkFBNEI7UUFNaEUsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBNkIsQ0FBQztRQUM3RCxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQTZCLENBQUM7UUFDM0Qsc0JBQWlCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUMvQyxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDckMsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFF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biAgT3V0cHV0LFxuICBFdmVudEVtaXR0ZXIsXG4gIFZpZXdDaGlsZCxcbiAgT25DaGFuZ2VzLFxuICBTaW1wbGVDaGFuZ2VzLFxuICBSZW5kZXJlcjIsXG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCc0Ryb3Bkb3duRGlyZWN0aXZlIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9kcm9wZG93bic7XG5cbmltcG9ydCB7IFBvcG92ZXJEaXJlY3RpdmUgfSBmcm9tICduZ3gtYm9vdHN0cmFwL3BvcG92ZXInO1xuaW1wb3J0IHsgdGltZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENhcGl0YWxpemVGaXJzdENoYXJhY3RlclBpcGUgfSBmcm9tICcuL2NhcGl0YWxpemUtZmlyc3QtY2hhcmFjdGVyLnBpcGUnO1xuaW1wb3J0IHtcbiAgTXVsdGlTZWxlY3REYXRhTW9kdWxlLFxuICBNdWx0aXNlbGVjdFNlYXJjaENoZWNrYm94LFxufSBmcm9tICcuL2lucHV0LXNlYXJjaC1jaGVja2JveC1kcm9wZG93bi5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3N5bXBob255LWlucHV0LXNlYXJjaC1jaGVja2JveC1kcm9wZG93bicsXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnB1dC1zZWFyY2gtY2hlY2tib3gtZHJvcGRvd24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pbnB1dC1zZWFyY2gtY2hlY2tib3gtZHJvcGRvd24uY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBJbnB1dFNlYXJjaENoZWNrYm94RHJvcGRvd25Db21wb25lbnRcbiAgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdFxue1xuICBAVmlld0NoaWxkKCdwb3AnLCB7IHN0YXRpYzogZmFsc2UgfSkgcG9wOiBQb3BvdmVyRGlyZWN0aXZlO1xuICBAVmlld0NoaWxkKCdkcm9wZG93bicpIGRyb3Bkb3duOiBCc0Ryb3Bkb3duRGlyZWN0aXZlO1xuXG4gIEBJbnB1dCgpIGlzRGlzYWJsZWQ6IGJvb2xlYW47XG4gIEBJbnB1dCgpIG11bHRpU2VsZWN0U2VhcmNoOiBNdWx0aVNlbGVjdERhdGFNb2R1bGU7XG4gIEBJbnB1dCgpIGVuYWJsZVBsYWNlSG9sZGVyOiBib29sZWFuO1xuICBASW5wdXQoKSBzY3JvbGxIZWlnaHRQZXJjZW50YWdlOiBudW1iZXIgPSA1MDsgLy8gc2V0dGluZyB0aGUgZGVmYXVsdCB0byA1MFxuICBASW5wdXQoKSBpc0xvYWRpbmdEYXRhOiBib29sZWFuO1xuICBASW5wdXQoKSBpc0xvYWRpbmdJbml0aWFsRGF0YTogYm9vbGVhbjtcbiAgQElucHV0KCkgaXNJbnZlcnNlOiBib29sZWFuO1xuICBASW5wdXQoKSBzaXplOiBzdHJpbmc7XG5cbiAgQE91dHB1dCgpIGRlc2VsZWN0SXRlbSA9IG5ldyBFdmVudEVtaXR0ZXI8TXVsdGlzZWxlY3RTZWFyY2hDaGVja2JveD4oKTtcbiAgQE91dHB1dCgpIHNlbGVjdEl0ZW0gPSBuZXcgRXZlbnRFbWl0dGVyPE11bHRpc2VsZWN0U2VhcmNoQ2hlY2tib3g+KCk7XG4gIEBPdXRwdXQoKSBzZWFyY2hJbnB1dENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBAT3V0cHV0KCkgc2VsZWN0aW9uUmV0YWluID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgY2xlYXJBbGwgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBjb25kaXRpb25DaGVjayA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBAT3V0cHV0KCkgY3JlYXRlTmV3SXRlbSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBAT3V0cHV0KCkgc2Nyb2xsRW5kID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuICBAT3V0cHV0KCkgaW5pdGlhbGl6ZURyb3Bkb3duID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIHB1YmxpYyBpc0FsbFRvZ2dsZWQ6IGJvb2xlYW47XG4gIHB1YmxpYyBwb3BNb3VzZUxlZnQ6IGJvb2xlYW47XG4gIHB1YmxpYyBvcGVuRHJvcGRvd24gPSBmYWxzZTtcbiAgcHVibGljIHNlbGVjdGVkID0gdHJ1ZTtcbiAgcHVibGljIGNvbmRpdGlvblNlbGVjdGlvbklkOiBzdHJpbmcgPSAnJztcbiAgcHVibGljIGhhc09rYXlCdXR0b25CZWVuQ2xpY2tlZDogYm9vbGVhbjtcbiAgcHVibGljIGlzSW5Gb2N1cyA9IGZhbHNlO1xuICBwdWJsaWMgaXNJbnZhbGlkOiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY2FwaXRhbGl6ZUZpcnN0Q2hhcjogQ2FwaXRhbGl6ZUZpcnN0Q2hhcmFjdGVyUGlwZSxcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgcHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7fVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICB0aGlzLnNldFNlbGVjdGVkSXRlbXNUZXh0KCk7XG4gICAgdGhpcy5zaXplPSAnMTRweCdcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2V0U2VsZWN0ZWRJdGVtc1RleHQoKTtcbiAgICAvLyByYWRpbyBidXR0b24gaWQgZ2VuZXJhdG9yLCB0byBwcm92aWRlIHVuaXF1ZSBpZHMgZm9yIGFkdmFuY2VkIHNlYXJjaCBhbmQgZWRpdCBzbWFydCBmb2xkZXIuXG4gICAgaWYgKHRoaXMubXVsdGlTZWxlY3RTZWFyY2guY29tcG9uZW50SGVhZGluZykge1xuICAgICAgdGhpcy5jb25kaXRpb25TZWxlY3Rpb25JZCA9XG4gICAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guY29tcG9uZW50SGVhZGluZy5yZXBsYWNlKC9cXHMvZywgJycpO1xuXG4gICAgICAvLyBGb3IgQ3VzdG9tIEZpZWxkc1xuICAgICAgdGhpcy5jb25kaXRpb25TZWxlY3Rpb25JZCA9IHRoaXMuY29uZGl0aW9uU2VsZWN0aW9uSWQucmVwbGFjZShcbiAgICAgICAgL1teYS16QS1aXS9nLFxuICAgICAgICAnJ1xuICAgICAgKTtcbiAgICB9XG4gICAgaWYgKHRoaXMubXVsdGlTZWxlY3RTZWFyY2gubW9kZWxJZGVudGlmaWVyKSB7XG4gICAgICB0aGlzLmNvbmRpdGlvblNlbGVjdGlvbklkID1cbiAgICAgICAgdGhpcy5jb25kaXRpb25TZWxlY3Rpb25JZCArXG4gICAgICAgICdfJyArXG4gICAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2gubW9kZWxJZGVudGlmaWVyLnJlcGxhY2UoL1xccy9nLCAnJyk7XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLm11bHRpU2VsZWN0U2VhcmNoLmlzRXhwYW5kZWRPbkluaXRpYWxpemUpIHtcbiAgICAgIHRoaXMuZHJvcGRvd24uaXNPcGVuID0gdHJ1ZTtcbiAgICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbiAgfVxuICBmb2N1c09uU2VhcmNoSW5wdXQoKSB7XG4gICAgaWYgKHRoaXMubXVsdGlTZWxlY3RTZWFyY2guY29tcG9uZW50SGVhZGluZykge1xuICAgICAgbGV0IGZvY3VzVGV4dCA9IHRoaXMucmVuZGVyZXIuc2VsZWN0Um9vdEVsZW1lbnQoYCNkcm9wZG93bi1zZWFyY2gtJyR7dGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5jb21wb25lbnRIZWFkaW5nLnJlcGxhY2UoL1teXFx3XS9nLCBcIlwiKX0nYClcbiAgICAgIGZvY3VzVGV4dC5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIHNjcm9sbEhhbmRsZXIoZXZlbnQpOiB2b2lkIHtcbiAgICAvLyB0cmlnZ2VyIGFuIGV2ZW50IG9uIGVuZCBvZiB0aGUgc2Nyb2xsXG4gICAgaWYgKFxuICAgICAgZXZlbnQudGFyZ2V0Lm9mZnNldEhlaWdodCArIGV2ZW50LnRhcmdldC5zY3JvbGxUb3AgPj1cbiAgICAgIGV2ZW50LnRhcmdldC5zY3JvbGxIZWlnaHQgKiAodGhpcy5zY3JvbGxIZWlnaHRQZXJjZW50YWdlIC8gMTAwKVxuICAgICkge1xuICAgICAgdGhpcy5zY3JvbGxFbmQuZW1pdCh0cnVlKTtcbiAgICB9XG4gIH1cblxuICBvblNlYXJjaElucHV0Q2hhbmdlKCkge1xuICAgIHRoaXMuc2VhcmNoSW5wdXRDaGFuZ2UuZW1pdCh0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaElucHV0KTtcbiAgfVxuXG4gIG9uRGVzZWxlY3RJdGVtKGRlc2VsZWN0ZWRJdGVtKSB7XG4gICAgdGhpcy5mb2N1c09uU2VhcmNoSW5wdXQoKTtcbiAgICB0aGlzLmRlc2VsZWN0SXRlbS5lbWl0KGRlc2VsZWN0ZWRJdGVtKTtcbiAgfVxuXG4gIG9uU2VsZWN0SXRlbShzZWxlY3RlZEl0ZW0pIHtcbiAgICBpZiAodGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5pc1NlbGVjdEFsbEVuYWJsZWQgPT0gdHJ1ZSkge1xuICAgICAgc2VsZWN0ZWRJdGVtLmlzQ2hlY2tlZCA9ICFzZWxlY3RlZEl0ZW0uaXNDaGVja2VkO1xuICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWxlY3RlZERyb3Bkb3duTGlzdCA9XG4gICAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoZWREcm9wZG93bkxpc3QuZmlsdGVyKFxuICAgICAgICAgIChzZWxlY3RlZEFsbEl0ZW0pID0+IHtcbiAgICAgICAgICAgIHJldHVybiBzZWxlY3RlZEFsbEl0ZW0uaXNDaGVja2VkID09IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICApO1xuICAgICAgaWYgKFxuICAgICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlbGVjdGVkRHJvcGRvd25MaXN0Lmxlbmd0aCA9PVxuICAgICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaGVkRHJvcGRvd25MaXN0Lmxlbmd0aFxuICAgICAgKSB7XG4gICAgICAgIHRoaXMuaXNBbGxUb2dnbGVkID0gdHJ1ZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuaXNBbGxUb2dnbGVkID0gZmFsc2U7XG4gICAgICB9XG4gICAgfSBcbiAgICB0aGlzLmZvY3VzT25TZWFyY2hJbnB1dCgpO1xuICAgIHRoaXMuc2VsZWN0SXRlbS5lbWl0KHNlbGVjdGVkSXRlbSk7XG4gIH1cblxuICBvbkNsZWFyQWxsQ2xpY2soKSB7XG4gICAgdGhpcy5mb2N1c09uU2VhcmNoSW5wdXQoKTtcbiAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaElucHV0ID0gJyc7XG4gICAgdGhpcy5jbGVhckFsbC5lbWl0KCk7XG4gIH1cblxuICBvbk9rQ2xpY2soaXNIaWRkZW4gPSBmYWxzZSkge1xuICAgIGlmICghdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5pc0V4cGFuZGVkT25Jbml0aWFsaXplIHx8ICFpc0hpZGRlbikge1xuICAgICAgaWYgKCF0aGlzLmlzSW5Gb2N1cykge1xuICAgICAgICBpZiAoIXRoaXMubXVsdGlTZWxlY3RTZWFyY2guaXNFeHBhbmRlZE9uSW5pdGlhbGl6ZSkge1xuICAgICAgICAgIHRoaXMub3BlbkRyb3Bkb3duID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zZXRTZWxlY3RlZEl0ZW1zVGV4dCgpO1xuICAgICAgICBpZiAoIXRoaXMuaGFzT2theUJ1dHRvbkJlZW5DbGlja2VkKSB7XG4gICAgICAgICAgdGhpcy5zZWxlY3Rpb25SZXRhaW4uZW1pdCgpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5pc0V4cGFuZGVkT25Jbml0aWFsaXplKSB7XG4gICAgICAgICAgdGhpcy5oYXNPa2F5QnV0dG9uQmVlbkNsaWNrZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgdG9nZ2xlRHJvcGRvd24oKSB7XG4gICAgaWYgKCF0aGlzLm9wZW5Ecm9wZG93bikge1xuICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hJbnB1dCA9ICcnO1xuICAgICAgdGhpcy5pbml0aWFsaXplRHJvcGRvd24uZW1pdCh0cnVlKTtcbiAgICB9XG4gICAgdGhpcy5oYXNPa2F5QnV0dG9uQmVlbkNsaWNrZWQgPSBmYWxzZTtcbiAgICB0aGlzLm9wZW5Ecm9wZG93biA9IHRydWU7XG4gIH1cblxuICBwb3BPdmVyVGV4dCgpIHtcbiAgICBpZiAoIXRoaXMub3BlbkRyb3Bkb3duKSB7XG4gICAgICByZXR1cm4gdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hJbnB1dDtcbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBzaG93UG9wKCkge1xuICAgIHRoaXMucG9wTW91c2VMZWZ0ID0gZmFsc2U7XG5cbiAgICBjb25zdCBzY2hlZHVsZXIgPSB0aW1lcig1MDApO1xuICAgIHNjaGVkdWxlci5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgaWYgKCF0aGlzLnBvcE1vdXNlTGVmdCAmJiB0aGlzLnBvcCkge1xuICAgICAgICB0aGlzLnBvcC5zaG93KCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBvblBvcE1vdXNlTGVhdmUoKSB7XG4gICAgdGhpcy5wb3BNb3VzZUxlZnQgPSB0cnVlO1xuICAgIHRoaXMucG9wLmhpZGUoKTtcbiAgfVxuXG4gIG9uQ29uZGl0aW9uQ2xpY2soY29uZGl0aW9uOiBzdHJpbmcpIHtcbiAgICB0aGlzLmNvbmRpdGlvbkNoZWNrLmVtaXQoY29uZGl0aW9uKTtcbiAgfVxuXG4gIHNldFNlbGVjdGVkSXRlbXNUZXh0KCkge1xuICAgIGlmICghdGhpcy5vcGVuRHJvcGRvd24pIHtcbiAgICAgIGlmICh0aGlzLm11bHRpU2VsZWN0U2VhcmNoKSB7XG4gICAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoSW5wdXQgPSAnJztcblxuICAgICAgICBpZiAodGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWxlY3RlZERyb3Bkb3duTGlzdCkge1xuICAgICAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoSW5wdXQgPVxuICAgICAgICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWxlY3RlZERyb3Bkb3duTGlzdFxuICAgICAgICAgICAgICAubWFwKChkcm9wZG93bmxpc3QpID0+XG4gICAgICAgICAgICAgICAgdGhpcy5jYXBpdGFsaXplRmlyc3RDaGFyLnRyYW5zZm9ybShkcm9wZG93bmxpc3QubmFtZSlcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAuam9pbignLCAnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG9uQ3JlYXRlTmV3SXRlbSgpIHtcbiAgICB0aGlzLmNyZWF0ZU5ld0l0ZW0uZW1pdCh0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaElucHV0KTtcbiAgfVxuXG4gIG9uRm9jdXNDbGljayhpc0luRm9jdXM6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmlzSW5Gb2N1cyA9IGlzSW5Gb2N1cztcbiAgfVxuXG4gIG9uVG9nZ2xlQ2xpY2soZXZlbnQpIHtcbiAgICBpZiAoZXZlbnQgPT0gdHJ1ZSkge1xuICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hlZERyb3Bkb3duTGlzdC5mb3JFYWNoKFxuICAgICAgICAoZHJvcGRvd25saXN0KSA9PiAoZHJvcGRvd25saXN0LmlzQ2hlY2tlZCA9IHRydWUpXG4gICAgICApO1xuICAgICAgdGhpcy5pc0FsbFRvZ2dsZWQgPSB0cnVlO1xuICAgICAgdGhpcy5tdWx0aVNlbGVjdFNlYXJjaC5zZWxlY3RlZERyb3Bkb3duTGlzdCA9XG4gICAgICAgIHRoaXMubXVsdGlTZWxlY3RTZWFyY2guc2VhcmNoZWREcm9wZG93bkxpc3Q7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaXNBbGxUb2dnbGVkID0gZmFsc2U7XG4gICAgICB0aGlzLm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaGVkRHJvcGRvd25MaXN0LmZvckVhY2goXG4gICAgICAgIChkcm9wZG93bmxpc3QpID0+IChkcm9wZG93bmxpc3QuaXNDaGVja2VkID0gZmFsc2UpXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuIiwiXG48ZGl2IFtuZ0NsYXNzXT1cInsgJ2lzSW52ZXJzZSc6IGlzSW52ZXJzZSB9XCI+XG4gIDxkaXZcbiAgICAqbmdJZj1cIm11bHRpU2VsZWN0U2VhcmNoLmNvbXBvbmVudEhlYWRpbmdcIlxuICAgIGNsYXNzPVwic2Z4LWZpbHRlci1sYWJlbCBzZngtZC1pbmxpbmUtYmxvY2tcIlxuICA+XG4gICAgPGJcbiAgICAgID57eyBlbmFibGVQbGFjZUhvbGRlciA/IFwiXCIgOiBtdWx0aVNlbGVjdFNlYXJjaC5jb21wb25lbnRIZWFkaW5nIH19XG4gICAgICA8c3BhbiAqbmdJZj1cIm11bHRpU2VsZWN0U2VhcmNoLnJlcXVpcmVkXCIgY2xhc3M9XCJyZXF1aXJlZEZpZWxkXCI+Kjwvc3Bhbj5cbiAgICA8L2I+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwibXVsdGlTZWxlY3RTZWFyY2guY29uZGl0aW9uXCIgY2xhc3M9XCJzZngtc3dpdGNoLWZpZWxkIHB1bGwtcmlnaHRcIj5cbiAgICA8aW5wdXRcbiAgICAgIHR5cGU9XCJyYWRpb1wiXG4gICAgICBpZD1cInJhZGlvLWFuZC17eyBjb25kaXRpb25TZWxlY3Rpb25JZCB9fVwiXG4gICAgICBuYW1lPVwicmFkaW8tYW5kLXt7IGNvbmRpdGlvblNlbGVjdGlvbklkIH19XCJcbiAgICAgIHZhbHVlPVwieWVzXCJcbiAgICAgIChjbGljayk9XCJvbkNvbmRpdGlvbkNsaWNrKCcgQU5EICcpXCJcbiAgICAgIFtjaGVja2VkXT1cIm11bHRpU2VsZWN0U2VhcmNoLmNvbmRpdGlvbiA9PT0gJyBBTkQgJ1wiXG4gICAgLz5cbiAgICA8bGFiZWwgY2xhc3M9XCJGb250NDAwXCIgZm9yPVwicmFkaW8tYW5kLXt7IGNvbmRpdGlvblNlbGVjdGlvbklkIH19XCJcbiAgICAgID5hbmQ8L2xhYmVsXG4gICAgPlxuICAgIDxpbnB1dFxuICAgICAgdHlwZT1cInJhZGlvXCJcbiAgICAgIGlkPVwicmFkaW8tb3Ite3sgY29uZGl0aW9uU2VsZWN0aW9uSWQgfX1cIlxuICAgICAgbmFtZT1cInJhZGlvLW9yLXt7IGNvbmRpdGlvblNlbGVjdGlvbklkIH19XCJcbiAgICAgIHZhbHVlPVwieWVzXCJcbiAgICAgIChjbGljayk9XCJvbkNvbmRpdGlvbkNsaWNrKCcgT1IgJylcIlxuICAgICAgW2NoZWNrZWRdPVwibXVsdGlTZWxlY3RTZWFyY2guY29uZGl0aW9uID09PSAnIE9SICdcIlxuICAgIC8+XG4gICAgPGxhYmVsIGNsYXNzPVwiRm9udDQwMFwiIGZvcj1cInJhZGlvLW9yLXt7IGNvbmRpdGlvblNlbGVjdGlvbklkIH19XCI+b3I8L2xhYmVsPlxuICA8L2Rpdj5cbiAgPGRpdlxuICAgIGNsYXNzPVwic2Z4LWN1c3RvbS1kcm9wZG93bi13cmFwXCJcbiAgICBbbmdDbGFzc109XCJ7IG9wZW46IG9wZW5Ecm9wZG93biB9XCJcbiAgICBkcm9wZG93blxuICAgICNkcm9wZG93bj1cImJzLWRyb3Bkb3duXCJcbiAgICAob25TaG93bik9XCJ0b2dnbGVEcm9wZG93bigpXCJcbiAgICBbaW5zaWRlQ2xpY2tdPVwidHJ1ZVwiXG4gICAgKG9uSGlkZGVuKT1cIm9uT2tDbGljayh0cnVlKVwiXG4gID5cbiAgICA8aW5wdXRcbiAgICAgIFtuZ0NsYXNzXT1cInsgJ2ludmFsaWQtY29udHJvbCc6IGlzSW52YWxpZCB9XCJcbiAgICAgIChjbGljayk9XCJkcm9wZG93bi5pc09wZW4gPSB0cnVlXCJcbiAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgIGlkPVwiZHJvcGRvd24tc2VhcmNoLXt7IG11bHRpU2VsZWN0U2VhcmNoLmNvbXBvbmVudEhlYWRpbmcgfCB0cmltSWR9fVwiXG4gICAgICBbKG5nTW9kZWwpXT1cIm11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaElucHV0XCJcbiAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uU2VhcmNoSW5wdXRDaGFuZ2UoKVwiXG4gICAgICBkcm9wZG93blRvZ2dsZVxuICAgICAgcG9wb3Zlcj1cInt7IHBvcE92ZXJUZXh0KCkgfX1cIlxuICAgICAgY29udGFpbmVyQ2xhc3M9XCJzZngtaW5wdXQtcG9wb3ZlclwiXG4gICAgICB0cmlnZ2Vycz1cIlwiXG4gICAgICBwbGFjZW1lbnQ9XCJ0b3BcIlxuICAgICAgI3BvcD1cImJzLXBvcG92ZXJcIlxuICAgICAgKG1vdXNlZW50ZXIpPVwic2hvd1BvcCgpXCJcbiAgICAgIChtb3VzZWxlYXZlKT1cIm9uUG9wTW91c2VMZWF2ZSgpXCJcbiAgICAgIChmb2N1cyk9XCJvbkZvY3VzQ2xpY2sodHJ1ZSlcIlxuICAgICAgKGJsdXIpPVwib25Gb2N1c0NsaWNrKGZhbHNlKVwiXG4gICAgICBjbGFzcz1cInNmeC1wbGFjZWhvbGRlclwiXG4gICAgICBwbGFjZWhvbGRlcj1cInt7XG4gICAgICAgIGVuYWJsZVBsYWNlSG9sZGVyID8gbXVsdGlTZWxlY3RTZWFyY2guY29tcG9uZW50SGVhZGluZyA6ICcnXG4gICAgICB9fVwiXG4gICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgW2Rpc2FibGVkXT1cImlzRGlzYWJsZWRcIlxuICAgIC8+XG4gICAgPHN5bXBob255LWljb24gW3NpemVdPVwic2l6ZVwiIFtpY29uXT1cIidzaS1zZWFyY2gtbmV3J1wiPjwvc3ltcGhvbnktaWNvbj5cbiAgICA8ZGl2ICpkcm9wZG93bk1lbnU+XG4gICAgICA8ZGl2IGNsYXNzPVwic2Z4LWN1c3RvbS1kcm9wZG93blwiICpuZ0lmPVwib3BlbkRyb3Bkb3duXCI+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJtdWx0aVNlbGVjdFNlYXJjaC5pc1NlbGVjdEFsbEVuYWJsZWRcIiBjbGFzcz1cInNmeC1zZWxlY3QtYWxsLXRvZ2dsZVwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2Z4LWZvbnQtYm9sZCBzZngtbXItMTBcIj5TZWxlY3QgQWxsPC9zcGFuPlxuICAgICAgICAgIDxzeW1waG9ueS1pbnB1dC10b2dnbGVcbiAgICAgICAgICBbaXNUb2dnbGVkXT1cImlzQWxsVG9nZ2xlZFwiXG4gICAgICAgICAgW2lzSW52ZXJzZV09XCJmYWxzZVwiXG4gICAgICAgICAgKHRvZ2dsZUNsaWNrKT1cIm9uVG9nZ2xlQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgPjwvc3ltcGhvbnktaW5wdXQtdG9nZ2xlPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPCEtLSBDcmVhdGUgQW5kIEFkZCBUYWdzIC0tPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJzZngtY3JlYXRlLW5ldy1pdGVtc1wiXG4gICAgICAgICAgKm5nSWY9XCJcbiAgICAgICAgICAgIG11bHRpU2VsZWN0U2VhcmNoLmxhYmVsQ3JlYXRlTmV3SXRlbXMgJiZcbiAgICAgICAgICAgIG11bHRpU2VsZWN0U2VhcmNoLnNob3dDcmVhdGVOZXdJdGVtc1xuICAgICAgICAgIFwiXG4gICAgICAgICAgKGNsaWNrKT1cIm9uQ3JlYXRlTmV3SXRlbSgpXCJcbiAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAnc2Z4LWZvbnQtYm9sZCc6IG11bHRpU2VsZWN0U2VhcmNoLnNob3dDcmVhdGVOZXdNb2RhbFxuICAgICAgICAgIH1cIlxuICAgICAgICA+XG4gICAgICAgICAge3sgbXVsdGlTZWxlY3RTZWFyY2gubGFiZWxDcmVhdGVOZXdJdGVtcyB9fVxuICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICBjbGFzcz1cInNmeC1mb250LWJvbGRcIlxuICAgICAgICAgICAgKm5nSWY9XCIhbXVsdGlTZWxlY3RTZWFyY2guc2hvd0NyZWF0ZU5ld01vZGFsXCJcbiAgICAgICAgICAgID4mbmJzcDsmYXBvcztcbiAgICAgICAgICAgIHt7IG11bHRpU2VsZWN0U2VhcmNoLnNlYXJjaElucHV0IHwgY2FwaXRhbGl6ZUZpcnN0Q2hhcmFjdGVyIH19JmFwb3M7XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIDxpIGNsYXNzPVwic2Z4LWljb24tUGx1cyBzZngtY3JlYXRlLW5ldy1pdGVtcy1pY29uXCI+PC9pPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPCEtLSBDcmVhdGUgQW5kIEFkZCBUYWdzIGVuZHMgaGVyZSAtLT5cbiAgICAgICAgPCEtLSBzZWxlY3RlZCBsaXN0IGRpdiAtLT5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwic2Z4LWRyb3Bkb3duLXNlbGVjdGVkIHNmeC1jdXN0b20tc2Nyb2xsXCJcbiAgICAgICAgICAqbmdJZj1cIm11bHRpU2VsZWN0U2VhcmNoLnNlbGVjdGVkRHJvcGRvd25MaXN0Lmxlbmd0aCA+IDAgJiYgIW11bHRpU2VsZWN0U2VhcmNoLmlzU2VsZWN0QWxsRW5hYmxlZFwiXG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cInNmeC1kLWlubGluZS1ibG9ja1wiXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgc2VsZWN0ZWRJdGVtIG9mIG11bHRpU2VsZWN0U2VhcmNoLnNlbGVjdGVkRHJvcGRvd25MaXN0XCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgIChjbGljayk9XCJvbkRlc2VsZWN0SXRlbShzZWxlY3RlZEl0ZW0pOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgICAgICAgICAgICBjbGFzcz1cInNmeC1jaGVja2JveCBzZngtZC1pbmxpbmUtYmxvY2tcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgICAgICAgICAgIGNoZWNrZWRcbiAgICAgICAgICAgICAgICBjbGFzcz1cInNmeC1jaGVja2JveC1pbnB1dFwiXG4gICAgICAgICAgICAgICAgaWQ9XCJ7eyBzZWxlY3RlZEl0ZW0uaWQgfX1fe3sgc2VsZWN0ZWRJdGVtLm5hbWUgfX1cIlxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgICAgICBjbGFzcz1cIkZvbnQ0MDBcIlxuICAgICAgICAgICAgICAgIGZvcj1cInt7IHNlbGVjdGVkSXRlbS5pZCB9fV97eyBzZWxlY3RlZEl0ZW0ubmFtZSB9fVwiXG4gICAgICAgICAgICAgICAgPnt7IHNlbGVjdGVkSXRlbS5uYW1lIHwgY2FwaXRhbGl6ZUZpcnN0Q2hhcmFjdGVyIH19XG4gICAgICAgICAgICAgICAgPGJyIC8+XG4gICAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAgICpuZ0lmPVwic2VsZWN0ZWRJdGVtLmFkZGl0aW9uYWxJbmZvXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2VsZWN0ZWQtYWRkaXRpb25hbC1pbmZvXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7eyBzZWxlY3RlZEl0ZW0uYWRkaXRpb25hbEluZm8gfX08L3NwYW5cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXY+PC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8IS0tIHNlbGVjdGVkIGxpc3QgZGl2IGVuZHMgaGVyZSAtLT5cbiAgICAgICAgPCEtLSBTZWFyY2ggbGlzdCAgLS0+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cInNmeC1kcm9wZG93bi11bnNlbGVjdGVkIHNmeC1jdXN0b20tc2Nyb2xsXCJcbiAgICAgICAgICAoc2Nyb2xsKT1cInNjcm9sbEhhbmRsZXIoJGV2ZW50KVwiXG4gICAgICAgICAgKm5nSWY9XCJtdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hlZERyb3Bkb3duTGlzdC5sZW5ndGggPiAwXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIGlkPVwiZHJvcGRvd24tdHJpZ2dlcnMtbWFudWFsbHlcIlxuICAgICAgICAgICAgKm5nRm9yPVwiXG4gICAgICAgICAgICAgIGxldCBmaWx0ZXJEcm9wZG93bk9wdGlvbiBvZiBtdWx0aVNlbGVjdFNlYXJjaC5zZWFyY2hlZERyb3Bkb3duTGlzdFxuICAgICAgICAgICAgXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2Z4LWNoZWNrYm94XCI+XG4gICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAgICAgaWQ9XCJ7eyBmaWx0ZXJEcm9wZG93bk9wdGlvbi5pZCB9fV97e1xuICAgICAgICAgICAgICAgICAgZmlsdGVyRHJvcGRvd25PcHRpb24ubmFtZSB8IHRyaW1JZFxuICAgICAgICAgICAgICAgIH19XCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInNmeC1jaGVja2JveC1pbnB1dFwiXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIm11bHRpU2VsZWN0U2VhcmNoLmhhc01heFNlbGVjdGlvbnNcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJcbiAgICAgICAgICAgICAgICBvblNlbGVjdEl0ZW0oZmlsdGVyRHJvcGRvd25PcHRpb24pOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiZmlsdGVyRHJvcGRvd25PcHRpb24uaXNDaGVja2VkXCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPGxhYmVsXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJGb250NDAwXCJcbiAgICAgICAgICAgICAgICBmb3I9XCJ7eyBmaWx0ZXJEcm9wZG93bk9wdGlvbi5pZCB9fV97e1xuICAgICAgICAgICAgICAgICAgZmlsdGVyRHJvcGRvd25PcHRpb24ubmFtZSB8IHRyaW1JZFxuICAgICAgICAgICAgICAgIH19XCJcbiAgICAgICAgICAgICAgICA+e3sgZmlsdGVyRHJvcGRvd25PcHRpb24ubmFtZSB8IGNhcGl0YWxpemVGaXJzdENoYXJhY3RlciB9fVxuICAgICAgICAgICAgICAgIDxiciAvPlxuICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAqbmdJZj1cImZpbHRlckRyb3Bkb3duT3B0aW9uLmFkZGl0aW9uYWxJbmZvXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYWRkaXRpb25hbC1pbmZvXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7eyBmaWx0ZXJEcm9wZG93bk9wdGlvbi5hZGRpdGlvbmFsSW5mbyB9fTwvc3BhblxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdj48L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgPHN5bXBob255LXNmeC1sb2FkZXJcbiAgICAgICAgICAgICAgW2hpZGRlbl09XCIhaXNMb2FkaW5nRGF0YVwiXG4gICAgICAgICAgICA+PC9zeW1waG9ueS1zZngtbG9hZGVyPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPHN5bXBob255LXNmeC1sb2FkZXJcbiAgICAgICAgICBbaGlkZGVuXT1cIiFpc0xvYWRpbmdJbml0aWFsRGF0YVwiXG4gICAgICAgID48L3N5bXBob255LXNmeC1sb2FkZXI+XG4gICAgICAgIDwhLS0gc2VhcmNoIGxpc3QgZW5kcyBoZXJlIC0tPlxuICAgICAgICA8IS0tIEZvb3RlciAtLT5cbiAgICAgICAgPGRpdiAqbmdJZj1cIm9wZW5Ecm9wZG93blwiIGNsYXNzPVwic2Z4LWZpbHRlci1pdGVtLWZvb3RlclwiPlxuICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgY2xhc3M9XCJwdWxsLWxlZnRcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cIlxuICAgICAgICAgICAgICAhKFxuICAgICAgICAgICAgICAgIG11bHRpU2VsZWN0U2VhcmNoLnNlbGVjdGVkRHJvcGRvd25MaXN0ICYmXG4gICAgICAgICAgICAgICAgbXVsdGlTZWxlY3RTZWFyY2guc2VsZWN0ZWREcm9wZG93bkxpc3QubGVuZ3RoID4gMFxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICBcIlxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2xlYXJBbGxDbGljaygpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICBDbGVhciBBbGxcbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8YSBocmVmPVwiamF2YXNjcmlwdDo7XCIgKGNsaWNrKT1cIm9uT2tDbGljaygpXCIgY2xhc3M9XCJwdWxsLXJpZ2h0XCI+T0s8L2E+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8IS0tIEVuZCBGb290ZXIgLS0+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJpc0ludmFsaWRcIiBjbGFzcz1cImVycm9yLW1lc3NhZ2VcIj5cbiAgICBQbGVhc2Ugc2VsZWN0IGEgdmFsaWQgb3B0aW9uXG4gIDwvZGl2PlxuPC9kaXY+Il19
|
|
@@ -2,7 +2,7 @@ import { Pipe, Injectable } from '@angular/core';
|
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export class TrimIdPipe {
|
|
4
4
|
transform(value) {
|
|
5
|
-
return value?.replace(
|
|
5
|
+
return value?.replace(/[^\w]/g, "");
|
|
6
6
|
}
|
|
7
7
|
}
|
|
8
8
|
TrimIdPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: TrimIdPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
@@ -19,4 +19,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImpor
|
|
|
19
19
|
providedIn: 'root',
|
|
20
20
|
}]
|
|
21
21
|
}] });
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJpbS1pZC5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50LWxpYnJhcnkvc3JjL2xpYi9waXBlL3RyaW0taWQucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBUWhFLE1BQU0sT0FBTyxVQUFVO0lBRXJCLFNBQVMsQ0FBQyxLQUFhO1FBQ3JCLE9BQU8sS0FBSyxFQUFFLE9BQU8sQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUE7SUFDckMsQ0FBQzs7dUdBSlUsVUFBVTtxR0FBVixVQUFVOzJHQUFWLFVBQVUsY0FGVCxNQUFNOzJGQUVQLFVBQVU7a0JBTnRCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLFFBQVE7aUJBQ2Y7O2tCQUNBLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICd0cmltSWQnXG59KVxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFRyaW1JZFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcblxuICB0cmFuc2Zvcm0odmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHZhbHVlPy5yZXBsYWNlKC9bXlxcd10vZywgXCJcIilcbiAgfVxuXG59XG4iXX0=
|
|
@@ -263,7 +263,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.2", ngImpor
|
|
|
263
263
|
|
|
264
264
|
class TrimIdPipe {
|
|
265
265
|
transform(value) {
|
|
266
|
-
return value === null || value === void 0 ? void 0 : value.replace(
|
|
266
|
+
return value === null || value === void 0 ? void 0 : value.replace(/[^\w]/g, "");
|
|
267
267
|
}
|
|
268
268
|
}
|
|
269
269
|
TrimIdPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.2", ngImport: i0, type: TrimIdPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
@@ -1953,7 +1953,8 @@ class InputSearchCheckboxDropdownComponent {
|
|
|
1953
1953
|
}
|
|
1954
1954
|
focusOnSearchInput() {
|
|
1955
1955
|
if (this.multiSelectSearch.componentHeading) {
|
|
1956
|
-
this.renderer.selectRootElement(
|
|
1956
|
+
let focusText = this.renderer.selectRootElement(`#dropdown-search-'${this.multiSelectSearch.componentHeading.replace(/[^\w]/g, "")}'`);
|
|
1957
|
+
focusText.focus();
|
|
1957
1958
|
}
|
|
1958
1959
|
}
|
|
1959
1960
|
scrollHandler(event) {
|