myrta-ui 1.1.72 → 1.1.73

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.
@@ -145,7 +145,7 @@ export class InputTelComponent {
145
145
  }
146
146
  get selectedCountryGet() {
147
147
  const list = this.countriesToShowGet;
148
- if (!list.find(c => c.iso2 === this.selectedCountry.iso2)) {
148
+ if (this.selectedCountry && !list.find(c => c.iso2 === this.selectedCountry.iso2)) {
149
149
  this.selectedCountry = list[0];
150
150
  }
151
151
  return this.selectedCountry;
@@ -408,4 +408,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
408
408
  }], modelChange: [{
409
409
  type: Output
410
410
  }] } });
411
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtdGVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL2lucHV0LXRlbC9pbnB1dC10ZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtdGVsL2lucHV0LXRlbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxFQUNaLFVBQVUsRUFDVix1QkFBdUIsRUFDdkIsU0FBUyxFQUFxQixTQUFTLEVBQUUsTUFBTSxFQUNoRCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBcUIsTUFBTSxxQkFBcUIsQ0FBQztBQUVsRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUd0RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0UsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxFQUFFLElBQUksTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXBDLE9BQU8sRUFBRSxpQkFBaUIsRUFBc0IsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7Ozs7QUFrQmpGLE1BQU0sT0FBTyxpQkFBaUI7SUFzRDVCLFlBQ1UsU0FBNEIsRUFDakIsTUFBYztRQUR6QixjQUFTLEdBQVQsU0FBUyxDQUFtQjtRQXBEdEMsYUFBYTtRQUNOLFNBQUksR0FBVyxNQUFNLEVBQUUsQ0FBQztRQUNm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bUJBQW1CO2dCQUVwQixPQUFPO3NCQUFoQixNQUFNO2dCQUNVLFdBQVc7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBPbkluaXQsXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBmb3J3YXJkUmVmLFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIFZpZXdDaGlsZCwgQ2hhbmdlRGV0ZWN0b3JSZWYsIExPQ0FMRV9JRCwgSW5qZWN0LCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXNcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgZ2V0QXNZb3VUeXBlLCBnZXRFeGFtcGxlLCBQYXJzZWRQaG9uZU51bWJlciB9IGZyb20gJ2F3ZXNvbWUtcGhvbmVudW1iZXInO1xyXG5pbXBvcnQgeyBDb3VudHJpZXNJU08gfSBmcm9tICcuL2RhdGEvY291bnRyeS1pc28uZW51bSc7XHJcbmltcG9ydCB7IFNlYXJjaENvdW50cnlGaWVsZCB9IGZyb20gJy4vZGF0YS9zZWFyY2gtY291bnRyeS1maWVsZC5lbnVtJztcclxuaW1wb3J0IHsgUGhvbmVOdW1iZXJGb3JtYXRUeXBlIH0gZnJvbSAnLi9kYXRhL3Bob25lLW51bWJlci1mb3JtYXQuZW51bSc7XHJcbmltcG9ydCB7IENvdW50cnksIElucHV0VmFsdWUgfSBmcm9tICcuL21vZGVscy9jb3VudHJ5Lm1vZGVsJztcclxuaW1wb3J0IHsgY291bnRyeURhdGEgfSBmcm9tICcuL2RhdGEvYWxsLWNvdW50cmllcyc7XHJcbmltcG9ydCB7IGRyb3Bkb3duT3BlbiwgZHJvcGRvd25DbG9zZSwgZmxhZ1BsYWNlaG9sZGVyIH0gZnJvbSAnLi9hc3NldHMvYmFzZTY0JztcclxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyB2NCBhcyB1dWlkdjQgfSBmcm9tICd1dWlkJztcclxuaW1wb3J0IHsgRmllbGQgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IElucHV0VGVsU2l6ZXNFbnVtLCBJbnB1dFRlbFNpemVzVHlwZXMgfSBmcm9tICcuL2VudW1zL2lucHV0LXBob25lLmVudW0nO1xyXG5pbXBvcnQgeyBJbnB1dFBob25lVmFsdWVXaXRoSWQgfSBmcm9tICcuLi9pbnB1dC1waG9uZS9lbnVtcy9pbnB1dC1waG9uZS5lbnVtJztcclxuaW1wb3J0IHsgRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuLi8uLi9kcm9wZG93bi9kcm9wZG93bi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb3VudHJpZXNSdXNMYWJlbCB9IGZyb20gJy4vZGF0YS9jb3VudHJpZXMtcnVzLWxhYmVsLmVudW0nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtcngtaW5wdXQtdGVsJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQtdGVsLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9pbnB1dC10ZWwuY29tcG9uZW50Lmxlc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IElucHV0VGVsQ29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICB9LFxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIElucHV0VGVsQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uSW5pdCB7XHJcbiAgcHJpdmF0ZSBfbG9jYWxlOiBzdHJpbmc7XHJcblxyXG4gIC8vIFNBVkUgU1RBVEVcclxuICBwdWJsaWMgdXVpZDogc3RyaW5nID0gdXVpZHY0KCk7XHJcbiAgQElucHV0KCkgcHVibGljIGZpZWxkczogRmllbGRbXSA9IFtdO1xyXG5cclxuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgbWF4TGVuZ3RoOiBudW1iZXIgfCBudWxsID0gbnVsbDtcclxuICBASW5wdXQoKSBwdWJsaWMgY3VzdG9tQ2xhc3NlcyA9ICcnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBzaXplOiBJbnB1dFRlbFNpemVzVHlwZXMgPSAnbGFyZ2UnO1xyXG5cclxuICBASW5wdXQoKSBjc3NDbGFzczogc3RyaW5nID0gJyc7XHJcbiAgQElucHV0KCkgcHJlZmVycmVkQ291bnRyaWVzOiAoQ291bnRyaWVzSVNPKVtdID0gW107XHJcbiAgQElucHV0KCkgb25seUNvdW50cmllczogKENvdW50cmllc0lTTylbXSA9IFtdO1xyXG4gIEBJbnB1dCgpIGVuYWJsZUF1dG9Db3VudHJ5U2VsZWN0OiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKSBlbmFibGVQbGFjZWhvbGRlcjogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KCkgY3VzdG9tUGxhY2Vob2xkZXI6IHN0cmluZyB8IG51bGwgPSBudWxsO1xyXG4gIEBJbnB1dCgpIG51bWJlckZvcm1hdDogUGhvbmVOdW1iZXJGb3JtYXRUeXBlID0gJ2ludGVybmF0aW9uYWwnO1xyXG4gIEBJbnB1dCgpIHNlYXJjaENvdW50cnlGbGFnOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2VhcmNoQ291bnRyeUZpZWxkOiBTZWFyY2hDb3VudHJ5RmllbGQgPSBTZWFyY2hDb3VudHJ5RmllbGQuQWxsO1xyXG4gIEBJbnB1dCgpIHNlYXJjaENvdW50cnlQbGFjZWhvbGRlcjogc3RyaW5nID0gJ9Cf0L7QuNGB0Log0L/QviDRgdGC0YDQsNC90LDQvCc7XHJcbiAgQElucHV0KCkgc2VsZWN0Rmlyc3RDb3VudHJ5OiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKSBwaG9uZVZhbGlkYXRpb246IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIGlucHV0SWQ6IHN0cmluZyA9ICdwaG9uZSc7XHJcbiAgQElucHV0KCkgc2VsZWN0ZWRDb3VudHJ5SVNPOiBDb3VudHJpZXNJU08gfCBudWxsID0gbnVsbDtcclxuICBASW5wdXQoKSBzZXBhcmF0ZURpYWxDb2RlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgYXV0b0RlYWxDb2RlID0gZmFsc2U7XHJcbiAgQElucHV0KCkgYXV0b0Nsb3NlRHJvcGRvd24gPSBmYWxzZTtcclxuXHJcbiAgLy8gVkFMSURBVElPTlxyXG4gIEBJbnB1dCgpIHB1YmxpYyBpbnZhbGlkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIGludmFsaWRNZXNzYWdlOiBzdHJpbmcgfCBzdHJpbmdbXSA9ICcnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBpbnZhbGlkUGhvbmVNZXNzYWdlOiBzdHJpbmcgPSAn0J3QtdC60L7RgNGA0LXQutGC0L3QvtC1INC30L3QsNGH0LXQvdC40LUnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBjaGVja0ludmFsaWQ6IHRydWUgfCBmYWxzZSB8IG51bGwgPSBudWxsO1xyXG5cclxuICBAVmlld0NoaWxkKCdkcm9wZG93bkNvbXBvbmVudCcpIGRyb3Bkb3duQ29tcG9uZW50ITogRHJvcGRvd25Db21wb25lbnQ7XHJcblxyXG4gIEBPdXRwdXQoKSBjaGFuZ2VkOiBFdmVudEVtaXR0ZXI8SW5wdXRWYWx1ZT4gPSBuZXcgRXZlbnRFbWl0dGVyPElucHV0VmFsdWU+KCk7XHJcbiAgQE91dHB1dCgpIHB1YmxpYyBtb2RlbENoYW5nZTogRXZlbnRFbWl0dGVyPElucHV0UGhvbmVWYWx1ZVdpdGhJZD4gPSBuZXcgRXZlbnRFbWl0dGVyPElucHV0UGhvbmVWYWx1ZVdpdGhJZD4oKTtcclxuXHJcbiAgcHVibGljIGFsbENvdW50cmllczogKENvdW50cnkpW107XHJcbiAgcHVibGljIHNlbGVjdGVkQ291bnRyeTogQ291bnRyeTtcclxuICBwdWJsaWMgc2VhcmNoRmlsdGVyOiBzdHJpbmc7XHJcbiAgcHVibGljIHNjcm9sbFRpbWVvdXQ6IGFueTtcclxuICBwdWJsaWMgcGhvbmVOdW1iZXI6IGFueTtcclxuICBwdWJsaWMgaXNGb2N1c2VkOiBib29sZWFuO1xyXG4gIHB1YmxpYyBpc0lucHV0VmFsaWQ6IGJvb2xlYW47XHJcbiAgcHVibGljIGlzRHJvcGRvd25PcGVuOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHBhcnNlZFBob25lTnVtYmVyPzogUGFyc2VkUGhvbmVOdW1iZXI7XHJcbiAgcHVibGljIGlubmVySW52YWxpZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBpbm5lckludmFsaWRNZXNzYWdlOiBzdHJpbmcgPSAnJztcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF9kZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBASW5qZWN0KExPQ0FMRV9JRCkgbG9jYWxlOiBzdHJpbmdcclxuICApIHtcclxuICAgIHRoaXMuYWxsQ291bnRyaWVzID0gW107XHJcbiAgICB0aGlzLnNlbGVjdGVkQ291bnRyeSA9IHRoaXMuZ2V0RGVmYXVsdENvdW50cnkoKTtcclxuICAgIHRoaXMuc2VhcmNoRmlsdGVyID0gJyc7XHJcbiAgICB0aGlzLnBob25lTnVtYmVyID0gbnVsbDtcclxuICAgIHRoaXMuaXNGb2N1c2VkID0gZmFsc2U7XHJcbiAgICB0aGlzLmlzSW5wdXRWYWxpZCA9IHRydWU7XHJcbiAgICB0aGlzLl9sb2NhbGUgPSBsb2NhbGU7XHJcbiAgfVxyXG5cclxuICB3cml0ZVZhbHVlKG91dHNpZGVWYWx1ZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBpZiAob3V0c2lkZVZhbHVlKSB7XHJcbiAgICAgIHRoaXMucGhvbmVOdW1iZXIgPSBvdXRzaWRlVmFsdWU7XHJcbiAgICAgIHRoaXMuZm9ybWF0UGhvbmVOdW1iZXIoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25DaGFuZ2UgPSAodmFsdWU6IGFueSkgPT4ge1xyXG4gIH07XHJcbiAgcHJpdmF0ZSBvblRvdWNoZWQgPSAoKSA9PiB7XHJcbiAgfTtcclxuXHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9pbml0RGF0YSgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfaW5pdERhdGEoKSB7XHJcbiAgICB0aGlzLmdlbmVyYXRlQ291bnRyeURhdGEoKTtcclxuICAgIHRoaXMuc2V0RGVmYXVsdFNlbGVjdGVkQ291bnRyeSgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfdmFsaWRhdGlvbihwYXJzZWROdW1iZXI6IFBhcnNlZFBob25lTnVtYmVyKTogYm9vbGVhbiB7XHJcbiAgICBpZiAoIXRoaXMuc2VsZWN0ZWRDb3VudHJ5KSByZXR1cm4gZmFsc2U7XHJcbiAgICBjb25zdCBzZWxlY3RlZENvdW50cnkgPSB0aGlzLmZpbmRDb3VudHJ5QnlJc28yKHRoaXMuc2VsZWN0ZWRDb3VudHJ5LmlzbzIpO1xyXG5cclxuICAgIGlmIChwYXJzZWROdW1iZXIubnVtYmVyPy5pbnRlcm5hdGlvbmFsIHx8IHBhcnNlZE51bWJlci5udW1iZXI/Lm5hdGlvbmFsKSB7XHJcbiAgICAgIGlmIChwYXJzZWROdW1iZXIubnVtYmVyLmludGVybmF0aW9uYWwpIHtcclxuICAgICAgICBjb25zdCBwaG9uZSA9IHBhcnNlZE51bWJlci5udW1iZXIuaW50ZXJuYXRpb25hbC50cmltKCk7XHJcbiAgICAgICAgY29uc3QgYSA9IHBob25lLnN0YXJ0c1dpdGgoJysnKSA/IHBob25lLnN1YnN0cmluZygxKS50cmltKCkgOiBwaG9uZTtcclxuICAgICAgICBjb25zdCBiID0gYS5zdGFydHNXaXRoKHNlbGVjdGVkQ291bnRyeS5kaWFsQ29kZSkgPyBhLnN1YnN0cmluZyhzZWxlY3RlZENvdW50cnkuZGlhbENvZGUubGVuZ3RoKS50cmltKCkgOiBhO1xyXG5cclxuICAgICAgICByZXR1cm4gQm9vbGVhbihzZWxlY3RlZENvdW50cnk/LmFyZWFDb2Rlcz8uZmlsdGVyKChjb2RlOiBzdHJpbmcpID0+IGIuc3RhcnRzV2l0aChjb2RlKSkubGVuZ3RoKTtcclxuICAgICAgfSBlbHNlIGlmIChwYXJzZWROdW1iZXIubnVtYmVyLm5hdGlvbmFsKSB7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBnZXRDbGFzc2VzKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gYCR7SW5wdXRUZWxTaXplc0VudW1bdGhpcy5zaXplXX0gJHt0aGlzLmN1c3RvbUNsYXNzZXN9ICR7dGhpcy5jaGVja1ZhbGlkQ2xhc3Nlc31gO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBpc1ZhbGlkKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGlzSW52YWxpZE1lc3NhZ2UoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gISF0aGlzLmludmFsaWRNZXNzYWdlIHx8ICEhdGhpcy5pbnZhbGlkTWVzc2FnZS5sZW5ndGg7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGNoZWNrVmFsaWRDbGFzc2VzKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5jaGVja0ludmFsaWQgPT09IGZhbHNlID9cclxuICAgICAgJ21yeC1pbnB1dC1jaGVja2VkLXN1Y2Nlc3MnIDpcclxuICAgICAgdGhpcy5jaGVja0ludmFsaWQgPT09IHRydWUgPyAnbXJ4LWlucHV0LWNoZWNrZWQtZXJyb3InIDogJyc7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IHByZWZlcnJlZENvdW50cmllc0xpc3RHZXQoKTogKENvdW50cnkpW10ge1xyXG4gICAgY29uc3QgbGlzdDogKENvdW50cnkpW10gPSBbXVxyXG5cclxuICAgIGZvciAobGV0IGNvdW50cnkgb2YgdGhpcy5wcmVmZXJyZWRDb3VudHJpZXMpIHtcclxuICAgICAgY29uc3QgZmluZCA9IHRoaXMuY291bnRyaWVzVG9TaG93R2V0LmZpbmQoY29uID0+IGNvbi5pc28yID09IGNvdW50cnkpXHJcblxyXG4gICAgICBpZiAoZmluZCkge1xyXG4gICAgICAgIGxpc3QucHVzaChmaW5kKVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGxpc3RcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgY291bnRyaWVzVG9TaG93R2V0KCk6IChDb3VudHJ5KVtdIHtcclxuICAgIGNvbnN0IGxpc3Q6IChDb3VudHJ5KVtdID0gW11cclxuXHJcbiAgICBpZiAodGhpcy5vbmx5Q291bnRyaWVzLmxlbmd0aCkge1xyXG4gICAgICBmb3IgKGxldCBjb3VudHJ5IG9mIHRoaXMub25seUNvdW50cmllcykge1xyXG4gICAgICAgIGNvbnN0IGZpbmQgPSB0aGlzLmFsbENvdW50cmllcy5maW5kKGNvbiA9PiBjb24uaXNvMiA9PSBjb3VudHJ5KVxyXG5cclxuICAgICAgICBpZiAoZmluZCkge1xyXG4gICAgICAgICAgbGlzdC5wdXNoKGZpbmQpXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICByZXR1cm4gbGlzdFxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIHRoaXMuYWxsQ291bnRyaWVzXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IHNlbGVjdGVkQ291bnRyeUdldCgpOiBDb3VudHJ5IHtcclxuICAgIGNvbnN0IGxpc3QgPSB0aGlzLmNvdW50cmllc1RvU2hvd0dldFxyXG5cclxuICAgIGlmICghbGlzdC5maW5kKGMgPT4gYy5pc28yID09PSB0aGlzLnNlbGVjdGVkQ291bnRyeS5pc28yKSkge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkQ291bnRyeSA9IGxpc3RbMF1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZENvdW50cnlcclxuICB9XHJcblxyXG4gIHB1YmxpYyB0b2dnbGVEcm9wZG93bigpIHtcclxuICAgIHRoaXMuaXNEcm9wZG93bk9wZW4gPSAhdGhpcy5pc0Ryb3Bkb3duT3BlbjtcclxuICAgIHRoaXMuZHJvcGRvd25Db21wb25lbnQuaGlkZSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdlbmVyYXRlQ291bnRyeURhdGEoKSB7XHJcbiAgICB0aGlzLmFsbENvdW50cmllcyA9IGNvdW50cnlEYXRhLm1hcChjb24gPT4ge1xyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgIG5hbWU6IHRoaXMuX2xvY2FsZSA9PT0gJ3J1JyA/IGNvbls1XS50b1N0cmluZygpIDogY29uWzBdLnRvU3RyaW5nKCksXHJcbiAgICAgICAgaXNvMjogY29uWzFdLnRvU3RyaW5nKCksXHJcbiAgICAgICAgZGlhbENvZGU6IGNvblsyXS50b1N0cmluZygpLFxyXG4gICAgICAgIHByaW9yaXR5OiArY29uWzNdIHx8IDAsXHJcbiAgICAgICAgYXJlYUNvZGVzOiAoY29uWzRdIGFzIHN0cmluZ1tdKSB8fCB1bmRlZmluZWQsXHJcbiAgICAgICAgaHRtbElkOiBgJHt0aGlzLnV1aWR9LSR7Y29uWzFdLnRvU3RyaW5nKCl9YCxcclxuICAgICAgICBmbGFnQ2xhc3M6IGBmbGFnX18ke2NvblsxXS50b1N0cmluZygpfWAsXHJcbiAgICAgICAgcGxhY2VIb2xkZXI6ICcnLFxyXG4gICAgICB9O1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0RGVmYXVsdENvdW50cnkoKTogQ291bnRyeSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAnbmFtZSc6ICcnLFxyXG4gICAgICAnaXNvMic6ICcnLFxyXG4gICAgICAnZGlhbENvZGUnOiAnJyxcclxuICAgICAgJ3ByaW9yaXR5JzogMCxcclxuICAgICAgJ2h0bWxJZCc6ICcnLFxyXG4gICAgICAnZmxhZ0NsYXNzJzogZmxhZ1BsYWNlaG9sZGVyLFxyXG4gICAgICAncGxhY2VIb2xkZXInOiAnJyxcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGZvcm1hdEludGVsTnVtYmVyKG51bWJlcjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGlmICh0aGlzLmF1dG9EZWFsQ29kZSkge1xyXG4gICAgICByZXR1cm4gbnVtYmVyO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgaW5kZXhUb1NwbGl0ID0gbnVtYmVyLmluZGV4T2YoJyAnKSArIDE7XHJcbiAgICAgIHJldHVybiB0aGlzLnNlcGFyYXRlRGlhbENvZGUgPyBudW1iZXIuc3Vic3RyaW5nKGluZGV4VG9TcGxpdCkgOiBudW1iZXI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZm9ybWF0UGhvbmVOdW1iZXIoKSB7XHJcbiAgICBjb25zdCBheXQgPSBnZXRBc1lvdVR5cGUodGhpcy5zZWxlY3RlZENvdW50cnk/LmlzbzIudG9VcHBlckNhc2UoKSk7XHJcbiAgICBheXQucmVzZXQodGhpcy5waG9uZU51bWJlcik7XHJcbiAgICBjb25zdCByZXM6IFBhcnNlZFBob25lTnVtYmVyID0gYXl0LmdldFBob25lTnVtYmVyKCk7XHJcblxyXG4gICAgdGhpcy5wYXJzZWRQaG9uZU51bWJlciA9IHJlcztcclxuXHJcbiAgICBpZiAodGhpcy5udW1iZXJGb3JtYXQgPT09ICdpbnRlcm5hdGlvbmFsJykge1xyXG4gICAgICB0aGlzLnBob25lTnVtYmVyID0gcmVzLm51bWJlcj8uaW50ZXJuYXRpb25hbCA/IHRoaXMuZm9ybWF0SW50ZWxOdW1iZXIocmVzLm51bWJlci5pbnRlcm5hdGlvbmFsKSA6IHRoaXMucGhvbmVOdW1iZXI7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnBob25lTnVtYmVyID0gcmVzLm51bWJlcj8ubmF0aW9uYWwgPyByZXMubnVtYmVyLm5hdGlvbmFsIDogdGhpcy5waG9uZU51bWJlcjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5udW1iZXJGb3JtYXQgPT09ICdpbnRlcm5hdGlvbmFsJykge1xyXG4gICAgICBpZiAodGhpcy5lbmFibGVBdXRvQ291bnRyeVNlbGVjdCAmJiByZXMucmVnaW9uQ29kZSAhPSB0aGlzLnNlbGVjdGVkQ291bnRyeT8uaXNvMi50b1VwcGVyQ2FzZSgpKSB7XHJcbiAgICAgICAgcmVzLnJlZ2lvbkNvZGUgJiYgKHRoaXMuc2VsZWN0ZWRDb3VudHJ5ID0gdGhpcy5maW5kQ291bnRyeUJ5SXNvMihyZXMucmVnaW9uQ29kZSkpO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAodGhpcy5lbmFibGVBdXRvQ291bnRyeVNlbGVjdCAmJiByZXMucmVnaW9uQ29kZSAhPSB0aGlzLnNlbGVjdGVkQ291bnRyeT8uaXNvMi50b1VwcGVyQ2FzZSgpKSB7XHJcblxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCFyZXMudmFsaWQgfHwgcmVzLnJlZ2lvbkNvZGUgIT0gdGhpcy5zZWxlY3RlZENvdW50cnk/LmlzbzIudG9VcHBlckNhc2UoKSkge1xyXG4gICAgICB0aGlzLmlzSW5wdXRWYWxpZCA9IHRoaXMuX3ZhbGlkYXRpb24ocmVzKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuaXNJbnB1dFZhbGlkID0gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZWFyY2hGaWx0ZXJDaGFuZ2VkKGV2ZW50OiBhbnkpIHtcclxuICAgIC8vIGlmICh0aGlzLnNjcm9sbFRpbWVvdXQpIGNsZWFyVGltZW91dCh0aGlzLnNjcm9sbFRpbWVvdXQpO1xyXG4gICAgLy9cclxuICAgIC8vIGxldCBmaWx0ZXJlZDogQ291bnRyeVtdO1xyXG4gICAgLy8gaWYgKHRoaXMuc2VhcmNoQ291bnRyeUZpZWxkID09ICduYW1lJykge1xyXG4gICAgLy8gICBmaWx0ZXJlZCA9IHRoaXMuY291bnRyaWVzVG9TaG93LmZpbHRlcihjb24gPT4gY29uLm5hbWUudG9Mb3dlckNhc2UoKS5zdGFydHNXaXRoKHRoaXMuc2VhcmNoRmlsdGVyLnRvTG93ZXJDYXNlKCkpKTtcclxuICAgIC8vIH0gZWxzZSBpZiAodGhpcy5zZWFyY2hDb3VudHJ5RmllbGQgPT0gJ2lzbzInKSB7XHJcbiAgICAvLyAgIGZpbHRlcmVkID0gdGhpcy5jb3VudHJpZXNUb1Nob3cuZmlsdGVyKGNvbiA9PiBjb24uaXNvMi5zdGFydHNXaXRoKHRoaXMuc2VhcmNoRmlsdGVyLnRvTG93ZXJDYXNlKCkpKTtcclxuICAgIC8vIH0gZWxzZSBpZiAodGhpcy5zZWFyY2hDb3VudHJ5RmllbGQgPT0gJ2RpYWxDb2RlJykge1xyXG4gICAgLy8gICBmaWx0ZXJlZCA9IHRoaXMuY291bnRyaWVzVG9TaG93LmZpbHRlcihjb24gPT4gY29uLmRpYWxDb2RlLnN0YXJ0c1dpdGgodGhpcy5zZWFyY2hGaWx0ZXIpKTtcclxuICAgIC8vIH0gZWxzZSB7XHJcbiAgICAvLyAgIGZpbHRlcmVkID0gdGhpcy5jb3VudHJpZXNUb1Nob3cuZmlsdGVyKGNvbiA9PiBjb24ubmFtZS50b0xvd2VyQ2FzZSgpLnN0YXJ0c1dpdGgodGhpcy5zZWFyY2hGaWx0ZXIudG9Mb3dlckNhc2UoKSkgfHwgY29uLmRpYWxDb2RlLnN0YXJ0c1dpdGgodGhpcy5zZWFyY2hGaWx0ZXIpIHx8IGNvbi5pc28yLnN0YXJ0c1dpdGgodGhpcy5zZWFyY2hGaWx0ZXIudG9Mb3dlckNhc2UoKSkpO1xyXG4gICAgLy8gfVxyXG4gICAgLy9cclxuICAgIC8vIGlmICghZmlsdGVyZWQubGVuZ3RoKSByZXR1cm47XHJcbiAgICAvLyB0aGlzLnNjcm9sbFRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgIC8vICAgY29uc3QgZWw6IGFueSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGZpbHRlcmVkWzBdLmh0bWxJZCk7XHJcbiAgICAvLyAgIGVsLnNjcm9sbEludG9WaWV3KCk7XHJcbiAgICAvLyB9LCAxKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZmluZENvdW50cnlCeUlzbzIoaXNvMjogc3RyaW5nKTogQ291bnRyeSB8IGFueSB7XHJcbiAgICByZXR1cm4gdGhpcy5jb3VudHJpZXNUb1Nob3dHZXQuZmluZChjb24gPT4gY29uLmlzbzIgPT0gaXNvMi50b0xvd2VyQ2FzZSgpKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXREZWZhdWx0U2VsZWN0ZWRDb3VudHJ5KCkge1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRDb3VudHJ5SVNPKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRDb3VudHJ5ID0gdGhpcy5maW5kQ291bnRyeUJ5SXNvMih0aGlzLnNlbGVjdGVkQ291bnRyeUlTTyk7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuc2VsZWN0Rmlyc3RDb3VudHJ5KSB7XHJcbiAgICAgIGNvbnN0IGxpc3QgPSB0aGlzLnByZWZlcnJlZENvdW50cmllc0xpc3RHZXRcclxuXHJcbiAgICAgIGlmIChsaXN0Lmxlbmd0aCkge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRDb3VudHJ5ID0gbGlzdFswXVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRDb3VudHJ5ID0gdGhpcy5jb3VudHJpZXNUb1Nob3dHZXRbMF1cclxuICAgICAgfVxyXG5cclxuICAgIH0gZWxzZSB0aGlzLnNlbGVjdGVkQ291bnRyeSA9IHRoaXMuZ2V0RGVmYXVsdENvdW50cnkoKTtcclxuXHJcbiAgICB0aGlzLnNlbGVjdGVkQ291bnRyeS5wbGFjZUhvbGRlciA9IHRoaXMuZ2V0UGxhY2VIb2xkZXIoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkNvdW50cnlTZWxlY3QoY291bnRyeTogYW55KSB7XHJcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkgcmV0dXJuO1xyXG5cclxuICAgIHRoaXMuc2VsZWN0ZWRDb3VudHJ5ID0gY291bnRyeTtcclxuICAgIHRoaXMuc2VsZWN0ZWRDb3VudHJ5LnBsYWNlSG9sZGVyID0gdGhpcy5nZXRQbGFjZUhvbGRlcigpO1xyXG4gICAgdGhpcy5zZWFyY2hGaWx0ZXIgPSAnJztcclxuICAgIHRoaXMucGhvbmVOdW1iZXIgPSAnJztcclxuICAgIHRoaXMuaXNJbnB1dFZhbGlkID0gdHJ1ZTtcclxuICAgIHRoaXMuaXNGb2N1c2VkID0gZmFsc2U7XHJcblxyXG4gICAgaWYgKHRoaXMuYXV0b0Nsb3NlRHJvcGRvd24pIHtcclxuICAgICAgdGhpcy50b2dnbGVEcm9wZG93bigpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMudXBkYXRlVmFsdWUoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0TnVtYmVyRXhhbXBsZSgpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgZm9ybWF0RXhhbXBsZU51bWJlciA9IChudW1iZXI6IHN0cmluZyk6IHN0cmluZyA9PiB7XHJcbiAgICAgIHJldHVybiBudW1iZXI7XHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0IGV4YW1wbGVOdW1iZXIgPSB0aGlzLm51bWJlckZvcm1hdCA9PT0gJ2ludGVybmF0aW9uYWwnID9cclxuICAgICAgdGhpcy5mb3JtYXRJbnRlbE51bWJlcihnZXRFeGFtcGxlKHRoaXMuc2VsZWN0ZWRDb3VudHJ5LmlzbzIudG9VcHBlckNhc2UoKSwgJ21vYmlsZScpLm51bWJlcj8uaW50ZXJuYXRpb25hbCB8fCAnJykgOlxyXG4gICAgICB0aGlzLmZvcm1hdEludGVsTnVtYmVyKGdldEV4YW1wbGUodGhpcy5zZWxlY3RlZENvdW50cnkuaXNvMi50b1VwcGVyQ2FzZSgpLCAnbW9iaWxlJykubnVtYmVyPy5uYXRpb25hbCB8fCAnJyk7XHJcblxyXG4gICAgcmV0dXJuIGZvcm1hdEV4YW1wbGVOdW1iZXIoZXhhbXBsZU51bWJlcik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0UGxhY2VIb2xkZXIoKTogc3RyaW5nIHtcclxuICAgIGlmICghdGhpcy5lbmFibGVQbGFjZWhvbGRlcikgcmV0dXJuICcnO1xyXG4gICAgaWYgKHRoaXMuY3VzdG9tUGxhY2Vob2xkZXIpIHJldHVybiB0aGlzLmN1c3RvbVBsYWNlaG9sZGVyO1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRDb3VudHJ5LmlzbzIgPT0gJycpIHJldHVybiAnJztcclxuXHJcbiAgICByZXR1cm4gdGhpcy5nZXROdW1iZXJFeGFtcGxlKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0RHJvcGRvd25JY29uUGF0aCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuaXNEcm9wZG93bk9wZW4gPyBkcm9wZG93bkNsb3NlIDogZHJvcGRvd25PcGVuO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uUGhvbmVJbnB1dEZvY3VzKCkge1xyXG4gICAgaWYgKCF0aGlzLmF1dG9EZWFsQ29kZSkgcmV0dXJuO1xyXG4gICAgaWYgKHRoaXMuaXNGb2N1c2VkIHx8ICh0aGlzLnNlcGFyYXRlRGlhbENvZGUgJiYgdGhpcy5udW1iZXJGb3JtYXQgPT09ICdpbnRlcm5hdGlvbmFsJykgfHwgdGhpcy5udW1iZXJGb3JtYXQgPT09ICduYXRpb25hbCcgfHwgdGhpcy5waG9uZU51bWJlcikgcmV0dXJuO1xyXG4gICAgdGhpcy5waG9uZU51bWJlciA9ICcrJyArIHRoaXMuc2VsZWN0ZWRDb3VudHJ5LmRpYWxDb2RlICsgJyAnO1xyXG4gICAgdGhpcy5pc0ZvY3VzZWQgPSB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uUGhvbmVJbnB1dEJsdXIoKSB7XHJcbiAgICBpZiAoIXRoaXMuaXNJbnB1dFZhbGlkICYmIHRoaXMucGhvbmVOdW1iZXIgIT09ICcnKSB7XHJcbiAgICAgIHRoaXMuaW5uZXJJbnZhbGlkID0gdHJ1ZTtcclxuICAgICAgdGhpcy5pbm5lckludmFsaWRNZXNzYWdlID0gdGhpcy5pbnZhbGlkUGhvbmVNZXNzYWdlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfcmVzZXRWYWxpZGF0ZSgpIHtcclxuICAgIHRoaXMuaW5uZXJJbnZhbGlkID0gZmFsc2U7XHJcbiAgICB0aGlzLmlubmVySW52YWxpZE1lc3NhZ2UgPSAnJztcclxuICB9XHJcblxyXG4gIHB1YmxpYyB1cGRhdGVWYWx1ZSgpIHtcclxuICAgIHRoaXMuX3Jlc2V0VmFsaWRhdGUoKTtcclxuICAgIHRoaXMuZm9ybWF0UGhvbmVOdW1iZXIoKTtcclxuXHJcbiAgICBjb25zdCBvdXRzaWRlVmFsdWUgPSB7XHJcbiAgICAgIHBob25lTnVtYmVyOiB0aGlzLnBob25lTnVtYmVyLFxyXG4gICAgICB1bkZvcm1hdHRlZE51bWJlcjogdGhpcy5waG9uZU51bWJlci5yZXBsYWNlKC9bXFxzLSgpXS9nLCAnJyksXHJcbiAgICAgIHNlbGVjdGVkQ291bnRyeTogdGhpcy5zZWxlY3RlZENvdW50cnk/Lm5hbWUgfHwgJycsXHJcbiAgICAgIGlzbzJDb2RlOiB0aGlzLnNlbGVjdGVkQ291bnRyeT8uaXNvMiB8fCAnJyxcclxuICAgICAgZGlhbENvZGU6IHRoaXMuc2VsZWN0ZWRDb3VudHJ5Py5kaWFsQ29kZSB8fCAnJyxcclxuICAgICAgbnVtYmVyRm9ybWF0OiB0aGlzLm51bWJlckZvcm1hdCxcclxuICAgICAgaXNOdW1iZXJWYWxpZDogdGhpcy5pc0lucHV0VmFsaWQsXHJcbiAgICB9O1xyXG5cclxuICAgIHRoaXMuY2hhbmdlZC5lbWl0KG91dHNpZGVWYWx1ZSk7XHJcbiAgICB0aGlzLm1vZGVsQ2hhbmdlLmVtaXQoe3ZhbHVlOiBvdXRzaWRlVmFsdWUsIGlkOiB0aGlzLnV1aWR9KTtcclxuICAgIHRoaXMub25DaGFuZ2Uob3V0c2lkZVZhbHVlKTtcclxuICAgIHRoaXMub25Ub3VjaGVkKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXZcclxuICBjbGFzcz1cIm1yeC1pbnB1dC10ZWxcIlxyXG4gIFtjbGFzc109XCJnZXRDbGFzc2VzXCJcclxuICBbY2xhc3MubXJ4LWlucHV0LWVycm9yXT1cImludmFsaWRcIlxyXG4gIFtjbGFzcy4tZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gIFtjbGFzcy4tcmVhZG9ubHldPVwicmVhZG9ubHlcIlxyXG4+XHJcbiAgPGRpdiBjbGFzcz1cIm1yeC1pbnB1dC10ZWxfX3dyYXBwZXJcIj5cclxuICAgICAgPGlucHV0XHJcbiAgICAgICAgZm9ybWF0dGVyUGhvbmVcclxuICAgICAgICBbaWRdPVwiaW5wdXRJZFwiXHJcbiAgICAgICAgdHlwZT1cInRlbFwiXHJcbiAgICAgICAgY2xhc3M9XCJwaG9uZUlucHV0IHt7Y3NzQ2xhc3N9fVwiXHJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJwaG9uZU51bWJlclwiXHJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgICAgICBbcmVhZE9ubHldPVwicmVhZG9ubHlcIlxyXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJzZWxlY3RlZENvdW50cnlHZXQ/LnBsYWNlSG9sZGVyIHx8ICcnXCJcclxuICAgICAgICBbY2xhc3MuaW5WYWxpZF09XCJwaG9uZVZhbGlkYXRpb24gJiYgIWlzSW5wdXRWYWxpZFwiXHJcbiAgICAgICAgW2N1c3RvbU1heExlbmd0aF09XCJtYXhMZW5ndGhcIlxyXG4gICAgICAgIFtwYXJzZWRQaG9uZU51bWJlcl09XCJwYXJzZWRQaG9uZU51bWJlclwiXHJcbiAgICAgICAgKGZvY3VzKT1cIm9uUGhvbmVJbnB1dEZvY3VzKClcIlxyXG4gICAgICAgIChibHVyKT1cIm9uUGhvbmVJbnB1dEJsdXIoKVwiXHJcbiAgICAgICAgKGNoYW5nZU1vZGVsKT1cInVwZGF0ZVZhbHVlKClcIlxyXG4gICAgICAvPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1yeC1pbnB1dC10ZWxfX2ZsYWctY29udGFpbmVyXCIgW2NsYXNzLmRpc2FibGVkXT1cImRpc2FibGVkXCI+XHJcbiAgICAgIDxtcngtZHJvcGRvd25cclxuICAgICAgICAjZHJvcGRvd25Db21wb25lbnRcclxuICAgICAgICBjdXN0b21DbGFzc2VzPVwiaC0xMDBcIlxyXG4gICAgICAgIFttYWluUGxhY2VtZW50XT1cIidib3R0b20tc3RhcnQnXCJcclxuICAgICAgICBbZmFsbGJhY2tQbGFjZW1lbnRzXT1cIlsndG9wLXN0YXJ0J11cIlxyXG4gICAgICA+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlICNkcm9wZG93blRvZ2dsZT5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtcngtaW5wdXQtdGVsX19zZWxlY3RlZC1mbGFnIGRyb3Bkb3duLXRvZ2dsZVwiPlxyXG4gICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJtcngtaW5wdXQtdGVsX19mbGFnXCJcclxuICAgICAgICAgICAgICBbbmdDbGFzc109XCJzZWxlY3RlZENvdW50cnlHZXQ/LmZsYWdDbGFzcyB8fCAnJ1wiXHJcbiAgICAgICAgICAgID48L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cInNlcGFyYXRlRGlhbENvZGVcIiBjbGFzcz1cInNlbGVjdGVkLWRpYWwtY29kZVwiPit7e3NlbGVjdGVkQ291bnRyeUdldD8uZGlhbENvZGV9fTwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXJ4LWlucHV0LXRlbF9fYXJyb3cgbXQtMVwiPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXJ4LWljb24gaWNvbi1jaGV2cm9uLWRvd25cIj48L3NwYW4+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICAgICAgPG5nLXRlbXBsYXRlICNkcm9wZG93bk1lbnU+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VhcmNoLWNvbnRhaW5lclwiICpuZ0lmPVwic2VhcmNoQ291bnRyeUZsYWcgJiYgc2VhcmNoQ291bnRyeUZpZWxkXCI+XHJcbiAgICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cInNlYXJjaEZpbHRlclwiXHJcbiAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwic2VhcmNoRmlsdGVyQ2hhbmdlZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cInt7IHNlYXJjaENvdW50cnlQbGFjZWhvbGRlciB9fVwiXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJzZWFyY2hDb3VudHJ5X19pbnB1dFwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICA8dWwgY2xhc3M9XCJtcngtaW5wdXQtdGVsX19jb3VudHJ5LWxpc3RcIiAjY291bnRyeUxpc3Q+XHJcbiAgICAgICAgICAgIDxsaSBjbGFzcz1cIm1yeC1pbnB1dC10ZWxfX2NvdW50cnkgaXRpX19wcmVmZXJyZWRcIlxyXG4gICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IHByZWZlcnJlZENvdW50cnkgb2YgcHJlZmVycmVkQ291bnRyaWVzTGlzdEdldFwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25Db3VudHJ5U2VsZWN0KHByZWZlcnJlZENvdW50cnkpXCJcclxuICAgICAgICAgICAgICAgIFtpZF09XCJwcmVmZXJyZWRDb3VudHJ5Lmh0bWxJZCsnLXByZWZlcnJlZCdcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1yeC1pbnB1dC10ZWxfX2ZsYWctYm94XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXJ4LWlucHV0LXRlbF9fZmxhZ1wiIFtuZ0NsYXNzXT1cInByZWZlcnJlZENvdW50cnkuZmxhZ0NsYXNzXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtcngtaW5wdXQtdGVsX19jb3VudHJ5LW5hbWVcIj57e3ByZWZlcnJlZENvdW50cnkubmFtZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXJ4LWlucHV0LXRlbF9fZGlhbC1jb2RlXCI+K3t7cHJlZmVycmVkQ291bnRyeS5kaWFsQ29kZX19PC9zcGFuPlxyXG4gICAgICAgICAgICA8L2xpPlxyXG5cclxuICAgICAgICAgICAgPGxpIGNsYXNzPVwibXJ4LWlucHV0LXRlbF9fZGl2aWRlclwiICpuZ0lmPVwicHJlZmVycmVkQ291bnRyaWVzTGlzdEdldD8ubGVuZ3RoXCI+PC9saT5cclxuXHJcbiAgICAgICAgICAgIDxsaSBjbGFzcz1cIm1yeC1pbnB1dC10ZWxfX2NvdW50cnkgaXRpX19zdGFuZGFyZFwiXHJcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgY291bnRyeSBvZiBjb3VudHJpZXNUb1Nob3dHZXRcIlxyXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ291bnRyeVNlbGVjdChjb3VudHJ5KVwiXHJcbiAgICAgICAgICAgICAgICBbaWRdPVwiY291bnRyeS5odG1sSWRcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXJ4LWlucHV0LXRlbF9fZmxhZy1ib3hcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtcngtaW5wdXQtdGVsX19mbGFnXCIgW25nQ2xhc3NdPVwiY291bnRyeS5mbGFnQ2xhc3NcIj48L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1yeC1pbnB1dC10ZWxfX2NvdW50cnktbmFtZVwiPnt7Y291bnRyeS5uYW1lfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtcngtaW5wdXQtdGVsX19kaWFsLWNvZGVcIj4re3tjb3VudHJ5LmRpYWxDb2RlfX08L3NwYW4+XHJcbiAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICA8L3VsPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDwvbXJ4LWRyb3Bkb3duPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxtcngtZXJyb3ItbWVzc2FnZVxyXG4gICAgKm5nSWY9XCIoIWlzVmFsaWQgfHwgaW5uZXJJbnZhbGlkIHx8IGludmFsaWQpICYmIGlzSW52YWxpZE1lc3NhZ2VcIlxyXG4gICAgW2ludmFsaWRNZXNzYWdlXT1cImlubmVySW52YWxpZE1lc3NhZ2UgfHwgaW52YWxpZE1lc3NhZ2VcIlxyXG4gID48L21yeC1lcnJvci1tZXNzYWdlPlxyXG5cclxuICA8bXJ4LXNhdmUtc3RhdGUgW2lkXT1cInV1aWRcIiBbZmllbGRzXT1cImZpZWxkc1wiPjwvbXJ4LXNhdmUtc3RhdGU+XHJcbjwvZGl2PlxyXG5cclxuIl19
411
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtdGVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL2lucHV0LXRlbC9pbnB1dC10ZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtdGVsL2lucHV0LXRlbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxFQUNaLFVBQVUsRUFDVix1QkFBdUIsRUFDdkIsU0FBUyxFQUFxQixTQUFTLEVBQUUsTUFBTSxFQUNoRCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBcUIsTUFBTSxxQkFBcUIsQ0FBQztBQUVsRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUd0RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0UsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxFQUFFLElBQUksTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXBDLE9BQU8sRUFBRSxpQkFBaUIsRUFBc0IsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7Ozs7QUFrQmpGLE1BQU0sT0FBTyxpQkFBaUI7SUFzRDVCLFlBQ1UsU0FBNEIsRUFDakIsTUFBYztRQUR6QixjQUFTLEdBQVQsU0FBUyxDQUFtQjtRQXBEdEMsYUFBYTtRQUNOLFNBQUksR0FBVyxNQUFNLEVBQUUsQ0FBQztRQUNm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QjtzQkFBaEQsU0FBUzt1QkFBQyxtQkFBbUI7Z0JBRXBCLE9BQU87c0JBQWhCLE1BQU07Z0JBQ1UsV0FBVztzQkFBM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIE9uSW5pdCxcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIGZvcndhcmRSZWYsXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgVmlld0NoaWxkLCBDaGFuZ2VEZXRlY3RvclJlZiwgTE9DQUxFX0lELCBJbmplY3QsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlc1xyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBnZXRBc1lvdVR5cGUsIGdldEV4YW1wbGUsIFBhcnNlZFBob25lTnVtYmVyIH0gZnJvbSAnYXdlc29tZS1waG9uZW51bWJlcic7XHJcbmltcG9ydCB7IENvdW50cmllc0lTTyB9IGZyb20gJy4vZGF0YS9jb3VudHJ5LWlzby5lbnVtJztcclxuaW1wb3J0IHsgU2VhcmNoQ291bnRyeUZpZWxkIH0gZnJvbSAnLi9kYXRhL3NlYXJjaC1jb3VudHJ5LWZpZWxkLmVudW0nO1xyXG5pbXBvcnQgeyBQaG9uZU51bWJlckZvcm1hdFR5cGUgfSBmcm9tICcuL2RhdGEvcGhvbmUtbnVtYmVyLWZvcm1hdC5lbnVtJztcclxuaW1wb3J0IHsgQ291bnRyeSwgSW5wdXRWYWx1ZSB9IGZyb20gJy4vbW9kZWxzL2NvdW50cnkubW9kZWwnO1xyXG5pbXBvcnQgeyBjb3VudHJ5RGF0YSB9IGZyb20gJy4vZGF0YS9hbGwtY291bnRyaWVzJztcclxuaW1wb3J0IHsgZHJvcGRvd25PcGVuLCBkcm9wZG93bkNsb3NlLCBmbGFnUGxhY2Vob2xkZXIgfSBmcm9tICcuL2Fzc2V0cy9iYXNlNjQnO1xyXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IHY0IGFzIHV1aWR2NCB9IGZyb20gJ3V1aWQnO1xyXG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgSW5wdXRUZWxTaXplc0VudW0sIElucHV0VGVsU2l6ZXNUeXBlcyB9IGZyb20gJy4vZW51bXMvaW5wdXQtcGhvbmUuZW51bSc7XHJcbmltcG9ydCB7IElucHV0UGhvbmVWYWx1ZVdpdGhJZCB9IGZyb20gJy4uL2lucHV0LXBob25lL2VudW1zL2lucHV0LXBob25lLmVudW0nO1xyXG5pbXBvcnQgeyBEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvdW50cmllc1J1c0xhYmVsIH0gZnJvbSAnLi9kYXRhL2NvdW50cmllcy1ydXMtbGFiZWwuZW51bSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ21yeC1pbnB1dC10ZWwnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnB1dC10ZWwuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2lucHV0LXRlbC5jb21wb25lbnQubGVzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gSW5wdXRUZWxDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgIH0sXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5wdXRUZWxDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25Jbml0IHtcclxuICBwcml2YXRlIF9sb2NhbGU6IHN0cmluZztcclxuXHJcbiAgLy8gU0FWRSBTVEFURVxyXG4gIHB1YmxpYyB1dWlkOiBzdHJpbmcgPSB1dWlkdjQoKTtcclxuICBASW5wdXQoKSBwdWJsaWMgZmllbGRzOiBGaWVsZFtdID0gW107XHJcblxyXG4gIEBJbnB1dCgpIHB1YmxpYyBkaXNhYmxlZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBtYXhMZW5ndGg6IG51bWJlciB8IG51bGwgPSBudWxsO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBjdXN0b21DbGFzc2VzID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIHNpemU6IElucHV0VGVsU2l6ZXNUeXBlcyA9ICdsYXJnZSc7XHJcblxyXG4gIEBJbnB1dCgpIGNzc0NsYXNzOiBzdHJpbmcgPSAnJztcclxuICBASW5wdXQoKSBwcmVmZXJyZWRDb3VudHJpZXM6IChDb3VudHJpZXNJU08pW10gPSBbXTtcclxuICBASW5wdXQoKSBvbmx5Q291bnRyaWVzOiAoQ291bnRyaWVzSVNPKVtdID0gW107XHJcbiAgQElucHV0KCkgZW5hYmxlQXV0b0NvdW50cnlTZWxlY3Q6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIGVuYWJsZVBsYWNlaG9sZGVyOiBib29sZWFuID0gdHJ1ZTtcclxuICBASW5wdXQoKSBjdXN0b21QbGFjZWhvbGRlcjogc3RyaW5nIHwgbnVsbCA9IG51bGw7XHJcbiAgQElucHV0KCkgbnVtYmVyRm9ybWF0OiBQaG9uZU51bWJlckZvcm1hdFR5cGUgPSAnaW50ZXJuYXRpb25hbCc7XHJcbiAgQElucHV0KCkgc2VhcmNoQ291bnRyeUZsYWc6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBzZWFyY2hDb3VudHJ5RmllbGQ6IFNlYXJjaENvdW50cnlGaWVsZCA9IFNlYXJjaENvdW50cnlGaWVsZC5BbGw7XHJcbiAgQElucHV0KCkgc2VhcmNoQ291bnRyeVBsYWNlaG9sZGVyOiBzdHJpbmcgPSAn0J/QvtC40YHQuiDQv9C+INGB0YLRgNCw0L3QsNC8JztcclxuICBASW5wdXQoKSBzZWxlY3RGaXJzdENvdW50cnk6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHBob25lVmFsaWRhdGlvbjogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KCkgaW5wdXRJZDogc3RyaW5nID0gJ3Bob25lJztcclxuICBASW5wdXQoKSBzZWxlY3RlZENvdW50cnlJU086IENvdW50cmllc0lTTyB8IG51bGwgPSBudWxsO1xyXG4gIEBJbnB1dCgpIHNlcGFyYXRlRGlhbENvZGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBhdXRvRGVhbENvZGUgPSBmYWxzZTtcclxuICBASW5wdXQoKSBhdXRvQ2xvc2VEcm9wZG93biA9IGZhbHNlO1xyXG5cclxuICAvLyBWQUxJREFUSU9OXHJcbiAgQElucHV0KCkgcHVibGljIGludmFsaWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgaW52YWxpZE1lc3NhZ2U6IHN0cmluZyB8IHN0cmluZ1tdID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIGludmFsaWRQaG9uZU1lc3NhZ2U6IHN0cmluZyA9ICfQndC10LrQvtGA0YDQtdC60YLQvdC+0LUg0LfQvdCw0YfQtdC90LjQtSc7XHJcbiAgQElucHV0KCkgcHVibGljIGNoZWNrSW52YWxpZDogdHJ1ZSB8IGZhbHNlIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2Ryb3Bkb3duQ29tcG9uZW50JykgZHJvcGRvd25Db21wb25lbnQhOiBEcm9wZG93bkNvbXBvbmVudDtcclxuXHJcbiAgQE91dHB1dCgpIGNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxJbnB1dFZhbHVlPiA9IG5ldyBFdmVudEVtaXR0ZXI8SW5wdXRWYWx1ZT4oKTtcclxuICBAT3V0cHV0KCkgcHVibGljIG1vZGVsQ2hhbmdlOiBFdmVudEVtaXR0ZXI8SW5wdXRQaG9uZVZhbHVlV2l0aElkPiA9IG5ldyBFdmVudEVtaXR0ZXI8SW5wdXRQaG9uZVZhbHVlV2l0aElkPigpO1xyXG5cclxuICBwdWJsaWMgYWxsQ291bnRyaWVzOiAoQ291bnRyeSlbXTtcclxuICBwdWJsaWMgc2VsZWN0ZWRDb3VudHJ5OiBDb3VudHJ5O1xyXG4gIHB1YmxpYyBzZWFyY2hGaWx0ZXI6IHN0cmluZztcclxuICBwdWJsaWMgc2Nyb2xsVGltZW91dDogYW55O1xyXG4gIHB1YmxpYyBwaG9uZU51bWJlcjogYW55O1xyXG4gIHB1YmxpYyBpc0ZvY3VzZWQ6IGJvb2xlYW47XHJcbiAgcHVibGljIGlzSW5wdXRWYWxpZDogYm9vbGVhbjtcclxuICBwdWJsaWMgaXNEcm9wZG93bk9wZW46IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgcGFyc2VkUGhvbmVOdW1iZXI/OiBQYXJzZWRQaG9uZU51bWJlcjtcclxuICBwdWJsaWMgaW5uZXJJbnZhbGlkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIGlubmVySW52YWxpZE1lc3NhZ2U6IHN0cmluZyA9ICcnO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgX2RldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIEBJbmplY3QoTE9DQUxFX0lEKSBsb2NhbGU6IHN0cmluZ1xyXG4gICkge1xyXG4gICAgdGhpcy5hbGxDb3VudHJpZXMgPSBbXTtcclxuICAgIHRoaXMuc2VsZWN0ZWRDb3VudHJ5ID0gdGhpcy5nZXREZWZhdWx0Q291bnRyeSgpO1xyXG4gICAgdGhpcy5zZWFyY2hGaWx0ZXIgPSAnJztcclxuICAgIHRoaXMucGhvbmVOdW1iZXIgPSBudWxsO1xyXG4gICAgdGhpcy5pc0ZvY3VzZWQgPSBmYWxzZTtcclxuICAgIHRoaXMuaXNJbnB1dFZhbGlkID0gdHJ1ZTtcclxuICAgIHRoaXMuX2xvY2FsZSA9IGxvY2FsZTtcclxuICB9XHJcblxyXG4gIHdyaXRlVmFsdWUob3V0c2lkZVZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGlmIChvdXRzaWRlVmFsdWUpIHtcclxuICAgICAgdGhpcy5waG9uZU51bWJlciA9IG91dHNpZGVWYWx1ZTtcclxuICAgICAgdGhpcy5mb3JtYXRQaG9uZU51bWJlcigpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBvbkNoYW5nZSA9ICh2YWx1ZTogYW55KSA9PiB7XHJcbiAgfTtcclxuICBwcml2YXRlIG9uVG91Y2hlZCA9ICgpID0+IHtcclxuICB9O1xyXG5cclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuX2luaXREYXRhKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9pbml0RGF0YSgpIHtcclxuICAgIHRoaXMuZ2VuZXJhdGVDb3VudHJ5RGF0YSgpO1xyXG4gICAgdGhpcy5zZXREZWZhdWx0U2VsZWN0ZWRDb3VudHJ5KCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF92YWxpZGF0aW9uKHBhcnNlZE51bWJlcjogUGFyc2VkUGhvbmVOdW1iZXIpOiBib29sZWFuIHtcclxuICAgIGlmICghdGhpcy5zZWxlY3RlZENvdW50cnkpIHJldHVybiBmYWxzZTtcclxuICAgIGNvbnN0IHNlbGVjdGVkQ291bnRyeSA9IHRoaXMuZmluZENvdW50cnlCeUlzbzIodGhpcy5zZWxlY3RlZENvdW50cnkuaXNvMik7XHJcblxyXG4gICAgaWYgKHBhcnNlZE51bWJlci5udW1iZXI/LmludGVybmF0aW9uYWwgfHwgcGFyc2VkTnVtYmVyLm51bWJlcj8ubmF0aW9uYWwpIHtcclxuICAgICAgaWYgKHBhcnNlZE51bWJlci5udW1iZXIuaW50ZXJuYXRpb25hbCkge1xyXG4gICAgICAgIGNvbnN0IHBob25lID0gcGFyc2VkTnVtYmVyLm51bWJlci5pbnRlcm5hdGlvbmFsLnRyaW0oKTtcclxuICAgICAgICBjb25zdCBhID0gcGhvbmUuc3RhcnRzV2l0aCgnKycpID8gcGhvbmUuc3Vic3RyaW5nKDEpLnRyaW0oKSA6IHBob25lO1xyXG4gICAgICAgIGNvbnN0IGIgPSBhLnN0YXJ0c1dpdGgoc2VsZWN0ZWRDb3VudHJ5LmRpYWxDb2RlKSA/IGEuc3Vic3RyaW5nKHNlbGVjdGVkQ291bnRyeS5kaWFsQ29kZS5sZW5ndGgpLnRyaW0oKSA6IGE7XHJcblxyXG4gICAgICAgIHJldHVybiBCb29sZWFuKHNlbGVjdGVkQ291bnRyeT8uYXJlYUNvZGVzPy5maWx0ZXIoKGNvZGU6IHN0cmluZykgPT4gYi5zdGFydHNXaXRoKGNvZGUpKS5sZW5ndGgpO1xyXG4gICAgICB9IGVsc2UgaWYgKHBhcnNlZE51bWJlci5udW1iZXIubmF0aW9uYWwpIHtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGdldENsYXNzZXMoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgJHtJbnB1dFRlbFNpemVzRW51bVt0aGlzLnNpemVdfSAke3RoaXMuY3VzdG9tQ2xhc3Nlc30gJHt0aGlzLmNoZWNrVmFsaWRDbGFzc2VzfWA7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGlzVmFsaWQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgaXNJbnZhbGlkTWVzc2FnZSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAhIXRoaXMuaW52YWxpZE1lc3NhZ2UgfHwgISF0aGlzLmludmFsaWRNZXNzYWdlLmxlbmd0aDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgY2hlY2tWYWxpZENsYXNzZXMoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmNoZWNrSW52YWxpZCA9PT0gZmFsc2UgP1xyXG4gICAgICAnbXJ4LWlucHV0LWNoZWNrZWQtc3VjY2VzcycgOlxyXG4gICAgICB0aGlzLmNoZWNrSW52YWxpZCA9PT0gdHJ1ZSA/ICdtcngtaW5wdXQtY2hlY2tlZC1lcnJvcicgOiAnJztcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgcHJlZmVycmVkQ291bnRyaWVzTGlzdEdldCgpOiAoQ291bnRyeSlbXSB7XHJcbiAgICBjb25zdCBsaXN0OiAoQ291bnRyeSlbXSA9IFtdXHJcblxyXG4gICAgZm9yIChsZXQgY291bnRyeSBvZiB0aGlzLnByZWZlcnJlZENvdW50cmllcykge1xyXG4gICAgICBjb25zdCBmaW5kID0gdGhpcy5jb3VudHJpZXNUb1Nob3dHZXQuZmluZChjb24gPT4gY29uLmlzbzIgPT0gY291bnRyeSlcclxuXHJcbiAgICAgIGlmIChmaW5kKSB7XHJcbiAgICAgICAgbGlzdC5wdXNoKGZpbmQpXHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gbGlzdFxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBjb3VudHJpZXNUb1Nob3dHZXQoKTogKENvdW50cnkpW10ge1xyXG4gICAgY29uc3QgbGlzdDogKENvdW50cnkpW10gPSBbXVxyXG5cclxuICAgIGlmICh0aGlzLm9ubHlDb3VudHJpZXMubGVuZ3RoKSB7XHJcbiAgICAgIGZvciAobGV0IGNvdW50cnkgb2YgdGhpcy5vbmx5Q291bnRyaWVzKSB7XHJcbiAgICAgICAgY29uc3QgZmluZCA9IHRoaXMuYWxsQ291bnRyaWVzLmZpbmQoY29uID0+IGNvbi5pc28yID09IGNvdW50cnkpXHJcblxyXG4gICAgICAgIGlmIChmaW5kKSB7XHJcbiAgICAgICAgICBsaXN0LnB1c2goZmluZClcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHJldHVybiBsaXN0XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gdGhpcy5hbGxDb3VudHJpZXNcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgc2VsZWN0ZWRDb3VudHJ5R2V0KCk6IENvdW50cnkge1xyXG4gICAgY29uc3QgbGlzdCA9IHRoaXMuY291bnRyaWVzVG9TaG93R2V0XHJcblxyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRDb3VudHJ5ICYmICFsaXN0LmZpbmQoYyA9PiBjLmlzbzIgPT09IHRoaXMuc2VsZWN0ZWRDb3VudHJ5LmlzbzIpKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRDb3VudHJ5ID0gbGlzdFswXVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0aGlzLnNlbGVjdGVkQ291bnRyeVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHRvZ2dsZURyb3Bkb3duKCkge1xyXG4gICAgdGhpcy5pc0Ryb3Bkb3duT3BlbiA9ICF0aGlzLmlzRHJvcGRvd25PcGVuO1xyXG4gICAgdGhpcy5kcm9wZG93bkNvbXBvbmVudC5oaWRlKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2VuZXJhdGVDb3VudHJ5RGF0YSgpIHtcclxuICAgIHRoaXMuYWxsQ291bnRyaWVzID0gY291bnRyeURhdGEubWFwKGNvbiA9PiB7XHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgbmFtZTogdGhpcy5fbG9jYWxlID09PSAncnUnID8gY29uWzVdLnRvU3RyaW5nKCkgOiBjb25bMF0udG9TdHJpbmcoKSxcclxuICAgICAgICBpc28yOiBjb25bMV0udG9TdHJpbmcoKSxcclxuICAgICAgICBkaWFsQ29kZTogY29uWzJdLnRvU3RyaW5nKCksXHJcbiAgICAgICAgcHJpb3JpdHk6ICtjb25bM10gfHwgMCxcclxuICAgICAgICBhcmVhQ29kZXM6IChjb25bNF0gYXMgc3RyaW5nW10pIHx8IHVuZGVmaW5lZCxcclxuICAgICAgICBodG1sSWQ6IGAke3RoaXMudXVpZH0tJHtjb25bMV0udG9TdHJpbmcoKX1gLFxyXG4gICAgICAgIGZsYWdDbGFzczogYGZsYWdfXyR7Y29uWzFdLnRvU3RyaW5nKCl9YCxcclxuICAgICAgICBwbGFjZUhvbGRlcjogJycsXHJcbiAgICAgIH07XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXREZWZhdWx0Q291bnRyeSgpOiBDb3VudHJ5IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgICduYW1lJzogJycsXHJcbiAgICAgICdpc28yJzogJycsXHJcbiAgICAgICdkaWFsQ29kZSc6ICcnLFxyXG4gICAgICAncHJpb3JpdHknOiAwLFxyXG4gICAgICAnaHRtbElkJzogJycsXHJcbiAgICAgICdmbGFnQ2xhc3MnOiBmbGFnUGxhY2Vob2xkZXIsXHJcbiAgICAgICdwbGFjZUhvbGRlcic6ICcnLFxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZm9ybWF0SW50ZWxOdW1iZXIobnVtYmVyOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgaWYgKHRoaXMuYXV0b0RlYWxDb2RlKSB7XHJcbiAgICAgIHJldHVybiBudW1iZXI7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zdCBpbmRleFRvU3BsaXQgPSBudW1iZXIuaW5kZXhPZignICcpICsgMTtcclxuICAgICAgcmV0dXJuIHRoaXMuc2VwYXJhdGVEaWFsQ29kZSA/IG51bWJlci5zdWJzdHJpbmcoaW5kZXhUb1NwbGl0KSA6IG51bWJlcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBmb3JtYXRQaG9uZU51bWJlcigpIHtcclxuICAgIGNvbnN0IGF5dCA9IGdldEFzWW91VHlwZSh0aGlzLnNlbGVjdGVkQ291bnRyeT8uaXNvMi50b1VwcGVyQ2FzZSgpKTtcclxuICAgIGF5dC5yZXNldCh0aGlzLnBob25lTnVtYmVyKTtcclxuICAgIGNvbnN0IHJlczogUGFyc2VkUGhvbmVOdW1iZXIgPSBheXQuZ2V0UGhvbmVOdW1iZXIoKTtcclxuXHJcbiAgICB0aGlzLnBhcnNlZFBob25lTnVtYmVyID0gcmVzO1xyXG5cclxuICAgIGlmICh0aGlzLm51bWJlckZvcm1hdCA9PT0gJ2ludGVybmF0aW9uYWwnKSB7XHJcbiAgICAgIHRoaXMucGhvbmVOdW1iZXIgPSByZXMubnVtYmVyPy5pbnRlcm5hdGlvbmFsID8gdGhpcy5mb3JtYXRJbnRlbE51bWJlcihyZXMubnVtYmVyLmludGVybmF0aW9uYWwpIDogdGhpcy5waG9uZU51bWJlcjtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMucGhvbmVOdW1iZXIgPSByZXMubnVtYmVyPy5uYXRpb25hbCA/IHJlcy5udW1iZXIubmF0aW9uYWwgOiB0aGlzLnBob25lTnVtYmVyO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLm51bWJlckZvcm1hdCA9PT0gJ2ludGVybmF0aW9uYWwnKSB7XHJcbiAgICAgIGlmICh0aGlzLmVuYWJsZUF1dG9Db3VudHJ5U2VsZWN0ICYmIHJlcy5yZWdpb25Db2RlICE9IHRoaXMuc2VsZWN0ZWRDb3VudHJ5Py5pc28yLnRvVXBwZXJDYXNlKCkpIHtcclxuICAgICAgICByZXMucmVnaW9uQ29kZSAmJiAodGhpcy5zZWxlY3RlZENvdW50cnkgPSB0aGlzLmZpbmRDb3VudHJ5QnlJc28yKHJlcy5yZWdpb25Db2RlKSk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmICh0aGlzLmVuYWJsZUF1dG9Db3VudHJ5U2VsZWN0ICYmIHJlcy5yZWdpb25Db2RlICE9IHRoaXMuc2VsZWN0ZWRDb3VudHJ5Py5pc28yLnRvVXBwZXJDYXNlKCkpIHtcclxuXHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpZiAoIXJlcy52YWxpZCB8fCByZXMucmVnaW9uQ29kZSAhPSB0aGlzLnNlbGVjdGVkQ291bnRyeT8uaXNvMi50b1VwcGVyQ2FzZSgpKSB7XHJcbiAgICAgIHRoaXMuaXNJbnB1dFZhbGlkID0gdGhpcy5fdmFsaWRhdGlvbihyZXMpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5pc0lucHV0VmFsaWQgPSB0cnVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHNlYXJjaEZpbHRlckNoYW5nZWQoZXZlbnQ6IGFueSkge1xyXG4gICAgLy8gaWYgKHRoaXMuc2Nyb2xsVGltZW91dCkgY2xlYXJUaW1lb3V0KHRoaXMuc2Nyb2xsVGltZW91dCk7XHJcbiAgICAvL1xyXG4gICAgLy8gbGV0IGZpbHRlcmVkOiBDb3VudHJ5W107XHJcbiAgICAvLyBpZiAodGhpcy5zZWFyY2hDb3VudHJ5RmllbGQgPT0gJ25hbWUnKSB7XHJcbiAgICAvLyAgIGZpbHRlcmVkID0gdGhpcy5jb3VudHJpZXNUb1Nob3cuZmlsdGVyKGNvbiA9PiBjb24ubmFtZS50b0xvd2VyQ2FzZSgpLnN0YXJ0c1dpdGgodGhpcy5zZWFyY2hGaWx0ZXIudG9Mb3dlckNhc2UoKSkpO1xyXG4gICAgLy8gfSBlbHNlIGlmICh0aGlzLnNlYXJjaENvdW50cnlGaWVsZCA9PSAnaXNvMicpIHtcclxuICAgIC8vICAgZmlsdGVyZWQgPSB0aGlzLmNvdW50cmllc1RvU2hvdy5maWx0ZXIoY29uID0+IGNvbi5pc28yLnN0YXJ0c1dpdGgodGhpcy5zZWFyY2hGaWx0ZXIudG9Mb3dlckNhc2UoKSkpO1xyXG4gICAgLy8gfSBlbHNlIGlmICh0aGlzLnNlYXJjaENvdW50cnlGaWVsZCA9PSAnZGlhbENvZGUnKSB7XHJcbiAgICAvLyAgIGZpbHRlcmVkID0gdGhpcy5jb3VudHJpZXNUb1Nob3cuZmlsdGVyKGNvbiA9PiBjb24uZGlhbENvZGUuc3RhcnRzV2l0aCh0aGlzLnNlYXJjaEZpbHRlcikpO1xyXG4gICAgLy8gfSBlbHNlIHtcclxuICAgIC8vICAgZmlsdGVyZWQgPSB0aGlzLmNvdW50cmllc1RvU2hvdy5maWx0ZXIoY29uID0+IGNvbi5uYW1lLnRvTG93ZXJDYXNlKCkuc3RhcnRzV2l0aCh0aGlzLnNlYXJjaEZpbHRlci50b0xvd2VyQ2FzZSgpKSB8fCBjb24uZGlhbENvZGUuc3RhcnRzV2l0aCh0aGlzLnNlYXJjaEZpbHRlcikgfHwgY29uLmlzbzIuc3RhcnRzV2l0aCh0aGlzLnNlYXJjaEZpbHRlci50b0xvd2VyQ2FzZSgpKSk7XHJcbiAgICAvLyB9XHJcbiAgICAvL1xyXG4gICAgLy8gaWYgKCFmaWx0ZXJlZC5sZW5ndGgpIHJldHVybjtcclxuICAgIC8vIHRoaXMuc2Nyb2xsVGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgLy8gICBjb25zdCBlbDogYW55ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZmlsdGVyZWRbMF0uaHRtbElkKTtcclxuICAgIC8vICAgZWwuc2Nyb2xsSW50b1ZpZXcoKTtcclxuICAgIC8vIH0sIDEpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmaW5kQ291bnRyeUJ5SXNvMihpc28yOiBzdHJpbmcpOiBDb3VudHJ5IHwgYW55IHtcclxuICAgIHJldHVybiB0aGlzLmNvdW50cmllc1RvU2hvd0dldC5maW5kKGNvbiA9PiBjb24uaXNvMiA9PSBpc28yLnRvTG93ZXJDYXNlKCkpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldERlZmF1bHRTZWxlY3RlZENvdW50cnkoKSB7XHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZENvdW50cnlJU08pIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZENvdW50cnkgPSB0aGlzLmZpbmRDb3VudHJ5QnlJc28yKHRoaXMuc2VsZWN0ZWRDb3VudHJ5SVNPKTtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5zZWxlY3RGaXJzdENvdW50cnkpIHtcclxuICAgICAgY29uc3QgbGlzdCA9IHRoaXMucHJlZmVycmVkQ291bnRyaWVzTGlzdEdldFxyXG5cclxuICAgICAgaWYgKGxpc3QubGVuZ3RoKSB7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZENvdW50cnkgPSBsaXN0WzBdXHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZENvdW50cnkgPSB0aGlzLmNvdW50cmllc1RvU2hvd0dldFswXVxyXG4gICAgICB9XHJcblxyXG4gICAgfSBlbHNlIHRoaXMuc2VsZWN0ZWRDb3VudHJ5ID0gdGhpcy5nZXREZWZhdWx0Q291bnRyeSgpO1xyXG5cclxuICAgIHRoaXMuc2VsZWN0ZWRDb3VudHJ5LnBsYWNlSG9sZGVyID0gdGhpcy5nZXRQbGFjZUhvbGRlcigpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uQ291bnRyeVNlbGVjdChjb3VudHJ5OiBhbnkpIHtcclxuICAgIGlmICh0aGlzLmRpc2FibGVkKSByZXR1cm47XHJcblxyXG4gICAgdGhpcy5zZWxlY3RlZENvdW50cnkgPSBjb3VudHJ5O1xyXG4gICAgdGhpcy5zZWxlY3RlZENvdW50cnkucGxhY2VIb2xkZXIgPSB0aGlzLmdldFBsYWNlSG9sZGVyKCk7XHJcbiAgICB0aGlzLnNlYXJjaEZpbHRlciA9ICcnO1xyXG4gICAgdGhpcy5waG9uZU51bWJlciA9ICcnO1xyXG4gICAgdGhpcy5pc0lucHV0VmFsaWQgPSB0cnVlO1xyXG4gICAgdGhpcy5pc0ZvY3VzZWQgPSBmYWxzZTtcclxuXHJcbiAgICBpZiAodGhpcy5hdXRvQ2xvc2VEcm9wZG93bikge1xyXG4gICAgICB0aGlzLnRvZ2dsZURyb3Bkb3duKCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy51cGRhdGVWYWx1ZSgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXROdW1iZXJFeGFtcGxlKCk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBmb3JtYXRFeGFtcGxlTnVtYmVyID0gKG51bWJlcjogc3RyaW5nKTogc3RyaW5nID0+IHtcclxuICAgICAgcmV0dXJuIG51bWJlcjtcclxuICAgIH07XHJcblxyXG4gICAgY29uc3QgZXhhbXBsZU51bWJlciA9IHRoaXMubnVtYmVyRm9ybWF0ID09PSAnaW50ZXJuYXRpb25hbCcgP1xyXG4gICAgICB0aGlzLmZvcm1hdEludGVsTnVtYmVyKGdldEV4YW1wbGUodGhpcy5zZWxlY3RlZENvdW50cnkuaXNvMi50b1VwcGVyQ2FzZSgpLCAnbW9iaWxlJykubnVtYmVyPy5pbnRlcm5hdGlvbmFsIHx8ICcnKSA6XHJcbiAgICAgIHRoaXMuZm9ybWF0SW50ZWxOdW1iZXIoZ2V0RXhhbXBsZSh0aGlzLnNlbGVjdGVkQ291bnRyeS5pc28yLnRvVXBwZXJDYXNlKCksICdtb2JpbGUnKS5udW1iZXI/Lm5hdGlvbmFsIHx8ICcnKTtcclxuXHJcbiAgICByZXR1cm4gZm9ybWF0RXhhbXBsZU51bWJlcihleGFtcGxlTnVtYmVyKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRQbGFjZUhvbGRlcigpOiBzdHJpbmcge1xyXG4gICAgaWYgKCF0aGlzLmVuYWJsZVBsYWNlaG9sZGVyKSByZXR1cm4gJyc7XHJcbiAgICBpZiAodGhpcy5jdXN0b21QbGFjZWhvbGRlcikgcmV0dXJuIHRoaXMuY3VzdG9tUGxhY2Vob2xkZXI7XHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZENvdW50cnkuaXNvMiA9PSAnJykgcmV0dXJuICcnO1xyXG5cclxuICAgIHJldHVybiB0aGlzLmdldE51bWJlckV4YW1wbGUoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXREcm9wZG93bkljb25QYXRoKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5pc0Ryb3Bkb3duT3BlbiA/IGRyb3Bkb3duQ2xvc2UgOiBkcm9wZG93bk9wZW47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25QaG9uZUlucHV0Rm9jdXMoKSB7XHJcbiAgICBpZiAoIXRoaXMuYXV0b0RlYWxDb2RlKSByZXR1cm47XHJcbiAgICBpZiAodGhpcy5pc0ZvY3VzZWQgfHwgKHRoaXMuc2VwYXJhdGVEaWFsQ29kZSAmJiB0aGlzLm51bWJlckZvcm1hdCA9PT0gJ2ludGVybmF0aW9uYWwnKSB8fCB0aGlzLm51bWJlckZvcm1hdCA9PT0gJ25hdGlvbmFsJyB8fCB0aGlzLnBob25lTnVtYmVyKSByZXR1cm47XHJcbiAgICB0aGlzLnBob25lTnVtYmVyID0gJysnICsgdGhpcy5zZWxlY3RlZENvdW50cnkuZGlhbENvZGUgKyAnICc7XHJcbiAgICB0aGlzLmlzRm9jdXNlZCA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25QaG9uZUlucHV0Qmx1cigpIHtcclxuICAgIGlmICghdGhpcy5pc0lucHV0VmFsaWQgJiYgdGhpcy5waG9uZU51bWJlciAhPT0gJycpIHtcclxuICAgICAgdGhpcy5pbm5lckludmFsaWQgPSB0cnVlO1xyXG4gICAgICB0aGlzLmlubmVySW52YWxpZE1lc3NhZ2UgPSB0aGlzLmludmFsaWRQaG9uZU1lc3NhZ2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9yZXNldFZhbGlkYXRlKCkge1xyXG4gICAgdGhpcy5pbm5lckludmFsaWQgPSBmYWxzZTtcclxuICAgIHRoaXMuaW5uZXJJbnZhbGlkTWVzc2FnZSA9ICcnO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHVwZGF0ZVZhbHVlKCkge1xyXG4gICAgdGhpcy5fcmVzZXRWYWxpZGF0ZSgpO1xyXG4gICAgdGhpcy5mb3JtYXRQaG9uZU51bWJlcigpO1xyXG5cclxuICAgIGNvbnN0IG91dHNpZGVWYWx1ZSA9IHtcclxuICAgICAgcGhvbmVOdW1iZXI6IHRoaXMucGhvbmVOdW1iZXIsXHJcbiAgICAgIHVuRm9ybWF0dGVkTnVtYmVyOiB0aGlzLnBob25lTnVtYmVyLnJlcGxhY2UoL1tcXHMtKCldL2csICcnKSxcclxuICAgICAgc2VsZWN0ZWRDb3VudHJ5OiB0aGlzLnNlbGVjdGVkQ291bnRyeT8ubmFtZSB8fCAnJyxcclxuICAgICAgaXNvMkNvZGU6IHRoaXMuc2VsZWN0ZWRDb3VudHJ5Py5pc28yIHx8ICcnLFxyXG4gICAgICBkaWFsQ29kZTogdGhpcy5zZWxlY3RlZENvdW50cnk/LmRpYWxDb2RlIHx8ICcnLFxyXG4gICAgICBudW1iZXJGb3JtYXQ6IHRoaXMubnVtYmVyRm9ybWF0LFxyXG4gICAgICBpc051bWJlclZhbGlkOiB0aGlzLmlzSW5wdXRWYWxpZCxcclxuICAgIH07XHJcblxyXG4gICAgdGhpcy5jaGFuZ2VkLmVtaXQob3V0c2lkZVZhbHVlKTtcclxuICAgIHRoaXMubW9kZWxDaGFuZ2UuZW1pdCh7dmFsdWU6IG91dHNpZGVWYWx1ZSwgaWQ6IHRoaXMudXVpZH0pO1xyXG4gICAgdGhpcy5vbkNoYW5nZShvdXRzaWRlVmFsdWUpO1xyXG4gICAgdGhpcy5vblRvdWNoZWQoKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdlxyXG4gIGNsYXNzPVwibXJ4LWlucHV0LXRlbFwiXHJcbiAgW2NsYXNzXT1cImdldENsYXNzZXNcIlxyXG4gIFtjbGFzcy5tcngtaW5wdXQtZXJyb3JdPVwiaW52YWxpZFwiXHJcbiAgW2NsYXNzLi1kaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgW2NsYXNzLi1yZWFkb25seV09XCJyZWFkb25seVwiXHJcbj5cclxuICA8ZGl2IGNsYXNzPVwibXJ4LWlucHV0LXRlbF9fd3JhcHBlclwiPlxyXG4gICAgICA8aW5wdXRcclxuICAgICAgICBmb3JtYXR0ZXJQaG9uZVxyXG4gICAgICAgIFtpZF09XCJpbnB1dElkXCJcclxuICAgICAgICB0eXBlPVwidGVsXCJcclxuICAgICAgICBjbGFzcz1cInBob25lSW5wdXQge3tjc3NDbGFzc319XCJcclxuICAgICAgICBbKG5nTW9kZWwpXT1cInBob25lTnVtYmVyXCJcclxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gICAgICAgIFtyZWFkT25seV09XCJyZWFkb25seVwiXHJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cInNlbGVjdGVkQ291bnRyeUdldD8ucGxhY2VIb2xkZXIgfHwgJydcIlxyXG4gICAgICAgIFtjbGFzcy5pblZhbGlkXT1cInBob25lVmFsaWRhdGlvbiAmJiAhaXNJbnB1dFZhbGlkXCJcclxuICAgICAgICBbY3VzdG9tTWF4TGVuZ3RoXT1cIm1heExlbmd0aFwiXHJcbiAgICAgICAgW3BhcnNlZFBob25lTnVtYmVyXT1cInBhcnNlZFBob25lTnVtYmVyXCJcclxuICAgICAgICAoZm9jdXMpPVwib25QaG9uZUlucHV0Rm9jdXMoKVwiXHJcbiAgICAgICAgKGJsdXIpPVwib25QaG9uZUlucHV0Qmx1cigpXCJcclxuICAgICAgICAoY2hhbmdlTW9kZWwpPVwidXBkYXRlVmFsdWUoKVwiXHJcbiAgICAgIC8+XHJcbiAgICA8ZGl2IGNsYXNzPVwibXJ4LWlucHV0LXRlbF9fZmxhZy1jb250YWluZXJcIiBbY2xhc3MuZGlzYWJsZWRdPVwiZGlzYWJsZWRcIj5cclxuICAgICAgPG1yeC1kcm9wZG93blxyXG4gICAgICAgICNkcm9wZG93bkNvbXBvbmVudFxyXG4gICAgICAgIGN1c3RvbUNsYXNzZXM9XCJoLTEwMFwiXHJcbiAgICAgICAgW21haW5QbGFjZW1lbnRdPVwiJ2JvdHRvbS1zdGFydCdcIlxyXG4gICAgICAgIFtmYWxsYmFja1BsYWNlbWVudHNdPVwiWyd0b3Atc3RhcnQnXVwiXHJcbiAgICAgID5cclxuICAgICAgICA8bmctdGVtcGxhdGUgI2Ryb3Bkb3duVG9nZ2xlPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm1yeC1pbnB1dC10ZWxfX3NlbGVjdGVkLWZsYWcgZHJvcGRvd24tdG9nZ2xlXCI+XHJcbiAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICBjbGFzcz1cIm1yeC1pbnB1dC10ZWxfX2ZsYWdcIlxyXG4gICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInNlbGVjdGVkQ291bnRyeUdldD8uZmxhZ0NsYXNzIHx8ICcnXCJcclxuICAgICAgICAgICAgPjwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwic2VwYXJhdGVEaWFsQ29kZVwiIGNsYXNzPVwic2VsZWN0ZWQtZGlhbC1jb2RlXCI+K3t7c2VsZWN0ZWRDb3VudHJ5R2V0Py5kaWFsQ29kZX19PC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtcngtaW5wdXQtdGVsX19hcnJvdyBtdC0xXCI+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtcngtaWNvbiBpY29uLWNoZXZyb24tZG93blwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgICAgICA8bmctdGVtcGxhdGUgI2Ryb3Bkb3duTWVudT5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWFyY2gtY29udGFpbmVyXCIgKm5nSWY9XCJzZWFyY2hDb3VudHJ5RmxhZyAmJiBzZWFyY2hDb3VudHJ5RmllbGRcIj5cclxuICAgICAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxyXG4gICAgICAgICAgICAgIFsobmdNb2RlbCldPVwic2VhcmNoRmlsdGVyXCJcclxuICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJzZWFyY2hGaWx0ZXJDaGFuZ2VkKCRldmVudClcIlxyXG4gICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwie3sgc2VhcmNoQ291bnRyeVBsYWNlaG9sZGVyIH19XCJcclxuICAgICAgICAgICAgICBjbGFzcz1cInNlYXJjaENvdW50cnlfX2lucHV0XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgIDx1bCBjbGFzcz1cIm1yeC1pbnB1dC10ZWxfX2NvdW50cnktbGlzdFwiICNjb3VudHJ5TGlzdD5cclxuICAgICAgICAgICAgPGxpIGNsYXNzPVwibXJ4LWlucHV0LXRlbF9fY291bnRyeSBpdGlfX3ByZWZlcnJlZFwiXHJcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgcHJlZmVycmVkQ291bnRyeSBvZiBwcmVmZXJyZWRDb3VudHJpZXNMaXN0R2V0XCJcclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkNvdW50cnlTZWxlY3QocHJlZmVycmVkQ291bnRyeSlcIlxyXG4gICAgICAgICAgICAgICAgW2lkXT1cInByZWZlcnJlZENvdW50cnkuaHRtbElkKyctcHJlZmVycmVkJ1wiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXJ4LWlucHV0LXRlbF9fZmxhZy1ib3hcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtcngtaW5wdXQtdGVsX19mbGFnXCIgW25nQ2xhc3NdPVwicHJlZmVycmVkQ291bnRyeS5mbGFnQ2xhc3NcIj48L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1yeC1pbnB1dC10ZWxfX2NvdW50cnktbmFtZVwiPnt7cHJlZmVycmVkQ291bnRyeS5uYW1lfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtcngtaW5wdXQtdGVsX19kaWFsLWNvZGVcIj4re3twcmVmZXJyZWRDb3VudHJ5LmRpYWxDb2RlfX08L3NwYW4+XHJcbiAgICAgICAgICAgIDwvbGk+XHJcblxyXG4gICAgICAgICAgICA8bGkgY2xhc3M9XCJtcngtaW5wdXQtdGVsX19kaXZpZGVyXCIgKm5nSWY9XCJwcmVmZXJyZWRDb3VudHJpZXNMaXN0R2V0Py5sZW5ndGhcIj48L2xpPlxyXG5cclxuICAgICAgICAgICAgPGxpIGNsYXNzPVwibXJ4LWlucHV0LXRlbF9fY291bnRyeSBpdGlfX3N0YW5kYXJkXCJcclxuICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBjb3VudHJ5IG9mIGNvdW50cmllc1RvU2hvd0dldFwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25Db3VudHJ5U2VsZWN0KGNvdW50cnkpXCJcclxuICAgICAgICAgICAgICAgIFtpZF09XCJjb3VudHJ5Lmh0bWxJZFwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtcngtaW5wdXQtdGVsX19mbGFnLWJveFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1yeC1pbnB1dC10ZWxfX2ZsYWdcIiBbbmdDbGFzc109XCJjb3VudHJ5LmZsYWdDbGFzc1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXJ4LWlucHV0LXRlbF9fY291bnRyeS1uYW1lXCI+e3tjb3VudHJ5Lm5hbWV9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1yeC1pbnB1dC10ZWxfX2RpYWwtY29kZVwiPit7e2NvdW50cnkuZGlhbENvZGV9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgPC9tcngtZHJvcGRvd24+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPG1yeC1lcnJvci1tZXNzYWdlXHJcbiAgICAqbmdJZj1cIighaXNWYWxpZCB8fCBpbm5lckludmFsaWQgfHwgaW52YWxpZCkgJiYgaXNJbnZhbGlkTWVzc2FnZVwiXHJcbiAgICBbaW52YWxpZE1lc3NhZ2VdPVwiaW5uZXJJbnZhbGlkTWVzc2FnZSB8fCBpbnZhbGlkTWVzc2FnZVwiXHJcbiAgPjwvbXJ4LWVycm9yLW1lc3NhZ2U+XHJcblxyXG4gIDxtcngtc2F2ZS1zdGF0ZSBbaWRdPVwidXVpZFwiIFtmaWVsZHNdPVwiZmllbGRzXCI+PC9tcngtc2F2ZS1zdGF0ZT5cclxuPC9kaXY+XHJcblxyXG4iXX0=
@@ -17352,7 +17352,7 @@ class InputTelComponent {
17352
17352
  }
17353
17353
  get selectedCountryGet() {
17354
17354
  const list = this.countriesToShowGet;
17355
- if (!list.find(c => c.iso2 === this.selectedCountry.iso2)) {
17355
+ if (this.selectedCountry && !list.find(c => c.iso2 === this.selectedCountry.iso2)) {
17356
17356
  this.selectedCountry = list[0];
17357
17357
  }
17358
17358
  return this.selectedCountry;