@piserve-tech/form-submission 1.3.258 → 1.3.259
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.
|
@@ -57,6 +57,7 @@ export class CurrencyFieldsComponent {
|
|
|
57
57
|
else if (currencyOption == 'specific') {
|
|
58
58
|
this.currencySymbol =
|
|
59
59
|
this.question.formElement?.appearance?.specificCurrencySymbol;
|
|
60
|
+
console.log("specific", this.currencySymbol);
|
|
60
61
|
}
|
|
61
62
|
}
|
|
62
63
|
}
|
|
@@ -64,6 +65,7 @@ export class CurrencyFieldsComponent {
|
|
|
64
65
|
this.question.formElement?.appearance?.currencySymbol) {
|
|
65
66
|
this.currencySymbol =
|
|
66
67
|
this.question.formElement?.appearance?.currencySymbol;
|
|
68
|
+
console.log("default currency", this.currencySymbol);
|
|
67
69
|
}
|
|
68
70
|
if (this.question.answer) {
|
|
69
71
|
this.initializeAnswer();
|
|
@@ -286,4 +288,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
286
288
|
}], rowId: [{
|
|
287
289
|
type: Input
|
|
288
290
|
}] } });
|
|
289
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VycmVuY3ktZmllbGRzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Zvcm0tc3VibWlzc2lvbi9zcmMvZm9ybS1maWVsZHMvY3VycmVuY3ktZmllbGRzL2N1cnJlbmN5LWZpZWxkcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mb3JtLXN1Ym1pc3Npb24vc3JjL2Zvcm0tZmllbGRzL2N1cnJlbmN5LWZpZWxkcy9jdXJyZW5jeS1maWVsZHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7OztBQVV2RSxNQUFNLE9BQU8sdUJBQXVCO0lBdUJsQyxZQUNZLGlCQUFvQyxFQUNwQyxPQUE4QixFQUM5QixnQkFBMkM7UUFGM0Msc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyxZQUFPLEdBQVAsT0FBTyxDQUF1QjtRQUM5QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQTJCO1FBeEI5QyxhQUFRLEdBQVEsRUFBRSxDQUFDO1FBQ25CLFdBQU0sR0FBWSxLQUFLLENBQUM7UUFDeEIsV0FBTSxHQUFZLEtBQUssQ0FBQztRQUV2QixpQkFBWSxHQUFHLElBQUksWUFBWSxFQUE4QyxDQUFDO1FBR3hGLFVBQUssR0FBVyxDQUFDLENBQUM7UUFDbEIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUMxQixTQUFJLEdBQVcsRUFBRSxDQUFDO1FBQ2xCLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBR3pCLG1CQUFjLEdBQVUsRUFBRSxDQUFDO1FBRTNCLG1CQUFjLEdBQVcsa0JBQWtCLENBQUM7UUFHNUMscUJBQWdCLEdBQVksS0FBSyxDQUFDO1FBQ2xDLHNCQUFpQixHQUFXLEVBQUUsQ0FBQztRQUN2QixjQUFTLEdBQVMsRUFBRSxD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QVM7K0JBQ0UscUJBQXFCO3FMQU10QixRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDSSxZQUFZO3NCQUFyQixNQUFNO2dCQUNFLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBWYWxpZGF0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3ZhbGlkYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBFbGVtZW50VHJhY2tlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9lbGVtZW50LXRyYWNrZXIuc2VydmljZSc7XG5pbXBvcnQgeyBBZ2dyZWdhdGlvbkZ1bmN0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2FnZ3JlZ2F0ZS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLWN1cnJlbmN5LWZpZWxkcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9jdXJyZW5jeS1maWVsZHMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jdXJyZW5jeS1maWVsZHMuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBDdXJyZW5jeUZpZWxkc0NvbXBvbmVudCB7XG5cbiAgQElucHV0KCkgcXVlc3Rpb246IGFueSA9IHt9O1xuICBASW5wdXQoKSBpbkxpbmU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgaW5DYXJkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHN1Ym1pc3Npb25JbmRleCE6IG51bWJlcjtcbiAgQE91dHB1dCgpIGFuc3dlckNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8eyBhbnN3ZXI6IGFueTsgbWF4UG9zc2libGVTY29yZT86IG51bWJlciB9PigpO1xuICBASW5wdXQoKSByb3dJZDogYW55O1xuXG4gIGNvdW50OiBudW1iZXIgPSAwO1xuICByZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBoaW50OiBzdHJpbmcgPSAnJztcbiAgcGxhY2Vob2xkZXI6IHN0cmluZyA9ICcnO1xuICBtaW4hOiBudW1iZXI7XG4gIG1heCE6IG51bWJlcjtcbiAgY3VycmVuY3lTeW1ib2w6c3RyaW5nID0gJyc7XG4gIGRlY2ltYWxQcmVjaXNpb24hOm51bWJlcjtcbiAgc3ltYm9sUG9zaXRpb246IHN0cmluZyA9ICdCZWZvcmUgdGhlIHZhbHVlJztcbiAgdGhvdXNhbmRTZXBhcmF0b3IhOmJvb2xlYW47XG4gIGVudGVyZWRBbW91bnQhOiBzdHJpbmc7XG4gIHZhbGlkYXRpb25GYWlsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgdmFsaWRhdGlvbk1lc3NhZ2U6IHN0cmluZyA9ICcnO1xuICBwcml2YXRlIGVsZW1lbnRJZDogc3RyaW5nPScnO1xuICBjb25zdHJ1Y3RvcihcbiAgICAgIHByaXZhdGUgdmFsaWRhdGlvblNlcnZpY2U6IFZhbGlkYXRpb25TZXJ2aWNlLFxuICAgICAgcHJpdmF0ZSB0cmFja2VyOiBFbGVtZW50VHJhY2tlclNlcnZpY2UsXG4gICAgICBwcml2YXRlIGFnZ3JlZ2F0ZVNlcnZpY2U6QWdncmVnYXRpb25GdW5jdGlvblNlcnZpY2VcbiAgICApIHtcbiAgICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy52YWx1ZUFzc2lnbmVkKCk7XG4gIH1cblxuICB2YWx1ZUFzc2lnbmVkKCkge1xuICAgIHRoaXMuY291bnQgPSB0aGlzLnF1ZXN0aW9uLmNvdW50O1xuICAgIHRoaXMucmVxdWlyZWQgPSB0aGlzLnF1ZXN0aW9uLnJlcXVpcmVkO1xuICAgIHRoaXMuaGludCA9IHRoaXMucXVlc3Rpb24uaGludDtcbiAgICB0aGlzLnBsYWNlaG9sZGVyID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudD8uYXBwZWFyYW5jZT8ucGxhY2Vob2xkZXIgfHwgJyc7XG4gICAgdGhpcy5jdXJyZW5jeVN5bWJvbCA9IHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQ/LmFwcGVhcmFuY2U/LmN1cnJlbmN5U3ltYm9sO1xuICAgIHRoaXMuZGVjaW1hbFByZWNpc2lvbiA9IHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQ/LmFwcGVhcmFuY2U/LmRlY2ltYWxQcmVjaXNpb247XG4gICAgdGhpcy5zeW1ib2xQb3NpdGlvbiA9IHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQ/LmFwcGVhcmFuY2U/LnN5bWJvbFBvc2l0aW9uIHx8ICdCZWZvcmUgdGhlIHZhbHVlJztcbiAgICB0aGlzLnRob3VzYW5kU2VwYXJhdG9yID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudD8uYXBwZWFyYW5jZT8udGhvdXNhbmRTZXBhcmF0b3I7XG4gICAgdGhpcy5taW4gPSB0aGlzLnF1ZXN0aW9uLmZvcm1FbGVtZW50LnZhbGlkYXRpb24ubWluO1xuICAgIHRoaXMubWF4ID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC52YWxpZGF0aW9uLm1heDtcblxuaWYgKHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQ/LmFwcGVhcmFuY2U/LmN1cnJlbmN5KSB7XG4gICAgICBsZXQgdXNlckxvY2FsZUN1cmVlbmN5ID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudD8uYXBwZWFyYW5jZT8uY3VycmVuY3k7XG4gICAgICBpZiAodGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC5hcHBlYXJhbmNlLmN1cnJlbmN5T3B0aW9uKSB7XG4gICAgICAgIGxldCBjdXJyZW5jeU9wdGlvbiA9XG4gICAgICAgICAgdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC5hcHBlYXJhbmNlLmN1cnJlbmN5T3B0aW9uO1xuICAgICAgICBpZiAoY3VycmVuY3lPcHRpb24gPT0gJ2F1dG8nKSB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC5hcHBlYXJhbmNlLmxpbWl0Q3VycmVuY3lTeW1ib2wgJiZcbiAgICAgICAgICAgIHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQuYXBwZWFyYW5jZS5saW1pdEN1cnJlbmN5U3ltYm9sLmxlbmd0aCA+IDBcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMuY3VycmVuY3lTeW1ib2wgPVxuICAgICAgICAgICAgICB0aGlzLnF1ZXN0aW9uLmZvcm1FbGVtZW50LmFwcGVhcmFuY2UubGltaXRDdXJyZW5jeVN5bWJvbC5pbmNsdWRlcyhcbiAgICAgICAgICAgICAgICB1c2VyTG9jYWxlQ3VyZWVuY3lcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgID8gdXNlckxvY2FsZUN1cmVlbmN5XG4gICAgICAgICAgICAgICAgOiB0aGlzLnF1ZXN0aW9uLmZvcm1FbGVtZW50Py5hcHBlYXJhbmNlPy5jdXJyZW5jeVN5bWJvbDtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5jdXJyZW5jeVN5bWJvbCA9IHVzZXJMb2NhbGVDdXJlZW5jeTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAoY3VycmVuY3lPcHRpb24gPT0gJ3NwZWNpZmljJykge1xuICAgICAgICAgIHRoaXMuY3VycmVuY3lTeW1ib2wgPVxuICAgICAgICAgICAgdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudD8uYXBwZWFyYW5jZT8uc3BlY2lmaWNDdXJyZW5jeVN5bWJvbDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBpZiAoXG4gICAgICAhdGhpcy5jdXJyZW5jeVN5bWJvbCAmJlxuICAgICAgdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudD8uYXBwZWFyYW5jZT8uY3VycmVuY3lTeW1ib2xcbiAgICApIHtcbiAgICAgIHRoaXMuY3VycmVuY3lTeW1ib2wgPVxuICAgICAgICB0aGlzLnF1ZXN0aW9uLmZvcm1FbGVtZW50Py5hcHBlYXJhbmNlPy5jdXJyZW5jeVN5bWJvbDtcbiAgICB9XG5cbiAgICBpZih0aGlzLnF1ZXN0aW9uLmFuc3dlcil7XG4gICAgICAgdGhpcy5pbml0aWFsaXplQW5zd2VyKCk7XG4gICAgfVxuICAgIGlmICh0aGlzLnF1ZXN0aW9uLmNoaWxkTG9naWNzICYmIHRoaXMucXVlc3Rpb24uYW5zd2VyKSB7XG4gICAgICB0aGlzLnVwZGF0ZUNoaWxkTG9naWNzKHRoaXMucXVlc3Rpb24pO1xuICAgIH1cbiAgICB0aGlzLmFnZ3JlZ2F0ZVNlcnZpY2Uuc2V0TnVtYmVyRmllbGQodGhpcy5yb3dJZCx0aGlzLnF1ZXN0aW9uLmlkLHRoaXMucXVlc3Rpb24uYW5zd2VyKTtcbiAgfVxuXG5cbiAgaW5pdGlhbGl6ZUFuc3dlcigpIHtcbiAgICBsZXQgdmFsdWUgPSB0aGlzLnF1ZXN0aW9uPy5hbnN3ZXI7XG4gICAgaWYgKCF2YWx1ZSkgcmV0dXJuO1xuICAgIC8vIGNoZWNrIGlmIG51bWVyaWNcbiAgICBpZiAoIWlzTmFOKE51bWJlcih2YWx1ZSkpKSB7XG4gICAgICBpZiAodGhpcy50aG91c2FuZFNlcGFyYXRvcikge1xuICAgICAgICBjb25zdCBwYXJ0cyA9IHZhbHVlLnNwbGl0KCcuJyk7XG4gICAgICAgIHBhcnRzWzBdID0gTnVtYmVyKHBhcnRzWzBdKS50b0xvY2FsZVN0cmluZygnZW4tVVMnKTsgLy8gYWRkcyBwcm9wZXIgdGhvdXNhbmQgc2VwYXJhdG9yXG4gICAgICAgIHZhbHVlID0gcGFydHMuam9pbignLicpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdmFsdWUgPSB2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLmVudGVyZWRBbW91bnQgPSB2YWx1ZTtcbiAgfVxuXG5cbiAgcHJldmVudE51bWJlclNjcm9sbChldmVudDogV2hlZWxFdmVudCkge1xuICAgIGlmIChkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBldmVudC50YXJnZXQpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICB9XG5cbiAgdmFsaWRhdGVOdW1iZXIoKSB7XG4gICAgdGhpcy52YWxpZGF0aW9uRmFpbGVkID0gZmFsc2U7XG4gICAgdGhpcy52YWxpZGF0aW9uU2VydmljZS5jbGVhckludmFsaWQodGhpcy5idWlsZEVsZW1lbnRJZCgpKTtcbiAgICB0aGlzLnZhbGlkYXRpb25NZXNzYWdlID0gJyc7XG4gICAgbGV0IGVudGVyZWRBbW91bnQgPSB0aGlzLnBhcnNlQ3VycmVuY3lUb051bWJlcih0aGlzLmVudGVyZWRBbW91bnQpXG4gICAgaWYgKHRoaXMucmVxdWlyZWQgJiYgIWVudGVyZWRBbW91bnQpIHtcbiAgICAgIHRoaXMudmFsaWRhdGlvbkZhaWxlZCA9IHRydWU7XG4gICAgICB0aGlzLnZhbGlkYXRpb25NZXNzYWdlID0gYFBsZWFzZSBlbnRlciBhIHZhbGlkIGFtb3VudGA7XG4gICAgICB0aGlzLnF1ZXN0aW9uLnZhbGlkYXRpb25NZXNzYWdlID0gYFBsZWFzZSBlbnRlciBhIHZhbGlkIGFtb3VudGA7XG4gICAgICB0aGlzLnF1ZXN0aW9uLnZhbGlkYXRpb24gPSBmYWxzZTtcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgKHRoaXMubWluICE9PSB1bmRlZmluZWQgJiYgZW50ZXJlZEFtb3VudCA8IHRoaXMubWluKSB8fFxuICAgICAgKHRoaXMubWF4ICE9PSB1bmRlZmluZWQgJiYgZW50ZXJlZEFtb3VudCA+IHRoaXMubWF4KVxuICAgICkge1xuICAgICAgdGhpcy52YWxpZGF0aW9uRmFpbGVkID0gdHJ1ZTtcblxuICAgICAgLy8gQ29uc3RydWN0IGFwcHJvcHJpYXRlIHZhbGlkYXRpb24gbWVzc2FnZSBiYXNlZCBvbiB3aGV0aGVyIG1pbiwgbWF4LCBvciBib3RoIGFyZSBwcm92aWRlZFxuICAgICAgaWYgKHRoaXMubWluICE9PSB1bmRlZmluZWQgJiYgdGhpcy5tYXggIT09IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLnZhbGlkYXRpb25NZXNzYWdlID0gYFBsZWFzZSBlbnRlciBhIHZhbGlkIGFtb3VudCBiZXR3ZWVuICR7dGhpcy5taW59IGFuZCAke3RoaXMubWF4fWA7XG4gICAgICAgIHRoaXMucXVlc3Rpb24udmFsaWRhdGlvbk1lc3NhZ2UgPSBgUGxlYXNlIGVudGVyIGEgdmFsaWQgYW1vdW50IGJldHdlZW4gJHt0aGlzLm1pbn0gYW5kICR7dGhpcy5tYXh9YDtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5taW4gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLnZhbGlkYXRpb25NZXNzYWdlID0gYFBsZWFzZSBlbnRlciBhIGFtb3VudCBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJHt0aGlzLm1pbn1gO1xuICAgICAgICB0aGlzLnF1ZXN0aW9uLnZhbGlkYXRpb25NZXNzYWdlID0gYFBsZWFzZSBlbnRlciBhIGFtb3VudCBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJHt0aGlzLm1pbn1gO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLm1heCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMudmFsaWRhdGlvbk1lc3NhZ2UgPSBgUGxlYXNlIGVudGVyIGEgYW1vdW50IGxlc3MgdGhhbiBvciBlcXVhbCB0byAke3RoaXMubWF4fWA7XG4gICAgICAgIHRoaXMucXVlc3Rpb24udmFsaWRhdGlvbk1lc3NhZ2UgPSBgUGxlYXNlIGVudGVyIGEgYW1vdW50IGxlc3MgdGhhbiBvciBlcXVhbCB0byAke3RoaXMubWF4fWA7XG4gICAgICB9XG5cbiAgICAgIHRoaXMucXVlc3Rpb24udmFsaWRhdGlvbiA9IGZhbHNlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnF1ZXN0aW9uLnZhbGlkYXRpb24gPSB0cnVlO1xuICAgIH1cbiAgICBpZiAodGhpcy5xdWVzdGlvbi5jaGlsZExvZ2ljcykge1xuICAgICAgdGhpcy51cGRhdGVDaGlsZExvZ2ljcyh0aGlzLnF1ZXN0aW9uKTtcbiAgICB9XG4gIH1cblxuICB2YWxpZGF0ZUlucHV0KGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLmNsZWFySW52YWxpZCh0aGlzLmJ1aWxkRWxlbWVudElkKCkpO1xuXG4gICAgLy8gcmVtb3ZlIGV4aXN0aW5nIGNvbW1hcyAmIGN1cnJlbmN5IHN5bWJvbFxuICAgIGxldCByYXdWYWx1ZSA9IGV2ZW50LnRhcmdldC52YWx1ZS5yZXBsYWNlKC8sL2csICcnKS5yZXBsYWNlKHRoaXMuY3VycmVuY3lTeW1ib2wsICcnKTtcblxuICAgIC8vIOKchSBhbGxvdyBudW1iZXJzIHdpdGggb3B0aW9uYWwgc2luZ2xlIGRlY2ltYWxcbiAgICBpZiAocmF3VmFsdWUgJiYgIS9eXFxkKlxcLj9cXGQqJC8udGVzdChyYXdWYWx1ZSkpIHtcbiAgICAgIHJhd1ZhbHVlID0gcmF3VmFsdWUucmVwbGFjZSgvW15cXGQuXS9nLCAnJyk7XG4gICAgfVxuXG4gICAgLy8g4pyFIGFwcGx5IGRlY2ltYWwgcHJlY2lzaW9uIHJlc3RyaWN0aW9uIChidXQgZG9u4oCZdCBmb3JjZSB6ZXJvcylcbiAgICBpZiAodGhpcy5kZWNpbWFsUHJlY2lzaW9uICE9PSB1bmRlZmluZWQgJiYgcmF3VmFsdWUuaW5jbHVkZXMoJy4nKSkge1xuICAgICAgY29uc3QgW2ludFBhcnQsIGRlY2ltYWxQYXJ0ID0gJyddID0gcmF3VmFsdWUuc3BsaXQoJy4nKTtcbiAgICAgIGxldCB0cmltbWVkRGVjaW1hbCA9IGRlY2ltYWxQYXJ0LnNsaWNlKDAsIHRoaXMuZGVjaW1hbFByZWNpc2lvbik7XG4gICAgICByYXdWYWx1ZSA9IHRyaW1tZWREZWNpbWFsID8gYCR7aW50UGFydH0uJHt0cmltbWVkRGVjaW1hbH1gIDogaW50UGFydCArICcuJztcbiAgICB9XG5cbiAgICAvLyBmb3JtYXQgd2l0aCB0aG91c2FuZCBzZXBhcmF0b3IgZm9yIGRpc3BsYXlcbiAgICBsZXQgZm9ybWF0dGVkVmFsdWUgPSByYXdWYWx1ZTtcbiAgICBpZiAodGhpcy50aG91c2FuZFNlcGFyYXRvciAmJiByYXdWYWx1ZSkge1xuICAgICAgY29uc3QgcGFydHMgPSByYXdWYWx1ZS5zcGxpdCgnLicpO1xuICAgICAgaWYgKHBhcnRzWzBdKSB7XG4gICAgICAgIHBhcnRzWzBdID0gTnVtYmVyKHBhcnRzWzBdKS50b0xvY2FsZVN0cmluZygnZW4tVVMnKTtcbiAgICAgIH1cbiAgICAgIGZvcm1hdHRlZFZhbHVlID0gcGFydHMuam9pbignLicpO1xuICAgIH1cblxuICAgIC8vIGtlZXAgbnVtZXJpYyB2ZXJzaW9uIGZvciBiYWNrZW5kL2NhbGN1bGF0aW9uc1xuICAgIHRoaXMucXVlc3Rpb24uYW5zd2VyID0gcmF3VmFsdWU7XG4gICAgdGhpcy5xdWVzdGlvbi5jdXJyZW5jeVN5bWJvbCA9IHRoaXMuY3VycmVuY3lTeW1ib2w7XG4gICAgLy8gdXBkYXRlIGZpZWxkIGRpc3BsYXlcbiAgICBldmVudC50YXJnZXQudmFsdWUgPSBmb3JtYXR0ZWRWYWx1ZTtcblxuICAgIHRoaXMuYWdncmVnYXRlU2VydmljZS5zZXROdW1iZXJGaWVsZCh0aGlzLnJvd0lkLCB0aGlzLnF1ZXN0aW9uLmlkLCByYXdWYWx1ZSk7XG5cbiAgICBpZiAodGhpcy5xdWVzdGlvbi5jaGlsZExvZ2ljcykge1xuICAgICAgdGhpcy51cGRhdGVDaGlsZExvZ2ljcyh0aGlzLnF1ZXN0aW9uKTtcbiAgICB9XG5cblxuICAgIHRoaXMuYW5zd2VyQ2hhbmdlLmVtaXQoeyBhbnN3ZXI6IHRoaXMucXVlc3Rpb24uYW5zd2VyLCBtYXhQb3NzaWJsZVNjb3JlOiAwIH0pO1xuICAgIHRoaXMudmFsaWRhdGVOdW1iZXIoKTtcbiAgfVxuXG4gIHVwZGF0ZUNoaWxkTG9naWNzKHF1ZXN0aW9uOiBhbnkpIHtcbiAgICBpZiAocXVlc3Rpb24uY2hpbGRMb2dpY3MgJiYgQXJyYXkuaXNBcnJheShxdWVzdGlvbi5jaGlsZExvZ2ljcykpIHtcbiAgICAgIHF1ZXN0aW9uLmNoaWxkTG9naWNzLmZvckVhY2goKGNoaWxkTG9naWM6IGFueSkgPT4ge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgdGhpcy5ldmFsdWF0ZUNvbmRpdGlvbihcbiAgICAgICAgICAgIHF1ZXN0aW9uLmFuc3dlcixcbiAgICAgICAgICAgIGNoaWxkTG9naWMuY29uZGl0aW9uLFxuICAgICAgICAgICAgY2hpbGRMb2dpYy5pbnB1dFZhbHVlXG4gICAgICAgICAgKVxuICAgICAgICApIHtcbiAgICAgICAgICBjaGlsZExvZ2ljLnNob3dMb2dpYyA9IHRydWU7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY2hpbGRMb2dpYy5zaG93TG9naWMgPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLmNsZWFyQW5zd2Vyc1JlY3Vyc2l2ZWx5KGNoaWxkTG9naWMpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwYXJzZUN1cnJlbmN5VG9OdW1iZXIodmFsdWU6IHN0cmluZyk6IG51bWJlciB7XG4gICAgaWYgKCF2YWx1ZSkgcmV0dXJuIDA7XG5cbiAgICAvLyBSZW1vdmUgY3VycmVuY3kgc3ltYm9sLCBjb21tYXMsIHNwYWNlc1xuICAgIGNvbnN0IG51bWVyaWNTdHJpbmcgPSB2YWx1ZVxuICAgICAgLnJlcGxhY2UobmV3IFJlZ0V4cChgXFxcXCR7dGhpcy5jdXJyZW5jeVN5bWJvbH1gLCAnZycpLCAnJykgLy8gcmVtb3ZlIHN5bWJvbFxuICAgICAgLnJlcGxhY2UoLywvZywgJycpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyByZW1vdmUgdGhvdXNhbmQgc2VwYXJhdG9yc1xuICAgICAgLnRyaW0oKTtcblxuICAgIC8vIENvbnZlcnQgdG8gbnVtYmVyXG4gICAgY29uc3QgbnVtID0gcGFyc2VGbG9hdChudW1lcmljU3RyaW5nKTtcbiAgICByZXR1cm4gaXNOYU4obnVtKSA/IDAgOiBudW07XG4gIH1cblxuXG4gIGNsZWFyQW5zd2Vyc1JlY3Vyc2l2ZWx5KGxvZ2ljOiBhbnkpIHtcbiAgICBpZiAoIWxvZ2ljIHx8ICFsb2dpYy5yb3dzKSByZXR1cm47XG5cbiAgICBsb2dpYy5yb3dzLmZvckVhY2goKHJvdzogYW55KSA9PiB7XG4gICAgICByb3cuZ3JpZC5mb3JFYWNoKChpdGVtOiBhbnkpID0+IHtcbiAgICAgICAgY29uc3QgZWxlbWVudCA9IGl0ZW0uZWxlbWVudDtcblxuICAgICAgICBpZiAoaXRlbS5lbnRpdHlUeXBlID09PSAnUVVFU1RJT04nICYmIGVsZW1lbnQpIHtcbiAgICAgICAgICAvLyBDbGVhciBhbnN3ZXIgaWYgcHJlc2VudFxuICAgICAgICAgIGlmICgnYW5zd2VyJyBpbiBlbGVtZW50KSB7XG4gICAgICAgICAgICBlbGVtZW50LmFuc3dlciA9ICcnO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIFJlY3Vyc2l2ZWx5IGNsZWFyIGNoaWxkTG9naWNzIGlmIGFueVxuICAgICAgICAgIGlmIChlbGVtZW50LmNoaWxkTG9naWNzICYmIGVsZW1lbnQuY2hpbGRMb2dpY3MubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgZWxlbWVudC5jaGlsZExvZ2ljcy5mb3JFYWNoKChjaGlsZExvZ2ljOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5jbGVhckFuc3dlcnNSZWN1cnNpdmVseShjaGlsZExvZ2ljKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChpdGVtLmVudGl0eVR5cGUgPT09ICdTVUJGT1JNJyAmJiBlbGVtZW50ICYmIGVsZW1lbnQucm93cykge1xuICAgICAgICAgIC8vIFNVQkZPUk0gY29udGFpbnMgaXRzIG93biByb3dzIHN0cnVjdHVyZSBsaWtlIGEgZm9ybVxuICAgICAgICAgIHRoaXMuY2xlYXJBbnN3ZXJzUmVjdXJzaXZlbHkoeyByb3dzOiBlbGVtZW50LnJvd3MgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgZXZhbHVhdGVDb25kaXRpb24oYW5zd2VyOiBhbnksIGNvbmRpdGlvbjogYW55LCBpbnB1dFZhbHVlOiBhbnkpIHtcbiAgICBzd2l0Y2ggKGNvbmRpdGlvbikge1xuICAgICAgY2FzZSAnPic6XG4gICAgICAgIHJldHVybiBhbnN3ZXIgPiBOdW1iZXIoaW5wdXRWYWx1ZSk7XG4gICAgICBjYXNlICc8JzpcbiAgICAgICAgcmV0dXJuIGFuc3dlciA8IE51bWJlcihpbnB1dFZhbHVlKTtcbiAgICAgIGNhc2UgJz49JzpcbiAgICAgICAgcmV0dXJuIGFuc3dlciA+PSBOdW1iZXIoaW5wdXRWYWx1ZSk7XG4gICAgICBjYXNlICc8PSc6XG4gICAgICAgIHJldHVybiBhbnN3ZXIgPD0gTnVtYmVyKGlucHV0VmFsdWUpO1xuICAgICAgY2FzZSAnPSc6XG4gICAgICAgIHJldHVybiBhbnN3ZXIgPT0gaW5wdXRWYWx1ZTtcbiAgICAgIGNhc2UgJyE9JzpcbiAgICAgICAgcmV0dXJuIGFuc3dlciAhPSBpbnB1dFZhbHVlO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG5cblxuICBoYW5kbGVWYWxpZGF0aW9uKGlzVmFsaWQ6IGJvb2xlYW4sIG1lc3NhZ2U6IHN0cmluZyA9ICdUaGlzIGZpZWxkIGlzIHJlcXVpcmVkJykge1xuICAgIGlmIChpc1ZhbGlkKSB7XG4gICAgICB0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLmNsZWFySW52YWxpZCh0aGlzLmJ1aWxkRWxlbWVudElkKCkpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyB0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLnNldEludmFsaWQodGhpcy5xdWVzdGlvbi5pZCwgbWVzc2FnZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBidWlsZEVsZW1lbnRJZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiAodGhpcy5pbkxpbmUgfHwgdGhpcy5pbkNhcmQpXG4gICAgICA/IGAke3RoaXMuc3VibWlzc2lvbkluZGV4fS0ke3RoaXMucXVlc3Rpb24uaWR9YFxuICAgICAgOiBgJHt0aGlzLnF1ZXN0aW9uLmlkfWA7XG4gIH1cblxuICBnZXQgaXNJbnZhbGlkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMudmFsaWRhdGlvblNlcnZpY2UuZ2V0RXJyb3JNZXNzYWdlKHRoaXMuYnVpbGRFbGVtZW50SWQoKSk7XG4gIH1cblxuICBnZXQgZXJyb3JNZXNzYWdlKCk6IHN0cmluZyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLmdldEVycm9yTWVzc2FnZSh0aGlzLmJ1aWxkRWxlbWVudElkKCkpO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGlmICh0aGlzLmluTGluZSB8fCB0aGlzLmluQ2FyZCkge1xuICAgICAgdGhpcy5lbGVtZW50SWQgPSBgcXVlc3Rpb24tJHt0aGlzLnN1Ym1pc3Npb25JbmRleH0tJHt0aGlzLnF1ZXN0aW9uLmlkfWA7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZWxlbWVudElkID0gYHF1ZXN0aW9uLSR7dGhpcy5xdWVzdGlvbi5pZH1gO1xuICAgIH1cblxuICAgIHRoaXMudHJhY2tlci5yZWdpc3RlckVsZW1lbnQodGhpcy5lbGVtZW50SWQpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgaWYgKHRoaXMuZWxlbWVudElkKSB7XG4gICAgICB0aGlzLnRyYWNrZXIudW5yZWdpc3RlckVsZW1lbnQodGhpcy5lbGVtZW50SWQpO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdlxuICBbbmdDbGFzc109XCJ7ICdtYi00JzogIWluTGluZSB9XCJcbiAgY2xhc3M9XCJweC0zXCJcbiAgW2lkXT1cIihpbkxpbmUgfHwgaW5DYXJkKSA/ICdxdWVzdGlvbi0nICsgc3VibWlzc2lvbkluZGV4ICsgJy0nICsgcXVlc3Rpb24uaWQgOiAncXVlc3Rpb24tJyArIHF1ZXN0aW9uLmlkXCJcbiAgW2F0dHIubmFtZV09XCJxdWVzdGlvbi50ZXN0RWxlbWVudE5hbWVcIlxuPlxuICA8ZGl2IGNsYXNzPVwiaW5wdXQtd3JhcHBlciBtYi0yXCIgKm5nSWY9XCIhaW5MaW5lXCI+XG4gICAgPGRpdiAqbmdJZj1cInF1ZXN0aW9uLnF1ZXN0aW9uTnVtYmVyXCIgW2lubmVySFRNTF09XCJxdWVzdGlvbi5xdWVzdGlvbk51bWJlclwiPjwvZGl2PlxuICAgIDxzcGFuICpuZ0lmPVwicXVlc3Rpb24ucXVlc3Rpb25OdW1iZXJcIiBjbGFzcz1cInNwYWNlXCI+PC9zcGFuPlxuICAgIDxsYWJlbD57eyBxdWVzdGlvbi5xdWVzdGlvbiB9fTwvbGFiZWxcbiAgICA+Jm5ic3A7XG4gICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LWRhbmdlclwiICpuZ0lmPVwicmVxdWlyZWRcIj4qPC9zcGFuPlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwic3ZnLXdyYXBwZXIgbWItMiBoaW50SWNvblwiXG4gICAgICBbYXR0ci5kYXRhLXRpdGxlXT1cImhpbnRcIlxuICAgICAgKm5nSWY9XCJoaW50XCJcbiAgICA+XG4gICAgICA8c3ZnXG4gICAgICAgIGNsYXNzPVwiaGludFN2Z1wiXG4gICAgICAgIHZpZXdCb3g9XCIwIDAgMzAgMzBcIlxuICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgID5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBmaWxsLXJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICBjbGlwLXJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgICBkPVwiTTE1IDI2LjI1VjI2LjI1QzguNzg2MjUgMjYuMjUgMy43NSAyMS4yMTM4IDMuNzUgMTVWMTVDMy43NSA4Ljc4NjI1IDguNzg2MjUgMy43NSAxNSAzLjc1VjMuNzVDMjEuMjEzOCAzLjc1IDI2LjI1IDguNzg2MjUgMjYuMjUgMTVWMTVDMjYuMjUgMjEuMjEzOCAyMS4yMTM4IDI2LjI1IDE1IDI2LjI1WlwiXG4gICAgICAgICAgc3Ryb2tlPVwiIzMyMzIzMlwiXG4gICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS41XCJcbiAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiXG4gICAgICAgIC8+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZD1cIk0xNSAxNi41NjIzVjE2LjI0OThDMTUgMTUuMjI4NSAxNS42MzEyIDE0LjY3NDggMTYuMjYzNyAxNC4yNDk4QzE2Ljg4MTIgMTMuODMzNSAxNy41IDEzLjI5MSAxNy41IDEyLjI5MUMxNy41IDEwLjkwOTggMTYuMzgxMyA5Ljc5MTAyIDE1IDkuNzkxMDJDMTMuNjE4NyA5Ljc5MTAyIDEyLjUgMTAuOTA5OCAxMi41IDEyLjI5MVwiXG4gICAgICAgICAgc3Ryb2tlPVwiIzMyMzIzMlwiXG4gICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS41XCJcbiAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiXG4gICAgICAgIC8+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZD1cIk0xNC45OTg4IDIwQzE0LjgyNjMgMjAgMTQuNjg2MyAyMC4xNCAxNC42ODc1IDIwLjMxMjVDMTQuNjg3NSAyMC40ODUgMTQuODI3NSAyMC42MjUgMTUgMjAuNjI1QzE1LjE3MjUgMjAuNjI1IDE1LjMxMjUgMjAuNDg1IDE1LjMxMjUgMjAuMzEyNUMxNS4zMTI1IDIwLjE0IDE1LjE3MjUgMjAgMTQuOTk4OCAyMFwiXG4gICAgICAgICAgc3Ryb2tlPVwiIzMyMzIzMlwiXG4gICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS41XCJcbiAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiXG4gICAgICAgIC8+XG4gICAgICA8L3N2Zz5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cImN1cnJlbmN5LWlucHV0IGluc2lkZVwiPlxuICAgIDxzcGFuICpuZ0lmPVwic3ltYm9sUG9zaXRpb24gPT09ICdCZWZvcmUgdGhlIHZhbHVlJ1wiIGNsYXNzPVwiY3VycmVuY3ktc3ltYm9sIGxlZnRcIj5cbiAgICAgIHt7IGN1cnJlbmN5U3ltYm9sIH19XG4gICAgPC9zcGFuPlxuXG4gICAgPGlucHV0XG4gICAgdHlwZT1cInRleHRcIlxuICAgIGNsYXNzPVwiZm9ybS1jb250cm9sIG1iLTIgaGVpZ2h0XCJcbiAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgIFtjbGFzcy5oaWRlLXNwaW4tYnV0dG9uc109XCJ0cnVlXCJcbiAgICAoYmx1cik9XCJ2YWxpZGF0ZU51bWJlcigpXCJcbiAgICBbKG5nTW9kZWwpXT1cImVudGVyZWRBbW91bnRcIlxuICAgIFtjbGFzcy5pbnZhbGlkXT1cInZhbGlkYXRpb25GYWlsZWRcIlxuICAgIFtjbGFzcy5pbnZhbGlkLXF1ZXN0aW9uXT1cImlzSW52YWxpZCAmJiAoIWluTGluZSB8fCAhZW50ZXJlZEFtb3VudClcIlxuICAgIChpbnB1dCk9XCJ2YWxpZGF0ZUlucHV0KCRldmVudClcIlxuICAgIFthdHRyLm1pbl09XCJtaW5cIlxuICAgIFthdHRyLm1heF09XCJtYXhcIlxuICAgICh3aGVlbCk9XCJwcmV2ZW50TnVtYmVyU2Nyb2xsKCRldmVudClcIlxuICAgIC8+XG5cbiAgICA8c3BhbiAqbmdJZj1cInN5bWJvbFBvc2l0aW9uID09PSAnQWZ0ZXIgdGhlIHZhbHVlJ1wiIGNsYXNzPVwiY3VycmVuY3ktc3ltYm9sIHJpZ2h0XCI+XG4gICAgICAgIHt7IGN1cnJlbmN5U3ltYm9sIH19XG4gICAgPC9zcGFuPlxuXG4gIDwvZGl2PlxuICBcbiAgPGRpdiAqbmdJZj1cImlzSW52YWxpZCAmJiAoIWluTGluZSB8fCAhZW50ZXJlZEFtb3VudClcIiBjbGFzcz1cImVycm9yLW1lc3NhZ2VcIj5cbiAgICB7eyBlcnJvck1lc3NhZ2UgfX1cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJ2YWxpZGF0aW9uRmFpbGVkICYmICFpc0ludmFsaWRcIiBjbGFzcz1cInRleHQtZGFuZ2VyIGVycm9yLW1lc3NhZ2VcIj5cbiAgICA8c3ZnXG4gICAgICBjbGFzcz1cInZhbGlkYXRpb25TdmdcIlxuICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiXG4gICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICA+XG4gICAgICA8cGF0aFxuICAgICAgICBkPVwiTTEyLjAwMSAxNi43NUMxMi4xMzkgMTYuNzUgMTIuMjUxIDE2LjYzOCAxMi4yNSAxNi41QzEyLjI1IDE2LjM2MiAxMi4xMzggMTYuMjUgMTIgMTYuMjVDMTEuODYyIDE2LjI1IDExLjc1IDE2LjM2MiAxMS43NSAxNi41QzExLjc1IDE2LjYzOCAxMS44NjIgMTYuNzUgMTIuMDAxIDE2Ljc1XCJcbiAgICAgICAgc3Ryb2tlPVwid2hpdGVcIlxuICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIlxuICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxuICAgICAgLz5cbiAgICAgIDxwYXRoXG4gICAgICAgIGZpbGwtcnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICBjbGlwLXJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgZD1cIk0xMiAyMUM3LjAyOSAyMSAzIDE2Ljk3MSAzIDEyQzMgNy4wMjkgNy4wMjkgMyAxMiAzQzE2Ljk3MSAzIDIxIDcuMDI5IDIxIDEyQzIxIDE2Ljk3MSAxNi45NzEgMjEgMTIgMjFaXCJcbiAgICAgICAgZmlsbD1cIiNGRjAwMDBcIlxuICAgICAgICBzdHJva2U9XCIjRkYwMDAwXCJcbiAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS41XCJcbiAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCJcbiAgICAgIC8+XG4gICAgICA8cGF0aFxuICAgICAgICBkPVwiTTEyIDEyLjc1TDEyIDcuNzVcIlxuICAgICAgICBzdHJva2U9XCJ3aGl0ZVwiXG4gICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiXG4gICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxuICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiXG4gICAgICAvPlxuICAgICAgPGNpcmNsZSBjeD1cIjEyXCIgY3k9XCIxNlwiIHI9XCIxXCIgZmlsbD1cIndoaXRlXCIgLz5cbiAgICA8L3N2Zz5cbiAgICB7eyB2YWxpZGF0aW9uTWVzc2FnZSB9fVxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
291
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VycmVuY3ktZmllbGRzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Zvcm0tc3VibWlzc2lvbi9zcmMvZm9ybS1maWVsZHMvY3VycmVuY3ktZmllbGRzL2N1cnJlbmN5LWZpZWxkcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mb3JtLXN1Ym1pc3Npb24vc3JjL2Zvcm0tZmllbGRzL2N1cnJlbmN5LWZpZWxkcy9jdXJyZW5jeS1maWVsZHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7OztBQVV2RSxNQUFNLE9BQU8sdUJBQXVCO0lBdUJsQyxZQUNZLGlCQUFvQyxFQUNwQyxPQUE4QixFQUM5QixnQkFBMkM7UUFGM0Msc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyxZQUFPLEdBQVAsT0FBTyxDQUF1QjtRQUM5QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQTJCO1FBeEI5QyxhQUFRLEdBQVEsRUFBRSxDQUFDO1FBQ25CLFdBQU0sR0FBWSxLQUFLLENBQUM7UUFDeEIsV0FBTSxHQUFZLEtBQUssQ0FBQztRQUV2QixpQkFBWSxHQUFHLElBQUksWUFBWSxFQUE4QyxDQUFDO1FBR3hGLFVBQUssR0FBVyxDQUFDLENBQUM7UUFDbEIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUMxQixTQUFJLEdBQVcsRUFBRSxDQUFDO1FBQ2xCLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBR3pCLG1CQUFjLEdBQVUsRUFBRSxDQUFDO1FBRTNCLG1CQUFjLEdBQVcsa0JBQWtCLENBQUM7UUFHNUMscUJBQWdCLEdBQVksS0FBSyxDQUFDO1FBQ2xDLHNCQUFpQixHQUFXLEVBQUUsQ0FBQztRQUN2QixjQUFTLEdBQVMsRUFBRSxD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Q0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDaEQ7SUFDSCxDQUFDOytHQTdUVSx1QkFBdUI7bUdBQXZCLHVCQUF1QixnT0NWcEMscytIQWlIQTs7NEZEdkdhLHVCQUF1QjtrQkFMbkMsU0FBUzsrQkFDRSxxQkFBcUI7cUxBTXRCLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNJLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0UsS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFZhbGlkYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdmFsaWRhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IEVsZW1lbnRUcmFja2VyU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2VsZW1lbnQtdHJhY2tlci5zZXJ2aWNlJztcbmltcG9ydCB7IEFnZ3JlZ2F0aW9uRnVuY3Rpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYWdncmVnYXRlLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItY3VycmVuY3ktZmllbGRzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2N1cnJlbmN5LWZpZWxkcy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2N1cnJlbmN5LWZpZWxkcy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEN1cnJlbmN5RmllbGRzQ29tcG9uZW50IHtcblxuICBASW5wdXQoKSBxdWVzdGlvbjogYW55ID0ge307XG4gIEBJbnB1dCgpIGluTGluZTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBpbkNhcmQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgc3VibWlzc2lvbkluZGV4ITogbnVtYmVyO1xuICBAT3V0cHV0KCkgYW5zd2VyQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjx7IGFuc3dlcjogYW55OyBtYXhQb3NzaWJsZVNjb3JlPzogbnVtYmVyIH0+KCk7XG4gIEBJbnB1dCgpIHJvd0lkOiBhbnk7XG5cbiAgY291bnQ6IG51bWJlciA9IDA7XG4gIHJlcXVpcmVkOiBib29sZWFuID0gZmFsc2U7XG4gIGhpbnQ6IHN0cmluZyA9ICcnO1xuICBwbGFjZWhvbGRlcjogc3RyaW5nID0gJyc7XG4gIG1pbiE6IG51bWJlcjtcbiAgbWF4ITogbnVtYmVyO1xuICBjdXJyZW5jeVN5bWJvbDpzdHJpbmcgPSAnJztcbiAgZGVjaW1hbFByZWNpc2lvbiE6bnVtYmVyO1xuICBzeW1ib2xQb3NpdGlvbjogc3RyaW5nID0gJ0JlZm9yZSB0aGUgdmFsdWUnO1xuICB0aG91c2FuZFNlcGFyYXRvciE6Ym9vbGVhbjtcbiAgZW50ZXJlZEFtb3VudCE6IHN0cmluZztcbiAgdmFsaWRhdGlvbkZhaWxlZDogYm9vbGVhbiA9IGZhbHNlO1xuICB2YWxpZGF0aW9uTWVzc2FnZTogc3RyaW5nID0gJyc7XG4gIHByaXZhdGUgZWxlbWVudElkOiBzdHJpbmc9Jyc7XG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSB2YWxpZGF0aW9uU2VydmljZTogVmFsaWRhdGlvblNlcnZpY2UsXG4gICAgICBwcml2YXRlIHRyYWNrZXI6IEVsZW1lbnRUcmFja2VyU2VydmljZSxcbiAgICAgIHByaXZhdGUgYWdncmVnYXRlU2VydmljZTpBZ2dyZWdhdGlvbkZ1bmN0aW9uU2VydmljZVxuICAgICkge1xuICAgIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnZhbHVlQXNzaWduZWQoKTtcbiAgfVxuXG4gIHZhbHVlQXNzaWduZWQoKSB7XG4gICAgdGhpcy5jb3VudCA9IHRoaXMucXVlc3Rpb24uY291bnQ7XG4gICAgdGhpcy5yZXF1aXJlZCA9IHRoaXMucXVlc3Rpb24ucmVxdWlyZWQ7XG4gICAgdGhpcy5oaW50ID0gdGhpcy5xdWVzdGlvbi5oaW50O1xuICAgIHRoaXMucGxhY2Vob2xkZXIgPSB0aGlzLnF1ZXN0aW9uLmZvcm1FbGVtZW50Py5hcHBlYXJhbmNlPy5wbGFjZWhvbGRlciB8fCAnJztcbiAgICB0aGlzLmN1cnJlbmN5U3ltYm9sID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudD8uYXBwZWFyYW5jZT8uY3VycmVuY3lTeW1ib2w7XG4gICAgdGhpcy5kZWNpbWFsUHJlY2lzaW9uID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudD8uYXBwZWFyYW5jZT8uZGVjaW1hbFByZWNpc2lvbjtcbiAgICB0aGlzLnN5bWJvbFBvc2l0aW9uID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudD8uYXBwZWFyYW5jZT8uc3ltYm9sUG9zaXRpb24gfHwgJ0JlZm9yZSB0aGUgdmFsdWUnO1xuICAgIHRoaXMudGhvdXNhbmRTZXBhcmF0b3IgPSB0aGlzLnF1ZXN0aW9uLmZvcm1FbGVtZW50Py5hcHBlYXJhbmNlPy50aG91c2FuZFNlcGFyYXRvcjtcbiAgICB0aGlzLm1pbiA9IHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQudmFsaWRhdGlvbi5taW47XG4gICAgdGhpcy5tYXggPSB0aGlzLnF1ZXN0aW9uLmZvcm1FbGVtZW50LnZhbGlkYXRpb24ubWF4O1xuXG5pZiAodGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudD8uYXBwZWFyYW5jZT8uY3VycmVuY3kpIHtcbiAgICAgIGxldCB1c2VyTG9jYWxlQ3VyZWVuY3kgPSB0aGlzLnF1ZXN0aW9uLmZvcm1FbGVtZW50Py5hcHBlYXJhbmNlPy5jdXJyZW5jeTtcbiAgICAgIGlmICh0aGlzLnF1ZXN0aW9uLmZvcm1FbGVtZW50LmFwcGVhcmFuY2UuY3VycmVuY3lPcHRpb24pIHtcbiAgICAgICAgbGV0IGN1cnJlbmN5T3B0aW9uID1cbiAgICAgICAgICB0aGlzLnF1ZXN0aW9uLmZvcm1FbGVtZW50LmFwcGVhcmFuY2UuY3VycmVuY3lPcHRpb247XG4gICAgICAgIGlmIChjdXJyZW5jeU9wdGlvbiA9PSAnYXV0bycpIHtcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICB0aGlzLnF1ZXN0aW9uLmZvcm1FbGVtZW50LmFwcGVhcmFuY2UubGltaXRDdXJyZW5jeVN5bWJvbCAmJlxuICAgICAgICAgICAgdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC5hcHBlYXJhbmNlLmxpbWl0Q3VycmVuY3lTeW1ib2wubGVuZ3RoID4gMFxuICAgICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy5jdXJyZW5jeVN5bWJvbCA9XG4gICAgICAgICAgICAgIHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQuYXBwZWFyYW5jZS5saW1pdEN1cnJlbmN5U3ltYm9sLmluY2x1ZGVzKFxuICAgICAgICAgICAgICAgIHVzZXJMb2NhbGVDdXJlZW5jeVxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgPyB1c2VyTG9jYWxlQ3VyZWVuY3lcbiAgICAgICAgICAgICAgICA6IHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQ/LmFwcGVhcmFuY2U/LmN1cnJlbmN5U3ltYm9sO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmN1cnJlbmN5U3ltYm9sID0gdXNlckxvY2FsZUN1cmVlbmN5O1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmIChjdXJyZW5jeU9wdGlvbiA9PSAnc3BlY2lmaWMnKSB7XG4gICAgICAgICAgdGhpcy5jdXJyZW5jeVN5bWJvbCA9XG4gICAgICAgICAgICB0aGlzLnF1ZXN0aW9uLmZvcm1FbGVtZW50Py5hcHBlYXJhbmNlPy5zcGVjaWZpY0N1cnJlbmN5U3ltYm9sO1xuICAgICAgICAgICAgY29uc29sZS5sb2coXCJzcGVjaWZpY1wiLHRoaXMuY3VycmVuY3lTeW1ib2wpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGlmIChcbiAgICAgICF0aGlzLmN1cnJlbmN5U3ltYm9sICYmXG4gICAgICB0aGlzLnF1ZXN0aW9uLmZvcm1FbGVtZW50Py5hcHBlYXJhbmNlPy5jdXJyZW5jeVN5bWJvbFxuICAgICkge1xuICAgICAgdGhpcy5jdXJyZW5jeVN5bWJvbCA9XG4gICAgICAgIHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQ/LmFwcGVhcmFuY2U/LmN1cnJlbmN5U3ltYm9sO1xuICAgICAgICAgY29uc29sZS5sb2coXCJkZWZhdWx0IGN1cnJlbmN5XCIsdGhpcy5jdXJyZW5jeVN5bWJvbCk7XG4gICAgfVxuXG4gICAgaWYodGhpcy5xdWVzdGlvbi5hbnN3ZXIpe1xuICAgICAgIHRoaXMuaW5pdGlhbGl6ZUFuc3dlcigpO1xuICAgIH1cbiAgICBpZiAodGhpcy5xdWVzdGlvbi5jaGlsZExvZ2ljcyAmJiB0aGlzLnF1ZXN0aW9uLmFuc3dlcikge1xuICAgICAgdGhpcy51cGRhdGVDaGlsZExvZ2ljcyh0aGlzLnF1ZXN0aW9uKTtcbiAgICB9XG4gICAgdGhpcy5hZ2dyZWdhdGVTZXJ2aWNlLnNldE51bWJlckZpZWxkKHRoaXMucm93SWQsdGhpcy5xdWVzdGlvbi5pZCx0aGlzLnF1ZXN0aW9uLmFuc3dlcik7XG4gIH1cblxuXG4gIGluaXRpYWxpemVBbnN3ZXIoKSB7XG4gICAgbGV0IHZhbHVlID0gdGhpcy5xdWVzdGlvbj8uYW5zd2VyO1xuICAgIGlmICghdmFsdWUpIHJldHVybjtcbiAgICAvLyBjaGVjayBpZiBudW1lcmljXG4gICAgaWYgKCFpc05hTihOdW1iZXIodmFsdWUpKSkge1xuICAgICAgaWYgKHRoaXMudGhvdXNhbmRTZXBhcmF0b3IpIHtcbiAgICAgICAgY29uc3QgcGFydHMgPSB2YWx1ZS5zcGxpdCgnLicpO1xuICAgICAgICBwYXJ0c1swXSA9IE51bWJlcihwYXJ0c1swXSkudG9Mb2NhbGVTdHJpbmcoJ2VuLVVTJyk7IC8vIGFkZHMgcHJvcGVyIHRob3VzYW5kIHNlcGFyYXRvclxuICAgICAgICB2YWx1ZSA9IHBhcnRzLmpvaW4oJy4nKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHZhbHVlID0gdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5lbnRlcmVkQW1vdW50ID0gdmFsdWU7XG4gIH1cblxuXG4gIHByZXZlbnROdW1iZXJTY3JvbGwoZXZlbnQ6IFdoZWVsRXZlbnQpIHtcbiAgICBpZiAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCA9PT0gZXZlbnQudGFyZ2V0KSB7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cbiAgfVxuXG4gIHZhbGlkYXRlTnVtYmVyKCkge1xuICAgIHRoaXMudmFsaWRhdGlvbkZhaWxlZCA9IGZhbHNlO1xuICAgIHRoaXMudmFsaWRhdGlvblNlcnZpY2UuY2xlYXJJbnZhbGlkKHRoaXMuYnVpbGRFbGVtZW50SWQoKSk7XG4gICAgdGhpcy52YWxpZGF0aW9uTWVzc2FnZSA9ICcnO1xuICAgIGxldCBlbnRlcmVkQW1vdW50ID0gdGhpcy5wYXJzZUN1cnJlbmN5VG9OdW1iZXIodGhpcy5lbnRlcmVkQW1vdW50KVxuICAgIGlmICh0aGlzLnJlcXVpcmVkICYmICFlbnRlcmVkQW1vdW50KSB7XG4gICAgICB0aGlzLnZhbGlkYXRpb25GYWlsZWQgPSB0cnVlO1xuICAgICAgdGhpcy52YWxpZGF0aW9uTWVzc2FnZSA9IGBQbGVhc2UgZW50ZXIgYSB2YWxpZCBhbW91bnRgO1xuICAgICAgdGhpcy5xdWVzdGlvbi52YWxpZGF0aW9uTWVzc2FnZSA9IGBQbGVhc2UgZW50ZXIgYSB2YWxpZCBhbW91bnRgO1xuICAgICAgdGhpcy5xdWVzdGlvbi52YWxpZGF0aW9uID0gZmFsc2U7XG4gICAgfSBlbHNlIGlmIChcbiAgICAgICh0aGlzLm1pbiAhPT0gdW5kZWZpbmVkICYmIGVudGVyZWRBbW91bnQgPCB0aGlzLm1pbikgfHxcbiAgICAgICh0aGlzLm1heCAhPT0gdW5kZWZpbmVkICYmIGVudGVyZWRBbW91bnQgPiB0aGlzLm1heClcbiAgICApIHtcbiAgICAgIHRoaXMudmFsaWRhdGlvbkZhaWxlZCA9IHRydWU7XG5cbiAgICAgIC8vIENvbnN0cnVjdCBhcHByb3ByaWF0ZSB2YWxpZGF0aW9uIG1lc3NhZ2UgYmFzZWQgb24gd2hldGhlciBtaW4sIG1heCwgb3IgYm90aCBhcmUgcHJvdmlkZWRcbiAgICAgIGlmICh0aGlzLm1pbiAhPT0gdW5kZWZpbmVkICYmIHRoaXMubWF4ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy52YWxpZGF0aW9uTWVzc2FnZSA9IGBQbGVhc2UgZW50ZXIgYSB2YWxpZCBhbW91bnQgYmV0d2VlbiAke3RoaXMubWlufSBhbmQgJHt0aGlzLm1heH1gO1xuICAgICAgICB0aGlzLnF1ZXN0aW9uLnZhbGlkYXRpb25NZXNzYWdlID0gYFBsZWFzZSBlbnRlciBhIHZhbGlkIGFtb3VudCBiZXR3ZWVuICR7dGhpcy5taW59IGFuZCAke3RoaXMubWF4fWA7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMubWluICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy52YWxpZGF0aW9uTWVzc2FnZSA9IGBQbGVhc2UgZW50ZXIgYSBhbW91bnQgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICR7dGhpcy5taW59YDtcbiAgICAgICAgdGhpcy5xdWVzdGlvbi52YWxpZGF0aW9uTWVzc2FnZSA9IGBQbGVhc2UgZW50ZXIgYSBhbW91bnQgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICR7dGhpcy5taW59YDtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5tYXggIT09IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLnZhbGlkYXRpb25NZXNzYWdlID0gYFBsZWFzZSBlbnRlciBhIGFtb3VudCBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJHt0aGlzLm1heH1gO1xuICAgICAgICB0aGlzLnF1ZXN0aW9uLnZhbGlkYXRpb25NZXNzYWdlID0gYFBsZWFzZSBlbnRlciBhIGFtb3VudCBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJHt0aGlzLm1heH1gO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnF1ZXN0aW9uLnZhbGlkYXRpb24gPSBmYWxzZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5xdWVzdGlvbi52YWxpZGF0aW9uID0gdHJ1ZTtcbiAgICB9XG4gICAgaWYgKHRoaXMucXVlc3Rpb24uY2hpbGRMb2dpY3MpIHtcbiAgICAgIHRoaXMudXBkYXRlQ2hpbGRMb2dpY3ModGhpcy5xdWVzdGlvbik7XG4gICAgfVxuICB9XG5cbiAgdmFsaWRhdGVJbnB1dChldmVudDogYW55KSB7XG4gICAgdGhpcy52YWxpZGF0aW9uU2VydmljZS5jbGVhckludmFsaWQodGhpcy5idWlsZEVsZW1lbnRJZCgpKTtcblxuICAgIC8vIHJlbW92ZSBleGlzdGluZyBjb21tYXMgJiBjdXJyZW5jeSBzeW1ib2xcbiAgICBsZXQgcmF3VmFsdWUgPSBldmVudC50YXJnZXQudmFsdWUucmVwbGFjZSgvLC9nLCAnJykucmVwbGFjZSh0aGlzLmN1cnJlbmN5U3ltYm9sLCAnJyk7XG5cbiAgICAvLyDinIUgYWxsb3cgbnVtYmVycyB3aXRoIG9wdGlvbmFsIHNpbmdsZSBkZWNpbWFsXG4gICAgaWYgKHJhd1ZhbHVlICYmICEvXlxcZCpcXC4/XFxkKiQvLnRlc3QocmF3VmFsdWUpKSB7XG4gICAgICByYXdWYWx1ZSA9IHJhd1ZhbHVlLnJlcGxhY2UoL1teXFxkLl0vZywgJycpO1xuICAgIH1cblxuICAgIC8vIOKchSBhcHBseSBkZWNpbWFsIHByZWNpc2lvbiByZXN0cmljdGlvbiAoYnV0IGRvbuKAmXQgZm9yY2UgemVyb3MpXG4gICAgaWYgKHRoaXMuZGVjaW1hbFByZWNpc2lvbiAhPT0gdW5kZWZpbmVkICYmIHJhd1ZhbHVlLmluY2x1ZGVzKCcuJykpIHtcbiAgICAgIGNvbnN0IFtpbnRQYXJ0LCBkZWNpbWFsUGFydCA9ICcnXSA9IHJhd1ZhbHVlLnNwbGl0KCcuJyk7XG4gICAgICBsZXQgdHJpbW1lZERlY2ltYWwgPSBkZWNpbWFsUGFydC5zbGljZSgwLCB0aGlzLmRlY2ltYWxQcmVjaXNpb24pO1xuICAgICAgcmF3VmFsdWUgPSB0cmltbWVkRGVjaW1hbCA/IGAke2ludFBhcnR9LiR7dHJpbW1lZERlY2ltYWx9YCA6IGludFBhcnQgKyAnLic7XG4gICAgfVxuXG4gICAgLy8gZm9ybWF0IHdpdGggdGhvdXNhbmQgc2VwYXJhdG9yIGZvciBkaXNwbGF5XG4gICAgbGV0IGZvcm1hdHRlZFZhbHVlID0gcmF3VmFsdWU7XG4gICAgaWYgKHRoaXMudGhvdXNhbmRTZXBhcmF0b3IgJiYgcmF3VmFsdWUpIHtcbiAgICAgIGNvbnN0IHBhcnRzID0gcmF3VmFsdWUuc3BsaXQoJy4nKTtcbiAgICAgIGlmIChwYXJ0c1swXSkge1xuICAgICAgICBwYXJ0c1swXSA9IE51bWJlcihwYXJ0c1swXSkudG9Mb2NhbGVTdHJpbmcoJ2VuLVVTJyk7XG4gICAgICB9XG4gICAgICBmb3JtYXR0ZWRWYWx1ZSA9IHBhcnRzLmpvaW4oJy4nKTtcbiAgICB9XG5cbiAgICAvLyBrZWVwIG51bWVyaWMgdmVyc2lvbiBmb3IgYmFja2VuZC9jYWxjdWxhdGlvbnNcbiAgICB0aGlzLnF1ZXN0aW9uLmFuc3dlciA9IHJhd1ZhbHVlO1xuICAgIHRoaXMucXVlc3Rpb24uY3VycmVuY3lTeW1ib2wgPSB0aGlzLmN1cnJlbmN5U3ltYm9sO1xuICAgIC8vIHVwZGF0ZSBmaWVsZCBkaXNwbGF5XG4gICAgZXZlbnQudGFyZ2V0LnZhbHVlID0gZm9ybWF0dGVkVmFsdWU7XG5cbiAgICB0aGlzLmFnZ3JlZ2F0ZVNlcnZpY2Uuc2V0TnVtYmVyRmllbGQodGhpcy5yb3dJZCwgdGhpcy5xdWVzdGlvbi5pZCwgcmF3VmFsdWUpO1xuXG4gICAgaWYgKHRoaXMucXVlc3Rpb24uY2hpbGRMb2dpY3MpIHtcbiAgICAgIHRoaXMudXBkYXRlQ2hpbGRMb2dpY3ModGhpcy5xdWVzdGlvbik7XG4gICAgfVxuXG5cbiAgICB0aGlzLmFuc3dlckNoYW5nZS5lbWl0KHsgYW5zd2VyOiB0aGlzLnF1ZXN0aW9uLmFuc3dlciwgbWF4UG9zc2libGVTY29yZTogMCB9KTtcbiAgICB0aGlzLnZhbGlkYXRlTnVtYmVyKCk7XG4gIH1cblxuICB1cGRhdGVDaGlsZExvZ2ljcyhxdWVzdGlvbjogYW55KSB7XG4gICAgaWYgKHF1ZXN0aW9uLmNoaWxkTG9naWNzICYmIEFycmF5LmlzQXJyYXkocXVlc3Rpb24uY2hpbGRMb2dpY3MpKSB7XG4gICAgICBxdWVzdGlvbi5jaGlsZExvZ2ljcy5mb3JFYWNoKChjaGlsZExvZ2ljOiBhbnkpID0+IHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIHRoaXMuZXZhbHVhdGVDb25kaXRpb24oXG4gICAgICAgICAgICBxdWVzdGlvbi5hbnN3ZXIsXG4gICAgICAgICAgICBjaGlsZExvZ2ljLmNvbmRpdGlvbixcbiAgICAgICAgICAgIGNoaWxkTG9naWMuaW5wdXRWYWx1ZVxuICAgICAgICAgIClcbiAgICAgICAgKSB7XG4gICAgICAgICAgY2hpbGRMb2dpYy5zaG93TG9naWMgPSB0cnVlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNoaWxkTG9naWMuc2hvd0xvZ2ljID0gZmFsc2U7XG4gICAgICAgICAgdGhpcy5jbGVhckFuc3dlcnNSZWN1cnNpdmVseShjaGlsZExvZ2ljKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcGFyc2VDdXJyZW5jeVRvTnVtYmVyKHZhbHVlOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIGlmICghdmFsdWUpIHJldHVybiAwO1xuXG4gICAgLy8gUmVtb3ZlIGN1cnJlbmN5IHN5bWJvbCwgY29tbWFzLCBzcGFjZXNcbiAgICBjb25zdCBudW1lcmljU3RyaW5nID0gdmFsdWVcbiAgICAgIC5yZXBsYWNlKG5ldyBSZWdFeHAoYFxcXFwke3RoaXMuY3VycmVuY3lTeW1ib2x9YCwgJ2cnKSwgJycpIC8vIHJlbW92ZSBzeW1ib2xcbiAgICAgIC5yZXBsYWNlKC8sL2csICcnKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gcmVtb3ZlIHRob3VzYW5kIHNlcGFyYXRvcnNcbiAgICAgIC50cmltKCk7XG5cbiAgICAvLyBDb252ZXJ0IHRvIG51bWJlclxuICAgIGNvbnN0IG51bSA9IHBhcnNlRmxvYXQobnVtZXJpY1N0cmluZyk7XG4gICAgcmV0dXJuIGlzTmFOKG51bSkgPyAwIDogbnVtO1xuICB9XG5cblxuICBjbGVhckFuc3dlcnNSZWN1cnNpdmVseShsb2dpYzogYW55KSB7XG4gICAgaWYgKCFsb2dpYyB8fCAhbG9naWMucm93cykgcmV0dXJuO1xuXG4gICAgbG9naWMucm93cy5mb3JFYWNoKChyb3c6IGFueSkgPT4ge1xuICAgICAgcm93LmdyaWQuZm9yRWFjaCgoaXRlbTogYW55KSA9PiB7XG4gICAgICAgIGNvbnN0IGVsZW1lbnQgPSBpdGVtLmVsZW1lbnQ7XG5cbiAgICAgICAgaWYgKGl0ZW0uZW50aXR5VHlwZSA9PT0gJ1FVRVNUSU9OJyAmJiBlbGVtZW50KSB7XG4gICAgICAgICAgLy8gQ2xlYXIgYW5zd2VyIGlmIHByZXNlbnRcbiAgICAgICAgICBpZiAoJ2Fuc3dlcicgaW4gZWxlbWVudCkge1xuICAgICAgICAgICAgZWxlbWVudC5hbnN3ZXIgPSAnJztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBSZWN1cnNpdmVseSBjbGVhciBjaGlsZExvZ2ljcyBpZiBhbnlcbiAgICAgICAgICBpZiAoZWxlbWVudC5jaGlsZExvZ2ljcyAmJiBlbGVtZW50LmNoaWxkTG9naWNzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGVsZW1lbnQuY2hpbGRMb2dpY3MuZm9yRWFjaCgoY2hpbGRMb2dpYzogYW55KSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMuY2xlYXJBbnN3ZXJzUmVjdXJzaXZlbHkoY2hpbGRMb2dpYyk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaXRlbS5lbnRpdHlUeXBlID09PSAnU1VCRk9STScgJiYgZWxlbWVudCAmJiBlbGVtZW50LnJvd3MpIHtcbiAgICAgICAgICAvLyBTVUJGT1JNIGNvbnRhaW5zIGl0cyBvd24gcm93cyBzdHJ1Y3R1cmUgbGlrZSBhIGZvcm1cbiAgICAgICAgICB0aGlzLmNsZWFyQW5zd2Vyc1JlY3Vyc2l2ZWx5KHsgcm93czogZWxlbWVudC5yb3dzIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIGV2YWx1YXRlQ29uZGl0aW9uKGFuc3dlcjogYW55LCBjb25kaXRpb246IGFueSwgaW5wdXRWYWx1ZTogYW55KSB7XG4gICAgc3dpdGNoIChjb25kaXRpb24pIHtcbiAgICAgIGNhc2UgJz4nOlxuICAgICAgICByZXR1cm4gYW5zd2VyID4gTnVtYmVyKGlucHV0VmFsdWUpO1xuICAgICAgY2FzZSAnPCc6XG4gICAgICAgIHJldHVybiBhbnN3ZXIgPCBOdW1iZXIoaW5wdXRWYWx1ZSk7XG4gICAgICBjYXNlICc+PSc6XG4gICAgICAgIHJldHVybiBhbnN3ZXIgPj0gTnVtYmVyKGlucHV0VmFsdWUpO1xuICAgICAgY2FzZSAnPD0nOlxuICAgICAgICByZXR1cm4gYW5zd2VyIDw9IE51bWJlcihpbnB1dFZhbHVlKTtcbiAgICAgIGNhc2UgJz0nOlxuICAgICAgICByZXR1cm4gYW5zd2VyID09IGlucHV0VmFsdWU7XG4gICAgICBjYXNlICchPSc6XG4gICAgICAgIHJldHVybiBhbnN3ZXIgIT0gaW5wdXRWYWx1ZTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuXG5cbiAgaGFuZGxlVmFsaWRhdGlvbihpc1ZhbGlkOiBib29sZWFuLCBtZXNzYWdlOiBzdHJpbmcgPSAnVGhpcyBmaWVsZCBpcyByZXF1aXJlZCcpIHtcbiAgICBpZiAoaXNWYWxpZCkge1xuICAgICAgdGhpcy52YWxpZGF0aW9uU2VydmljZS5jbGVhckludmFsaWQodGhpcy5idWlsZEVsZW1lbnRJZCgpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gdGhpcy52YWxpZGF0aW9uU2VydmljZS5zZXRJbnZhbGlkKHRoaXMucXVlc3Rpb24uaWQsIG1lc3NhZ2UpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYnVpbGRFbGVtZW50SWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gKHRoaXMuaW5MaW5lIHx8IHRoaXMuaW5DYXJkKVxuICAgICAgPyBgJHt0aGlzLnN1Ym1pc3Npb25JbmRleH0tJHt0aGlzLnF1ZXN0aW9uLmlkfWBcbiAgICAgIDogYCR7dGhpcy5xdWVzdGlvbi5pZH1gO1xuICB9XG5cbiAgZ2V0IGlzSW52YWxpZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLmdldEVycm9yTWVzc2FnZSh0aGlzLmJ1aWxkRWxlbWVudElkKCkpO1xuICB9XG5cbiAgZ2V0IGVycm9yTWVzc2FnZSgpOiBzdHJpbmcgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy52YWxpZGF0aW9uU2VydmljZS5nZXRFcnJvck1lc3NhZ2UodGhpcy5idWlsZEVsZW1lbnRJZCgpKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBpZiAodGhpcy5pbkxpbmUgfHwgdGhpcy5pbkNhcmQpIHtcbiAgICAgIHRoaXMuZWxlbWVudElkID0gYHF1ZXN0aW9uLSR7dGhpcy5zdWJtaXNzaW9uSW5kZXh9LSR7dGhpcy5xdWVzdGlvbi5pZH1gO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmVsZW1lbnRJZCA9IGBxdWVzdGlvbi0ke3RoaXMucXVlc3Rpb24uaWR9YDtcbiAgICB9XG5cbiAgICB0aGlzLnRyYWNrZXIucmVnaXN0ZXJFbGVtZW50KHRoaXMuZWxlbWVudElkKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIGlmICh0aGlzLmVsZW1lbnRJZCkge1xuICAgICAgdGhpcy50cmFja2VyLnVucmVnaXN0ZXJFbGVtZW50KHRoaXMuZWxlbWVudElkKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXZcbiAgW25nQ2xhc3NdPVwieyAnbWItNCc6ICFpbkxpbmUgfVwiXG4gIGNsYXNzPVwicHgtM1wiXG4gIFtpZF09XCIoaW5MaW5lIHx8IGluQ2FyZCkgPyAncXVlc3Rpb24tJyArIHN1Ym1pc3Npb25JbmRleCArICctJyArIHF1ZXN0aW9uLmlkIDogJ3F1ZXN0aW9uLScgKyBxdWVzdGlvbi5pZFwiXG4gIFthdHRyLm5hbWVdPVwicXVlc3Rpb24udGVzdEVsZW1lbnROYW1lXCJcbj5cbiAgPGRpdiBjbGFzcz1cImlucHV0LXdyYXBwZXIgbWItMlwiICpuZ0lmPVwiIWluTGluZVwiPlxuICAgIDxkaXYgKm5nSWY9XCJxdWVzdGlvbi5xdWVzdGlvbk51bWJlclwiIFtpbm5lckhUTUxdPVwicXVlc3Rpb24ucXVlc3Rpb25OdW1iZXJcIj48L2Rpdj5cbiAgICA8c3BhbiAqbmdJZj1cInF1ZXN0aW9uLnF1ZXN0aW9uTnVtYmVyXCIgY2xhc3M9XCJzcGFjZVwiPjwvc3Bhbj5cbiAgICA8bGFiZWw+e3sgcXVlc3Rpb24ucXVlc3Rpb24gfX08L2xhYmVsXG4gICAgPiZuYnNwO1xuICAgIDxzcGFuIGNsYXNzPVwidGV4dC1kYW5nZXJcIiAqbmdJZj1cInJlcXVpcmVkXCI+Kjwvc3Bhbj5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cInN2Zy13cmFwcGVyIG1iLTIgaGludEljb25cIlxuICAgICAgW2F0dHIuZGF0YS10aXRsZV09XCJoaW50XCJcbiAgICAgICpuZ0lmPVwiaGludFwiXG4gICAgPlxuICAgICAgPHN2Z1xuICAgICAgICBjbGFzcz1cImhpbnRTdmdcIlxuICAgICAgICB2aWV3Qm94PVwiMCAwIDMwIDMwXCJcbiAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICA+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZmlsbC1ydWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgY2xpcC1ydWxlPVwiZXZlbm9kZFwiXG4gICAgICAgICAgZD1cIk0xNSAyNi4yNVYyNi4yNUM4Ljc4NjI1IDI2LjI1IDMuNzUgMjEuMjEzOCAzLjc1IDE1VjE1QzMuNzUgOC43ODYyNSA4Ljc4NjI1IDMuNzUgMTUgMy43NVYzLjc1QzIxLjIxMzggMy43NSAyNi4yNSA4Ljc4NjI1IDI2LjI1IDE1VjE1QzI2LjI1IDIxLjIxMzggMjEuMjEzOCAyNi4yNSAxNSAyNi4yNVpcIlxuICAgICAgICAgIHN0cm9rZT1cIiMzMjMyMzJcIlxuICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGQ9XCJNMTUgMTYuNTYyM1YxNi4yNDk4QzE1IDE1LjIyODUgMTUuNjMxMiAxNC42NzQ4IDE2LjI2MzcgMTQuMjQ5OEMxNi44ODEyIDEzLjgzMzUgMTcuNSAxMy4yOTEgMTcuNSAxMi4yOTFDMTcuNSAxMC45MDk4IDE2LjM4MTMgOS43OTEwMiAxNSA5Ljc5MTAyQzEzLjYxODcgOS43OTEwMiAxMi41IDEwLjkwOTggMTIuNSAxMi4yOTFcIlxuICAgICAgICAgIHN0cm9rZT1cIiMzMjMyMzJcIlxuICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxuICAgICAgICAvPlxuICAgICAgICA8cGF0aFxuICAgICAgICAgIGQ9XCJNMTQuOTk4OCAyMEMxNC44MjYzIDIwIDE0LjY4NjMgMjAuMTQgMTQuNjg3NSAyMC4zMTI1QzE0LjY4NzUgMjAuNDg1IDE0LjgyNzUgMjAuNjI1IDE1IDIwLjYyNUMxNS4xNzI1IDIwLjYyNSAxNS4zMTI1IDIwLjQ4NSAxNS4zMTI1IDIwLjMxMjVDMTUuMzEyNSAyMC4xNCAxNS4xNzI1IDIwIDE0Ljk5ODggMjBcIlxuICAgICAgICAgIHN0cm9rZT1cIiMzMjMyMzJcIlxuICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxuICAgICAgICAvPlxuICAgICAgPC9zdmc+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJjdXJyZW5jeS1pbnB1dCBpbnNpZGVcIj5cbiAgICA8c3BhbiAqbmdJZj1cInN5bWJvbFBvc2l0aW9uID09PSAnQmVmb3JlIHRoZSB2YWx1ZSdcIiBjbGFzcz1cImN1cnJlbmN5LXN5bWJvbCBsZWZ0XCI+XG4gICAgICB7eyBjdXJyZW5jeVN5bWJvbCB9fVxuICAgIDwvc3Bhbj5cblxuICAgIDxpbnB1dFxuICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICBjbGFzcz1cImZvcm0tY29udHJvbCBtYi0yIGhlaWdodFwiXG4gICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICBbY2xhc3MuaGlkZS1zcGluLWJ1dHRvbnNdPVwidHJ1ZVwiXG4gICAgKGJsdXIpPVwidmFsaWRhdGVOdW1iZXIoKVwiXG4gICAgWyhuZ01vZGVsKV09XCJlbnRlcmVkQW1vdW50XCJcbiAgICBbY2xhc3MuaW52YWxpZF09XCJ2YWxpZGF0aW9uRmFpbGVkXCJcbiAgICBbY2xhc3MuaW52YWxpZC1xdWVzdGlvbl09XCJpc0ludmFsaWQgJiYgKCFpbkxpbmUgfHwgIWVudGVyZWRBbW91bnQpXCJcbiAgICAoaW5wdXQpPVwidmFsaWRhdGVJbnB1dCgkZXZlbnQpXCJcbiAgICBbYXR0ci5taW5dPVwibWluXCJcbiAgICBbYXR0ci5tYXhdPVwibWF4XCJcbiAgICAod2hlZWwpPVwicHJldmVudE51bWJlclNjcm9sbCgkZXZlbnQpXCJcbiAgICAvPlxuXG4gICAgPHNwYW4gKm5nSWY9XCJzeW1ib2xQb3NpdGlvbiA9PT0gJ0FmdGVyIHRoZSB2YWx1ZSdcIiBjbGFzcz1cImN1cnJlbmN5LXN5bWJvbCByaWdodFwiPlxuICAgICAgICB7eyBjdXJyZW5jeVN5bWJvbCB9fVxuICAgIDwvc3Bhbj5cblxuICA8L2Rpdj5cbiAgXG4gIDxkaXYgKm5nSWY9XCJpc0ludmFsaWQgJiYgKCFpbkxpbmUgfHwgIWVudGVyZWRBbW91bnQpXCIgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+XG4gICAge3sgZXJyb3JNZXNzYWdlIH19XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwidmFsaWRhdGlvbkZhaWxlZCAmJiAhaXNJbnZhbGlkXCIgY2xhc3M9XCJ0ZXh0LWRhbmdlciBlcnJvci1tZXNzYWdlXCI+XG4gICAgPHN2Z1xuICAgICAgY2xhc3M9XCJ2YWxpZGF0aW9uU3ZnXCJcbiAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIlxuICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgPlxuICAgICAgPHBhdGhcbiAgICAgICAgZD1cIk0xMi4wMDEgMTYuNzVDMTIuMTM5IDE2Ljc1IDEyLjI1MSAxNi42MzggMTIuMjUgMTYuNUMxMi4yNSAxNi4zNjIgMTIuMTM4IDE2LjI1IDEyIDE2LjI1QzExLjg2MiAxNi4yNSAxMS43NSAxNi4zNjIgMTEuNzUgMTYuNUMxMS43NSAxNi42MzggMTEuODYyIDE2Ljc1IDEyLjAwMSAxNi43NVwiXG4gICAgICAgIHN0cm9rZT1cIndoaXRlXCJcbiAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS41XCJcbiAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCJcbiAgICAgIC8+XG4gICAgICA8cGF0aFxuICAgICAgICBmaWxsLXJ1bGU9XCJldmVub2RkXCJcbiAgICAgICAgY2xpcC1ydWxlPVwiZXZlbm9kZFwiXG4gICAgICAgIGQ9XCJNMTIgMjFDNy4wMjkgMjEgMyAxNi45NzEgMyAxMkMzIDcuMDI5IDcuMDI5IDMgMTIgM0MxNi45NzEgMyAyMSA3LjAyOSAyMSAxMkMyMSAxNi45NzEgMTYuOTcxIDIxIDEyIDIxWlwiXG4gICAgICAgIGZpbGw9XCIjRkYwMDAwXCJcbiAgICAgICAgc3Ryb2tlPVwiI0ZGMDAwMFwiXG4gICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNVwiXG4gICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxuICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiXG4gICAgICAvPlxuICAgICAgPHBhdGhcbiAgICAgICAgZD1cIk0xMiAxMi43NUwxMiA3Ljc1XCJcbiAgICAgICAgc3Ryb2tlPVwid2hpdGVcIlxuICAgICAgICBzdHJva2Utd2lkdGg9XCIxLjVcIlxuICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcbiAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxuICAgICAgLz5cbiAgICAgIDxjaXJjbGUgY3g9XCIxMlwiIGN5PVwiMTZcIiByPVwiMVwiIGZpbGw9XCJ3aGl0ZVwiIC8+XG4gICAgPC9zdmc+XG4gICAge3sgdmFsaWRhdGlvbk1lc3NhZ2UgfX1cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -5599,6 +5599,7 @@ class CurrencyFieldsComponent {
|
|
|
5599
5599
|
else if (currencyOption == 'specific') {
|
|
5600
5600
|
this.currencySymbol =
|
|
5601
5601
|
this.question.formElement?.appearance?.specificCurrencySymbol;
|
|
5602
|
+
console.log("specific", this.currencySymbol);
|
|
5602
5603
|
}
|
|
5603
5604
|
}
|
|
5604
5605
|
}
|
|
@@ -5606,6 +5607,7 @@ class CurrencyFieldsComponent {
|
|
|
5606
5607
|
this.question.formElement?.appearance?.currencySymbol) {
|
|
5607
5608
|
this.currencySymbol =
|
|
5608
5609
|
this.question.formElement?.appearance?.currencySymbol;
|
|
5610
|
+
console.log("default currency", this.currencySymbol);
|
|
5609
5611
|
}
|
|
5610
5612
|
if (this.question.answer) {
|
|
5611
5613
|
this.initializeAnswer();
|