@uiapplib/ngx-ui-web-lib 0.0.31 → 0.0.32
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.
|
@@ -459,6 +459,23 @@ export class HistoryPageComponent {
|
|
|
459
459
|
window.open(`${LibConstants.benefitsUrlExternal}/faces/virtual/contextswitch.xhtml?a=${userModel.access_token}&r=${userModel.refresh_token}&v=2299&CLAIMANT_PORTAL=true&view=.mefileoverpaymentwaiverrequestdecisionlist&transactionId=${transactionId}&docketNumber=${docketNumber}&bucDecisionId=${bucDecisionId}`, '_self');
|
|
460
460
|
});
|
|
461
461
|
}
|
|
462
|
+
else if (historyModel.button && historyModel.button.dialog == 'RescheduleReseaPopup') {
|
|
463
|
+
let userModel = this.ls.getUser();
|
|
464
|
+
if (this.ls.isCsr()) {
|
|
465
|
+
const apptType = 'RESEA';
|
|
466
|
+
const erApptDate = historyModel.data?.interview_date || '';
|
|
467
|
+
const userId = historyModel['userId'];
|
|
468
|
+
this.logger.debug("userId", historyModel['userId']);
|
|
469
|
+
this.util.showLoader().then(() => {
|
|
470
|
+
window.open(`${LibConstants.benefitsUrlExternal}/faces/virtual/contextswitch.xhtml?a=${userModel.access_token}&r=${userModel.refresh_token}&v=2299&CLAIMANT_PORTAL=true&view=.meeligibilityreviewsearch&apptType=${apptType}&erApptDate=${erApptDate}&userId=${userId}`, '_self');
|
|
471
|
+
});
|
|
472
|
+
}
|
|
473
|
+
else if (this.ls.isClaimant()) {
|
|
474
|
+
this.util.showLoader().then(() => {
|
|
475
|
+
window.open(`${LibConstants.benefitsUrlExternal}/faces/virtual/contextswitch.xhtml?a=${userModel.access_token}&r=${userModel.refresh_token}&v=2299&CLAIMANT_PORTAL=true&view=.reschedulereseaappointment`, '_self');
|
|
476
|
+
});
|
|
477
|
+
}
|
|
478
|
+
}
|
|
462
479
|
else {
|
|
463
480
|
this.util.presentToast('Scenario under development. Please check with developer.');
|
|
464
481
|
this.logger.error(historyModel);
|
|
@@ -594,4 +611,4 @@ export class HistoryPageComponent {
|
|
|
594
611
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(HistoryPageComponent, { className: "HistoryPageComponent", filePath: "lib\\components\\history-page\\history-page.component.ts", lineNumber: 28 }); })();
|
|
595
612
|
export class KeyValueModel {
|
|
596
613
|
}
|
|
597
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlzdG9yeS1wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9oaXN0b3J5LXBhZ2UvaGlzdG9yeS1wYWdlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9oaXN0b3J5LXBhZ2UvaGlzdG9yeS1wYWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQVF6RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUl2RSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lDZjdCLG1EQUM2QjtJQUQ2QyxtTkFBZSxlQUFBLGdCQUFTLENBQUEsSUFBQyxxTUFDbkYsZUFBQSxtQkFBVyxDQUFBLElBRHdFO0lBQ3RFLGlCQUEwQjs7O0lBRDlCLG9EQUErQjs7OztJQUV4RCxpREFDaUY7SUFBNUQsc01BQVUsZUFBQSwwQkFBa0IsQ0FBQSxJQUFDLDJMQUFZLGVBQUEseUJBQWlCLENBQUEsSUFBN0I7SUFBK0IsaUJBQXdCOzs7SUFEMUQsa0RBQTZCLCtDQUFBLDBCQUFBOzs7SUFFNUUseUNBQWtGOztJQUF2QywrQkFBaUI7OztJQW1CMUMsNEJBQXlCO0lBQUEsWUFBYTtJQUFBLGlCQUFPOzs7SUFBcEIsZUFBYTtJQUFiLG1DQUFhOzs7O0lBQ3RDLDhCQUFpRTs7O0lBQXhELGdFQUEyQjs7O0lBSHRDLCtCQUNj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IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5hdkNvbnRyb2xsZXIgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XHJcbmltcG9ydCB7IEVycm9yTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvRXJyb3JNb2RlbCc7XHJcbmltcG9ydCB7IExpYkNvbnN0YW50cyB9IGZyb20gJy4uLy4uL21vZGVscy9MaWJDb25zdGFudHMnO1xyXG5pbXBvcnQgeyBIZWxwU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2hlbHAvaGVscC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRW1wbG95ZXJEYXRhTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvZmlsZXVwbG9hZC9FbXBsb3llckRhdGFNb2RlbCc7XHJcbmltcG9ydCB7IEJhc2VQYWdlIH0gZnJvbSAnLi4vLi4vcGFnZXMvQmFzZVBhZ2UnO1xyXG5pbXBvcnQgeyBMb2dnZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbG9nZ2VyL2xvZ2dlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUXVlc3Rpb25uYWlyZVF1ZXJ5TW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvcXVlc3Rpb25uYWlyZS9RdWVzdGlvbm5haXJlUXVlcnlNb2RlbCc7XHJcbmltcG9ydCB7IExvZ2luU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2xvZ2luL2xvZ2luLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBIaXN0b3J5TW9kZWwsIFllYXJXaXNlSGlzdG9yeSB9IGZyb20gJy4uLy4uL21vZGVscy9kYXNoYm9hcmQtbW9kZWwnO1xyXG5pbXBvcnQgeyByb3dFeHBhbnNpb25UcmlnZ2VyIH0gZnJvbSAnLi4vLi4vYW5uaW1hdGlvbnMvYXBwLWFuaW1hdGlvbnMnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IFV0aWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdXRpbC91dGlsLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IHRpbWVyIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEV2ZW50U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2V2ZW50LXNlcnZpY2UvZXZlbnQtc2VydmljZSc7XHJcblxyXG5cclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1oaXN0b3J5LXBhZ2UnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9oaXN0b3J5LXBhZ2UuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9oaXN0b3J5LXBhZ2UuY29tcG9uZW50LmNzcycsXHJcbiAgYW5pbWF0aW9uczogW3Jvd0V4cGFuc2lvblRyaWdnZXJdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBIaXN0b3J5UGFnZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIHNlbGVjdGVkTW9kZWw6IEhpc3RvcnlNb2RlbCBcclxuICBpc0xvYWRpbmcgPSBmYWxzZTtcclxuICBoaXN0b3JpZXM6IFllYXJXaXNlSGlzdG9yeVtdO1xyXG4gIGZpbHRlcmVkSGlzdG9yaWVzOiBZZWFyV2lzZUhpc3RvcnlbXTtcclxuICBmaWx0ZXJPcHRpb25zOiBhbnlbXTtcclxuICB0aW1lT3B0aW9uOiBhbnlbXTtcclxuICB2YWx1ZSA9IHsgaWNvbjogbnVsbCwgZGVzYzogJ0FsbCcsIHZhbHVlOiBcIkFMTFwiIH07XHJcbiAgdGltZSA9IHsgaWNvbjogJ2Nsb2NrJywgZGVzYzogJ2N1cnJlbnQnLCB2YWx1ZTogXCJDVVJSXCIgfTtcclxuICBmaWx0ZXIgPSB7IGljb246IG51bGwsIGRlc2M6ICdhbGwgeW91ciBoaXN0b3J5JywgdmFsdWU6IFwiQUxMXCIsIGFsdERlc2M6ICdhbGwnIH07XHJcbiAgZmlsdGVySWNvbiA9ICdoaXN0b3J5JztcclxuICBwYXltZW50VGV4dDogc3RyaW5nO1xyXG4gIHFlUXVlcnlNb2RlbHM6IFF1ZXN0aW9ubmFpcmVRdWVyeU1vZGVsW107XHJcbiAgaXNPcGVuUWU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBzaG93T2xkZXJSZWNvcmRzTGluazogYm9vbGVhbjtcclxuICB0cmFuc2FjdGlvbklkU2VsZWN0ZWQ6IGFueTtcclxuICBzaG93VXBsb2FkUG9wdXA6IGJvb2xlYW4gPSBmYWxzZTtcclxuICB1cGxvYWRUeXBlSWQ6IFN0cmluZztcclxuICBlbXBsb3llckRhdGFNb2RlbDogQXJyYXk8RW1wbG95ZXJEYXRhTW9kZWw+O1xyXG4gIGNvdW50ID0gMDtcclxuICBkYXRhTW9kZWwgOiBhbnk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZXM6IEV2ZW50U2VydmljZSwgcHVibGljIGhzOiBIZWxwU2VydmljZSwgcHJpdmF0ZSB1dGlsOiBVdGlsU2VydmljZSxcclxuICAgIHByaXZhdGUgbmF2OiBOYXZDb250cm9sbGVyLCBwdWJsaWMgbHM6IExvZ2luU2VydmljZSwgcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsIHByaXZhdGUgbG9nZ2VyOiBMb2dnZXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUpIHtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy50aW1lT3B0aW9uID0gW1xyXG4gICAgICB7IGljb246ICdjbG9jaycsIGRlc2M6ICdjdXJyZW50JywgdmFsdWU6IFwiQ1VSUlwiIH0sXHJcbiAgICAgIHsgaWNvbjogJ2hpc3RvcnknLCBkZXNjOiAncGFzdCcsIHZhbHVlOiBcIlBBU1RcIiB9LFxyXG4gICAgXTtcclxuXHJcbiAgICBpZiAodGhpcy51dGlsLmlzU3RhdGUoJ01TJykpIHtcclxuICAgICAgdGhpcy5wYXltZW50VGV4dCA9IFwid2Vla2x5IGNlcnRpZmljYXRpb25zIGFuZCBwYXltZW50c1wiXHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgdGhpcy5wYXltZW50VGV4dCA9IFwid2Vla2xpZXMgYW5kIHBheW1lbnRzXCJcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmZpbHRlck9wdGlvbnMgPSBbXHJcbiAgICAgIHsgaWNvbjogbnVsbCwgZGVzYzogJ2FsbCB5b3VyIGhpc3RvcnknLCB2YWx1ZTogXCJBTExcIiwgYWx0RGVzYzogJ2FsbCcgfSxcclxuICAgICAgeyBpY29uOiAnc2Fjay1kb2xsYXInLCBkZXNjOiB0aGlzLnBheW1lbnRUZXh0LCB2YWx1ZTogXCJXS0xZXCIgfSxcclxuICAgICAgeyBpY29uOiAnZmlsZS11cGxvYWQnLCBkZXNjOiAndXBsb2FkZWQgZG9jdW1lbnRzJywgdmFsdWU6IFwiRE9DU1wiIH0sXHJcbiAgICAgIHsgaWNvbjogJ2JhbGFuY2Utc2NhbGUnLCBkZXNjOiAnaXNzdWUgJiBhcHBlYWxzJywgdmFsdWU6IFwiQVBQTFwiIH1cclxuXHJcbiAgICBdO1xyXG5cclxuICAgIGxldCB0eG5JZCA9IHRoaXMuYWN0aXZhdGVkUm91dGUuc25hcHNob3QucXVlcnlQYXJhbU1hcC5nZXQoJ3R4bmlkJyk7XHJcbiAgICBpZiAodHhuSWQgIT0gbnVsbCkge1xyXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uSWRTZWxlY3RlZCA9IGF0b2IodHhuSWQpO1xyXG4gICAgICAvL3RoaXMubG9nZ2VyLmluZm8odGhpcy50cmFuc2FjdGlvbklkU2VsZWN0ZWQpO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICB0aGlzLmxvYWRIaXN0b3J5KCk7XHJcbiAgfVxyXG5cclxuICBnZXRDdXJyZW50WWVhckhpc3RvcnkoKSB7XHJcbiAgICBsZXQgdHlwZUZpbHRlciA9IHRoaXMuZmlsdGVyLnZhbHVlO1xyXG4gICAgbGV0IHRpbWVGaWx0ZXIgPSB0aGlzLnRpbWUudmFsdWU7XHJcbiAgICBcclxuXHJcbiAgICBpZiAodGltZUZpbHRlciA9PSAnQ1VSUicpIHtcclxuICAgICAgdGhpcy5maWx0ZXJlZEhpc3RvcmllcyA9IHRoaXMuaGlzdG9yaWVzLmZpbHRlcihoaXN0ID0+IChoaXN0LnllYXIgIT0gJ1N0YXJ0JyAmJiBwYXJzZUludChoaXN0LnllYXIpID09IG5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKSkpO1xyXG4gICAgICB0aGlzLmZpbHRlcmVkSGlzdG9yaWVzID0gdGhpcy5nZXRGaWx0ZXJlZEhpc3Rvcmllcyh0aGlzLmZpbHRlcmVkSGlzdG9yaWVzLCB0eXBlRmlsdGVyKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldEljb24oaGlzdG9yeTogSGlzdG9yeU1vZGVsKSB7XHJcbiAgICBsZXQgaGlzdCA9IHRoaXMuZmlsdGVyT3B0aW9ucy5maWx0ZXIoZm8gPT4gZm8udmFsdWUgPT0gaGlzdG9yeS5wcm9jZXNzVHlwZSlbMF07XHJcbiAgICBpZiAoaGlzdCkge1xyXG4gICAgICByZXR1cm4gWydmYXInLCBoaXN0Lmljb25dO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBsb2FkSGlzdG9yeSgpIHtcclxuICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcclxuICAgIHRoaXMuZXMuZ2V0SGlzdG9yeU9mTG9nZ2VkaW5Vc2VyKClcclxuICAgICAgLnN1YnNjcmliZShyZXMgPT4ge1xyXG4gICAgICAgIHRoaXMuaGlzdG9yaWVzID0gcmVzLmhpc3Rvcnk7XHJcbiAgICAgICAgdGhpcy5zaG93T2xkZXJSZWNvcmRzTGluayA9IHJlcy5zaG93T2xkZXJSZWNvcmRzTGluaztcclxuICAgICAgICAvL3RoaXMuZmlsdGVyZWRIaXN0b3JpZXMgPSBbLi4udGhpcy5oaXN0b3JpZXNdO1xyXG4gICAgICAgIHRoaXMuZ2V0Q3VycmVudFllYXJIaXN0b3J5KCk7XHJcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgfSwgZXJyID0+IHtcclxuICAgICAgICB0aGlzLmhpc3RvcmllcyA9IG51bGw7XHJcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmZpbHRlcmVkSGlzdG9yaWVzID0gbnVsbDtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBoYW5kbGVDaGFuZ2UoZXZlbnQpIHtcclxuICAgIGxldCB0eXBlRmlsdGVyID0gdGhpcy5maWx0ZXIudmFsdWU7XHJcbiAgICBsZXQgdGltZUZpbHRlciA9IHRoaXMudGltZS52YWx1ZTtcclxuICAgIHRoaXMuZmlsdGVySWNvbiA9IHRoaXMudGltZS5pY29uO1xyXG4gICAgaWYgKHRpbWVGaWx0ZXIgPT0gJ0NVUlInKSB7XHJcbiAgICAgIHRoaXMuZmlsdGVyZWRIaXN0b3JpZXMgPSB0aGlzLmhpc3Rvcmllcy5maWx0ZXIoaGlzdCA9PiAoaGlzdC55ZWFyICE9ICdTdGFydCcgJiYgcGFyc2VJbnQoaGlzdC55ZWFyKSA9PSBuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCkpKTtcclxuICAgICAgdGhpcy5maWx0ZXJlZEhpc3RvcmllcyA9IHRoaXMuZ2V0RmlsdGVyZWRIaXN0b3JpZXModGhpcy5maWx0ZXJlZEhpc3RvcmllcywgdHlwZUZpbHRlcik7XHJcbiAgICB9IGVsc2UgaWYgKHRpbWVGaWx0ZXIgPT0gJ1BBU1QnKSB7XHJcbiAgICAgIHRoaXMuZmlsdGVyZWRIaXN0b3JpZXMgPSB0aGlzLmhpc3Rvcmllcy5maWx0ZXIoaGlzdCA9PiAoaGlzdC55ZWFyICE9ICdTdGFydCcgJiYgaGlzdC55ZWFyICE9IG5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKSArICcnKSk7XHJcbiAgICAgIHRoaXMuZmlsdGVyZWRIaXN0b3JpZXMgPSB0aGlzLmdldEZpbHRlcmVkSGlzdG9yaWVzKHRoaXMuZmlsdGVyZWRIaXN0b3JpZXMsIHR5cGVGaWx0ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0eXBlRmlsdGVyICE9ICdBTEwnKSB7XHJcbiAgICAgIHRoaXMuZmlsdGVySWNvbiA9IHRoaXMuZmlsdGVyLmljb247XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IHl3aCA9IHRoaXMuZmlsdGVyZWRIaXN0b3JpZXMuZmlsdGVyKGggPT4gaC55ZWFyID09ICdTdGFydCcpO1xyXG5cclxuICAgIGlmICh0aGlzLmZpbHRlcmVkSGlzdG9yaWVzLmxlbmd0aCA+IDAgJiYgeXdoLmxlbmd0aCA8IDEpIHtcclxuICAgICAgdGhpcy5maWx0ZXJlZEhpc3Rvcmllcy5wdXNoKHtcclxuICAgICAgICBjb2xvcjogJ3ZhcigtLWlvbi1jb2xvci1tZWRpdW0tZ3JheSknLFxyXG4gICAgICAgIGljb246ICdob3VyZ2xhc3Mtc3RhcnQnLFxyXG4gICAgICAgIGhpc3Rvcnk6IFtdLFxyXG4gICAgICAgIHllYXI6ICdTdGFydCdcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRGaWx0ZXJlZEhpc3RvcmllcyhoaXN0b3JpZXM6IFllYXJXaXNlSGlzdG9yeVtdLCBmaWx0ZXI6IHN0cmluZykge1xyXG4gICAgaWYgKGZpbHRlciA9PSAnQUxMJykge1xyXG4gICAgICB0aGlzLmNvdW50ID0gdGhpcy5jb3VudCArIDE7XHJcbiAgICAgIHJldHVybiBoaXN0b3JpZXM7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gaGlzdG9yaWVzXHJcbiAgICAgIC5maWx0ZXIoaGlzdCA9PiBoaXN0Lmhpc3Rvcnkuc29tZShzdWJIaXN0ID0+IHN1Ykhpc3QucHJvY2Vzc1R5cGUgPT09IGZpbHRlcikpXHJcbiAgICAgIC5tYXAoaGlzdG9yeSA9PiB7XHJcbiAgICAgICAgbGV0IG5ld0hpc3QgPSBPYmplY3QuYXNzaWduKHt9LCBoaXN0b3J5KTtcclxuICAgICAgICBuZXdIaXN0Lmhpc3RvcnkgPSBuZXdIaXN0Lmhpc3RvcnkuZmlsdGVyKGhpc3QgPT4gaGlzdC5wcm9jZXNzVHlwZSA9PT0gZmlsdGVyKTtcclxuICAgICAgICByZXR1cm4gbmV3SGlzdDtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBpb25WaWV3V2lsbExlYXZlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5ocy5zZXRIZWxwQXZhaWxhYmlsaXR5KGZhbHNlKTtcclxuICB9XHJcblxyXG4gIGlvblZpZXdEaWRFbnRlcigpOiB2b2lkIHtcclxuICAgIHRoaXMuaHMuc2V0SGVscEF2YWlsYWJpbGl0eSh0cnVlKTtcclxuICB9XHJcblxyXG4gIGlzVmFsdWVTZWxlY3RlZChoaXN0b3J5OiBIaXN0b3J5TW9kZWwsIGNvdW50OiBhbnkpIHtcclxuICAgIC8vdGhpcy5sb2dnZXIuaW5mbygnaXMgdmFsdWUgc2VsZWN0ZWQnICwgdGhpcy50cmFuc2FjdGlvbklkU2VsZWN0ZWQpO1xyXG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb25JZFNlbGVjdGVkID09IG51bGwgJiYgY291bnQgPT0gMCkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH0gZWxzZSBpZiAoaGlzdG9yeS50cmFuc2FjdGlvbklkID09IHRoaXMudHJhbnNhY3Rpb25JZFNlbGVjdGVkKSB7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgb3BlbihoaXN0b3J5TW9kZWw6IEhpc3RvcnlNb2RlbCkge1xyXG5cclxuICAgIHRoaXMuc2VsZWN0ZWRNb2RlbCA9IGhpc3RvcnlNb2RlbDtcclxuICAgIGlmIChoaXN0b3J5TW9kZWwuYnV0dG9uLnVyaS5pbmNsdWRlcyhcIlBvcHVwXCIpKSB7XHJcbiAgICAgIHRoaXMubG9nZ2VyLmluZm8oJ0hpc3RvcnkgYnV0dG9uIHVyaSBpbmNsdWRlcyBQb3B1cCB2YWx1ZScpO1xyXG4gICAgICBpZiAodGhpcy5scy5pc0NzcigpICYmIGhpc3RvcnlNb2RlbC5idXR0b24gJiYgaGlzdG9yeU1vZGVsLmJ1dHRvbi5jbG10T25seUZOID09ICcxJykge1xyXG4gICAgICAgIGxldCBlcnJvck1vZGVsOiBFcnJvck1vZGVsID0gbmV3IEVycm9yTW9kZWwoKTtcclxuICAgICAgICBlcnJvck1vZGVsLm1zZyA9IFwiVGhpcyBpcyBhIGNsYWltYW50IG9ubHkgZnVuY3Rpb25hbGl0eS5cIjtcclxuICAgICAgICB0aGlzLnV0aWwuZXJyb3JIYW5kbGVyKGVycm9yTW9kZWwpO1xyXG4gICAgICB9IGVsc2UgaWYgKGhpc3RvcnlNb2RlbC5idXR0b24gJiYgaGlzdG9yeU1vZGVsLmFjdGlvblVyaSA9PSAnQXBwZWFsc1BvcHVwJyAmJiBoaXN0b3J5TW9kZWwuZGF0YS5xZURhdGEpIHtcclxuICAgICAgICBsZXQgcXVlc3Rpb25uYWlyZVF1ZXJ5TW9kZWxzOiBBcnJheTxRdWVzdGlvbm5haXJlUXVlcnlNb2RlbD4gPSBKU09OLnBhcnNlKGhpc3RvcnlNb2RlbC5kYXRhLnFlRGF0YSk7XHJcbiAgICAgICAgdGhpcy5xZVF1ZXJ5TW9kZWxzID0gdGhpcy5jcmVhdGVRZVF1ZXJ5TW9kZWwocXVlc3Rpb25uYWlyZVF1ZXJ5TW9kZWxzKTtcclxuICAgICAgICB0aGlzLmlzT3BlblFlID0gdHJ1ZTtcclxuICAgICAgfSBlbHNlIGlmIChoaXN0b3J5TW9kZWwuYnV0dG9uICYmIGhpc3RvcnlNb2RlbC5idXR0b24uZGlhbG9nID09ICd1cGxvYWRQb3B1cEluQ3AnKSB7XHJcbiAgICAgICAgY29uc29sZS5sb2codGhpcy5zZWxlY3RlZE1vZGVsLmRhdGEpO1xyXG4gICAgICAgIHRoaXMudXBsb2FkVHlwZUlkID0gdGhpcy5zZWxlY3RlZE1vZGVsLmRhdGEudXBsb2FkVHlwZUlkO1xyXG4gICAgICAgIGlmICh0aGlzLnNlbGVjdGVkTW9kZWwuZGF0YT8uZW1wbG95ZXJEYXRhICE9IG51bGwpIHtcclxuICAgICAgICAgIHRoaXMuZW1wbG95ZXJEYXRhTW9kZWwgPSBKU09OLnBhcnNlKHRoaXMuc2VsZWN0ZWRNb2RlbC5kYXRhPy5lbXBsb3llckRhdGEpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodGhpcy5zZWxlY3RlZE1vZGVsLmRhdGEgIT0gbnVsbCkge1xyXG4gICAgICAgICAgdGhpcy5kYXRhTW9kZWwgPSB0aGlzLnNlbGVjdGVkTW9kZWwuZGF0YTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5zaG93VXBsb2FkUG9wdXAgPSB0cnVlO1xyXG4gICAgICB9IGVsc2UgaWYgKGhpc3RvcnlNb2RlbC5idXR0b24gJiYgaGlzdG9yeU1vZGVsLmJ1dHRvbi5kaWFsb2cgPT0gJ3VwbG9hZFBvcHVwJykge1xyXG4gICAgICAgIGxldCB1c2VyTW9kZWwgPSB0aGlzLmxzLmdldFVzZXIoKTtcclxuICAgICAgICB0aGlzLnV0aWwuc2hvd0xvYWRlcigpLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgICAgd2luZG93Lm9wZW4oYCR7TGliQ29uc3RhbnRzLmJlbmVmaXRzVXJsRXh0ZXJuYWx9L2ZhY2VzL3ZpcnR1YWwvY29udGV4dHN3aXRjaC54aHRtbD9hPSR7dXNlck1vZGVsLmFjY2Vzc190b2tlbn0mcj0ke3VzZXJNb2RlbC5yZWZyZXNoX3Rva2VufSZ2PTIyOTkmQ0xBSU1BTlRfUE9SVEFMPXRydWUmdmlldz0udXBsb2FkZG9jdW1lbnRlbnRlcnNzbmAsICdfc2VsZicpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9IGVsc2UgaWYgKGhpc3RvcnlNb2RlbC5idXR0b24gJiYgaGlzdG9yeU1vZGVsLmJ1dHRvbi5kaWFsb2cgPT0gJ3VwbG9hZFdTQVBvcHVwJykge1xyXG4gICAgICAgIGxldCB1c2VyTW9kZWwgPSB0aGlzLmxzLmdldFVzZXIoKTtcclxuICAgICAgICB0aGlzLnV0aWwuc2hvd0xvYWRlcigpLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgICAgd2luZG93Lm9wZW4oYCR7TGliQ29uc3RhbnRzLmJlbmVmaXRzVXJsRXh0ZXJuYWx9L2ZhY2VzL3ZpcnR1YWwvY29udGV4dHN3aXRjaC54aHRtbD9hPSR7dXNlck1vZGVsLmFjY2Vzc190b2tlbn0mcj0ke3VzZXJNb2RlbC5yZWZyZXNoX3Rva2VufSZ2PTIyOTkmQ0xBSU1BTlRfUE9SVEFMPXRydWUmdmlldz0udXBsb2FkZG9jdW1lbnR3b3Jrc2VhcmNoYXVkaXRgLCAnX3NlbGYnKTtcclxuICAgICAgICB9KTtcclxuICAgICAgfSBlbHNlIGlmIChoaXN0b3J5TW9kZWwuYnV0dG9uICYmIGhpc3RvcnlNb2RlbC5idXR0b24uZGlhbG9nID09ICd1cGxvYWRJRFZQb3B1cCcpIHtcclxuICAgICAgICBsZXQgdXNlck1vZGVsID0gdGhpcy5scy5nZXRVc2VyKCk7XHJcbiAgICAgICAgdGhpcy51dGlsLnNob3dMb2FkZXIoKS50aGVuKCgpID0+IHtcclxuICAgICAgICAgIHdpbmRvdy5vcGVuKGAke0xpYkNvbnN0YW50cy5iZW5lZml0c1VybEV4dGVybmFsfS9mYWNlcy92aXJ0dWFsL2NvbnRleHRzd2l0Y2gueGh0bWw/YT0ke3VzZXJNb2RlbC5hY2Nlc3NfdG9rZW59JnI9JHt1c2VyTW9kZWwucmVmcmVzaF90b2tlbn0mdj0yMjk5JkNMQUlNQU5UX1BPUlRBTD10cnVlJnZpZXc9LnNlbGVjdGlkdmVyaWZpY2F0aW9ub3B0aW9uYCwgJ19zZWxmJyk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0gZWxzZSBpZiAoaGlzdG9yeU1vZGVsLmJ1dHRvbiAmJiBoaXN0b3J5TW9kZWwuYnV0dG9uLmRpYWxvZyA9PSAndXBsb2FkUGF5bWVudE9wdGlvbkRvY1BvcHVwJykge1xyXG4gICAgICAgIGxldCB1c2VyTW9kZWwgPSB0aGlzLmxzLmdldFVzZXIoKTtcclxuICAgICAgICB0aGlzLnV0aWwuc2hvd0xvYWRlcigpLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgICAgd2luZG93Lm9wZW4oYCR7TGliQ29uc3RhbnRzLmJlbmVmaXRzVXJsRXh0ZXJuYWx9L2ZhY2VzL3ZpcnR1YWwvY29udGV4dHN3aXRjaC54aHRtbD9hPSR7dXNlck1vZGVsLmFjY2Vzc190b2tlbn0mcj0ke3VzZXJNb2RlbC5yZWZyZXNoX3Rva2VufSZ2PTIyOTkmQ0xBSU1BTlRfUE9SVEFMPXRydWUmdmlldz0ucGF5bWVudG9wdGlvbmRvY3VwbG9hZGAsICdfc2VsZicpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9IGVsc2UgaWYgKGhpc3RvcnlNb2RlbC5idXR0b24gJiYgaGlzdG9yeU1vZGVsLmJ1dHRvbi5kaWFsb2cgPT0gJ292cFdhaXZlclBvcHVwJykge1xyXG4gICAgICAgIGxldCB1c2VyTW9kZWwgPSB0aGlzLmxzLmdldFVzZXIoKTtcclxuICAgICAgICBjb25zdCB0cmFuc2FjdGlvbklkID0gaGlzdG9yeU1vZGVsLnRyYW5zYWN0aW9uSWRcclxuICAgICAgICBjb25zdCBkb2NrZXROdW1iZXIgPSBoaXN0b3J5TW9kZWwuZGF0YT8uZG9ja2V0X251bWJlciB8fCAnJ1xyXG4gICAgICAgIGNvbnN0IGJ1Y0RlY2lzaW9uSWQgPSBoaXN0b3J5TW9kZWwuZGF0YT8uYnVjRGVjaXNpb25JZCB8fCAnJ1xyXG4gICAgICAgIFxyXG4gICAgICAgIHRoaXMudXRpbC5zaG93TG9hZGVyKCkudGhlbigoKSA9PiB7XHJcbiAgICAgICAgICB3aW5kb3cub3BlbihgJHtMaWJDb25zdGFudHMuYmVuZWZpdHNVcmxFeHRlcm5hbH0vZmFjZXMvdmlydHVhbC9jb250ZXh0c3dpdGNoLnhodG1sP2E9JHt1c2VyTW9kZWwuYWNjZXNzX3Rva2VufSZyPSR7dXNlck1vZGVsLnJlZnJlc2hfdG9rZW59JnY9MjI5OSZDTEFJTUFOVF9QT1JUQUw9dHJ1ZSZ2aWV3PS5tZWZpbGVvdmVycGF5bWVudHdhaXZlcnJlcXVlc3RkZWNpc2lvbmxpc3QmdHJhbnNhY3Rpb25JZD0ke3RyYW5zYWN0aW9uSWR9JmRvY2tldE51bWJlcj0ke2RvY2tldE51bWJlcn0mYnVjRGVjaXNpb25JZD0ke2J1Y0RlY2lzaW9uSWR9YCwgJ19zZWxmJyk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy51dGlsLnByZXNlbnRUb2FzdCgnU2NlbmFyaW8gdW5kZXIgZGV2ZWxvcG1lbnQuIFBsZWFzZSBjaGVjayB3aXRoIGRldmVsb3Blci4nKTtcclxuICAgICAgICB0aGlzLmxvZ2dlci5lcnJvcihoaXN0b3J5TW9kZWwpO1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmIChoaXN0b3J5TW9kZWwuYnV0dG9uLnVyaSAhPSAnJyAmJiBoaXN0b3J5TW9kZWwuYnV0dG9uLnVyaS5pbmNsdWRlcyhcIlBhZ2VcIikpIHtcclxuICAgICAgdGhpcy5sb2dnZXIuaW5mbygnSGlzdG9yeSBidXR0b24gdXJpIGluY2x1ZGVzIFBhZ2UgdmFsdWUnKTtcclxuICAgICAgaWYgKGhpc3RvcnlNb2RlbC5kYXRhICYmIGhpc3RvcnlNb2RlbC5kYXRhLnFlRGF0YSkge1xyXG4gICAgICAgIGxldCBqc29uRGF0YSA9IEpTT04ucGFyc2UoaGlzdG9yeU1vZGVsLmRhdGEucWVEYXRhKTtcclxuICAgICAgICB0aGlzLnV0aWwub3BlblBhZ2VCeUNvbnRleHRSb290V2l0aERhdGEoaGlzdG9yeU1vZGVsLmJ1dHRvbi5jb250ZXh0LCBoaXN0b3J5TW9kZWwuYnV0dG9uLnVybCwganNvbkRhdGFbMF0uZHluYW1pY1BhcmFtLCB0aGlzLm5hdik7XHJcbiAgICAgIH0gZWxzZSBpZiAoaGlzdG9yeU1vZGVsLmRhdGEpIHtcclxuICAgICAgICB0aGlzLnV0aWwub3BlblBhZ2VCeUNvbnRleHRSb290V2l0aERhdGEoaGlzdG9yeU1vZGVsLmJ1dHRvbi5jb250ZXh0LCBoaXN0b3J5TW9kZWwuYnV0dG9uLnVybCwgaGlzdG9yeU1vZGVsLmRhdGEsIHRoaXMubmF2KVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMudXRpbC5vcGVuUGFnZUJ5Q29udGV4dFJvb3QoaGlzdG9yeU1vZGVsLmJ1dHRvbi5jb250ZXh0LCBoaXN0b3J5TW9kZWwuYnV0dG9uLnVybCwgdGhpcy5uYXYpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvcGVuT2xkUmVjb3JkcygpIHtcclxuICAgIGxldCB1c2VyTW9kZWwgPSB0aGlzLmxzLmdldFVzZXIoKTtcclxuICAgIHRoaXMudXRpbC5zaG93TG9hZGVyKCkudGhlbigoKSA9PiB7XHJcbiAgICAgIGlmICh0aGlzLmxzLmlzQ3NyKCkpIHtcclxuICAgICAgICB3aW5kb3cub3BlbihgJHtMaWJDb25zdGFudHMuYmVuZWZpdHNVcmxFeHRlcm5hbH0vZmFjZXMvdmlydHVhbC9jb250ZXh0c3dpdGNoLnhodG1sP2E9JHt1c2VyTW9kZWwuYWNjZXNzX3Rva2VufSZyPSR7dXNlck1vZGVsLnJlZnJlc2hfdG9rZW59JnY9MjI5OWAsICdfc2VsZicpO1xyXG4gICAgICB9IGVsc2UgaWYgKHRoaXMubHMuaXNDbGFpbWFudCgpKSB7XHJcbiAgICAgICAgd2luZG93Lm9wZW4oYCR7TGliQ29uc3RhbnRzLmJlbmVmaXRzVXJsRXh0ZXJuYWx9L2ZhY2VzL3ZpcnR1YWwvY29udGV4dHN3aXRjaC54aHRtbD9hPSR7dXNlck1vZGVsLmFjY2Vzc190b2tlbn0mcj0ke3VzZXJNb2RlbC5yZWZyZXNoX3Rva2VufSZ2PTIyOTkmQ0xBSU1BTlRfUE9SVEFMPXRydWUmdmlldz0uY2xhaW1hbnRzdW1tYXJ5YCwgJ19zZWxmJyk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjcmVhdGVRZVF1ZXJ5TW9kZWwocXVlc3Rpb25uYWlyZVF1ZXJ5TW9kZWxzOiBRdWVzdGlvbm5haXJlUXVlcnlNb2RlbFtdKSB7XHJcbiAgICByZXR1cm4gcXVlc3Rpb25uYWlyZVF1ZXJ5TW9kZWxzLm1hcChxdWVzdGlvbm5haXJlUXVlcnlNb2RlbCA9PiB7XHJcbiAgICAgIGxldCBkeW5hbWljUGFyYW0gPSB7fTtcclxuICAgICAgdmFyIGtleU1vZGVsID0gPEtleVZhbHVlTW9kZWw+cXVlc3Rpb25uYWlyZVF1ZXJ5TW9kZWwuZHluYW1pY1BhcmFtWzBdO1xyXG4gICAgICB2YXIgdGl0bGUgPSBrZXlNb2RlbC5rZXk7XHJcbiAgICAgIHZhciB2ZXJiYWlnZUtleSA9IGtleU1vZGVsLnZhbHVlO1xyXG4gICAgICBjb25zdCB0cmFuc2xhdGVkVGV4dCA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQodmVyYmFpZ2VLZXkpO1xyXG4gICAgICBkeW5hbWljUGFyYW1bdGl0bGVdID0gdHJhbnNsYXRlZFRleHQ7XHJcbiAgICAgIGR5bmFtaWNQYXJhbVsnaGlkQXBwZWFsRGVjaXNpb24nXSA9IHF1ZXN0aW9ubmFpcmVRdWVyeU1vZGVsLmRhdGFbJ2hpZEFwcGVhbERlY2lzaW9uJ107XHJcbiAgICAgIGR5bmFtaWNQYXJhbVsnZG9ja2V0bnVtYmVyJ10gPSBxdWVzdGlvbm5haXJlUXVlcnlNb2RlbC5kYXRhWydkb2NrZXRudW1iZXInXTtcclxuICAgICAgZHluYW1pY1BhcmFtWydwYXJlbnRBcHBlYWxJZCddID0gcXVlc3Rpb25uYWlyZVF1ZXJ5TW9kZWwuZGF0YVsncGFyZW50QXBwZWFsSWQnXTtcclxuICAgICAgZHluYW1pY1BhcmFtWydhcHBlYWxUeXBlJ10gPSBxdWVzdGlvbm5haXJlUXVlcnlNb2RlbC5kYXRhWydhcHBlYWxUeXBlJ107XHJcbiAgICAgIGR5bmFtaWNQYXJhbVsnYXBwZWFsTGV2ZWwnXSA9IHF1ZXN0aW9ubmFpcmVRdWVyeU1vZGVsLmRhdGFbJ2FwcGVhbExldmVsJ107XHJcbiAgICAgIGlmICh0aGlzLnV0aWwuaXNTdGF0ZSgnTUUnKSkge1xyXG4gICAgICAgIGR5bmFtaWNQYXJhbVsnYXBwZWFsQ29uc2lkZXJlZExhdGVEYXRlJ10gPSBxdWVzdGlvbm5haXJlUXVlcnlNb2RlbC5kYXRhWydhcHBlYWxDb25zaWRlcmVkTGF0ZURhdGUnXTtcclxuICAgICAgICBkeW5hbWljUGFyYW1bJ2xhdGVBcHBlYWwnXSA9IHF1ZXN0aW9ubmFpcmVRdWVyeU1vZGVsLmRhdGFbJ2xhdGVBcHBlYWwnXTtcclxuICAgICAgfVxyXG4gICAgICBxdWVzdGlvbm5haXJlUXVlcnlNb2RlbFsnZHluYW1pY1BhcmFtJ10gPSBkeW5hbWljUGFyYW07XHJcbiAgICAgIHF1ZXN0aW9ubmFpcmVRdWVyeU1vZGVsWydhdXRvU2F2ZSddID0gdHJ1ZTtcclxuICAgICAgcmV0dXJuIHF1ZXN0aW9ubmFpcmVRdWVyeU1vZGVsO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBjbG9zZVFlKCkge1xyXG4gICAgdGhpcy5pc09wZW5RZSA9IGZhbHNlO1xyXG4gICAgdGhpcy5zZWxlY3RlZE1vZGVsID0gbnVsbDtcclxuICAgIHRoaXMubG9nZ2VyLmluZm8oJ1FlIGNhbmNlbCcpO1xyXG4gIH1cclxuXHJcbiAgcXVTdWNjZXNzKCkge1xyXG4gICAgdGhpcy5oaXN0b3JpZXMgPSBudWxsO1xyXG4gICAgdGhpcy5pc09wZW5RZSA9IGZhbHNlO1xyXG4gICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRNb2RlbCkge1xyXG4gICAgICB0aGlzLmVzXHJcbiAgICAgICAgLmRpc2FibGVIaXN0b3J5QnV0dG9uKHRoaXMuc2VsZWN0ZWRNb2RlbC50cmFuc2FjdGlvbklkLCB0aGlzLnNlbGVjdGVkTW9kZWwuaGlzdG9yeUtleSlcclxuICAgICAgICAuc3Vic2NyaWJlKHJlcyA9PiB7XHJcbiAgICAgICAgICB0aW1lcigyMDAwKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRIaXN0b3J5KClcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0sIGVyciA9PiB7XHJcbiAgICAgICAgICB0aGlzLmxvZ2dlci5lcnJvcihcIkVycm9yIHdoaWxlIGRlYWN0aXZhdGluZyB0aGUgZXZlbnQuXCIsIGVycik7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmxvZ2dlci5pbmZvKCdRZSBzdWNjZXNzJyk7XHJcbiAgfVxyXG5cclxuICBjbG9zZVVwbG9hZFBvcHVwKCkge1xyXG4gICAgdGhpcy5zaG93VXBsb2FkUG9wdXAgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIHVwbG9hZFBvcHVwRG9uZSgpIHtcclxuICAgIHRoaXMuc2hvd1VwbG9hZFBvcHVwID0gZmFsc2U7XHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZE1vZGVsKSB7XHJcbiAgICAgIHRoaXMuZXNcclxuICAgICAgICAuZGlzYWJsZUhpc3RvcnlCdXR0b24odGhpcy5zZWxlY3RlZE1vZGVsLnRyYW5zYWN0aW9uSWQsIHRoaXMuc2VsZWN0ZWRNb2RlbC5oaXN0b3J5S2V5KVxyXG4gICAgICAgIC5zdWJzY3JpYmUocmVzID0+IHtcclxuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICB3aW5kb3cubG9jYXRpb24ucmVsb2FkKCk7XHJcbiAgICAgICAgICB9LCAxMDAwKTtcclxuICAgICAgICB9LCBlcnIgPT4ge1xyXG4gICAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IoXCJFcnJvciB3aGlsZSBkZWFjdGl2YXRpbmcgdGhlIGV2ZW50LlwiLCBlcnIpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcblxyXG5leHBvcnQgY2xhc3MgS2V5VmFsdWVNb2RlbCB7XHJcbiAga2V5OiBzdHJpbmc7XHJcbiAgdmFsdWU6IHN0cmluZztcclxufVxyXG5cclxuIiwiPGFwcC1tdWx0aS1xdWVzdGlvbm5haXJlIFtxZVF1ZXJ5TW9kZWxzXT1cInFlUXVlcnlNb2RlbHNcIiAqbmdJZj1cImlzT3BlblFlXCIgKG1vZGVsQ2FuY2VsKT1cImNsb3NlUWUoKVwiXHJcbiAgKG9uQ29tcGxldGUpPVwicXVTdWNjZXNzKClcIj48L2FwcC1tdWx0aS1xdWVzdGlvbm5haXJlPlxyXG48YXBwLXByb29mLW9mLWFueXRoaW5nICpuZ0lmPVwic2hvd1VwbG9hZFBvcHVwXCIgW3VwbG9hZFR5cGVJZF09XCJ1cGxvYWRUeXBlSWRcIiBbZW1wbG95ZXJEYXRhTW9kZWxdPVwiZW1wbG95ZXJEYXRhTW9kZWxcIlxyXG4gIFtkYXRhXT1cImRhdGFNb2RlbFwiIChjYW5jZWwpPVwiY2xvc2VVcGxvYWRQb3B1cCgpXCIgKHN1Y2Nlc3MpPVwidXBsb2FkUG9wdXBEb25lKClcIj48L2FwcC1wcm9vZi1vZi1hbnl0aGluZz5cclxuPGFwcC1kYXNoYm9hcmQtaGVscCAqbmdJZj1cImhzLmlzU2hvd2luZygpXCIgW2FjdGl2ZUluZGV4XT1cIjBcIj48L2FwcC1kYXNoYm9hcmQtaGVscD5cclxuPGlvbi1ncmlkPlxyXG4gIDxpb24tcm93PlxyXG4gICAgPGlvbi1jb2wgc2l6ZT1cIjEyXCIgc2l6ZVhsPVwiOFwiIHNpemVMZz1cIjhcIiBzaXplTWQ9XCIxMFwiIG9mZnNldFhsPVwiMlwiIG9mZnNldExnPVwiMlwiIG9mZnNldE1kPVwiMVwiPlxyXG4gICAgICA8aDE+WW91ciB1bmVtcGxveW1lbnQgaGlzdG9yeTwvaDE+XHJcbiAgICA8L2lvbi1jb2w+XHJcbiAgPC9pb24tcm93PlxyXG4gIDxpb24tcm93PlxyXG4gICAgPGlvbi1jb2wgc2l6ZT1cIjEyXCIgc2l6ZVhsPVwiOFwiIHNpemVMZz1cIjhcIiBzaXplTWQ9XCIxMFwiIG9mZnNldFhsPVwiMlwiIG9mZnNldExnPVwiMlwiIG9mZnNldE1kPVwiMVwiPlxyXG5cclxuICAgICAgPGlvbi1yb3c+XHJcbiAgICAgICAgPGlvbi1jb2wgc2l6ZT1cIjNcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJpb24tdGV4dC1sZWZ0IGZpZWxkXCIgKm5nSWY9XCJoaXN0b3JpZXNcIj5cclxuICAgICAgICAgICAgPGxhYmVsIGZvcj1cInRpbWVsaW5lXCIgaWQ9XCJsYmxUaW1lbGluZVwiPnt7dGltZT8uZGVzY319PC9sYWJlbD48YnIgLz5cclxuICAgICAgICAgICAgPHAtc2VsZWN0QnV0dG9uIFtvcHRpb25zXT1cInRpbWVPcHRpb25cIiBbKG5nTW9kZWwpXT1cInRpbWVcIiBvcHRpb25MYWJlbD1cImRlc2NcIlxyXG4gICAgICAgICAgICAgIChvbkNoYW5nZSk9XCJoYW5kbGVDaGFuZ2UoJGV2ZW50KVwiIFthcmlhTGFiZWxsZWRCeV09XCInbGJsVGltZWxpbmUnXCI+XHJcbiAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIGxldC1pdGVtIHBUZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgIDxkaXYgW3BUb29sdGlwXT1cIml0ZW0uZGVzY1wiIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiIHRhYmluZGV4PVwiMFwiIFthdHRyLmFyaWEtbGFiZWxdPVwiaXRlbS5kZXNjXCJcclxuICAgICAgICAgICAgICAgICAgcm9sZT1cIm5vdGVcIj5cclxuICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCIhaXRlbS5pY29uXCI+e3tpdGVtLmRlc2N9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgPGZhLWljb24gW2ljb25dPVwiWydmYXInLCBpdGVtLmljb25dXCIgKm5nSWY9XCJpdGVtLmljb25cIj48L2ZhLWljb24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICA8L3Atc2VsZWN0QnV0dG9uPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgIDxpb24tY29sIHNpemU9XCI5XCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW9uLXRleHQtcmlnaHQgZmllbGRcIiAqbmdJZj1cImhpc3Rvcmllc1wiPlxyXG4gICAgICAgICAgICA8bGFiZWw+e3tmaWx0ZXI/LmRlc2N9fTwvbGFiZWw+PGJyIC8+XHJcbiAgICAgICAgICAgIDxwLXNlbGVjdEJ1dHRvbiBbb3B0aW9uc109XCJmaWx0ZXJPcHRpb25zXCIgWyhuZ01vZGVsKV09XCJmaWx0ZXJcIiBvcHRpb25MYWJlbD1cImljb25cIlxyXG4gICAgICAgICAgICAgIChvbkNoYW5nZSk9XCJoYW5kbGVDaGFuZ2UoJGV2ZW50KVwiPlxyXG4gICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBsZXQtaXRlbSBwVGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IFtwVG9vbHRpcF09XCJpdGVtLmRlc2NcIiB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIiB0YWJpbmRleD1cIjBcIiBbYXR0ci5hcmlhLWxhYmVsXT1cIml0ZW0uZGVzY1wiXHJcbiAgICAgICAgICAgICAgICAgIHJvbGU9XCJub3RlXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIWl0ZW0uaWNvblwiPnt7aXRlbS5hbHREZXNjfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDxmYS1pY29uIFtpY29uXT1cIlsnZmFyJywgaXRlbS5pY29uXVwiICpuZ0lmPVwiaXRlbS5pY29uXCI+PC9mYS1pY29uPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgPC9wLXNlbGVjdEJ1dHRvbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgPC9pb24tcm93PlxyXG5cclxuICAgICAgPGJyIC8+XHJcbiAgICAgIDxwLXRpbWVsaW5lIFt2YWx1ZV09XCJmaWx0ZXJlZEhpc3Rvcmllc1wiICpuZ0lmPVwiKGZpbHRlcmVkSGlzdG9yaWVzICYmIGZpbHRlcmVkSGlzdG9yaWVzLmxlbmd0aCA+IDApXCI+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cIm1hcmtlclwiIGxldC1oaXN0PlxyXG4gICAgICAgICAgPHNwYW4gW3N0eWxlLmNvbG9yXT1cImhpc3QuY29sb3JcIj5cclxuICAgICAgICAgICAgPGZhLWljb24gW2ljb25dPVwiWydmYXInLCBoaXN0Lmljb25dXCIgY2xhc3M9XCJjdXN0b20tbWFya2VyXCI+PC9mYS1pY29uPlxyXG4gICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImNvbnRlbnRcIiBsZXQtaGlzdD5cclxuICAgICAgICAgIDxoMSBjbGFzcz1cImFwcC1hY2NvcmRpYW4taGVhZGluZ1wiIHN0eWxlPVwibWFyZ2luLXRvcDogMHB4OyBmb250LXdlaWdodDogYm9sZDtcIj57e2hpc3QueWVhcn19PC9oMT5cclxuICAgICAgICAgIDxwLWFjY29yZGlvbiBleHBhbmRJY29uPVwicGkgcGktZncgcGktY2hldnJvbi11cFwiIGNvbGxhcHNlSWNvbj1cInBpIHBpLWZ3IHBpLWNoZXZyb24tdXBcIj5cclxuICAgICAgICAgICAgPHAtYWNjb3JkaW9uVGFiICpuZ0Zvcj1cImxldCBoaXN0b3J5IG9mIGhpc3QuaGlzdG9yeTsgbGV0IGkgPSBpbmRleFwiIFtzZWxlY3RlZF09XCJpc1ZhbHVlU2VsZWN0ZWQoaGlzdG9yeSxpKVwiPlxyXG4gICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIj5cclxuICAgICAgICAgICAgICAgIDxpb24tcm93IHN0eWxlPVwid2lkdGg6IC13ZWJraXQtZmlsbC1hdmFpbGFibGU7XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxpb24tY29sIGNsYXNzPVwiaW9uLXRleHQtbGVmdFwiIHNpemU9XCIxMlwiIHNpemVYbD1cIjNcIiBzaXplTGc9XCIzXCIgc2l6ZU1kPVwiM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYXBwLWFjY29yZGlhbi1oZWFkaW5nXCIgW3N0eWxlLmNvbG9yXT1cImhpc3RvcnkuY29sb3JcIj57e2hpc3RvcnkuZXZlbnREYXRlfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgICAgICAgICAgPGlvbi1jb2wgY2xhc3M9XCJhcHAtdGV4dC1hbGlnblwiIHNpemU9XCIxMVwiIHNpemVYbD1cIjhcIiBzaXplTGc9XCI4XCIgc2l6ZU1kPVwiOFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYXBwLWFjY29yZGlhbi1oZWFkaW5nXCIgW3N0eWxlLmNvbG9yXT1cImhpc3RvcnkuY29sb3JcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIHt7aGlzdG9yeS50aXRsZX19XHJcbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICAgICAgICAgIDxpb24tY29sIHNpemU9XCIxXCIgY2xhc3M9XCJpb24tdGV4dC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBbc3R5bGUuY29sb3JdPVwiaGlzdG9yeS5jb2xvclwiICpuZ0lmPVwiZ2V0SWNvbihoaXN0b3J5KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGZhLWljb24gW2ljb25dPVwiZ2V0SWNvbihoaXN0b3J5KVwiIGNsYXNzPVwiY3VzdG9tLW1hcmtlclwiPjwvZmEtaWNvbj5cclxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgICAgICAgIDwvaW9uLXJvdz5cclxuICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJjb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFwcC1hY2NvcmRpYW4tYm9keVwiIFtpbm5lckh0bWxdPVwiaGlzdG9yeS5kZXNjXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImhpc3RvcnkuYnV0dG9uICE9IG51bGxcIj5cclxuICAgICAgICAgICAgICAgICAgPGJyIC8+PGJyIC8+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpb24tdGV4dC1yaWdodFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpb24tYnV0dG9uIFthdHRyLmFyaWEtbGFiZWxdPVwiJ2dvIHRvJyArIGhpc3RvcnkuYnV0dG9uLmJ1dHRvblRleHRcIiBmaWxsPVwib3V0bGluZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cIi0tY29sb3I6IHt7aGlzdG9yeS5idXR0b24uY29sb3J9fTsgLS1ib3JkZXItY29sb3I6IHt7aGlzdG9yeS5idXR0b24uY29sb3J9fTsgLS1ib3JkZXItd2lkdGg6IDJweFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBzaGFwZT1cInJvdW5kXCIgY2xhc3M9XCJzbWFsbC1idXR0b25cIiAoY2xpY2spPVwib3BlbihoaXN0b3J5KVwiPnt7aGlzdG9yeS5idXR0b24uYnV0dG9uVGV4dH19XHJcbiAgICAgICAgICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgIDwvcC1hY2NvcmRpb25UYWI+XHJcbiAgICAgICAgICA8L3AtYWNjb3JkaW9uPlxyXG4gICAgICAgICAgPGJyIC8+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgPC9wLXRpbWVsaW5lPlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cImlvbi10ZXh0LWNlbnRlclwiICpuZ0lmPVwiaXNMb2FkaW5nXCI+XHJcbiAgICAgICAgPGlvbi1zcGlubmVyIG5hbWU9XCJkb3RzXCI+PC9pb24tc3Bpbm5lcj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaW9uLXBhZGRpbmctdG9wIGlvbi10ZXh0LWNlbnRlciBhcHAtYWNjb3JkaWFuLWJvZHlcIlxyXG4gICAgICAgICpuZ0lmPVwiKCFmaWx0ZXJlZEhpc3RvcmllcyB8fCBmaWx0ZXJlZEhpc3Rvcmllcy5sZW5ndGggPCAxKSAmJiAhaXNMb2FkaW5nXCI+XHJcbiAgICAgICAgPGZhLWljb24gW2ljb25dPVwiWydmYXInLCBmaWx0ZXJJY29uXVwiIGNsYXNzPVwibGFyZ2UtaWNvblwiPjwvZmEtaWNvbj5cclxuICAgICAgICA8cD57eydObyBoaXN0b3J5IHByZXNlbnQuJyB8IHRyYW5zbGF0ZX19PC9wPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgc3R5bGU9XCJwYWRkaW5nLWxlZnQ6IDUlO1wiICpuZ0lmPVwiIWlzTG9hZGluZyAmJiBzaG93T2xkZXJSZWNvcmRzTGlua1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJob3Jpem9udGFsLWFsaWduXCI+XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImFwcC1hY2NvcmRpYW4tYm9keVwiPlxyXG4gICAgICAgICAgICA8c3Ryb25nPnt7ICdUbyB2aWV3IHByaW9yIHVuZW1wbG95bWVudCBoaXN0b3J5IGNsaWNrIGhlcmUnIHwgdHJhbnNsYXRlIH19PC9zdHJvbmc+XHJcbiAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICA8aW9uLWJ1dHRvbiBhcmlhLWxhYmVsPVwidmlldyBvbGQgcmVjb3Jkc1wiIChjbGljayk9XCJvcGVuT2xkUmVjb3JkcygpXCIgZmlsbD1cIm91dGxpbmVcIiBzaXplPVwic21hbGxcIlxyXG4gICAgICAgICAgICBjbGFzcz1cImFjdGlvbi1idXR0b25cIj5cclxuICAgICAgICAgICAgPGZhLWljb24gW2ljb25dPVwiWydmYXMnLCAnZXh0ZXJuYWwtbGluay1hbHQnXVwiIGNsYXNzPVwiZXh0ZXJuYWwtbGluay1pY29uXCI+PC9mYS1pY29uPlxyXG4gICAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGJyIC8+XHJcblxyXG4gICAgPC9pb24tY29sPlxyXG4gIDwvaW9uLXJvdz5cclxuPC9pb24tZ3JpZD4iXX0=
|
|
614
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlzdG9yeS1wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9oaXN0b3J5LXBhZ2UvaGlzdG9yeS1wYWdlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy9oaXN0b3J5LXBhZ2UvaGlzdG9yeS1wYWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQVF6RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUl2RSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lDZjdCLG1EQUM2QjtJQUQ2QyxtTkFBZSxlQUFBLGdCQUFTLENBQUEsSUFBQyxxTUFDbkYsZUFBQSxtQkFBVyxDQUFBLElBRHdFO0lBQ3RFLGlCQUEwQjs7O0lBRDlCLG9EQUErQjs7OztJQUV4RCxpREFDaUY7SUFBNUQsc01BQVUsZUFBQSwwQkFBa0IsQ0FBQSxJQUFDLDJMQUFZLGVBQUEseUJBQWlCLENBQUEsSUFBN0I7SUFBK0IsaUJBQXdCOzs7SUFEMUQsa0RBQTZCLCtDQUFBLDBCQUFBOzs7SUFFNUUseUNBQWtGOztJQUF2QywrQkFBaUI7OztJQW1CMUMsNEJBQXlCO0lBQUEsWUFBYTtJQUFBLGlCQUFPOzs7SUFBcEIsZUFBYTtJQUFiLG1DQUFhOzs7O0lBQ3RDLDhCQUFpRTs7O0lBQXhELGdFQUEyQjs7O0lBSHRDLCtCQUNj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bmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5hdkNvbnRyb2xsZXIgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XHJcbmltcG9ydCB7IEVycm9yTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvRXJyb3JNb2RlbCc7XHJcbmltcG9ydCB7IExpYkNvbnN0YW50cyB9IGZyb20gJy4uLy4uL21vZGVscy9MaWJDb25zdGFudHMnO1xyXG5pbXBvcnQgeyBIZWxwU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2hlbHAvaGVscC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRW1wbG95ZXJEYXRhTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvZmlsZXVwbG9hZC9FbXBsb3llckRhdGFNb2RlbCc7XHJcbmltcG9ydCB7IEJhc2VQYWdlIH0gZnJvbSAnLi4vLi4vcGFnZXMvQmFzZVBhZ2UnO1xyXG5pbXBvcnQgeyBMb2dnZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbG9nZ2VyL2xvZ2dlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUXVlc3Rpb25uYWlyZVF1ZXJ5TW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvcXVlc3Rpb25uYWlyZS9RdWVzdGlvbm5haXJlUXVlcnlNb2RlbCc7XHJcbmltcG9ydCB7IExvZ2luU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2xvZ2luL2xvZ2luLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBIaXN0b3J5TW9kZWwsIFllYXJXaXNlSGlzdG9yeSB9IGZyb20gJy4uLy4uL21vZGVscy9kYXNoYm9hcmQtbW9kZWwnO1xyXG5pbXBvcnQgeyByb3dFeHBhbnNpb25UcmlnZ2VyIH0gZnJvbSAnLi4vLi4vYW5uaW1hdGlvbnMvYXBwLWFuaW1hdGlvbnMnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IFV0aWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdXRpbC91dGlsLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IHRpbWVyIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEV2ZW50U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2V2ZW50LXNlcnZpY2UvZXZlbnQtc2VydmljZSc7XHJcblxyXG5cclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1oaXN0b3J5LXBhZ2UnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9oaXN0b3J5LXBhZ2UuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9oaXN0b3J5LXBhZ2UuY29tcG9uZW50LmNzcycsXHJcbiAgYW5pbWF0aW9uczogW3Jvd0V4cGFuc2lvblRyaWdnZXJdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBIaXN0b3J5UGFnZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIHNlbGVjdGVkTW9kZWw6IEhpc3RvcnlNb2RlbCBcclxuICBpc0xvYWRpbmcgPSBmYWxzZTtcclxuICBoaXN0b3JpZXM6IFllYXJXaXNlSGlzdG9yeVtdO1xyXG4gIGZpbHRlcmVkSGlzdG9yaWVzOiBZZWFyV2lzZUhpc3RvcnlbXTtcclxuICBmaWx0ZXJPcHRpb25zOiBhbnlbXTtcclxuICB0aW1lT3B0aW9uOiBhbnlbXTtcclxuICB2YWx1ZSA9IHsgaWNvbjogbnVsbCwgZGVzYzogJ0FsbCcsIHZhbHVlOiBcIkFMTFwiIH07XHJcbiAgdGltZSA9IHsgaWNvbjogJ2Nsb2NrJywgZGVzYzogJ2N1cnJlbnQnLCB2YWx1ZTogXCJDVVJSXCIgfTtcclxuICBmaWx0ZXIgPSB7IGljb246IG51bGwsIGRlc2M6ICdhbGwgeW91ciBoaXN0b3J5JywgdmFsdWU6IFwiQUxMXCIsIGFsdERlc2M6ICdhbGwnIH07XHJcbiAgZmlsdGVySWNvbiA9ICdoaXN0b3J5JztcclxuICBwYXltZW50VGV4dDogc3RyaW5nO1xyXG4gIHFlUXVlcnlNb2RlbHM6IFF1ZXN0aW9ubmFpcmVRdWVyeU1vZGVsW107XHJcbiAgaXNPcGVuUWU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBzaG93T2xkZXJSZWNvcmRzTGluazogYm9vbGVhbjtcclxuICB0cmFuc2FjdGlvbklkU2VsZWN0ZWQ6IGFueTtcclxuICBzaG93VXBsb2FkUG9wdXA6IGJvb2xlYW4gPSBmYWxzZTtcclxuICB1cGxvYWRUeXBlSWQ6IFN0cmluZztcclxuICBlbXBsb3llckRhdGFNb2RlbDogQXJyYXk8RW1wbG95ZXJEYXRhTW9kZWw+O1xyXG4gIGNvdW50ID0gMDtcclxuICBkYXRhTW9kZWwgOiBhbnk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZXM6IEV2ZW50U2VydmljZSwgcHVibGljIGhzOiBIZWxwU2VydmljZSwgcHJpdmF0ZSB1dGlsOiBVdGlsU2VydmljZSxcclxuICAgIHByaXZhdGUgbmF2OiBOYXZDb250cm9sbGVyLCBwdWJsaWMgbHM6IExvZ2luU2VydmljZSwgcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsIHByaXZhdGUgbG9nZ2VyOiBMb2dnZXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUpIHtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy50aW1lT3B0aW9uID0gW1xyXG4gICAgICB7IGljb246ICdjbG9jaycsIGRlc2M6ICdjdXJyZW50JywgdmFsdWU6IFwiQ1VSUlwiIH0sXHJcbiAgICAgIHsgaWNvbjogJ2hpc3RvcnknLCBkZXNjOiAncGFzdCcsIHZhbHVlOiBcIlBBU1RcIiB9LFxyXG4gICAgXTtcclxuXHJcbiAgICBpZiAodGhpcy51dGlsLmlzU3RhdGUoJ01TJykpIHtcclxuICAgICAgdGhpcy5wYXltZW50VGV4dCA9IFwid2Vla2x5IGNlcnRpZmljYXRpb25zIGFuZCBwYXltZW50c1wiXHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgdGhpcy5wYXltZW50VGV4dCA9IFwid2Vla2xpZXMgYW5kIHBheW1lbnRzXCJcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmZpbHRlck9wdGlvbnMgPSBbXHJcbiAgICAgIHsgaWNvbjogbnVsbCwgZGVzYzogJ2FsbCB5b3VyIGhpc3RvcnknLCB2YWx1ZTogXCJBTExcIiwgYWx0RGVzYzogJ2FsbCcgfSxcclxuICAgICAgeyBpY29uOiAnc2Fjay1kb2xsYXInLCBkZXNjOiB0aGlzLnBheW1lbnRUZXh0LCB2YWx1ZTogXCJXS0xZXCIgfSxcclxuICAgICAgeyBpY29uOiAnZmlsZS11cGxvYWQnLCBkZXNjOiAndXBsb2FkZWQgZG9jdW1lbnRzJywgdmFsdWU6IFwiRE9DU1wiIH0sXHJcbiAgICAgIHsgaWNvbjogJ2JhbGFuY2Utc2NhbGUnLCBkZXNjOiAnaXNzdWUgJiBhcHBlYWxzJywgdmFsdWU6IFwiQVBQTFwiIH1cclxuXHJcbiAgICBdO1xyXG5cclxuICAgIGxldCB0eG5JZCA9IHRoaXMuYWN0aXZhdGVkUm91dGUuc25hcHNob3QucXVlcnlQYXJhbU1hcC5nZXQoJ3R4bmlkJyk7XHJcbiAgICBpZiAodHhuSWQgIT0gbnVsbCkge1xyXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uSWRTZWxlY3RlZCA9IGF0b2IodHhuSWQpO1xyXG4gICAgICAvL3RoaXMubG9nZ2VyLmluZm8odGhpcy50cmFuc2FjdGlvbklkU2VsZWN0ZWQpO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICB0aGlzLmxvYWRIaXN0b3J5KCk7XHJcbiAgfVxyXG5cclxuICBnZXRDdXJyZW50WWVhckhpc3RvcnkoKSB7XHJcbiAgICBsZXQgdHlwZUZpbHRlciA9IHRoaXMuZmlsdGVyLnZhbHVlO1xyXG4gICAgbGV0IHRpbWVGaWx0ZXIgPSB0aGlzLnRpbWUudmFsdWU7XHJcbiAgICBcclxuXHJcbiAgICBpZiAodGltZUZpbHRlciA9PSAnQ1VSUicpIHtcclxuICAgICAgdGhpcy5maWx0ZXJlZEhpc3RvcmllcyA9IHRoaXMuaGlzdG9yaWVzLmZpbHRlcihoaXN0ID0+IChoaXN0LnllYXIgIT0gJ1N0YXJ0JyAmJiBwYXJzZUludChoaXN0LnllYXIpID09IG5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKSkpO1xyXG4gICAgICB0aGlzLmZpbHRlcmVkSGlzdG9yaWVzID0gdGhpcy5nZXRGaWx0ZXJlZEhpc3Rvcmllcyh0aGlzLmZpbHRlcmVkSGlzdG9yaWVzLCB0eXBlRmlsdGVyKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldEljb24oaGlzdG9yeTogSGlzdG9yeU1vZGVsKSB7XHJcbiAgICBsZXQgaGlzdCA9IHRoaXMuZmlsdGVyT3B0aW9ucy5maWx0ZXIoZm8gPT4gZm8udmFsdWUgPT0gaGlzdG9yeS5wcm9jZXNzVHlwZSlbMF07XHJcbiAgICBpZiAoaGlzdCkge1xyXG4gICAgICByZXR1cm4gWydmYXInLCBoaXN0Lmljb25dO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBsb2FkSGlzdG9yeSgpIHtcclxuICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcclxuICAgIHRoaXMuZXMuZ2V0SGlzdG9yeU9mTG9nZ2VkaW5Vc2VyKClcclxuICAgICAgLnN1YnNjcmliZShyZXMgPT4ge1xyXG4gICAgICAgIHRoaXMuaGlzdG9yaWVzID0gcmVzLmhpc3Rvcnk7XHJcbiAgICAgICAgdGhpcy5zaG93T2xkZXJSZWNvcmRzTGluayA9IHJlcy5zaG93T2xkZXJSZWNvcmRzTGluaztcclxuICAgICAgICAvL3RoaXMuZmlsdGVyZWRIaXN0b3JpZXMgPSBbLi4udGhpcy5oaXN0b3JpZXNdO1xyXG4gICAgICAgIHRoaXMuZ2V0Q3VycmVudFllYXJIaXN0b3J5KCk7XHJcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgfSwgZXJyID0+IHtcclxuICAgICAgICB0aGlzLmhpc3RvcmllcyA9IG51bGw7XHJcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmZpbHRlcmVkSGlzdG9yaWVzID0gbnVsbDtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBoYW5kbGVDaGFuZ2UoZXZlbnQpIHtcclxuICAgIGxldCB0eXBlRmlsdGVyID0gdGhpcy5maWx0ZXIudmFsdWU7XHJcbiAgICBsZXQgdGltZUZpbHRlciA9IHRoaXMudGltZS52YWx1ZTtcclxuICAgIHRoaXMuZmlsdGVySWNvbiA9IHRoaXMudGltZS5pY29uO1xyXG4gICAgaWYgKHRpbWVGaWx0ZXIgPT0gJ0NVUlInKSB7XHJcbiAgICAgIHRoaXMuZmlsdGVyZWRIaXN0b3JpZXMgPSB0aGlzLmhpc3Rvcmllcy5maWx0ZXIoaGlzdCA9PiAoaGlzdC55ZWFyICE9ICdTdGFydCcgJiYgcGFyc2VJbnQoaGlzdC55ZWFyKSA9PSBuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCkpKTtcclxuICAgICAgdGhpcy5maWx0ZXJlZEhpc3RvcmllcyA9IHRoaXMuZ2V0RmlsdGVyZWRIaXN0b3JpZXModGhpcy5maWx0ZXJlZEhpc3RvcmllcywgdHlwZUZpbHRlcik7XHJcbiAgICB9IGVsc2UgaWYgKHRpbWVGaWx0ZXIgPT0gJ1BBU1QnKSB7XHJcbiAgICAgIHRoaXMuZmlsdGVyZWRIaXN0b3JpZXMgPSB0aGlzLmhpc3Rvcmllcy5maWx0ZXIoaGlzdCA9PiAoaGlzdC55ZWFyICE9ICdTdGFydCcgJiYgaGlzdC55ZWFyICE9IG5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKSArICcnKSk7XHJcbiAgICAgIHRoaXMuZmlsdGVyZWRIaXN0b3JpZXMgPSB0aGlzLmdldEZpbHRlcmVkSGlzdG9yaWVzKHRoaXMuZmlsdGVyZWRIaXN0b3JpZXMsIHR5cGVGaWx0ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0eXBlRmlsdGVyICE9ICdBTEwnKSB7XHJcbiAgICAgIHRoaXMuZmlsdGVySWNvbiA9IHRoaXMuZmlsdGVyLmljb247XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IHl3aCA9IHRoaXMuZmlsdGVyZWRIaXN0b3JpZXMuZmlsdGVyKGggPT4gaC55ZWFyID09ICdTdGFydCcpO1xyXG5cclxuICAgIGlmICh0aGlzLmZpbHRlcmVkSGlzdG9yaWVzLmxlbmd0aCA+IDAgJiYgeXdoLmxlbmd0aCA8IDEpIHtcclxuICAgICAgdGhpcy5maWx0ZXJlZEhpc3Rvcmllcy5wdXNoKHtcclxuICAgICAgICBjb2xvcjogJ3ZhcigtLWlvbi1jb2xvci1tZWRpdW0tZ3JheSknLFxyXG4gICAgICAgIGljb246ICdob3VyZ2xhc3Mtc3RhcnQnLFxyXG4gICAgICAgIGhpc3Rvcnk6IFtdLFxyXG4gICAgICAgIHllYXI6ICdTdGFydCdcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRGaWx0ZXJlZEhpc3RvcmllcyhoaXN0b3JpZXM6IFllYXJXaXNlSGlzdG9yeVtdLCBmaWx0ZXI6IHN0cmluZykge1xyXG4gICAgaWYgKGZpbHRlciA9PSAnQUxMJykge1xyXG4gICAgICB0aGlzLmNvdW50ID0gdGhpcy5jb3VudCArIDE7XHJcbiAgICAgIHJldHVybiBoaXN0b3JpZXM7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gaGlzdG9yaWVzXHJcbiAgICAgIC5maWx0ZXIoaGlzdCA9PiBoaXN0Lmhpc3Rvcnkuc29tZShzdWJIaXN0ID0+IHN1Ykhpc3QucHJvY2Vzc1R5cGUgPT09IGZpbHRlcikpXHJcbiAgICAgIC5tYXAoaGlzdG9yeSA9PiB7XHJcbiAgICAgICAgbGV0IG5ld0hpc3QgPSBPYmplY3QuYXNzaWduKHt9LCBoaXN0b3J5KTtcclxuICAgICAgICBuZXdIaXN0Lmhpc3RvcnkgPSBuZXdIaXN0Lmhpc3RvcnkuZmlsdGVyKGhpc3QgPT4gaGlzdC5wcm9jZXNzVHlwZSA9PT0gZmlsdGVyKTtcclxuICAgICAgICByZXR1cm4gbmV3SGlzdDtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBpb25WaWV3V2lsbExlYXZlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5ocy5zZXRIZWxwQXZhaWxhYmlsaXR5KGZhbHNlKTtcclxuICB9XHJcblxyXG4gIGlvblZpZXdEaWRFbnRlcigpOiB2b2lkIHtcclxuICAgIHRoaXMuaHMuc2V0SGVscEF2YWlsYWJpbGl0eSh0cnVlKTtcclxuICB9XHJcblxyXG4gIGlzVmFsdWVTZWxlY3RlZChoaXN0b3J5OiBIaXN0b3J5TW9kZWwsIGNvdW50OiBhbnkpIHtcclxuICAgIC8vdGhpcy5sb2dnZXIuaW5mbygnaXMgdmFsdWUgc2VsZWN0ZWQnICwgdGhpcy50cmFuc2FjdGlvbklkU2VsZWN0ZWQpO1xyXG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb25JZFNlbGVjdGVkID09IG51bGwgJiYgY291bnQgPT0gMCkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH0gZWxzZSBpZiAoaGlzdG9yeS50cmFuc2FjdGlvbklkID09IHRoaXMudHJhbnNhY3Rpb25JZFNlbGVjdGVkKSB7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgb3BlbihoaXN0b3J5TW9kZWw6IEhpc3RvcnlNb2RlbCkge1xyXG5cclxuICAgIHRoaXMuc2VsZWN0ZWRNb2RlbCA9IGhpc3RvcnlNb2RlbDtcclxuICAgIGlmIChoaXN0b3J5TW9kZWwuYnV0dG9uLnVyaS5pbmNsdWRlcyhcIlBvcHVwXCIpKSB7XHJcbiAgICAgIHRoaXMubG9nZ2VyLmluZm8oJ0hpc3RvcnkgYnV0dG9uIHVyaSBpbmNsdWRlcyBQb3B1cCB2YWx1ZScpO1xyXG4gICAgICBpZiAodGhpcy5scy5pc0NzcigpICYmIGhpc3RvcnlNb2RlbC5idXR0b24gJiYgaGlzdG9yeU1vZGVsLmJ1dHRvbi5jbG10T25seUZOID09ICcxJykge1xyXG4gICAgICAgIGxldCBlcnJvck1vZGVsOiBFcnJvck1vZGVsID0gbmV3IEVycm9yTW9kZWwoKTtcclxuICAgICAgICBlcnJvck1vZGVsLm1zZyA9IFwiVGhpcyBpcyBhIGNsYWltYW50IG9ubHkgZnVuY3Rpb25hbGl0eS5cIjtcclxuICAgICAgICB0aGlzLnV0aWwuZXJyb3JIYW5kbGVyKGVycm9yTW9kZWwpO1xyXG4gICAgICB9IGVsc2UgaWYgKGhpc3RvcnlNb2RlbC5idXR0b24gJiYgaGlzdG9yeU1vZGVsLmFjdGlvblVyaSA9PSAnQXBwZWFsc1BvcHVwJyAmJiBoaXN0b3J5TW9kZWwuZGF0YS5xZURhdGEpIHtcclxuICAgICAgICBsZXQgcXVlc3Rpb25uYWlyZVF1ZXJ5TW9kZWxzOiBBcnJheTxRdWVzdGlvbm5haXJlUXVlcnlNb2RlbD4gPSBKU09OLnBhcnNlKGhpc3RvcnlNb2RlbC5kYXRhLnFlRGF0YSk7XHJcbiAgICAgICAgdGhpcy5xZVF1ZXJ5TW9kZWxzID0gdGhpcy5jcmVhdGVRZVF1ZXJ5TW9kZWwocXVlc3Rpb25uYWlyZVF1ZXJ5TW9kZWxzKTtcclxuICAgICAgICB0aGlzLmlzT3BlblFlID0gdHJ1ZTtcclxuICAgICAgfSBlbHNlIGlmIChoaXN0b3J5TW9kZWwuYnV0dG9uICYmIGhpc3RvcnlNb2RlbC5idXR0b24uZGlhbG9nID09ICd1cGxvYWRQb3B1cEluQ3AnKSB7XHJcbiAgICAgICAgY29uc29sZS5sb2codGhpcy5zZWxlY3RlZE1vZGVsLmRhdGEpO1xyXG4gICAgICAgIHRoaXMudXBsb2FkVHlwZUlkID0gdGhpcy5zZWxlY3RlZE1vZGVsLmRhdGEudXBsb2FkVHlwZUlkO1xyXG4gICAgICAgIGlmICh0aGlzLnNlbGVjdGVkTW9kZWwuZGF0YT8uZW1wbG95ZXJEYXRhICE9IG51bGwpIHtcclxuICAgICAgICAgIHRoaXMuZW1wbG95ZXJEYXRhTW9kZWwgPSBKU09OLnBhcnNlKHRoaXMuc2VsZWN0ZWRNb2RlbC5kYXRhPy5lbXBsb3llckRhdGEpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodGhpcy5zZWxlY3RlZE1vZGVsLmRhdGEgIT0gbnVsbCkge1xyXG4gICAgICAgICAgdGhpcy5kYXRhTW9kZWwgPSB0aGlzLnNlbGVjdGVkTW9kZWwuZGF0YTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5zaG93VXBsb2FkUG9wdXAgPSB0cnVlO1xyXG4gICAgICB9IGVsc2UgaWYgKGhpc3RvcnlNb2RlbC5idXR0b24gJiYgaGlzdG9yeU1vZGVsLmJ1dHRvbi5kaWFsb2cgPT0gJ3VwbG9hZFBvcHVwJykge1xyXG4gICAgICAgIGxldCB1c2VyTW9kZWwgPSB0aGlzLmxzLmdldFVzZXIoKTtcclxuICAgICAgICB0aGlzLnV0aWwuc2hvd0xvYWRlcigpLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgICAgd2luZG93Lm9wZW4oYCR7TGliQ29uc3RhbnRzLmJlbmVmaXRzVXJsRXh0ZXJuYWx9L2ZhY2VzL3ZpcnR1YWwvY29udGV4dHN3aXRjaC54aHRtbD9hPSR7dXNlck1vZGVsLmFjY2Vzc190b2tlbn0mcj0ke3VzZXJNb2RlbC5yZWZyZXNoX3Rva2VufSZ2PTIyOTkmQ0xBSU1BTlRfUE9SVEFMPXRydWUmdmlldz0udXBsb2FkZG9jdW1lbnRlbnRlcnNzbmAsICdfc2VsZicpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9IGVsc2UgaWYgKGhpc3RvcnlNb2RlbC5idXR0b24gJiYgaGlzdG9yeU1vZGVsLmJ1dHRvbi5kaWFsb2cgPT0gJ3VwbG9hZFdTQVBvcHVwJykge1xyXG4gICAgICAgIGxldCB1c2VyTW9kZWwgPSB0aGlzLmxzLmdldFVzZXIoKTtcclxuICAgICAgICB0aGlzLnV0aWwuc2hvd0xvYWRlcigpLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgICAgd2luZG93Lm9wZW4oYCR7TGliQ29uc3RhbnRzLmJlbmVmaXRzVXJsRXh0ZXJuYWx9L2ZhY2VzL3ZpcnR1YWwvY29udGV4dHN3aXRjaC54aHRtbD9hPSR7dXNlck1vZGVsLmFjY2Vzc190b2tlbn0mcj0ke3VzZXJNb2RlbC5yZWZyZXNoX3Rva2VufSZ2PTIyOTkmQ0xBSU1BTlRfUE9SVEFMPXRydWUmdmlldz0udXBsb2FkZG9jdW1lbnR3b3Jrc2VhcmNoYXVkaXRgLCAnX3NlbGYnKTtcclxuICAgICAgICB9KTtcclxuICAgICAgfSBlbHNlIGlmIChoaXN0b3J5TW9kZWwuYnV0dG9uICYmIGhpc3RvcnlNb2RlbC5idXR0b24uZGlhbG9nID09ICd1cGxvYWRJRFZQb3B1cCcpIHtcclxuICAgICAgICBsZXQgdXNlck1vZGVsID0gdGhpcy5scy5nZXRVc2VyKCk7XHJcbiAgICAgICAgdGhpcy51dGlsLnNob3dMb2FkZXIoKS50aGVuKCgpID0+IHtcclxuICAgICAgICAgIHdpbmRvdy5vcGVuKGAke0xpYkNvbnN0YW50cy5iZW5lZml0c1VybEV4dGVybmFsfS9mYWNlcy92aXJ0dWFsL2NvbnRleHRzd2l0Y2gueGh0bWw/YT0ke3VzZXJNb2RlbC5hY2Nlc3NfdG9rZW59JnI9JHt1c2VyTW9kZWwucmVmcmVzaF90b2tlbn0mdj0yMjk5JkNMQUlNQU5UX1BPUlRBTD10cnVlJnZpZXc9LnNlbGVjdGlkdmVyaWZpY2F0aW9ub3B0aW9uYCwgJ19zZWxmJyk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0gZWxzZSBpZiAoaGlzdG9yeU1vZGVsLmJ1dHRvbiAmJiBoaXN0b3J5TW9kZWwuYnV0dG9uLmRpYWxvZyA9PSAndXBsb2FkUGF5bWVudE9wdGlvbkRvY1BvcHVwJykge1xyXG4gICAgICAgIGxldCB1c2VyTW9kZWwgPSB0aGlzLmxzLmdldFVzZXIoKTtcclxuICAgICAgICB0aGlzLnV0aWwuc2hvd0xvYWRlcigpLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgICAgd2luZG93Lm9wZW4oYCR7TGliQ29uc3RhbnRzLmJlbmVmaXRzVXJsRXh0ZXJuYWx9L2ZhY2VzL3ZpcnR1YWwvY29udGV4dHN3aXRjaC54aHRtbD9hPSR7dXNlck1vZGVsLmFjY2Vzc190b2tlbn0mcj0ke3VzZXJNb2RlbC5yZWZyZXNoX3Rva2VufSZ2PTIyOTkmQ0xBSU1BTlRfUE9SVEFMPXRydWUmdmlldz0ucGF5bWVudG9wdGlvbmRvY3VwbG9hZGAsICdfc2VsZicpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9IGVsc2UgaWYgKGhpc3RvcnlNb2RlbC5idXR0b24gJiYgaGlzdG9yeU1vZGVsLmJ1dHRvbi5kaWFsb2cgPT0gJ292cFdhaXZlclBvcHVwJykge1xyXG4gICAgICAgIGxldCB1c2VyTW9kZWwgPSB0aGlzLmxzLmdldFVzZXIoKTtcclxuICAgICAgICBjb25zdCB0cmFuc2FjdGlvbklkID0gaGlzdG9yeU1vZGVsLnRyYW5zYWN0aW9uSWRcclxuICAgICAgICBjb25zdCBkb2NrZXROdW1iZXIgPSBoaXN0b3J5TW9kZWwuZGF0YT8uZG9ja2V0X251bWJlciB8fCAnJ1xyXG4gICAgICAgIGNvbnN0IGJ1Y0RlY2lzaW9uSWQgPSBoaXN0b3J5TW9kZWwuZGF0YT8uYnVjRGVjaXNpb25JZCB8fCAnJ1xyXG4gICAgICAgIFxyXG4gICAgICAgIHRoaXMudXRpbC5zaG93TG9hZGVyKCkudGhlbigoKSA9PiB7XHJcbiAgICAgICAgICB3aW5kb3cub3BlbihgJHtMaWJDb25zdGFudHMuYmVuZWZpdHNVcmxFeHRlcm5hbH0vZmFjZXMvdmlydHVhbC9jb250ZXh0c3dpdGNoLnhodG1sP2E9JHt1c2VyTW9kZWwuYWNjZXNzX3Rva2VufSZyPSR7dXNlck1vZGVsLnJlZnJlc2hfdG9rZW59JnY9MjI5OSZDTEFJTUFOVF9QT1JUQUw9dHJ1ZSZ2aWV3PS5tZWZpbGVvdmVycGF5bWVudHdhaXZlcnJlcXVlc3RkZWNpc2lvbmxpc3QmdHJhbnNhY3Rpb25JZD0ke3RyYW5zYWN0aW9uSWR9JmRvY2tldE51bWJlcj0ke2RvY2tldE51bWJlcn0mYnVjRGVjaXNpb25JZD0ke2J1Y0RlY2lzaW9uSWR9YCwgJ19zZWxmJyk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1lbHNlIGlmIChoaXN0b3J5TW9kZWwuYnV0dG9uICYmIGhpc3RvcnlNb2RlbC5idXR0b24uZGlhbG9nID09ICdSZXNjaGVkdWxlUmVzZWFQb3B1cCcpIHtcclxuICAgICAgICAgbGV0IHVzZXJNb2RlbCA9IHRoaXMubHMuZ2V0VXNlcigpO1xyXG4gICAgICAgIGlmICh0aGlzLmxzLmlzQ3NyKCkpe1xyXG4gICAgICAgICAgIGNvbnN0IGFwcHRUeXBlID0gJ1JFU0VBJ1xyXG4gICAgICAgICAgIGNvbnN0IGVyQXBwdERhdGUgPSAgaGlzdG9yeU1vZGVsLmRhdGE/LmludGVydmlld19kYXRlIHx8ICcnXHJcbiAgICAgICAgICAgY29uc3QgdXNlcklkID0gKGhpc3RvcnlNb2RlbCBhcyBhbnkpWyd1c2VySWQnXTtcclxuICAgICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFwidXNlcklkXCIsKGhpc3RvcnlNb2RlbCBhcyBhbnkpWyd1c2VySWQnXSk7XHJcbiAgICAgICAgICB0aGlzLnV0aWwuc2hvd0xvYWRlcigpLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgICAgd2luZG93Lm9wZW4oYCR7TGliQ29uc3RhbnRzLmJlbmVmaXRzVXJsRXh0ZXJuYWx9L2ZhY2VzL3ZpcnR1YWwvY29udGV4dHN3aXRjaC54aHRtbD9hPSR7dXNlck1vZGVsLmFjY2Vzc190b2tlbn0mcj0ke3VzZXJNb2RlbC5yZWZyZXNoX3Rva2VufSZ2PTIyOTkmQ0xBSU1BTlRfUE9SVEFMPXRydWUmdmlldz0ubWVlbGlnaWJpbGl0eXJldmlld3NlYXJjaCZhcHB0VHlwZT0ke2FwcHRUeXBlfSZlckFwcHREYXRlPSR7ZXJBcHB0RGF0ZX0mdXNlcklkPSR7dXNlcklkfWAsICdfc2VsZicpO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmxzLmlzQ2xhaW1hbnQoKSkge1xyXG4gICAgICAgICAgdGhpcy51dGlsLnNob3dMb2FkZXIoKS50aGVuKCgpID0+IHtcclxuICAgICAgICAgIHdpbmRvdy5vcGVuKGAke0xpYkNvbnN0YW50cy5iZW5lZml0c1VybEV4dGVybmFsfS9mYWNlcy92aXJ0dWFsL2NvbnRleHRzd2l0Y2gueGh0bWw/YT0ke3VzZXJNb2RlbC5hY2Nlc3NfdG9rZW59JnI9JHt1c2VyTW9kZWwucmVmcmVzaF90b2tlbn0mdj0yMjk5JkNMQUlNQU5UX1BPUlRBTD10cnVlJnZpZXc9LnJlc2NoZWR1bGVyZXNlYWFwcG9pbnRtZW50YCwgJ19zZWxmJyk7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy51dGlsLnByZXNlbnRUb2FzdCgnU2NlbmFyaW8gdW5kZXIgZGV2ZWxvcG1lbnQuIFBsZWFzZSBjaGVjayB3aXRoIGRldmVsb3Blci4nKTtcclxuICAgICAgICB0aGlzLmxvZ2dlci5lcnJvcihoaXN0b3J5TW9kZWwpO1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmIChoaXN0b3J5TW9kZWwuYnV0dG9uLnVyaSAhPSAnJyAmJiBoaXN0b3J5TW9kZWwuYnV0dG9uLnVyaS5pbmNsdWRlcyhcIlBhZ2VcIikpIHtcclxuICAgICAgdGhpcy5sb2dnZXIuaW5mbygnSGlzdG9yeSBidXR0b24gdXJpIGluY2x1ZGVzIFBhZ2UgdmFsdWUnKTtcclxuICAgICAgaWYgKGhpc3RvcnlNb2RlbC5kYXRhICYmIGhpc3RvcnlNb2RlbC5kYXRhLnFlRGF0YSkge1xyXG4gICAgICAgIGxldCBqc29uRGF0YSA9IEpTT04ucGFyc2UoaGlzdG9yeU1vZGVsLmRhdGEucWVEYXRhKTtcclxuICAgICAgICB0aGlzLnV0aWwub3BlblBhZ2VCeUNvbnRleHRSb290V2l0aERhdGEoaGlzdG9yeU1vZGVsLmJ1dHRvbi5jb250ZXh0LCBoaXN0b3J5TW9kZWwuYnV0dG9uLnVybCwganNvbkRhdGFbMF0uZHluYW1pY1BhcmFtLCB0aGlzLm5hdik7XHJcbiAgICAgIH0gZWxzZSBpZiAoaGlzdG9yeU1vZGVsLmRhdGEpIHtcclxuICAgICAgICB0aGlzLnV0aWwub3BlblBhZ2VCeUNvbnRleHRSb290V2l0aERhdGEoaGlzdG9yeU1vZGVsLmJ1dHRvbi5jb250ZXh0LCBoaXN0b3J5TW9kZWwuYnV0dG9uLnVybCwgaGlzdG9yeU1vZGVsLmRhdGEsIHRoaXMubmF2KVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMudXRpbC5vcGVuUGFnZUJ5Q29udGV4dFJvb3QoaGlzdG9yeU1vZGVsLmJ1dHRvbi5jb250ZXh0LCBoaXN0b3J5TW9kZWwuYnV0dG9uLnVybCwgdGhpcy5uYXYpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvcGVuT2xkUmVjb3JkcygpIHtcclxuICAgIGxldCB1c2VyTW9kZWwgPSB0aGlzLmxzLmdldFVzZXIoKTtcclxuICAgIHRoaXMudXRpbC5zaG93TG9hZGVyKCkudGhlbigoKSA9PiB7XHJcbiAgICAgIGlmICh0aGlzLmxzLmlzQ3NyKCkpIHtcclxuICAgICAgICB3aW5kb3cub3BlbihgJHtMaWJDb25zdGFudHMuYmVuZWZpdHNVcmxFeHRlcm5hbH0vZmFjZXMvdmlydHVhbC9jb250ZXh0c3dpdGNoLnhodG1sP2E9JHt1c2VyTW9kZWwuYWNjZXNzX3Rva2VufSZyPSR7dXNlck1vZGVsLnJlZnJlc2hfdG9rZW59JnY9MjI5OWAsICdfc2VsZicpO1xyXG4gICAgICB9IGVsc2UgaWYgKHRoaXMubHMuaXNDbGFpbWFudCgpKSB7XHJcbiAgICAgICAgd2luZG93Lm9wZW4oYCR7TGliQ29uc3RhbnRzLmJlbmVmaXRzVXJsRXh0ZXJuYWx9L2ZhY2VzL3ZpcnR1YWwvY29udGV4dHN3aXRjaC54aHRtbD9hPSR7dXNlck1vZGVsLmFjY2Vzc190b2tlbn0mcj0ke3VzZXJNb2RlbC5yZWZyZXNoX3Rva2VufSZ2PTIyOTkmQ0xBSU1BTlRfUE9SVEFMPXRydWUmdmlldz0uY2xhaW1hbnRzdW1tYXJ5YCwgJ19zZWxmJyk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjcmVhdGVRZVF1ZXJ5TW9kZWwocXVlc3Rpb25uYWlyZVF1ZXJ5TW9kZWxzOiBRdWVzdGlvbm5haXJlUXVlcnlNb2RlbFtdKSB7XHJcbiAgICByZXR1cm4gcXVlc3Rpb25uYWlyZVF1ZXJ5TW9kZWxzLm1hcChxdWVzdGlvbm5haXJlUXVlcnlNb2RlbCA9PiB7XHJcbiAgICAgIGxldCBkeW5hbWljUGFyYW0gPSB7fTtcclxuICAgICAgdmFyIGtleU1vZGVsID0gPEtleVZhbHVlTW9kZWw+cXVlc3Rpb25uYWlyZVF1ZXJ5TW9kZWwuZHluYW1pY1BhcmFtWzBdO1xyXG4gICAgICB2YXIgdGl0bGUgPSBrZXlNb2RlbC5rZXk7XHJcbiAgICAgIHZhciB2ZXJiYWlnZUtleSA9IGtleU1vZGVsLnZhbHVlO1xyXG4gICAgICBjb25zdCB0cmFuc2xhdGVkVGV4dCA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQodmVyYmFpZ2VLZXkpO1xyXG4gICAgICBkeW5hbWljUGFyYW1bdGl0bGVdID0gdHJhbnNsYXRlZFRleHQ7XHJcbiAgICAgIGR5bmFtaWNQYXJhbVsnaGlkQXBwZWFsRGVjaXNpb24nXSA9IHF1ZXN0aW9ubmFpcmVRdWVyeU1vZGVsLmRhdGFbJ2hpZEFwcGVhbERlY2lzaW9uJ107XHJcbiAgICAgIGR5bmFtaWNQYXJhbVsnZG9ja2V0bnVtYmVyJ10gPSBxdWVzdGlvbm5haXJlUXVlcnlNb2RlbC5kYXRhWydkb2NrZXRudW1iZXInXTtcclxuICAgICAgZHluYW1pY1BhcmFtWydwYXJlbnRBcHBlYWxJZCddID0gcXVlc3Rpb25uYWlyZVF1ZXJ5TW9kZWwuZGF0YVsncGFyZW50QXBwZWFsSWQnXTtcclxuICAgICAgZHluYW1pY1BhcmFtWydhcHBlYWxUeXBlJ10gPSBxdWVzdGlvbm5haXJlUXVlcnlNb2RlbC5kYXRhWydhcHBlYWxUeXBlJ107XHJcbiAgICAgIGR5bmFtaWNQYXJhbVsnYXBwZWFsTGV2ZWwnXSA9IHF1ZXN0aW9ubmFpcmVRdWVyeU1vZGVsLmRhdGFbJ2FwcGVhbExldmVsJ107XHJcbiAgICAgIGlmICh0aGlzLnV0aWwuaXNTdGF0ZSgnTUUnKSkge1xyXG4gICAgICAgIGR5bmFtaWNQYXJhbVsnYXBwZWFsQ29uc2lkZXJlZExhdGVEYXRlJ10gPSBxdWVzdGlvbm5haXJlUXVlcnlNb2RlbC5kYXRhWydhcHBlYWxDb25zaWRlcmVkTGF0ZURhdGUnXTtcclxuICAgICAgICBkeW5hbWljUGFyYW1bJ2xhdGVBcHBlYWwnXSA9IHF1ZXN0aW9ubmFpcmVRdWVyeU1vZGVsLmRhdGFbJ2xhdGVBcHBlYWwnXTtcclxuICAgICAgfVxyXG4gICAgICBxdWVzdGlvbm5haXJlUXVlcnlNb2RlbFsnZHluYW1pY1BhcmFtJ10gPSBkeW5hbWljUGFyYW07XHJcbiAgICAgIHF1ZXN0aW9ubmFpcmVRdWVyeU1vZGVsWydhdXRvU2F2ZSddID0gdHJ1ZTtcclxuICAgICAgcmV0dXJuIHF1ZXN0aW9ubmFpcmVRdWVyeU1vZGVsO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBjbG9zZVFlKCkge1xyXG4gICAgdGhpcy5pc09wZW5RZSA9IGZhbHNlO1xyXG4gICAgdGhpcy5zZWxlY3RlZE1vZGVsID0gbnVsbDtcclxuICAgIHRoaXMubG9nZ2VyLmluZm8oJ1FlIGNhbmNlbCcpO1xyXG4gIH1cclxuXHJcbiAgcXVTdWNjZXNzKCkge1xyXG4gICAgdGhpcy5oaXN0b3JpZXMgPSBudWxsO1xyXG4gICAgdGhpcy5pc09wZW5RZSA9IGZhbHNlO1xyXG4gICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRNb2RlbCkge1xyXG4gICAgICB0aGlzLmVzXHJcbiAgICAgICAgLmRpc2FibGVIaXN0b3J5QnV0dG9uKHRoaXMuc2VsZWN0ZWRNb2RlbC50cmFuc2FjdGlvbklkLCB0aGlzLnNlbGVjdGVkTW9kZWwuaGlzdG9yeUtleSlcclxuICAgICAgICAuc3Vic2NyaWJlKHJlcyA9PiB7XHJcbiAgICAgICAgICB0aW1lcigyMDAwKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRIaXN0b3J5KClcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0sIGVyciA9PiB7XHJcbiAgICAgICAgICB0aGlzLmxvZ2dlci5lcnJvcihcIkVycm9yIHdoaWxlIGRlYWN0aXZhdGluZyB0aGUgZXZlbnQuXCIsIGVycik7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmxvZ2dlci5pbmZvKCdRZSBzdWNjZXNzJyk7XHJcbiAgfVxyXG5cclxuICBjbG9zZVVwbG9hZFBvcHVwKCkge1xyXG4gICAgdGhpcy5zaG93VXBsb2FkUG9wdXAgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIHVwbG9hZFBvcHVwRG9uZSgpIHtcclxuICAgIHRoaXMuc2hvd1VwbG9hZFBvcHVwID0gZmFsc2U7XHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZE1vZGVsKSB7XHJcbiAgICAgIHRoaXMuZXNcclxuICAgICAgICAuZGlzYWJsZUhpc3RvcnlCdXR0b24odGhpcy5zZWxlY3RlZE1vZGVsLnRyYW5zYWN0aW9uSWQsIHRoaXMuc2VsZWN0ZWRNb2RlbC5oaXN0b3J5S2V5KVxyXG4gICAgICAgIC5zdWJzY3JpYmUocmVzID0+IHtcclxuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICB3aW5kb3cubG9jYXRpb24ucmVsb2FkKCk7XHJcbiAgICAgICAgICB9LCAxMDAwKTtcclxuICAgICAgICB9LCBlcnIgPT4ge1xyXG4gICAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IoXCJFcnJvciB3aGlsZSBkZWFjdGl2YXRpbmcgdGhlIGV2ZW50LlwiLCBlcnIpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcblxyXG5leHBvcnQgY2xhc3MgS2V5VmFsdWVNb2RlbCB7XHJcbiAga2V5OiBzdHJpbmc7XHJcbiAgdmFsdWU6IHN0cmluZztcclxufVxyXG5cclxuIiwiPGFwcC1tdWx0aS1xdWVzdGlvbm5haXJlIFtxZVF1ZXJ5TW9kZWxzXT1cInFlUXVlcnlNb2RlbHNcIiAqbmdJZj1cImlzT3BlblFlXCIgKG1vZGVsQ2FuY2VsKT1cImNsb3NlUWUoKVwiXHJcbiAgKG9uQ29tcGxldGUpPVwicXVTdWNjZXNzKClcIj48L2FwcC1tdWx0aS1xdWVzdGlvbm5haXJlPlxyXG48YXBwLXByb29mLW9mLWFueXRoaW5nICpuZ0lmPVwic2hvd1VwbG9hZFBvcHVwXCIgW3VwbG9hZFR5cGVJZF09XCJ1cGxvYWRUeXBlSWRcIiBbZW1wbG95ZXJEYXRhTW9kZWxdPVwiZW1wbG95ZXJEYXRhTW9kZWxcIlxyXG4gIFtkYXRhXT1cImRhdGFNb2RlbFwiIChjYW5jZWwpPVwiY2xvc2VVcGxvYWRQb3B1cCgpXCIgKHN1Y2Nlc3MpPVwidXBsb2FkUG9wdXBEb25lKClcIj48L2FwcC1wcm9vZi1vZi1hbnl0aGluZz5cclxuPGFwcC1kYXNoYm9hcmQtaGVscCAqbmdJZj1cImhzLmlzU2hvd2luZygpXCIgW2FjdGl2ZUluZGV4XT1cIjBcIj48L2FwcC1kYXNoYm9hcmQtaGVscD5cclxuPGlvbi1ncmlkPlxyXG4gIDxpb24tcm93PlxyXG4gICAgPGlvbi1jb2wgc2l6ZT1cIjEyXCIgc2l6ZVhsPVwiOFwiIHNpemVMZz1cIjhcIiBzaXplTWQ9XCIxMFwiIG9mZnNldFhsPVwiMlwiIG9mZnNldExnPVwiMlwiIG9mZnNldE1kPVwiMVwiPlxyXG4gICAgICA8aDE+WW91ciB1bmVtcGxveW1lbnQgaGlzdG9yeTwvaDE+XHJcbiAgICA8L2lvbi1jb2w+XHJcbiAgPC9pb24tcm93PlxyXG4gIDxpb24tcm93PlxyXG4gICAgPGlvbi1jb2wgc2l6ZT1cIjEyXCIgc2l6ZVhsPVwiOFwiIHNpemVMZz1cIjhcIiBzaXplTWQ9XCIxMFwiIG9mZnNldFhsPVwiMlwiIG9mZnNldExnPVwiMlwiIG9mZnNldE1kPVwiMVwiPlxyXG5cclxuICAgICAgPGlvbi1yb3c+XHJcbiAgICAgICAgPGlvbi1jb2wgc2l6ZT1cIjNcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJpb24tdGV4dC1sZWZ0IGZpZWxkXCIgKm5nSWY9XCJoaXN0b3JpZXNcIj5cclxuICAgICAgICAgICAgPGxhYmVsIGZvcj1cInRpbWVsaW5lXCIgaWQ9XCJsYmxUaW1lbGluZVwiPnt7dGltZT8uZGVzY319PC9sYWJlbD48YnIgLz5cclxuICAgICAgICAgICAgPHAtc2VsZWN0QnV0dG9uIFtvcHRpb25zXT1cInRpbWVPcHRpb25cIiBbKG5nTW9kZWwpXT1cInRpbWVcIiBvcHRpb25MYWJlbD1cImRlc2NcIlxyXG4gICAgICAgICAgICAgIChvbkNoYW5nZSk9XCJoYW5kbGVDaGFuZ2UoJGV2ZW50KVwiIFthcmlhTGFiZWxsZWRCeV09XCInbGJsVGltZWxpbmUnXCI+XHJcbiAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIGxldC1pdGVtIHBUZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgIDxkaXYgW3BUb29sdGlwXT1cIml0ZW0uZGVzY1wiIHRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbVwiIHRhYmluZGV4PVwiMFwiIFthdHRyLmFyaWEtbGFiZWxdPVwiaXRlbS5kZXNjXCJcclxuICAgICAgICAgICAgICAgICAgcm9sZT1cIm5vdGVcIj5cclxuICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCIhaXRlbS5pY29uXCI+e3tpdGVtLmRlc2N9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgPGZhLWljb24gW2ljb25dPVwiWydmYXInLCBpdGVtLmljb25dXCIgKm5nSWY9XCJpdGVtLmljb25cIj48L2ZhLWljb24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICA8L3Atc2VsZWN0QnV0dG9uPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgIDxpb24tY29sIHNpemU9XCI5XCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW9uLXRleHQtcmlnaHQgZmllbGRcIiAqbmdJZj1cImhpc3Rvcmllc1wiPlxyXG4gICAgICAgICAgICA8bGFiZWw+e3tmaWx0ZXI/LmRlc2N9fTwvbGFiZWw+PGJyIC8+XHJcbiAgICAgICAgICAgIDxwLXNlbGVjdEJ1dHRvbiBbb3B0aW9uc109XCJmaWx0ZXJPcHRpb25zXCIgWyhuZ01vZGVsKV09XCJmaWx0ZXJcIiBvcHRpb25MYWJlbD1cImljb25cIlxyXG4gICAgICAgICAgICAgIChvbkNoYW5nZSk9XCJoYW5kbGVDaGFuZ2UoJGV2ZW50KVwiPlxyXG4gICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBsZXQtaXRlbSBwVGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IFtwVG9vbHRpcF09XCJpdGVtLmRlc2NcIiB0b29sdGlwUG9zaXRpb249XCJib3R0b21cIiB0YWJpbmRleD1cIjBcIiBbYXR0ci5hcmlhLWxhYmVsXT1cIml0ZW0uZGVzY1wiXHJcbiAgICAgICAgICAgICAgICAgIHJvbGU9XCJub3RlXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIWl0ZW0uaWNvblwiPnt7aXRlbS5hbHREZXNjfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDxmYS1pY29uIFtpY29uXT1cIlsnZmFyJywgaXRlbS5pY29uXVwiICpuZ0lmPVwiaXRlbS5pY29uXCI+PC9mYS1pY29uPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgPC9wLXNlbGVjdEJ1dHRvbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgPC9pb24tcm93PlxyXG5cclxuICAgICAgPGJyIC8+XHJcbiAgICAgIDxwLXRpbWVsaW5lIFt2YWx1ZV09XCJmaWx0ZXJlZEhpc3Rvcmllc1wiICpuZ0lmPVwiKGZpbHRlcmVkSGlzdG9yaWVzICYmIGZpbHRlcmVkSGlzdG9yaWVzLmxlbmd0aCA+IDApXCI+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cIm1hcmtlclwiIGxldC1oaXN0PlxyXG4gICAgICAgICAgPHNwYW4gW3N0eWxlLmNvbG9yXT1cImhpc3QuY29sb3JcIj5cclxuICAgICAgICAgICAgPGZhLWljb24gW2ljb25dPVwiWydmYXInLCBoaXN0Lmljb25dXCIgY2xhc3M9XCJjdXN0b20tbWFya2VyXCI+PC9mYS1pY29uPlxyXG4gICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImNvbnRlbnRcIiBsZXQtaGlzdD5cclxuICAgICAgICAgIDxoMSBjbGFzcz1cImFwcC1hY2NvcmRpYW4taGVhZGluZ1wiIHN0eWxlPVwibWFyZ2luLXRvcDogMHB4OyBmb250LXdlaWdodDogYm9sZDtcIj57e2hpc3QueWVhcn19PC9oMT5cclxuICAgICAgICAgIDxwLWFjY29yZGlvbiBleHBhbmRJY29uPVwicGkgcGktZncgcGktY2hldnJvbi11cFwiIGNvbGxhcHNlSWNvbj1cInBpIHBpLWZ3IHBpLWNoZXZyb24tdXBcIj5cclxuICAgICAgICAgICAgPHAtYWNjb3JkaW9uVGFiICpuZ0Zvcj1cImxldCBoaXN0b3J5IG9mIGhpc3QuaGlzdG9yeTsgbGV0IGkgPSBpbmRleFwiIFtzZWxlY3RlZF09XCJpc1ZhbHVlU2VsZWN0ZWQoaGlzdG9yeSxpKVwiPlxyXG4gICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIj5cclxuICAgICAgICAgICAgICAgIDxpb24tcm93IHN0eWxlPVwid2lkdGg6IC13ZWJraXQtZmlsbC1hdmFpbGFibGU7XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxpb24tY29sIGNsYXNzPVwiaW9uLXRleHQtbGVmdFwiIHNpemU9XCIxMlwiIHNpemVYbD1cIjNcIiBzaXplTGc9XCIzXCIgc2l6ZU1kPVwiM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYXBwLWFjY29yZGlhbi1oZWFkaW5nXCIgW3N0eWxlLmNvbG9yXT1cImhpc3RvcnkuY29sb3JcIj57e2hpc3RvcnkuZXZlbnREYXRlfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgICAgICAgICAgPGlvbi1jb2wgY2xhc3M9XCJhcHAtdGV4dC1hbGlnblwiIHNpemU9XCIxMVwiIHNpemVYbD1cIjhcIiBzaXplTGc9XCI4XCIgc2l6ZU1kPVwiOFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYXBwLWFjY29yZGlhbi1oZWFkaW5nXCIgW3N0eWxlLmNvbG9yXT1cImhpc3RvcnkuY29sb3JcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIHt7aGlzdG9yeS50aXRsZX19XHJcbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICAgICAgICAgIDxpb24tY29sIHNpemU9XCIxXCIgY2xhc3M9XCJpb24tdGV4dC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBbc3R5bGUuY29sb3JdPVwiaGlzdG9yeS5jb2xvclwiICpuZ0lmPVwiZ2V0SWNvbihoaXN0b3J5KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGZhLWljb24gW2ljb25dPVwiZ2V0SWNvbihoaXN0b3J5KVwiIGNsYXNzPVwiY3VzdG9tLW1hcmtlclwiPjwvZmEtaWNvbj5cclxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgICAgICAgIDwvaW9uLXJvdz5cclxuICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJjb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFwcC1hY2NvcmRpYW4tYm9keVwiIFtpbm5lckh0bWxdPVwiaGlzdG9yeS5kZXNjXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImhpc3RvcnkuYnV0dG9uICE9IG51bGxcIj5cclxuICAgICAgICAgICAgICAgICAgPGJyIC8+PGJyIC8+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpb24tdGV4dC1yaWdodFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpb24tYnV0dG9uIFthdHRyLmFyaWEtbGFiZWxdPVwiJ2dvIHRvJyArIGhpc3RvcnkuYnV0dG9uLmJ1dHRvblRleHRcIiBmaWxsPVwib3V0bGluZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cIi0tY29sb3I6IHt7aGlzdG9yeS5idXR0b24uY29sb3J9fTsgLS1ib3JkZXItY29sb3I6IHt7aGlzdG9yeS5idXR0b24uY29sb3J9fTsgLS1ib3JkZXItd2lkdGg6IDJweFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBzaGFwZT1cInJvdW5kXCIgY2xhc3M9XCJzbWFsbC1idXR0b25cIiAoY2xpY2spPVwib3BlbihoaXN0b3J5KVwiPnt7aGlzdG9yeS5idXR0b24uYnV0dG9uVGV4dH19XHJcbiAgICAgICAgICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgIDwvcC1hY2NvcmRpb25UYWI+XHJcbiAgICAgICAgICA8L3AtYWNjb3JkaW9uPlxyXG4gICAgICAgICAgPGJyIC8+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgPC9wLXRpbWVsaW5lPlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cImlvbi10ZXh0LWNlbnRlclwiICpuZ0lmPVwiaXNMb2FkaW5nXCI+XHJcbiAgICAgICAgPGlvbi1zcGlubmVyIG5hbWU9XCJkb3RzXCI+PC9pb24tc3Bpbm5lcj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaW9uLXBhZGRpbmctdG9wIGlvbi10ZXh0LWNlbnRlciBhcHAtYWNjb3JkaWFuLWJvZHlcIlxyXG4gICAgICAgICpuZ0lmPVwiKCFmaWx0ZXJlZEhpc3RvcmllcyB8fCBmaWx0ZXJlZEhpc3Rvcmllcy5sZW5ndGggPCAxKSAmJiAhaXNMb2FkaW5nXCI+XHJcbiAgICAgICAgPGZhLWljb24gW2ljb25dPVwiWydmYXInLCBmaWx0ZXJJY29uXVwiIGNsYXNzPVwibGFyZ2UtaWNvblwiPjwvZmEtaWNvbj5cclxuICAgICAgICA8cD57eydObyBoaXN0b3J5IHByZXNlbnQuJyB8IHRyYW5zbGF0ZX19PC9wPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgc3R5bGU9XCJwYWRkaW5nLWxlZnQ6IDUlO1wiICpuZ0lmPVwiIWlzTG9hZGluZyAmJiBzaG93T2xkZXJSZWNvcmRzTGlua1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJob3Jpem9udGFsLWFsaWduXCI+XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImFwcC1hY2NvcmRpYW4tYm9keVwiPlxyXG4gICAgICAgICAgICA8c3Ryb25nPnt7ICdUbyB2aWV3IHByaW9yIHVuZW1wbG95bWVudCBoaXN0b3J5IGNsaWNrIGhlcmUnIHwgdHJhbnNsYXRlIH19PC9zdHJvbmc+XHJcbiAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICA8aW9uLWJ1dHRvbiBhcmlhLWxhYmVsPVwidmlldyBvbGQgcmVjb3Jkc1wiIChjbGljayk9XCJvcGVuT2xkUmVjb3JkcygpXCIgZmlsbD1cIm91dGxpbmVcIiBzaXplPVwic21hbGxcIlxyXG4gICAgICAgICAgICBjbGFzcz1cImFjdGlvbi1idXR0b25cIj5cclxuICAgICAgICAgICAgPGZhLWljb24gW2ljb25dPVwiWydmYXMnLCAnZXh0ZXJuYWwtbGluay1hbHQnXVwiIGNsYXNzPVwiZXh0ZXJuYWwtbGluay1pY29uXCI+PC9mYS1pY29uPlxyXG4gICAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGJyIC8+XHJcblxyXG4gICAgPC9pb24tY29sPlxyXG4gIDwvaW9uLXJvdz5cclxuPC9pb24tZ3JpZD4iXX0=
|
|
@@ -44847,6 +44847,23 @@ class HistoryPageComponent {
|
|
|
44847
44847
|
window.open(`${LibConstants.benefitsUrlExternal}/faces/virtual/contextswitch.xhtml?a=${userModel.access_token}&r=${userModel.refresh_token}&v=2299&CLAIMANT_PORTAL=true&view=.mefileoverpaymentwaiverrequestdecisionlist&transactionId=${transactionId}&docketNumber=${docketNumber}&bucDecisionId=${bucDecisionId}`, '_self');
|
|
44848
44848
|
});
|
|
44849
44849
|
}
|
|
44850
|
+
else if (historyModel.button && historyModel.button.dialog == 'RescheduleReseaPopup') {
|
|
44851
|
+
let userModel = this.ls.getUser();
|
|
44852
|
+
if (this.ls.isCsr()) {
|
|
44853
|
+
const apptType = 'RESEA';
|
|
44854
|
+
const erApptDate = historyModel.data?.interview_date || '';
|
|
44855
|
+
const userId = historyModel['userId'];
|
|
44856
|
+
this.logger.debug("userId", historyModel['userId']);
|
|
44857
|
+
this.util.showLoader().then(() => {
|
|
44858
|
+
window.open(`${LibConstants.benefitsUrlExternal}/faces/virtual/contextswitch.xhtml?a=${userModel.access_token}&r=${userModel.refresh_token}&v=2299&CLAIMANT_PORTAL=true&view=.meeligibilityreviewsearch&apptType=${apptType}&erApptDate=${erApptDate}&userId=${userId}`, '_self');
|
|
44859
|
+
});
|
|
44860
|
+
}
|
|
44861
|
+
else if (this.ls.isClaimant()) {
|
|
44862
|
+
this.util.showLoader().then(() => {
|
|
44863
|
+
window.open(`${LibConstants.benefitsUrlExternal}/faces/virtual/contextswitch.xhtml?a=${userModel.access_token}&r=${userModel.refresh_token}&v=2299&CLAIMANT_PORTAL=true&view=.reschedulereseaappointment`, '_self');
|
|
44864
|
+
});
|
|
44865
|
+
}
|
|
44866
|
+
}
|
|
44850
44867
|
else {
|
|
44851
44868
|
this.util.presentToast('Scenario under development. Please check with developer.');
|
|
44852
44869
|
this.logger.error(historyModel);
|