myrta-ui 1.0.65 → 1.0.66

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.
@@ -254,7 +254,7 @@ export class InputTelComponent {
254
254
  }
255
255
  getNumberExample() {
256
256
  const formatExampleNumber = (number) => {
257
- return number.replace(/\d/g, '9');
257
+ return number;
258
258
  };
259
259
  const exampleNumber = this.numberFormat === 'international' ?
260
260
  this.formatIntelNumber(getExample(this.selectedCountry.iso2.toUpperCase(), 'mobile').number?.international || '') :
@@ -386,4 +386,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
386
386
  }], modelChange: [{
387
387
  type: Output
388
388
  }] } });
389
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtdGVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL2lucHV0LXRlbC9pbnB1dC10ZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtdGVsL2lucHV0LXRlbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxFQUNaLFVBQVUsRUFDVix1QkFBdUIsRUFDdkIsU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFxQixNQUFNLHFCQUFxQixDQUFDO0FBRWxGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBR3RFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvRSxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFFLEVBQUUsSUFBSSxNQUFNLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFcEMsT0FBTyxFQUFFLGlCQUFpQixFQUFzQixNQUFNLDBCQUEwQixDQUFDOzs7Ozs7OztBQWlCakYsTUFBTSxPQUFPLGlCQUFpQjtJQXFENUI7UUFuREEsYUFBYTtRQUNOLFNBQUksR0FBVyxNQUFNLEVBQUUsQ0FBQztRQUNmLFdBQU0sR0FBWSxFQUFFLENBQUM7UUFFNUIsYUFBUSxHQUFXLEVBQUUsQ0FBQztRQUN0Qix1QkFBa0IsR0FBbUIsRUFBRSxD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d0I7c0JBQWhDLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUdVLE9BQU87c0JBQXRCLEtBQUs7Z0JBQ1UsY0FBYztzQkFBN0IsS0FBSztnQkFDVSxtQkFBbUI7c0JBQWxDLEtBQUs7Z0JBQ1UsWUFBWTtzQkFBM0IsS0FBSztnQkFFMEIsaUJBQWlCO3NCQUFoRCxTQUFTO3VCQUFDLG1CQUFtQjtnQkFFcEIsT0FBTztzQkFBaEIsTUFBTTtnQkFDVSxXQUFXO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgT25Jbml0LFxyXG4gIElucHV0LFxyXG4gIE91dHB1dCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgZm9yd2FyZFJlZixcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBWaWV3Q2hpbGQsIEVsZW1lbnRSZWZcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgZ2V0QXNZb3VUeXBlLCBnZXRFeGFtcGxlLCBQYXJzZWRQaG9uZU51bWJlciB9IGZyb20gJ2F3ZXNvbWUtcGhvbmVudW1iZXInO1xyXG5pbXBvcnQgeyBDb3VudHJ5SVNPIH0gZnJvbSAnLi9kYXRhL2NvdW50cnktaXNvLmVudW0nO1xyXG5pbXBvcnQgeyBTZWFyY2hDb3VudHJ5RmllbGQgfSBmcm9tICcuL2RhdGEvc2VhcmNoLWNvdW50cnktZmllbGQuZW51bSc7XHJcbmltcG9ydCB7IFBob25lTnVtYmVyRm9ybWF0VHlwZSB9IGZyb20gJy4vZGF0YS9waG9uZS1udW1iZXItZm9ybWF0LmVudW0nO1xyXG5pbXBvcnQgeyBDb3VudHJ5LCBJbnB1dFZhbHVlIH0gZnJvbSAnLi9tb2RlbHMvY291bnRyeS5tb2RlbCc7XHJcbmltcG9ydCB7IGNvdW50cnlEYXRhIH0gZnJvbSAnLi9kYXRhL2FsbC1jb3VudHJpZXMnO1xyXG5pbXBvcnQgeyBkcm9wZG93bk9wZW4sIGRyb3Bkb3duQ2xvc2UsIGZsYWdQbGFjZWhvbGRlciB9IGZyb20gJy4vYXNzZXRzL2Jhc2U2NCc7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgdjQgYXMgdXVpZHY0IH0gZnJvbSAndXVpZCc7XHJcbmltcG9ydCB7IEZpZWxkIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMnO1xyXG5pbXBvcnQgeyBJbnB1dFRlbFNpemVzRW51bSwgSW5wdXRUZWxTaXplc1R5cGVzIH0gZnJvbSAnLi9lbnVtcy9pbnB1dC1waG9uZS5lbnVtJztcclxuaW1wb3J0IHsgSW5wdXRQaG9uZVZhbHVlV2l0aElkIH0gZnJvbSAnLi4vaW5wdXQtcGhvbmUvZW51bXMvaW5wdXQtcGhvbmUuZW51bSc7XHJcbmltcG9ydCB7IERyb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZHJvcGRvd24vZHJvcGRvd24uY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbXJ4LWlucHV0LXRlbCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LXRlbC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vaW5wdXQtdGVsLmNvbXBvbmVudC5sZXNzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBJbnB1dFRlbENvbXBvbmVudCksXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgfSxcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbnB1dFRlbENvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkluaXQge1xyXG5cclxuICAvLyBTQVZFIFNUQVRFXHJcbiAgcHVibGljIHV1aWQ6IHN0cmluZyA9IHV1aWR2NCgpO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBmaWVsZHM6IEZpZWxkW10gPSBbXTtcclxuXHJcbiAgQElucHV0KCkgY3NzQ2xhc3M6IHN0cmluZyA9ICcnO1xyXG4gIEBJbnB1dCgpIHByZWZlcnJlZENvdW50cmllczogKENvdW50cnlJU08pW10gPSBbXTtcclxuICBASW5wdXQoKSBvbmx5Q291bnRyaWVzOiAoQ291bnRyeUlTTylbXSA9IFtdO1xyXG4gIEBJbnB1dCgpIGVuYWJsZUF1dG9Db3VudHJ5U2VsZWN0OiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKSBlbmFibGVQbGFjZWhvbGRlcjogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KCkgY3VzdG9tUGxhY2Vob2xkZXI6IHN0cmluZyB8IG51bGwgPSBudWxsO1xyXG4gIEBJbnB1dCgpIG51bWJlckZvcm1hdDogUGhvbmVOdW1iZXJGb3JtYXRUeXBlID0gJ2ludGVybmF0aW9uYWwnO1xyXG4gIEBJbnB1dCgpIHNlYXJjaENvdW50cnlGbGFnOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2VhcmNoQ291bnRyeUZpZWxkOiBTZWFyY2hDb3VudHJ5RmllbGQgPSBTZWFyY2hDb3VudHJ5RmllbGQuQWxsO1xyXG4gIEBJbnB1dCgpIHNlYXJjaENvdW50cnlQbGFjZWhvbGRlcjogc3RyaW5nID0gJ9Cf0L7QuNGB0Log0L/QviDRgdGC0YDQsNC90LDQvCc7XHJcbiAgQElucHV0KCkgbWF4TGVuZ3RoOiBudW1iZXIgfCBudWxsID0gbnVsbDtcclxuICBASW5wdXQoKSBzZWxlY3RGaXJzdENvdW50cnk6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHBob25lVmFsaWRhdGlvbjogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KCkgaW5wdXRJZDogc3RyaW5nID0gJ3Bob25lJztcclxuICBASW5wdXQoKSBzZWxlY3RlZENvdW50cnlJU086IENvdW50cnlJU08gfCBudWxsID0gbnVsbDtcclxuICBASW5wdXQoKSBzZXBhcmF0ZURpYWxDb2RlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgY3VzdG9tQ2xhc3NlcyA9ICcnO1xyXG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2l6ZTogSW5wdXRUZWxTaXplc1R5cGVzID0gJ2xhcmdlJztcclxuICBASW5wdXQoKSBhdXRvRGVhbENvZGUgPSBmYWxzZTtcclxuICBASW5wdXQoKSBhdXRvQ2xvc2VEcm9wZG93biA9IGZhbHNlO1xyXG5cclxuICAvLyBWQUxJREFUSU9OXHJcbiAgQElucHV0KCkgcHVibGljIGludmFsaWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgaW52YWxpZE1lc3NhZ2U6IHN0cmluZyB8IHN0cmluZ1tdID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIGludmFsaWRQaG9uZU1lc3NhZ2U6IHN0cmluZyA9ICfQndC10LrQvtGA0YDQtdC60YLQvdC+0LUg0LfQvdCw0YfQtdC90LjQtSc7XHJcbiAgQElucHV0KCkgcHVibGljIGNoZWNrSW52YWxpZDogdHJ1ZSB8IGZhbHNlIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2Ryb3Bkb3duQ29tcG9uZW50JykgZHJvcGRvd25Db21wb25lbnQhOiBEcm9wZG93bkNvbXBvbmVudDtcclxuXHJcbiAgQE91dHB1dCgpIGNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxJbnB1dFZhbHVlPiA9IG5ldyBFdmVudEVtaXR0ZXI8SW5wdXRWYWx1ZT4oKTtcclxuICBAT3V0cHV0KCkgcHVibGljIG1vZGVsQ2hhbmdlOiBFdmVudEVtaXR0ZXI8SW5wdXRQaG9uZVZhbHVlV2l0aElkPiA9IG5ldyBFdmVudEVtaXR0ZXI8SW5wdXRQaG9uZVZhbHVlV2l0aElkPigpO1xyXG5cclxuICBwdWJsaWMgYWxsQ291bnRyaWVzOiAoQ291bnRyeSlbXTtcclxuICBwdWJsaWMgc2VsZWN0ZWRDb3VudHJ5OiBDb3VudHJ5O1xyXG4gIHB1YmxpYyBjb3VudHJpZXNUb1Nob3c6IChDb3VudHJ5KVtdO1xyXG4gIHB1YmxpYyBwcmVmZXJyZWRDb3VudHJpZXNMaXN0OiAoQ291bnRyeSlbXTtcclxuICBwdWJsaWMgc2VhcmNoRmlsdGVyOiBzdHJpbmc7XHJcbiAgcHVibGljIHNjcm9sbFRpbWVvdXQ6IGFueTtcclxuICBwdWJsaWMgcGhvbmVOdW1iZXI6IGFueTtcclxuICBwdWJsaWMgaXNGb2N1c2VkOiBib29sZWFuO1xyXG4gIHB1YmxpYyBpc0lucHV0VmFsaWQ6IGJvb2xlYW47XHJcbiAgcHVibGljIGlzRHJvcGRvd25PcGVuOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHBhcnNlZFBob25lTnVtYmVyPzogUGFyc2VkUGhvbmVOdW1iZXI7XHJcbiAgcHVibGljIGlubmVySW52YWxpZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBpbm5lckludmFsaWRNZXNzYWdlOiBzdHJpbmcgPSAnJ1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHRoaXMuYWxsQ291bnRyaWVzID0gW107XHJcbiAgICB0aGlzLmNvdW50cmllc1RvU2hvdyA9IHRoaXMuYWxsQ291bnRyaWVzO1xyXG4gICAgdGhpcy5zZWxlY3RlZENvdW50cnkgPSB0aGlzLmdldERlZmF1bHRDb3VudHJ5KCk7XHJcbiAgICB0aGlzLnByZWZlcnJlZENvdW50cmllc0xpc3QgPSBbXTtcclxuICAgIHRoaXMuc2VhcmNoRmlsdGVyID0gJyc7XHJcbiAgICB0aGlzLnBob25lTnVtYmVyID0gbnVsbDtcclxuICAgIHRoaXMuaXNGb2N1c2VkID0gZmFsc2U7XHJcbiAgICB0aGlzLmlzSW5wdXRWYWxpZCA9IHRydWU7XHJcbiAgfVxyXG5cclxuICB3cml0ZVZhbHVlKG91dHNpZGVWYWx1ZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBpZiAob3V0c2lkZVZhbHVlKSB7XHJcbiAgICAgIHRoaXMucGhvbmVOdW1iZXIgPSBvdXRzaWRlVmFsdWU7XHJcbiAgICAgIHRoaXMuZm9ybWF0UGhvbmVOdW1iZXIoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25DaGFuZ2UgPSAodmFsdWU6IGFueSkgPT4ge1xyXG4gIH07XHJcbiAgcHJpdmF0ZSBvblRvdWNoZWQgPSAoKSA9PiB7XHJcbiAgfTtcclxuXHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmdlbmVyYXRlQ291bnRyeURhdGEoKTtcclxuICAgIHRoaXMuc2V0Q291bnRyaWVzVG9TaG93KCk7XHJcbiAgICB0aGlzLnNldFByZWZlcnJlZENvdW50cmllcygpO1xyXG4gICAgdGhpcy5zZXREZWZhdWx0U2VsZWN0ZWRDb3VudHJ5KCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF92YWxpZGF0aW9uKHBhcnNlZE51bWJlcjogUGFyc2VkUGhvbmVOdW1iZXIpOiBib29sZWFuIHtcclxuICAgIGlmICghdGhpcy5zZWxlY3RlZENvdW50cnkpIHJldHVybiBmYWxzZVxyXG4gICAgY29uc3Qgc2VsZWN0ZWRDb3VudHJ5ID0gdGhpcy5maW5kQ291bnRyeUJ5SXNvMih0aGlzLnNlbGVjdGVkQ291bnRyeS5pc28yKTtcclxuXHJcbiAgICBpZiAocGFyc2VkTnVtYmVyLm51bWJlcj8uaW50ZXJuYXRpb25hbCB8fCBwYXJzZWROdW1iZXIubnVtYmVyPy5uYXRpb25hbCkge1xyXG4gICAgICBpZiAocGFyc2VkTnVtYmVyLm51bWJlci5pbnRlcm5hdGlvbmFsKSB7XHJcbiAgICAgICAgY29uc3QgcGhvbmUgPSBwYXJzZWROdW1iZXIubnVtYmVyLmludGVybmF0aW9uYWwudHJpbSgpXHJcbiAgICAgICAgY29uc3QgYSA9IHBob25lLnN0YXJ0c1dpdGgoJysnKSA/IHBob25lLnN1YnN0cmluZygxKS50cmltKCkgOiBwaG9uZTtcclxuICAgICAgICBjb25zdCBiID0gYS5zdGFydHNXaXRoKHNlbGVjdGVkQ291bnRyeS5kaWFsQ29kZSkgPyBhLnN1YnN0cmluZyhzZWxlY3RlZENvdW50cnkuZGlhbENvZGUubGVuZ3RoKS50cmltKCkgOiBhO1xyXG5cclxuICAgICAgICByZXR1cm4gQm9vbGVhbihzZWxlY3RlZENvdW50cnk/LmFyZWFDb2Rlcz8uZmlsdGVyKChjb2RlOiBzdHJpbmcpID0+ICBiLnN0YXJ0c1dpdGgoY29kZSkpLmxlbmd0aCk7XHJcbiAgICAgIH0gZWxzZSBpZiAocGFyc2VkTnVtYmVyLm51bWJlci5uYXRpb25hbCkge1xyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZ2V0Q2xhc3NlcygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGAke0lucHV0VGVsU2l6ZXNFbnVtW3RoaXMuc2l6ZV19ICR7dGhpcy5jdXN0b21DbGFzc2VzfSAke3RoaXMuY2hlY2tWYWxpZENsYXNzZXN9YDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgaXNWYWxpZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBpc0ludmFsaWRNZXNzYWdlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICEhdGhpcy5pbnZhbGlkTWVzc2FnZSB8fCAhIXRoaXMuaW52YWxpZE1lc3NhZ2UubGVuZ3RoO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBjaGVja1ZhbGlkQ2xhc3NlcygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuY2hlY2tJbnZhbGlkID09PSBmYWxzZSA/XHJcbiAgICAgICdtcngtaW5wdXQtY2hlY2tlZC1zdWNjZXNzJyA6XHJcbiAgICAgIHRoaXMuY2hlY2tJbnZhbGlkID09PSB0cnVlID8gJ21yeC1pbnB1dC1jaGVja2VkLWVycm9yJyA6ICcnO1xyXG4gIH1cclxuXHJcblxyXG4gIHB1YmxpYyB0b2dnbGVEcm9wZG93bigpIHtcclxuICAgIHRoaXMuaXNEcm9wZG93bk9wZW4gPSAhdGhpcy5pc0Ryb3Bkb3duT3BlbjtcclxuICAgIHRoaXMuZHJvcGRvd25Db21wb25lbnQuaGlkZSgpXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2VuZXJhdGVDb3VudHJ5RGF0YSgpIHtcclxuICAgIHRoaXMuYWxsQ291bnRyaWVzID0gY291bnRyeURhdGEubWFwKGNvbiA9PiB7XHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgbmFtZTogY29uWzBdLnRvU3RyaW5nKCksXHJcbiAgICAgICAgaXNvMjogY29uWzFdLnRvU3RyaW5nKCksXHJcbiAgICAgICAgZGlhbENvZGU6IGNvblsyXS50b1N0cmluZygpLFxyXG4gICAgICAgIHByaW9yaXR5OiArY29uWzNdIHx8IDAsXHJcbiAgICAgICAgYXJlYUNvZGVzOiAoY29uWzRdIGFzIHN0cmluZ1tdKSB8fCB1bmRlZmluZWQsXHJcbiAgICAgICAgaHRtbElkOiBgJHt0aGlzLnV1aWR9LSR7Y29uWzFdLnRvU3RyaW5nKCl9YCxcclxuICAgICAgICBmbGFnQ2xhc3M6IGBmbGFnX18ke2NvblsxXS50b1N0cmluZygpfWAsXHJcbiAgICAgICAgcGxhY2VIb2xkZXI6ICcnLFxyXG4gICAgICB9O1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLmNvdW50cmllc1RvU2hvdyA9IHRoaXMuYWxsQ291bnRyaWVzO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldERlZmF1bHRDb3VudHJ5KCk6IENvdW50cnkge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgJ25hbWUnOiAnJyxcclxuICAgICAgJ2lzbzInOiAnJyxcclxuICAgICAgJ2RpYWxDb2RlJzogJycsXHJcbiAgICAgICdwcmlvcml0eSc6IDAsXHJcbiAgICAgICdodG1sSWQnOiAnJyxcclxuICAgICAgJ2ZsYWdDbGFzcyc6IGZsYWdQbGFjZWhvbGRlcixcclxuICAgICAgJ3BsYWNlSG9sZGVyJzogJycsXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmb3JtYXRJbnRlbE51bWJlcihudW1iZXI6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBpZiAodGhpcy5hdXRvRGVhbENvZGUpIHtcclxuICAgICAgcmV0dXJuIG51bWJlclxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgaW5kZXhUb1NwbGl0ID0gbnVtYmVyLmluZGV4T2YoJyAnKSArIDE7XHJcbiAgICAgIHJldHVybiB0aGlzLnNlcGFyYXRlRGlhbENvZGUgPyBudW1iZXIuc3Vic3RyaW5nKGluZGV4VG9TcGxpdCkgOiBudW1iZXI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZm9ybWF0UGhvbmVOdW1iZXIoKSB7XHJcbiAgICBjb25zdCBheXQgPSBnZXRBc1lvdVR5cGUodGhpcy5zZWxlY3RlZENvdW50cnk/LmlzbzIudG9VcHBlckNhc2UoKSk7XHJcbiAgICBheXQucmVzZXQodGhpcy5waG9uZU51bWJlcik7XHJcbiAgICBjb25zdCByZXM6IFBhcnNlZFBob25lTnVtYmVyID0gYXl0LmdldFBob25lTnVtYmVyKCk7XHJcblxyXG4gICAgdGhpcy5wYXJzZWRQaG9uZU51bWJlciA9IHJlc1xyXG5cclxuICAgIGlmICh0aGlzLm51bWJlckZvcm1hdCA9PT0gJ2ludGVybmF0aW9uYWwnKSB7XHJcbiAgICAgIHRoaXMucGhvbmVOdW1iZXIgPSByZXMubnVtYmVyPy5pbnRlcm5hdGlvbmFsID8gdGhpcy5mb3JtYXRJbnRlbE51bWJlcihyZXMubnVtYmVyLmludGVybmF0aW9uYWwpIDogdGhpcy5waG9uZU51bWJlcjtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMucGhvbmVOdW1iZXIgPSByZXMubnVtYmVyPy5uYXRpb25hbCA/IHJlcy5udW1iZXIubmF0aW9uYWwgOiB0aGlzLnBob25lTnVtYmVyO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLm51bWJlckZvcm1hdCA9PT0gJ2ludGVybmF0aW9uYWwnKSB7XHJcbiAgICAgIGlmICh0aGlzLmVuYWJsZUF1dG9Db3VudHJ5U2VsZWN0ICYmIHJlcy5yZWdpb25Db2RlICE9IHRoaXMuc2VsZWN0ZWRDb3VudHJ5Py5pc28yLnRvVXBwZXJDYXNlKCkpIHtcclxuICAgICAgICByZXMucmVnaW9uQ29kZSAmJiAodGhpcy5zZWxlY3RlZENvdW50cnkgPSB0aGlzLmZpbmRDb3VudHJ5QnlJc28yKHJlcy5yZWdpb25Db2RlKSk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmICh0aGlzLmVuYWJsZUF1dG9Db3VudHJ5U2VsZWN0ICYmIHJlcy5yZWdpb25Db2RlICE9IHRoaXMuc2VsZWN0ZWRDb3VudHJ5Py5pc28yLnRvVXBwZXJDYXNlKCkpIHtcclxuXHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpZiAoIXJlcy52YWxpZCB8fCByZXMucmVnaW9uQ29kZSAhPSB0aGlzLnNlbGVjdGVkQ291bnRyeT8uaXNvMi50b1VwcGVyQ2FzZSgpKSB7XHJcbiAgICAgIHRoaXMuaXNJbnB1dFZhbGlkID0gdGhpcy5fdmFsaWRhdGlvbihyZXMpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5pc0lucHV0VmFsaWQgPSB0cnVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHNlYXJjaEZpbHRlckNoYW5nZWQoZXZlbnQ6IGFueSkge1xyXG4gICAgaWYgKHRoaXMuc2Nyb2xsVGltZW91dCkgY2xlYXJUaW1lb3V0KHRoaXMuc2Nyb2xsVGltZW91dCk7XHJcblxyXG4gICAgbGV0IGZpbHRlcmVkOiBDb3VudHJ5W107XHJcbiAgICBpZiAodGhpcy5zZWFyY2hDb3VudHJ5RmllbGQgPT0gJ25hbWUnKSB7XHJcbiAgICAgIGZpbHRlcmVkID0gdGhpcy5jb3VudHJpZXNUb1Nob3cuZmlsdGVyKGNvbiA9PiBjb24ubmFtZS50b0xvd2VyQ2FzZSgpLnN0YXJ0c1dpdGgodGhpcy5zZWFyY2hGaWx0ZXIudG9Mb3dlckNhc2UoKSkpO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLnNlYXJjaENvdW50cnlGaWVsZCA9PSAnaXNvMicpIHtcclxuICAgICAgZmlsdGVyZWQgPSB0aGlzLmNvdW50cmllc1RvU2hvdy5maWx0ZXIoY29uID0+IGNvbi5pc28yLnN0YXJ0c1dpdGgodGhpcy5zZWFyY2hGaWx0ZXIudG9Mb3dlckNhc2UoKSkpO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLnNlYXJjaENvdW50cnlGaWVsZCA9PSAnZGlhbENvZGUnKSB7XHJcbiAgICAgIGZpbHRlcmVkID0gdGhpcy5jb3VudHJpZXNUb1Nob3cuZmlsdGVyKGNvbiA9PiBjb24uZGlhbENvZGUuc3RhcnRzV2l0aCh0aGlzLnNlYXJjaEZpbHRlcikpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgZmlsdGVyZWQgPSB0aGlzLmNvdW50cmllc1RvU2hvdy5maWx0ZXIoY29uID0+IGNvbi5uYW1lLnRvTG93ZXJDYXNlKCkuc3RhcnRzV2l0aCh0aGlzLnNlYXJjaEZpbHRlci50b0xvd2VyQ2FzZSgpKSB8fCBjb24uZGlhbENvZGUuc3RhcnRzV2l0aCh0aGlzLnNlYXJjaEZpbHRlcikgfHwgY29uLmlzbzIuc3RhcnRzV2l0aCh0aGlzLnNlYXJjaEZpbHRlci50b0xvd2VyQ2FzZSgpKSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCFmaWx0ZXJlZC5sZW5ndGgpIHJldHVybjtcclxuICAgIHRoaXMuc2Nyb2xsVGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICBjb25zdCBlbDogYW55ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZmlsdGVyZWRbMF0uaHRtbElkKTtcclxuICAgICAgZWwuc2Nyb2xsSW50b1ZpZXcoKTtcclxuICAgIH0sIDEpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmaW5kQ291bnRyeUJ5SXNvMihpc28yOiBzdHJpbmcpOiBDb3VudHJ5IHwgYW55IHtcclxuICAgIHJldHVybiB0aGlzLmNvdW50cmllc1RvU2hvdy5maW5kKGNvbiA9PiBjb24uaXNvMiA9PSBpc28yLnRvTG93ZXJDYXNlKCkpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldERlZmF1bHRTZWxlY3RlZENvdW50cnkoKSB7XHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZENvdW50cnlJU08pIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZENvdW50cnkgPSB0aGlzLmZpbmRDb3VudHJ5QnlJc28yKHRoaXMuc2VsZWN0ZWRDb3VudHJ5SVNPKTtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5zZWxlY3RGaXJzdENvdW50cnkpIHtcclxuICAgICAgaWYgKHRoaXMucHJlZmVycmVkQ291bnRyaWVzTGlzdC5sZW5ndGgpIHRoaXMuc2VsZWN0ZWRDb3VudHJ5ID0gdGhpcy5wcmVmZXJyZWRDb3VudHJpZXNMaXN0WzBdO1xyXG4gICAgICBlbHNlIHRoaXMuc2VsZWN0ZWRDb3VudHJ5ID0gdGhpcy5jb3VudHJpZXNUb1Nob3dbMF07XHJcbiAgICB9IGVsc2UgdGhpcy5zZWxlY3RlZENvdW50cnkgPSB0aGlzLmdldERlZmF1bHRDb3VudHJ5KCk7XHJcblxyXG4gICAgdGhpcy5zZWxlY3RlZENvdW50cnkucGxhY2VIb2xkZXIgPSB0aGlzLmdldFBsYWNlSG9sZGVyKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0Q291bnRyaWVzVG9TaG93KCkge1xyXG4gICAgaWYgKHRoaXMub25seUNvdW50cmllcy5sZW5ndGggPT0gMCkgcmV0dXJuO1xyXG5cclxuICAgIGNvbnN0IHRlbXA6IGFueSA9IFtdO1xyXG4gICAgZm9yIChsZXQgY291bnRyeSBvZiB0aGlzLm9ubHlDb3VudHJpZXMpIHtcclxuICAgICAgdGVtcC5wdXNoKHRoaXMuYWxsQ291bnRyaWVzLmZpbmQoY29uID0+IGNvbi5pc28yID09IGNvdW50cnkpKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmNvdW50cmllc1RvU2hvdyA9IHRlbXA7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0UHJlZmVycmVkQ291bnRyaWVzKCkge1xyXG4gICAgZm9yIChsZXQgY291bnRyeSBvZiB0aGlzLnByZWZlcnJlZENvdW50cmllcykge1xyXG4gICAgICBjb25zdCB0ZW1wID0gdGhpcy5jb3VudHJpZXNUb1Nob3cuZmluZChjb24gPT4gY29uLmlzbzIgPT0gY291bnRyeSk7XHJcbiAgICAgIGlmICh0ZW1wKSB0aGlzLnByZWZlcnJlZENvdW50cmllc0xpc3QucHVzaCh0ZW1wKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkNvdW50cnlTZWxlY3QoY291bnRyeTogYW55KSB7XHJcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkgcmV0dXJuXHJcblxyXG4gICAgdGhpcy5zZWxlY3RlZENvdW50cnkgPSBjb3VudHJ5O1xyXG4gICAgdGhpcy5zZWxlY3RlZENvdW50cnkucGxhY2VIb2xkZXIgPSB0aGlzLmdldFBsYWNlSG9sZGVyKCk7XHJcbiAgICB0aGlzLnNlYXJjaEZpbHRlciA9ICcnO1xyXG4gICAgdGhpcy5waG9uZU51bWJlciA9ICcnO1xyXG4gICAgdGhpcy5pc0lucHV0VmFsaWQgPSB0cnVlO1xyXG4gICAgdGhpcy5pc0ZvY3VzZWQgPSBmYWxzZTtcclxuXHJcbiAgICBpZiAodGhpcy5hdXRvQ2xvc2VEcm9wZG93bikge1xyXG4gICAgICB0aGlzLnRvZ2dsZURyb3Bkb3duKCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy51cGRhdGVWYWx1ZSgpXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldE51bWJlckV4YW1wbGUoKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGZvcm1hdEV4YW1wbGVOdW1iZXIgPSAobnVtYmVyOiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xyXG4gICAgICByZXR1cm4gbnVtYmVyLnJlcGxhY2UoL1xcZC9nLCAnOScpXHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0IGV4YW1wbGVOdW1iZXIgPSB0aGlzLm51bWJlckZvcm1hdCA9PT0gJ2ludGVybmF0aW9uYWwnID9cclxuICAgICAgdGhpcy5mb3JtYXRJbnRlbE51bWJlcihnZXRFeGFtcGxlKHRoaXMuc2VsZWN0ZWRDb3VudHJ5LmlzbzIudG9VcHBlckNhc2UoKSwgJ21vYmlsZScpLm51bWJlcj8uaW50ZXJuYXRpb25hbCB8fCAnJykgOlxyXG4gICAgICB0aGlzLmZvcm1hdEludGVsTnVtYmVyKGdldEV4YW1wbGUodGhpcy5zZWxlY3RlZENvdW50cnkuaXNvMi50b1VwcGVyQ2FzZSgpLCAnbW9iaWxlJykubnVtYmVyPy5uYXRpb25hbCB8fCAnJyk7XHJcblxyXG4gICAgcmV0dXJuIGZvcm1hdEV4YW1wbGVOdW1iZXIoZXhhbXBsZU51bWJlcik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0UGxhY2VIb2xkZXIoKTogc3RyaW5nIHtcclxuICAgIGlmICghdGhpcy5lbmFibGVQbGFjZWhvbGRlcikgcmV0dXJuICcnO1xyXG4gICAgaWYgKHRoaXMuY3VzdG9tUGxhY2Vob2xkZXIpIHJldHVybiB0aGlzLmN1c3RvbVBsYWNlaG9sZGVyO1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRDb3VudHJ5LmlzbzIgPT0gJycpIHJldHVybiAnJztcclxuXHJcbiAgICByZXR1cm4gdGhpcy5nZXROdW1iZXJFeGFtcGxlKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0RHJvcGRvd25JY29uUGF0aCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuaXNEcm9wZG93bk9wZW4gPyBkcm9wZG93bkNsb3NlIDogZHJvcGRvd25PcGVuO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uUGhvbmVJbnB1dEZvY3VzKCkge1xyXG4gICAgaWYgKCF0aGlzLmF1dG9EZWFsQ29kZSkgcmV0dXJuO1xyXG4gICAgaWYgKHRoaXMuaXNGb2N1c2VkIHx8ICh0aGlzLnNlcGFyYXRlRGlhbENvZGUgJiYgdGhpcy5udW1iZXJGb3JtYXQgPT09ICdpbnRlcm5hdGlvbmFsJykgfHwgdGhpcy5udW1iZXJGb3JtYXQgPT09ICduYXRpb25hbCcgfHwgdGhpcy5waG9uZU51bWJlcikgcmV0dXJuO1xyXG4gICAgdGhpcy5waG9uZU51bWJlciA9ICcrJyArIHRoaXMuc2VsZWN0ZWRDb3VudHJ5LmRpYWxDb2RlICsgJyAnO1xyXG4gICAgdGhpcy5pc0ZvY3VzZWQgPSB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uUGhvbmVJbnB1dEJsdXIoKSB7XHJcbiAgICBpZiAoIXRoaXMuaXNJbnB1dFZhbGlkICYmIHRoaXMucGhvbmVOdW1iZXIgIT09ICcnKSB7XHJcbiAgICAgIHRoaXMuaW5uZXJJbnZhbGlkID0gdHJ1ZVxyXG4gICAgICB0aGlzLmlubmVySW52YWxpZE1lc3NhZ2UgPSB0aGlzLmludmFsaWRQaG9uZU1lc3NhZ2VcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3Jlc2V0VmFsaWRhdGUoKSB7XHJcbiAgICB0aGlzLmlubmVySW52YWxpZCA9IGZhbHNlXHJcbiAgICB0aGlzLmlubmVySW52YWxpZE1lc3NhZ2UgPSAnJ1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHVwZGF0ZVZhbHVlKCkge1xyXG4gICAgdGhpcy5fcmVzZXRWYWxpZGF0ZSgpXHJcbiAgICB0aGlzLmZvcm1hdFBob25lTnVtYmVyKCk7XHJcblxyXG4gICAgY29uc3Qgb3V0c2lkZVZhbHVlID0ge1xyXG4gICAgICBwaG9uZU51bWJlcjogdGhpcy5waG9uZU51bWJlcixcclxuICAgICAgdW5Gb3JtYXR0ZWROdW1iZXI6IHRoaXMucGhvbmVOdW1iZXIucmVwbGFjZSgvW1xccy0oKV0vZywgJycpLFxyXG4gICAgICBzZWxlY3RlZENvdW50cnk6IHRoaXMuc2VsZWN0ZWRDb3VudHJ5Py5uYW1lIHx8ICcnLFxyXG4gICAgICBpc28yQ29kZTogdGhpcy5zZWxlY3RlZENvdW50cnk/LmlzbzIgfHwgJycsXHJcbiAgICAgIGRpYWxDb2RlOiB0aGlzLnNlbGVjdGVkQ291bnRyeT8uZGlhbENvZGUgfHwgJycsXHJcbiAgICAgIG51bWJlckZvcm1hdDogdGhpcy5udW1iZXJGb3JtYXQsXHJcbiAgICAgIGlzTnVtYmVyVmFsaWQ6IHRoaXMuaXNJbnB1dFZhbGlkLFxyXG4gICAgfTtcclxuXHJcbiAgICB0aGlzLmNoYW5nZWQuZW1pdChvdXRzaWRlVmFsdWUpO1xyXG4gICAgdGhpcy5tb2RlbENoYW5nZS5lbWl0KHt2YWx1ZTogb3V0c2lkZVZhbHVlLCBpZDogdGhpcy51dWlkfSlcclxuICAgIHRoaXMub25DaGFuZ2Uob3V0c2lkZVZhbHVlKTtcclxuICAgIHRoaXMub25Ub3VjaGVkKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJtcngtaW5wdXQtdGVsXCIgW2NsYXNzXT1cImdldENsYXNzZXNcIiBbY2xhc3MubXJ4LWlucHV0LWVycm9yXT1cImludmFsaWRcIj5cclxuICA8ZGl2IGNsYXNzPVwibXJ4LWlucHV0LXRlbF9fd3JhcHBlclwiPlxyXG4gICAgICA8aW5wdXRcclxuICAgICAgICBmb3JtYXR0ZXJQaG9uZVxyXG4gICAgICAgIFtpZF09XCJpbnB1dElkXCJcclxuICAgICAgICB0eXBlPVwidGVsXCJcclxuICAgICAgICBjbGFzcz1cInBob25lSW5wdXQge3tjc3NDbGFzc319XCJcclxuICAgICAgICBbKG5nTW9kZWwpXT1cInBob25lTnVtYmVyXCJcclxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJzZWxlY3RlZENvdW50cnk/LnBsYWNlSG9sZGVyIHx8ICcnXCJcclxuICAgICAgICBbY2xhc3MuaW5WYWxpZF09XCJwaG9uZVZhbGlkYXRpb24gJiYgIWlzSW5wdXRWYWxpZFwiXHJcbiAgICAgICAgW2N1c3RvbU1heExlbmd0aF09XCJtYXhMZW5ndGhcIlxyXG4gICAgICAgIFtwYXJzZWRQaG9uZU51bWJlcl09XCJwYXJzZWRQaG9uZU51bWJlclwiXHJcbiAgICAgICAgKGZvY3VzKT1cIm9uUGhvbmVJbnB1dEZvY3VzKClcIlxyXG4gICAgICAgIChibHVyKT1cIm9uUGhvbmVJbnB1dEJsdXIoKVwiXHJcbiAgICAgICAgKGNoYW5nZU1vZGVsKT1cInVwZGF0ZVZhbHVlKClcIlxyXG4gICAgICAvPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1yeC1pbnB1dC10ZWxfX2ZsYWctY29udGFpbmVyXCIgW2NsYXNzLmRpc2FibGVkXT1cImRpc2FibGVkXCI+XHJcbiAgICAgIDxtcngtZHJvcGRvd25cclxuICAgICAgICAjZHJvcGRvd25Db21wb25lbnRcclxuICAgICAgICBjdXN0b21DbGFzc2VzPVwiaC0xMDBcIlxyXG4gICAgICAgIFttYWluUGxhY2VtZW50XT1cIidib3R0b20tc3RhcnQnXCJcclxuICAgICAgICBbZmFsbGJhY2tQbGFjZW1lbnRzXT1cIlsndG9wLXN0YXJ0J11cIlxyXG4gICAgICA+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlICNkcm9wZG93blRvZ2dsZT5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtcngtaW5wdXQtdGVsX19zZWxlY3RlZC1mbGFnIGRyb3Bkb3duLXRvZ2dsZVwiPlxyXG4gICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJtcngtaW5wdXQtdGVsX19mbGFnXCJcclxuICAgICAgICAgICAgICBbbmdDbGFzc109XCJzZWxlY3RlZENvdW50cnk/LmZsYWdDbGFzcyB8fCAnJ1wiXHJcbiAgICAgICAgICAgID48L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cInNlcGFyYXRlRGlhbENvZGVcIiBjbGFzcz1cInNlbGVjdGVkLWRpYWwtY29kZVwiPit7e3NlbGVjdGVkQ291bnRyeT8uZGlhbENvZGV9fTwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXJ4LWlucHV0LXRlbF9fYXJyb3cgbXQtMVwiPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXJ4LWljb24gaWNvbi1jaGV2cm9uLWRvd25cIj48L3NwYW4+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICAgICAgPG5nLXRlbXBsYXRlICNkcm9wZG93bk1lbnU+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VhcmNoLWNvbnRhaW5lclwiICpuZ0lmPVwic2VhcmNoQ291bnRyeUZsYWcgJiYgc2VhcmNoQ291bnRyeUZpZWxkXCI+XHJcbiAgICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cInNlYXJjaEZpbHRlclwiXHJcbiAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwic2VhcmNoRmlsdGVyQ2hhbmdlZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cInt7IHNlYXJjaENvdW50cnlQbGFjZWhvbGRlciB9fVwiXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJzZWFyY2hDb3VudHJ5X19pbnB1dFwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICA8dWwgY2xhc3M9XCJtcngtaW5wdXQtdGVsX19jb3VudHJ5LWxpc3RcIiAjY291bnRyeUxpc3Q+XHJcbiAgICAgICAgICAgIDxsaSBjbGFzcz1cIm1yeC1pbnB1dC10ZWxfX2NvdW50cnkgaXRpX19wcmVmZXJyZWRcIlxyXG4gICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IHByZWZlcnJlZENvdW50cnkgb2YgcHJlZmVycmVkQ291bnRyaWVzTGlzdFwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25Db3VudHJ5U2VsZWN0KHByZWZlcnJlZENvdW50cnkpXCJcclxuICAgICAgICAgICAgICAgIFtpZF09XCJwcmVmZXJyZWRDb3VudHJ5Lmh0bWxJZCsnLXByZWZlcnJlZCdcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1yeC1pbnB1dC10ZWxfX2ZsYWctYm94XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXJ4LWlucHV0LXRlbF9fZmxhZ1wiIFtuZ0NsYXNzXT1cInByZWZlcnJlZENvdW50cnkuZmxhZ0NsYXNzXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtcngtaW5wdXQtdGVsX19jb3VudHJ5LW5hbWVcIj57e3ByZWZlcnJlZENvdW50cnkubmFtZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXJ4LWlucHV0LXRlbF9fZGlhbC1jb2RlXCI+K3t7cHJlZmVycmVkQ291bnRyeS5kaWFsQ29kZX19PC9zcGFuPlxyXG4gICAgICAgICAgICA8L2xpPlxyXG5cclxuICAgICAgICAgICAgPGxpIGNsYXNzPVwibXJ4LWlucHV0LXRlbF9fZGl2aWRlclwiICpuZ0lmPVwicHJlZmVycmVkQ291bnRyaWVzTGlzdD8ubGVuZ3RoXCI+PC9saT5cclxuXHJcbiAgICAgICAgICAgIDxsaSBjbGFzcz1cIm1yeC1pbnB1dC10ZWxfX2NvdW50cnkgaXRpX19zdGFuZGFyZFwiXHJcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgY291bnRyeSBvZiBjb3VudHJpZXNUb1Nob3dcIlxyXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ291bnRyeVNlbGVjdChjb3VudHJ5KVwiXHJcbiAgICAgICAgICAgICAgICBbaWRdPVwiY291bnRyeS5odG1sSWRcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXJ4LWlucHV0LXRlbF9fZmxhZy1ib3hcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtcngtaW5wdXQtdGVsX19mbGFnXCIgW25nQ2xhc3NdPVwiY291bnRyeS5mbGFnQ2xhc3NcIj48L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1yeC1pbnB1dC10ZWxfX2NvdW50cnktbmFtZVwiPnt7Y291bnRyeS5uYW1lfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtcngtaW5wdXQtdGVsX19kaWFsLWNvZGVcIj4re3tjb3VudHJ5LmRpYWxDb2RlfX08L3NwYW4+XHJcbiAgICAgICAgICAgIDwvbGk+XHJcblxyXG4gICAgICAgICAgPC91bD5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICA8L21yeC1kcm9wZG93bj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG5cclxuICA8bXJ4LWVycm9yLW1lc3NhZ2VcclxuICAgICpuZ0lmPVwiKCFpc1ZhbGlkIHx8IGlubmVySW52YWxpZCB8fCBpbnZhbGlkKSAmJiBpc0ludmFsaWRNZXNzYWdlXCJcclxuICAgIFtpbnZhbGlkTWVzc2FnZV09XCJpbm5lckludmFsaWRNZXNzYWdlIHx8IGludmFsaWRNZXNzYWdlXCJcclxuICA+PC9tcngtZXJyb3ItbWVzc2FnZT5cclxuXHJcbiAgPG1yeC1zYXZlLXN0YXRlIFtpZF09XCJ1dWlkXCIgW2ZpZWxkc109XCJmaWVsZHNcIj48L21yeC1zYXZlLXN0YXRlPlxyXG48L2Rpdj5cclxuXHJcbiJdfQ==
389
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtdGVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL2lucHV0LXRlbC9pbnB1dC10ZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtdGVsL2lucHV0LXRlbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxFQUNaLFVBQVUsRUFDVix1QkFBdUIsRUFDdkIsU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFxQixNQUFNLHFCQUFxQixDQUFDO0FBRWxGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBR3RFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvRSxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFFLEVBQUUsSUFBSSxNQUFNLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFcEMsT0FBTyxFQUFFLGlCQUFpQixFQUFzQixNQUFNLDBCQUEwQixDQUFDOzs7Ozs7OztBQWlCakYsTUFBTSxPQUFPLGlCQUFpQjtJQXFENUI7UUFuREEsYUFBYTtRQUNOLFNBQUksR0FBVyxNQUFNLEVBQUUsQ0FBQztRQUNmLFdBQU0sR0FBWSxFQUFFLENBQUM7UUFFNUIsYUFBUSxHQUFXLEVBQUUsQ0FBQztRQUN0Qix1QkFBa0IsR0FBbUIsRUFBRSxD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SztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUdVLE9BQU87c0JBQXRCLEtBQUs7Z0JBQ1UsY0FBYztzQkFBN0IsS0FBSztnQkFDVSxtQkFBbUI7c0JBQWxDLEtBQUs7Z0JBQ1UsWUFBWTtzQkFBM0IsS0FBSztnQkFFMEIsaUJBQWlCO3NCQUFoRCxTQUFTO3VCQUFDLG1CQUFtQjtnQkFFcEIsT0FBTztzQkFBaEIsTUFBTTtnQkFDVSxXQUFXO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgT25Jbml0LFxyXG4gIElucHV0LFxyXG4gIE91dHB1dCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgZm9yd2FyZFJlZixcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBWaWV3Q2hpbGQsIEVsZW1lbnRSZWZcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgZ2V0QXNZb3VUeXBlLCBnZXRFeGFtcGxlLCBQYXJzZWRQaG9uZU51bWJlciB9IGZyb20gJ2F3ZXNvbWUtcGhvbmVudW1iZXInO1xyXG5pbXBvcnQgeyBDb3VudHJ5SVNPIH0gZnJvbSAnLi9kYXRhL2NvdW50cnktaXNvLmVudW0nO1xyXG5pbXBvcnQgeyBTZWFyY2hDb3VudHJ5RmllbGQgfSBmcm9tICcuL2RhdGEvc2VhcmNoLWNvdW50cnktZmllbGQuZW51bSc7XHJcbmltcG9ydCB7IFBob25lTnVtYmVyRm9ybWF0VHlwZSB9IGZyb20gJy4vZGF0YS9waG9uZS1udW1iZXItZm9ybWF0LmVudW0nO1xyXG5pbXBvcnQgeyBDb3VudHJ5LCBJbnB1dFZhbHVlIH0gZnJvbSAnLi9tb2RlbHMvY291bnRyeS5tb2RlbCc7XHJcbmltcG9ydCB7IGNvdW50cnlEYXRhIH0gZnJvbSAnLi9kYXRhL2FsbC1jb3VudHJpZXMnO1xyXG5pbXBvcnQgeyBkcm9wZG93bk9wZW4sIGRyb3Bkb3duQ2xvc2UsIGZsYWdQbGFjZWhvbGRlciB9IGZyb20gJy4vYXNzZXRzL2Jhc2U2NCc7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgdjQgYXMgdXVpZHY0IH0gZnJvbSAndXVpZCc7XHJcbmltcG9ydCB7IEZpZWxkIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMnO1xyXG5pbXBvcnQgeyBJbnB1dFRlbFNpemVzRW51bSwgSW5wdXRUZWxTaXplc1R5cGVzIH0gZnJvbSAnLi9lbnVtcy9pbnB1dC1waG9uZS5lbnVtJztcclxuaW1wb3J0IHsgSW5wdXRQaG9uZVZhbHVlV2l0aElkIH0gZnJvbSAnLi4vaW5wdXQtcGhvbmUvZW51bXMvaW5wdXQtcGhvbmUuZW51bSc7XHJcbmltcG9ydCB7IERyb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZHJvcGRvd24vZHJvcGRvd24uY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbXJ4LWlucHV0LXRlbCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LXRlbC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vaW5wdXQtdGVsLmNvbXBvbmVudC5sZXNzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBJbnB1dFRlbENvbXBvbmVudCksXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgfSxcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbnB1dFRlbENvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkluaXQge1xyXG5cclxuICAvLyBTQVZFIFNUQVRFXHJcbiAgcHVibGljIHV1aWQ6IHN0cmluZyA9IHV1aWR2NCgpO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBmaWVsZHM6IEZpZWxkW10gPSBbXTtcclxuXHJcbiAgQElucHV0KCkgY3NzQ2xhc3M6IHN0cmluZyA9ICcnO1xyXG4gIEBJbnB1dCgpIHByZWZlcnJlZENvdW50cmllczogKENvdW50cnlJU08pW10gPSBbXTtcclxuICBASW5wdXQoKSBvbmx5Q291bnRyaWVzOiAoQ291bnRyeUlTTylbXSA9IFtdO1xyXG4gIEBJbnB1dCgpIGVuYWJsZUF1dG9Db3VudHJ5U2VsZWN0OiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKSBlbmFibGVQbGFjZWhvbGRlcjogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KCkgY3VzdG9tUGxhY2Vob2xkZXI6IHN0cmluZyB8IG51bGwgPSBudWxsO1xyXG4gIEBJbnB1dCgpIG51bWJlckZvcm1hdDogUGhvbmVOdW1iZXJGb3JtYXRUeXBlID0gJ2ludGVybmF0aW9uYWwnO1xyXG4gIEBJbnB1dCgpIHNlYXJjaENvdW50cnlGbGFnOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2VhcmNoQ291bnRyeUZpZWxkOiBTZWFyY2hDb3VudHJ5RmllbGQgPSBTZWFyY2hDb3VudHJ5RmllbGQuQWxsO1xyXG4gIEBJbnB1dCgpIHNlYXJjaENvdW50cnlQbGFjZWhvbGRlcjogc3RyaW5nID0gJ9Cf0L7QuNGB0Log0L/QviDRgdGC0YDQsNC90LDQvCc7XHJcbiAgQElucHV0KCkgbWF4TGVuZ3RoOiBudW1iZXIgfCBudWxsID0gbnVsbDtcclxuICBASW5wdXQoKSBzZWxlY3RGaXJzdENvdW50cnk6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHBob25lVmFsaWRhdGlvbjogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KCkgaW5wdXRJZDogc3RyaW5nID0gJ3Bob25lJztcclxuICBASW5wdXQoKSBzZWxlY3RlZENvdW50cnlJU086IENvdW50cnlJU08gfCBudWxsID0gbnVsbDtcclxuICBASW5wdXQoKSBzZXBhcmF0ZURpYWxDb2RlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgY3VzdG9tQ2xhc3NlcyA9ICcnO1xyXG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2l6ZTogSW5wdXRUZWxTaXplc1R5cGVzID0gJ2xhcmdlJztcclxuICBASW5wdXQoKSBhdXRvRGVhbENvZGUgPSBmYWxzZTtcclxuICBASW5wdXQoKSBhdXRvQ2xvc2VEcm9wZG93biA9IGZhbHNlO1xyXG5cclxuICAvLyBWQUxJREFUSU9OXHJcbiAgQElucHV0KCkgcHVibGljIGludmFsaWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgaW52YWxpZE1lc3NhZ2U6IHN0cmluZyB8IHN0cmluZ1tdID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIGludmFsaWRQaG9uZU1lc3NhZ2U6IHN0cmluZyA9ICfQndC10LrQvtGA0YDQtdC60YLQvdC+0LUg0LfQvdCw0YfQtdC90LjQtSc7XHJcbiAgQElucHV0KCkgcHVibGljIGNoZWNrSW52YWxpZDogdHJ1ZSB8IGZhbHNlIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2Ryb3Bkb3duQ29tcG9uZW50JykgZHJvcGRvd25Db21wb25lbnQhOiBEcm9wZG93bkNvbXBvbmVudDtcclxuXHJcbiAgQE91dHB1dCgpIGNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxJbnB1dFZhbHVlPiA9IG5ldyBFdmVudEVtaXR0ZXI8SW5wdXRWYWx1ZT4oKTtcclxuICBAT3V0cHV0KCkgcHVibGljIG1vZGVsQ2hhbmdlOiBFdmVudEVtaXR0ZXI8SW5wdXRQaG9uZVZhbHVlV2l0aElkPiA9IG5ldyBFdmVudEVtaXR0ZXI8SW5wdXRQaG9uZVZhbHVlV2l0aElkPigpO1xyXG5cclxuICBwdWJsaWMgYWxsQ291bnRyaWVzOiAoQ291bnRyeSlbXTtcclxuICBwdWJsaWMgc2VsZWN0ZWRDb3VudHJ5OiBDb3VudHJ5O1xyXG4gIHB1YmxpYyBjb3VudHJpZXNUb1Nob3c6IChDb3VudHJ5KVtdO1xyXG4gIHB1YmxpYyBwcmVmZXJyZWRDb3VudHJpZXNMaXN0OiAoQ291bnRyeSlbXTtcclxuICBwdWJsaWMgc2VhcmNoRmlsdGVyOiBzdHJpbmc7XHJcbiAgcHVibGljIHNjcm9sbFRpbWVvdXQ6IGFueTtcclxuICBwdWJsaWMgcGhvbmVOdW1iZXI6IGFueTtcclxuICBwdWJsaWMgaXNGb2N1c2VkOiBib29sZWFuO1xyXG4gIHB1YmxpYyBpc0lucHV0VmFsaWQ6IGJvb2xlYW47XHJcbiAgcHVibGljIGlzRHJvcGRvd25PcGVuOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHBhcnNlZFBob25lTnVtYmVyPzogUGFyc2VkUGhvbmVOdW1iZXI7XHJcbiAgcHVibGljIGlubmVySW52YWxpZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBpbm5lckludmFsaWRNZXNzYWdlOiBzdHJpbmcgPSAnJ1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHRoaXMuYWxsQ291bnRyaWVzID0gW107XHJcbiAgICB0aGlzLmNvdW50cmllc1RvU2hvdyA9IHRoaXMuYWxsQ291bnRyaWVzO1xyXG4gICAgdGhpcy5zZWxlY3RlZENvdW50cnkgPSB0aGlzLmdldERlZmF1bHRDb3VudHJ5KCk7XHJcbiAgICB0aGlzLnByZWZlcnJlZENvdW50cmllc0xpc3QgPSBbXTtcclxuICAgIHRoaXMuc2VhcmNoRmlsdGVyID0gJyc7XHJcbiAgICB0aGlzLnBob25lTnVtYmVyID0gbnVsbDtcclxuICAgIHRoaXMuaXNGb2N1c2VkID0gZmFsc2U7XHJcbiAgICB0aGlzLmlzSW5wdXRWYWxpZCA9IHRydWU7XHJcbiAgfVxyXG5cclxuICB3cml0ZVZhbHVlKG91dHNpZGVWYWx1ZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBpZiAob3V0c2lkZVZhbHVlKSB7XHJcbiAgICAgIHRoaXMucGhvbmVOdW1iZXIgPSBvdXRzaWRlVmFsdWU7XHJcbiAgICAgIHRoaXMuZm9ybWF0UGhvbmVOdW1iZXIoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25DaGFuZ2UgPSAodmFsdWU6IGFueSkgPT4ge1xyXG4gIH07XHJcbiAgcHJpdmF0ZSBvblRvdWNoZWQgPSAoKSA9PiB7XHJcbiAgfTtcclxuXHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmdlbmVyYXRlQ291bnRyeURhdGEoKTtcclxuICAgIHRoaXMuc2V0Q291bnRyaWVzVG9TaG93KCk7XHJcbiAgICB0aGlzLnNldFByZWZlcnJlZENvdW50cmllcygpO1xyXG4gICAgdGhpcy5zZXREZWZhdWx0U2VsZWN0ZWRDb3VudHJ5KCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF92YWxpZGF0aW9uKHBhcnNlZE51bWJlcjogUGFyc2VkUGhvbmVOdW1iZXIpOiBib29sZWFuIHtcclxuICAgIGlmICghdGhpcy5zZWxlY3RlZENvdW50cnkpIHJldHVybiBmYWxzZVxyXG4gICAgY29uc3Qgc2VsZWN0ZWRDb3VudHJ5ID0gdGhpcy5maW5kQ291bnRyeUJ5SXNvMih0aGlzLnNlbGVjdGVkQ291bnRyeS5pc28yKTtcclxuXHJcbiAgICBpZiAocGFyc2VkTnVtYmVyLm51bWJlcj8uaW50ZXJuYXRpb25hbCB8fCBwYXJzZWROdW1iZXIubnVtYmVyPy5uYXRpb25hbCkge1xyXG4gICAgICBpZiAocGFyc2VkTnVtYmVyLm51bWJlci5pbnRlcm5hdGlvbmFsKSB7XHJcbiAgICAgICAgY29uc3QgcGhvbmUgPSBwYXJzZWROdW1iZXIubnVtYmVyLmludGVybmF0aW9uYWwudHJpbSgpXHJcbiAgICAgICAgY29uc3QgYSA9IHBob25lLnN0YXJ0c1dpdGgoJysnKSA/IHBob25lLnN1YnN0cmluZygxKS50cmltKCkgOiBwaG9uZTtcclxuICAgICAgICBjb25zdCBiID0gYS5zdGFydHNXaXRoKHNlbGVjdGVkQ291bnRyeS5kaWFsQ29kZSkgPyBhLnN1YnN0cmluZyhzZWxlY3RlZENvdW50cnkuZGlhbENvZGUubGVuZ3RoKS50cmltKCkgOiBhO1xyXG5cclxuICAgICAgICByZXR1cm4gQm9vbGVhbihzZWxlY3RlZENvdW50cnk/LmFyZWFDb2Rlcz8uZmlsdGVyKChjb2RlOiBzdHJpbmcpID0+ICBiLnN0YXJ0c1dpdGgoY29kZSkpLmxlbmd0aCk7XHJcbiAgICAgIH0gZWxzZSBpZiAocGFyc2VkTnVtYmVyLm51bWJlci5uYXRpb25hbCkge1xyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZ2V0Q2xhc3NlcygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGAke0lucHV0VGVsU2l6ZXNFbnVtW3RoaXMuc2l6ZV19ICR7dGhpcy5jdXN0b21DbGFzc2VzfSAke3RoaXMuY2hlY2tWYWxpZENsYXNzZXN9YDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgaXNWYWxpZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBpc0ludmFsaWRNZXNzYWdlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICEhdGhpcy5pbnZhbGlkTWVzc2FnZSB8fCAhIXRoaXMuaW52YWxpZE1lc3NhZ2UubGVuZ3RoO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBjaGVja1ZhbGlkQ2xhc3NlcygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuY2hlY2tJbnZhbGlkID09PSBmYWxzZSA/XHJcbiAgICAgICdtcngtaW5wdXQtY2hlY2tlZC1zdWNjZXNzJyA6XHJcbiAgICAgIHRoaXMuY2hlY2tJbnZhbGlkID09PSB0cnVlID8gJ21yeC1pbnB1dC1jaGVja2VkLWVycm9yJyA6ICcnO1xyXG4gIH1cclxuXHJcblxyXG4gIHB1YmxpYyB0b2dnbGVEcm9wZG93bigpIHtcclxuICAgIHRoaXMuaXNEcm9wZG93bk9wZW4gPSAhdGhpcy5pc0Ryb3Bkb3duT3BlbjtcclxuICAgIHRoaXMuZHJvcGRvd25Db21wb25lbnQuaGlkZSgpXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2VuZXJhdGVDb3VudHJ5RGF0YSgpIHtcclxuICAgIHRoaXMuYWxsQ291bnRyaWVzID0gY291bnRyeURhdGEubWFwKGNvbiA9PiB7XHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgbmFtZTogY29uWzBdLnRvU3RyaW5nKCksXHJcbiAgICAgICAgaXNvMjogY29uWzFdLnRvU3RyaW5nKCksXHJcbiAgICAgICAgZGlhbENvZGU6IGNvblsyXS50b1N0cmluZygpLFxyXG4gICAgICAgIHByaW9yaXR5OiArY29uWzNdIHx8IDAsXHJcbiAgICAgICAgYXJlYUNvZGVzOiAoY29uWzRdIGFzIHN0cmluZ1tdKSB8fCB1bmRlZmluZWQsXHJcbiAgICAgICAgaHRtbElkOiBgJHt0aGlzLnV1aWR9LSR7Y29uWzFdLnRvU3RyaW5nKCl9YCxcclxuICAgICAgICBmbGFnQ2xhc3M6IGBmbGFnX18ke2NvblsxXS50b1N0cmluZygpfWAsXHJcbiAgICAgICAgcGxhY2VIb2xkZXI6ICcnLFxyXG4gICAgICB9O1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLmNvdW50cmllc1RvU2hvdyA9IHRoaXMuYWxsQ291bnRyaWVzO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldERlZmF1bHRDb3VudHJ5KCk6IENvdW50cnkge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgJ25hbWUnOiAnJyxcclxuICAgICAgJ2lzbzInOiAnJyxcclxuICAgICAgJ2RpYWxDb2RlJzogJycsXHJcbiAgICAgICdwcmlvcml0eSc6IDAsXHJcbiAgICAgICdodG1sSWQnOiAnJyxcclxuICAgICAgJ2ZsYWdDbGFzcyc6IGZsYWdQbGFjZWhvbGRlcixcclxuICAgICAgJ3BsYWNlSG9sZGVyJzogJycsXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmb3JtYXRJbnRlbE51bWJlcihudW1iZXI6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBpZiAodGhpcy5hdXRvRGVhbENvZGUpIHtcclxuICAgICAgcmV0dXJuIG51bWJlclxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgaW5kZXhUb1NwbGl0ID0gbnVtYmVyLmluZGV4T2YoJyAnKSArIDE7XHJcbiAgICAgIHJldHVybiB0aGlzLnNlcGFyYXRlRGlhbENvZGUgPyBudW1iZXIuc3Vic3RyaW5nKGluZGV4VG9TcGxpdCkgOiBudW1iZXI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZm9ybWF0UGhvbmVOdW1iZXIoKSB7XHJcbiAgICBjb25zdCBheXQgPSBnZXRBc1lvdVR5cGUodGhpcy5zZWxlY3RlZENvdW50cnk/LmlzbzIudG9VcHBlckNhc2UoKSk7XHJcbiAgICBheXQucmVzZXQodGhpcy5waG9uZU51bWJlcik7XHJcbiAgICBjb25zdCByZXM6IFBhcnNlZFBob25lTnVtYmVyID0gYXl0LmdldFBob25lTnVtYmVyKCk7XHJcblxyXG4gICAgdGhpcy5wYXJzZWRQaG9uZU51bWJlciA9IHJlc1xyXG5cclxuICAgIGlmICh0aGlzLm51bWJlckZvcm1hdCA9PT0gJ2ludGVybmF0aW9uYWwnKSB7XHJcbiAgICAgIHRoaXMucGhvbmVOdW1iZXIgPSByZXMubnVtYmVyPy5pbnRlcm5hdGlvbmFsID8gdGhpcy5mb3JtYXRJbnRlbE51bWJlcihyZXMubnVtYmVyLmludGVybmF0aW9uYWwpIDogdGhpcy5waG9uZU51bWJlcjtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMucGhvbmVOdW1iZXIgPSByZXMubnVtYmVyPy5uYXRpb25hbCA/IHJlcy5udW1iZXIubmF0aW9uYWwgOiB0aGlzLnBob25lTnVtYmVyO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLm51bWJlckZvcm1hdCA9PT0gJ2ludGVybmF0aW9uYWwnKSB7XHJcbiAgICAgIGlmICh0aGlzLmVuYWJsZUF1dG9Db3VudHJ5U2VsZWN0ICYmIHJlcy5yZWdpb25Db2RlICE9IHRoaXMuc2VsZWN0ZWRDb3VudHJ5Py5pc28yLnRvVXBwZXJDYXNlKCkpIHtcclxuICAgICAgICByZXMucmVnaW9uQ29kZSAmJiAodGhpcy5zZWxlY3RlZENvdW50cnkgPSB0aGlzLmZpbmRDb3VudHJ5QnlJc28yKHJlcy5yZWdpb25Db2RlKSk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmICh0aGlzLmVuYWJsZUF1dG9Db3VudHJ5U2VsZWN0ICYmIHJlcy5yZWdpb25Db2RlICE9IHRoaXMuc2VsZWN0ZWRDb3VudHJ5Py5pc28yLnRvVXBwZXJDYXNlKCkpIHtcclxuXHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpZiAoIXJlcy52YWxpZCB8fCByZXMucmVnaW9uQ29kZSAhPSB0aGlzLnNlbGVjdGVkQ291bnRyeT8uaXNvMi50b1VwcGVyQ2FzZSgpKSB7XHJcbiAgICAgIHRoaXMuaXNJbnB1dFZhbGlkID0gdGhpcy5fdmFsaWRhdGlvbihyZXMpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5pc0lucHV0VmFsaWQgPSB0cnVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHNlYXJjaEZpbHRlckNoYW5nZWQoZXZlbnQ6IGFueSkge1xyXG4gICAgaWYgKHRoaXMuc2Nyb2xsVGltZW91dCkgY2xlYXJUaW1lb3V0KHRoaXMuc2Nyb2xsVGltZW91dCk7XHJcblxyXG4gICAgbGV0IGZpbHRlcmVkOiBDb3VudHJ5W107XHJcbiAgICBpZiAodGhpcy5zZWFyY2hDb3VudHJ5RmllbGQgPT0gJ25hbWUnKSB7XHJcbiAgICAgIGZpbHRlcmVkID0gdGhpcy5jb3VudHJpZXNUb1Nob3cuZmlsdGVyKGNvbiA9PiBjb24ubmFtZS50b0xvd2VyQ2FzZSgpLnN0YXJ0c1dpdGgodGhpcy5zZWFyY2hGaWx0ZXIudG9Mb3dlckNhc2UoKSkpO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLnNlYXJjaENvdW50cnlGaWVsZCA9PSAnaXNvMicpIHtcclxuICAgICAgZmlsdGVyZWQgPSB0aGlzLmNvdW50cmllc1RvU2hvdy5maWx0ZXIoY29uID0+IGNvbi5pc28yLnN0YXJ0c1dpdGgodGhpcy5zZWFyY2hGaWx0ZXIudG9Mb3dlckNhc2UoKSkpO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLnNlYXJjaENvdW50cnlGaWVsZCA9PSAnZGlhbENvZGUnKSB7XHJcbiAgICAgIGZpbHRlcmVkID0gdGhpcy5jb3VudHJpZXNUb1Nob3cuZmlsdGVyKGNvbiA9PiBjb24uZGlhbENvZGUuc3RhcnRzV2l0aCh0aGlzLnNlYXJjaEZpbHRlcikpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgZmlsdGVyZWQgPSB0aGlzLmNvdW50cmllc1RvU2hvdy5maWx0ZXIoY29uID0+IGNvbi5uYW1lLnRvTG93ZXJDYXNlKCkuc3RhcnRzV2l0aCh0aGlzLnNlYXJjaEZpbHRlci50b0xvd2VyQ2FzZSgpKSB8fCBjb24uZGlhbENvZGUuc3RhcnRzV2l0aCh0aGlzLnNlYXJjaEZpbHRlcikgfHwgY29uLmlzbzIuc3RhcnRzV2l0aCh0aGlzLnNlYXJjaEZpbHRlci50b0xvd2VyQ2FzZSgpKSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCFmaWx0ZXJlZC5sZW5ndGgpIHJldHVybjtcclxuICAgIHRoaXMuc2Nyb2xsVGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICBjb25zdCBlbDogYW55ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZmlsdGVyZWRbMF0uaHRtbElkKTtcclxuICAgICAgZWwuc2Nyb2xsSW50b1ZpZXcoKTtcclxuICAgIH0sIDEpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmaW5kQ291bnRyeUJ5SXNvMihpc28yOiBzdHJpbmcpOiBDb3VudHJ5IHwgYW55IHtcclxuICAgIHJldHVybiB0aGlzLmNvdW50cmllc1RvU2hvdy5maW5kKGNvbiA9PiBjb24uaXNvMiA9PSBpc28yLnRvTG93ZXJDYXNlKCkpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldERlZmF1bHRTZWxlY3RlZENvdW50cnkoKSB7XHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZENvdW50cnlJU08pIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZENvdW50cnkgPSB0aGlzLmZpbmRDb3VudHJ5QnlJc28yKHRoaXMuc2VsZWN0ZWRDb3VudHJ5SVNPKTtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5zZWxlY3RGaXJzdENvdW50cnkpIHtcclxuICAgICAgaWYgKHRoaXMucHJlZmVycmVkQ291bnRyaWVzTGlzdC5sZW5ndGgpIHRoaXMuc2VsZWN0ZWRDb3VudHJ5ID0gdGhpcy5wcmVmZXJyZWRDb3VudHJpZXNMaXN0WzBdO1xyXG4gICAgICBlbHNlIHRoaXMuc2VsZWN0ZWRDb3VudHJ5ID0gdGhpcy5jb3VudHJpZXNUb1Nob3dbMF07XHJcbiAgICB9IGVsc2UgdGhpcy5zZWxlY3RlZENvdW50cnkgPSB0aGlzLmdldERlZmF1bHRDb3VudHJ5KCk7XHJcblxyXG4gICAgdGhpcy5zZWxlY3RlZENvdW50cnkucGxhY2VIb2xkZXIgPSB0aGlzLmdldFBsYWNlSG9sZGVyKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0Q291bnRyaWVzVG9TaG93KCkge1xyXG4gICAgaWYgKHRoaXMub25seUNvdW50cmllcy5sZW5ndGggPT0gMCkgcmV0dXJuO1xyXG5cclxuICAgIGNvbnN0IHRlbXA6IGFueSA9IFtdO1xyXG4gICAgZm9yIChsZXQgY291bnRyeSBvZiB0aGlzLm9ubHlDb3VudHJpZXMpIHtcclxuICAgICAgdGVtcC5wdXNoKHRoaXMuYWxsQ291bnRyaWVzLmZpbmQoY29uID0+IGNvbi5pc28yID09IGNvdW50cnkpKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmNvdW50cmllc1RvU2hvdyA9IHRlbXA7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0UHJlZmVycmVkQ291bnRyaWVzKCkge1xyXG4gICAgZm9yIChsZXQgY291bnRyeSBvZiB0aGlzLnByZWZlcnJlZENvdW50cmllcykge1xyXG4gICAgICBjb25zdCB0ZW1wID0gdGhpcy5jb3VudHJpZXNUb1Nob3cuZmluZChjb24gPT4gY29uLmlzbzIgPT0gY291bnRyeSk7XHJcbiAgICAgIGlmICh0ZW1wKSB0aGlzLnByZWZlcnJlZENvdW50cmllc0xpc3QucHVzaCh0ZW1wKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkNvdW50cnlTZWxlY3QoY291bnRyeTogYW55KSB7XHJcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkgcmV0dXJuXHJcblxyXG4gICAgdGhpcy5zZWxlY3RlZENvdW50cnkgPSBjb3VudHJ5O1xyXG4gICAgdGhpcy5zZWxlY3RlZENvdW50cnkucGxhY2VIb2xkZXIgPSB0aGlzLmdldFBsYWNlSG9sZGVyKCk7XHJcbiAgICB0aGlzLnNlYXJjaEZpbHRlciA9ICcnO1xyXG4gICAgdGhpcy5waG9uZU51bWJlciA9ICcnO1xyXG4gICAgdGhpcy5pc0lucHV0VmFsaWQgPSB0cnVlO1xyXG4gICAgdGhpcy5pc0ZvY3VzZWQgPSBmYWxzZTtcclxuXHJcbiAgICBpZiAodGhpcy5hdXRvQ2xvc2VEcm9wZG93bikge1xyXG4gICAgICB0aGlzLnRvZ2dsZURyb3Bkb3duKCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy51cGRhdGVWYWx1ZSgpXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldE51bWJlckV4YW1wbGUoKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGZvcm1hdEV4YW1wbGVOdW1iZXIgPSAobnVtYmVyOiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xyXG4gICAgICByZXR1cm4gbnVtYmVyXHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0IGV4YW1wbGVOdW1iZXIgPSB0aGlzLm51bWJlckZvcm1hdCA9PT0gJ2ludGVybmF0aW9uYWwnID9cclxuICAgICAgdGhpcy5mb3JtYXRJbnRlbE51bWJlcihnZXRFeGFtcGxlKHRoaXMuc2VsZWN0ZWRDb3VudHJ5LmlzbzIudG9VcHBlckNhc2UoKSwgJ21vYmlsZScpLm51bWJlcj8uaW50ZXJuYXRpb25hbCB8fCAnJykgOlxyXG4gICAgICB0aGlzLmZvcm1hdEludGVsTnVtYmVyKGdldEV4YW1wbGUodGhpcy5zZWxlY3RlZENvdW50cnkuaXNvMi50b1VwcGVyQ2FzZSgpLCAnbW9iaWxlJykubnVtYmVyPy5uYXRpb25hbCB8fCAnJyk7XHJcblxyXG4gICAgcmV0dXJuIGZvcm1hdEV4YW1wbGVOdW1iZXIoZXhhbXBsZU51bWJlcik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0UGxhY2VIb2xkZXIoKTogc3RyaW5nIHtcclxuICAgIGlmICghdGhpcy5lbmFibGVQbGFjZWhvbGRlcikgcmV0dXJuICcnO1xyXG4gICAgaWYgKHRoaXMuY3VzdG9tUGxhY2Vob2xkZXIpIHJldHVybiB0aGlzLmN1c3RvbVBsYWNlaG9sZGVyO1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRDb3VudHJ5LmlzbzIgPT0gJycpIHJldHVybiAnJztcclxuXHJcbiAgICByZXR1cm4gdGhpcy5nZXROdW1iZXJFeGFtcGxlKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0RHJvcGRvd25JY29uUGF0aCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuaXNEcm9wZG93bk9wZW4gPyBkcm9wZG93bkNsb3NlIDogZHJvcGRvd25PcGVuO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uUGhvbmVJbnB1dEZvY3VzKCkge1xyXG4gICAgaWYgKCF0aGlzLmF1dG9EZWFsQ29kZSkgcmV0dXJuO1xyXG4gICAgaWYgKHRoaXMuaXNGb2N1c2VkIHx8ICh0aGlzLnNlcGFyYXRlRGlhbENvZGUgJiYgdGhpcy5udW1iZXJGb3JtYXQgPT09ICdpbnRlcm5hdGlvbmFsJykgfHwgdGhpcy5udW1iZXJGb3JtYXQgPT09ICduYXRpb25hbCcgfHwgdGhpcy5waG9uZU51bWJlcikgcmV0dXJuO1xyXG4gICAgdGhpcy5waG9uZU51bWJlciA9ICcrJyArIHRoaXMuc2VsZWN0ZWRDb3VudHJ5LmRpYWxDb2RlICsgJyAnO1xyXG4gICAgdGhpcy5pc0ZvY3VzZWQgPSB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uUGhvbmVJbnB1dEJsdXIoKSB7XHJcbiAgICBpZiAoIXRoaXMuaXNJbnB1dFZhbGlkICYmIHRoaXMucGhvbmVOdW1iZXIgIT09ICcnKSB7XHJcbiAgICAgIHRoaXMuaW5uZXJJbnZhbGlkID0gdHJ1ZVxyXG4gICAgICB0aGlzLmlubmVySW52YWxpZE1lc3NhZ2UgPSB0aGlzLmludmFsaWRQaG9uZU1lc3NhZ2VcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3Jlc2V0VmFsaWRhdGUoKSB7XHJcbiAgICB0aGlzLmlubmVySW52YWxpZCA9IGZhbHNlXHJcbiAgICB0aGlzLmlubmVySW52YWxpZE1lc3NhZ2UgPSAnJ1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHVwZGF0ZVZhbHVlKCkge1xyXG4gICAgdGhpcy5fcmVzZXRWYWxpZGF0ZSgpXHJcbiAgICB0aGlzLmZvcm1hdFBob25lTnVtYmVyKCk7XHJcblxyXG4gICAgY29uc3Qgb3V0c2lkZVZhbHVlID0ge1xyXG4gICAgICBwaG9uZU51bWJlcjogdGhpcy5waG9uZU51bWJlcixcclxuICAgICAgdW5Gb3JtYXR0ZWROdW1iZXI6IHRoaXMucGhvbmVOdW1iZXIucmVwbGFjZSgvW1xccy0oKV0vZywgJycpLFxyXG4gICAgICBzZWxlY3RlZENvdW50cnk6IHRoaXMuc2VsZWN0ZWRDb3VudHJ5Py5uYW1lIHx8ICcnLFxyXG4gICAgICBpc28yQ29kZTogdGhpcy5zZWxlY3RlZENvdW50cnk/LmlzbzIgfHwgJycsXHJcbiAgICAgIGRpYWxDb2RlOiB0aGlzLnNlbGVjdGVkQ291bnRyeT8uZGlhbENvZGUgfHwgJycsXHJcbiAgICAgIG51bWJlckZvcm1hdDogdGhpcy5udW1iZXJGb3JtYXQsXHJcbiAgICAgIGlzTnVtYmVyVmFsaWQ6IHRoaXMuaXNJbnB1dFZhbGlkLFxyXG4gICAgfTtcclxuXHJcbiAgICB0aGlzLmNoYW5nZWQuZW1pdChvdXRzaWRlVmFsdWUpO1xyXG4gICAgdGhpcy5tb2RlbENoYW5nZS5lbWl0KHt2YWx1ZTogb3V0c2lkZVZhbHVlLCBpZDogdGhpcy51dWlkfSlcclxuICAgIHRoaXMub25DaGFuZ2Uob3V0c2lkZVZhbHVlKTtcclxuICAgIHRoaXMub25Ub3VjaGVkKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJtcngtaW5wdXQtdGVsXCIgW2NsYXNzXT1cImdldENsYXNzZXNcIiBbY2xhc3MubXJ4LWlucHV0LWVycm9yXT1cImludmFsaWRcIj5cclxuICA8ZGl2IGNsYXNzPVwibXJ4LWlucHV0LXRlbF9fd3JhcHBlclwiPlxyXG4gICAgICA8aW5wdXRcclxuICAgICAgICBmb3JtYXR0ZXJQaG9uZVxyXG4gICAgICAgIFtpZF09XCJpbnB1dElkXCJcclxuICAgICAgICB0eXBlPVwidGVsXCJcclxuICAgICAgICBjbGFzcz1cInBob25lSW5wdXQge3tjc3NDbGFzc319XCJcclxuICAgICAgICBbKG5nTW9kZWwpXT1cInBob25lTnVtYmVyXCJcclxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJzZWxlY3RlZENvdW50cnk/LnBsYWNlSG9sZGVyIHx8ICcnXCJcclxuICAgICAgICBbY2xhc3MuaW5WYWxpZF09XCJwaG9uZVZhbGlkYXRpb24gJiYgIWlzSW5wdXRWYWxpZFwiXHJcbiAgICAgICAgW2N1c3RvbU1heExlbmd0aF09XCJtYXhMZW5ndGhcIlxyXG4gICAgICAgIFtwYXJzZWRQaG9uZU51bWJlcl09XCJwYXJzZWRQaG9uZU51bWJlclwiXHJcbiAgICAgICAgKGZvY3VzKT1cIm9uUGhvbmVJbnB1dEZvY3VzKClcIlxyXG4gICAgICAgIChibHVyKT1cIm9uUGhvbmVJbnB1dEJsdXIoKVwiXHJcbiAgICAgICAgKGNoYW5nZU1vZGVsKT1cInVwZGF0ZVZhbHVlKClcIlxyXG4gICAgICAvPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1yeC1pbnB1dC10ZWxfX2ZsYWctY29udGFpbmVyXCIgW2NsYXNzLmRpc2FibGVkXT1cImRpc2FibGVkXCI+XHJcbiAgICAgIDxtcngtZHJvcGRvd25cclxuICAgICAgICAjZHJvcGRvd25Db21wb25lbnRcclxuICAgICAgICBjdXN0b21DbGFzc2VzPVwiaC0xMDBcIlxyXG4gICAgICAgIFttYWluUGxhY2VtZW50XT1cIidib3R0b20tc3RhcnQnXCJcclxuICAgICAgICBbZmFsbGJhY2tQbGFjZW1lbnRzXT1cIlsndG9wLXN0YXJ0J11cIlxyXG4gICAgICA+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlICNkcm9wZG93blRvZ2dsZT5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtcngtaW5wdXQtdGVsX19zZWxlY3RlZC1mbGFnIGRyb3Bkb3duLXRvZ2dsZVwiPlxyXG4gICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJtcngtaW5wdXQtdGVsX19mbGFnXCJcclxuICAgICAgICAgICAgICBbbmdDbGFzc109XCJzZWxlY3RlZENvdW50cnk/LmZsYWdDbGFzcyB8fCAnJ1wiXHJcbiAgICAgICAgICAgID48L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cInNlcGFyYXRlRGlhbENvZGVcIiBjbGFzcz1cInNlbGVjdGVkLWRpYWwtY29kZVwiPit7e3NlbGVjdGVkQ291bnRyeT8uZGlhbENvZGV9fTwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXJ4LWlucHV0LXRlbF9fYXJyb3cgbXQtMVwiPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXJ4LWljb24gaWNvbi1jaGV2cm9uLWRvd25cIj48L3NwYW4+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICAgICAgPG5nLXRlbXBsYXRlICNkcm9wZG93bk1lbnU+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VhcmNoLWNvbnRhaW5lclwiICpuZ0lmPVwic2VhcmNoQ291bnRyeUZsYWcgJiYgc2VhcmNoQ291bnRyeUZpZWxkXCI+XHJcbiAgICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cInNlYXJjaEZpbHRlclwiXHJcbiAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwic2VhcmNoRmlsdGVyQ2hhbmdlZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cInt7IHNlYXJjaENvdW50cnlQbGFjZWhvbGRlciB9fVwiXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJzZWFyY2hDb3VudHJ5X19pbnB1dFwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICA8dWwgY2xhc3M9XCJtcngtaW5wdXQtdGVsX19jb3VudHJ5LWxpc3RcIiAjY291bnRyeUxpc3Q+XHJcbiAgICAgICAgICAgIDxsaSBjbGFzcz1cIm1yeC1pbnB1dC10ZWxfX2NvdW50cnkgaXRpX19wcmVmZXJyZWRcIlxyXG4gICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IHByZWZlcnJlZENvdW50cnkgb2YgcHJlZmVycmVkQ291bnRyaWVzTGlzdFwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25Db3VudHJ5U2VsZWN0KHByZWZlcnJlZENvdW50cnkpXCJcclxuICAgICAgICAgICAgICAgIFtpZF09XCJwcmVmZXJyZWRDb3VudHJ5Lmh0bWxJZCsnLXByZWZlcnJlZCdcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1yeC1pbnB1dC10ZWxfX2ZsYWctYm94XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXJ4LWlucHV0LXRlbF9fZmxhZ1wiIFtuZ0NsYXNzXT1cInByZWZlcnJlZENvdW50cnkuZmxhZ0NsYXNzXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtcngtaW5wdXQtdGVsX19jb3VudHJ5LW5hbWVcIj57e3ByZWZlcnJlZENvdW50cnkubmFtZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXJ4LWlucHV0LXRlbF9fZGlhbC1jb2RlXCI+K3t7cHJlZmVycmVkQ291bnRyeS5kaWFsQ29kZX19PC9zcGFuPlxyXG4gICAgICAgICAgICA8L2xpPlxyXG5cclxuICAgICAgICAgICAgPGxpIGNsYXNzPVwibXJ4LWlucHV0LXRlbF9fZGl2aWRlclwiICpuZ0lmPVwicHJlZmVycmVkQ291bnRyaWVzTGlzdD8ubGVuZ3RoXCI+PC9saT5cclxuXHJcbiAgICAgICAgICAgIDxsaSBjbGFzcz1cIm1yeC1pbnB1dC10ZWxfX2NvdW50cnkgaXRpX19zdGFuZGFyZFwiXHJcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgY291bnRyeSBvZiBjb3VudHJpZXNUb1Nob3dcIlxyXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ291bnRyeVNlbGVjdChjb3VudHJ5KVwiXHJcbiAgICAgICAgICAgICAgICBbaWRdPVwiY291bnRyeS5odG1sSWRcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXJ4LWlucHV0LXRlbF9fZmxhZy1ib3hcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtcngtaW5wdXQtdGVsX19mbGFnXCIgW25nQ2xhc3NdPVwiY291bnRyeS5mbGFnQ2xhc3NcIj48L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1yeC1pbnB1dC10ZWxfX2NvdW50cnktbmFtZVwiPnt7Y291bnRyeS5uYW1lfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtcngtaW5wdXQtdGVsX19kaWFsLWNvZGVcIj4re3tjb3VudHJ5LmRpYWxDb2RlfX08L3NwYW4+XHJcbiAgICAgICAgICAgIDwvbGk+XHJcblxyXG4gICAgICAgICAgPC91bD5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICA8L21yeC1kcm9wZG93bj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG5cclxuICA8bXJ4LWVycm9yLW1lc3NhZ2VcclxuICAgICpuZ0lmPVwiKCFpc1ZhbGlkIHx8IGlubmVySW52YWxpZCB8fCBpbnZhbGlkKSAmJiBpc0ludmFsaWRNZXNzYWdlXCJcclxuICAgIFtpbnZhbGlkTWVzc2FnZV09XCJpbm5lckludmFsaWRNZXNzYWdlIHx8IGludmFsaWRNZXNzYWdlXCJcclxuICA+PC9tcngtZXJyb3ItbWVzc2FnZT5cclxuXHJcbiAgPG1yeC1zYXZlLXN0YXRlIFtpZF09XCJ1dWlkXCIgW2ZpZWxkc109XCJmaWVsZHNcIj48L21yeC1zYXZlLXN0YXRlPlxyXG48L2Rpdj5cclxuXHJcbiJdfQ==
@@ -15990,7 +15990,7 @@ class InputTelComponent {
15990
15990
  getNumberExample() {
15991
15991
  var _a, _b;
15992
15992
  const formatExampleNumber = (number) => {
15993
- return number.replace(/\d/g, '9');
15993
+ return number;
15994
15994
  };
15995
15995
  const exampleNumber = this.numberFormat === 'international' ?
15996
15996
  this.formatIntelNumber(((_a = getExample(this.selectedCountry.iso2.toUpperCase(), 'mobile').number) === null || _a === void 0 ? void 0 : _a.international) || '') :