slick-components 5.0.2 → 5.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/slick-multi-select/slick-multi-select.component.mjs +3 -1
- package/esm2020/utils/slick-init.service.mjs +2 -2
- package/fesm2015/slick-components.mjs +3 -1
- package/fesm2015/slick-components.mjs.map +1 -1
- package/fesm2020/slick-components.mjs +3 -1
- package/fesm2020/slick-components.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -204,6 +204,7 @@ export class SlickMultiSelectComponent {
|
|
|
204
204
|
this.skipClickExpand = false;
|
|
205
205
|
}
|
|
206
206
|
async onKeyDown(e) {
|
|
207
|
+
console.log(e, e.key);
|
|
207
208
|
if (e.key !== 'Tab' &&
|
|
208
209
|
e.key !== 'Enter' &&
|
|
209
210
|
e.key !== 'Escape' &&
|
|
@@ -217,6 +218,7 @@ export class SlickMultiSelectComponent {
|
|
|
217
218
|
}
|
|
218
219
|
e.stopPropagation();
|
|
219
220
|
e.preventDefault();
|
|
221
|
+
console.log(this.isAndroid);
|
|
220
222
|
// If this is android, it won't pass us any key data so just read the entire input element
|
|
221
223
|
if (this.isAndroid === true) {
|
|
222
224
|
await SlickSleepService.sleep();
|
|
@@ -414,4 +416,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
|
|
|
414
416
|
type: ViewChild,
|
|
415
417
|
args: ["selectedTextInputRef"]
|
|
416
418
|
}] } });
|
|
417
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpY2stbXVsdGktc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL3NsaWNrLW11bHRpLXNlbGVjdC9zbGljay1tdWx0aS1zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvc2xpY2stbXVsdGktc2VsZWN0L3NsaWNrLW11bHRpLXNlbGVjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFrRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RLLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3ZFLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7OztBQUUvRCxNQUFNLENBQU4sSUFBWSwyQkFBeUQ7QUFBckUsV0FBWSwyQkFBMkI7SUFBRyx5RkFBVSxDQUFBO0lBQUUscUZBQVEsQ0FBQTtJQUFFLDJFQUFHLENBQUE7QUFBQyxDQUFDLEVBQXpELDJCQUEyQixLQUEzQiwyQkFBMkIsUUFBOEI7QUFZckUsTUFBTSxPQUFPLHlCQUF5QjtJQTZDckMsWUFBb0IsTUFBYyxFQUN6Qix1QkFBZ0QsRUFDaEQsRUFBYztRQUZILFdBQU0sR0FBTixNQUFNLENBQVE7UUFDekIsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUF5QjtRQUNoRCxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBOUNkLGdCQUFX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QVU7c0JBQWxCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBRUksUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxVQUFVO3NCQUFuQixNQUFNO2dCQUNHLFFBQVE7c0JBQWpCLE1BQU07Z0JBRW9CLFlBQVk7c0JBQXRDLFNBQVM7dUJBQUMsY0FBYztnQkFDSyxlQUFlO3NCQUE1QyxTQUFTO3VCQUFDLGlCQUFpQjtnQkFDTyxvQkFBb0I7c0JBQXRELFNBQVM7dUJBQUMsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBOZ1pvbmUsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgRWxlbWVudFJlZiwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95LCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMsIFZpZXdDaGlsZCwgZm9yd2FyZFJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFNsaWNrTXVsdGlTZWxlY3RTZXJ2aWNlIH0gZnJvbSBcIi4vc2xpY2stbXVsdGktc2VsZWN0LnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IFNsaWNrU2xlZXBTZXJ2aWNlIH0gZnJvbSBcIi4uL3V0aWxzL3NsaWNrLXNsZWVwLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgU2xpY2tVdGlsc1NlcnZpY2UgfSBmcm9tIFwiLi4vdXRpbHMvc2xpY2stdXRpbHMuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBTbGlja0luaXRTZXJ2aWNlIH0gZnJvbSBcIi4uL3V0aWxzL3NsaWNrLWluaXQuc2VydmljZVwiO1xyXG5cclxuZXhwb3J0IGVudW0gU2xpY2tNdWx0aVNlbGVjdFNlYXJjaFR5cGVzIHsgc3RhcnRzV2l0aCwgZWFjaFdvcmQsIGFueSB9XHJcblxyXG5AQ29tcG9uZW50KHtcclxuXHRzZWxlY3RvcjogJ3NsaWNrLW11bHRpLXNlbGVjdCcsXHJcblx0dGVtcGxhdGVVcmw6ICdzbGljay1tdWx0aS1zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHByb3ZpZGVyczogW1NsaWNrTXVsdGlTZWxlY3RTZXJ2aWNlLFxyXG5cdFx0e1xyXG5cdFx0XHRwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuXHRcdFx0dXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2xpY2tNdWx0aVNlbGVjdENvbXBvbmVudCksXHJcblx0XHRcdG11bHRpOiB0cnVlLFxyXG5cdFx0fV1cclxufSlcclxuZXhwb3J0IGNsYXNzIFNsaWNrTXVsdGlTZWxlY3RDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xyXG5cdEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmcgPSAnJztcclxuXHRASW5wdXQoKSBpdGVtczogYW55W107XHJcblx0QElucHV0KCkgaWRGaWVsZE5hbWU6IHN0cmluZyA9IFwiaWRcIjtcclxuXHRASW5wdXQoKSB0ZXh0RmllbGROYW1lOiBzdHJpbmcgPSBcInRleHRcIjtcclxuXHRASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cdEBJbnB1dCgpIGFsbG93RW1wdHk6IHN0cmluZyA9ICd0cnVlJztcclxuXHRASW5wdXQoKSBzaW5nbGVTZWxlY3Q6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHRASW5wdXQoKSB3aWR0aDogc3RyaW5nID0gJzEwMCUnO1xyXG5cdEBJbnB1dCgpIGxpc3RXaWR0aDogc3RyaW5nID0gJzEwMCUnO1xyXG5cdEBJbnB1dCgpIGhlaWdodDogc3RyaW5nID0gJzMwMHB4JztcclxuXHRASW5wdXQoKSBzaG93TG9hZGluZ01lc3NhZ2U6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHRASW5wdXQoKSBzaG93RGVidWc6IGJvb2xlYW47XHJcblx0QElucHV0KCkgdGFiaW5kZXg6IG51bWJlcjtcclxuXHRASW5wdXQoKSBpc01vYmlsZTogYm9vbGVhbjtcclxuXHRASW5wdXQoKSBzZWFyY2hUeXBlOiBTbGlja011bHRpU2VsZWN0U2VhcmNoVHlwZXMgPSBTbGlja011bHRpU2VsZWN0U2VhcmNoVHlwZXMuZWFjaFdvcmQ7XHJcblxyXG5cdEBPdXRwdXQoKSBvbkV4cGFuZDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cdEBPdXRwdXQoKSBvbkNvbGxhcHNlOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblx0QE91dHB1dCgpIG9uU2VsZWN0OiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG5cclxuXHRAVmlld0NoaWxkKFwiY29udGFpbmVyRGl2XCIpIGNvbnRhaW5lckRpdjogRWxlbWVudFJlZjtcclxuXHRAVmlld0NoaWxkKFwibXVsdGlTZWxlY3RMaXN0XCIpIG11bHRpU2VsZWN0TGlzdDogRWxlbWVudFJlZjtcclxuXHRAVmlld0NoaWxkKFwic2VsZWN0ZWRUZXh0SW5wdXRSZWZcIikgc2VsZWN0ZWRUZXh0SW5wdXRSZWY6IEVsZW1lbnRSZWY7XHJcblxyXG5cdC8vIFRoaXMgaXMgbmVjZXNzYXJ5IHNvIHRoYXQgdGhlIHNjcm9sbCBhbmQgcmVzaXplIGV2ZW50cyBjYW4gYWRkIGFuZCByZW1vdmUgdGhlIGV2ZW50IHByb3Blcmx5LFxyXG5cdC8vIGFzIHdlbGwgYXMgZ2V0dGluZyB0aGUgY29ycmVjdCBFUzYgZnVuY3Rpb25cclxuXHRwcml2YXRlIGZuRG9jdW1lbnRDbGljayA9IChlKSA9PiB0aGlzLmRvY3VtZW50Q2xpY2soZSk7XHJcblxyXG5cdHV1aWQ6IHN0cmluZztcclxuXHRzZWxlY3RlZElkczogc3RyaW5nW107XHJcblx0c2VsZWN0ZWRUZXh0OiBzdHJpbmc7XHJcblx0a2V5Ym9hcmRBY3RpdmU6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHRleHBhbmRlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cdGZpbHRlclRleHQ6IHN0cmluZyA9ICcnO1xyXG5cdHNlbGVjdGVkSW5kZXg6IG51bWJlcjtcclxuXHRzZWxlY3RlZEl0ZW1zOiBhbnlbXTtcclxuXHR2aXNpYmxlSXRlbXM6IGFueVtdO1xyXG5cdGxlZnQ6IHN0cmluZztcclxuXHR0b3A6IHN0cmluZztcclxuXHRsaXN0R3JvdXBXaWR0aDogc3RyaW5nO1xyXG5cdGlzQW5kcm9pZDogYm9vbGVhbiA9ICgoU2xpY2tJbml0U2VydmljZS5nZXRQbGF0Zm9ybSgpIHx8ICcnKS50b0xvd2VyQ2FzZSgpID09PSAnYW5kcm9pZCcpO1xyXG5cclxuXHRwcml2YXRlIHNraXBDbGlja0V4cGFuZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuXHRjb25zdHJ1Y3Rvcihwcml2YXRlIG5nWm9uZTogTmdab25lLFxyXG5cdFx0cHJpdmF0ZSBzbGlja011bHRpU2VsZWN0U2VydmljZTogU2xpY2tNdWx0aVNlbGVjdFNlcnZpY2UsXHJcblx0XHRwcml2YXRlIGVsOiBFbGVtZW50UmVmKSB7XHJcblx0XHR0aGlzLnV1aWQgPSBTbGlja1V0aWxzU2VydmljZS5uZXdHdWlkKCk7XHJcblx0fVxyXG5cclxuXHRhc3luYyBuZ0FmdGVyVmlld0luaXQoKSB7XHJcblx0XHQvLyBSZW1vdmUgdGhpcyBmcm9tIHRoZSBpbmxpbmUgdmVyc2lvbiBhbmQgcHV0IGl0IG9uIHRoZSBib2R5IHNvIHRoYXQgaXQgZG9lc24ndCBoaWRlIGJlaGluZCB0aGUgYm90dG9tXHJcblx0XHQvLyBvZiBhIGRpdiB3aGVuIGl0IGV4cGFuZHMgYmV5b25kIHRoZSBib3R0b20uXHJcblx0XHR0aGlzLm11bHRpU2VsZWN0TGlzdC5uYXRpdmVFbGVtZW50LnJlbW92ZSh0aGlzLm11bHRpU2VsZWN0TGlzdCk7XHJcblx0XHRkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHRoaXMubXVsdGlTZWxlY3RMaXN0Lm5hdGl2ZUVsZW1lbnQpO1xyXG5cdH1cclxuXHJcblx0cHJvcGFnYXRlQ2hhbmdlID0gKF86IGFueSkgPT4geyB9O1xyXG5cclxuXHQvLyB0aGlzIGlzIHRoZSBpbml0aWFsIHZhbHVlIHNldCB0byB0aGUgY29tcG9uZW50XHJcblx0cHVibGljIHdyaXRlVmFsdWUob2JqOiBhbnkpIHtcclxuXHRcdGlmIChvYmopXHJcblx0XHRcdHRoaXMuc2VsZWN0ZWRJZHMgPSBvYmo7XHJcblx0XHRlbHNlXHJcblx0XHRcdHRoaXMuc2VsZWN0ZWRJZHMgPSBudWxsO1xyXG5cclxuXHRcdHRoaXMudmlzaWJsZUl0ZW1zID0gdGhpcy5zbGlja011bHRpU2VsZWN0U2VydmljZS5nZXRWaXNpYmxlSXRlbXModGhpcy5pdGVtcywgdGhpcy5zZWxlY3RlZElkcywgdGhpcy5pZEZpZWxkTmFtZSwgdGhpcy50ZXh0RmllbGROYW1lKTtcclxuXHRcdHRoaXMuc2VsZWN0ZWRJdGVtcyA9IHRoaXMuc2xpY2tNdWx0aVNlbGVjdFNlcnZpY2UuZ2V0U2VsZWN0ZWRJdGVtcyh0aGlzLml0ZW1zLCB0aGlzLnNlbGVjdGVkSWRzLCB0aGlzLmlkRmllbGROYW1lLCB0aGlzLnRleHRGaWVsZE5hbWUpO1xyXG5cdH1cclxuXHJcblx0Ly8gcmVnaXN0ZXJzICdmbicgdGhhdCB3aWxsIGJlIGZpcmVkIHdoZW4gY2hhbmdlcyBhcmUgbWFkZVxyXG5cdC8vIHRoaXMgaXMgaG93IHdlIGVtaXQgdGhlIGNoYW5nZXMgYmFjayB0byB0aGUgZm9ybVxyXG5cdHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpIHtcclxuXHRcdHRoaXMucHJvcGFnYXRlQ2hhbmdlID0gZm47XHJcblx0fVxyXG5cclxuXHQvLyBub3QgdXNlZCwgdXNlZCBmb3IgdG91Y2ggaW5wdXRcclxuXHRwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoKSB7IH1cclxuXHJcblx0bmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xyXG5cdFx0aWYgKGNoYW5nZXMuaXNNb2JpbGUpIHtcclxuXHRcdFx0dGhpcy5pc01vYmlsZSA9ICh0aGlzLmlzTW9iaWxlLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKSA9PT0gJ3RydWUnKSA/IHRydWUgOiBmYWxzZTtcclxuXHRcdH1cclxuXHJcblx0XHRpZiAoY2hhbmdlcy5zaW5nbGVTZWxlY3QpIHtcclxuXHRcdFx0dGhpcy5zaW5nbGVTZWxlY3QgPSAodGhpcy5zaW5nbGVTZWxlY3QudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpID09PSAndHJ1ZScpID8gdHJ1ZSA6IGZhbHNlO1xyXG5cdFx0fVxyXG5cclxuXHRcdGlmIChjaGFuZ2VzLnNlYXJjaFR5cGUpIHtcclxuXHRcdFx0aWYgKGNoYW5nZXMuc2VhcmNoVHlwZS5jdXJyZW50VmFsdWUudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpID09PSAnc3RhcnRzd2l0aCcpXHJcblx0XHRcdFx0dGhpcy5zZWFyY2hUeXBlID0gU2xpY2tNdWx0aVNlbGVjdFNlYXJjaFR5cGVzLnN0YXJ0c1dpdGg7XHJcblx0XHRcdGVsc2UgaWYgKGNoYW5nZXMuc2VhcmNoVHlwZS5jdXJyZW50VmFsdWUudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpID09PSAnYW55JylcclxuXHRcdFx0XHR0aGlzLnNlYXJjaFR5cGUgPSBTbGlja011bHRpU2VsZWN0U2VhcmNoVHlwZXMuYW55O1xyXG5cdFx0XHRlbHNlXHJcblx0XHRcdFx0dGhpcy5zZWFyY2hUeXBlID0gU2xpY2tNdWx0aVNlbGVjdFNlYXJjaFR5cGVzLmVhY2hXb3JkO1xyXG5cdFx0fVxyXG5cclxuXHRcdGlmIChjaGFuZ2VzLml0ZW1zKSB7XHJcblx0XHRcdHRoaXMudmlzaWJsZUl0ZW1zID0gdGhpcy5zbGlja011bHRpU2VsZWN0U2VydmljZS5nZXRWaXNpYmxlSXRlbXModGhpcy5pdGVtcywgdGhpcy5zZWxlY3RlZElkcywgdGhpcy5pZEZpZWxkTmFtZSwgdGhpcy50ZXh0RmllbGROYW1lKTtcclxuXHRcdFx0dGhpcy5zZWxlY3RlZEl0ZW1zID0gdGhpcy5zbGlja011bHRpU2VsZWN0U2VydmljZS5nZXRTZWxlY3RlZEl0ZW1zKHRoaXMuaXRlbXMsIHRoaXMuc2VsZWN0ZWRJZHMsIHRoaXMuaWRGaWVsZE5hbWUsIHRoaXMudGV4dEZpZWxkTmFtZSk7XHJcblx0XHRcdGlmICh0aGlzLnNlbGVjdGVkVGV4dElucHV0UmVmICYmIGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgPT0gdGhpcy5zZWxlY3RlZFRleHRJbnB1dFJlZi5uYXRpdmVFbGVtZW50KVxyXG5cdFx0XHRcdHRoaXMuZXhwYW5kKCk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRuZ09uRGVzdHJveSgpIHtcclxuXHRcdHRoaXMuY29sbGFwc2UoKTtcclxuXHRcdGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJjbGlja1wiLCB0aGlzLmZuRG9jdW1lbnRDbGljaywgdHJ1ZSk7XHJcblxyXG5cdFx0Ly8gaXQncyBva2F5IGlmIHRoaXMgZmFpbHMuICBJdCB3YXMgYWxyZWFkeSByZW1vdmVkXHJcblx0XHR0cnkge1xyXG5cdFx0XHRkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHRoaXMubXVsdGlTZWxlY3RMaXN0Lm5hdGl2ZUVsZW1lbnQpO1xyXG5cdFx0fVxyXG5cdFx0Y2F0Y2ggeyB9XHJcblxyXG5cdH1cclxuXHJcblx0YXN5bmMgb25LZXlib2FyZEljb25DbGlja2VkKCkge1xyXG5cdFx0aWYgKHRoaXMua2V5Ym9hcmRBY3RpdmUgPT09IHRydWUpIHtcclxuXHRcdFx0dGhpcy5jb2xsYXBzZSgpO1xyXG5cdFx0XHR0aGlzLmtleWJvYXJkQWN0aXZlID0gZmFsc2U7XHJcblx0XHRcdHRoaXMuc2VsZWN0ZWRUZXh0ID0gJyc7XHJcblx0XHRcdCg8SFRNTElucHV0RWxlbWVudD50aGlzLnNlbGVjdGVkVGV4dElucHV0UmVmLm5hdGl2ZUVsZW1lbnQpLnZhbHVlID0gJyc7XHJcblx0XHR9XHJcblx0XHRlbHNlIHtcclxuXHRcdFx0dGhpcy5rZXlib2FyZEFjdGl2ZSA9IHRydWU7XHJcblx0XHRcdGF3YWl0IFNsaWNrU2xlZXBTZXJ2aWNlLnNsZWVwKCk7XHJcblx0XHRcdCg8SFRNTEVsZW1lbnQ+dGhpcy5zZWxlY3RlZFRleHRJbnB1dFJlZi5uYXRpdmVFbGVtZW50KS5mb2N1cygpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0YXN5bmMgZXhwYW5kKCkge1xyXG5cdFx0aWYgKHRoaXMuZGlzYWJsZWQpXHJcblx0XHRcdHJldHVybjtcclxuXHJcblx0XHR0aGlzLnJlcG9zaXRpb24oKTtcclxuXHJcblx0XHRhd2FpdCBTbGlja1NsZWVwU2VydmljZS5zbGVlcCgpO1xyXG5cdFx0dGhpcy5tdWx0aVNlbGVjdExpc3QubmF0aXZlRWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gXCJpbmxpbmUtYmxvY2tcIjtcclxuXHJcblx0XHRsZXQgc2VsZWN0ZWRJdGVtcyA9IHRoaXMubXVsdGlTZWxlY3RMaXN0Lm5hdGl2ZUVsZW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShcInNlbGVjdGVkXCIpO1xyXG5cdFx0aWYgKHNlbGVjdGVkSXRlbXMgJiYgc2VsZWN0ZWRJdGVtcy5sZW5ndGggPiAwKVxyXG5cdFx0XHQoPEhUTUxFbGVtZW50PnNlbGVjdGVkSXRlbXNbMF0pLnNjcm9sbEludG9WaWV3KHsgYmxvY2s6ICduZWFyZXN0JyB9KTtcclxuXHJcblx0XHR0aGlzLmV4cGFuZGVkID0gdHJ1ZTtcclxuXHJcblx0XHQvLyBUaGlzIGlzIG5lY2Vzc2FyeSwgb3RoZXJ3aXNlIGB0aGlzYCBpbiB0aGUgcmVwb3NpdGlvbiBmdW5jdGlvbiB3aWxsIGJlIHdpbmRvd1xyXG5cdFx0Ly8gYW5kIG5vdCB0aGUgY29tcG9uZW50LlxyXG5cdFx0Ly8gU2luY2UgYW5ndWxhciBoYXMgbm8gd2F5IHRvIHVzZSB0aGUgdGhpcmQgcGFyYW1ldGVyLCBJJ20gZG9pbmcgdGhpcyBpbiByYXcganNcclxuXHRcdGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoXCJjbGlja1wiLCB0aGlzLmZuRG9jdW1lbnRDbGljaywgdHJ1ZSk7XHJcblxyXG5cdFx0aWYgKHRoaXMub25FeHBhbmQpXHJcblx0XHRcdHRoaXMub25FeHBhbmQuZW1pdCgpO1xyXG5cdH1cclxuXHJcblx0Y29sbGFwc2UoKSB7XHJcblx0XHR0aGlzLmV4cGFuZGVkID0gZmFsc2U7XHJcblx0XHR0aGlzLm11bHRpU2VsZWN0TGlzdC5uYXRpdmVFbGVtZW50LnN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIjtcclxuXHRcdC8vIFNpbmNlIGFuZ3VsYXIgaGFzIG5vIHdheSB0byB1c2UgdGhlIHRoaXJkIHBhcmFtZXRlciwgSSdtIGRvaW5nIHRoaXMgaW4gcmF3IGpzXHJcblx0XHRkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKFwiY2xpY2tcIiwgdGhpcy5mbkRvY3VtZW50Q2xpY2ssIHRydWUpO1xyXG5cclxuXHRcdGlmICh0aGlzLm9uQ29sbGFwc2UpXHJcblx0XHRcdHRoaXMub25Db2xsYXBzZS5lbWl0KCk7XHJcblx0fVxyXG5cclxuXHRhc3luYyByZXBvc2l0aW9uKCkge1xyXG5cdFx0YXdhaXQgU2xpY2tTbGVlcFNlcnZpY2Uuc2xlZXAoKTtcclxuXHRcdGxldCByZWN0ID0gdGhpcy5jb250YWluZXJEaXYubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuXHRcdGxldCBjb250YWluZXJMZWZ0ID0gcmVjdC5sZWZ0O1xyXG5cdFx0bGV0IGNvbnRhaW5lclRvcCA9IHJlY3QudG9wO1xyXG5cdFx0bGV0IGNvbnRhaW5lckhlaWdodCA9IHRoaXMuY29udGFpbmVyRGl2Lm5hdGl2ZUVsZW1lbnQub2Zmc2V0SGVpZ2h0O1xyXG5cdFx0bGV0IGNvbnRhaW5lcldpZHRoID0gcmVjdC53aWR0aDtcclxuXHJcblx0XHR0aGlzLndpZHRoID0gY29udGFpbmVyV2lkdGg7XHJcblx0XHRpZiAodGhpcy5saXN0V2lkdGggPT09ICcxMDAlJylcclxuXHRcdFx0dGhpcy5saXN0R3JvdXBXaWR0aCA9IHRoaXMud2lkdGg7XHJcblx0XHRlbHNlIGlmICh0aGlzLmxpc3RXaWR0aCA9PT0gJ2F1dG8nKVxyXG5cdFx0XHR0aGlzLmxpc3RHcm91cFdpZHRoID0gXCJhdXRvXCI7XHJcblx0XHRlbHNlXHJcblx0XHRcdHRoaXMubGlzdEdyb3VwV2lkdGggPSB0aGlzLmxpc3RXaWR0aDtcclxuXHRcdHRoaXMudG9wID0gKGNvbnRhaW5lclRvcCArIGNvbnRhaW5lckhlaWdodCk7XHJcblx0XHR0aGlzLmxlZnQgPSBjb250YWluZXJMZWZ0O1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBkb2N1bWVudENsaWNrKGU6IE1vdXNlRXZlbnQpIHtcclxuXHRcdGlmICghdGhpcy5leHBhbmRlZCB8fCAhZS50YXJnZXQpXHJcblx0XHRcdHJldHVybjtcclxuXHJcblx0XHQvLyBJZiB0aGV5IGNsaWNrZWQgb24gdGhlIGtleWJvYXJkIGljb24sIGRvbid0IGRvIGFueXRoaW5nXHJcblx0XHRpZiAoU2xpY2tVdGlsc1NlcnZpY2UuY2hlY2tQYXJlbnRDbGFzc0V4aXN0cyg8SFRNTEVsZW1lbnQ+ZS50YXJnZXQsIFwic2xpY2stbXVsdGktc2VsZWN0X21vYmlsZS1jb250YWluZXJcIikgJiZcclxuXHRcdFx0U2xpY2tVdGlsc1NlcnZpY2UuY2hlY2tQYXJlbnRJZEV4aXN0cyg8SFRNTEVsZW1lbnQ+ZS50YXJnZXQsIFwic2xpY2stbXVsdGktc2VsZWN0X1wiICsgdGhpcy51dWlkKSlcclxuXHRcdFx0cmV0dXJuO1xyXG5cclxuXHRcdGNvbnN0IGNsaWNrZWRJbnNpZGUgPSBTbGlja1V0aWxzU2VydmljZS5jaGVja1BhcmVudENsYXNzRXhpc3RzKDxIVE1MRWxlbWVudD5lLnRhcmdldCwgXCJzbGljay1tdWx0aS1zZWxlY3RfbGlzdC1pdGVtXCIpO1xyXG5cdFx0aWYgKCFjbGlja2VkSW5zaWRlKSB7XHJcblx0XHRcdHRoaXMua2V5Ym9hcmRBY3RpdmUgPSBmYWxzZTtcclxuXHRcdFx0dGhpcy5zZWxlY3RlZFRleHQgPSAnJztcclxuXHRcdFx0KDxIVE1MSW5wdXRFbGVtZW50PnRoaXMuc2VsZWN0ZWRUZXh0SW5wdXRSZWYubmF0aXZlRWxlbWVudCkudmFsdWUgPSAnJztcclxuXHRcdFx0dGhpcy5jb2xsYXBzZSgpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBzZWxlY3RJdGVtKGlkOiBzdHJpbmcpIHtcclxuXHRcdGxldCBpdGVtID0gdGhpcy5zbGlja011bHRpU2VsZWN0U2VydmljZS5nZXRTZWxlY3RlZEl0ZW0odGhpcy52aXNpYmxlSXRlbXMsIGlkKTtcclxuXHJcblx0XHRpZiAoaXRlbSkge1xyXG5cclxuXHRcdFx0aWYgKHRoaXMub25TZWxlY3QpXHJcblx0XHRcdFx0dGhpcy5vblNlbGVjdC5lbWl0KGl0ZW0pO1xyXG5cclxuXHRcdFx0aWYgKCF0aGlzLnNlbGVjdGVkSWRzKVxyXG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRJZHMgPSBbXTtcclxuXHJcblx0XHRcdHRoaXMuc2VsZWN0ZWRJZHMucHVzaChpZCk7XHJcblx0XHRcdHRoaXMucHJvcGFnYXRlQ2hhbmdlKHRoaXMuc2VsZWN0ZWRJZHMpO1xyXG5cclxuXHRcdFx0dGhpcy52aXNpYmxlSXRlbXMgPSB0aGlzLnNsaWNrTXVsdGlTZWxlY3RTZXJ2aWNlLmdldFZpc2libGVJdGVtcyh0aGlzLml0ZW1zLCB0aGlzLnNlbGVjdGVkSWRzLCB0aGlzLmlkRmllbGROYW1lLCB0aGlzLnRleHRGaWVsZE5hbWUpO1xyXG5cdFx0XHR0aGlzLnNlbGVjdGVkSXRlbXMgPSB0aGlzLnNsaWNrTXVsdGlTZWxlY3RTZXJ2aWNlLmdldFNlbGVjdGVkSXRlbXModGhpcy5pdGVtcywgdGhpcy5zZWxlY3RlZElkcywgdGhpcy5pZEZpZWxkTmFtZSwgdGhpcy50ZXh0RmllbGROYW1lKTtcclxuXHJcblx0XHRcdHRoaXMucmVwb3NpdGlvbigpO1xyXG5cdFx0XHR0aGlzLnNlbGVjdGVkVGV4dCA9ICcnO1xyXG5cdFx0XHQoPEhUTUxJbnB1dEVsZW1lbnQ+dGhpcy5zZWxlY3RlZFRleHRJbnB1dFJlZi5uYXRpdmVFbGVtZW50KS52YWx1ZSA9ICcnO1xyXG5cclxuXHRcdFx0aWYgKHRoaXMuc2luZ2xlU2VsZWN0ID09PSB0cnVlKVxyXG5cdFx0XHRcdHRoaXMuY29sbGFwc2UoKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHNldEZvY3VzKHNob3dNb2JpbGVLZXlib2FyZDogYm9vbGVhbiA9IGZhbHNlKSB7XHJcblx0XHQoPEhUTUxFbGVtZW50PnRoaXMuc2VsZWN0ZWRUZXh0SW5wdXRSZWYubmF0aXZlRWxlbWVudCkuZm9jdXMoKTtcclxuXHRcdGlmIChzaG93TW9iaWxlS2V5Ym9hcmQgPT09IHRydWUpXHJcblx0XHRcdHRoaXMua2V5Ym9hcmRBY3RpdmUgPSB0cnVlO1xyXG5cdH1cclxuXHJcblx0YXN5bmMgb25Gb2N1cygpIHtcclxuXHRcdHRoaXMudmlzaWJsZUl0ZW1zID0gdGhpcy5zbGlja011bHRpU2VsZWN0U2VydmljZS5nZXRWaXNpYmxlSXRlbXModGhpcy5pdGVtcywgdGhpcy5zZWxlY3RlZElkcywgdGhpcy5pZEZpZWxkTmFtZSwgdGhpcy50ZXh0RmllbGROYW1lKTtcclxuXHRcdHRoaXMuc2VsZWN0ZWRJdGVtcyA9IHRoaXMuc2xpY2tNdWx0aVNlbGVjdFNlcnZpY2UuZ2V0U2VsZWN0ZWRJdGVtcyh0aGlzLml0ZW1zLCB0aGlzLnNlbGVjdGVkSWRzLCB0aGlzLmlkRmllbGROYW1lLCB0aGlzLnRleHRGaWVsZE5hbWUpO1xyXG5cclxuXHRcdHRoaXMuZmlsdGVyVGV4dCA9ICcnO1xyXG5cdFx0KDxIVE1MSW5wdXRFbGVtZW50PnRoaXMuc2VsZWN0ZWRUZXh0SW5wdXRSZWYubmF0aXZlRWxlbWVudCkuZm9jdXMoKTtcclxuXHJcblx0XHQvLyBUaGlzIGlzIGtpbmQgb2YgaGFja3ksIGJ1dCBpZiBvbkZvY3VzIGlzIGNhbGxlZCBieSBjbGlja2luZyB0aGUgbXVsdGlTZWxlY3QsIHRoZSBvbk11bHRpU2VsZWN0Q2xpY2sgZXZlbnQgaXMgY2FsbGVkIGFzIHdlbGxcclxuXHRcdC8vIFRoYXQgZnVuY3Rpb24gd2lsbCBleHBhbmQgb3IgY29sbGFwc2UsIGRlcGVuZGluZyBvbiB0aGUgc3RhdGUuICBTaW5jZSB0aGlzIGV4cGFuZHMsIGl0IHRoaW5rcyBpdCBuZWVkcyB0byBjb2xsYXBzZS5cclxuXHRcdC8vIFNvIGZha2UgaXQgb3V0IGFuZCB0ZWxsIGl0IE5PVCB0byBjb2xsYXBzZS4gIEJVVCwgaWYgd2UgY2FtZSBpbiBmcm9tIHRhYmJpbmcgaW50byB0aGUgZmllbGQsIHRoZW4gaXQgd291bGQgbWVzcyB1cFxyXG5cdFx0Ly8gdGhlIGNsaWNrIGV2ZW50LiAgU28gb25seSB3YWl0IGZvciAxLzIgc2Vjb25kLlxyXG5cdFx0dGhpcy5za2lwQ2xpY2tFeHBhbmQgPSB0cnVlO1xyXG5cdFx0dGhpcy5leHBhbmQoKTtcclxuXHRcdGF3YWl0IFNsaWNrU2xlZXBTZXJ2aWNlLnNsZWVwKDUwMCk7XHJcblx0XHR0aGlzLnNraXBDbGlja0V4cGFuZCA9IGZhbHNlO1xyXG5cdH1cclxuXHJcblx0YXN5bmMgb25LZXlEb3duKGU6IEtleWJvYXJkRXZlbnQpIHtcclxuXHRcdGlmIChlLmtleSAhPT0gJ1RhYicgJiZcclxuXHRcdFx0ZS5rZXkgIT09ICdFbnRlcicgJiZcclxuXHRcdFx0ZS5rZXkgIT09ICdFc2NhcGUnICYmXHJcblx0XHRcdGUua2V5ICE9PSAnQmFja3NwYWNlJyAmJlxyXG5cdFx0XHRlLmtleSAhPT0gJ0Fycm93VXAnICYmXHJcblx0XHRcdGUua2V5ICE9PSAnQXJyb3dEb3duJ1xyXG5cdFx0KSB7XHJcblx0XHRcdC8vIElmIEYxIGlzIHByZXNzZWQsIGtleSBsZW5ndGggd2lsbCBiZSAyXHJcblx0XHRcdGlmIChlLmtleS5sZW5ndGggPiAxIHx8IGUuY3RybEtleSB8fCBlLmFsdEtleSkge1xyXG5cdFx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdGUuc3RvcFByb3BhZ2F0aW9uKCk7XHJcblx0XHRlLnByZXZlbnREZWZhdWx0KCk7XHJcblxyXG5cdFx0Ly8gSWYgdGhpcyBpcyBhbmRyb2lkLCBpdCB3b24ndCBwYXNzIHVzIGFueSBrZXkgZGF0YSBzbyBqdXN0IHJlYWQgdGhlIGVudGlyZSBpbnB1dCBlbGVtZW50XHJcblx0XHRpZiAodGhpcy5pc0FuZHJvaWQgPT09IHRydWUpIHtcclxuXHRcdFx0YXdhaXQgU2xpY2tTbGVlcFNlcnZpY2Uuc2xlZXAoKTtcclxuXHJcblx0XHRcdHRoaXMuZmlsdGVyVGV4dCA9ICg8SFRNTElucHV0RWxlbWVudD50aGlzLnNlbGVjdGVkVGV4dElucHV0UmVmLm5hdGl2ZUVsZW1lbnQpLnZhbHVlO1xyXG5cdFx0XHR0aGlzLmZpbHRlclNlYXJjaCgpO1xyXG5cdFx0XHRyZXR1cm47XHJcblx0XHR9XHJcblxyXG5cdFx0Ly8gVGFiL2VudGVyXHJcblx0XHRpZiAoZS5rZXkgPT09ICdUYWInIHx8IGUua2V5ID09PSAnRW50ZXInKSB7XHJcblx0XHRcdGlmICh0aGlzLmZpbHRlclRleHQgJiYgdGhpcy5zZWxlY3RlZEluZGV4ICE9PSBudWxsICYmIHRoaXMuc2VsZWN0ZWRJbmRleCAhPT0gdW5kZWZpbmVkKSB7XHJcblx0XHRcdFx0dGhpcy5zZWxlY3RJdGVtKHRoaXMudmlzaWJsZUl0ZW1zW3RoaXMuc2VsZWN0ZWRJbmRleF0uaWQpO1xyXG5cdFx0XHRcdHRoaXMuZmlsdGVyVGV4dCA9ICcnO1xyXG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRJbmRleCA9IG51bGw7XHJcblx0XHRcdFx0dGhpcy5jb2xsYXBzZSgpO1xyXG5cdFx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0dGhpcy5jb2xsYXBzZSgpO1xyXG5cclxuXHRcdFx0dGhpcy5maWx0ZXJUZXh0ID0gJyc7XHJcblx0XHRcdHRoaXMuc2VsZWN0ZWRUZXh0ID0gJyc7XHJcblx0XHRcdCg8SFRNTElucHV0RWxlbWVudD50aGlzLnNlbGVjdGVkVGV4dElucHV0UmVmLm5hdGl2ZUVsZW1lbnQpLnZhbHVlID0gJyc7XHJcblx0XHRcdHRoaXMuc2VsZWN0ZWRJbmRleCA9IG51bGw7XHJcblxyXG5cdFx0XHRyZXR1cm4gdHJ1ZTtcclxuXHRcdH1cclxuXHJcblx0XHQvLyBFc2NcclxuXHRcdGlmIChlLmtleSA9PT0gJ0VzY2FwZScpIHtcclxuXHRcdFx0dGhpcy5maWx0ZXJUZXh0ID0gJyc7XHJcblx0XHRcdHRoaXMuc2VsZWN0ZWRUZXh0ID0gJyc7XHJcblx0XHRcdCg8SFRNTElucHV0RWxlbWVudD50aGlzLnNlbGVjdGVkVGV4dElucHV0UmVmLm5hdGl2ZUVsZW1lbnQpLnZhbHVlID0gJyc7XHJcblx0XHRcdHRoaXMuY29sbGFwc2UoKTtcclxuXHJcblx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdH1cclxuXHJcblx0XHQvLyBCYWNrc3BhY2VcclxuXHRcdGlmIChlLmtleSA9PT0gJ0JhY2tzcGFjZScgJiYgdGhpcy5maWx0ZXJUZXh0KSB7XHJcblx0XHRcdHRoaXMuZmlsdGVyVGV4dCA9IHRoaXMuZmlsdGVyVGV4dC5zdWJzdHJpbmcoMCwgdGhpcy5maWx0ZXJUZXh0Lmxlbmd0aCAtIDEpO1xyXG5cdFx0XHRpZiAodGhpcy5maWx0ZXJUZXh0Lmxlbmd0aCA9PT0gMCkge1xyXG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRUZXh0ID0gJyc7XHJcblx0XHRcdFx0KDxIVE1MSW5wdXRFbGVtZW50PnRoaXMuc2VsZWN0ZWRUZXh0SW5wdXRSZWYubmF0aXZlRWxlbWVudCkudmFsdWUgPSAnJztcclxuXHRcdFx0XHR0aGlzLnNlbGVjdGVkSW5kZXggPSBudWxsO1xyXG5cdFx0XHRcdHRoaXMudmlzaWJsZUl0ZW1zID0gdGhpcy5zbGlja011bHRpU2VsZWN0U2VydmljZS5nZXRWaXNpYmxlSXRlbXModGhpcy5pdGVtcywgdGhpcy5zZWxlY3RlZElkcywgdGhpcy5pZEZpZWxkTmFtZSwgdGhpcy50ZXh0RmllbGROYW1lKTtcclxuXHRcdFx0XHR0aGlzLnNlbGVjdGVkSXRlbXMgPSB0aGlzLnNsaWNrTXVsdGlTZWxlY3RTZXJ2aWNlLmdldFNlbGVjdGVkSXRlbXModGhpcy5pdGVtcywgdGhpcy5zZWxlY3RlZElkcywgdGhpcy5pZEZpZWxkTmFtZSwgdGhpcy50ZXh0RmllbGROYW1lKTtcclxuXHRcdFx0fVxyXG5cdFx0XHRlbHNlXHJcblx0XHRcdFx0dGhpcy5maWx0ZXJTZWFyY2goKTtcclxuXHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cdFx0fVxyXG5cclxuXHRcdC8vIEFycm93dXBcclxuXHRcdGlmIChlLmtleSA9PT0gJ0Fycm93VXAnKSB7XHJcblx0XHRcdGlmICh0aGlzLnNlbGVjdGVkSW5kZXggPT09IG51bGwgfHwgdGhpcy5zZWxlY3RlZEluZGV4ID09PSB1bmRlZmluZWQpXHJcblx0XHRcdFx0dGhpcy5zZWxlY3RlZEluZGV4ID0gMDtcclxuXHJcblx0XHRcdGlmICh0aGlzLnNlbGVjdGVkSW5kZXggPiAwKVxyXG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRJbmRleC0tO1xyXG5cclxuXHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cdFx0fVxyXG5cclxuXHRcdC8vIEFycm93ZG93blxyXG5cdFx0aWYgKGUua2V5ID09PSAnQXJyb3dEb3duJykge1xyXG5cdFx0XHRpZiAodGhpcy5zZWxlY3RlZEluZGV4ID09PSBudWxsIHx8IHRoaXMuc2VsZWN0ZWRJbmRleCA9PT0gdW5kZWZpbmVkKVxyXG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRJbmRleCA9IC0xO1xyXG5cclxuXHRcdFx0aWYgKCF0aGlzLmV4cGFuZGVkIHx8ICF0aGlzLnZpc2libGVJdGVtcylcclxuXHRcdFx0XHR0aGlzLmV4cGFuZCgpO1xyXG5cclxuXHRcdFx0aWYgKHRoaXMuc2VsZWN0ZWRJbmRleCA8IHRoaXMudmlzaWJsZUl0ZW1zLmxlbmd0aCAtIDEpXHJcblx0XHRcdFx0dGhpcy5zZWxlY3RlZEluZGV4Kys7XHJcblxyXG5cdFx0XHRyZXR1cm4gZmFsc2U7XHJcblx0XHR9XHJcblxyXG5cdFx0Ly8gSWYgRjEgaXMgcHJlc3NlZCwga2V5IGxlbmd0aCB3aWxsIGJlIDJcclxuXHRcdGlmIChlLmtleS5sZW5ndGggPiAxIHx8IGUuY3RybEtleSB8fCBlLmFsdEtleSlcclxuXHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cclxuXHRcdGlmIChlLmtleSA+PSAnICcgJiYgZS5rZXkgPD0gJ34nKSB7XHJcblx0XHRcdHRoaXMuZmlsdGVyVGV4dCArPSBlLmtleTtcclxuXHJcblx0XHRcdHRoaXMuZmlsdGVyU2VhcmNoKCk7XHJcblx0XHR9XHJcblxyXG5cdFx0cmV0dXJuIHRydWU7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGFzeW5jIGZpbHRlclNlYXJjaCgpIHtcclxuXHRcdGlmICghdGhpcy5leHBhbmRlZClcclxuXHRcdFx0dGhpcy5leHBhbmQoKTtcclxuXHJcblx0XHR0aGlzLnZpc2libGVJdGVtcyA9IHRoaXMuc2xpY2tNdWx0aVNlbGVjdFNlcnZpY2UuZ2V0VmlzaWJsZUl0ZW1zKHRoaXMuaXRlbXMsIHRoaXMuc2VsZWN0ZWRJZHMsIHRoaXMuaWRGaWVsZE5hbWUsIHRoaXMudGV4dEZpZWxkTmFtZSk7XHJcblxyXG5cdFx0aWYgKHRoaXMuc2VhcmNoVHlwZSA9PT0gU2xpY2tNdWx0aVNlbGVjdFNlYXJjaFR5cGVzLnN0YXJ0c1dpdGgpIHtcclxuXHRcdFx0dGhpcy52aXNpYmxlSXRlbXMgPSB0aGlzLnZpc2libGVJdGVtcy5maWx0ZXIoeCA9PiB4LnRleHQudG9Mb3dlckNhc2UoKS5pbmRleE9mKHRoaXMuZmlsdGVyVGV4dC50b0xvd2VyQ2FzZSgpKSA9PT0gMCk7XHJcblx0XHRcdGlmICh0aGlzLnZpc2libGVJdGVtcy5sZW5ndGggPiAwKSB7XHJcblx0XHRcdFx0dGhpcy5zZWxlY3RlZEluZGV4ID0gMDtcclxuXHRcdFx0XHR0aGlzLnNlbGVjdGVkVGV4dCA9IHRoaXMudmlzaWJsZUl0ZW1zWzBdLnRleHQ7XHJcblx0XHRcdFx0aWYgKHRoaXMuaXNBbmRyb2lkID09PSBmYWxzZSkge1xyXG5cdFx0XHRcdFx0YXdhaXQgU2xpY2tTbGVlcFNlcnZpY2Uuc2xlZXAoKTtcclxuXHRcdFx0XHRcdCg8SFRNTElucHV0RWxlbWVudD50aGlzLnNlbGVjdGVkVGV4dElucHV0UmVmLm5hdGl2ZUVsZW1lbnQpLnZhbHVlID0gdGhpcy5zZWxlY3RlZFRleHQ7XHJcblx0XHRcdFx0XHQoPEhUTUxJbnB1dEVsZW1lbnQ+dGhpcy5zZWxlY3RlZFRleHRJbnB1dFJlZi5uYXRpdmVFbGVtZW50KS5zZXRTZWxlY3Rpb25SYW5nZSh0aGlzLmZpbHRlclRleHQubGVuZ3RoLCB0aGlzLnNlbGVjdGVkVGV4dC5sZW5ndGgpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHRlbHNlIHtcclxuXHRcdFx0XHR0aGlzLnNlbGVjdGVkSW5kZXggPSBudWxsO1xyXG5cdFx0XHRcdGlmICh0aGlzLmlzQW5kcm9pZCA9PT0gZmFsc2UpIHtcclxuXHRcdFx0XHRcdHRoaXMuc2VsZWN0ZWRUZXh0ID0gdGhpcy5maWx0ZXJUZXh0O1xyXG5cdFx0XHRcdFx0KDxIVE1MSW5wdXRFbGVtZW50PnRoaXMuc2VsZWN0ZWRUZXh0SW5wdXRSZWYubmF0aXZlRWxlbWVudCkudmFsdWUgPSB0aGlzLnNlbGVjdGVkVGV4dDtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRlbHNlIGlmICh0aGlzLnNlYXJjaFR5cGUgPT09IFNsaWNrTXVsdGlTZWxlY3RTZWFyY2hUeXBlcy5lYWNoV29yZCkge1xyXG5cdFx0XHR0aGlzLnZpc2libGVJdGVtcyA9IHRoaXMudmlzaWJsZUl0ZW1zLmZpbHRlcih4ID0+IChcIiBcIiArIHgudGV4dC50b0xvd2VyQ2FzZSgpKS5pbmRleE9mKFwiIFwiICsgdGhpcy5maWx0ZXJUZXh0LnRvTG93ZXJDYXNlKCkpID49IDApO1xyXG5cdFx0XHRpZiAodGhpcy52aXNpYmxlSXRlbXMubGVuZ3RoID4gMCkge1xyXG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRJbmRleCA9IDA7XHJcblx0XHRcdFx0dGhpcy5zZWxlY3RlZFRleHQgPSB0aGlzLnZpc2libGVJdGVtc1swXS50ZXh0O1xyXG5cdFx0XHRcdGlmICh0aGlzLmlzQW5kcm9pZCA9PT0gZmFsc2UpIHtcclxuXHRcdFx0XHRcdGF3YWl0IFNsaWNrU2xlZXBTZXJ2aWNlLnNsZWVwKCk7XHJcblx0XHRcdFx0XHQoPEhUTUxJbnB1dEVsZW1lbnQ+dGhpcy5zZWxlY3RlZFRleHRJbnB1dFJlZi5uYXRpdmVFbGVtZW50KS52YWx1ZSA9IHRoaXMuc2VsZWN0ZWRUZXh0O1xyXG5cdFx0XHRcdFx0KDxIVE1MSW5wdXRFbGVtZW50PnRoaXMuc2VsZWN0ZWRUZXh0SW5wdXRSZWYubmF0aXZlRWxlbWVudCkuc2V0U2VsZWN0aW9uUmFuZ2UodGhpcy5maWx0ZXJUZXh0Lmxlbmd0aCwgdGhpcy5zZWxlY3RlZFRleHQubGVuZ3RoKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0ZWxzZSB7XHJcblx0XHRcdFx0dGhpcy5zZWxlY3RlZFRleHQgPSB0aGlzLmZpbHRlclRleHQ7XHJcblx0XHRcdFx0dGhpcy5zZWxlY3RlZEluZGV4ID0gbnVsbDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdH1cclxuXHJcblx0XHR0aGlzLnJlcG9zaXRpb24oKTtcclxuXHR9XHJcblxyXG5cdG9uTXVsdGlTZWxlY3RDbGlja2VkKCkge1xyXG5cdFx0aWYgKHRoaXMuc2tpcENsaWNrRXhwYW5kID09PSB0cnVlKSB7XHJcblx0XHRcdHRoaXMuc2tpcENsaWNrRXhwYW5kID0gZmFsc2U7XHJcblx0XHRcdHJldHVybjtcclxuXHRcdH1cclxuXHJcblx0XHQoPEhUTUxJbnB1dEVsZW1lbnQ+dGhpcy5zZWxlY3RlZFRleHRJbnB1dFJlZi5uYXRpdmVFbGVtZW50KS5mb2N1cygpO1xyXG5cclxuXHRcdGlmICh0aGlzLmV4cGFuZGVkID09PSBmYWxzZSlcclxuXHRcdFx0dGhpcy5leHBhbmQoKTtcclxuXHRcdGVsc2VcclxuXHRcdFx0dGhpcy5jb2xsYXBzZSgpO1xyXG5cdH1cclxuXHJcblx0b25JdGVtQ2xpY2soaXRlbTogYW55KSB7XHJcblx0XHR0aGlzLnNlbGVjdEl0ZW0oaXRlbS5pZCk7XHJcblxyXG5cdFx0aWYgKHRoaXMua2V5Ym9hcmRBY3RpdmUgPT09IHRydWUpXHJcblx0XHRcdCg8SFRNTElucHV0RWxlbWVudD50aGlzLnNlbGVjdGVkVGV4dElucHV0UmVmLm5hdGl2ZUVsZW1lbnQpLmZvY3VzKCk7XHJcblx0fVxyXG5cclxuXHRvblJlbW92ZUl0ZW0oaXRlbTogYW55KSB7XHJcblx0XHR0aGlzLnNlbGVjdGVkSWRzID0gdGhpcy5zZWxlY3RlZElkcy5maWx0ZXIoaWQgPT4gaWQgIT09IGl0ZW0uaWQpO1xyXG5cdFx0dGhpcy52aXNpYmxlSXRlbXMgPSB0aGlzLnNsaWNrTXVsdGlTZWxlY3RTZXJ2aWNlLmdldFZpc2libGVJdGVtcyh0aGlzLml0ZW1zLCB0aGlzLnNlbGVjdGVkSWRzLCB0aGlzLmlkRmllbGROYW1lLCB0aGlzLnRleHRGaWVsZE5hbWUpO1xyXG5cdFx0dGhpcy5zZWxlY3RlZEl0ZW1zID0gdGhpcy5zbGlja011bHRpU2VsZWN0U2VydmljZS5nZXRTZWxlY3RlZEl0ZW1zKHRoaXMuaXRlbXMsIHRoaXMuc2VsZWN0ZWRJZHMsIHRoaXMuaWRGaWVsZE5hbWUsIHRoaXMudGV4dEZpZWxkTmFtZSk7XHJcblxyXG5cdFx0dGhpcy5wcm9wYWdhdGVDaGFuZ2UodGhpcy5zZWxlY3RlZElkcyk7XHJcblx0fVxyXG59IiwiPGRpdiAjY29udGFpbmVyRGl2IGlkPVwic2xpY2stbXVsdGktc2VsZWN0X3t7dXVpZH19XCIgYXR0ci5kYXRhLXV1aWQ9XCJ7e3V1aWR9fVwiIGNsYXNzPVwic2xpY2stbXVsdGktc2VsZWN0XCIgW2NsYXNzLm1vYmlsZV09XCJpc01vYmlsZSA9PT0gdHJ1ZVwiIFtjbGFzcy5vcGVuXT1cImV4cGFuZGVkXCI+XHJcblx0PGRpdiBjbGFzcz1cInNsaWNrLW11bHRpLXNlbGVjdF9pbnB1dC1jb250YWluZXJcIj5cclxuXHRcdDxkaXYgKm5nSWY9XCJkaXNhYmxlZCA9PT0gZmFsc2VcIiBzdHlsZT1cImN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50OyBmbGV4LWdyb3c6IDE7XCIgW25nQ2xhc3NdPVwieyAnc2xpY2stbXVsdGktc2VsZWN0X21vYmlsZSc6IGlzTW9iaWxlID09PSB0cnVlIH1cIiAoY2xpY2spPVwib25NdWx0aVNlbGVjdENsaWNrZWQoKVwiPlxyXG5cdFx0XHQ8ZGl2ICpuZ0Zvcj1cImxldCBzZWxlY3RlZEl0ZW0gb2Ygc2VsZWN0ZWRJdGVtc1wiIGNsYXNzPVwic2xpY2stbXVsdGktc2VsZWN0X3NlbGVjdGVkLWl0ZW0gY2FyZFwiPjxkaXYgY2xhc3M9XCJzbGljay1tdWx0aS1zZWxlY3RfcmVtb3ZlXCIgKGNsaWNrKT1cIm9uUmVtb3ZlSXRlbShzZWxlY3RlZEl0ZW0pXCI+PGkgY2xhc3M9XCJmYXMgZmEtdGltZXMtY2lyY2xlIGJnLXdoaXRlIHRleHQtZGFuZ2VyXCI+PC9pPjwvZGl2Pnt7c2VsZWN0ZWRJdGVtLnRleHR9fTwvZGl2PlxyXG5cdFx0XHQ8aW5wdXQgI3NlbGVjdGVkVGV4dElucHV0UmVmICpuZ0lmPVwiIWlzTW9iaWxlXCIgW2F0dHIudGFiaW5kZXhdPVwidGFiaW5kZXhcIiBbbmdDbGFzc109XCJ7J3NsaWNrLW11bHRpLXNlbGVjdF9zaG93LXNlbGVjdGVkLXRleHQnOiAoa2V5Ym9hcmRBY3RpdmUgfHwgKHNlbGVjdGVkVGV4dCAmJiBzZWxlY3RlZFRleHQubGVuZ3RoID4gMCkpIH1cIiAoa2V5ZG93bik9XCJvbktleURvd24oJGV2ZW50KVwiIChmb2N1cyk9XCJvbkZvY3VzKClcIiBuZy1kaXNhYmxlZD0nZGlzYWJsZWQnIHJlYWRvbmx5IFtwbGFjZWhvbGRlcl09J3BsYWNlaG9sZGVyJyAvPlxyXG5cdFx0XHQ8aW5wdXQgI3NlbGVjdGVkVGV4dElucHV0UmVmICpuZ0lmPVwiaXNNb2JpbGUgPT09IHRydWVcIiBbbmdDbGFzc109XCJ7J3NsaWNrLW11bHRpLXNlbGVjdF9zaG93LXNlbGVjdGVkLXRleHQnOiAoa2V5Ym9hcmRBY3RpdmUgfHwgKHNlbGVjdGVkVGV4dCAmJiBzZWxlY3RlZFRleHQubGVuZ3RoID4gMCkpIH1cIiAoa2V5ZG93bik9XCJvbktleURvd24oJGV2ZW50KVwiIChmb2N1cyk9XCJvbkZvY3VzKClcIiAvPlxyXG5cdFx0PC9kaXY+XHJcblx0XHQ8ZGl2ICpuZ0lmPVwiZGlzYWJsZWQgPT09IGZhbHNlICYmIGlzTW9iaWxlID09PSB0cnVlXCIgY2xhc3M9XCJzbGljay1tdWx0aS1zZWxlY3RfbW9iaWxlLWNvbnRhaW5lclwiPlxyXG5cdFx0XHQ8aSBjbGFzcz1cImZhciBmYS1rZXlib2FyZFwiIHN0eWxlPVwiY3Vyc29yOiBwb2ludGVyXCIgKGNsaWNrKT1cIm9uS2V5Ym9hcmRJY29uQ2xpY2tlZCgpXCI+PC9pPlxyXG5cdFx0PC9kaXY+XHJcblx0PC9kaXY+XHJcblxyXG5cdDxkaXYgKm5nSWY9XCJkaXNhYmxlZCA9PT0gdHJ1ZVwiIGNsYXNzPSdpbnB1dC1ncm91cCc+XHJcblx0XHQ8ZGl2ICpuZ0Zvcj1cImxldCBzZWxlY3RlZEl0ZW0gb2Ygc2VsZWN0ZWRJdGVtc1wiIGNsYXNzPVwic2xpY2stbXVsdGktc2VsZWN0X3NlbGVjdGVkLWl0ZW0gY2FyZFwiPnt7c2VsZWN0ZWRJdGVtLnRleHR9fTwvZGl2PlxyXG5cdDwvZGl2PlxyXG5cclxuXHQ8dWwgI211bHRpU2VsZWN0TGlzdCBpZD1cInNsaWNrLW11bHRpLXNlbGVjdC1saXN0X3t7dXVpZH19XCIgY2xhc3M9J3NsaWNrLW11bHRpLXNlbGVjdC1saXN0LWdyb3VwIGRyb3Bkb3duLW1lbnUnIFtzdHlsZS53aWR0aF09XCJsaXN0R3JvdXBXaWR0aFwiIFtzdHlsZS52aXNpYmlsaXR5XT1cIihleHBhbmRlZCA9PT0gdHJ1ZSkgPyAndmlzaWJsZScgOiAnaGlkZGVuJ1wiIFtzdHlsZS5vcGFjaXR5XT1cIihleHBhbmRlZCA9PT0gdHJ1ZSkgPyAnMScgOiAnMCdcIiBbc3R5bGUubWF4LWhlaWdodF09XCJoZWlnaHRcIiBbc3R5bGUud2lkdGgucHhdPVwibGlzdEdyb3VwV2lkdGhcIiBbc3R5bGUubGVmdC5weF09XCJsZWZ0XCIgW3N0eWxlLnRvcC5weF09XCJ0b3BcIj5cclxuXHRcdDxsaSAqbmdGb3I9XCJsZXQgaXRlbSBvZiB2aXNpYmxlSXRlbXM7IGxldCBpbmRleCA9IGluZGV4O1wiIChtb3VzZW92ZXIpPVwic2VsZWN0ZWRJbmRleCA9IGluZGV4XCIgKGNsaWNrKT1cIm9uSXRlbUNsaWNrKGl0ZW0pXCIgW2NsYXNzLmNhcmQtaGVhZGVyXT1cInNlbGVjdGVkSW5kZXggPT09IGluZGV4XCIgY2xhc3M9XCJkcm9wZG93bi1pdGVtIHNsaWNrLW11bHRpLXNlbGVjdF9saXN0LWl0ZW1cIj57e2l0ZW0udGV4dH19PC9saT5cclxuXHQ8L3VsPlxyXG48L2Rpdj4iXX0=
|
|
419
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpY2stbXVsdGktc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL3NsaWNrLW11bHRpLXNlbGVjdC9zbGljay1tdWx0aS1zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvc2xpY2stbXVsdGktc2VsZWN0L3NsaWNrLW11bHRpLXNlbGVjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFrRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RLLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3ZFLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7OztBQUUvRCxNQUFNLENBQU4sSUFBWSwyQkFBeUQ7QUFBckUsV0FBWSwyQkFBMkI7SUFBRyx5RkFBVSxDQUFBO0lBQUUscUZBQVEsQ0FBQTtJQUFFLDJFQUFHLENBQUE7QUFBQyxDQUFDLEVBQXpELDJCQUEyQixLQUEzQiwyQkFBMkIsUUFBOEI7QUFZckUsTUFBTSxPQUFPLHlCQUF5QjtJQTZDckMsWUFBb0IsTUFBYyxFQUN6Qix1QkFBZ0QsRUFDaEQsRUFBYztRQUZILFdBQU0sR0FBTixNQUFNLENBQVE7UUFDekIsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUF5QjtRQUNoRCxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBOUNkLGdCQUFX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O3NCQUFuQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUVJLFFBQVE7c0JBQWpCLE1BQU07Z0JBQ0csVUFBVTtzQkFBbkIsTUFBTTtnQkFDRyxRQUFRO3NCQUFqQixNQUFNO2dCQUVvQixZQUFZO3NCQUF0QyxTQUFTO3VCQUFDLGNBQWM7Z0JBQ0ssZUFBZTtzQkFBNUMsU0FBUzt1QkFBQyxpQkFBaUI7Z0JBQ08sb0JBQW9CO3NCQUF0RCxTQUFTO3VCQUFDLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgTmdab25lLCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIEVsZW1lbnRSZWYsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q2hpbGQsIGZvcndhcmRSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBTbGlja011bHRpU2VsZWN0U2VydmljZSB9IGZyb20gXCIuL3NsaWNrLW11bHRpLXNlbGVjdC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBTbGlja1NsZWVwU2VydmljZSB9IGZyb20gXCIuLi91dGlscy9zbGljay1zbGVlcC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFNsaWNrVXRpbHNTZXJ2aWNlIH0gZnJvbSBcIi4uL3V0aWxzL3NsaWNrLXV0aWxzLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgU2xpY2tJbml0U2VydmljZSB9IGZyb20gXCIuLi91dGlscy9zbGljay1pbml0LnNlcnZpY2VcIjtcclxuXHJcbmV4cG9ydCBlbnVtIFNsaWNrTXVsdGlTZWxlY3RTZWFyY2hUeXBlcyB7IHN0YXJ0c1dpdGgsIGVhY2hXb3JkLCBhbnkgfVxyXG5cclxuQENvbXBvbmVudCh7XHJcblx0c2VsZWN0b3I6ICdzbGljay1tdWx0aS1zZWxlY3QnLFxyXG5cdHRlbXBsYXRlVXJsOiAnc2xpY2stbXVsdGktc2VsZWN0LmNvbXBvbmVudC5odG1sJyxcclxuXHRwcm92aWRlcnM6IFtTbGlja011bHRpU2VsZWN0U2VydmljZSxcclxuXHRcdHtcclxuXHRcdFx0cHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcblx0XHRcdHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNsaWNrTXVsdGlTZWxlY3RDb21wb25lbnQpLFxyXG5cdFx0XHRtdWx0aTogdHJ1ZSxcclxuXHRcdH1dXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTbGlja011bHRpU2VsZWN0Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcclxuXHRASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nID0gJyc7XHJcblx0QElucHV0KCkgaXRlbXM6IGFueVtdO1xyXG5cdEBJbnB1dCgpIGlkRmllbGROYW1lOiBzdHJpbmcgPSBcImlkXCI7XHJcblx0QElucHV0KCkgdGV4dEZpZWxkTmFtZTogc3RyaW5nID0gXCJ0ZXh0XCI7XHJcblx0QElucHV0KCkgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHRASW5wdXQoKSBhbGxvd0VtcHR5OiBzdHJpbmcgPSAndHJ1ZSc7XHJcblx0QElucHV0KCkgc2luZ2xlU2VsZWN0OiBib29sZWFuID0gZmFsc2U7XHJcblx0QElucHV0KCkgd2lkdGg6IHN0cmluZyA9ICcxMDAlJztcclxuXHRASW5wdXQoKSBsaXN0V2lkdGg6IHN0cmluZyA9ICcxMDAlJztcclxuXHRASW5wdXQoKSBoZWlnaHQ6IHN0cmluZyA9ICczMDBweCc7XHJcblx0QElucHV0KCkgc2hvd0xvYWRpbmdNZXNzYWdlOiBib29sZWFuID0gZmFsc2U7XHJcblx0QElucHV0KCkgc2hvd0RlYnVnOiBib29sZWFuO1xyXG5cdEBJbnB1dCgpIHRhYmluZGV4OiBudW1iZXI7XHJcblx0QElucHV0KCkgaXNNb2JpbGU6IGJvb2xlYW47XHJcblx0QElucHV0KCkgc2VhcmNoVHlwZTogU2xpY2tNdWx0aVNlbGVjdFNlYXJjaFR5cGVzID0gU2xpY2tNdWx0aVNlbGVjdFNlYXJjaFR5cGVzLmVhY2hXb3JkO1xyXG5cclxuXHRAT3V0cHV0KCkgb25FeHBhbmQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHRAT3V0cHV0KCkgb25Db2xsYXBzZTogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cdEBPdXRwdXQoKSBvblNlbGVjdDogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuXHJcblx0QFZpZXdDaGlsZChcImNvbnRhaW5lckRpdlwiKSBjb250YWluZXJEaXY6IEVsZW1lbnRSZWY7XHJcblx0QFZpZXdDaGlsZChcIm11bHRpU2VsZWN0TGlzdFwiKSBtdWx0aVNlbGVjdExpc3Q6IEVsZW1lbnRSZWY7XHJcblx0QFZpZXdDaGlsZChcInNlbGVjdGVkVGV4dElucHV0UmVmXCIpIHNlbGVjdGVkVGV4dElucHV0UmVmOiBFbGVtZW50UmVmO1xyXG5cclxuXHQvLyBUaGlzIGlzIG5lY2Vzc2FyeSBzbyB0aGF0IHRoZSBzY3JvbGwgYW5kIHJlc2l6ZSBldmVudHMgY2FuIGFkZCBhbmQgcmVtb3ZlIHRoZSBldmVudCBwcm9wZXJseSxcclxuXHQvLyBhcyB3ZWxsIGFzIGdldHRpbmcgdGhlIGNvcnJlY3QgRVM2IGZ1bmN0aW9uXHJcblx0cHJpdmF0ZSBmbkRvY3VtZW50Q2xpY2sgPSAoZSkgPT4gdGhpcy5kb2N1bWVudENsaWNrKGUpO1xyXG5cclxuXHR1dWlkOiBzdHJpbmc7XHJcblx0c2VsZWN0ZWRJZHM6IHN0cmluZ1tdO1xyXG5cdHNlbGVjdGVkVGV4dDogc3RyaW5nO1xyXG5cdGtleWJvYXJkQWN0aXZlOiBib29sZWFuID0gZmFsc2U7XHJcblx0ZXhwYW5kZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHRmaWx0ZXJUZXh0OiBzdHJpbmcgPSAnJztcclxuXHRzZWxlY3RlZEluZGV4OiBudW1iZXI7XHJcblx0c2VsZWN0ZWRJdGVtczogYW55W107XHJcblx0dmlzaWJsZUl0ZW1zOiBhbnlbXTtcclxuXHRsZWZ0OiBzdHJpbmc7XHJcblx0dG9wOiBzdHJpbmc7XHJcblx0bGlzdEdyb3VwV2lkdGg6IHN0cmluZztcclxuXHRpc0FuZHJvaWQ6IGJvb2xlYW4gPSAoKFNsaWNrSW5pdFNlcnZpY2UuZ2V0UGxhdGZvcm0oKSB8fCAnJykudG9Mb3dlckNhc2UoKSA9PT0gJ2FuZHJvaWQnKTtcclxuXHJcblx0cHJpdmF0ZSBza2lwQ2xpY2tFeHBhbmQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcblx0Y29uc3RydWN0b3IocHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSxcclxuXHRcdHByaXZhdGUgc2xpY2tNdWx0aVNlbGVjdFNlcnZpY2U6IFNsaWNrTXVsdGlTZWxlY3RTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBlbDogRWxlbWVudFJlZikge1xyXG5cdFx0dGhpcy51dWlkID0gU2xpY2tVdGlsc1NlcnZpY2UubmV3R3VpZCgpO1xyXG5cdH1cclxuXHJcblx0YXN5bmMgbmdBZnRlclZpZXdJbml0KCkge1xyXG5cdFx0Ly8gUmVtb3ZlIHRoaXMgZnJvbSB0aGUgaW5saW5lIHZlcnNpb24gYW5kIHB1dCBpdCBvbiB0aGUgYm9keSBzbyB0aGF0IGl0IGRvZXNuJ3QgaGlkZSBiZWhpbmQgdGhlIGJvdHRvbVxyXG5cdFx0Ly8gb2YgYSBkaXYgd2hlbiBpdCBleHBhbmRzIGJleW9uZCB0aGUgYm90dG9tLlxyXG5cdFx0dGhpcy5tdWx0aVNlbGVjdExpc3QubmF0aXZlRWxlbWVudC5yZW1vdmUodGhpcy5tdWx0aVNlbGVjdExpc3QpO1xyXG5cdFx0ZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0aGlzLm11bHRpU2VsZWN0TGlzdC5uYXRpdmVFbGVtZW50KTtcclxuXHR9XHJcblxyXG5cdHByb3BhZ2F0ZUNoYW5nZSA9IChfOiBhbnkpID0+IHsgfTtcclxuXHJcblx0Ly8gdGhpcyBpcyB0aGUgaW5pdGlhbCB2YWx1ZSBzZXQgdG8gdGhlIGNvbXBvbmVudFxyXG5cdHB1YmxpYyB3cml0ZVZhbHVlKG9iajogYW55KSB7XHJcblx0XHRpZiAob2JqKVxyXG5cdFx0XHR0aGlzLnNlbGVjdGVkSWRzID0gb2JqO1xyXG5cdFx0ZWxzZVxyXG5cdFx0XHR0aGlzLnNlbGVjdGVkSWRzID0gbnVsbDtcclxuXHJcblx0XHR0aGlzLnZpc2libGVJdGVtcyA9IHRoaXMuc2xpY2tNdWx0aVNlbGVjdFNlcnZpY2UuZ2V0VmlzaWJsZUl0ZW1zKHRoaXMuaXRlbXMsIHRoaXMuc2VsZWN0ZWRJZHMsIHRoaXMuaWRGaWVsZE5hbWUsIHRoaXMudGV4dEZpZWxkTmFtZSk7XHJcblx0XHR0aGlzLnNlbGVjdGVkSXRlbXMgPSB0aGlzLnNsaWNrTXVsdGlTZWxlY3RTZXJ2aWNlLmdldFNlbGVjdGVkSXRlbXModGhpcy5pdGVtcywgdGhpcy5zZWxlY3RlZElkcywgdGhpcy5pZEZpZWxkTmFtZSwgdGhpcy50ZXh0RmllbGROYW1lKTtcclxuXHR9XHJcblxyXG5cdC8vIHJlZ2lzdGVycyAnZm4nIHRoYXQgd2lsbCBiZSBmaXJlZCB3aGVuIGNoYW5nZXMgYXJlIG1hZGVcclxuXHQvLyB0aGlzIGlzIGhvdyB3ZSBlbWl0IHRoZSBjaGFuZ2VzIGJhY2sgdG8gdGhlIGZvcm1cclxuXHRwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KSB7XHJcblx0XHR0aGlzLnByb3BhZ2F0ZUNoYW5nZSA9IGZuO1xyXG5cdH1cclxuXHJcblx0Ly8gbm90IHVzZWQsIHVzZWQgZm9yIHRvdWNoIGlucHV0XHJcblx0cHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKCkgeyB9XHJcblxyXG5cdG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuXHRcdGlmIChjaGFuZ2VzLmlzTW9iaWxlKSB7XHJcblx0XHRcdHRoaXMuaXNNb2JpbGUgPSAodGhpcy5pc01vYmlsZS50b1N0cmluZygpLnRvTG93ZXJDYXNlKCkgPT09ICd0cnVlJykgPyB0cnVlIDogZmFsc2U7XHJcblx0XHR9XHJcblxyXG5cdFx0aWYgKGNoYW5nZXMuc2luZ2xlU2VsZWN0KSB7XHJcblx0XHRcdHRoaXMuc2luZ2xlU2VsZWN0ID0gKHRoaXMuc2luZ2xlU2VsZWN0LnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKSA9PT0gJ3RydWUnKSA/IHRydWUgOiBmYWxzZTtcclxuXHRcdH1cclxuXHJcblx0XHRpZiAoY2hhbmdlcy5zZWFyY2hUeXBlKSB7XHJcblx0XHRcdGlmIChjaGFuZ2VzLnNlYXJjaFR5cGUuY3VycmVudFZhbHVlLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKSA9PT0gJ3N0YXJ0c3dpdGgnKVxyXG5cdFx0XHRcdHRoaXMuc2VhcmNoVHlwZSA9IFNsaWNrTXVsdGlTZWxlY3RTZWFyY2hUeXBlcy5zdGFydHNXaXRoO1xyXG5cdFx0XHRlbHNlIGlmIChjaGFuZ2VzLnNlYXJjaFR5cGUuY3VycmVudFZhbHVlLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKSA9PT0gJ2FueScpXHJcblx0XHRcdFx0dGhpcy5zZWFyY2hUeXBlID0gU2xpY2tNdWx0aVNlbGVjdFNlYXJjaFR5cGVzLmFueTtcclxuXHRcdFx0ZWxzZVxyXG5cdFx0XHRcdHRoaXMuc2VhcmNoVHlwZSA9IFNsaWNrTXVsdGlTZWxlY3RTZWFyY2hUeXBlcy5lYWNoV29yZDtcclxuXHRcdH1cclxuXHJcblx0XHRpZiAoY2hhbmdlcy5pdGVtcykge1xyXG5cdFx0XHR0aGlzLnZpc2libGVJdGVtcyA9IHRoaXMuc2xpY2tNdWx0aVNlbGVjdFNlcnZpY2UuZ2V0VmlzaWJsZUl0ZW1zKHRoaXMuaXRlbXMsIHRoaXMuc2VsZWN0ZWRJZHMsIHRoaXMuaWRGaWVsZE5hbWUsIHRoaXMudGV4dEZpZWxkTmFtZSk7XHJcblx0XHRcdHRoaXMuc2VsZWN0ZWRJdGVtcyA9IHRoaXMuc2xpY2tNdWx0aVNlbGVjdFNlcnZpY2UuZ2V0U2VsZWN0ZWRJdGVtcyh0aGlzLml0ZW1zLCB0aGlzLnNlbGVjdGVkSWRzLCB0aGlzLmlkRmllbGROYW1lLCB0aGlzLnRleHRGaWVsZE5hbWUpO1xyXG5cdFx0XHRpZiAodGhpcy5zZWxlY3RlZFRleHRJbnB1dFJlZiAmJiBkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09IHRoaXMuc2VsZWN0ZWRUZXh0SW5wdXRSZWYubmF0aXZlRWxlbWVudClcclxuXHRcdFx0XHR0aGlzLmV4cGFuZCgpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0bmdPbkRlc3Ryb3koKSB7XHJcblx0XHR0aGlzLmNvbGxhcHNlKCk7XHJcblx0XHRkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKFwiY2xpY2tcIiwgdGhpcy5mbkRvY3VtZW50Q2xpY2ssIHRydWUpO1xyXG5cclxuXHRcdC8vIGl0J3Mgb2theSBpZiB0aGlzIGZhaWxzLiAgSXQgd2FzIGFscmVhZHkgcmVtb3ZlZFxyXG5cdFx0dHJ5IHtcclxuXHRcdFx0ZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZCh0aGlzLm11bHRpU2VsZWN0TGlzdC5uYXRpdmVFbGVtZW50KTtcclxuXHRcdH1cclxuXHRcdGNhdGNoIHsgfVxyXG5cclxuXHR9XHJcblxyXG5cdGFzeW5jIG9uS2V5Ym9hcmRJY29uQ2xpY2tlZCgpIHtcclxuXHRcdGlmICh0aGlzLmtleWJvYXJkQWN0aXZlID09PSB0cnVlKSB7XHJcblx0XHRcdHRoaXMuY29sbGFwc2UoKTtcclxuXHRcdFx0dGhpcy5rZXlib2FyZEFjdGl2ZSA9IGZhbHNlO1xyXG5cdFx0XHR0aGlzLnNlbGVjdGVkVGV4dCA9ICcnO1xyXG5cdFx0XHQoPEhUTUxJbnB1dEVsZW1lbnQ+dGhpcy5zZWxlY3RlZFRleHRJbnB1dFJlZi5uYXRpdmVFbGVtZW50KS52YWx1ZSA9ICcnO1xyXG5cdFx0fVxyXG5cdFx0ZWxzZSB7XHJcblx0XHRcdHRoaXMua2V5Ym9hcmRBY3RpdmUgPSB0cnVlO1xyXG5cdFx0XHRhd2FpdCBTbGlja1NsZWVwU2VydmljZS5zbGVlcCgpO1xyXG5cdFx0XHQoPEhUTUxFbGVtZW50PnRoaXMuc2VsZWN0ZWRUZXh0SW5wdXRSZWYubmF0aXZlRWxlbWVudCkuZm9jdXMoKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdGFzeW5jIGV4cGFuZCgpIHtcclxuXHRcdGlmICh0aGlzLmRpc2FibGVkKVxyXG5cdFx0XHRyZXR1cm47XHJcblxyXG5cdFx0dGhpcy5yZXBvc2l0aW9uKCk7XHJcblxyXG5cdFx0YXdhaXQgU2xpY2tTbGVlcFNlcnZpY2Uuc2xlZXAoKTtcclxuXHRcdHRoaXMubXVsdGlTZWxlY3RMaXN0Lm5hdGl2ZUVsZW1lbnQuc3R5bGUuZGlzcGxheSA9IFwiaW5saW5lLWJsb2NrXCI7XHJcblxyXG5cdFx0bGV0IHNlbGVjdGVkSXRlbXMgPSB0aGlzLm11bHRpU2VsZWN0TGlzdC5uYXRpdmVFbGVtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoXCJzZWxlY3RlZFwiKTtcclxuXHRcdGlmIChzZWxlY3RlZEl0ZW1zICYmIHNlbGVjdGVkSXRlbXMubGVuZ3RoID4gMClcclxuXHRcdFx0KDxIVE1MRWxlbWVudD5zZWxlY3RlZEl0ZW1zWzBdKS5zY3JvbGxJbnRvVmlldyh7IGJsb2NrOiAnbmVhcmVzdCcgfSk7XHJcblxyXG5cdFx0dGhpcy5leHBhbmRlZCA9IHRydWU7XHJcblxyXG5cdFx0Ly8gVGhpcyBpcyBuZWNlc3NhcnksIG90aGVyd2lzZSBgdGhpc2AgaW4gdGhlIHJlcG9zaXRpb24gZnVuY3Rpb24gd2lsbCBiZSB3aW5kb3dcclxuXHRcdC8vIGFuZCBub3QgdGhlIGNvbXBvbmVudC5cclxuXHRcdC8vIFNpbmNlIGFuZ3VsYXIgaGFzIG5vIHdheSB0byB1c2UgdGhlIHRoaXJkIHBhcmFtZXRlciwgSSdtIGRvaW5nIHRoaXMgaW4gcmF3IGpzXHJcblx0XHRkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFwiY2xpY2tcIiwgdGhpcy5mbkRvY3VtZW50Q2xpY2ssIHRydWUpO1xyXG5cclxuXHRcdGlmICh0aGlzLm9uRXhwYW5kKVxyXG5cdFx0XHR0aGlzLm9uRXhwYW5kLmVtaXQoKTtcclxuXHR9XHJcblxyXG5cdGNvbGxhcHNlKCkge1xyXG5cdFx0dGhpcy5leHBhbmRlZCA9IGZhbHNlO1xyXG5cdFx0dGhpcy5tdWx0aVNlbGVjdExpc3QubmF0aXZlRWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gXCJub25lXCI7XHJcblx0XHQvLyBTaW5jZSBhbmd1bGFyIGhhcyBubyB3YXkgdG8gdXNlIHRoZSB0aGlyZCBwYXJhbWV0ZXIsIEknbSBkb2luZyB0aGlzIGluIHJhdyBqc1xyXG5cdFx0ZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsIHRoaXMuZm5Eb2N1bWVudENsaWNrLCB0cnVlKTtcclxuXHJcblx0XHRpZiAodGhpcy5vbkNvbGxhcHNlKVxyXG5cdFx0XHR0aGlzLm9uQ29sbGFwc2UuZW1pdCgpO1xyXG5cdH1cclxuXHJcblx0YXN5bmMgcmVwb3NpdGlvbigpIHtcclxuXHRcdGF3YWl0IFNsaWNrU2xlZXBTZXJ2aWNlLnNsZWVwKCk7XHJcblx0XHRsZXQgcmVjdCA9IHRoaXMuY29udGFpbmVyRGl2Lm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcblx0XHRsZXQgY29udGFpbmVyTGVmdCA9IHJlY3QubGVmdDtcclxuXHRcdGxldCBjb250YWluZXJUb3AgPSByZWN0LnRvcDtcclxuXHRcdGxldCBjb250YWluZXJIZWlnaHQgPSB0aGlzLmNvbnRhaW5lckRpdi5uYXRpdmVFbGVtZW50Lm9mZnNldEhlaWdodDtcclxuXHRcdGxldCBjb250YWluZXJXaWR0aCA9IHJlY3Qud2lkdGg7XHJcblxyXG5cdFx0dGhpcy53aWR0aCA9IGNvbnRhaW5lcldpZHRoO1xyXG5cdFx0aWYgKHRoaXMubGlzdFdpZHRoID09PSAnMTAwJScpXHJcblx0XHRcdHRoaXMubGlzdEdyb3VwV2lkdGggPSB0aGlzLndpZHRoO1xyXG5cdFx0ZWxzZSBpZiAodGhpcy5saXN0V2lkdGggPT09ICdhdXRvJylcclxuXHRcdFx0dGhpcy5saXN0R3JvdXBXaWR0aCA9IFwiYXV0b1wiO1xyXG5cdFx0ZWxzZVxyXG5cdFx0XHR0aGlzLmxpc3RHcm91cFdpZHRoID0gdGhpcy5saXN0V2lkdGg7XHJcblx0XHR0aGlzLnRvcCA9IChjb250YWluZXJUb3AgKyBjb250YWluZXJIZWlnaHQpO1xyXG5cdFx0dGhpcy5sZWZ0ID0gY29udGFpbmVyTGVmdDtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgZG9jdW1lbnRDbGljayhlOiBNb3VzZUV2ZW50KSB7XHJcblx0XHRpZiAoIXRoaXMuZXhwYW5kZWQgfHwgIWUudGFyZ2V0KVxyXG5cdFx0XHRyZXR1cm47XHJcblxyXG5cdFx0Ly8gSWYgdGhleSBjbGlja2VkIG9uIHRoZSBrZXlib2FyZCBpY29uLCBkb24ndCBkbyBhbnl0aGluZ1xyXG5cdFx0aWYgKFNsaWNrVXRpbHNTZXJ2aWNlLmNoZWNrUGFyZW50Q2xhc3NFeGlzdHMoPEhUTUxFbGVtZW50PmUudGFyZ2V0LCBcInNsaWNrLW11bHRpLXNlbGVjdF9tb2JpbGUtY29udGFpbmVyXCIpICYmXHJcblx0XHRcdFNsaWNrVXRpbHNTZXJ2aWNlLmNoZWNrUGFyZW50SWRFeGlzdHMoPEhUTUxFbGVtZW50PmUudGFyZ2V0LCBcInNsaWNrLW11bHRpLXNlbGVjdF9cIiArIHRoaXMudXVpZCkpXHJcblx0XHRcdHJldHVybjtcclxuXHJcblx0XHRjb25zdCBjbGlja2VkSW5zaWRlID0gU2xpY2tVdGlsc1NlcnZpY2UuY2hlY2tQYXJlbnRDbGFzc0V4aXN0cyg8SFRNTEVsZW1lbnQ+ZS50YXJnZXQsIFwic2xpY2stbXVsdGktc2VsZWN0X2xpc3QtaXRlbVwiKTtcclxuXHRcdGlmICghY2xpY2tlZEluc2lkZSkge1xyXG5cdFx0XHR0aGlzLmtleWJvYXJkQWN0aXZlID0gZmFsc2U7XHJcblx0XHRcdHRoaXMuc2VsZWN0ZWRUZXh0ID0gJyc7XHJcblx0XHRcdCg8SFRNTElucHV0RWxlbWVudD50aGlzLnNlbGVjdGVkVGV4dElucHV0UmVmLm5hdGl2ZUVsZW1lbnQpLnZhbHVlID0gJyc7XHJcblx0XHRcdHRoaXMuY29sbGFwc2UoKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHByaXZhdGUgc2VsZWN0SXRlbShpZDogc3RyaW5nKSB7XHJcblx0XHRsZXQgaXRlbSA9IHRoaXMuc2xpY2tNdWx0aVNlbGVjdFNlcnZpY2UuZ2V0U2VsZWN0ZWRJdGVtKHRoaXMudmlzaWJsZUl0ZW1zLCBpZCk7XHJcblxyXG5cdFx0aWYgKGl0ZW0pIHtcclxuXHJcblx0XHRcdGlmICh0aGlzLm9uU2VsZWN0KVxyXG5cdFx0XHRcdHRoaXMub25TZWxlY3QuZW1pdChpdGVtKTtcclxuXHJcblx0XHRcdGlmICghdGhpcy5zZWxlY3RlZElkcylcclxuXHRcdFx0XHR0aGlzLnNlbGVjdGVkSWRzID0gW107XHJcblxyXG5cdFx0XHR0aGlzLnNlbGVjdGVkSWRzLnB1c2goaWQpO1xyXG5cdFx0XHR0aGlzLnByb3BhZ2F0ZUNoYW5nZSh0aGlzLnNlbGVjdGVkSWRzKTtcclxuXHJcblx0XHRcdHRoaXMudmlzaWJsZUl0ZW1zID0gdGhpcy5zbGlja011bHRpU2VsZWN0U2VydmljZS5nZXRWaXNpYmxlSXRlbXModGhpcy5pdGVtcywgdGhpcy5zZWxlY3RlZElkcywgdGhpcy5pZEZpZWxkTmFtZSwgdGhpcy50ZXh0RmllbGROYW1lKTtcclxuXHRcdFx0dGhpcy5zZWxlY3RlZEl0ZW1zID0gdGhpcy5zbGlja011bHRpU2VsZWN0U2VydmljZS5nZXRTZWxlY3RlZEl0ZW1zKHRoaXMuaXRlbXMsIHRoaXMuc2VsZWN0ZWRJZHMsIHRoaXMuaWRGaWVsZE5hbWUsIHRoaXMudGV4dEZpZWxkTmFtZSk7XHJcblxyXG5cdFx0XHR0aGlzLnJlcG9zaXRpb24oKTtcclxuXHRcdFx0dGhpcy5zZWxlY3RlZFRleHQgPSAnJztcclxuXHRcdFx0KDxIVE1MSW5wdXRFbGVtZW50PnRoaXMuc2VsZWN0ZWRUZXh0SW5wdXRSZWYubmF0aXZlRWxlbWVudCkudmFsdWUgPSAnJztcclxuXHJcblx0XHRcdGlmICh0aGlzLnNpbmdsZVNlbGVjdCA9PT0gdHJ1ZSlcclxuXHRcdFx0XHR0aGlzLmNvbGxhcHNlKCk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRzZXRGb2N1cyhzaG93TW9iaWxlS2V5Ym9hcmQ6IGJvb2xlYW4gPSBmYWxzZSkge1xyXG5cdFx0KDxIVE1MRWxlbWVudD50aGlzLnNlbGVjdGVkVGV4dElucHV0UmVmLm5hdGl2ZUVsZW1lbnQpLmZvY3VzKCk7XHJcblx0XHRpZiAoc2hvd01vYmlsZUtleWJvYXJkID09PSB0cnVlKVxyXG5cdFx0XHR0aGlzLmtleWJvYXJkQWN0aXZlID0gdHJ1ZTtcclxuXHR9XHJcblxyXG5cdGFzeW5jIG9uRm9jdXMoKSB7XHJcblx0XHR0aGlzLnZpc2libGVJdGVtcyA9IHRoaXMuc2xpY2tNdWx0aVNlbGVjdFNlcnZpY2UuZ2V0VmlzaWJsZUl0ZW1zKHRoaXMuaXRlbXMsIHRoaXMuc2VsZWN0ZWRJZHMsIHRoaXMuaWRGaWVsZE5hbWUsIHRoaXMudGV4dEZpZWxkTmFtZSk7XHJcblx0XHR0aGlzLnNlbGVjdGVkSXRlbXMgPSB0aGlzLnNsaWNrTXVsdGlTZWxlY3RTZXJ2aWNlLmdldFNlbGVjdGVkSXRlbXModGhpcy5pdGVtcywgdGhpcy5zZWxlY3RlZElkcywgdGhpcy5pZEZpZWxkTmFtZSwgdGhpcy50ZXh0RmllbGROYW1lKTtcclxuXHJcblx0XHR0aGlzLmZpbHRlclRleHQgPSAnJztcclxuXHRcdCg8SFRNTElucHV0RWxlbWVudD50aGlzLnNlbGVjdGVkVGV4dElucHV0UmVmLm5hdGl2ZUVsZW1lbnQpLmZvY3VzKCk7XHJcblxyXG5cdFx0Ly8gVGhpcyBpcyBraW5kIG9mIGhhY2t5LCBidXQgaWYgb25Gb2N1cyBpcyBjYWxsZWQgYnkgY2xpY2tpbmcgdGhlIG11bHRpU2VsZWN0LCB0aGUgb25NdWx0aVNlbGVjdENsaWNrIGV2ZW50IGlzIGNhbGxlZCBhcyB3ZWxsXHJcblx0XHQvLyBUaGF0IGZ1bmN0aW9uIHdpbGwgZXhwYW5kIG9yIGNvbGxhcHNlLCBkZXBlbmRpbmcgb24gdGhlIHN0YXRlLiAgU2luY2UgdGhpcyBleHBhbmRzLCBpdCB0aGlua3MgaXQgbmVlZHMgdG8gY29sbGFwc2UuXHJcblx0XHQvLyBTbyBmYWtlIGl0IG91dCBhbmQgdGVsbCBpdCBOT1QgdG8gY29sbGFwc2UuICBCVVQsIGlmIHdlIGNhbWUgaW4gZnJvbSB0YWJiaW5nIGludG8gdGhlIGZpZWxkLCB0aGVuIGl0IHdvdWxkIG1lc3MgdXBcclxuXHRcdC8vIHRoZSBjbGljayBldmVudC4gIFNvIG9ubHkgd2FpdCBmb3IgMS8yIHNlY29uZC5cclxuXHRcdHRoaXMuc2tpcENsaWNrRXhwYW5kID0gdHJ1ZTtcclxuXHRcdHRoaXMuZXhwYW5kKCk7XHJcblx0XHRhd2FpdCBTbGlja1NsZWVwU2VydmljZS5zbGVlcCg1MDApO1xyXG5cdFx0dGhpcy5za2lwQ2xpY2tFeHBhbmQgPSBmYWxzZTtcclxuXHR9XHJcblxyXG5cdGFzeW5jIG9uS2V5RG93bihlOiBLZXlib2FyZEV2ZW50KSB7XHJcblx0XHRjb25zb2xlLmxvZyhlLCBlLmtleSk7XHJcblx0XHRpZiAoZS5rZXkgIT09ICdUYWInICYmXHJcblx0XHRcdGUua2V5ICE9PSAnRW50ZXInICYmXHJcblx0XHRcdGUua2V5ICE9PSAnRXNjYXBlJyAmJlxyXG5cdFx0XHRlLmtleSAhPT0gJ0JhY2tzcGFjZScgJiZcclxuXHRcdFx0ZS5rZXkgIT09ICdBcnJvd1VwJyAmJlxyXG5cdFx0XHRlLmtleSAhPT0gJ0Fycm93RG93bidcclxuXHRcdCkge1xyXG5cdFx0XHQvLyBJZiBGMSBpcyBwcmVzc2VkLCBrZXkgbGVuZ3RoIHdpbGwgYmUgMlxyXG5cdFx0XHRpZiAoZS5rZXkubGVuZ3RoID4gMSB8fCBlLmN0cmxLZXkgfHwgZS5hbHRLZXkpIHtcclxuXHRcdFx0XHRyZXR1cm4gZmFsc2U7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHRlLnN0b3BQcm9wYWdhdGlvbigpO1xyXG5cdFx0ZS5wcmV2ZW50RGVmYXVsdCgpO1xyXG5cclxuXHRcdGNvbnNvbGUubG9nKHRoaXMuaXNBbmRyb2lkKTtcclxuXHRcdC8vIElmIHRoaXMgaXMgYW5kcm9pZCwgaXQgd29uJ3QgcGFzcyB1cyBhbnkga2V5IGRhdGEgc28ganVzdCByZWFkIHRoZSBlbnRpcmUgaW5wdXQgZWxlbWVudFxyXG5cdFx0aWYgKHRoaXMuaXNBbmRyb2lkID09PSB0cnVlKSB7XHJcblx0XHRcdGF3YWl0IFNsaWNrU2xlZXBTZXJ2aWNlLnNsZWVwKCk7XHJcblxyXG5cdFx0XHR0aGlzLmZpbHRlclRleHQgPSAoPEhUTUxJbnB1dEVsZW1lbnQ+dGhpcy5zZWxlY3RlZFRleHRJbnB1dFJlZi5uYXRpdmVFbGVtZW50KS52YWx1ZTtcclxuXHRcdFx0dGhpcy5maWx0ZXJTZWFyY2goKTtcclxuXHRcdFx0cmV0dXJuO1xyXG5cdFx0fVxyXG5cclxuXHRcdC8vIFRhYi9lbnRlclxyXG5cdFx0aWYgKGUua2V5ID09PSAnVGFiJyB8fCBlLmtleSA9PT0gJ0VudGVyJykge1xyXG5cdFx0XHRpZiAodGhpcy5maWx0ZXJUZXh0ICYmIHRoaXMuc2VsZWN0ZWRJbmRleCAhPT0gbnVsbCAmJiB0aGlzLnNlbGVjdGVkSW5kZXggIT09IHVuZGVmaW5lZCkge1xyXG5cdFx0XHRcdHRoaXMuc2VsZWN0SXRlbSh0aGlzLnZpc2libGVJdGVtc1t0aGlzLnNlbGVjdGVkSW5kZXhdLmlkKTtcclxuXHRcdFx0XHR0aGlzLmZpbHRlclRleHQgPSAnJztcclxuXHRcdFx0XHR0aGlzLnNlbGVjdGVkSW5kZXggPSBudWxsO1xyXG5cdFx0XHRcdHRoaXMuY29sbGFwc2UoKTtcclxuXHRcdFx0XHRyZXR1cm4gZmFsc2U7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdHRoaXMuY29sbGFwc2UoKTtcclxuXHJcblx0XHRcdHRoaXMuZmlsdGVyVGV4dCA9ICcnO1xyXG5cdFx0XHR0aGlzLnNlbGVjdGVkVGV4dCA9ICcnO1xyXG5cdFx0XHQoPEhUTUxJbnB1dEVsZW1lbnQ+dGhpcy5zZWxlY3RlZFRleHRJbnB1dFJlZi5uYXRpdmVFbGVtZW50KS52YWx1ZSA9ICcnO1xyXG5cdFx0XHR0aGlzLnNlbGVjdGVkSW5kZXggPSBudWxsO1xyXG5cclxuXHRcdFx0cmV0dXJuIHRydWU7XHJcblx0XHR9XHJcblxyXG5cdFx0Ly8gRXNjXHJcblx0XHRpZiAoZS5rZXkgPT09ICdFc2NhcGUnKSB7XHJcblx0XHRcdHRoaXMuZmlsdGVyVGV4dCA9ICcnO1xyXG5cdFx0XHR0aGlzLnNlbGVjdGVkVGV4dCA9ICcnO1xyXG5cdFx0XHQoPEhUTUxJbnB1dEVsZW1lbnQ+dGhpcy5zZWxlY3RlZFRleHRJbnB1dFJlZi5uYXRpdmVFbGVtZW50KS52YWx1ZSA9ICcnO1xyXG5cdFx0XHR0aGlzLmNvbGxhcHNlKCk7XHJcblxyXG5cdFx0XHRyZXR1cm4gZmFsc2U7XHJcblx0XHR9XHJcblxyXG5cdFx0Ly8gQmFja3NwYWNlXHJcblx0XHRpZiAoZS5rZXkgPT09ICdCYWNrc3BhY2UnICYmIHRoaXMuZmlsdGVyVGV4dCkge1xyXG5cdFx0XHR0aGlzLmZpbHRlclRleHQgPSB0aGlzLmZpbHRlclRleHQuc3Vic3RyaW5nKDAsIHRoaXMuZmlsdGVyVGV4dC5sZW5ndGggLSAxKTtcclxuXHRcdFx0aWYgKHRoaXMuZmlsdGVyVGV4dC5sZW5ndGggPT09IDApIHtcclxuXHRcdFx0XHR0aGlzLnNlbGVjdGVkVGV4dCA9ICcnO1xyXG5cdFx0XHRcdCg8SFRNTElucHV0RWxlbWVudD50aGlzLnNlbGVjdGVkVGV4dElucHV0UmVmLm5hdGl2ZUVsZW1lbnQpLnZhbHVlID0gJyc7XHJcblx0XHRcdFx0dGhpcy5zZWxlY3RlZEluZGV4ID0gbnVsbDtcclxuXHRcdFx0XHR0aGlzLnZpc2libGVJdGVtcyA9IHRoaXMuc2xpY2tNdWx0aVNlbGVjdFNlcnZpY2UuZ2V0VmlzaWJsZUl0ZW1zKHRoaXMuaXRlbXMsIHRoaXMuc2VsZWN0ZWRJZHMsIHRoaXMuaWRGaWVsZE5hbWUsIHRoaXMudGV4dEZpZWxkTmFtZSk7XHJcblx0XHRcdFx0dGhpcy5zZWxlY3RlZEl0ZW1zID0gdGhpcy5zbGlja011bHRpU2VsZWN0U2VydmljZS5nZXRTZWxlY3RlZEl0ZW1zKHRoaXMuaXRlbXMsIHRoaXMuc2VsZWN0ZWRJZHMsIHRoaXMuaWRGaWVsZE5hbWUsIHRoaXMudGV4dEZpZWxkTmFtZSk7XHJcblx0XHRcdH1cclxuXHRcdFx0ZWxzZVxyXG5cdFx0XHRcdHRoaXMuZmlsdGVyU2VhcmNoKCk7XHJcblx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdH1cclxuXHJcblx0XHQvLyBBcnJvd3VwXHJcblx0XHRpZiAoZS5rZXkgPT09ICdBcnJvd1VwJykge1xyXG5cdFx0XHRpZiAodGhpcy5zZWxlY3RlZEluZGV4ID09PSBudWxsIHx8IHRoaXMuc2VsZWN0ZWRJbmRleCA9PT0gdW5kZWZpbmVkKVxyXG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRJbmRleCA9IDA7XHJcblxyXG5cdFx0XHRpZiAodGhpcy5zZWxlY3RlZEluZGV4ID4gMClcclxuXHRcdFx0XHR0aGlzLnNlbGVjdGVkSW5kZXgtLTtcclxuXHJcblx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdH1cclxuXHJcblx0XHQvLyBBcnJvd2Rvd25cclxuXHRcdGlmIChlLmtleSA9PT0gJ0Fycm93RG93bicpIHtcclxuXHRcdFx0aWYgKHRoaXMuc2VsZWN0ZWRJbmRleCA9PT0gbnVsbCB8fCB0aGlzLnNlbGVjdGVkSW5kZXggPT09IHVuZGVmaW5lZClcclxuXHRcdFx0XHR0aGlzLnNlbGVjdGVkSW5kZXggPSAtMTtcclxuXHJcblx0XHRcdGlmICghdGhpcy5leHBhbmRlZCB8fCAhdGhpcy52aXNpYmxlSXRlbXMpXHJcblx0XHRcdFx0dGhpcy5leHBhbmQoKTtcclxuXHJcblx0XHRcdGlmICh0aGlzLnNlbGVjdGVkSW5kZXggPCB0aGlzLnZpc2libGVJdGVtcy5sZW5ndGggLSAxKVxyXG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRJbmRleCsrO1xyXG5cclxuXHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cdFx0fVxyXG5cclxuXHRcdC8vIElmIEYxIGlzIHByZXNzZWQsIGtleSBsZW5ndGggd2lsbCBiZSAyXHJcblx0XHRpZiAoZS5rZXkubGVuZ3RoID4gMSB8fCBlLmN0cmxLZXkgfHwgZS5hbHRLZXkpXHJcblx0XHRcdHJldHVybiBmYWxzZTtcclxuXHJcblx0XHRpZiAoZS5rZXkgPj0gJyAnICYmIGUua2V5IDw9ICd+Jykge1xyXG5cdFx0XHR0aGlzLmZpbHRlclRleHQgKz0gZS5rZXk7XHJcblxyXG5cdFx0XHR0aGlzLmZpbHRlclNlYXJjaCgpO1xyXG5cdFx0fVxyXG5cclxuXHRcdHJldHVybiB0cnVlO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBhc3luYyBmaWx0ZXJTZWFyY2goKSB7XHJcblx0XHRpZiAoIXRoaXMuZXhwYW5kZWQpXHJcblx0XHRcdHRoaXMuZXhwYW5kKCk7XHJcblxyXG5cdFx0dGhpcy52aXNpYmxlSXRlbXMgPSB0aGlzLnNsaWNrTXVsdGlTZWxlY3RTZXJ2aWNlLmdldFZpc2libGVJdGVtcyh0aGlzLml0ZW1zLCB0aGlzLnNlbGVjdGVkSWRzLCB0aGlzLmlkRmllbGROYW1lLCB0aGlzLnRleHRGaWVsZE5hbWUpO1xyXG5cclxuXHRcdGlmICh0aGlzLnNlYXJjaFR5cGUgPT09IFNsaWNrTXVsdGlTZWxlY3RTZWFyY2hUeXBlcy5zdGFydHNXaXRoKSB7XHJcblx0XHRcdHRoaXMudmlzaWJsZUl0ZW1zID0gdGhpcy52aXNpYmxlSXRlbXMuZmlsdGVyKHggPT4geC50ZXh0LnRvTG93ZXJDYXNlKCkuaW5kZXhPZih0aGlzLmZpbHRlclRleHQudG9Mb3dlckNhc2UoKSkgPT09IDApO1xyXG5cdFx0XHRpZiAodGhpcy52aXNpYmxlSXRlbXMubGVuZ3RoID4gMCkge1xyXG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRJbmRleCA9IDA7XHJcblx0XHRcdFx0dGhpcy5zZWxlY3RlZFRleHQgPSB0aGlzLnZpc2libGVJdGVtc1swXS50ZXh0O1xyXG5cdFx0XHRcdGlmICh0aGlzLmlzQW5kcm9pZCA9PT0gZmFsc2UpIHtcclxuXHRcdFx0XHRcdGF3YWl0IFNsaWNrU2xlZXBTZXJ2aWNlLnNsZWVwKCk7XHJcblx0XHRcdFx0XHQoPEhUTUxJbnB1dEVsZW1lbnQ+dGhpcy5zZWxlY3RlZFRleHRJbnB1dFJlZi5uYXRpdmVFbGVtZW50KS52YWx1ZSA9IHRoaXMuc2VsZWN0ZWRUZXh0O1xyXG5cdFx0XHRcdFx0KDxIVE1MSW5wdXRFbGVtZW50PnRoaXMuc2VsZWN0ZWRUZXh0SW5wdXRSZWYubmF0aXZlRWxlbWVudCkuc2V0U2VsZWN0aW9uUmFuZ2UodGhpcy5maWx0ZXJUZXh0Lmxlbmd0aCwgdGhpcy5zZWxlY3RlZFRleHQubGVuZ3RoKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0ZWxzZSB7XHJcblx0XHRcdFx0dGhpcy5zZWxlY3RlZEluZGV4ID0gbnVsbDtcclxuXHRcdFx0XHRpZiAodGhpcy5pc0FuZHJvaWQgPT09IGZhbHNlKSB7XHJcblx0XHRcdFx0XHR0aGlzLnNlbGVjdGVkVGV4dCA9IHRoaXMuZmlsdGVyVGV4dDtcclxuXHRcdFx0XHRcdCg8SFRNTElucHV0RWxlbWVudD50aGlzLnNlbGVjdGVkVGV4dElucHV0UmVmLm5hdGl2ZUVsZW1lbnQpLnZhbHVlID0gdGhpcy5zZWxlY3RlZFRleHQ7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0ZWxzZSBpZiAodGhpcy5zZWFyY2hUeXBlID09PSBTbGlja011bHRpU2VsZWN0U2VhcmNoVHlwZXMuZWFjaFdvcmQpIHtcclxuXHRcdFx0dGhpcy52aXNpYmxlSXRlbXMgPSB0aGlzLnZpc2libGVJdGVtcy5maWx0ZXIoeCA9PiAoXCIgXCIgKyB4LnRleHQudG9Mb3dlckNhc2UoKSkuaW5kZXhPZihcIiBcIiArIHRoaXMuZmlsdGVyVGV4dC50b0xvd2VyQ2FzZSgpKSA+PSAwKTtcclxuXHRcdFx0aWYgKHRoaXMudmlzaWJsZUl0ZW1zLmxlbmd0aCA+IDApIHtcclxuXHRcdFx0XHR0aGlzLnNlbGVjdGVkSW5kZXggPSAwO1xyXG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRUZXh0ID0gdGhpcy52aXNpYmxlSXRlbXNbMF0udGV4dDtcclxuXHRcdFx0XHRpZiAodGhpcy5pc0FuZHJvaWQgPT09IGZhbHNlKSB7XHJcblx0XHRcdFx0XHRhd2FpdCBTbGlja1NsZWVwU2VydmljZS5zbGVlcCgpO1xyXG5cdFx0XHRcdFx0KDxIVE1MSW5wdXRFbGVtZW50PnRoaXMuc2VsZWN0ZWRUZXh0SW5wdXRSZWYubmF0aXZlRWxlbWVudCkudmFsdWUgPSB0aGlzLnNlbGVjdGVkVGV4dDtcclxuXHRcdFx0XHRcdCg8SFRNTElucHV0RWxlbWVudD50aGlzLnNlbGVjdGVkVGV4dElucHV0UmVmLm5hdGl2ZUVsZW1lbnQpLnNldFNlbGVjdGlvblJhbmdlKHRoaXMuZmlsdGVyVGV4dC5sZW5ndGgsIHRoaXMuc2VsZWN0ZWRUZXh0Lmxlbmd0aCk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdGVsc2Uge1xyXG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRUZXh0ID0gdGhpcy5maWx0ZXJUZXh0O1xyXG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRJbmRleCA9IG51bGw7XHJcblx0XHRcdH1cclxuXHJcblx0XHR9XHJcblxyXG5cdFx0dGhpcy5yZXBvc2l0aW9uKCk7XHJcblx0fVxyXG5cclxuXHRvbk11bHRpU2VsZWN0Q2xpY2tlZCgpIHtcclxuXHRcdGlmICh0aGlzLnNraXBDbGlja0V4cGFuZCA9PT0gdHJ1ZSkge1xyXG5cdFx0XHR0aGlzLnNraXBDbGlja0V4cGFuZCA9IGZhbHNlO1xyXG5cdFx0XHRyZXR1cm47XHJcblx0XHR9XHJcblxyXG5cdFx0KDxIVE1MSW5wdXRFbGVtZW50PnRoaXMuc2VsZWN0ZWRUZXh0SW5wdXRSZWYubmF0aXZlRWxlbWVudCkuZm9jdXMoKTtcclxuXHJcblx0XHRpZiAodGhpcy5leHBhbmRlZCA9PT0gZmFsc2UpXHJcblx0XHRcdHRoaXMuZXhwYW5kKCk7XHJcblx0XHRlbHNlXHJcblx0XHRcdHRoaXMuY29sbGFwc2UoKTtcclxuXHR9XHJcblxyXG5cdG9uSXRlbUNsaWNrKGl0ZW06IGFueSkge1xyXG5cdFx0dGhpcy5zZWxlY3RJdGVtKGl0ZW0uaWQpO1xyXG5cclxuXHRcdGlmICh0aGlzLmtleWJvYXJkQWN0aXZlID09PSB0cnVlKVxyXG5cdFx0XHQoPEhUTUxJbnB1dEVsZW1lbnQ+dGhpcy5zZWxlY3RlZFRleHRJbnB1dFJlZi5uYXRpdmVFbGVtZW50KS5mb2N1cygpO1xyXG5cdH1cclxuXHJcblx0b25SZW1vdmVJdGVtKGl0ZW06IGFueSkge1xyXG5cdFx0dGhpcy5zZWxlY3RlZElkcyA9IHRoaXMuc2VsZWN0ZWRJZHMuZmlsdGVyKGlkID0+IGlkICE9PSBpdGVtLmlkKTtcclxuXHRcdHRoaXMudmlzaWJsZUl0ZW1zID0gdGhpcy5zbGlja011bHRpU2VsZWN0U2VydmljZS5nZXRWaXNpYmxlSXRlbXModGhpcy5pdGVtcywgdGhpcy5zZWxlY3RlZElkcywgdGhpcy5pZEZpZWxkTmFtZSwgdGhpcy50ZXh0RmllbGROYW1lKTtcclxuXHRcdHRoaXMuc2VsZWN0ZWRJdGVtcyA9IHRoaXMuc2xpY2tNdWx0aVNlbGVjdFNlcnZpY2UuZ2V0U2VsZWN0ZWRJdGVtcyh0aGlzLml0ZW1zLCB0aGlzLnNlbGVjdGVkSWRzLCB0aGlzLmlkRmllbGROYW1lLCB0aGlzLnRleHRGaWVsZE5hbWUpO1xyXG5cclxuXHRcdHRoaXMucHJvcGFnYXRlQ2hhbmdlKHRoaXMuc2VsZWN0ZWRJZHMpO1xyXG5cdH1cclxufSIsIjxkaXYgI2NvbnRhaW5lckRpdiBpZD1cInNsaWNrLW11bHRpLXNlbGVjdF97e3V1aWR9fVwiIGF0dHIuZGF0YS11dWlkPVwie3t1dWlkfX1cIiBjbGFzcz1cInNsaWNrLW11bHRpLXNlbGVjdFwiIFtjbGFzcy5tb2JpbGVdPVwiaXNNb2JpbGUgPT09IHRydWVcIiBbY2xhc3Mub3Blbl09XCJleHBhbmRlZFwiPlxyXG5cdDxkaXYgY2xhc3M9XCJzbGljay1tdWx0aS1zZWxlY3RfaW5wdXQtY29udGFpbmVyXCI+XHJcblx0XHQ8ZGl2ICpuZ0lmPVwiZGlzYWJsZWQgPT09IGZhbHNlXCIgc3R5bGU9XCJjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDsgZmxleC1ncm93OiAxO1wiIFtuZ0NsYXNzXT1cInsgJ3NsaWNrLW11bHRpLXNlbGVjdF9tb2JpbGUnOiBpc01vYmlsZSA9PT0gdHJ1ZSB9XCIgKGNsaWNrKT1cIm9uTXVsdGlTZWxlY3RDbGlja2VkKClcIj5cclxuXHRcdFx0PGRpdiAqbmdGb3I9XCJsZXQgc2VsZWN0ZWRJdGVtIG9mIHNlbGVjdGVkSXRlbXNcIiBjbGFzcz1cInNsaWNrLW11bHRpLXNlbGVjdF9zZWxlY3RlZC1pdGVtIGNhcmRcIj48ZGl2IGNsYXNzPVwic2xpY2stbXVsdGktc2VsZWN0X3JlbW92ZVwiIChjbGljayk9XCJvblJlbW92ZUl0ZW0oc2VsZWN0ZWRJdGVtKVwiPjxpIGNsYXNzPVwiZmFzIGZhLXRpbWVzLWNpcmNsZSBiZy13aGl0ZSB0ZXh0LWRhbmdlclwiPjwvaT48L2Rpdj57e3NlbGVjdGVkSXRlbS50ZXh0fX08L2Rpdj5cclxuXHRcdFx0PGlucHV0ICNzZWxlY3RlZFRleHRJbnB1dFJlZiAqbmdJZj1cIiFpc01vYmlsZVwiIFthdHRyLnRhYmluZGV4XT1cInRhYmluZGV4XCIgW25nQ2xhc3NdPVwieydzbGljay1tdWx0aS1zZWxlY3Rfc2hvdy1zZWxlY3RlZC10ZXh0JzogKGtleWJvYXJkQWN0aXZlIHx8IChzZWxlY3RlZFRleHQgJiYgc2VsZWN0ZWRUZXh0Lmxlbmd0aCA+IDApKSB9XCIgKGtleWRvd24pPVwib25LZXlEb3duKCRldmVudClcIiAoZm9jdXMpPVwib25Gb2N1cygpXCIgbmctZGlzYWJsZWQ9J2Rpc2FibGVkJyByZWFkb25seSBbcGxhY2Vob2xkZXJdPSdwbGFjZWhvbGRlcicgLz5cclxuXHRcdFx0PGlucHV0ICNzZWxlY3RlZFRleHRJbnB1dFJlZiAqbmdJZj1cImlzTW9iaWxlID09PSB0cnVlXCIgW25nQ2xhc3NdPVwieydzbGljay1tdWx0aS1zZWxlY3Rfc2hvdy1zZWxlY3RlZC10ZXh0JzogKGtleWJvYXJkQWN0aXZlIHx8IChzZWxlY3RlZFRleHQgJiYgc2VsZWN0ZWRUZXh0Lmxlbmd0aCA+IDApKSB9XCIgKGtleWRvd24pPVwib25LZXlEb3duKCRldmVudClcIiAoZm9jdXMpPVwib25Gb2N1cygpXCIgLz5cclxuXHRcdDwvZGl2PlxyXG5cdFx0PGRpdiAqbmdJZj1cImRpc2FibGVkID09PSBmYWxzZSAmJiBpc01vYmlsZSA9PT0gdHJ1ZVwiIGNsYXNzPVwic2xpY2stbXVsdGktc2VsZWN0X21vYmlsZS1jb250YWluZXJcIj5cclxuXHRcdFx0PGkgY2xhc3M9XCJmYXIgZmEta2V5Ym9hcmRcIiBzdHlsZT1cImN1cnNvcjogcG9pbnRlclwiIChjbGljayk9XCJvbktleWJvYXJkSWNvbkNsaWNrZWQoKVwiPjwvaT5cclxuXHRcdDwvZGl2PlxyXG5cdDwvZGl2PlxyXG5cclxuXHQ8ZGl2ICpuZ0lmPVwiZGlzYWJsZWQgPT09IHRydWVcIiBjbGFzcz0naW5wdXQtZ3JvdXAnPlxyXG5cdFx0PGRpdiAqbmdGb3I9XCJsZXQgc2VsZWN0ZWRJdGVtIG9mIHNlbGVjdGVkSXRlbXNcIiBjbGFzcz1cInNsaWNrLW11bHRpLXNlbGVjdF9zZWxlY3RlZC1pdGVtIGNhcmRcIj57e3NlbGVjdGVkSXRlbS50ZXh0fX08L2Rpdj5cclxuXHQ8L2Rpdj5cclxuXHJcblx0PHVsICNtdWx0aVNlbGVjdExpc3QgaWQ9XCJzbGljay1tdWx0aS1zZWxlY3QtbGlzdF97e3V1aWR9fVwiIGNsYXNzPSdzbGljay1tdWx0aS1zZWxlY3QtbGlzdC1ncm91cCBkcm9wZG93bi1tZW51JyBbc3R5bGUud2lkdGhdPVwibGlzdEdyb3VwV2lkdGhcIiBbc3R5bGUudmlzaWJpbGl0eV09XCIoZXhwYW5kZWQgPT09IHRydWUpID8gJ3Zpc2libGUnIDogJ2hpZGRlbidcIiBbc3R5bGUub3BhY2l0eV09XCIoZXhwYW5kZWQgPT09IHRydWUpID8gJzEnIDogJzAnXCIgW3N0eWxlLm1heC1oZWlnaHRdPVwiaGVpZ2h0XCIgW3N0eWxlLndpZHRoLnB4XT1cImxpc3RHcm91cFdpZHRoXCIgW3N0eWxlLmxlZnQucHhdPVwibGVmdFwiIFtzdHlsZS50b3AucHhdPVwidG9wXCI+XHJcblx0XHQ8bGkgKm5nRm9yPVwibGV0IGl0ZW0gb2YgdmlzaWJsZUl0ZW1zOyBsZXQgaW5kZXggPSBpbmRleDtcIiAobW91c2VvdmVyKT1cInNlbGVjdGVkSW5kZXggPSBpbmRleFwiIChjbGljayk9XCJvbkl0ZW1DbGljayhpdGVtKVwiIFtjbGFzcy5jYXJkLWhlYWRlcl09XCJzZWxlY3RlZEluZGV4ID09PSBpbmRleFwiIGNsYXNzPVwiZHJvcGRvd24taXRlbSBzbGljay1tdWx0aS1zZWxlY3RfbGlzdC1pdGVtXCI+e3tpdGVtLnRleHR9fTwvbGk+XHJcblx0PC91bD5cclxuPC9kaXY+Il19
|
|
@@ -40,10 +40,10 @@ export class SlickInitService {
|
|
|
40
40
|
SlickInitService.getParams().errorLog = errorLog;
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
|
-
SlickInitService.version = "5.0.
|
|
43
|
+
SlickInitService.version = "5.0.3";
|
|
44
44
|
/** @nocollapse */ SlickInitService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SlickInitService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
45
45
|
/** @nocollapse */ SlickInitService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SlickInitService });
|
|
46
46
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SlickInitService, decorators: [{
|
|
47
47
|
type: Injectable
|
|
48
48
|
}], ctorParameters: function () { return []; } });
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpY2staW5pdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvdXRpbHMvc2xpY2staW5pdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRTNDLE1BQU0sT0FBTyxlQUFlO0lBQTVCO1FBR0MsYUFBUSxHQUFXLFNBQVMsQ0FBQztJQUc5QixDQUFDO0NBQUE7QUFHRCxNQUFNLE9BQU8sZ0JBQWdCO0lBRzVCLGdCQUFnQixDQUFDO0lBR2pCLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBMkI7UUFDdEMsT0FBTyxDQUFDLElBQUksQ0FBQyw0QkFBNEIsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUNyRSxVQUFVLENBQUMsT0FBTyxHQUFHLGdCQUFnQixDQUFDLE9BQU8sQ0FBQztRQUN4QyxNQUFPLENBQUMscUJBQXFCLEdBQUcsVUFBVSxDQUFDO1FBRWpELE9BQWEsTUFBTyxDQUFDLHFCQUFxQixDQUFDO0lBQzVDLENBQUM7SUFFRCxNQUFNLENBQUMsU0FBUztRQUNmLElBQUksQ0FBTyxNQUFPLENBQUMscUJBQXFCLEVBQUU7WUFDekMsTUFBTSxhQUFhLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQztZQUM1QyxhQUFhLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQztZQUMxQixNQUFPLENBQUMscUJBQXFCLEdBQUcsYUFBYSxDQUFDO1NBQ3BEO1FBRUQsT0FBOEIsTUFBTyxDQUFDLHFCQUFxQixDQUFDO0lBQzdELENBQUM7SUFFRCxNQUFNLENBQUMsV0FBVztRQUNqQixPQUFPLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQztJQUM5QyxDQUFDO0lBRUQsTUFBTSxDQUFDLFdBQVcsQ0FBQyxlQUF1QjtRQUN6QyxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLEdBQUcsZUFBZSxDQUFDO0lBQ3pELENBQUM7SUFFRCxNQUFNLENBQUMsV0FBVztRQUNqQixPQUFPLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQztJQUM5QyxDQUFDO0lBRUQsTUFBTSxDQUFDLFdBQVcsQ0FBQyxRQUFnQjtRQUNsQyxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQ2xELENBQUM7SUFFRCxNQUFNLENBQUMsV0FBVztRQUNqQixPQUFPLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQztJQUM5QyxDQUFDO0lBRUQsTUFBTSxDQUFDLFdBQVcsQ0FBQyxRQUFnQjtRQUNsQyxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQ2xELENBQUM7O0FBN0NNLHdCQUFPLEdBQUcsT0FBTyxDQUFDO2dJQURiLGdCQUFnQjtvSUFBaEIsZ0JBQWdCOzJGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBTbGlja0luaXRQYXJhbXMge1xyXG5cdGF0dGFjaFRvOiBzdHJpbmc7XHJcblx0cGxhdGZvcm06IHN0cmluZztcclxuXHRlcnJvckxvZzogc3RyaW5nID0gXCJtaW5pbWFsXCI7XHJcblx0dmVyc2lvbjogc3RyaW5nO1xyXG5cclxufVxyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgU2xpY2tJbml0U2VydmljZSB7XHRcclxuXHRzdGF0aWMgdmVyc2lvbiA9IFwiNS4wLjNcIjtcclxuXHJcblx0Y29uc3RydWN0b3IoKSB7IH1cclxuXHJcblxyXG5cdHN0YXRpYyBpbml0KGluaXRQYXJhbXM6IFNsaWNrSW5pdFBhcmFtcyk6IFNsaWNrSW5pdFBhcmFtcyB7XHJcblx0XHRjb25zb2xlLmluZm8oYFNsaWNrIENvbXBvbmVudHMgVmVyc2lvbiAke1NsaWNrSW5pdFNlcnZpY2UudmVyc2lvbn1gKTtcclxuXHRcdGluaXRQYXJhbXMudmVyc2lvbiA9IFNsaWNrSW5pdFNlcnZpY2UudmVyc2lvbjtcclxuXHRcdCg8YW55PndpbmRvdykuc2xpY2tDb21wb25lbnRzUGFyYW1zID0gaW5pdFBhcmFtcztcclxuXHJcblx0XHRyZXR1cm4gKDxhbnk+d2luZG93KS5zbGlja0NvbXBvbmVudHNQYXJhbXM7XHJcblx0fVxyXG5cclxuXHRzdGF0aWMgZ2V0UGFyYW1zKCk6IFNsaWNrSW5pdFBhcmFtcyB7XHJcblx0XHRpZiAoISg8YW55PndpbmRvdykuc2xpY2tDb21wb25lbnRzUGFyYW1zKSB7XHJcblx0XHRcdGNvbnN0IGRlZmF1bHRQYXJhbXMgPSBuZXcgU2xpY2tJbml0UGFyYW1zKCk7XHJcblx0XHRcdGRlZmF1bHRQYXJhbXMuYXR0YWNoVG8gPSBcImJvZHlcIjtcclxuXHRcdFx0KDxhbnk+d2luZG93KS5zbGlja0NvbXBvbmVudHNQYXJhbXMgPSBkZWZhdWx0UGFyYW1zO1xyXG5cdFx0fVxyXG5cclxuXHRcdHJldHVybiA8U2xpY2tJbml0UGFyYW1zPig8YW55PndpbmRvdykuc2xpY2tDb21wb25lbnRzUGFyYW1zO1xyXG5cdH1cclxuXHJcblx0c3RhdGljIGdldEF0dGFjaFRvKCk6IHN0cmluZyB7XHJcblx0XHRyZXR1cm4gU2xpY2tJbml0U2VydmljZS5nZXRQYXJhbXMoKS5hdHRhY2hUbztcclxuXHR9XHJcblxyXG5cdHN0YXRpYyBzZXRBdHRhY2hUbyhhdHRhY2hUb0VsZW1lbnQ6IHN0cmluZykge1xyXG5cdFx0U2xpY2tJbml0U2VydmljZS5nZXRQYXJhbXMoKS5hdHRhY2hUbyA9IGF0dGFjaFRvRWxlbWVudDtcclxuXHR9XHJcblxyXG5cdHN0YXRpYyBnZXRQbGF0Zm9ybSgpOiBzdHJpbmcge1xyXG5cdFx0cmV0dXJuIFNsaWNrSW5pdFNlcnZpY2UuZ2V0UGFyYW1zKCkucGxhdGZvcm07XHJcblx0fVxyXG5cclxuXHRzdGF0aWMgc2V0UGxhdGZvcm0ocGxhdGZvcm06IHN0cmluZykge1xyXG5cdFx0U2xpY2tJbml0U2VydmljZS5nZXRQYXJhbXMoKS5wbGF0Zm9ybSA9IHBsYXRmb3JtO1xyXG5cdH1cclxuXHJcblx0c3RhdGljIGdldEVycm9yTG9nKCk6IHN0cmluZyB7XHJcblx0XHRyZXR1cm4gU2xpY2tJbml0U2VydmljZS5nZXRQYXJhbXMoKS5lcnJvckxvZztcclxuXHR9XHJcblxyXG5cdHN0YXRpYyBzZXRFcnJvckxvZyhlcnJvckxvZzogc3RyaW5nKSB7XHJcblx0XHRTbGlja0luaXRTZXJ2aWNlLmdldFBhcmFtcygpLmVycm9yTG9nID0gZXJyb3JMb2c7XHJcblx0fVxyXG59XHJcblxyXG4iXX0=
|
|
@@ -54,7 +54,7 @@ class SlickInitService {
|
|
|
54
54
|
SlickInitService.getParams().errorLog = errorLog;
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
|
-
SlickInitService.version = "5.0.
|
|
57
|
+
SlickInitService.version = "5.0.3";
|
|
58
58
|
/** @nocollapse */ SlickInitService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SlickInitService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
59
59
|
/** @nocollapse */ SlickInitService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SlickInitService });
|
|
60
60
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SlickInitService, decorators: [{
|
|
@@ -7115,6 +7115,7 @@ class SlickMultiSelectComponent {
|
|
|
7115
7115
|
}
|
|
7116
7116
|
onKeyDown(e) {
|
|
7117
7117
|
return __awaiter(this, void 0, void 0, function* () {
|
|
7118
|
+
console.log(e, e.key);
|
|
7118
7119
|
if (e.key !== 'Tab' &&
|
|
7119
7120
|
e.key !== 'Enter' &&
|
|
7120
7121
|
e.key !== 'Escape' &&
|
|
@@ -7128,6 +7129,7 @@ class SlickMultiSelectComponent {
|
|
|
7128
7129
|
}
|
|
7129
7130
|
e.stopPropagation();
|
|
7130
7131
|
e.preventDefault();
|
|
7132
|
+
console.log(this.isAndroid);
|
|
7131
7133
|
// If this is android, it won't pass us any key data so just read the entire input element
|
|
7132
7134
|
if (this.isAndroid === true) {
|
|
7133
7135
|
yield SlickSleepService.sleep();
|