ps-toolkit-ui 1.6.83 → 1.6.86
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/ps-toolkit-ui.umd.js +48 -57
- package/bundles/ps-toolkit-ui.umd.js.map +1 -1
- package/bundles/ps-toolkit-ui.umd.min.js +1 -1
- package/bundles/ps-toolkit-ui.umd.min.js.map +1 -1
- package/esm2015/lib/classes/form.class.js +2 -2
- package/esm2015/lib/components/form/plaque/form.plaque.component.js +9 -30
- package/esm2015/lib/components/form/plaque/select/form.plaque.select.component.js +34 -27
- package/esm2015/lib/components/form/textbox/form.textbox.component.js +7 -2
- package/fesm2015/ps-toolkit-ui.js +48 -57
- package/fesm2015/ps-toolkit-ui.js.map +1 -1
- package/lib/components/form/textbox/form.textbox.component.d.ts +1 -0
- package/package.json +1 -1
- package/ps-toolkit-ui.metadata.json +1 -1
|
@@ -271,7 +271,7 @@ export class InputClass {
|
|
|
271
271
|
this.level = null;
|
|
272
272
|
this.modal = null;
|
|
273
273
|
this.nameFun = null;
|
|
274
|
-
this.onFocusOut =
|
|
274
|
+
this.onFocusOut = null;
|
|
275
275
|
this.changeType = () => { };
|
|
276
276
|
this.setValue = (v, isEdit) => { this.value = v; };
|
|
277
277
|
this.setSearch = () => { };
|
|
@@ -467,4 +467,4 @@ export class AccordionRowClass {
|
|
|
467
467
|
}, 100);
|
|
468
468
|
}
|
|
469
469
|
}
|
|
470
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiJEOi9Qcm9qZWN0cy9Qc1Rvb2xraXQvVUkvcHJvamVjdHMvcHMtdG9vbGtpdC11aS9zcmMvIiwic291cmNlcyI6WyJsaWIvY2xhc3Nlcy9mb3JtLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQWMsU0FBUyxFQUFFLE1BQU0sRUFBQyxNQUFNLGNBQWMsQ0FBQztBQUN0RSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRTdDLE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBRTVCLE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBRTVCLE1BQU0sT0FBTyxRQUFRO0lBQ25CLFlBQVksSUFBWTtRQUt4QixZQUFPLEdBQUcsR0FBRyxDQUFDO1FBRWQsVUFBSyxHQUFlLElBQUksQ0FBQztRQUN6QixZQUFPLEdBQWUsSUFBSSxDQUFDO1FBQzNCLFdBQU0sR0FBbUMsSUFBSSxDQUFDO1FBQzlDLFVBQUssR0FBRyxHQUFHLEVBQUU7WUFDWCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDNUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUM7WUFDbkIsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFDO2dCQUNmLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQzthQUNoQjtZQUNELElBQUksQ0FBQyxRQUFRLEdBQUcsV0FBVyxDQUFFLEdBQUcsRUFBRTtnQkFDaEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQztnQkFDbkQsSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLENBQUMsRUFBQztvQkFDeEIsYUFBYSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztvQkFDN0IsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFDO3dCQUNiLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztxQkFDZDtvQkFDRCxPQUFPO2lCQUNSO2dCQUNELElBQUksTUFBTSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUM7b0JBQ3BDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUMsQ0FBQztvQkFDM0MsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUM7b0JBQy9CLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2lCQUNuQjtnQkFDRCxJQUFJLENBQUMsVUFBVSxJQUFJLEdBQUcsQ0FBQztZQUN6QixDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDVixDQUFDLENBQUE7UUEvQkMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztJQUNyQyxDQUFDO0NBK0JGO0FBQ0QsTUFBTSxPQUFPLFNBQVM7SUFDcEIsWUFBWSxXQUFnQixFQUFFLENBQW9CLEVBQUUsT0FBZSxJQUFJLEVBQUUsYUFBc0IsSUFBSSxFQUN2RixNQUFjLElBQUksRUFBRSxNQUFjLElBQUk7UUFZbEQsZ0JBQVcsR0FBUSxJQUFJLENBQUM7UUFFeEIsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUNmLFlBQU8sR0FBVyxJQUFJLENBQUM7UUFLdkIsV0FBTSxHQUFXLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDN0IsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUVoQixVQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ2QsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFDcEIsV0FBTSxHQUFpQixFQUFFLENBQUM7UUFDMUIsa0JBQWEsR0FBcUIsSUFBSSxDQUFDO1FBQ3ZDLGNBQVMsR0FBcUIsSUFBSSxDQUFDO1FBQ25DLGFBQVEsR0FBcUIsSUFBSSxDQUFDO1FBQ2xDLFdBQU0sR0FBcUIsSUFBSSxDQUFDO1FBQ2hDLG1CQUFjLEdBQWtCLElBQUksQ0FBQztRQUNyQyxnQkFBVyxHQUFlLElBQUksQ0FBQztRQTlCN0IsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7UUFDL0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDWCxJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztRQUNmLElBQUksQ0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1FBQzdCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztJQUN0QixDQUFDO0lBd0JELFFBQVEsQ0FBQyxHQUFHO1FBQ1YsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUN2RixVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ3JCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO2dCQUNyQixJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUM7b0JBQ2QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztpQkFDckI7WUFDSCxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDVixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDRCxNQUFNLENBQUMsUUFBUSxHQUFHLElBQUk7UUFDcEIsSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBQ0QsS0FBSztRQUNILElBQUksS0FBSyxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUN4QixJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxFQUFFO2dCQUNsQixJQUFJLEtBQUssRUFBQztvQkFDUixHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7aUJBQ2I7Z0JBQ0QsS0FBSyxHQUFHLEtBQUssQ0FBQzthQUNmO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFDRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQzFCLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUN4QixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFDRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDbkUsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2QsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsVUFBVSxDQUFDLFNBQVMsRUFBRSxJQUFhLEVBQUUsRUFBRSxHQUFHLElBQUk7UUFDNUMsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM3RCxJQUFJLENBQUMsQ0FBQyxFQUFDO1lBQ0wsT0FBTztTQUNSO1FBQ0QsQ0FBQyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO1FBQ2xDLENBQUMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN2RixDQUFDO0lBQ0QsVUFBVSxDQUFDLElBQUksR0FBRyxNQUFNLEVBQUUsR0FBRyxHQUFHLE9BQU8sRUFBRSxLQUFLLEdBQUcsSUFBSSxFQUFFLFFBQVEsR0FBRyxJQUFJO1FBQ3BFLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFDO1lBQ2xFLE9BQU87U0FDUjtRQUNELE1BQU0sRUFBRSxHQUFHLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFNBQVMsQ0FBQyxLQUFLLEVBQzdFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDdEMsTUFBTSxJQUFJLEdBQUcsSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxxQkFBcUIsRUFBRSxTQUFTLENBQUMsTUFBTSxFQUNqRyxxQkFBcUIsR0FBRyxHQUFHLENBQUMsQ0FBQztRQUMvQixJQUFJLENBQUMsT0FBTyxHQUFHLEdBQUcsRUFBRTtZQUNsQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3hCLENBQUMsQ0FBQztRQUNGLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZCLElBQUksS0FBSyxFQUFDO1lBQ1IsTUFBTSxLQUFLLEdBQUcsSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxzQkFBc0IsRUFBRSxTQUFTLENBQUMsTUFBTSxFQUNuRyxrQ0FBa0MsQ0FBQyxDQUFDO1lBQ3RDLEtBQUssQ0FBQyxPQUFPLEdBQUcsR0FBRyxFQUFFO2dCQUNuQixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUM7b0JBQ2IsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO2lCQUNkO3FCQUFJO29CQUNILElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztpQkFDcEI7WUFDSCxDQUFDLENBQUM7WUFDRixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN6QjtJQUNILENBQUM7SUFDRCxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUk7UUFDWCxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUM7WUFDL0QsSUFBSSxDQUFDLElBQUksSUFBSSxFQUFDO2dCQUNaLENBQUMsR0FBRyxFQUFFLENBQUM7YUFDUjtTQUNGO2FBQUk7WUFDSCxJQUFJLENBQUMsSUFBSSxJQUFJLEVBQUM7Z0JBQ1osQ0FBQyxHQUFHLElBQUksUUFBUSxFQUFFLENBQUM7YUFDcEI7U0FDRjtRQUNELE1BQU0sSUFBSSxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFO1lBQ3JCLElBQUksQ0FBQyxZQUFZLFFBQVEsRUFBQztnQkFDeEIsSUFBSSxFQUFFLFlBQVksS0FBSyxFQUFDO29CQUN0QixLQUFLLE1BQU0sQ0FBQyxJQUFJLEVBQUUsRUFBQzt3QkFDakIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7cUJBQ2hCO2lCQUNGO3FCQUFJO29CQUNILENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2lCQUNqQjthQUNGO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVMsRUFBRTtvQkFDdEIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2lCQUNqQjtxQkFBTTtvQkFDTCxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxLQUFLLEVBQUM7d0JBQ3hCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7cUJBQ2Y7eUJBQU07d0JBQ0wsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO3FCQUNuQjtpQkFDRjthQUNGO1FBQ0gsQ0FBQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDeEIsTUFBTSxFQUFFLEdBQUcsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ3RCLElBQUksRUFBRSxLQUFLLElBQUksRUFBQztnQkFDZCxJQUFJLE9BQU8sRUFBRSxLQUFLLFFBQVEsSUFBSSxDQUFDLENBQUMsRUFBRSxZQUFZLEtBQUssQ0FBQyxFQUFDO29CQUNuRCxLQUFLLE1BQU0sQ0FBRSxHQUFHLEVBQUUsS0FBSyxDQUFFLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsRUFBRTt3QkFDL0MsSUFBSSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztxQkFDbEI7aUJBQ0Y7cUJBQU07b0JBQ0wsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7aUJBQ3BCO2FBQ0Y7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUNELElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSTtRQUNYLElBQUksQ0FBQyxJQUFJLElBQUksRUFBQztZQUNaLENBQUMsR0FBRyxFQUFFLENBQUM7U0FDUjtRQUNELElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3hCLE1BQU0sRUFBRSxHQUFHLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUN0QixJQUFJLEVBQUUsS0FBSyxJQUFJLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBQztnQkFDM0IsSUFBSSxFQUFFLFlBQVksS0FBSyxFQUFDO29CQUN0QixLQUFLLE1BQU0sQ0FBQyxJQUFJLEVBQUUsRUFBQzt3QkFDakIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7cUJBQ2pCO2lCQUNGO3FCQUFJO29CQUNILENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO2lCQUNsQjthQUNGO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLENBQUMsQ0FBQztJQUNYLENBQUM7SUFDRCxPQUFPLENBQUMsQ0FBQztRQUNQLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3hCLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM5QixJQUFJLEdBQUcsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLE9BQU8sRUFBQztnQkFDakMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUM7Z0JBQzdCLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQzthQUM1QztpQkFBSyxJQUFJLEdBQUcsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLGFBQWEsRUFBQztnQkFDN0MsTUFBTSxHQUFHLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ2pELE1BQU0sR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO2dCQUNyRCxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQzthQUN6RDtpQkFBSyxJQUFJLEdBQUcsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLEtBQUssSUFBSSxFQUFFLElBQUksSUFBSSxFQUFDO2dCQUNuRCxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQzthQUN4QjtZQUNELElBQUksR0FBRyxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsd0JBQXdCLElBQUksR0FBRyxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsa0JBQWtCLEVBQUM7Z0JBQy9GLE1BQU0sR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNqRCxHQUFHLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ3BCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8sVUFBVTtJQUNyQixZQUFZLFdBQWdCLEVBQUUsQ0FBb0IsRUFBRSxJQUFZLEVBQUUsT0FBZSxJQUFJLEVBQ3pFLE9BQWtCLFNBQVMsQ0FBQyxJQUFJLEVBQUUsTUFBYyxFQUFFLEVBQUUsS0FBSyxHQUFHLElBQUksRUFDaEUsV0FBb0IsSUFBSSxFQUFFLFNBQVMsR0FBRyxDQUFDLENBQUMsRUFBRSxTQUFTLEdBQUcsQ0FBQyxDQUFDO1FBdUJwRSxnQkFBVyxHQUFRLElBQUksQ0FBQztRQUd4QixRQUFHLEdBQUcsSUFBSSxDQUFDO1FBQ1gsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFDbkIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUVsQixnQkFBVyxHQUFXLElBQUksQ0FBQztRQUkzQixXQUFNLEdBQUcsS0FBSyxDQUFDO1FBRWYsZ0JBQVcsR0FBVyxJQUFJLENBQUM7UUFJM0IsWUFBTyxHQUFHLElBQUksQ0FBQztRQUdmLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFDdkIsa0JBQWEsR0FBRyxJQUFJLENBQUM7UUFDckIsbUJBQWMsR0FBRyxJQUFJLENBQUM7UUFDdEIsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFDcEIsVUFBSyxHQUFXLElBQUksQ0FBQztRQUNyQixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLGNBQVMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNmLGNBQVMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNmLFVBQUssR0FBZSxJQUFJLENBQUM7UUFDekIsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUNoQixXQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ2QscUJBQWdCLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLDBCQUFxQixHQUFHLElBQUksQ0FBQztRQUM3QixrQkFBYSxHQUFrQixJQUFJLENBQUM7UUFDcEMsYUFBUSxHQUFhLElBQUksQ0FBQztRQUMxQixZQUFPLEdBQWtCLElBQUksQ0FBQztRQUM5QixZQUFPLEdBQWtCLElBQUksQ0FBQztRQUM5QixjQUFTLEdBQWdCLElBQUksQ0FBQztRQUM5QixZQUFPLEdBQWtCLEVBQUUsQ0FBQztRQUM1QixVQUFLLEdBQWUsSUFBSSxDQUFDO1FBQ3pCLFFBQUcsR0FBZSxJQUFJLENBQUM7UUFDdkIsV0FBTSxHQUFXLElBQUksQ0FBQztRQUV0QixVQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ1gsYUFBUSxHQUFHLFFBQVEsQ0FBQztRQUNwQixhQUFRLEdBQW9CLElBQUksQ0FBQztRQUNqQyxVQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDWCxZQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ2YsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixTQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2IsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixjQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFDZixRQUFHLEdBQUcsSUFBSSxDQUFDO1FBQ1gsU0FBSSxHQUFHLEVBQUUsQ0FBQztRQUNWLFVBQUssR0FBRyxDQUFDLENBQUM7UUFDVixVQUFLLEdBQUcsSUFBSSxDQUFDO1FBQ2IsVUFBSyxHQUFlLElBQUksQ0FBQztRQUN6QixZQUFPLEdBQWdCLElBQUksQ0FBQztRQUM1QixlQUFVLEdBQWdCLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUVuQyxlQUFVLEdBQTJCLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUM5QyxhQUFRLEdBQXdCLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkUsY0FBUyxHQUFnQixHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7UUFDbEMsVUFBSyxHQUFlLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2pELGFBQVEsR0FBZSxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7UUFDaEMsU0FBSSxHQUFjLEdBQUcsRUFBRTtZQUNyQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDcEIsQ0FBQyxDQUFBO1FBQ0QsWUFBTyxHQUFrQixHQUFHLEVBQUU7WUFDNUIsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDLENBQUE7UUE5RkMsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7UUFDL0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDWCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQztRQUNmLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxHQUFHLENBQUMsQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUs7WUFDNUgsU0FBUyxDQUFDLFlBQVksRUFBRSxTQUFTLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxVQUFVLEVBQUUsU0FBUyxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDckosSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQy9JLElBQUksQ0FBQyxZQUFZLEdBQUcsUUFBUSxDQUFDO1FBQzdCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxjQUFjLEdBQUcsUUFBUSxDQUFDO1FBQy9CLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxLQUFLLFNBQVMsQ0FBQyxNQUFNLElBQUksSUFBSSxLQUFLLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzNFLElBQUksS0FBSyxTQUFTLENBQUMsWUFBWSxJQUFJLElBQUksS0FBSyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDdkUsSUFBSSxLQUFLLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQzVDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxLQUFLLFNBQVMsQ0FBQyxNQUFNLElBQUksSUFBSSxLQUFLLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzNFLElBQUksS0FBSyxTQUFTLENBQUMsWUFBWSxJQUFJLElBQUksS0FBSyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDdkUsSUFBSSxLQUFLLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQzlDLENBQUM7SUE4REQsS0FBSyxDQUFDLGNBQXVCLEtBQUssSUFBUyxDQUFDO0lBWTVDLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxFQUFFLE9BQW1CLElB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LEtBQUssQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDMUUsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzlCLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksWUFBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ3pHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLEtBQUssSUFBSSxDQUFDO1lBQzVCLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBQztnQkFDakIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxLQUFLLEtBQUssSUFBSSxDQUFDLENBQUMsUUFBUSxLQUFLLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBQzFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLEtBQUssSUFBSSxJQUFJLENBQUMsQ0FBQyxRQUFRLEtBQUssSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7YUFDckY7WUFDRCxNQUFNLENBQUMs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SUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztJQU1ELE1BQU07UUFDSixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsQ0FBQyxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsRUFBRSxHQUFHLFlBQVksQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3RELENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNWLENBQUM7SUFDRCxJQUFJO1FBQ0YsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxDQUFDLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxFQUFFLEdBQUcsYUFBYSxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFDO2dCQUNqRSxDQUFDLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxFQUFFLEdBQUcsWUFBWSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7YUFDckQ7UUFDSCxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDVixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0VudW1VdGlscywgSW5wdXRFcnJvciwgSW5wdXRUeXBlLCBNZXRob2R9IGZyb20gJy4vZW51bS5jbGFzcyc7XHJcbmltcG9ydCB7SGVscGVyQ2xhc3N9IGZyb20gJy4vaGVscGVyLmNsYXNzJztcclxuaW1wb3J0IHtSZXF1ZXN0Q2xhc3N9IGZyb20gJy4vcmVxdWVzdC5jbGFzcyc7XHJcbmltcG9ydCB7VGFibGVDbGFzc30gZnJvbSAnLi90YWJsZS5jbGFzcyc7XHJcbmltcG9ydCAqIGFzICQgZnJvbSAnanF1ZXJ5JztcclxuaW1wb3J0IHtNb2RhbENsYXNzfSBmcm9tICcuL21vZGFsLmNsYXNzJztcclxuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xyXG5cclxuZXhwb3J0IGNsYXNzIFByb2dyZXNzIHtcclxuICBjb25zdHJ1Y3RvcihzZWNzOiBudW1iZXIpIHtcclxuICAgIHRoaXMuc2VjcyA9IHRoaXMucmVtYWluU2VjcyA9IHNlY3M7XHJcbiAgfVxyXG4gIHNlY3M6IG51bWJlcjtcclxuICByZW1haW5TZWNzOiBudW1iZXI7XHJcbiAgcGVyY2VudCA9IDEwMDtcclxuICBpbnRlclZhbDtcclxuICBvbkVuZDogKCkgPT4gdm9pZCA9IG51bGw7XHJcbiAgb25TdGFydDogKCkgPT4gdm9pZCA9IG51bGw7XHJcbiAgb25UaWNrOiAobTogbnVtYmVyLCBzOiBudW1iZXIpID0+IHZvaWQgPSBudWxsO1xyXG4gIHN0YXJ0ID0gKCkgPT4ge1xyXG4gICAgdGhpcy5yZW1haW5TZWNzID0gdGhpcy5zZWNzO1xyXG4gICAgdGhpcy5wZXJjZW50ID0gMTAwO1xyXG4gICAgaWYgKHRoaXMub25TdGFydCl7XHJcbiAgICAgIHRoaXMub25TdGFydCgpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5pbnRlclZhbCA9IHNldEludGVydmFsKCAoKSA9PiB7XHJcbiAgICAgIHRoaXMucGVyY2VudCA9ICh0aGlzLnJlbWFpblNlY3MgLyB0aGlzLnNlY3MpICogMTAwO1xyXG4gICAgICBpZiAodGhpcy5yZW1haW5TZWNzID09PSAwKXtcclxuICAgICAgICBjbGVhckludGVydmFsKHRoaXMuaW50ZXJWYWwpO1xyXG4gICAgICAgIGlmICh0aGlzLm9uRW5kKXtcclxuICAgICAgICAgIHRoaXMub25FbmQoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChOdW1iZXIuaXNJbnRlZ2VyKHRoaXMucmVtYWluU2Vjcykpe1xyXG4gICAgICAgIGNvbnN0IG0gPSBNYXRoLmZsb29yKHRoaXMucmVtYWluU2VjcyAvIDYwKTtcclxuICAgICAgICBjb25zdCBzID0gdGhpcy5yZW1haW5TZWNzICUgNjA7XHJcbiAgICAgICAgdGhpcy5vblRpY2sobSwgcyk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5yZW1haW5TZWNzIC09IDAuNTtcclxuICAgIH0sIDUwMCk7XHJcbiAgfVxyXG59XHJcbmV4cG9ydCBjbGFzcyBGb3JtQ2xhc3Mge1xyXG4gIGNvbnN0cnVjdG9yKGVudmlyb25tZW50OiBhbnksIGw6IChrLCB2PykgPT4gc3RyaW5nLCBuYW1lOiBzdHJpbmcgPSBudWxsLCBwZXJtaXNzaW9uOiBib29sZWFuID0gdHJ1ZSxcclxuICAgICAgICAgICAgICB1cmw6IHN0cmluZyA9IG51bGwsIGNsczogc3RyaW5nID0gbnVsbCkge1xyXG4gICAgdGhpcy5lbnZpcm9ubWVudCA9IGVudmlyb25tZW50O1xyXG4gICAgdGhpcy5sID0gbDtcclxuICAgIHRoaXMudXJsID0gdXJsO1xyXG4gICAgdGhpcy5iYXNlVXJsID0gdXJsO1xyXG4gICAgdGhpcy5jbGFzcyA9IGNscztcclxuICAgIHRoaXMucGVybWlzc2lvbiA9IHBlcm1pc3Npb247XHJcbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xyXG4gICAgdGhpcy5pZCA9IHRoaXMubmFtZTtcclxuICB9XHJcbiAgbDogKGssIHY/KSA9PiBzdHJpbmc7XHJcbiAgcGVybWlzc2lvbjogYm9vbGVhbjtcclxuICBlbnZpcm9ubWVudDogYW55ID0gbnVsbDtcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgaXNFZGl0ID0gZmFsc2U7XHJcbiAgc3ViTmFtZTogc3RyaW5nID0gbnVsbDtcclxuICBpZDogc3RyaW5nO1xyXG4gIGNsYXNzOiBzdHJpbmc7XHJcbiAgYmFzZVVybDogc3RyaW5nO1xyXG4gIHVybDogc3RyaW5nO1xyXG4gIG1ldGhvZDogTWV0aG9kID0gTWV0aG9kLlBvc3Q7XHJcbiAgbG9hZGluZyA9IGZhbHNlO1xyXG4gIHN0eWxlOiB7fTtcclxuICBvblRvcCA9IGZhbHNlO1xyXG4gIGRpc3BsYXlMYWJlbCA9IHRydWU7XHJcbiAgaW5wdXRzOiBJbnB1dENsYXNzW10gPSBbXTtcclxuICBvblN1Y2Nlc3NCYXNlOiAocmVzdWx0KSA9PiB2b2lkID0gbnVsbDtcclxuICBvblN1Y2Nlc3M6IChyZXN1bHQpID0+IHZvaWQgPSBudWxsO1xyXG4gIG9uRmFpbGVkOiAocmVzdWx0KSA9PiB2b2lkID0gbnVsbDtcclxuICBvbkxvYWQ6IChyZXN1bHQpID0+IHZvaWQgPSBudWxsO1xyXG4gIG9uQmVmb3JlU3VibWl0OiAoKSA9PiBib29sZWFuID0gbnVsbDtcclxuICBvbkhpZGVNb2RhbDogKCkgPT4gdm9pZCA9IG51bGw7XHJcblxyXG4gIGxvYWREYXRhKHVybCk6IHZvaWQge1xyXG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcclxuICAgIG5ldyBSZXF1ZXN0Q2xhc3ModGhpcy5lbnZpcm9ubWVudCwgdGhpcy5sKS5zZW5kKHVybCwgTWV0aG9kLlBvc3QsIG51bGwsIG51bGwsIChyZXN1bHQpID0+IHtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5zZXREYXRhKHJlc3VsdCk7XHJcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgaWYgKHRoaXMub25Mb2FkKXtcclxuICAgICAgICAgIHRoaXMub25Mb2FkKHJlc3VsdCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9LCA1MDApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG4gIHN1Ym1pdChvblN1Ym1pdCA9IG51bGwpOiB2b2lkIHtcclxuICAgIG5ldyBSZXF1ZXN0Q2xhc3ModGhpcy5lbnZpcm9ubWVudCwgdGhpcy5sKS5wb3N0Rm9ybSh0aGlzLCBvblN1Ym1pdCk7XHJcbiAgfVxyXG4gIGNoZWNrKCk6IGJvb2xlYW4ge1xyXG4gICAgbGV0IHZhbGlkID0gdHJ1ZTtcclxuICAgIHRoaXMuaW5wdXRzLmZvckVhY2goaW5wID0+IHtcclxuICAgICAgaWYgKCFpbnAuaXNWYWxpZCgpKSB7XHJcbiAgICAgICAgaWYgKHZhbGlkKXtcclxuICAgICAgICAgIGlucC5mb2N1cygpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB2YWxpZCA9IGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIHJldHVybiB2YWxpZDtcclxuICB9XHJcbiAgY2xlYXIoKTogdm9pZCB7XHJcbiAgICB0aGlzLm1ldGhvZCA9IE1ldGhvZC5Qb3N0O1xyXG4gICAgdGhpcy51cmwgPSB0aGlzLmJhc2VVcmw7XHJcbiAgICB0aGlzLnNldEJ1dHRvbnModGhpcy5vblRvcCwgZmFsc2UpO1xyXG4gICAgdGhpcy5jbGVhcklucHV0cygpO1xyXG4gIH1cclxuICBjbGVhcklucHV0cygpOiB2b2lke1xyXG4gICAgdGhpcy5pbnB1dHMuZmlsdGVyKHggPT4geC50eXBlICE9PSBJbnB1dFR5cGUuQ29uc3RhbnQpLmZvckVhY2goaW5wID0+IHtcclxuICAgICAgaW5wLmNsZWFyKCk7XHJcbiAgICB9KTtcclxuICB9XHJcbiAgc2V0QnV0dG9ucyhmb3JtT25Ub3AsIGVkaXQ6IGJvb2xlYW4sIGlkID0gbnVsbCk6IHZvaWQge1xyXG4gICAgY29uc3QgcyA9IHRoaXMuaW5wdXRzLmZpbmQoeCA9PiB4LnR5cGUgPT09IElucHV0VHlwZS5TdWJtaXQpO1xyXG4gICAgaWYgKCFzKXtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgcy5uYW1lID0gZWRpdCA/ICdBY2NlcHQnIDogJ1NhdmUnO1xyXG4gICAgcy5jbGFzcyA9IGVkaXQgPyBzLmNsYXNzLnJlcGxhY2UoJ2dyZWVuJywgJ2JsdWUnKSA6IHMuY2xhc3MucmVwbGFjZSgnYmx1ZScsICdncmVlbicpO1xyXG4gIH1cclxuICBhZGRCdXR0b25zKG5hbWUgPSAnU2F2ZScsIGNscyA9ICdncmVlbicsIGNsZWFyID0gdHJ1ZSwgb25TdWJtaXQgPSBudWxsKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5pbnB1dHMuZmlsdGVyKHggPT4geC50eXBlID09PSBJbnB1dFR5cGUuU3VibWl0KS5sZW5ndGggPiAwKXtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgY29uc3QgYnIgPSBuZXcgSW5wdXRDbGFzcyh0aGlzLmVudmlyb25tZW50LCB0aGlzLmwsIG51bGwsIG51bGwsIElucHV0VHlwZS5MYWJlbCxcclxuICAgICAgdGhpcy5vblRvcCA/ICdzcGFjZScgOiAndW5kZXJsaW5lJyk7XHJcbiAgICBjb25zdCBzYXZlID0gbmV3IElucHV0Q2xhc3ModGhpcy5lbnZpcm9ubWVudCwgdGhpcy5sLCBuYW1lLCAnZmEtZHVvdG9uZSBmYS1jaGVjaycsIElucHV0VHlwZS5TdWJtaXQsXHJcbiAgICAgICdzYXZlLWZvcm0tYnRuIGgtMzAgJyArIGNscyk7XHJcbiAgICBzYXZlLm9uQ2xpY2sgPSAoKSA9PiB7XHJcbiAgICAgIHRoaXMuc3VibWl0KG9uU3VibWl0KTtcclxuICAgIH07XHJcbiAgICB0aGlzLmlucHV0cy5wdXNoKGJyKTtcclxuICAgIHRoaXMuaW5wdXRzLnB1c2goc2F2ZSk7XHJcbiAgICBpZiAoY2xlYXIpe1xyXG4gICAgICBjb25zdCBlcmFzZSA9IG5ldyBJbnB1dENsYXNzKHRoaXMuZW52aXJvbm1lbnQsIHRoaXMubCwgbnVsbCwgJ2ZhLWR1b3RvbmUgZmEtZXJhc2VyJywgSW5wdXRUeXBlLkJ1dHRvbixcclxuICAgICAgICAnZi1sIHctdSBncmV5IGVyYXNlLWZvcm0tYnRuIGgtMzAnKTtcclxuICAgICAgZXJhc2Uub25DbGljayA9ICgpID0+IHtcclxuICAgICAgICBpZiAodGhpcy5vblRvcCl7XHJcbiAgICAgICAgICB0aGlzLmNsZWFyKCk7XHJcbiAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICB0aGlzLmNsZWFySW5wdXRzKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9O1xyXG4gICAgICB0aGlzLmlucHV0cy5wdXNoKGVyYXNlKTtcclxuICAgIH1cclxuICB9XHJcbiAgZGF0YShkID0gbnVsbCk6IGFueSB7XHJcbiAgICBpZiAodGhpcy5pbnB1dHMuZmluZEluZGV4KHggPT4geC50eXBlID09PSBJbnB1dFR5cGUuRmlsZSkgPT09IC0xKXtcclxuICAgICAgaWYgKGQgPT0gbnVsbCl7XHJcbiAgICAgICAgZCA9IHt9O1xyXG4gICAgICB9XHJcbiAgICB9ZWxzZXtcclxuICAgICAgaWYgKGQgPT0gbnVsbCl7XHJcbiAgICAgICAgZCA9IG5ldyBGb3JtRGF0YSgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBjb25zdCBzZXREID0gKG4sIHZsKSA9PiB7XHJcbiAgICAgIGlmIChkIGluc3RhbmNlb2YgRm9ybURhdGEpe1xyXG4gICAgICAgIGlmICh2bCBpbnN0YW5jZW9mIEFycmF5KXtcclxuICAgICAgICAgIGZvciAoY29uc3QgdiBvZiB2bCl7XHJcbiAgICAgICAgICAgIGQuYXBwZW5kKG4sIHYpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1lbHNle1xyXG4gICAgICAgICAgZC5hcHBlbmQobiwgdmwpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBpZiAoZFtuXSA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICBfLnNldChkLCBuLCB2bCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGlmIChkW25dIGluc3RhbmNlb2YgQXJyYXkpe1xyXG4gICAgICAgICAgICBkW25dLnB1c2godmwpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgZFtuXSA9IFtkW25dLCB2bF07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9O1xyXG4gICAgdGhpcy5pbnB1dHMuZm9yRWFjaChpbnAgPT4ge1xyXG4gICAgICBjb25zdCB2bCA9IGlucC5kYXRhKCk7XHJcbiAgICAgIGlmICh2bCAhPT0gbnVsbCl7XHJcbiAgICAgICAgaWYgKHR5cGVvZiB2bCA9PT0gJ29iamVjdCcgJiYgISh2bCBpbnN0YW5jZW9mIEFycmF5KSl7XHJcbiAgICAgICAgICBmb3IgKGNvbnN0IFsga2V5LCB2YWx1ZSBdIG9mIE9iamVjdC5lbnRyaWVzKHZsKSkge1xyXG4gICAgICAgICAgICBzZXREKGtleSwgdmFsdWUpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBzZXREKGlucC5uYW1lLCB2bCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBkO1xyXG4gIH1cclxuICBqc29uKGQgPSBudWxsKToge30ge1xyXG4gICAgaWYgKGQgPT0gbnVsbCl7XHJcbiAgICAgIGQgPSB7fTtcclxuICAgIH1cclxuICAgIHRoaXMuaW5wdXRzLmZvckVhY2goaW5wID0+IHtcclxuICAgICAgY29uc3QgdmwgPSBpbnAuZGF0YSgpO1xyXG4gICAgICBpZiAodmwgIT09IG51bGwgJiYgdmwgIT09ICcnKXtcclxuICAgICAgICBpZiAodmwgaW5zdGFuY2VvZiBBcnJheSl7XHJcbiAgICAgICAgICBmb3IgKGNvbnN0IHYgb2Ygdmwpe1xyXG4gICAgICAgICAgICBkW2lucC5uYW1lXSA9IHY7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICBkW2lucC5uYW1lXSA9IHZsO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gZDtcclxuICB9XHJcbiAgc2V0RGF0YShkKTogdm9pZCB7XHJcbiAgICB0aGlzLmlucHV0cy5mb3JFYWNoKGlucCA9PiB7XHJcbiAgICAgIGNvbnN0IGl2ID0gXy5nZXQoZCwgaW5wLm5hbWUpO1xyXG4gICAgICBpZiAoaW5wLnR5cGUgPT09IElucHV0VHlwZS5WZWhpY2xlKXtcclxuICAgICAgICBjb25zdCBpdnQgPSBfLmdldChkLCAnVHlwZScpO1xyXG4gICAgICAgIGlucC5zZXRWYWx1ZSh7VmFsdWU6IGl2LCBUeXBlOiBpdnR9LCB0cnVlKTtcclxuICAgICAgfWVsc2UgaWYgKGlucC50eXBlID09PSBJbnB1dFR5cGUuVmVoaWNsZVNlYXJjaCl7XHJcbiAgICAgICAgY29uc3QgaXZzID0gXy5nZXQoZCwgaW5wLm5hbWUucmVwbGFjZSgnSWQnLCAnJykpO1xyXG4gICAgICAgIGNvbnN0IGl2dCA9IF8uZ2V0KGQsIGlucC5uYW1lLnJlcGxhY2UoJ0lkJywgJ1R5cGUnKSk7XHJcbiAgICAgICAgaW5wLnNldFZhbHVlKHtTZWFyY2g6IGl2cywgVmFsdWU6IGl2LCBUeXBlOiBpdnR9LCB0cnVlKTtcclxuICAgICAgfWVsc2UgaWYgKGlucC50eXBlICE9PSBJbnB1dFR5cGUuTGFiZWwgfHwgaXYgIT0gbnVsbCl7XHJcbiAgICAgICAgaW5wLnNldFZhbHVlKGl2LCB0cnVlKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoaW5wLnR5cGUgPT09IElucHV0VHlwZS5TZWxlY3RBdXRvQ29tcGxldGVQbGFxdWUgfHwgaW5wLnR5cGUgPT09IElucHV0VHlwZS5TZWxlY3RBdXRvQ29tcGxldGUpe1xyXG4gICAgICAgIGNvbnN0IGl2cyA9IF8uZ2V0KGQsIGlucC5uYW1lLnJlcGxhY2UoJ0lkJywgJycpKTtcclxuICAgICAgICBpbnAuc2V0U2VhcmNoKGl2cyk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIElucHV0Q2xhc3Mge1xyXG4gIGNvbnN0cnVjdG9yKGVudmlyb25tZW50OiBhbnksIGw6IChrLCB2PykgPT4gc3RyaW5nLCBuYW1lOiBzdHJpbmcsIGljb246IHN0cmluZyA9IG51bGwsXHJcbiAgICAgICAgICAgICAgdHlwZTogSW5wdXRUeXBlID0gSW5wdXRUeXBlLlRleHQsIGNsczogc3RyaW5nID0gJycsIHZhbHVlID0gbnVsbCxcclxuICAgICAgICAgICAgICByZXF1aXJlZDogYm9vbGVhbiA9IHRydWUsIG1pbkxlbmd0aCA9IC0xLCBtYXhMZW5ndGggPSAtMSkge1xyXG4gICAgdGhpcy5lbnZpcm9ubWVudCA9IGVudmlyb25tZW50O1xyXG4gICAgdGhpcy5sID0gbDtcclxuICAgIHRoaXMubmFtZSA9IG5hbWU7XHJcbiAgICB0aGlzLmlkID0gbmFtZTtcclxuICAgIHRoaXMubG9hZGluZ05hbWUgPSBuYW1lO1xyXG4gICAgdGhpcy5wbGFjZWhvbGRlciA9IG5hbWU7XHJcbiAgICB0aGlzLmljb24gPSBpY29uO1xyXG4gICAgdGhpcy5jbGFzcyA9IGNscyArIChbSW5wdXRUeXBlLk1vYmlsZSwgSW5wdXRUeXBlLlBob25lLCBJbnB1dFR5cGUuUGFzc3dvcmQsIElucHV0VHlwZS5FbWFpbCwgSW5wdXRUeXBlLk51bWJlciwgSW5wdXRUeXBlLlByaWNlLFxyXG4gICAgICBJbnB1dFR5cGUuTmF0aW9uYWxDb2RlLCBJbnB1dFR5cGUuU2hlYmEsIElucHV0VHlwZS5Qb3N0YWxDb2RlLCBJbnB1dFR5cGUuRGF0ZSwgSW5wdXRUeXBlLlRpbWUsIElucHV0VHlwZS5CaWxsTnVtYmVyXS5pbmNsdWRlcyh0eXBlKSA/ICcgbHRyJyA6ICcnKTtcclxuICAgIHRoaXMudHlwZSA9IHR5cGU7XHJcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XHJcbiAgICB0aGlzLmRlZmF1bHQgPSB2YWx1ZSA9PSBudWxsID8gbnVsbCA6ICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInIHx8IHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgPyBfLmNsb25lRGVlcCh2YWx1ZSkgOiBIZWxwZXJDbGFzcy5jbG9uZSh2YWx1ZSkpO1xyXG4gICAgdGhpcy5iYXNlUmVxdWlyZWQgPSByZXF1aXJlZDtcclxuICAgIHRoaXMucmVxdWlyZWQgPSByZXF1aXJlZDtcclxuICAgIHRoaXMuaW5FZGl0UmVxdWlyZWQgPSByZXF1aXJlZDtcclxuICAgIHRoaXMubWluTGVuZ3RoID0gdHlwZSA9PT0gSW5wdXRUeXBlLk1vYmlsZSB8fCB0eXBlID09PSBJbnB1dFR5cGUuUGhvbmUgPyAxMSA6XHJcbiAgICAgIHR5cGUgPT09IElucHV0VHlwZS5OYXRpb25hbENvZGUgfHwgdHlwZSA9PT0gSW5wdXRUeXBlLlBvc3RhbENvZGUgPyAxMCA6XHJcbiAgICAgIHR5cGUgPT09IElucHV0VHlwZS5TaGViYSA/IDI0IDogbWluTGVuZ3RoO1xyXG4gICAgdGhpcy5tYXhMZW5ndGggPSB0eXBlID09PSBJbnB1dFR5cGUuTW9iaWxlIHx8IHR5cGUgPT09IElucHV0VHlwZS5QaG9uZSA/IDExIDpcclxuICAgICAgdHlwZSA9PT0gSW5wdXRUeXBlLk5hdGlvbmFsQ29kZSB8fCB0eXBlID09PSBJbnB1dFR5cGUuUG9zdGFsQ29kZSA/IDEwIDpcclxuICAgICAgdHlwZSA9PT0gSW5wdXRUeXBlLlNoZWJhID8gMjQgOiBtYXhMZW5ndGg7XHJcbiAgfVxyXG4gIGVudmlyb25tZW50OiBhbnkgPSBudWxsO1xyXG4gIGw6IChrLCB2PykgPT4gc3RyaW5nO1xyXG4gIG5hbWU6IHN0cmluZztcclxuICB1cmwgPSBudWxsO1xyXG4gIHF1ZXJ5UGFyYW1zID0gbnVsbDtcclxuICB1cmxOZXdUYWIgPSBmYWxzZTtcclxuICBsb2FkaW5nTmFtZTogc3RyaW5nO1xyXG4gIHBsYWNlaG9sZGVyOiBzdHJpbmcgPSBudWxsO1xyXG4gIHRvb2x0aXA6IHN0cmluZztcclxuICBpZDogc3RyaW5nO1xyXG4gIGljb246IHN0cmluZztcclxuICBhZGROZXcgPSBmYWxzZTtcclxuICBjbGFzczogc3RyaW5nO1xyXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmcgPSBudWxsO1xyXG4gIHR5cGU6IElucHV0VHlwZTtcclxuICB2YWx1ZTtcclxuICBzZWFyY2g7XHJcbiAgZGVmYXVsdCA9IG51bGw7XHJcbiAgYmFzZVJlcXVpcmVkOiBib29sZWFuO1xyXG4gIHJlcXVpcmVkOiBib29sZWFuO1xyXG4gIGRpc2FibGVkID0gZmFsc2U7XHJcbiAgaW5FZGl0RGlzYWJsZWQgPSBmYWxzZTtcclxuICBpbkVkaXRWaXNpYmxlID0gdHJ1ZTtcclxuICBpbkVkaXRSZXF1aXJlZCA9IHRydWU7XHJcbiAgZGlzcGxheUxhYmVsID0gdHJ1ZTtcclxuICBsYWJlbDogc3RyaW5nID0gbnVsbDtcclxuICB3aXRoQ2xlYXIgPSBmYWxzZTtcclxuICBtaW5MZW5ndGggPSAtMTtcclxuICBtYXhMZW5ndGggPSAtMTtcclxuICBlcnJvcjogSW5wdXRFcnJvciA9IG51bGw7XHJcbiAgbG9hZGluZyA9IGZhbHNlO1xyXG4gIGJ1dHRvbiA9IG51bGw7XHJcbiAgaGFzQmFyY29kZVJlYWRlciA9IGZhbHNlO1xyXG4gIG9uQmFyY29kZVJlYWRlckNoYW5nZSA9IG51bGw7XHJcbiAgb25DbGlja0J1dHRvbjogKGlucCkgPT4gdm9pZCA9IG51bGw7XHJcbiAgcHJvZ3Jlc3M6IFByb2dyZXNzID0gbnVsbDtcclxuICBvbkNsaWNrOiAoYnRuKSA9PiB2b2lkID0gbnVsbDtcclxuICBvbktleVVwOiAoaW5wKSA9PiB2b2lkID0gbnVsbDtcclxuICBvbktleURvd246IChlKSA9PiB2b2lkID0gbnVsbDtcclxuICBvcHRpb25zOiBPcHRpb25DbGFzc1tdID0gW107XHJcbiAgbWF0Y2g6IElucHV0Q2xhc3MgPSBudWxsO1xyXG4gIHJlbDogSW5wdXRDbGFzcyA9IG51bGw7XHJcbiAgcmVsVXJsOiBzdHJpbmcgPSBudWxsO1xyXG4gIHRhYmxlOiBUYWJsZUNsYXNzO1xyXG4gIHN0eWxlID0ge307XHJcbiAgcG9zaXRpb24gPSAnYm90dG9tJztcclxuICBvbkNoYW5nZTogKHYsIGU/KSA9PiB2b2lkID0gbnVsbDtcclxuICBob3ZlciA9IC0xO1xyXG4gIHZpc2libGUgPSB0cnVlO1xyXG4gIGV4cG9ydFBkZiA9IGZhbHNlO1xyXG4gIG9wZW4gPSBmYWxzZTtcclxuICBtdWx0aXBsZSA9IGZhbHNlO1xyXG4gIG9ubHlDaGlsZCA9IHRydWU7XHJcbiAgYWxsb3dlZCA9IG51bGw7XHJcbiAgcm93ID0gbnVsbDtcclxuICByb3dzID0gW107XHJcbiAgaW5kZXggPSAwO1xyXG4gIGxldmVsID0gbnVsbDtcclxuICBtb2RhbDogTW9kYWxDbGFzcyA9IG51bGw7XHJcbiAgbmFtZUZ1bjogKHIpID0+IHZvaWQgPSBudWxsO1xyXG4gIG9uRm9jdXNPdXQ6IChlKSA9PiB2b2lkID0gKCkgPT4ge307XHJcbiAgZm9jdXMoY2hhbmdlSW5kZXg6IGJvb2xlYW4gPSBmYWxzZSk6IHZvaWQge31cclxuICBjaGFuZ2VUeXBlOiAodDogSW5wdXRUeXBlKSA9PiB2b2lkID0gKCkgPT4ge307XHJcbiAgc2V0VmFsdWU6ICh2LCBpc0VkaXQpID0+IHZvaWQgPSAodiwgaXNFZGl0KSA9PiB7IHRoaXMudmFsdWUgPSB2OyB9O1xyXG4gIHNldFNlYXJjaDogKHYpID0+IHZvaWQgPSAoKSA9PiB7fTtcclxuICBjbGVhcjogKCkgPT4gdm9pZCA9ICgpID0+IHsgdGhpcy52YWx1ZSA9IG51bGw7IH07XHJcbiAgZm9jdXNPdXQ6ICgpID0+IHZvaWQgPSAoKSA9PiB7fTtcclxuICBkYXRhOiAoKSA9PiBhbnkgPSAoKSA9PiB7XHJcbiAgICByZXR1cm4gdGhpcy52YWx1ZTtcclxuICB9XHJcbiAgaXNWYWxpZDogKCkgPT4gYm9vbGVhbiA9ICgpID0+IHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuICBsb2FkKHUgPSBudWxsLCBkb25lOiAoKSA9PiB2b2lkID0gbnVsbCk6IHZvaWR7XHJcbiAgICB1ID0gdSA/IHUgOiB0aGlzLnVybDtcclxuICAgIGlmICh1KXtcclxuICAgICAgdGhpcy5vcHRpb25zID0gW107XHJcbiAgICAgIHRoaXMuaG92ZXIgPSAtMTtcclxuICAgICAgdGhpcy5pbmRleCA9IDA7XHJcbiAgICAgIHRoaXMucm93cyA9IFtdO1xyXG4gICAgICBpZiAodHlwZW9mIHUgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgICAgaWYgKCF1LmluY2x1ZGVzKCd7fScpKXtcclxuICAgICAgICAgIG5ldyBSZXF1ZXN0Q2xhc3ModGhpcy5lbnZpcm9ubWVudCwgdGhpcy5sKS5zZW5kKHUgPyB1IDogdGhpcy51cmwsIE1ldGhvZC5Qb3N0LCBudWxsLCB0aGlzLCAocmVzdWx0KSA9PiB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLnR5cGUgPT09IElucHV0VHlwZS5TZWxlY3RTZWFyY2ggfHwgdGhpcy50eXBlID09PSBJbnB1dFR5cGUuU2VsZWN0IHx8IHRoaXMudHlwZSA9PT0gSW5wdXRUeXBlLlNlbGVjdEF1dG9Db21wbGV0ZSB8fFxyXG4gICAgICAgICAgICAgIHRoaXMudHlwZSA9PT0gSW5wdXRUeXBlLlNlbGVjdEF1dG9Db21wbGV0ZVBsYXF1ZSB8fCB0aGlzLnR5cGUgPT09IElucHV0VHlwZS5TZWxlY3RBdXRvQ29tcGxldGVQbGFxdWVNIHx8XHJcbiAgICAgICAgICAgICAgdGhpcy50eXBlID09PSBJbnB1dFR5cGUuU2VsZWN0QXV0b0NvbXBsZXRlUGxhcXVlRiB8fCB0aGlzLnR5cGUgPT09IElucHV0VHlwZS5TZWxlY3RBdXRvQ29tcGxldGVQbGFxdWVHIHx8IHRoaXMudHlwZSA9PT0gSW5wdXRUeXBlLlJhZGlvKSB7XHJcbiAgICAgICAgICAgICAgY29uc3QgciA9IHRoaXMuZ2V0T3B0aW9ucyhyZXN1bHQsIG51bGwpO1xyXG4gICAgICAgICAgICAgIGNvbnN0IHMgPSByZXN1bHQuZmluZCh4ID0+IHguU2VsZWN0ZWQpO1xyXG4gICAgICAgICAgICAgIGlmIChzKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnZhbHVlID0gcy5JZC50b1N0cmluZygpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB0aGlzLnNldE9wdGlvbnMocik7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy50eXBlID09PSBJbnB1dFR5cGUuVHJlZSB8fCB0aGlzLnR5cGUgPT09IElucHV0VHlwZS5UcmVlUmFkaW8pIHtcclxuICAgICAgICAgICAgICB0aGlzLnJvd3MgPSB0aGlzLmdldFJvd3MocmVzdWx0LCBudWxsKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZiAoZG9uZSkge1xyXG4gICAgICAgICAgICAgIGRvbmUoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9ZWxzZXtcclxuICAgICAgICBjb25zdCByZXN1bHQgPSBbXTtcclxuICAgICAgICBFbnVtVXRpbHMuZ2V0S2V5c0FuZFZhbHVlcyh1KS5mb3JFYWNoKChrKSA9PiB7XHJcbiAgICAgICAgICByZXN1bHQucHVzaCh7TmFtZTogdGhpcy5sKGsua2V5KSwgSWQ6IGsudmFsdWUudG9TdHJpbmcoKX0pO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGNvbnN0IHIgPSB0aGlzLmdldE9wdGlvbnMocmVzdWx0LCBudWxsKTtcclxuICAgICAgICB0aGlzLnNldE9wdGlvbnMocik7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSBpZiAodGhpcy5vcHRpb25zIGluc3RhbmNlb2YgQXJyYXkpe1xyXG4gICAgICB0aGlzLm9wdGlvbnMuZm9yRWFjaCh4ID0+IHguaW5kZXggPSB0aGlzLmluZGV4KyspO1xyXG4gICAgfVxyXG4gIH1cclxuICBzZXRPcHRpb25zKHIpOiB2b2lke1xyXG4gICAgdGhpcy5vcHRpb25zID0gcjtcclxuICAgIGlmICh0aGlzLnZhbHVlICE9IG51bGwpe1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLnNldFZhbHVlKHRoaXMudmFsdWUsIHRydWUpO1xyXG4gICAgICB9LCA1MDApO1xyXG4gICAgfVxyXG4gIH1cclxuICBnZXRPcHRpb25zKHIsIHAsIHRyZWUgPSB0cnVlKTogT3B0aW9uQ2xhc3NbXXtcclxuICAgIHJldHVybiByLmZpbHRlcih4ID0+IChwID09IG51bGwgJiYgIXguUGFyZW50SWQpIHx8IHguUGFyZW50SWQgPT09IHAgfHwgIXRyZWUpXHJcbiAgICAgIC5tYXAoKHgpID0+IHtcclxuICAgICAgICBjb25zdCBvID0gbmV3IE9wdGlvbkNsYXNzKHguTmFtZSwgeC5JZC50b1N0cmluZygpKTtcclxuICAgICAgICBpZiAodGhpcy50eXBlID09PSBJbnB1dFR5cGUuU2VsZWN0QXV0b0NvbXBsZXRlUGxhcXVlIHx8IHRoaXMudHlwZSA9PT0gSW5wdXRUeXBlLlNlbGVjdEF1dG9Db21wbGV0ZVBsYXF1ZU0gfHxcclxuICAgICAgICAgIHRoaXMudHlwZSA9PT0gSW5wdXRUeXBlLlNlbGVjdEF1dG9Db21wbGV0ZVBsYXF1ZUYgfHwgdGhpcy50eXBlID09PSBJbnB1dFR5cGUuU2VsZWN0QXV0b0NvbXBsZXRlUGxhcXVlRyB8fCB0aGlzLm5hbWUgPT09ICdDYXJJZCcpe1xyXG4gICAgICAgICAgY29uc3QgdG4gPSBvLm5hbWUuc3BsaXQoJ18nKTtcclxuICAgICAgICAgIGlmICh0bi5sZW5ndGggPT09IDQpe1xyXG4gICAgICAgICAgICB0blsxXSArPSAnJmxybTsnO1xyXG4gICAgICAgICAgICB0blsyXSArPSAnIHwnO1xyXG4gICAgICAgICAgICBvLm5hbWUgPSB0bi5qb2luKCcgJyk7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKHRuLmxlbmd0aCA9PT0gMil7XHJcbiAgICAgICAgICAgIG8ubmFtZSA9IHRuLmpvaW4oJyAnKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgby5zZWFyY2ggPSB4LlNlYXJjaDtcclxuICAgICAgICBvLm9wdGlvbiA9IHg7XHJcbiAgICAgICAgby5pbmRleCA9IHRoaXMuaW5kZXgrKztcclxuICAgICAgICBvLm9wdGlvbnMgPSB0cmVlID8gdGhpcy5nZXRPcHRpb25zKHIsIHguSWQpIDogW107XHJcbiAgICAgICAgcmV0dXJuIG87XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuICBnZXRSb3dzKHIsIHApOiBUcmVlUm93Q2xhc3NbXXtcclxuICAgIGNvbnN0IGwgPSBbXTtcclxuICAgIHIuZmlsdGVyKHggPT4gKHAgPT0gbnVsbCAmJiAheC5QYXJlbnRJZCkgfHwgeC5QYXJlbnRJZCA9PT0gcCkuZm9yRWFjaCgoeCkgPT4ge1xyXG4gICAgICBsZXQgYyA9IHRoaXMuZ2V0Um93cyhyLCB4LklkKTtcclxuICAgICAgYyA9IGMubGVuZ3RoID4gMCA/IGMgOiB4LkNoaWxkcmVuID8geC5DaGlsZHJlbi5tYXAoYSA9PiBuZXcgVHJlZVJvd0NsYXNzKGEuTmFtZSwgYS5JZCwgYS5TZWxlY3RlZCkpIDogW107XHJcbiAgICAgIGxldCBzID0geC5TZWxlY3RlZCA9PT0gdHJ1ZTtcclxuICAgICAgaWYgKHRoaXMub25seUNoaWxkKXtcclxuICAgICAgICBzID0gYy5sZW5ndGggPT09IDAgPyB4LlNlbGVjdGVkIDogKGMuZmluZCh5ID0+IHkuc2VsZWN0ZWQgPT09IGZhbHNlIHx8IHkuc2VsZWN0ZWQgPT09IG51bGwpID09IG51bGwgPyB0cnVlIDpcclxuICAgICAgICAgIChjLmZpbmQoeSA9PiB5LnNlbGVjdGVkID09PSB0cnVlIHx8IHkuc2VsZWN0ZWQgPT09IG51bGwpICE9IG51bGwgPyBudWxsIDogZmFsc2UpKTtcclxuICAgICAgfVxyXG4gICAgICBjb25zdCBuID0gdGhpcy5uYW1lRnVuID8gdGhpcy5uYW1lRnVuKHgpIDogeC5OYW1lO1xyXG4gICAgICBsLnB1c2gobmV3IFRyZWVSb3dDbGFzcyhuLCB4LklkLCBzLCBjKSk7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBsO1xyXG4gIH1cclxuICBnZXRMYWJlbCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIEhlbHBlckNsYXNzLmdldExhYmVsKHRoaXMpO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIE9wdGlvbkNsYXNzIHtcclxuICBjb25zdHJ1Y3RvcihuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcsIG9wdGlvbnM6IE9wdGlvbkNsYXNzW10gPSBbXSwgY2xzOiBzdHJpbmcgPSBudWxsKSB7XHJcbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xyXG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG4gICAgdGhpcy5vcHRpb25zID0gb3B0aW9ucztcclxuICAgIHRoaXMuY2xhc3MgPSBjbHM7XHJcbiAgfVxyXG4gIG9wdGlvbjtcclxuICBzZWFyY2g6IHN0cmluZztcclxuICBjbGFzczogc3RyaW5nO1xyXG4gIG5hbWU6IHN0cmluZztcclxuICB2YWx1ZTogc3RyaW5nO1xyXG4gIGluZGV4OiBudW1iZXI7XHJcbiAgc2hvdyA9IHRydWU7XHJcbiAgc2VsZWN0ZWQgPSBmYWxzZTtcclxuICBwYXJlbnQ6IE9wdGlvbkNsYXNzID0gbnVsbDtcclxuICBvcHRpb25zOiBPcHRpb25DbGFzc1tdO1xyXG4gIGxvYWRpbmcgPSBmYWxzZTtcclxufVxyXG5leHBvcnQgY2xhc3MgRGF5Q2xhc3Mge1xyXG4gIGNvbnN0cnVjdG9yKGRheTogbnVtYmVyLCB0b2RheTogYm9vbGVhbiwgc2VsZWN0ZWQ6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuZGF5ID0gZGF5O1xyXG4gICAgdGhpcy50b2RheSA9IHRvZGF5O1xyXG4gICAgdGhpcy5zZWxlY3RlZCA9IHNlbGVjdGVkO1xyXG4gIH1cclxuICBkYXk6IG51bWJlcjtcclxuICB0b2RheTogYm9vbGVhbjtcclxuICBzZWxlY3RlZDogYm9vbGVhbjtcclxufVxyXG5leHBvcnQgY2xhc3MgVHJlZVJvd0NsYXNzIHtcclxuICBjb25zdHJ1Y3RvcihuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcsIHNlbGVjdGVkOiBib29sZWFuID0gZmFsc2UsIGNoaWxkcmVuOiBUcmVlUm93Q2xhc3NbXSA9IFtdKSB7XHJcbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xyXG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG4gICAgdGhpcy5zZWxlY3RlZCA9IHNlbGVjdGVkO1xyXG4gICAgdGhpcy5jaGlsZHJlbiA9IGNoaWxkcmVuO1xyXG4gIH1cclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgdmFsdWU6IHN0cmluZztcclxuICBzZWxlY3RlZDogYm9vbGVhbjtcclxuICBwYXJlbnQ6IFRyZWVSb3dDbGFzcztcclxuICBjaGlsZHJlbjogVHJlZVJvd0NsYXNzW107XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBBY2NvcmRpb25DbGFzcyB7XHJcbiAgY29uc3RydWN0b3IobDogKGssIHY/KSA9PiBzdHJpbmcsIG5hbWU6IHN0cmluZywgY2xzOiBzdHJpbmcgPSAnJywgcm93czogQWNjb3JkaW9uUm93Q2xhc3NbXSkge1xyXG4gICAgdGhpcy5sID0gbDtcclxuICAgIHRoaXMubmFtZSA9IG5hbWU7XHJcbiAgICB0aGlzLmNsYXNzID0gY2xzO1xyXG4gICAgdGhpcy5yb3dzID0gcm93cztcclxuICB9XHJcbiAgbDogKGssIHY/KSA9PiBzdHJpbmc7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIGNsYXNzOiBzdHJpbmc7XHJcbiAgcm93czogQWNjb3JkaW9uUm93Q2xhc3NbXTtcclxuICBoYXNEZWxldGUgPSBmYWxzZTtcclxuICBkaXNwbGF5TGFiZWwgPSBmYWxzZTtcclxuICBsb2FkaW5nID0gZmFsc2U7XHJcbiAgb25EZWxldGU6IChyb3cpID0+IHZvaWQgPSBudWxsO1xyXG4gIGNoZWNrKCk6IGJvb2xlYW57XHJcbiAgICBmb3IgKGNvbnN0IHJvdyBvZiB0aGlzLnJvd3Mpe1xyXG4gICAgICBpZiAoIXJvdy5mb3JtLmNoZWNrKCkpe1xyXG4gICAgICAgIHJvdy5vcGVuKCk7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBBY2NvcmRpb25Sb3dDbGFzcyB7XHJcbiAgY29uc3RydWN0b3IoaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nLCBmb3JtOiBGb3JtQ2xhc3MgPSBudWxsLCB0YWJsZTogVGFibGVDbGFzcyA9IG51bGwpIHtcclxuICAgIHRoaXMuaWQgPSBpZDtcclxuICAgIHRoaXMubmFtZSA9IG5hbWU7XHJcbiAgICB0aGlzLmZvcm0gPSBmb3JtO1xyXG4gICAgdGhpcy50YWJsZSA9IHRhYmxlO1xyXG4gIH1cclxuICBpZDogc3RyaW5nO1xyXG4gIG5hbWU6IHN0cmluZztcclxuICBzaG93ID0gdHJ1ZTtcclxuICBmb3JtOiBGb3JtQ2xhc3M7XHJcbiAgdGFibGU6IFRhYmxlQ2xhc3M7XHJcbiAgdG9nZ2xlKCk6IHZvaWQge1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICQoJyNBY2NvcmRpb25Sb3cnICsgdGhpcy5pZCArICcgPiAuaGVhZGVyJykuY2xpY2soKTtcclxuICAgIH0sIDEwMCk7XHJcbiAgfVxyXG4gIG9wZW4oKTogdm9pZCB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgaWYgKCEkKCcjQWNjb3JkaW9uUm93JyArIHRoaXMuaWQgKyAnID4gLmNvbnRlbnQnKS5oYXNDbGFzcygnb3BlbicpKXtcclxuICAgICAgICAkKCcjQWNjb3JkaW9uUm93JyArIHRoaXMuaWQgKyAnID4gLmhlYWRlcicpLmNsaWNrKCk7XHJcbiAgICAgIH1cclxuICAgIH0sIDEwMCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
470
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiJEOi9Qcm9qZWN0cy9Qc1Rvb2xraXQvVUkvcHJvamVjdHMvcHMtdG9vbGtpdC11aS9zcmMvIiwic291cmNlcyI6WyJsaWIvY2xhc3Nlcy9mb3JtLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQWMsU0FBUyxFQUFFLE1BQU0sRUFBQyxNQUFNLGNBQWMsQ0FBQztBQUN0RSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRTdDLE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBRTVCLE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBRTVCLE1BQU0sT0FBTyxRQUFRO0lBQ25CLFlBQVksSUFBWTtRQUt4QixZQUFPLEdBQUcsR0FBRyxDQUFDO1FBRWQsVUFBSyxHQUFlLElBQUksQ0FBQztRQUN6QixZQUFPLEdBQWUsSUFBSSxDQUFDO1FBQzNCLFdBQU0sR0FBbUMsSUFBSSxDQUFDO1FBQzlDLFVBQUssR0FBRyxHQUFHLEVBQUU7WUFDWCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDNUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUM7WUFDbkIsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFDO2dCQUNmLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQzthQUNoQjtZQUNELElBQUksQ0FBQyxRQUFRLEdBQUcsV0FBVyxDQUFFLEdBQUcsRUFBRTtnQkFDaEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQztnQkFDbkQsSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLENBQUMsRUFBQztvQkFDeEIsYUFBYSxDQUFDLElBQUksQ0FB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LENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDMUUsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzlCLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksWUFBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ3pHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLEtBQUssSUFBSSxDQUFDO1lBQzVCLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBQztnQkFDakIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxLQUFLLEtBQUssSUFBSSxDQUFDLENBQUMsUUFBUSxLQUFLLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBQzFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLEtBQUssSUFBSSxJQUFJLENBQUMsQ0FBQyxRQUFRLEtBQUssSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7YUFDckY7WUFDRCxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMs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R0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztJQU1ELE1BQU07UUFDSixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsQ0FBQyxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsRUFBRSxHQUFHLFlBQVksQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3RELENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNWLENBQUM7SUFDRCxJQUFJO1FBQ0YsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxDQUFDLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxFQUFFLEdBQUcsYUFBYSxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFDO2dCQUNqRSxDQUFDLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxFQUFFLEdBQUcsWUFBWSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7YUFDckQ7UUFDSCxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDVixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0VudW1VdGlscywgSW5wdXRFcnJvciwgSW5wdXRUeXBlLCBNZXRob2R9IGZyb20gJy4vZW51bS5jbGFzcyc7XHJcbmltcG9ydCB7SGVscGVyQ2xhc3N9IGZyb20gJy4vaGVscGVyLmNsYXNzJztcclxuaW1wb3J0IHtSZXF1ZXN0Q2xhc3N9IGZyb20gJy4vcmVxdWVzdC5jbGFzcyc7XHJcbmltcG9ydCB7VGFibGVDbGFzc30gZnJvbSAnLi90YWJsZS5jbGFzcyc7XHJcbmltcG9ydCAqIGFzICQgZnJvbSAnanF1ZXJ5JztcclxuaW1wb3J0IHtNb2RhbENsYXNzfSBmcm9tICcuL21vZGFsLmNsYXNzJztcclxuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xyXG5cclxuZXhwb3J0IGNsYXNzIFByb2dyZXNzIHtcclxuICBjb25zdHJ1Y3RvcihzZWNzOiBudW1iZXIpIHtcclxuICAgIHRoaXMuc2VjcyA9IHRoaXMucmVtYWluU2VjcyA9IHNlY3M7XHJcbiAgfVxyXG4gIHNlY3M6IG51bWJlcjtcclxuICByZW1haW5TZWNzOiBudW1iZXI7XHJcbiAgcGVyY2VudCA9IDEwMDtcclxuICBpbnRlclZhbDtcclxuICBvbkVuZDogKCkgPT4gdm9pZCA9IG51bGw7XHJcbiAgb25TdGFydDogKCkgPT4gdm9pZCA9IG51bGw7XHJcbiAgb25UaWNrOiAobTogbnVtYmVyLCBzOiBudW1iZXIpID0+IHZvaWQgPSBudWxsO1xyXG4gIHN0YXJ0ID0gKCkgPT4ge1xyXG4gICAgdGhpcy5yZW1haW5TZWNzID0gdGhpcy5zZWNzO1xyXG4gICAgdGhpcy5wZXJjZW50ID0gMTAwO1xyXG4gICAgaWYgKHRoaXMub25TdGFydCl7XHJcbiAgICAgIHRoaXMub25TdGFydCgpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5pbnRlclZhbCA9IHNldEludGVydmFsKCAoKSA9PiB7XHJcbiAgICAgIHRoaXMucGVyY2VudCA9ICh0aGlzLnJlbWFpblNlY3MgLyB0aGlzLnNlY3MpICogMTAwO1xyXG4gICAgICBpZiAodGhpcy5yZW1haW5TZWNzID09PSAwKXtcclxuICAgICAgICBjbGVhckludGVydmFsKHRoaXMuaW50ZXJWYWwpO1xyXG4gICAgICAgIGlmICh0aGlzLm9uRW5kKXtcclxuICAgICAgICAgIHRoaXMub25FbmQoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChOdW1iZXIuaXNJbnRlZ2VyKHRoaXMucmVtYWluU2Vjcykpe1xyXG4gICAgICAgIGNvbnN0IG0gPSBNYXRoLmZsb29yKHRoaXMucmVtYWluU2VjcyAvIDYwKTtcclxuICAgICAgICBjb25zdCBzID0gdGhpcy5yZW1haW5TZWNzICUgNjA7XHJcbiAgICAgICAgdGhpcy5vblRpY2sobSwgcyk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5yZW1haW5TZWNzIC09IDAuNTtcclxuICAgIH0sIDUwMCk7XHJcbiAgfVxyXG59XHJcbmV4cG9ydCBjbGFzcyBGb3JtQ2xhc3Mge1xyXG4gIGNvbnN0cnVjdG9yKGVudmlyb25tZW50OiBhbnksIGw6IChrLCB2PykgPT4gc3RyaW5nLCBuYW1lOiBzdHJpbmcgPSBudWxsLCBwZXJtaXNzaW9uOiBib29sZWFuID0gdHJ1ZSxcclxuICAgICAgICAgICAgICB1cmw6IHN0cmluZyA9IG51bGwsIGNsczogc3RyaW5nID0gbnVsbCkge1xyXG4gICAgdGhpcy5lbnZpcm9ubWVudCA9IGVudmlyb25tZW50O1xyXG4gICAgdGhpcy5sID0gbDtcclxuICAgIHRoaXMudXJsID0gdXJsO1xyXG4gICAgdGhpcy5iYXNlVXJsID0gdXJsO1xyXG4gICAgdGhpcy5jbGFzcyA9IGNscztcclxuICAgIHRoaXMucGVybWlzc2lvbiA9IHBlcm1pc3Npb247XHJcbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xyXG4gICAgdGhpcy5pZCA9IHRoaXMubmFtZTtcclxuICB9XHJcbiAgbDogKGssIHY/KSA9PiBzdHJpbmc7XHJcbiAgcGVybWlzc2lvbjogYm9vbGVhbjtcclxuICBlbnZpcm9ubWVudDogYW55ID0gbnVsbDtcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgaXNFZGl0ID0gZmFsc2U7XHJcbiAgc3ViTmFtZTogc3RyaW5nID0gbnVsbDtcclxuICBpZDogc3RyaW5nO1xyXG4gIGNsYXNzOiBzdHJpbmc7XHJcbiAgYmFzZVVybDogc3RyaW5nO1xyXG4gIHVybDogc3RyaW5nO1xyXG4gIG1ldGhvZDogTWV0aG9kID0gTWV0aG9kLlBvc3Q7XHJcbiAgbG9hZGluZyA9IGZhbHNlO1xyXG4gIHN0eWxlOiB7fTtcclxuICBvblRvcCA9IGZhbHNlO1xyXG4gIGRpc3BsYXlMYWJlbCA9IHRydWU7XHJcbiAgaW5wdXRzOiBJbnB1dENsYXNzW10gPSBbXTtcclxuICBvblN1Y2Nlc3NCYXNlOiAocmVzdWx0KSA9PiB2b2lkID0gbnVsbDtcclxuICBvblN1Y2Nlc3M6IChyZXN1bHQpID0+IHZvaWQgPSBudWxsO1xyXG4gIG9uRmFpbGVkOiAocmVzdWx0KSA9PiB2b2lkID0gbnVsbDtcclxuICBvbkxvYWQ6IChyZXN1bHQpID0+IHZvaWQgPSBudWxsO1xyXG4gIG9uQmVmb3JlU3VibWl0OiAoKSA9PiBib29sZWFuID0gbnVsbDtcclxuICBvbkhpZGVNb2RhbDogKCkgPT4gdm9pZCA9IG51bGw7XHJcblxyXG4gIGxvYWREYXRhKHVybCk6IHZvaWQge1xyXG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcclxuICAgIG5ldyBSZXF1ZXN0Q2xhc3ModGhpcy5lbnZpcm9ubWVudCwgdGhpcy5sKS5zZW5kKHVybCwgTWV0aG9kLlBvc3QsIG51bGwsIG51bGwsIChyZXN1bHQpID0+IHtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5zZXREYXRhKHJlc3VsdCk7XHJcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgaWYgKHRoaXMub25Mb2FkKXtcclxuICAgICAgICAgIHRoaXMub25Mb2FkKHJlc3VsdCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9LCA1MDApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG4gIHN1Ym1pdChvblN1Ym1pdCA9IG51bGwpOiB2b2lkIHtcclxuICAgIG5ldyBSZXF1ZXN0Q2xhc3ModGhpcy5lbnZpcm9ubWVudCwgdGhpcy5sKS5wb3N0Rm9ybSh0aGlzLCBvblN1Ym1pdCk7XHJcbiAgfVxyXG4gIGNoZWNrKCk6IGJvb2xlYW4ge1xyXG4gICAgbGV0IHZhbGlkID0gdHJ1ZTtcclxuICAgIHRoaXMuaW5wdXRzLmZvckVhY2goaW5wID0+IHtcclxuICAgICAgaWYgKCFpbnAuaXNWYWxpZCgpKSB7XHJcbiAgICAgICAgaWYgKHZhbGlkKXtcclxuICAgICAgICAgIGlucC5mb2N1cygpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB2YWxpZCA9IGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIHJldHVybiB2YWxpZDtcclxuICB9XHJcbiAgY2xlYXIoKTogdm9pZCB7XHJcbiAgICB0aGlzLm1ldGhvZCA9IE1ldGhvZC5Qb3N0O1xyXG4gICAgdGhpcy51cmwgPSB0aGlzLmJhc2VVcmw7XHJcbiAgICB0aGlzLnNldEJ1dHRvbnModGhpcy5vblRvcCwgZmFsc2UpO1xyXG4gICAgdGhpcy5jbGVhcklucHV0cygpO1xyXG4gIH1cclxuICBjbGVhcklucHV0cygpOiB2b2lke1xyXG4gICAgdGhpcy5pbnB1dHMuZmlsdGVyKHggPT4geC50eXBlICE9PSBJbnB1dFR5cGUuQ29uc3RhbnQpLmZvckVhY2goaW5wID0+IHtcclxuICAgICAgaW5wLmNsZWFyKCk7XHJcbiAgICB9KTtcclxuICB9XHJcbiAgc2V0QnV0dG9ucyhmb3JtT25Ub3AsIGVkaXQ6IGJvb2xlYW4sIGlkID0gbnVsbCk6IHZvaWQge1xyXG4gICAgY29uc3QgcyA9IHRoaXMuaW5wdXRzLmZpbmQoeCA9PiB4LnR5cGUgPT09IElucHV0VHlwZS5TdWJtaXQpO1xyXG4gICAgaWYgKCFzKXtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgcy5uYW1lID0gZWRpdCA/ICdBY2NlcHQnIDogJ1NhdmUnO1xyXG4gICAgcy5jbGFzcyA9IGVkaXQgPyBzLmNsYXNzLnJlcGxhY2UoJ2dyZWVuJywgJ2JsdWUnKSA6IHMuY2xhc3MucmVwbGFjZSgnYmx1ZScsICdncmVlbicpO1xyXG4gIH1cclxuICBhZGRCdXR0b25zKG5hbWUgPSAnU2F2ZScsIGNscyA9ICdncmVlbicsIGNsZWFyID0gdHJ1ZSwgb25TdWJtaXQgPSBudWxsKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5pbnB1dHMuZmlsdGVyKHggPT4geC50eXBlID09PSBJbnB1dFR5cGUuU3VibWl0KS5sZW5ndGggPiAwKXtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgY29uc3QgYnIgPSBuZXcgSW5wdXRDbGFzcyh0aGlzLmVudmlyb25tZW50LCB0aGlzLmwsIG51bGwsIG51bGwsIElucHV0VHlwZS5MYWJlbCxcclxuICAgICAgdGhpcy5vblRvcCA/ICdzcGFjZScgOiAndW5kZXJsaW5lJyk7XHJcbiAgICBjb25zdCBzYXZlID0gbmV3IElucHV0Q2xhc3ModGhpcy5lbnZpcm9ubWVudCwgdGhpcy5sLCBuYW1lLCAnZmEtZHVvdG9uZSBmYS1jaGVjaycsIElucHV0VHlwZS5TdWJtaXQsXHJcbiAgICAgICdzYXZlLWZvcm0tYnRuIGgtMzAgJyArIGNscyk7XHJcbiAgICBzYXZlLm9uQ2xpY2sgPSAoKSA9PiB7XHJcbiAgICAgIHRoaXMuc3VibWl0KG9uU3VibWl0KTtcclxuICAgIH07XHJcbiAgICB0aGlzLmlucHV0cy5wdXNoKGJyKTtcclxuICAgIHRoaXMuaW5wdXRzLnB1c2goc2F2ZSk7XHJcbiAgICBpZiAoY2xlYXIpe1xyXG4gICAgICBjb25zdCBlcmFzZSA9IG5ldyBJbnB1dENsYXNzKHRoaXMuZW52aXJvbm1lbnQsIHRoaXMubCwgbnVsbCwgJ2ZhLWR1b3RvbmUgZmEtZXJhc2VyJywgSW5wdXRUeXBlLkJ1dHRvbixcclxuICAgICAgICAnZi1sIHctdSBncmV5IGVyYXNlLWZvcm0tYnRuIGgtMzAnKTtcclxuICAgICAgZXJhc2Uub25DbGljayA9ICgpID0+IHtcclxuICAgICAgICBpZiAodGhpcy5vblRvcCl7XHJcbiAgICAgICAgICB0aGlzLmNsZWFyKCk7XHJcbiAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICB0aGlzLmNsZWFySW5wdXRzKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9O1xyXG4gICAgICB0aGlzLmlucHV0cy5wdXNoKGVyYXNlKTtcclxuICAgIH1cclxuICB9XHJcbiAgZGF0YShkID0gbnVsbCk6IGFueSB7XHJcbiAgICBpZiAodGhpcy5pbnB1dHMuZmluZEluZGV4KHggPT4geC50eXBlID09PSBJbnB1dFR5cGUuRmlsZSkgPT09IC0xKXtcclxuICAgICAgaWYgKGQgPT0gbnVsbCl7XHJcbiAgICAgICAgZCA9IHt9O1xyXG4gICAgICB9XHJcbiAgICB9ZWxzZXtcclxuICAgICAgaWYgKGQgPT0gbnVsbCl7XHJcbiAgICAgICAgZCA9IG5ldyBGb3JtRGF0YSgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBjb25zdCBzZXREID0gKG4sIHZsKSA9PiB7XHJcbiAgICAgIGlmIChkIGluc3RhbmNlb2YgRm9ybURhdGEpe1xyXG4gICAgICAgIGlmICh2bCBpbnN0YW5jZW9mIEFycmF5KXtcclxuICAgICAgICAgIGZvciAoY29uc3QgdiBvZiB2bCl7XHJcbiAgICAgICAgICAgIGQuYXBwZW5kKG4sIHYpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1lbHNle1xyXG4gICAgICAgICAgZC5hcHBlbmQobiwgdmwpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBpZiAoZFtuXSA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICBfLnNldChkLCBuLCB2bCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGlmIChkW25dIGluc3RhbmNlb2YgQXJyYXkpe1xyXG4gICAgICAgICAgICBkW25dLnB1c2godmwpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgZFtuXSA9IFtkW25dLCB2bF07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9O1xyXG4gICAgdGhpcy5pbnB1dHMuZm9yRWFjaChpbnAgPT4ge1xyXG4gICAgICBjb25zdCB2bCA9IGlucC5kYXRhKCk7XHJcbiAgICAgIGlmICh2bCAhPT0gbnVsbCl7XHJcbiAgICAgICAgaWYgKHR5cGVvZiB2bCA9PT0gJ29iamVjdCcgJiYgISh2bCBpbnN0YW5jZW9mIEFycmF5KSl7XHJcbiAgICAgICAgICBmb3IgKGNvbnN0IFsga2V5LCB2YWx1ZSBdIG9mIE9iamVjdC5lbnRyaWVzKHZsKSkge1xyXG4gICAgICAgICAgICBzZXREKGtleSwgdmFsdWUpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBzZXREKGlucC5uYW1lLCB2bCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBkO1xyXG4gIH1cclxuICBqc29uKGQgPSBudWxsKToge30ge1xyXG4gICAgaWYgKGQgPT0gbnVsbCl7XHJcbiAgICAgIGQgPSB7fTtcclxuICAgIH1cclxuICAgIHRoaXMuaW5wdXRzLmZvckVhY2goaW5wID0+IHtcclxuICAgICAgY29uc3QgdmwgPSBpbnAuZGF0YSgpO1xyXG4gICAgICBpZiAodmwgIT09IG51bGwgJiYgdmwgIT09ICcnKXtcclxuICAgICAgICBpZiAodmwgaW5zdGFuY2VvZiBBcnJheSl7XHJcbiAgICAgICAgICBmb3IgKGNvbnN0IHYgb2Ygdmwpe1xyXG4gICAgICAgICAgICBkW2lucC5uYW1lXSA9IHY7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICBkW2lucC5uYW1lXSA9IHZsO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gZDtcclxuICB9XHJcbiAgc2V0RGF0YShkKTogdm9pZCB7XHJcbiAgICB0aGlzLmlucHV0cy5mb3JFYWNoKGlucCA9PiB7XHJcbiAgICAgIGNvbnN0IGl2ID0gXy5nZXQoZCwgaW5wLm5hbWUpO1xyXG4gICAgICBpZiAoaW5wLnR5cGUgPT09IElucHV0VHlwZS5WZWhpY2xlKXtcclxuICAgICAgICBjb25zdCBpdnQgPSBfLmdldChkLCAnVHlwZScpO1xyXG4gICAgICAgIGlucC5zZXRWYWx1ZSh7VmFsdWU6IGl2LCBUeXBlOiBpdnR9LCB0cnVlKTtcclxuICAgICAgfWVsc2UgaWYgKGlucC50eXBlID09PSBJbnB1dFR5cGUuVmVoaWNsZVNlYXJjaCl7XHJcbiAgICAgICAgY29uc3QgaXZzID0gXy5nZXQoZCwgaW5wLm5hbWUucmVwbGFjZSgnSWQnLCAnJykpO1xyXG4gICAgICAgIGNvbnN0IGl2dCA9IF8uZ2V0KGQsIGlucC5uYW1lLnJlcGxhY2UoJ0lkJywgJ1R5cGUnKSk7XHJcbiAgICAgICAgaW5wLnNldFZhbHVlKHtTZWFyY2g6IGl2cywgVmFsdWU6IGl2LCBUeXBlOiBpdnR9LCB0cnVlKTtcclxuICAgICAgfWVsc2UgaWYgKGlucC50eXBlICE9PSBJbnB1dFR5cGUuTGFiZWwgfHwgaXYgIT0gbnVsbCl7XHJcbiAgICAgICAgaW5wLnNldFZhbHVlKGl2LCB0cnVlKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoaW5wLnR5cGUgPT09IElucHV0VHlwZS5TZWxlY3RBdXRvQ29tcGxldGVQbGFxdWUgfHwgaW5wLnR5cGUgPT09IElucHV0VHlwZS5TZWxlY3RBdXRvQ29tcGxldGUpe1xyXG4gICAgICAgIGNvbnN0IGl2cyA9IF8uZ2V0KGQsIGlucC5uYW1lLnJlcGxhY2UoJ0lkJywgJycpKTtcclxuICAgICAgICBpbnAuc2V0U2VhcmNoKGl2cyk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIElucHV0Q2xhc3Mge1xyXG4gIGNvbnN0cnVjdG9yKGVudmlyb25tZW50OiBhbnksIGw6IChrLCB2PykgPT4gc3RyaW5nLCBuYW1lOiBzdHJpbmcsIGljb246IHN0cmluZyA9IG51bGwsXHJcbiAgICAgICAgICAgICAgdHlwZTogSW5wdXRUeXBlID0gSW5wdXRUeXBlLlRleHQsIGNsczogc3RyaW5nID0gJycsIHZhbHVlID0gbnVsbCxcclxuICAgICAgICAgICAgICByZXF1aXJlZDogYm9vbGVhbiA9IHRydWUsIG1pbkxlbmd0aCA9IC0xLCBtYXhMZW5ndGggPSAtMSkge1xyXG4gICAgdGhpcy5lbnZpcm9ubWVudCA9IGVudmlyb25tZW50O1xyXG4gICAgdGhpcy5sID0gbDtcclxuICAgIHRoaXMubmFtZSA9IG5hbWU7XHJcbiAgICB0aGlzLmlkID0gbmFtZTtcclxuICAgIHRoaXMubG9hZGluZ05hbWUgPSBuYW1lO1xyXG4gICAgdGhpcy5wbGFjZWhvbGRlciA9IG5hbWU7XHJcbiAgICB0aGlzLmljb24gPSBpY29uO1xyXG4gICAgdGhpcy5jbGFzcyA9IGNscyArIChbSW5wdXRUeXBlLk1vYmlsZSwgSW5wdXRUeXBlLlBob25lLCBJbnB1dFR5cGUuUGFzc3dvcmQsIElucHV0VHlwZS5FbWFpbCwgSW5wdXRUeXBlLk51bWJlciwgSW5wdXRUeXBlLlByaWNlLFxyXG4gICAgICBJbnB1dFR5cGUuTmF0aW9uYWxDb2RlLCBJbnB1dFR5cGUuU2hlYmEsIElucHV0VHlwZS5Qb3N0YWxDb2RlLCBJbnB1dFR5cGUuRGF0ZSwgSW5wdXRUeXBlLlRpbWUsIElucHV0VHlwZS5CaWxsTnVtYmVyXS5pbmNsdWRlcyh0eXBlKSA/ICcgbHRyJyA6ICcnKTtcclxuICAgIHRoaXMudHlwZSA9IHR5cGU7XHJcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XHJcbiAgICB0aGlzLmRlZmF1bHQgPSB2YWx1ZSA9PSBudWxsID8gbnVsbCA6ICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInIHx8IHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgPyBfLmNsb25lRGVlcCh2YWx1ZSkgOiBIZWxwZXJDbGFzcy5jbG9uZSh2YWx1ZSkpO1xyXG4gICAgdGhpcy5iYXNlUmVxdWlyZWQgPSByZXF1aXJlZDtcclxuICAgIHRoaXMucmVxdWlyZWQgPSByZXF1aXJlZDtcclxuICAgIHRoaXMuaW5FZGl0UmVxdWlyZWQgPSByZXF1aXJlZDtcclxuICAgIHRoaXMubWluTGVuZ3RoID0gdHlwZSA9PT0gSW5wdXRUeXBlLk1vYmlsZSB8fCB0eXBlID09PSBJbnB1dFR5cGUuUGhvbmUgPyAxMSA6XHJcbiAgICAgIHR5cGUgPT09IElucHV0VHlwZS5OYXRpb25hbENvZGUgfHwgdHlwZSA9PT0gSW5wdXRUeXBlLlBvc3RhbENvZGUgPyAxMCA6XHJcbiAgICAgIHR5cGUgPT09IElucHV0VHlwZS5TaGViYSA/IDI0IDogbWluTGVuZ3RoO1xyXG4gICAgdGhpcy5tYXhMZW5ndGggPSB0eXBlID09PSBJbnB1dFR5cGUuTW9iaWxlIHx8IHR5cGUgPT09IElucHV0VHlwZS5QaG9uZSA/IDExIDpcclxuICAgICAgdHlwZSA9PT0gSW5wdXRUeXBlLk5hdGlvbmFsQ29kZSB8fCB0eXBlID09PSBJbnB1dFR5cGUuUG9zdGFsQ29kZSA/IDEwIDpcclxuICAgICAgdHlwZSA9PT0gSW5wdXRUeXBlLlNoZWJhID8gMjQgOiBtYXhMZW5ndGg7XHJcbiAgfVxyXG4gIGVudmlyb25tZW50OiBhbnkgPSBudWxsO1xyXG4gIGw6IChrLCB2PykgPT4gc3RyaW5nO1xyXG4gIG5hbWU6IHN0cmluZztcclxuICB1cmwgPSBudWxsO1xyXG4gIHF1ZXJ5UGFyYW1zID0gbnVsbDtcclxuICB1cmxOZXdUYWIgPSBmYWxzZTtcclxuICBsb2FkaW5nTmFtZTogc3RyaW5nO1xyXG4gIHBsYWNlaG9sZGVyOiBzdHJpbmcgPSBudWxsO1xyXG4gIHRvb2x0aXA6IHN0cmluZztcclxuICBpZDogc3RyaW5nO1xyXG4gIGljb246IHN0cmluZztcclxuICBhZGROZXcgPSBmYWxzZTtcclxuICBjbGFzczogc3RyaW5nO1xyXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmcgPSBudWxsO1xyXG4gIHR5cGU6IElucHV0VHlwZTtcclxuICB2YWx1ZTtcclxuICBzZWFyY2g7XHJcbiAgZGVmYXVsdCA9IG51bGw7XHJcbiAgYmFzZVJlcXVpcmVkOiBib29sZWFuO1xyXG4gIHJlcXVpcmVkOiBib29sZWFuO1xyXG4gIGRpc2FibGVkID0gZmFsc2U7XHJcbiAgaW5FZGl0RGlzYWJsZWQgPSBmYWxzZTtcclxuICBpbkVkaXRWaXNpYmxlID0gdHJ1ZTtcclxuICBpbkVkaXRSZXF1aXJlZCA9IHRydWU7XHJcbiAgZGlzcGxheUxhYmVsID0gdHJ1ZTtcclxuICBsYWJlbDogc3RyaW5nID0gbnVsbDtcclxuICB3aXRoQ2xlYXIgPSBmYWxzZTtcclxuICBtaW5MZW5ndGggPSAtMTtcclxuICBtYXhMZW5ndGggPSAtMTtcclxuICBlcnJvcjogSW5wdXRFcnJvciA9IG51bGw7XHJcbiAgbG9hZGluZyA9IGZhbHNlO1xyXG4gIGJ1dHRvbiA9IG51bGw7XHJcbiAgaGFzQmFyY29kZVJlYWRlciA9IGZhbHNlO1xyXG4gIG9uQmFyY29kZVJlYWRlckNoYW5nZSA9IG51bGw7XHJcbiAgb25DbGlja0J1dHRvbjogKGlucCkgPT4gdm9pZCA9IG51bGw7XHJcbiAgcHJvZ3Jlc3M6IFByb2dyZXNzID0gbnVsbDtcclxuICBvbkNsaWNrOiAoYnRuKSA9PiB2b2lkID0gbnVsbDtcclxuICBvbktleVVwOiAoaW5wKSA9PiB2b2lkID0gbnVsbDtcclxuICBvbktleURvd246IChlKSA9PiB2b2lkID0gbnVsbDtcclxuICBvcHRpb25zOiBPcHRpb25DbGFzc1tdID0gW107XHJcbiAgbWF0Y2g6IElucHV0Q2xhc3MgPSBudWxsO1xyXG4gIHJlbDogSW5wdXRDbGFzcyA9IG51bGw7XHJcbiAgcmVsVXJsOiBzdHJpbmcgPSBudWxsO1xyXG4gIHRhYmxlOiBUYWJsZUNsYXNzO1xyXG4gIHN0eWxlID0ge307XHJcbiAgcG9zaXRpb24gPSAnYm90dG9tJztcclxuICBvbkNoYW5nZTogKHYsIGU/KSA9PiB2b2lkID0gbnVsbDtcclxuICBob3ZlciA9IC0xO1xyXG4gIHZpc2libGUgPSB0cnVlO1xyXG4gIGV4cG9ydFBkZiA9IGZhbHNlO1xyXG4gIG9wZW4gPSBmYWxzZTtcclxuICBtdWx0aXBsZSA9IGZhbHNlO1xyXG4gIG9ubHlDaGlsZCA9IHRydWU7XHJcbiAgYWxsb3dlZCA9IG51bGw7XHJcbiAgcm93ID0gbnVsbDtcclxuICByb3dzID0gW107XHJcbiAgaW5kZXggPSAwO1xyXG4gIGxldmVsID0gbnVsbDtcclxuICBtb2RhbDogTW9kYWxDbGFzcyA9IG51bGw7XHJcbiAgbmFtZUZ1bjogKHIpID0+IHZvaWQgPSBudWxsO1xyXG4gIG9uRm9jdXNPdXQ6IChlKSA9PiB2b2lkID0gbnVsbDtcclxuICBmb2N1cyhjaGFuZ2VJbmRleDogYm9vbGVhbiA9IGZhbHNlKTogdm9pZCB7fVxyXG4gIGNoYW5nZVR5cGU6ICh0OiBJbnB1dFR5cGUpID0+IHZvaWQgPSAoKSA9PiB7fTtcclxuICBzZXRWYWx1ZTogKHYsIGlzRWRpdCkgPT4gdm9pZCA9ICh2LCBpc0VkaXQpID0+IHsgdGhpcy52YWx1ZSA9IHY7IH07XHJcbiAgc2V0U2VhcmNoOiAodikgPT4gdm9pZCA9ICgpID0+IHt9O1xyXG4gIGNsZWFyOiAoKSA9PiB2b2lkID0gKCkgPT4geyB0aGlzLnZhbHVlID0gbnVsbDsgfTtcclxuICBmb2N1c091dDogKCkgPT4gdm9pZCA9ICgpID0+IHt9O1xyXG4gIGRhdGE6ICgpID0+IGFueSA9ICgpID0+IHtcclxuICAgIHJldHVybiB0aGlzLnZhbHVlO1xyXG4gIH1cclxuICBpc1ZhbGlkOiAoKSA9PiBib29sZWFuID0gKCkgPT4ge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG4gIGxvYWQodSA9IG51bGwsIGRvbmU6ICgpID0+IHZvaWQgPSBudWxsKTogdm9pZHtcclxuICAgIHUgPSB1ID8gdSA6IHRoaXMudXJsO1xyXG4gICAgaWYgKHUpe1xyXG4gICAgICB0aGlzLm9wdGlvbnMgPSBbXTtcclxuICAgICAgdGhpcy5ob3ZlciA9IC0xO1xyXG4gICAgICB0aGlzLmluZGV4ID0gMDtcclxuICAgICAgdGhpcy5yb3dzID0gW107XHJcbiAgICAgIGlmICh0eXBlb2YgdSA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgICBpZiAoIXUuaW5jbHVkZXMoJ3t9Jykpe1xyXG4gICAgICAgICAgbmV3IFJlcXVlc3RDbGFzcyh0aGlzLmVudmlyb25tZW50LCB0aGlzLmwpLnNlbmQodSA/IHUgOiB0aGlzLnVybCwgTWV0aG9kLlBvc3QsIG51bGwsIHRoaXMsIChyZXN1bHQpID0+IHtcclxuICAgICAgICAgICAgaWYgKHRoaXMudHlwZSA9PT0gSW5wdXRUeXBlLlNlbGVjdFNlYXJjaCB8fCB0aGlzLnR5cGUgPT09IElucHV0VHlwZS5TZWxlY3QgfHwgdGhpcy50eXBlID09PSBJbnB1dFR5cGUuU2VsZWN0QXV0b0NvbXBsZXRlIHx8XHJcbiAgICAgICAgICAgICAgdGhpcy50eXBlID09PSBJbnB1dFR5cGUuU2VsZWN0QXV0b0NvbXBsZXRlUGxhcXVlIHx8IHRoaXMudHlwZSA9PT0gSW5wdXRUeXBlLlNlbGVjdEF1dG9Db21wbGV0ZVBsYXF1ZU0gfHxcclxuICAgICAgICAgICAgICB0aGlzLnR5cGUgPT09IElucHV0VHlwZS5TZWxlY3RBdXRvQ29tcGxldGVQbGFxdWVGIHx8IHRoaXMudHlwZSA9PT0gSW5wdXRUeXBlLlNlbGVjdEF1dG9Db21wbGV0ZVBsYXF1ZUcgfHwgdGhpcy50eXBlID09PSBJbnB1dFR5cGUuUmFkaW8pIHtcclxuICAgICAgICAgICAgICBjb25zdCByID0gdGhpcy5nZXRPcHRpb25zKHJlc3VsdCwgbnVsbCk7XHJcbiAgICAgICAgICAgICAgY29uc3QgcyA9IHJlc3VsdC5maW5kKHggPT4geC5TZWxlY3RlZCk7XHJcbiAgICAgICAgICAgICAgaWYgKHMpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMudmFsdWUgPSBzLklkLnRvU3RyaW5nKCk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIHRoaXMuc2V0T3B0aW9ucyhyKTtcclxuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLnR5cGUgPT09IElucHV0VHlwZS5UcmVlIHx8IHRoaXMudHlwZSA9PT0gSW5wdXRUeXBlLlRyZWVSYWRpbykge1xyXG4gICAgICAgICAgICAgIHRoaXMucm93cyA9IHRoaXMuZ2V0Um93cyhyZXN1bHQsIG51bGwpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmIChkb25lKSB7XHJcbiAgICAgICAgICAgICAgZG9uZSgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1lbHNle1xyXG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IFtdO1xyXG4gICAgICAgIEVudW1VdGlscy5nZXRLZXlzQW5kVmFsdWVzKHUpLmZvckVhY2goKGspID0+IHtcclxuICAgICAgICAgIHJlc3VsdC5wdXNoKHtOYW1lOiB0aGlzLmwoay5rZXkpLCBJZDogay52YWx1ZS50b1N0cmluZygpfSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgY29uc3QgciA9IHRoaXMuZ2V0T3B0aW9ucyhyZXN1bHQsIG51bGwpO1xyXG4gICAgICAgIHRoaXMuc2V0T3B0aW9ucyhyKTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmICh0aGlzLm9wdGlvbnMgaW5zdGFuY2VvZiBBcnJheSl7XHJcbiAgICAgIHRoaXMub3B0aW9ucy5mb3JFYWNoKHggPT4geC5pbmRleCA9IHRoaXMuaW5kZXgrKyk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHNldE9wdGlvbnMocik6IHZvaWR7XHJcbiAgICB0aGlzLm9wdGlvbnMgPSByO1xyXG4gICAgaWYgKHRoaXMudmFsdWUgIT0gbnVsbCl7XHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuc2V0VmFsdWUodGhpcy52YWx1ZSwgdHJ1ZSk7XHJcbiAgICAgIH0sIDUwMCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGdldE9wdGlvbnMociwgcCwgdHJlZSA9IHRydWUpOiBPcHRpb25DbGFzc1tde1xyXG4gICAgcmV0dXJuIHIuZmlsdGVyKHggPT4gKHAgPT0gbnVsbCAmJiAheC5QYXJlbnRJZCkgfHwgeC5QYXJlbnRJZCA9PT0gcCB8fCAhdHJlZSlcclxuICAgICAgLm1hcCgoeCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IG8gPSBuZXcgT3B0aW9uQ2xhc3MoeC5OYW1lLCB4LklkLnRvU3RyaW5nKCkpO1xyXG4gICAgICAgIGlmICh0aGlzLnR5cGUgPT09IElucHV0VHlwZS5TZWxlY3RBdXRvQ29tcGxldGVQbGFxdWUgfHwgdGhpcy50eXBlID09PSBJbnB1dFR5cGUuU2VsZWN0QXV0b0NvbXBsZXRlUGxhcXVlTSB8fFxyXG4gICAgICAgICAgdGhpcy50eXBlID09PSBJbnB1dFR5cGUuU2VsZWN0QXV0b0NvbXBsZXRlUGxhcXVlRiB8fCB0aGlzLnR5cGUgPT09IElucHV0VHlwZS5TZWxlY3RBdXRvQ29tcGxldGVQbGFxdWVHIHx8IHRoaXMubmFtZSA9PT0gJ0NhcklkJyl7XHJcbiAgICAgICAgICBjb25zdCB0biA9IG8ubmFtZS5zcGxpdCgnXycpO1xyXG4gICAgICAgICAgaWYgKHRuLmxlbmd0aCA9PT0gNCl7XHJcbiAgICAgICAgICAgIHRuWzFdICs9ICcmbHJtOyc7XHJcbiAgICAgICAgICAgIHRuWzJdICs9ICcgfCc7XHJcbiAgICAgICAgICAgIG8ubmFtZSA9IHRuLmpvaW4oJyAnKTtcclxuICAgICAgICAgIH0gZWxzZSBpZiAodG4ubGVuZ3RoID09PSAyKXtcclxuICAgICAgICAgICAgby5uYW1lID0gdG4uam9pbignICcpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBvLnNlYXJjaCA9IHguU2VhcmNoO1xyXG4gICAgICAgIG8ub3B0aW9uID0geDtcclxuICAgICAgICBvLmluZGV4ID0gdGhpcy5pbmRleCsrO1xyXG4gICAgICAgIG8ub3B0aW9ucyA9IHRyZWUgPyB0aGlzLmdldE9wdGlvbnMociwgeC5JZCkgOiBbXTtcclxuICAgICAgICByZXR1cm4gbztcclxuICAgICAgfSk7XHJcbiAgfVxyXG4gIGdldFJvd3MociwgcCk6IFRyZWVSb3dDbGFzc1tde1xyXG4gICAgY29uc3QgbCA9IFtdO1xyXG4gICAgci5maWx0ZXIoeCA9PiAocCA9PSBudWxsICYmICF4LlBhcmVudElkKSB8fCB4LlBhcmVudElkID09PSBwKS5mb3JFYWNoKCh4KSA9PiB7XHJcbiAgICAgIGxldCBjID0gdGhpcy5nZXRSb3dzKHIsIHguSWQpO1xyXG4gICAgICBjID0gYy5sZW5ndGggPiAwID8gYyA6IHguQ2hpbGRyZW4gPyB4LkNoaWxkcmVuLm1hcChhID0+IG5ldyBUcmVlUm93Q2xhc3MoYS5OYW1lLCBhLklkLCBhLlNlbGVjdGVkKSkgOiBbXTtcclxuICAgICAgbGV0IHMgPSB4LlNlbGVjdGVkID09PSB0cnVlO1xyXG4gICAgICBpZiAodGhpcy5vbmx5Q2hpbGQpe1xyXG4gICAgICAgIHMgPSBjLmxlbmd0aCA9PT0gMCA/IHguU2VsZWN0ZWQgOiAoYy5maW5kKHkgPT4geS5zZWxlY3RlZCA9PT0gZmFsc2UgfHwgeS5zZWxlY3RlZCA9PT0gbnVsbCkgPT0gbnVsbCA/IHRydWUgOlxyXG4gICAgICAgICAgKGMuZmluZCh5ID0+IHkuc2VsZWN0ZWQgPT09IHRydWUgfHwgeS5zZWxlY3RlZCA9PT0gbnVsbCkgIT0gbnVsbCA/IG51bGwgOiBmYWxzZSkpO1xyXG4gICAgICB9XHJcbiAgICAgIGNvbnN0IG4gPSB0aGlzLm5hbWVGdW4gPyB0aGlzLm5hbWVGdW4oeCkgOiB4Lk5hbWU7XHJcbiAgICAgIGwucHVzaChuZXcgVHJlZVJvd0NsYXNzKG4sIHguSWQsIHMsIGMpKTtcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIGw7XHJcbiAgfVxyXG4gIGdldExhYmVsKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gSGVscGVyQ2xhc3MuZ2V0TGFiZWwodGhpcyk7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgT3B0aW9uQ2xhc3Mge1xyXG4gIGNvbnN0cnVjdG9yKG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZywgb3B0aW9uczogT3B0aW9uQ2xhc3NbXSA9IFtdLCBjbHM6IHN0cmluZyA9IG51bGwpIHtcclxuICAgIHRoaXMubmFtZSA9IG5hbWU7XHJcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XHJcbiAgICB0aGlzLm9wdGlvbnMgPSBvcHRpb25zO1xyXG4gICAgdGhpcy5jbGFzcyA9IGNscztcclxuICB9XHJcbiAgb3B0aW9uO1xyXG4gIHNlYXJjaDogc3RyaW5nO1xyXG4gIGNsYXNzOiBzdHJpbmc7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIHZhbHVlOiBzdHJpbmc7XHJcbiAgaW5kZXg6IG51bWJlcjtcclxuICBzaG93ID0gdHJ1ZTtcclxuICBzZWxlY3RlZCA9IGZhbHNlO1xyXG4gIHBhcmVudDogT3B0aW9uQ2xhc3MgPSBudWxsO1xyXG4gIG9wdGlvbnM6IE9wdGlvbkNsYXNzW107XHJcbiAgbG9hZGluZyA9IGZhbHNlO1xyXG59XHJcbmV4cG9ydCBjbGFzcyBEYXlDbGFzcyB7XHJcbiAgY29uc3RydWN0b3IoZGF5OiBudW1iZXIsIHRvZGF5OiBib29sZWFuLCBzZWxlY3RlZDogYm9vbGVhbikge1xyXG4gICAgdGhpcy5kYXkgPSBkYXk7XHJcbiAgICB0aGlzLnRvZGF5ID0gdG9kYXk7XHJcbiAgICB0aGlzLnNlbGVjdGVkID0gc2VsZWN0ZWQ7XHJcbiAgfVxyXG4gIGRheTogbnVtYmVyO1xyXG4gIHRvZGF5OiBib29sZWFuO1xyXG4gIHNlbGVjdGVkOiBib29sZWFuO1xyXG59XHJcbmV4cG9ydCBjbGFzcyBUcmVlUm93Q2xhc3Mge1xyXG4gIGNvbnN0cnVjdG9yKG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZywgc2VsZWN0ZWQ6IGJvb2xlYW4gPSBmYWxzZSwgY2hpbGRyZW46IFRyZWVSb3dDbGFzc1tdID0gW10pIHtcclxuICAgIHRoaXMubmFtZSA9IG5hbWU7XHJcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XHJcbiAgICB0aGlzLnNlbGVjdGVkID0gc2VsZWN0ZWQ7XHJcbiAgICB0aGlzLmNoaWxkcmVuID0gY2hpbGRyZW47XHJcbiAgfVxyXG4gIG5hbWU6IHN0cmluZztcclxuICB2YWx1ZTogc3RyaW5nO1xyXG4gIHNlbGVjdGVkOiBib29sZWFuO1xyXG4gIHBhcmVudDogVHJlZVJvd0NsYXNzO1xyXG4gIGNoaWxkcmVuOiBUcmVlUm93Q2xhc3NbXTtcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIEFjY29yZGlvbkNsYXNzIHtcclxuICBjb25zdHJ1Y3RvcihsOiAoaywgdj8pID0+IHN0cmluZywgbmFtZTogc3RyaW5nLCBjbHM6IHN0cmluZyA9ICcnLCByb3dzOiBBY2NvcmRpb25Sb3dDbGFzc1tdKSB7XHJcbiAgICB0aGlzLmwgPSBsO1xyXG4gICAgdGhpcy5uYW1lID0gbmFtZTtcclxuICAgIHRoaXMuY2xhc3MgPSBjbHM7XHJcbiAgICB0aGlzLnJvd3MgPSByb3dzO1xyXG4gIH1cclxuICBsOiAoaywgdj8pID0+IHN0cmluZztcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgY2xhc3M6IHN0cmluZztcclxuICByb3dzOiBBY2NvcmRpb25Sb3dDbGFzc1tdO1xyXG4gIGhhc0RlbGV0ZSA9IGZhbHNlO1xyXG4gIGRpc3BsYXlMYWJlbCA9IGZhbHNlO1xyXG4gIGxvYWRpbmcgPSBmYWxzZTtcclxuICBvbkRlbGV0ZTogKHJvdykgPT4gdm9pZCA9IG51bGw7XHJcbiAgY2hlY2soKTogYm9vbGVhbntcclxuICAgIGZvciAoY29uc3Qgcm93IG9mIHRoaXMucm93cyl7XHJcbiAgICAgIGlmICghcm93LmZvcm0uY2hlY2soKSl7XHJcbiAgICAgICAgcm93Lm9wZW4oKTtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIEFjY29yZGlvblJvd0NsYXNzIHtcclxuICBjb25zdHJ1Y3RvcihpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcsIGZvcm06IEZvcm1DbGFzcyA9IG51bGwsIHRhYmxlOiBUYWJsZUNsYXNzID0gbnVsbCkge1xyXG4gICAgdGhpcy5pZCA9IGlkO1xyXG4gICAgdGhpcy5uYW1lID0gbmFtZTtcclxuICAgIHRoaXMuZm9ybSA9IGZvcm07XHJcbiAgICB0aGlzLnRhYmxlID0gdGFibGU7XHJcbiAgfVxyXG4gIGlkOiBzdHJpbmc7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIHNob3cgPSB0cnVlO1xyXG4gIGZvcm06IEZvcm1DbGFzcztcclxuICB0YWJsZTogVGFibGVDbGFzcztcclxuICB0b2dnbGUoKTogdm9pZCB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgJCgnI0FjY29yZGlvblJvdycgKyB0aGlzLmlkICsgJyA+IC5oZWFkZXInKS5jbGljaygpO1xyXG4gICAgfSwgMTAwKTtcclxuICB9XHJcbiAgb3BlbigpOiB2b2lkIHtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICBpZiAoISQoJyNBY2NvcmRpb25Sb3cnICsgdGhpcy5pZCArICcgPiAuY29udGVudCcpLmhhc0NsYXNzKCdvcGVuJykpe1xyXG4gICAgICAgICQoJyNBY2NvcmRpb25Sb3cnICsgdGhpcy5pZCArICcgPiAuaGVhZGVyJykuY2xpY2soKTtcclxuICAgICAgfVxyXG4gICAgfSwgMTAwKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -54,12 +54,7 @@ export class FormPlaqueComponent {
|
|
|
54
54
|
this.part1.onChange = (v) => {
|
|
55
55
|
this.inp.error = null;
|
|
56
56
|
if (v.length === 2 && this.inp.type === InputType.Plaque) {
|
|
57
|
-
|
|
58
|
-
this.part3.focus(true);
|
|
59
|
-
}
|
|
60
|
-
else {
|
|
61
|
-
this.part2.focus(true);
|
|
62
|
-
}
|
|
57
|
+
this.part2.focus(true);
|
|
63
58
|
}
|
|
64
59
|
else if (v.length === 3 && this.inp.type === InputType.PlaqueM) {
|
|
65
60
|
this.part3.focus(true);
|
|
@@ -68,14 +63,10 @@ export class FormPlaqueComponent {
|
|
|
68
63
|
this.part2.onChange = (v) => {
|
|
69
64
|
this.inp.error = null;
|
|
70
65
|
if (v.length === 1) {
|
|
71
|
-
|
|
72
|
-
this.part3.focus(true);
|
|
73
|
-
}, 100);
|
|
66
|
+
this.part3.focus(true);
|
|
74
67
|
}
|
|
75
68
|
else if (v.length === 0) {
|
|
76
|
-
|
|
77
|
-
this.part1.focus(true);
|
|
78
|
-
}, 100);
|
|
69
|
+
this.part1.focus(true);
|
|
79
70
|
}
|
|
80
71
|
};
|
|
81
72
|
this.part3.onChange = (v) => {
|
|
@@ -83,7 +74,7 @@ export class FormPlaqueComponent {
|
|
|
83
74
|
if (v.length === 3 && this.inp.type === InputType.Plaque) {
|
|
84
75
|
this.part4.focus(true);
|
|
85
76
|
}
|
|
86
|
-
if (v.length === 0 && this.inp.type === InputType.Plaque) {
|
|
77
|
+
else if (v.length === 0 && this.inp.type === InputType.Plaque) {
|
|
87
78
|
this.part2.focus(true);
|
|
88
79
|
}
|
|
89
80
|
else if (v.length === 5 && this.inp.type === InputType.PlaqueM) {
|
|
@@ -98,10 +89,8 @@ export class FormPlaqueComponent {
|
|
|
98
89
|
if (v.length === 2) {
|
|
99
90
|
this.changeIndex.emit('Tab');
|
|
100
91
|
}
|
|
101
|
-
else {
|
|
102
|
-
|
|
103
|
-
this.part3.focus(true);
|
|
104
|
-
}
|
|
92
|
+
else if (v.length === 0) {
|
|
93
|
+
this.part3.focus(true);
|
|
105
94
|
}
|
|
106
95
|
};
|
|
107
96
|
this.inp.setValue = (v) => {
|
|
@@ -171,12 +160,7 @@ export class FormPlaqueComponent {
|
|
|
171
160
|
if (this.inp.type === InputType.Plaque) {
|
|
172
161
|
if (p === 'Part1') {
|
|
173
162
|
if (a === 'Tab' || a === 'Enter') {
|
|
174
|
-
|
|
175
|
-
this.part3.focus(true);
|
|
176
|
-
}
|
|
177
|
-
else {
|
|
178
|
-
this.part2.focus(true);
|
|
179
|
-
}
|
|
163
|
+
this.part2.focus(true);
|
|
180
164
|
}
|
|
181
165
|
else if (a === 'ShiftTab' || a === 'ShiftEnter') {
|
|
182
166
|
this.changeIndex.emit('ShiftTab');
|
|
@@ -195,12 +179,7 @@ export class FormPlaqueComponent {
|
|
|
195
179
|
this.part4.focus(true);
|
|
196
180
|
}
|
|
197
181
|
else if (a === 'ShiftTab' || a === 'ShiftEnter') {
|
|
198
|
-
|
|
199
|
-
this.part1.focus(true);
|
|
200
|
-
}
|
|
201
|
-
else {
|
|
202
|
-
this.part2.focus(true);
|
|
203
|
-
}
|
|
182
|
+
this.part2.focus(true);
|
|
204
183
|
}
|
|
205
184
|
}
|
|
206
185
|
else if (p === 'Part4') {
|
|
@@ -275,4 +254,4 @@ FormPlaqueComponent.propDecorators = {
|
|
|
275
254
|
inputDiv: [{ type: ViewChild, args: ['inputDiv',] }],
|
|
276
255
|
inputLabel: [{ type: ViewChild, args: ['inputLabel',] }]
|
|
277
256
|
};
|
|
278
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5wbGFxdWUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkQ6L1Byb2plY3RzL1BzVG9vbGtpdC9VSS9wcm9qZWN0cy9wcy10b29sa2l0LXVpL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2Zvcm0vcGxhcXVlL2Zvcm0ucGxhcXVlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNwRyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDdkQsT0FBTyxFQUFDLFVBQVUsRUFBRSxTQUFTLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUNsRSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFPMUQsTUFBTSxPQUFPLG1CQUFtQjtJQWE5QjtRQVRBLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztJQVV6QyxDQUFDO0lBTEQsSUFBSSxJQUFJLEtBQXVCLE9BQU8sU0FBUyxDQUFDLENBQUMsQ0FBQztJQU9sRCxRQUFRO1FBQ04sSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsQ0FBQyxNQUFNLEVBQUUsZ0NBQWdDLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzdJLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxFQUFFLGdDQUFnQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2pKLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsTUFBTSxFQUFFLGdDQUFnQyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUM3SSxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxDQUFDLE1BQU0sRUFBRSxnQ0FBZ0MsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNySixJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7UUFDOUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBQ3pHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO1FBQzFHLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLE9BQU8sRUFBQztZQUN0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LENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzVPLENBQUM7OztZQXJQRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtnQkFDM0IsdXFDQUEyQzs7YUFFNUM7Ozs7a0JBRUUsS0FBSzswQkFFTCxNQUFNO3dCQU9OLFNBQVMsU0FBQyxXQUFXO3VCQUNyQixTQUFTLFNBQUMsVUFBVTt5QkFDcEIsU0FBUyxTQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7SW5wdXRDbGFzc30gZnJvbSAnLi4vLi4vLi4vY2xhc3Nlcy9mb3JtLmNsYXNzJztcclxuaW1wb3J0IHtJbnB1dEVycm9yLCBJbnB1dFR5cGV9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvZW51bS5jbGFzcyc7XHJcbmltcG9ydCB7SGVscGVyQ2xhc3N9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvaGVscGVyLmNsYXNzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWZvcm0tcGxhcXVlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZm9ybS5wbGFxdWUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2Zvcm0ucGxhcXVlLmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRm9ybVBsYXF1ZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdHtcclxuICBASW5wdXQoKVxyXG4gIGlucDogSW5wdXRDbGFzcztcclxuICBAT3V0cHV0KClcclxuICBjaGFuZ2VJbmRleCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG4gIHBhcnQxOiBJbnB1dENsYXNzO1xyXG4gIHBhcnQyOiBJbnB1dENsYXNzO1xyXG4gIHBhcnQzOiBJbnB1dENsYXNzO1xyXG4gIHBhcnQ0OiBJbnB1dENsYXNzO1xyXG4gIGdldCB0eXBlKCk6IHR5cGVvZiBJbnB1dFR5cGUgeyByZXR1cm4gSW5wdXRUeXBlOyB9XHJcbiAgQFZpZXdDaGlsZCgnaW5wdXRCYXNlJykgaW5wdXRCYXNlOiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ2lucHV0RGl2JykgaW5wdXREaXY6IEVsZW1lbnRSZWY7XHJcbiAgQFZpZXdDaGlsZCgnaW5wdXRMYWJlbCcpIGlucHV0TGFiZWw6IEVsZW1lbnRSZWY7XHJcbiAgY29uc3RydWN0b3IoKXtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5wYXJ0MSA9IG5ldyBJbnB1dENsYXNzKHRoaXMuaW5wLmVudmlyb25tZW50LCB0aGlzLmlucC5sLCAnUGFydDEnLCBudWxsLCBJbnB1dFR5cGUuTnVtYmVyLCAncGxhcXVlLXBhcnQtMSBwbGFxdWUtcGFydC1pdGVtJywgbnVsbCwgdHJ1ZSk7XHJcbiAgICB0aGlzLnBhcnQyID0gbmV3IElucHV0Q2xhc3ModGhpcy5pbnAuZW52aXJvbm1lbnQsIHRoaXMuaW5wLmwsICdQYXJ0MicsIG51bGwsIElucHV0VHlwZS5UZXh0LCAncGxhcXVlLXBhcnQtMiBwbGFxdWUtcGFydC1pdGVtJywgbnVsbCwgdHJ1ZSwgMSwgMSk7XHJcbiAgICB0aGlzLnBhcnQzID0gbmV3IElucHV0Q2xhc3ModGhpcy5pbnAuZW52aXJvbm1lbnQsIHRoaXMuaW5wLmwsICdQYXJ0MycsIG51bGwsIElucHV0VHlwZS5OdW1iZXIsICdwbGFxdWUtcGFydC0zIHBsYXF1ZS1wYXJ0LWl0ZW0nLCBudWxsLCB0cnVlKTtcclxuICAgIHRoaXMucGFydDQgPSBuZXcgSW5wdXRDbGFzcyh0aGlzLmlucC5lbnZpcm9ubWVudCwgdGhpcy5pbnAubCwgJ1BhcnQ0JywgbnVsbCwgSW5wdXRUeXBlLk51bWJlciwgJ3BsYXF1ZS1wYXJ0LTQgcGxhcXVlLXBhcnQtaXRlbScsIG51bGwsIHRydWUsIDEwLCA5OSk7XHJcbiAgICB0aGlzLnBhcnQxLmRpc3BsYXlMYWJlbCA9IHRoaXMucGFydDIuZGlzcGxheUxhYmVsID0gdGhpcy5wYXJ0My5kaXNwbGF5TGFiZWwgPSB0aGlzLnBhcnQ0LmRpc3BsYXlMYWJlbCA9IGZhbHNlO1xyXG4gICAgdGhpcy5wYXJ0MS5wbGFjZWhvbGRlciA9IHRoaXMucGFydDIucGxhY2Vob2xkZXIgPSB0aGlzLnBhcnQzLnBsYWNlaG9sZGVyID0gdGhpcy5wYXJ0NC5wbGFjZWhvbGRlciA9IG51bGw7XHJcbiAgICB0aGlzLnBhcnQxLmRpc2FibGVkID0gdGhpcy5wYXJ0Mi5kaXNhYmxlZCA9IHRoaXMucGFydDMuZGlzYWJsZWQgPSB0aGlzLnBhcnQ0LmRpc2FibGVkID0gdGhpcy5pbnAuZGlzYWJsZWQ7XHJcbiAgICBpZiAodGhpcy5pbnAudHlwZSA9PT0gSW5wdXRUeXBlLlBsYXF1ZU0pe1xyXG4gICAgICB0aGlzLnBhcnQxLm1pbkxlbmd0aCA9IDEwMDtcclxuICAgICAgdGhpcy5wYXJ0MS5tYXhMZW5ndGggPSA5OTk7XHJcbiAgICAgIHRoaXMucGFydDEuY2xhc3MgKz0gJyBwbGFxdWUtcGFydC1tJztcclxuICAgICAgdGhpcy5wYXJ0Mi5jbGFzcyArPSAnIHBsYXF1ZS1wYXJ0LW0nO1xyXG4gICAgICB0aGlzLnBhcnQzLm1pbkxlbmd0aCA9IDEwMDAwO1xyXG4gICAgICB0aGlzLnBhcnQzLm1heExlbmd0aCA9IDk5OTk5O1xyXG4gICAgICB0aGlzLnBhcnQzLmNsYXNzICs9ICcgcGxhcXVlLXBhcnQtbSc7XHJcbiAgICAgIHRoaXMucGFydDQuY2xhc3MgKz0gJyBwbGFxdWUtcGFydC1tJztcclxuICAgIH0gZWxzZSBpZiAodGhpcy5pbnAudHlwZSA9PT0gSW5wdXRUeXBlLlBsYXF1ZUYpe1xyXG4gICAgICB0aGlzLnBhcnQxLm1pbkxlbmd0aCA9IDEwMDtcclxuICAgICAgdGhpcy5wYXJ0MS5tYXhMZW5ndGggPSA5OTk5OTk5OTk7XHJcbiAgICAgIHRoaXMucGFydDEuY2xhc3MgKz0gJyBwbGFxdWUtcGFydC1mJztcclxuICAgICAgdGhpcy5wYXJ0Mi5jbGFzcyArPSAnIHBsYXF1ZS1wYXJ0LWYnO1xyXG4gICAgICB0aGlzLnBhcnQzLm1pbkxlbmd0aCA9IDE7XHJcbiAgICAgIHRoaXMucGFydDMubWF4TGVuZ3RoID0gMjA7XHJcbiAgICAgIHRoaXMucGFydDMudHlwZSA9IElucHV0VHlwZS5UZXh0O1xyXG4gICAgICB0aGlzLnBhcnQzLmNsYXNzICs9ICcgcGxhcXVlLXBhcnQtZic7XHJcbiAgICAgIHRoaXMucGFydDQuY2xhc3MgKz0gJyBwbGFxdWUtcGFydC1mJztcclxuICAgIH0gZWxzZSBpZiAodGhpcy5pbnAudHlwZSA9PT0gSW5wdXRUeXBlLlBsYXF1ZUcpe1xyXG4gICAgICB0aGlzLnBhcnQxLm1pbkxlbmd0aCA9IDM7XHJcbiAgICAgIHRoaXMucGFydDEubWF4TGVuZ3RoID0gMTU7XHJcbiAgICAgIHRoaXMucGFydDEudHlwZSA9IElucHV0VHlwZS5UZXh0O1xyXG4gICAgICB0aGlzLnBhcnQxLmNsYXNzICs9ICcgcGxhcXVlLXBhcnQtZyc7XHJcbiAgICAgIHRoaXMucGFydDIuY2xhc3MgKz0gJyBwbGFxdWUtcGFydC1nJztcclxuICAgICAgdGhpcy5wYXJ0My5jbGFzcyArPSAnIHBsYXF1ZS1wYXJ0LWcnO1xyXG4gICAgICB0aGlzLnBhcnQ0LmNsYXNzICs9ICcgcGxhcXVlLXBhcnQtZyc7XHJcbiAgICB9IGVsc2V7XHJcbiAgICAgIHRoaXMucGFydDEubWluTGVuZ3RoID0gMTA7XHJcbiAgICAgIHRoaXMucGFydDEubWF4TGVuZ3RoID0gOTk7XHJcbiAgICAgIHRoaXMucGFydDMubWluTGVuZ3RoID0gMTAwO1xyXG4gICAgICB0aGlzLnBhcnQzLm1heExlbmd0aCA9IDk5OTtcclxuICAgIH1cclxuICAgIHRoaXMucGFydDEub25DaGFuZ2UgPSAodikgPT4ge1xyXG4gICAgICB0aGlzLmlucC5lcnJvciA9IG51bGw7XHJcbiAgICAgIGlmICh2Lmxlbmd0aCA9PT0gMiAmJiB0aGlzLmlucC50eXBlID09PSBJbnB1dFR5cGUuUGxhcXVlKXtcclxuICAgICAgICBpZiAodGhpcy5wYXJ0Mi5kYXRhKCkgIT0gbnVsbCl7XHJcbiAgICAgICAgICB0aGlzLnBhcnQzLmZvY3VzKHRydWUpO1xyXG4gICAgICAgIH1lbHNle1xyXG4gICAgICAgICAgdGhpcy5wYXJ0Mi5mb2N1cyh0cnVlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSBpZiAodi5sZW5ndGggPT09IDMgJiYgdGhpcy5pbnAudHlwZSA9PT0gSW5wdXRUeXBlLlBsYXF1ZU0pe1xyXG4gICAgICAgIHRoaXMucGFydDMuZm9jdXModHJ1ZSk7XHJcbiAgICAgIH1cclxuICAgIH07XHJcbiAgICB0aGlzLnBhcnQyLm9uQ2hhbmdlID0gKHYpID0+IHtcclxuICAgICAgdGhpcy5pbnAuZXJyb3IgPSBudWxsO1xyXG4gICAgICBpZiAodi5sZW5ndGggPT09IDEpe1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5wYXJ0My5mb2N1cyh0cnVlKTtcclxuICAgICAgICB9LCAxMDApO1xyXG4gICAgICB9IGVsc2UgaWYgKHYubGVuZ3RoID09PSAwKXtcclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgIHRoaXMucGFydDEuZm9jdXModHJ1ZSk7XHJcbiAgICAgICAgfSwgMTAwKTtcclxuICAgICAgfVxyXG4gICAgfTtcclxuICAgIHRoaXMucGFydDMub25DaGFuZ2UgPSAodikgPT4ge1xyXG4gICAgICB0aGlzLmlucC5lcnJvciA9IG51bGw7XHJcbiAgICAgIGlmICh2Lmxlbmd0aCA9PT0gMyAmJiB0aGlzLmlucC50eXBlID09PSBJbnB1dFR5cGUuUGxhcXVlKXtcclxuICAgICAgICB0aGlzLnBhcnQ0LmZvY3VzKHRydWUpO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh2Lmxlbmd0aCA9PT0gMCAmJiB0aGlzLmlucC50eXBlID09PSBJbnB1dFR5cGUuUGxhcXVlKXtcclxuICAgICAgICB0aGlzLnBhcnQyLmZvY3VzKHRydWUpO1xyXG4gICAgICB9IGVsc2UgaWYgKHYubGVuZ3RoID09PSA1ICYmIHRoaXMuaW5wLnR5cGUgPT09IElucHV0VHlwZS5QbGFxdWVNKXtcclxuICAgICAgICB0aGlzLmNoYW5nZUluZGV4LmVtaXQoJ1RhYicpO1xyXG4gICAgICB9IGVsc2UgaWYgKHYubGVuZ3RoID09PSAwICYmIHRoaXMuaW5wLnR5cGUgPT09IElucHV0VHlwZS5QbGFxdWVNKXtcclxuICAgICAgICB0aGlzLnBhcnQxLmZvY3VzKHRydWUpO1xyXG4gICAgICB9XHJcbiAgICB9O1xyXG4gICAgdGhpcy5wYXJ0NC5vbkNoYW5nZSA9ICh2KSA9PiB7XHJcbiAgICAgIHRoaXMuaW5wLmVycm9yID0gbnVsbDtcclxuICAgICAgaWYgKHYubGVuZ3RoID09PSAyKXtcclxuICAgICAgICB0aGlzLmNoYW5nZUluZGV4LmVtaXQoJ1RhYicpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlmICh2Lmxlbmd0aCA9PT0gMCl7XHJcbiAgICAgICAgICB0aGlzLnBhcnQzLmZvY3VzKHRydWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfTtcclxuICAgIHRoaXMuaW5wLnNldFZhbHVlID0gKHYpID0+IHtcclxuICAgICAgY29uc3QgcGFydHMgPSB2LnNwbGl0KCdfJyk7XHJcbiAgICAgIGlmICh0aGlzLmlucC50eXBlID09PSBJbnB1dFR5cGUuUGxhcXVlKXtcclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgIHRoaXMuaW5wLnZhbHVlID0gdjtcclxuICAgICAgICAgIHRoaXMucGFydDEudmFsdWUgPSBwYXJ0c1swXTtcclxuICAgICAgICAgIHRoaXMucGFydDIudmFsdWUgPSBwYXJ0c1sxXTtcclxuICAgICAgICAgIHRoaXMucGFydDMudmFsdWUgPSBwYXJ0c1syXTtcclxuICAgICAgICAgIHRoaXMucGFydDQudmFsdWUgPSBwYXJ0c1szXTtcclxuICAgICAgICB9LCAxMDApO1xyXG4gICAgICB9IGVsc2UgaWYgKHRoaXMuaW5wLnR5cGUgPT09IElucHV0VHlwZS5QbGFxdWVNIHx8IHRoaXMuaW5wLnR5cGUgPT09IElucHV0VHlwZS5QbGFxdWVGKXtcclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgIHRoaXMuaW5wLnZhbHVlID0gdjtcclxuICAgICAgICAgIHRoaXMucGFydDEudmFsdWUgPSBwYXJ0c1swXTtcclxuICAgICAgICAgIHRoaXMucGFydDMudmFsdWUgPSBwYXJ0c1sxXTtcclxuICAgICAgICB9LCAxMDApO1xyXG4gICAgICB9IGVsc2UgaWYgKHRoaXMuaW5wLnR5cGUgPT09IElucHV0VHlwZS5QbGFxdWVHKXtcclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgIHRoaXMuaW5wLnZhbHVlID0gdjtcclxuICAgICAgICAgIHRoaXMucGFydDEudmFsdWUgPSBwYXJ0c1swXTtcclxuICAgICAgICB9LCAxMDApO1xyXG4gICAgICB9ZWxzZXtcclxuICAgICAgICB0aGlzLnBhcnQxLnZhbHVlID0gJyc7XHJcbiAgICAgICAgdGhpcy5wYXJ0Mi52YWx1ZSA9ICcnO1xyXG4gICAgICAgIHRoaXMucGFydDMudmFsdWUgPSAnJztcclxuICAgICAgICB0aGlzLnBhcnQ0LnZhbHVlID0gJyc7XHJcbiAgICAgIH1cclxuICAgIH07XHJcbiAgICB0aGlzLmlucC5pc1ZhbGlkID0gKCkgPT4ge1xyXG4gICAgICB0aGlzLmlucC52YWx1ZSA9IHRoaXMuZ2V0VmFsdWUoKTtcclxuICAgICAgaWYgKHRoaXMuaW5wLnJlcXVpcmVkICYmICF0aGlzLmlucC52YWx1ZSkge1xyXG4gICAgICAgIHRoaXMuaW5wLmVycm9yID0gSW5wdXRFcnJvci5SZXF1aXJlZDtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKCF0aGlzLmlucC5yZXF1aXJlZCAmJiAhdGhpcy5pbnAudmFsdWUpIHtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5pbnAudHlwZSA9PT0gSW5wdXRUeXBlLlBsYXF1ZSAmJiAoIXRoaXMucGFydDEuaXNWYWxpZCgpIHx8ICF0aGlzLnBhcnQyLmlzVmFsaWQoKSB8fCAhdGhpcy5wYXJ0My5pc1ZhbGlkKCkgfHwgIXRoaXMucGFydDQuaXNWYWxpZCgpKSl7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLmlucC50eXBlID09PSBJbnB1dFR5cGUuUGxhcXVlTSB8fCB0aGlzLmlucC50eXBlID09PSBJbnB1dFR5cGUuUGxhcXVlRil7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMucGFydDEuaXNWYWxpZCgpICYmIHRoaXMucGFydDMuaXNWYWxpZCgpO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLmlucC50eXBlID09PSBJbnB1dFR5cGUuUGxhcXVlRyl7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMucGFydDEuaXNWYWxpZCgpO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBIZWxwZXJDbGFzcy5wbGFxdWVWYWxpZCh0aGlzLmlucC52YWx1ZSwgdGhpcy5pbnAudHlwZSk7XHJcbiAgICB9O1xyXG4gICAgdGhpcy5pbnAuY2xlYXIgPSAoKSA9PiB7XHJcbiAgICAgIHRoaXMuaW5wLmVycm9yID0gbnVsbDtcclxuICAgICAgdGhpcy5pbnAudmFsdWUgPSB0aGlzLmlucC5kZWZhdWx0O1xyXG4gICAgICB0aGlzLnBhcnQxLnZhbHVlID0gdGhpcy5wYXJ0Mi52YWx1ZSA9IHRoaXMucGFydDMudmFsdWUgPSB0aGlzLnBhcnQ0LnZhbHVlID0gbnVsbDtcclxuICAgIH07XHJcbiAgICB0aGlzLmlucC5kYXRhID0gKCkgPT4ge1xyXG4gICAgICByZXR1cm4gdGhpcy5nZXRWYWx1ZSgpO1xyXG4gICAgfTtcclxuICAgIHRoaXMuaW5wLmZvY3VzID0gKCkgPT4ge1xyXG4gICAgICB0aGlzLm9uRm9jdXNJbigpO1xyXG4gICAgfTtcclxuICB9XHJcbiAgY2hhbmdlRm9jdXMocCwgYSk6IHZvaWR7XHJcbiAgICBpZiAodGhpcy5pbnAudHlwZSA9PT0gSW5wdXRUeXBlLlBsYXF1ZSl7XHJcbiAgICAgIGlmIChwID09PSAnUGFydDEnKXtcclxuICAgICAgICBpZiAoYSA9PT0gJ1RhYicgfHwgYSA9PT0gJ0VudGVyJyl7XHJcbiAgICAgICAgICBpZiAodGhpcy5wYXJ0Mi5kYXRhKCkgIT0gbnVsbCl7XHJcbiAgICAgICAgICAgIHRoaXMucGFydDMuZm9jdXModHJ1ZSk7XHJcbiAgICAgICAgICB9ZWxzZXtcclxuICAgICAgICAgICAgdGhpcy5wYXJ0Mi5mb2N1cyh0cnVlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2UgaWYgKGEgPT09ICdTaGlmdFRhYicgfHwgYSA9PT0gJ1NoaWZ0RW50ZXInKXtcclxuICAgICAgICAgIHRoaXMuY2hhbmdlSW5kZXguZW1pdCgnU2hpZnRUYWInKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSBpZiAocCA9PT0gJ1BhcnQyJyl7XHJcbiAgICAgICAgaWYgKGEgPT09ICdUYWInIHx8IGEgPT09ICdFbnRlcicpe1xyXG4gICAgICAgICAgdGhpcy5wYXJ0My5mb2N1cyh0cnVlKTtcclxuICAgICAgICB9IGVsc2UgaWYgKGEgPT09ICdTaGlmdFRhYicgfHwgYSA9PT0gJ1NoaWZ0RW50ZXInKXtcclxuICAgICAgICAgIHRoaXMucGFydDEuZm9jdXModHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2UgaWYgKHAgPT09ICdQYXJ0Mycpe1xyXG4gICAgICAgIGlmIChhID09PSAnVGFiJyB8fCBhID09PSAnRW50ZXInKXtcclxuICAgICAgICAgIHRoaXMucGFydDQuZm9jdXModHJ1ZSk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChhID09PSAnU2hpZnRUYWInIHx8IGEgPT09ICdTaGlmdEVudGVyJyl7XHJcbiAgICAgICAgICBpZiAodGhpcy5wYXJ0Mi5kYXRhKCkgIT0gbnVsbCl7XHJcbiAgICAgICAgICAgIHRoaXMucGFydDEuZm9jdXModHJ1ZSk7XHJcbiAgICAgICAgICB9ZWxzZXtcclxuICAgICAgICAgICAgdGhpcy5wYXJ0Mi5mb2N1cyh0cnVlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSBpZiAocCA9PT0gJ1BhcnQ0Jyl7XHJcbiAgICAgICAgaWYgKGEgPT09ICdUYWInIHx8IGEgPT09ICdFbnRlcicpe1xyXG4gICAgICAgICAgdGhpcy5jaGFuZ2VJbmRleC5lbWl0KCdUYWInKTtcclxuICAgICAgICB9IGVsc2UgaWYgKGEgPT09ICdTaGlmdFRhYicgfHwgYSA9PT0gJ1NoaWZ0RW50ZXInKXtcclxuICAgICAgICAgIHRoaXMucGFydDMuZm9jdXModHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuaW5wLnR5cGUgPT09IElucHV0VHlwZS5QbGFxdWVNIHx8IHRoaXMuaW5wLnR5cGUgPT09IElucHV0VHlwZS5QbGFxdWVGKXtcclxuICAgICAgaWYgKHAgPT09ICdQYXJ0MScpe1xyXG4gICAgICAgIGlmIChhID09PSAnVGFiJyB8fCBhID09PSAnRW50ZXInKXtcclxuICAgICAgICAgIHRoaXMucGFydDMuZm9jdXModHJ1ZSk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChhID09PSAnU2hpZnRUYWInIHx8IGEgPT09ICdTaGlmdEVudGVyJyl7XHJcbiAgICAgICAgICB0aGlzLmNoYW5nZUluZGV4LmVtaXQoJ1NoaWZ0VGFiJyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2UgaWYgKHAgPT09ICdQYXJ0Mycpe1xyXG4gICAgICAgIGlmIChhID09PSAnVGFiJyB8fCBhID09PSAnRW50ZXInKXtcclxuICAgICAgICAgIHRoaXMuY2hhbmdlSW5kZXguZW1pdCgnVGFiJyk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChhID09PSAnU2hpZnRUYWInIHx8IGEgPT09ICdTaGlmdEVudGVyJyl7XHJcbiAgICAgICAgICB0aGlzLnBhcnQxLmZvY3VzKHRydWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmICh0aGlzLmlucC50eXBlID09PSBJbnB1dFR5cGUuUGxhcXVlRyl7XHJcbiAgICAgIGlmIChwID09PSAnUGFydDEnKXtcclxuICAgICAgICBpZiAoYSA9PT0gJ1RhYicgfHwgYSA9PT0gJ0VudGVyJyl7XHJcbiAgICAgICAgICB0aGlzLmNoYW5nZUluZGV4LmVtaXQoJ1RhYicpO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoYSA9PT0gJ1NoaWZ0VGFiJyB8fCBhID09PSAnU2hpZnRFbnRlcicpe1xyXG4gICAgICAgICAgdGhpcy5jaGFuZ2VJbmRleC5lbWl0KCdTaGlmdFRhYicpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBvbkZvY3VzSW4oZSA9IG51bGwpOiB2b2lke1xyXG4gICAgaWYgKGUgPT0gbnVsbCB8fCAhKGUuc2NyZWVuWCAmJiBlLnNjcmVlblggIT09IDAgJiYgZS5zY3JlZW5ZICYmIGUuc2NyZWVuWSAhPT0gMCkpe1xyXG4gICAgICB0aGlzLnBhcnQxLmZvY3VzKHRydWUpO1xyXG4gICAgfVxyXG4gIH1cclxuICBvbktleURvd24oZSk6IHZvaWR7XHJcbiAgICB0aGlzLmlucC5lcnJvciA9IG51bGw7XHJcbiAgICBjb25zdCBjb2RlID0gZS5rZXlDb2RlIHx8IGUud2hpY2g7XHJcbiAgICBpZiAoY29kZSA9PT0gOSkge1xyXG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgIHRoaXMuY2hhbmdlSW5kZXguZW1pdChlLnNoaWZ0S2V5ID8gJ1NoaWZ0VGFiJyA6ICdUYWInKTtcclxuICAgIH1cclxuICB9XHJcbiAgZ2V0VmFsdWUoKTogc3RyaW5ne1xyXG4gICAgcmV0dXJuICh0aGlzLmlucC50eXBlID09PSBJbnB1dFR5cGUuUGxhcXVlID9cclxuICAgICAgYCR7dGhpcy5wYXJ0MS52YWx1ZSA/IHRoaXMucGFydDEudmFsdWUgOiAnJ31fJHt0aGlzLnBhcnQyLnZhbHVlID8gdGhpcy5wYXJ0Mi52YWx1ZSA6ICcnfV8ke3RoaXMucGFydDMudmFsdWUgPyB0aGlzLnBhcnQzLnZhbHVlIDogJyd9XyR7dGhpcy5wYXJ0NC52YWx1ZSA/IHRoaXMucGFydDQudmFsdWUgOiAnJ31gIDpcclxuICAgICAgKHRoaXMuaW5wLnR5cGUgPT09IElucHV0VHlwZS5QbGFxdWVNIHx8IHRoaXMuaW5wLnR5cGUgPT09IElucHV0VHlwZS5QbGFxdWVGID8gYCR7dGhpcy5wYXJ0MS52YWx1ZSA/IHRoaXMucGFydDEudmFsdWUgOiAnJ31fJHt0aGlzLnBhcnQzLnZhbHVlID8gdGhpcy5wYXJ0My52YWx1ZSA6ICcnfWAgOiBgJHt0aGlzLnBhcnQxLnZhbHVlID8gdGhpcy5wYXJ0MS52YWx1ZSA6ICcnfWApKS50b1VwcGVyQ2FzZSgpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
257
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5wbGFxdWUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkQ6L1Byb2plY3RzL1BzVG9vbGtpdC9VSS9wcm9qZWN0cy9wcy10b29sa2l0LXVpL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2Zvcm0vcGxhcXVlL2Zvcm0ucGxhcXVlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNwRyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDdkQsT0FBTyxFQUFDLFVBQVUsRUFBRSxTQUFTLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUNsRSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFPMUQsTUFBTSxPQUFPLG1CQUFtQjtJQWE5QjtRQVRBLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztJQVV6QyxDQUFDO0lBTEQsSUFBSSxJQUFJLEtBQXVCLE9BQU8sU0FBUyxDQUFDLENBQUMsQ0FBQztJQU9sRCxRQUFRO1FBQ04sSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsQ0FBQyxNQUFNLEVBQUUsZ0NBQWdDLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzdJLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxFQUFFLGdDQUFnQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2pKLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsTUFBTSxFQUFFLGdDQUFnQyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUM3SSxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxDQUFDLE1BQU0sRUFBRSxnQ0FBZ0MsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNySixJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7UUFDOUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBQ3pHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO1FBQzFHLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLE9BQU8sRUFBQztZQUN0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QUFDLEVBQUUsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDbkwsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUM1TyxDQUFDOzs7WUFsT0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxpQkFBaUI7Z0JBQzNCLHVxQ0FBMkM7O2FBRTVDOzs7O2tCQUVFLEtBQUs7MEJBRUwsTUFBTTt3QkFPTixTQUFTLFNBQUMsV0FBVzt1QkFDckIsU0FBUyxTQUFDLFVBQVU7eUJBQ3BCLFNBQVMsU0FBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0lucHV0Q2xhc3N9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvZm9ybS5jbGFzcyc7XHJcbmltcG9ydCB7SW5wdXRFcnJvciwgSW5wdXRUeXBlfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2VudW0uY2xhc3MnO1xyXG5pbXBvcnQge0hlbHBlckNsYXNzfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2hlbHBlci5jbGFzcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1mb3JtLXBsYXF1ZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvcm0ucGxhcXVlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9mb3JtLnBsYXF1ZS5jb21wb25lbnQuY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIEZvcm1QbGFxdWVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXR7XHJcbiAgQElucHV0KClcclxuICBpbnA6IElucHV0Q2xhc3M7XHJcbiAgQE91dHB1dCgpXHJcbiAgY2hhbmdlSW5kZXggPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuICBwYXJ0MTogSW5wdXRDbGFzcztcclxuICBwYXJ0MjogSW5wdXRDbGFzcztcclxuICBwYXJ0MzogSW5wdXRDbGFzcztcclxuICBwYXJ0NDogSW5wdXRDbGFzcztcclxuICBnZXQgdHlwZSgpOiB0eXBlb2YgSW5wdXRUeXBlIHsgcmV0dXJuIElucHV0VHlwZTsgfVxyXG4gIEBWaWV3Q2hpbGQoJ2lucHV0QmFzZScpIGlucHV0QmFzZTogRWxlbWVudFJlZjtcclxuICBAVmlld0NoaWxkKCdpbnB1dERpdicpIGlucHV0RGl2OiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ2lucHV0TGFiZWwnKSBpbnB1dExhYmVsOiBFbGVtZW50UmVmO1xyXG4gIGNvbnN0cnVjdG9yKCl7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMucGFydDEgPSBuZXcgSW5wdXRDbGFzcyh0aGlzLmlucC5lbnZpcm9ubWVudCwgdGhpcy5pbnAubCwgJ1BhcnQxJywgbnVsbCwgSW5wdXRUeXBlLk51bWJlciwgJ3BsYXF1ZS1wYXJ0LTEgcGxhcXVlLXBhcnQtaXRlbScsIG51bGwsIHRydWUpO1xyXG4gICAgdGhpcy5wYXJ0MiA9IG5ldyBJbnB1dENsYXNzKHRoaXMuaW5wLmVudmlyb25tZW50LCB0aGlzLmlucC5sLCAnUGFydDInLCBudWxsLCBJbnB1dFR5cGUuVGV4dCwgJ3BsYXF1ZS1wYXJ0LTIgcGxhcXVlLXBhcnQtaXRlbScsIG51bGwsIHRydWUsIDEsIDEpO1xyXG4gICAgdGhpcy5wYXJ0MyA9IG5ldyBJbnB1dENsYXNzKHRoaXMuaW5wLmVudmlyb25tZW50LCB0aGlzLmlucC5sLCAnUGFydDMnLCBudWxsLCBJbnB1dFR5cGUuTnVtYmVyLCAncGxhcXVlLXBhcnQtMyBwbGFxdWUtcGFydC1pdGVtJywgbnVsbCwgdHJ1ZSk7XHJcbiAgICB0aGlzLnBhcnQ0ID0gbmV3IElucHV0Q2xhc3ModGhpcy5pbnAuZW52aXJvbm1lbnQsIHRoaXMuaW5wLmwsICdQYXJ0NCcsIG51bGwsIElucHV0VHlwZS5OdW1iZXIsICdwbGFxdWUtcGFydC00IHBsYXF1ZS1wYXJ0LWl0ZW0nLCBudWxsLCB0cnVlLCAxMCwgOTkpO1xyXG4gICAgdGhpcy5wYXJ0MS5kaXNwbGF5TGFiZWwgPSB0aGlzLnBhcnQyLmRpc3BsYXlMYWJlbCA9IHRoaXMucGFydDMuZGlzcGxheUxhYmVsID0gdGhpcy5wYXJ0NC5kaXNwbGF5TGFiZWwgPSBmYWxzZTtcclxuICAgIHRoaXMucGFydDEucGxhY2Vob2xkZXIgPSB0aGlzLnBhcnQyLnBsYWNlaG9sZGVyID0gdGhpcy5wYXJ0My5wbGFjZWhvbGRlciA9IHRoaXMucGFydDQucGxhY2Vob2xkZXIgPSBudWxsO1xyXG4gICAgdGhpcy5wYXJ0MS5kaXNhYmxlZCA9IHRoaXMucGFydDIuZGlzYWJsZWQgPSB0aGlzLnBhcnQzLmRpc2FibGVkID0gdGhpcy5wYXJ0NC5kaXNhYmxlZCA9IHRoaXMuaW5wLmRpc2FibGVkO1xyXG4gICAgaWYgKHRoaXMuaW5wLnR5cGUgPT09IElucHV0VHlwZS5QbGFxdWVNKXtcclxuICAgICAgdGhpcy5wYXJ0MS5taW5MZW5ndGggPSAxMDA7XHJcbiAgICAgIHRoaXMucGFydDEubWF4TGVuZ3RoID0gOTk5O1xyXG4gICAgICB0aGlzLnBhcnQxLmNsYXNzICs9ICcgcGxhcXVlLXBhcnQtbSc7XHJcbiAgICAgIHRoaXMucGFydDIuY2xhc3MgKz0gJyBwbGFxdWUtcGFydC1tJztcclxuICAgICAgdGhpcy5wYXJ0My5taW5MZW5ndGggPSAxMDAwMDtcclxuICAgICAgdGhpcy5wYXJ0My5tYXhMZW5ndGggPSA5OTk5OTtcclxuICAgICAgdGhpcy5wYXJ0My5jbGFzcyArPSAnIHBsYXF1ZS1wYXJ0LW0nO1xyXG4gICAgICB0aGlzLnBhcnQ0LmNsYXNzICs9ICcgcGxhcXVlLXBhcnQtbSc7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuaW5wLnR5cGUgPT09IElucHV0VHlwZS5QbGFxdWVGKXtcclxuICAgICAgdGhpcy5wYXJ0MS5taW5MZW5ndGggPSAxMDA7XHJcbiAgICAgIHRoaXMucGFydDEubWF4TGVuZ3RoID0gOTk5OTk5OTk5O1xyXG4gICAgICB0aGlzLnBhcnQxLmNsYXNzICs9ICcgcGxhcXVlLXBhcnQtZic7XHJcbiAgICAgIHRoaXMucGFydDIuY2xhc3MgKz0gJyBwbGFxdWUtcGFydC1mJztcclxuICAgICAgdGhpcy5wYXJ0My5taW5MZW5ndGggPSAxO1xyXG4gICAgICB0aGlzLnBhcnQzLm1heExlbmd0aCA9IDIwO1xyXG4gICAgICB0aGlzLnBhcnQzLnR5cGUgPSBJbnB1dFR5cGUuVGV4dDtcclxuICAgICAgdGhpcy5wYXJ0My5jbGFzcyArPSAnIHBsYXF1ZS1wYXJ0LWYnO1xyXG4gICAgICB0aGlzLnBhcnQ0LmNsYXNzICs9ICcgcGxhcXVlLXBhcnQtZic7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuaW5wLnR5cGUgPT09IElucHV0VHlwZS5QbGFxdWVHKXtcclxuICAgICAgdGhpcy5wYXJ0MS5taW5MZW5ndGggPSAzO1xyXG4gICAgICB0aGlzLnBhcnQxLm1heExlbmd0aCA9IDE1O1xyXG4gICAgICB0aGlzLnBhcnQxLnR5cGUgPSBJbnB1dFR5cGUuVGV4dDtcclxuICAgICAgdGhpcy5wYXJ0MS5jbGFzcyArPSAnIHBsYXF1ZS1wYXJ0LWcnO1xyXG4gICAgICB0aGlzLnBhcnQyLmNsYXNzICs9ICcgcGxhcXVlLXBhcnQtZyc7XHJcbiAgICAgIHRoaXMucGFydDMuY2xhc3MgKz0gJyBwbGFxdWUtcGFydC1nJztcclxuICAgICAgdGhpcy5wYXJ0NC5jbGFzcyArPSAnIHBsYXF1ZS1wYXJ0LWcnO1xyXG4gICAgfSBlbHNle1xyXG4gICAgICB0aGlzLnBhcnQxLm1pbkxlbmd0aCA9IDEwO1xyXG4gICAgICB0aGlzLnBhcnQxLm1heExlbmd0aCA9IDk5O1xyXG4gICAgICB0aGlzLnBhcnQzLm1pbkxlbmd0aCA9IDEwMDtcclxuICAgICAgdGhpcy5wYXJ0My5tYXhMZW5ndGggPSA5OTk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnBhcnQxLm9uQ2hhbmdlID0gKHYpID0+IHtcclxuICAgICAgdGhpcy5pbnAuZXJyb3IgPSBudWxsO1xyXG4gICAgICBpZiAodi5sZW5ndGggPT09IDIgJiYgdGhpcy5pbnAudHlwZSA9PT0gSW5wdXRUeXBlLlBsYXF1ZSl7XHJcbiAgICAgICAgdGhpcy5wYXJ0Mi5mb2N1cyh0cnVlKTtcclxuICAgICAgfSBlbHNlIGlmICh2Lmxlbmd0aCA9PT0gMyAmJiB0aGlzLmlucC50eXBlID09PSBJbnB1dFR5cGUuUGxhcXVlTSl7XHJcbiAgICAgICAgdGhpcy5wYXJ0My5mb2N1cyh0cnVlKTtcclxuICAgICAgfVxyXG4gICAgfTtcclxuICAgIHRoaXMucGFydDIub25DaGFuZ2UgPSAodikgPT4ge1xyXG4gICAgICB0aGlzLmlucC5lcnJvciA9IG51bGw7XHJcbiAgICAgIGlmICh2Lmxlbmd0aCA9PT0gMSl7XHJcbiAgICAgICAgdGhpcy5wYXJ0My5mb2N1cyh0cnVlKTtcclxuICAgICAgfSBlbHNlIGlmICh2Lmxlbmd0aCA9PT0gMCl7XHJcbiAgICAgICAgdGhpcy5wYXJ0MS5mb2N1cyh0cnVlKTtcclxuICAgICAgfVxyXG4gICAgfTtcclxuICAgIHRoaXMucGFydDMub25DaGFuZ2UgPSAodikgPT4ge1xyXG4gICAgICB0aGlzLmlucC5lcnJvciA9IG51bGw7XHJcbiAgICAgIGlmICh2Lmxlbmd0aCA9PT0gMyAmJiB0aGlzLmlucC50eXBlID09PSBJbnB1dFR5cGUuUGxhcXVlKXtcclxuICAgICAgICB0aGlzLnBhcnQ0LmZvY3VzKHRydWUpO1xyXG4gICAgICB9IGVsc2UgaWYgKHYubGVuZ3RoID09PSAwICYmIHRoaXMuaW5wLnR5cGUgPT09IElucHV0VHlwZS5QbGFxdWUpe1xyXG4gICAgICAgIHRoaXMucGFydDIuZm9jdXModHJ1ZSk7XHJcbiAgICAgIH0gZWxzZSBpZiAodi5sZW5ndGggPT09IDUgJiYgdGhpcy5pbnAudHlwZSA9PT0gSW5wdXRUeXBlLlBsYXF1ZU0pe1xyXG4gICAgICAgIHRoaXMuY2hhbmdlSW5kZXguZW1pdCgnVGFiJyk7XHJcbiAgICAgIH0gZWxzZSBpZiAodi5sZW5ndGggPT09IDAgJiYgdGhpcy5pbnAudHlwZSA9PT0gSW5wdXRUeXBlLlBsYXF1ZU0pe1xyXG4gICAgICAgIHRoaXMucGFydDEuZm9jdXModHJ1ZSk7XHJcbiAgICAgIH1cclxuICAgIH07XHJcbiAgICB0aGlzLnBhcnQ0Lm9uQ2hhbmdlID0gKHYpID0+IHtcclxuICAgICAgdGhpcy5pbnAuZXJyb3IgPSBudWxsO1xyXG4gICAgICBpZiAodi5sZW5ndGggPT09IDIpe1xyXG4gICAgICAgIHRoaXMuY2hhbmdlSW5kZXguZW1pdCgnVGFiJyk7XHJcbiAgICAgIH0gZWxzZSBpZiAodi5sZW5ndGggPT09IDApe1xyXG4gICAgICAgIHRoaXMucGFydDMuZm9jdXModHJ1ZSk7XHJcbiAgICAgIH1cclxuICAgIH07XHJcbiAgICB0aGlzLmlucC5zZXRWYWx1ZSA9ICh2KSA9PiB7XHJcbiAgICAgIGNvbnN0IHBhcnRzID0gdi5zcGxpdCgnXycpO1xyXG4gICAgICBpZiAodGhpcy5pbnAudHlwZSA9PT0gSW5wdXRUeXBlLlBsYXF1ZSl7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmlucC52YWx1ZSA9IHY7XHJcbiAgICAgICAgICB0aGlzLnBhcnQxLnZhbHVlID0gcGFydHNbMF07XHJcbiAgICAgICAgICB0aGlzLnBhcnQyLnZhbHVlID0gcGFydHNbMV07XHJcbiAgICAgICAgICB0aGlzLnBhcnQzLnZhbHVlID0gcGFydHNbMl07XHJcbiAgICAgICAgICB0aGlzLnBhcnQ0LnZhbHVlID0gcGFydHNbM107XHJcbiAgICAgICAgfSwgMTAwKTtcclxuICAgICAgfSBlbHNlIGlmICh0aGlzLmlucC50eXBlID09PSBJbnB1dFR5cGUuUGxhcXVlTSB8fCB0aGlzLmlucC50eXBlID09PSBJbnB1dFR5cGUuUGxhcXVlRil7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmlucC52YWx1ZSA9IHY7XHJcbiAgICAgICAgICB0aGlzLnBhcnQxLnZhbHVlID0gcGFydHNbMF07XHJcbiAgICAgICAgICB0aGlzLnBhcnQzLnZhbHVlID0gcGFydHNbMV07XHJcbiAgICAgICAgfSwgMTAwKTtcclxuICAgICAgfSBlbHNlIGlmICh0aGlzLmlucC50eXBlID09PSBJbnB1dFR5cGUuUGxhcXVlRyl7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmlucC52YWx1ZSA9IHY7XHJcbiAgICAgICAgICB0aGlzLnBhcnQxLnZhbHVlID0gcGFydHNbMF07XHJcbiAgICAgICAgfSwgMTAwKTtcclxuICAgICAgfWVsc2V7XHJcbiAgICAgICAgdGhpcy5wYXJ0MS52YWx1ZSA9ICcnO1xyXG4gICAgICAgIHRoaXMucGFydDIudmFsdWUgPSAnJztcclxuICAgICAgICB0aGlzLnBhcnQzLnZhbHVlID0gJyc7XHJcbiAgICAgICAgdGhpcy5wYXJ0NC52YWx1ZSA9ICcnO1xyXG4gICAgICB9XHJcbiAgICB9O1xyXG4gICAgdGhpcy5pbnAuaXNWYWxpZCA9ICgpID0+IHtcclxuICAgICAgdGhpcy5pbnAudmFsdWUgPSB0aGlzLmdldFZhbHVlKCk7XHJcbiAgICAgIGlmICh0aGlzLmlucC5yZXF1aXJlZCAmJiAhdGhpcy5pbnAudmFsdWUpIHtcclxuICAgICAgICB0aGlzLmlucC5lcnJvciA9IElucHV0RXJyb3IuUmVxdWlyZWQ7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICghdGhpcy5pbnAucmVxdWlyZWQgJiYgIXRoaXMuaW5wLnZhbHVlKSB7XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMuaW5wLnR5cGUgPT09IElucHV0VHlwZS5QbGFxdWUgJiYgKCF0aGlzLnBhcnQxLmlzVmFsaWQoKSB8fCAhdGhpcy5wYXJ0Mi5pc1ZhbGlkKCkgfHwgIXRoaXMucGFydDMuaXNWYWxpZCgpIHx8ICF0aGlzLnBhcnQ0LmlzVmFsaWQoKSkpe1xyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5pbnAudHlwZSA9PT0gSW5wdXRUeXBlLlBsYXF1ZU0gfHwgdGhpcy5pbnAudHlwZSA9PT0gSW5wdXRUeXBlLlBsYXF1ZUYpe1xyXG4gICAgICAgIHJldHVybiB0aGlzLnBhcnQxLmlzVmFsaWQoKSAmJiB0aGlzLnBhcnQzLmlzVmFsaWQoKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5pbnAudHlwZSA9PT0gSW5wdXRUeXBlLlBsYXF1ZUcpe1xyXG4gICAgICAgIHJldHVybiB0aGlzLnBhcnQxLmlzVmFsaWQoKTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gSGVscGVyQ2xhc3MucGxhcXVlVmFsaWQodGhpcy5pbnAudmFsdWUsIHRoaXMuaW5wLnR5cGUpO1xyXG4gICAgfTtcclxuICAgIHRoaXMuaW5wLmNsZWFyID0gKCkgPT4ge1xyXG4gICAgICB0aGlzLmlucC5lcnJvciA9IG51bGw7XHJcbiAgICAgIHRoaXMuaW5wLnZhbHVlID0gdGhpcy5pbnAuZGVmYXVsdDtcclxuICAgICAgdGhpcy5wYXJ0MS52YWx1ZSA9IHRoaXMucGFydDIudmFsdWUgPSB0aGlzLnBhcnQzLnZhbHVlID0gdGhpcy5wYXJ0NC52YWx1ZSA9IG51bGw7XHJcbiAgICB9O1xyXG4gICAgdGhpcy5pbnAuZGF0YSA9ICgpID0+IHtcclxuICAgICAgcmV0dXJuIHRoaXMuZ2V0VmFsdWUoKTtcclxuICAgIH07XHJcbiAgICB0aGlzLmlucC5mb2N1cyA9ICgpID0+IHtcclxuICAgICAgdGhpcy5vbkZvY3VzSW4oKTtcclxuICAgIH07XHJcbiAgfVxyXG4gIGNoYW5nZUZvY3VzKHAsIGEpOiB2b2lke1xyXG4gICAgaWYgKHRoaXMuaW5wLnR5cGUgPT09IElucHV0VHlwZS5QbGFxdWUpe1xyXG4gICAgICBpZiAocCA9PT0gJ1BhcnQxJyl7XHJcbiAgICAgICAgaWYgKGEgPT09ICdUYWInIHx8IGEgPT09ICdFbnRlcicpe1xyXG4gICAgICAgICAgdGhpcy5wYXJ0Mi5mb2N1cyh0cnVlKTtcclxuICAgICAgICB9IGVsc2UgaWYgKGEgPT09ICdTaGlmdFRhYicgfHwgYSA9PT0gJ1NoaWZ0RW50ZXInKXtcclxuICAgICAgICAgIHRoaXMuY2hhbmdlSW5kZXguZW1pdCgnU2hpZnRUYWInKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSBpZiAocCA9PT0gJ1BhcnQyJyl7XHJcbiAgICAgICAgaWYgKGEgPT09ICdUYWInIHx8IGEgPT09ICdFbnRlcicpe1xyXG4gICAgICAgICAgdGhpcy5wYXJ0My5mb2N1cyh0cnVlKTtcclxuICAgICAgICB9IGVsc2UgaWYgKGEgPT09ICdTaGlmdFRhYicgfHwgYSA9PT0gJ1NoaWZ0RW50ZXInKXtcclxuICAgICAgICAgIHRoaXMucGFydDEuZm9jdXModHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2UgaWYgKHAgPT09ICdQYXJ0Mycpe1xyXG4gICAgICAgIGlmIChhID09PSAnVGFiJyB8fCBhID09PSAnRW50ZXInKXtcclxuICAgICAgICAgIHRoaXMucGFydDQuZm9jdXModHJ1ZSk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChhID09PSAnU2hpZnRUYWInIHx8IGEgPT09ICdTaGlmdEVudGVyJyl7XHJcbiAgICAgICAgICB0aGlzLnBhcnQyLmZvY3VzKHRydWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIGlmIChwID09PSAnUGFydDQnKXtcclxuICAgICAgICBpZiAoYSA9PT0gJ1RhYicgfHwgYSA9PT0gJ0VudGVyJyl7XHJcbiAgICAgICAgICB0aGlzLmNoYW5nZUluZGV4LmVtaXQoJ1RhYicpO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoYSA9PT0gJ1NoaWZ0VGFiJyB8fCBhID09PSAnU2hpZnRFbnRlcicpe1xyXG4gICAgICAgICAgdGhpcy5wYXJ0My5mb2N1cyh0cnVlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSBpZiAodGhpcy5pbnAudHlwZSA9PT0gSW5wdXRUeXBlLlBsYXF1ZU0gfHwgdGhpcy5pbnAudHlwZSA9PT0gSW5wdXRUeXBlLlBsYXF1ZUYpe1xyXG4gICAgICBpZiAocCA9PT0gJ1BhcnQxJyl7XHJcbiAgICAgICAgaWYgKGEgPT09ICdUYWInIHx8IGEgPT09ICdFbnRlcicpe1xyXG4gICAgICAgICAgdGhpcy5wYXJ0My5mb2N1cyh0cnVlKTtcclxuICAgICAgICB9IGVsc2UgaWYgKGEgPT09ICdTaGlmdFRhYicgfHwgYSA9PT0gJ1NoaWZ0RW50ZXInKXtcclxuICAgICAgICAgIHRoaXMuY2hhbmdlSW5kZXguZW1pdCgnU2hpZnRUYWInKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSBpZiAocCA9PT0gJ1BhcnQzJyl7XHJcbiAgICAgICAgaWYgKGEgPT09ICdUYWInIHx8IGEgPT09ICdFbnRlcicpe1xyXG4gICAgICAgICAgdGhpcy5jaGFuZ2VJbmRleC5lbWl0KCdUYWInKTtcclxuICAgICAgICB9IGVsc2UgaWYgKGEgPT09ICdTaGlmdFRhYicgfHwgYSA9PT0gJ1NoaWZ0RW50ZXInKXtcclxuICAgICAgICAgIHRoaXMucGFydDEuZm9jdXModHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuaW5wLnR5cGUgPT09IElucHV0VHlwZS5QbGFxdWVHKXtcclxuICAgICAgaWYgKHAgPT09ICdQYXJ0MScpe1xyXG4gICAgICAgIGlmIChhID09PSAnVGFiJyB8fCBhID09PSAnRW50ZXInKXtcclxuICAgICAgICAgIHRoaXMuY2hhbmdlSW5kZXguZW1pdCgnVGFiJyk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChhID09PSAnU2hpZnRUYWInIHx8IGEgPT09ICdTaGlmdEVudGVyJyl7XHJcbiAgICAgICAgICB0aGlzLmNoYW5nZUluZGV4LmVtaXQoJ1NoaWZ0VGFiJyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIG9uRm9jdXNJbihlID0gbnVsbCk6IHZvaWR7XHJcbiAgICBpZiAoZSA9PSBudWxsIHx8ICEoZS5zY3JlZW5YICYmIGUuc2NyZWVuWCAhPT0gMCAmJiBlLnNjcmVlblkgJiYgZS5zY3JlZW5ZICE9PSAwKSl7XHJcbiAgICAgIHRoaXMucGFydDEuZm9jdXModHJ1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIG9uS2V5RG93bihlKTogdm9pZHtcclxuICAgIHRoaXMuaW5wLmVycm9yID0gbnVsbDtcclxuICAgIGNvbnN0IGNvZGUgPSBlLmtleUNvZGUgfHwgZS53aGljaDtcclxuICAgIGlmIChjb2RlID09PSA5KSB7XHJcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgdGhpcy5jaGFuZ2VJbmRleC5lbWl0KGUuc2hpZnRLZXkgPyAnU2hpZnRUYWInIDogJ1RhYicpO1xyXG4gICAgfVxyXG4gIH1cclxuICBnZXRWYWx1ZSgpOiBzdHJpbmd7XHJcbiAgICByZXR1cm4gKHRoaXMuaW5wLnR5cGUgPT09IElucHV0VHlwZS5QbGFxdWUgP1xyXG4gICAgICBgJHt0aGlzLnBhcnQxLnZhbHVlID8gdGhpcy5wYXJ0MS52YWx1ZSA6ICcnfV8ke3RoaXMucGFydDIudmFsdWUgPyB0aGlzLnBhcnQyLnZhbHVlIDogJyd9XyR7dGhpcy5wYXJ0My52YWx1ZSA/IHRoaXMucGFydDMudmFsdWUgOiAnJ31fJHt0aGlzLnBhcnQ0LnZhbHVlID8gdGhpcy5wYXJ0NC52YWx1ZSA6ICcnfWAgOlxyXG4gICAgICAodGhpcy5pbnAudHlwZSA9PT0gSW5wdXRUeXBlLlBsYXF1ZU0gfHwgdGhpcy5pbnAudHlwZSA9PT0gSW5wdXRUeXBlLlBsYXF1ZUYgPyBgJHt0aGlzLnBhcnQxLnZhbHVlID8gdGhpcy5wYXJ0MS52YWx1ZSA6ICcnfV8ke3RoaXMucGFydDMudmFsdWUgPyB0aGlzLnBhcnQzLnZhbHVlIDogJyd9YCA6IGAke3RoaXMucGFydDEudmFsdWUgPyB0aGlzLnBhcnQxLnZhbHVlIDogJyd9YCkpLnRvVXBwZXJDYXNlKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|