@lowcodeunit/applications-flow-common 1.39.93-enterprise-switch-fix → 1.39.95-fix-undefined-path

Sign up to get free protection for your applications and to get access to all the features.
@@ -92,7 +92,7 @@ export class DFSModifiersDialogComponent {
92
92
  }
93
93
  }
94
94
  SaveDFSModifier() {
95
- // console.log('level at save: ', this.data.level);
95
+ // console.log("level at save: ", this.data.level)
96
96
  let status;
97
97
  switch (this.data.level) {
98
98
  case 'enterprise': {
@@ -114,7 +114,7 @@ export class DFSModifiersDialogComponent {
114
114
  this.DFSModifersFormControls.SaveModifierForApplication(this.data.applicationLookup);
115
115
  }
116
116
  }
117
- if (status?.Code === 0) {
117
+ if (status.Code === 0) {
118
118
  this.snackBar.open('DFS Modifier Saved Successfully', 'Dismiss', {
119
119
  duration: 5000,
120
120
  });
@@ -150,4 +150,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
150
150
  type: ViewChild,
151
151
  args: [DFSModifiersFormComponent]
152
152
  }] } });
153
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGZzLW1vZGlmaWVycy1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvZGlhbG9ncy9kZnMtbW9kaWZpZXJzLWRpYWxvZy9kZnMtbW9kaWZpZXJzLWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb24vc3JjL2xpYi9kaWFsb2dzL2Rmcy1tb2RpZmllcnMtZGlhbG9nL2Rmcy1tb2RpZmllcnMtZGlhbG9nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFxQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHaEYsT0FBTyxFQUFnQixlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUt6RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFpQjNHLE1BQU0sT0FBTywyQkFBMkI7SUE0QnBDLFlBQ2MsTUFBa0IsRUFDckIsUUFBcUIsRUFDckIsU0FBb0QsRUFDM0IsSUFBNEIsRUFDbEQsUUFBcUI7UUFKckIsV0FBTSxHQUFOLE1BQU0sQ0FBWTtRQUNyQixhQUFRLEdBQVIsUUFBUSxDQUFhO1FBQ3JCLGNBQVMsR0FBVCxTQUFTLENBQTJDO1FBQzNCLFNBQUksR0FBSixJQUFJLENBQXdCO1FBQ2xELGFBQVEsR0FBUixRQUFRLENBQWE7UUFFL0IsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFoQ0QsSUFBVyxvQkFBb0I7UUFDM0IsT0FBTyxJQUFJLENBQUMsdUJBQXVCLEVBQUUsaUJBQWlCLENBQUM7SUFDM0QsQ0FBQztJQUVELElBQVcsMEJBQTBCO1FBQ2pDLE9BQU8sSUFBSSxD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LGtCQUFrQixDQUFDLFVBQVUsQ0FDOUIsb0JBQW9CLEVBQ3BCLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUMvQixDQUFDO0lBQ04sQ0FBQzs7d0hBeEtRLDJCQUEyQixtR0FnQ3hCLGVBQWU7NEdBaENsQiwyQkFBMkIseUhBQ3pCLHlCQUF5QixnREMxQnhDLGdtRUEwRUE7MkZEakRhLDJCQUEyQjtrQkFMdkMsU0FBUzsrQkFDSSwwQkFBMEI7OzBCQW9DL0IsTUFBTTsyQkFBQyxlQUFlO3NFQTlCcEIsdUJBQXVCO3NCQUQ3QixTQUFTO3VCQUFDLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdERpYWxvZ1JlZiwgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IE1hdFNuYWNrQmFyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc25hY2stYmFyJztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJ0BsY3UvY29tbW9uJztcbmltcG9ydCB7IEVhQ0FwcGxpY2F0aW9uQXNDb2RlIH0gZnJvbSAnQHNlbWFudGljanMvY29tbW9uJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgREZTTW9kaWZpZXJzRm9ybUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbnRyb2xzL2Rmcy1tb2RpZmllcnMtZm9ybS9kZnMtbW9kaWZpZXJzLWZvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IEVhQ1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9lYWMuc2VydmljZSc7XG5pbXBvcnQgeyBBcHBsaWNhdGlvbnNGbG93U3RhdGUgfSBmcm9tICcuLi8uLi9zdGF0ZS9hcHBsaWNhdGlvbnMtZmxvdy5zdGF0ZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgREZTTW9kaWZpZXJzRGlhbG9nRGF0YSB7XG4gICAgYXBwbGljYXRpb25Mb29rdXA/OiBzdHJpbmc7XG4gICAgbW9kaWZpZXJMb29rdXA/OiBzdHJpbmc7XG4gICAgbW9kaWZpZXJOYW1lPzogc3RyaW5nO1xuICAgIGxldmVsOiBzdHJpbmc7XG4gICAgcHJvamVjdExvb2t1cD86IHN0cmluZztcbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdsY3UtZGZzLW1vZGlmaWVycy1kaWFsb2cnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kZnMtbW9kaWZpZXJzLWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZGZzLW1vZGlmaWVycy1kaWFsb2cuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgREZTTW9kaWZpZXJzRGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIEBWaWV3Q2hpbGQoREZTTW9kaWZpZXJzRm9ybUNvbXBvbmVudClcbiAgICBwdWJsaWMgREZTTW9kaWZlcnNGb3JtQ29udHJvbHM6IERGU01vZGlmaWVyc0Zvcm1Db21wb25lbnQ7XG5cbiAgICBwdWJsaWMgZ2V0IERGU01vZGlmZXJzRm9ybUdyb3VwKCk6IEZvcm1Hcm91cCB7XG4gICAgICAgIHJldHVybiB0aGlzLkRGU01vZGlmZXJzRm9ybUNvbnRyb2xzPy5Nb2RpZmllckZvcm1Hcm91cDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IFNlbGVjdGVkTW9kaWZpZXJzRm9ybUdyb3VwKCk6IEZvcm1Hcm91cCB7XG4gICAgICAgIHJldHVybiB0aGlzLkRGU01vZGlmZXJzRm9ybUNvbnRyb2xzPy5Nb2RpZmllclNlbGVjdEZvcm1Hcm91cDtcbiAgICB9XG5cbiAgICBwdWJsaWMgQXBwbGljYXRpb25zOiBBcnJheTxFYUNBcHBsaWNhdGlvbkFzQ29kZT47XG5cbiAgICBwdWJsaWMgRXJyb3JNZXNzYWdlOiBzdHJpbmc7XG5cbiAgICBwdWJsaWMgSXNQcmVjb25maWd1cmVkOiBib29sZWFuO1xuXG4gICAgcHVibGljIE1vZGlmaWVyRGlhbG9nRm9ybTogRm9ybUdyb3VwO1xuXG4gICAgcHVibGljIFNhdmVEaXNhYmxlZDogYm9vbGVhbjtcblxuICAgIHB1YmxpYyBTdGF0ZTogQXBwbGljYXRpb25zRmxvd1N0YXRlO1xuXG4gICAgcHVibGljIFN0YXRlU3ViOiBTdWJzY3JpcHRpb247XG5cbiAgICBwdWJsaWMgUHJvamVjdExvb2t1cHM6IEFycmF5PHN0cmluZz47XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJvdGVjdGVkIGVhY1N2YzogRWFDU2VydmljZSxcbiAgICAgICAgcHVibGljIGZvcm1ibGRyOiBGb3JtQnVpbGRlcixcbiAgICAgICAgcHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPERGU01vZGlmaWVyc0RpYWxvZ0NvbXBvbmVudD4sXG4gICAgICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogREZTTW9kaWZpZXJzRGlhbG9nRGF0YSxcbiAgICAgICAgcHJvdGVjdGVkIHNuYWNrQmFyOiBNYXRTbmFja0JhclxuICAgICkge1xuICAgICAgICB0aGlzLk1vZGlmaWVyRGlhbG9nRm9ybSA9IHRoaXMuZm9ybWJsZHIuZ3JvdXAoe30pO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgLy8gY29uc29sZS5sb2coJ2RmcyBkYXRhOiAnLCB0aGlzLmRhdGEpO1xuICAgICAgICB0aGlzLlN0YXRlU3ViID0gdGhpcy5lYWNTdmMuU3RhdGUuc3Vic2NyaWJlKChzdGF0ZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5TdGF0ZSA9IHN0YXRlO1xuICAgICAgICAgICAgaWYgKHRoaXMuU3RhdGU/LkVhQz8uUHJvamVjdHMpIHtcbiAgICAgICAgICAgICAgICB0aGlzLlByb2plY3RMb29rdXBzID0gT2JqZWN0LmtleXMoXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuU3RhdGU/LkVhQz8uUHJvamVjdHMgfHwge31cbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5kZXRlcm1pbmVMZXZlbCgpO1xuXG4gICAgICAgIHRoaXMuSXNQcmVjb25maWd1cmVkID0gdGhpcy5DaGVja1ByZWNvbmZpZ3VyZWQoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuU3RhdGVTdWIudW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgQ2xvc2VEaWFsb2coKSB7XG4gICAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIERlbGV0ZU1vZGlmaWVyKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmVhY1N2Yy5EZWxldGVNb2RpZmllcihcbiAgICAgICAgICAgIHRoaXMuZGF0YS5tb2RpZmllckxvb2t1cCxcbiAgICAgICAgICAgIHRoaXMuZGF0YS5tb2RpZmllck5hbWVcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgSGFuZGxlU2F2ZUZvcm1FdmVudChldmVudDogU3RhdHVzKSB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdldmVudDogJywgZXZlbnQpO1xuICAgICAgICBpZiAoZXZlbnQuQ29kZSA9PT0gMCkge1xuICAgICAgICAgICAgdGhpcy5zbmFja0Jhci5vcGVuKCdERlMgTW9kaWZpZXIgU2F2ZWQgU3VjY2Vzc2Z1bGx5JywgJ0Rpc21pc3MnLCB7XG4gICAgICAgICAgICAgICAgZHVyYXRpb246IDUwMDAsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMuQ2xvc2VEaWFsb2coKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuRXJyb3JNZXNzYWdlID0gZXZlbnQuTWVzc2FnZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBJc0Rpc2FibGVkKCkge1xuICAgICAgICB0aGlzLlNhdmVEaXNhYmxlZCA9IHRydWU7XG4gICAgICAgIGlmICh0aGlzLkRGU01vZGlmZXJzRm9ybUdyb3VwKSB7XG4gICAgICAgICAgICB0aGlzLlNhdmVEaXNhYmxlZCA9XG4gICAgICAgICAgICAgICAgIXRoaXMuREZTTW9kaWZlcnNGb3JtR3JvdXA/LnZhbGlkIHx8XG4gICAgICAgICAgICAgICAgIXRoaXMuREZTTW9kaWZlcnNGb3JtR3JvdXA/LmRpcnR5IHx8XG4gICAgICAgICAgICAgICAgIXRoaXMuTW9kaWZpZXJEaWFsb2dGb3JtPy52YWxpZDtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLlNlbGVjdGVkTW9kaWZpZXJzRm9ybUdyb3VwKSB7XG4gICAgICAgICAgICB0aGlzLlNhdmVEaXNhYmxlZCA9XG4gICAgICAgICAgICAgICAgIXRoaXMuU2VsZWN0ZWRNb2RpZmllcnNGb3JtR3JvdXA/LnZhbGlkIHx8XG4gICAgICAgICAgICAgICAgIXRoaXMuU2VsZWN0ZWRNb2RpZmllcnNGb3JtR3JvdXA/LmRpcnR5O1xuICAgICAgICB9XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdTYXZlIGRpc2FibGVkOiAnLCB0aGlzLlNhdmVEaXNhYmxlZCk7XG4gICAgICAgIHJldHVybiB0aGlzLlNhdmVEaXNhYmxlZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgQ2hlY2tQcmVjb25maWd1cmVkKCk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAodGhpcy5kYXRhLm1vZGlmaWVyTG9va3VwKSB7XG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgdGhpcy5kYXRhLm1vZGlmaWVyTG9va3VwID09PSAnaHRtbC1iYXNlJyB8fFxuICAgICAgICAgICAgICAgIHRoaXMuZGF0YS5tb2RpZmllckxvb2t1cCA9PT0gJ2xjdS1yZWcnXG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIFNhdmVERlNNb2RpZmllcigpIHtcbiAgICAgICAgLy8gY29uc29sZS5sb2coJ2xldmVsIGF0IHNhdmU6ICcsIHRoaXMuZGF0YS5sZXZlbCk7XG5cbiAgICAgICAgbGV0IHN0YXR1czogU3RhdHVzO1xuXG4gICAgICAgIHN3aXRjaCAodGhpcy5kYXRhLmxldmVsKSB7XG4gICAgICAgICAgICBjYXNlICdlbnRlcnByaXNlJzoge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLk1vZGlmaWVyRGlhbG9nRm9ybS5jb250cm9scy5hcHBseVRvQWxsUHJvamVjdHMudmFsdWUpIHtcbiAgICAgICAgICAgICAgICAgICAgLy9zYXZlIG1vZGlmaWVyIGFkZCBpdCB0byB0aGUgTW9kaWZpZXJMb29rdXBzIG9mIGFsbCBwcm9qZWN0c1xuICAgICAgICAgICAgICAgICAgICBzdGF0dXMgPVxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5ERlNNb2RpZmVyc0Zvcm1Db250cm9scy5TYXZlTW9kaWZpZXJGb3JBbGxQcm9qZWN0cyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLlByb2plY3RMb29rdXBzXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIC8vc2F2ZSBtb2RpZmllclxuICAgICAgICAgICAgICAgICAgICBzdGF0dXMgPSB0aGlzLkRGU01vZGlmZXJzRm9ybUNvbnRyb2xzLlNhdmVNb2RpZmllcigpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhc2UgJ3Byb2plY3QnOiB7XG4gICAgICAgICAgICAgICAgc3RhdHVzID0gdGhpcy5ERlNNb2RpZmVyc0Zvcm1Db250cm9scy5TYXZlTW9kaWZpZXIoXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0YS5wcm9qZWN0TG9va3VwXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY2FzZSAnYXBwbGljYXRpb24nOiB7XG4gICAgICAgICAgICAgICAgc3RhdHVzID1cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ERlNNb2RpZmVyc0Zvcm1Db250cm9scy5TYXZlTW9kaWZpZXJGb3JBcHBsaWNhdGlvbihcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0YS5hcHBsaWNhdGlvbkxvb2t1cFxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChzdGF0dXM/LkNvZGUgPT09IDApIHtcbiAgICAgICAgICAgIHRoaXMuc25hY2tCYXIub3BlbignREZTIE1vZGlmaWVyIFNhdmVkIFN1Y2Nlc3NmdWxseScsICdEaXNtaXNzJywge1xuICAgICAgICAgICAgICAgIGR1cmF0aW9uOiA1MDAwLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnNuYWNrQmFyLm9wZW4oJ0RGUyBNb2RpZmllciBGYWlsZWQgdG8gU2F2ZScsICdEaXNtaXNzJywge1xuICAgICAgICAgICAgICAgIGR1cmF0aW9uOiA1MDAwLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gdGhpcy5ERlNNb2RpZmVyc0Zvcm1Db250cm9scy5TYXZlTW9kaWZpZXIoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZGV0ZXJtaW5lTGV2ZWwoKSB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdMRVZFTDogJywgdGhpcy5kYXRhLmxldmVsKTtcbiAgICAgICAgc3dpdGNoICh0aGlzLmRhdGEubGV2ZWwudG9Mb3dlckNhc2UoKSkge1xuICAgICAgICAgICAgY2FzZSAnZW50ZXJwcmlzZSc6IHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldHVwRW50Rm9ybSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHNldHVwRW50Rm9ybSgpIHtcbiAgICAgICAgdGhpcy5Nb2RpZmllckRpYWxvZ0Zvcm0uYWRkQ29udHJvbChcbiAgICAgICAgICAgICdhcHBseVRvQWxsUHJvamVjdHMnLFxuICAgICAgICAgICAgdGhpcy5mb3JtYmxkci5jb250cm9sKGZhbHNlKVxuICAgICAgICApO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJkaWFsb2ctaGVhZGVyXCIgZnhMYXlvdXRBbGlnbj1cInNwYWNlLWJldHdlZW4gY2VudGVyXCI+XG4gICAgPGgyIG1hdC1kaWFsb2ctdGl0bGU+REZTIE1vZGlmaWVyczwvaDI+XG5cbiAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiQ2xvc2VEaWFsb2coKVwiPlxuICAgICAgICA8bWF0LWljb24+Y2FuY2VsPC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cbjwvZGl2PlxuXG48bWF0LWRpYWxvZy1jb250ZW50PlxuICAgIDxsY3UtZGZzLW1vZGlmaWVyLWZvcm1cbiAgICAgICAgW2FwcGxpY2F0aW9uc109XCJ0aGlzLlN0YXRlPy5FYUM/LkFwcGxpY2F0aW9uc1wiXG4gICAgICAgIFthcHBsaWNhdGlvbi1sb29rdXBdPVwiZGF0YS5hcHBsaWNhdGlvbkxvb2t1cFwiXG4gICAgICAgIFtwcm9qZWN0LWxvb2t1cF09XCJkYXRhLnByb2plY3RMb29rdXBcIlxuICAgICAgICBbcHJvamVjdHNdPVwidGhpcy5TdGF0ZT8uRWFDPy5Qcm9qZWN0c1wiXG4gICAgICAgIFtlZGl0aW5nLW1vZGlmaWVyLWxvb2t1cF09XCJkYXRhLm1vZGlmaWVyTG9va3VwXCJcbiAgICAgICAgW2xldmVsXT1cImRhdGEubGV2ZWxcIlxuICAgICAgICBbbW9kaWZpZXJzXT1cIlN0YXRlPy5FYUM/Lk1vZGlmaWVyc1wiXG4gICAgPlxuICAgIDwvbGN1LWRmcy1tb2RpZmllci1mb3JtPlxuXG4gICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJNb2RpZmllckRpYWxvZ0Zvcm1cIj5cbiAgICAgICAgPG1hdC1jaGVja2JveFxuICAgICAgICAgICAgKm5nSWY9XCJkYXRhLmxldmVsID09PSAnZW50ZXJwcmlzZScgJiYgZGF0YS5tb2RpZmllckxvb2t1cFwiXG4gICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJhcHBseVRvQWxsUHJvamVjdHNcIlxuICAgICAgICAgICAgPkFwcGx5IHRvIGFsbCBQcm9qZWN0czwvbWF0LWNoZWNrYm94XG4gICAgICAgID5cbiAgICA8L2Zvcm0+XG5cbiAgICA8bWF0LWVycm9yICpuZ0lmPVwiRXJyb3JNZXNzYWdlXCIgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIj5cbiAgICAgICAge3sgRXJyb3JNZXNzYWdlIH19XG4gICAgPC9tYXQtZXJyb3I+XG48L21hdC1kaWFsb2ctY29udGVudD5cblxuPG1hdC1kaWFsb2ctYWN0aW9uc1xuICAgIGNsYXNzPVwiYWN0aW9ucy1jb250YWluZXJcIlxuICAgIGRpdlxuICAgIGZ4TGF5b3V0PVwicm93XCJcbiAgICBmeExheW91dEFsaWduPVwic3BhY2UtYmV0d2VlbiBjZW50ZXJcIlxuPlxuICAgIDxkaXYgZnhMYXlvdXRBbGlnbj1cInN0YXJ0IGNlbnRlclwiPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAqbmdJZj1cIiFJc1ByZWNvbmZpZ3VyZWRcIlxuICAgICAgICAgICAgbWF0LXJhaXNlZC1idXR0b25cbiAgICAgICAgICAgIGNvbG9yPVwid2FyblwiXG4gICAgICAgICAgICAoY2xpY2spPVwiRGVsZXRlTW9kaWZpZXIoKVwiXG4gICAgICAgICAgICBtYXRUb29sdGlwPVwiRGVsZXRlIHt7IGRhdGEubW9kaWZpZXJMb29rdXAgfX1cIlxuICAgICAgICA+XG4gICAgICAgICAgICBEZWxldGVcbiAgICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGZ4TGF5b3V0QWxpZ249XCJlbmQgY2VudGVyXCI+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIGNsYXNzPVwiYWN0aW9uLWJ1dHRvblwiXG4gICAgICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICAgICAgZnhGbGV4PVwiNTIlXCJcbiAgICAgICAgICAgIChjbGljayk9XCJDbG9zZURpYWxvZygpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgQ2FuY2VsXG4gICAgICAgIDwvYnV0dG9uPlxuXG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIGNsYXNzPVwiYWN0aW9uLWJ1dHRvblwiXG4gICAgICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICAgICAgKm5nSWY9XCIhU3RhdGU/LkxvYWRpbmdcIlxuICAgICAgICAgICAgZnhGbGV4PVwiMzAlXCJcbiAgICAgICAgICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgICAgICAgICAoY2xpY2spPVwiU2F2ZURGU01vZGlmaWVyKClcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cIklzRGlzYWJsZWQoKVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIFNhdmVcbiAgICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG48L21hdC1kaWFsb2ctYWN0aW9ucz5cbiJdfQ==
153
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGZzLW1vZGlmaWVycy1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvZGlhbG9ncy9kZnMtbW9kaWZpZXJzLWRpYWxvZy9kZnMtbW9kaWZpZXJzLWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb24vc3JjL2xpYi9kaWFsb2dzL2Rmcy1tb2RpZmllcnMtZGlhbG9nL2Rmcy1tb2RpZmllcnMtZGlhbG9nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFxQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHaEYsT0FBTyxFQUFnQixlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUt6RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFpQjNHLE1BQU0sT0FBTywyQkFBMkI7SUE0QnBDLFlBQ2MsTUFBa0IsRUFDckIsUUFBcUIsRUFDckIsU0FBb0QsRUFDM0IsSUFBNEIsRUFDbEQsUUFBcUI7UUFKckIsV0FBTSxHQUFOLE1BQU0sQ0FBWTtRQUNyQixhQUFRLEdBQVIsUUFBUSxDQUFhO1FBQ3JCLGNBQVMsR0FBVCxTQUFTLENBQTJDO1FBQzNCLFNBQUksR0FBSixJQUFJLENBQXdCO1FBQ2xELGFBQVEsR0FBUixRQUFRLENBQWE7UUFFL0IsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFoQ0QsSUFBVyxvQkFBb0I7UUFDM0IsT0FBTyxJQUFJLENBQUMsdUJBQXVCLEVBQUUsaUJBQWlCLENBQUM7SUFDM0QsQ0FBQztJQUVELElBQVcsMEJBQTBCO1FBQ2pDLE9BQU8sSUFBSSxD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LGtCQUFrQixDQUFDLFVBQVUsQ0FDOUIsb0JBQW9CLEVBQ3BCLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUMvQixDQUFDO0lBQ04sQ0FBQzs7d0hBeEtRLDJCQUEyQixtR0FnQ3hCLGVBQWU7NEdBaENsQiwyQkFBMkIseUhBQ3pCLHlCQUF5QixnREMxQnhDLGdtRUEwRUE7MkZEakRhLDJCQUEyQjtrQkFMdkMsU0FBUzsrQkFDSSwwQkFBMEI7OzBCQW9DL0IsTUFBTTsyQkFBQyxlQUFlO3NFQTlCcEIsdUJBQXVCO3NCQUQ3QixTQUFTO3VCQUFDLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdERpYWxvZ1JlZiwgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IE1hdFNuYWNrQmFyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc25hY2stYmFyJztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJ0BsY3UvY29tbW9uJztcbmltcG9ydCB7IEVhQ0FwcGxpY2F0aW9uQXNDb2RlIH0gZnJvbSAnQHNlbWFudGljanMvY29tbW9uJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgREZTTW9kaWZpZXJzRm9ybUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbnRyb2xzL2Rmcy1tb2RpZmllcnMtZm9ybS9kZnMtbW9kaWZpZXJzLWZvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IEVhQ1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9lYWMuc2VydmljZSc7XG5pbXBvcnQgeyBBcHBsaWNhdGlvbnNGbG93U3RhdGUgfSBmcm9tICcuLi8uLi9zdGF0ZS9hcHBsaWNhdGlvbnMtZmxvdy5zdGF0ZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgREZTTW9kaWZpZXJzRGlhbG9nRGF0YSB7XG4gICAgYXBwbGljYXRpb25Mb29rdXA/OiBzdHJpbmc7XG4gICAgbW9kaWZpZXJMb29rdXA/OiBzdHJpbmc7XG4gICAgbW9kaWZpZXJOYW1lPzogc3RyaW5nO1xuICAgIGxldmVsOiBzdHJpbmc7XG4gICAgcHJvamVjdExvb2t1cD86IHN0cmluZztcbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdsY3UtZGZzLW1vZGlmaWVycy1kaWFsb2cnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kZnMtbW9kaWZpZXJzLWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZGZzLW1vZGlmaWVycy1kaWFsb2cuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgREZTTW9kaWZpZXJzRGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIEBWaWV3Q2hpbGQoREZTTW9kaWZpZXJzRm9ybUNvbXBvbmVudClcbiAgICBwdWJsaWMgREZTTW9kaWZlcnNGb3JtQ29udHJvbHM6IERGU01vZGlmaWVyc0Zvcm1Db21wb25lbnQ7XG5cbiAgICBwdWJsaWMgZ2V0IERGU01vZGlmZXJzRm9ybUdyb3VwKCk6IEZvcm1Hcm91cCB7XG4gICAgICAgIHJldHVybiB0aGlzLkRGU01vZGlmZXJzRm9ybUNvbnRyb2xzPy5Nb2RpZmllckZvcm1Hcm91cDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IFNlbGVjdGVkTW9kaWZpZXJzRm9ybUdyb3VwKCk6IEZvcm1Hcm91cCB7XG4gICAgICAgIHJldHVybiB0aGlzLkRGU01vZGlmZXJzRm9ybUNvbnRyb2xzPy5Nb2RpZmllclNlbGVjdEZvcm1Hcm91cDtcbiAgICB9XG5cbiAgICBwdWJsaWMgQXBwbGljYXRpb25zOiBBcnJheTxFYUNBcHBsaWNhdGlvbkFzQ29kZT47XG5cbiAgICBwdWJsaWMgRXJyb3JNZXNzYWdlOiBzdHJpbmc7XG5cbiAgICBwdWJsaWMgSXNQcmVjb25maWd1cmVkOiBib29sZWFuO1xuXG4gICAgcHVibGljIE1vZGlmaWVyRGlhbG9nRm9ybTogRm9ybUdyb3VwO1xuXG4gICAgcHVibGljIFNhdmVEaXNhYmxlZDogYm9vbGVhbjtcblxuICAgIHB1YmxpYyBTdGF0ZTogQXBwbGljYXRpb25zRmxvd1N0YXRlO1xuXG4gICAgcHVibGljIFN0YXRlU3ViOiBTdWJzY3JpcHRpb247XG5cbiAgICBwdWJsaWMgUHJvamVjdExvb2t1cHM6IEFycmF5PHN0cmluZz47XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJvdGVjdGVkIGVhY1N2YzogRWFDU2VydmljZSxcbiAgICAgICAgcHVibGljIGZvcm1ibGRyOiBGb3JtQnVpbGRlcixcbiAgICAgICAgcHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPERGU01vZGlmaWVyc0RpYWxvZ0NvbXBvbmVudD4sXG4gICAgICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogREZTTW9kaWZpZXJzRGlhbG9nRGF0YSxcbiAgICAgICAgcHJvdGVjdGVkIHNuYWNrQmFyOiBNYXRTbmFja0JhclxuICAgICkge1xuICAgICAgICB0aGlzLk1vZGlmaWVyRGlhbG9nRm9ybSA9IHRoaXMuZm9ybWJsZHIuZ3JvdXAoe30pO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgLy8gY29uc29sZS5sb2coJ2RmcyBkYXRhOiAnLCB0aGlzLmRhdGEpO1xuICAgICAgICB0aGlzLlN0YXRlU3ViID0gdGhpcy5lYWNTdmMuU3RhdGUuc3Vic2NyaWJlKChzdGF0ZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5TdGF0ZSA9IHN0YXRlO1xuICAgICAgICAgICAgaWYgKHRoaXMuU3RhdGU/LkVhQz8uUHJvamVjdHMpIHtcbiAgICAgICAgICAgICAgICB0aGlzLlByb2plY3RMb29rdXBzID0gT2JqZWN0LmtleXMoXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuU3RhdGU/LkVhQz8uUHJvamVjdHMgfHwge31cbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5kZXRlcm1pbmVMZXZlbCgpO1xuXG4gICAgICAgIHRoaXMuSXNQcmVjb25maWd1cmVkID0gdGhpcy5DaGVja1ByZWNvbmZpZ3VyZWQoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuU3RhdGVTdWIudW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgQ2xvc2VEaWFsb2coKSB7XG4gICAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIERlbGV0ZU1vZGlmaWVyKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmVhY1N2Yy5EZWxldGVNb2RpZmllcihcbiAgICAgICAgICAgIHRoaXMuZGF0YS5tb2RpZmllckxvb2t1cCxcbiAgICAgICAgICAgIHRoaXMuZGF0YS5tb2RpZmllck5hbWVcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgSGFuZGxlU2F2ZUZvcm1FdmVudChldmVudDogU3RhdHVzKSB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdldmVudDogJywgZXZlbnQpO1xuICAgICAgICBpZiAoZXZlbnQuQ29kZSA9PT0gMCkge1xuICAgICAgICAgICAgdGhpcy5zbmFja0Jhci5vcGVuKCdERlMgTW9kaWZpZXIgU2F2ZWQgU3VjY2Vzc2Z1bGx5JywgJ0Rpc21pc3MnLCB7XG4gICAgICAgICAgICAgICAgZHVyYXRpb246IDUwMDAsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMuQ2xvc2VEaWFsb2coKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuRXJyb3JNZXNzYWdlID0gZXZlbnQuTWVzc2FnZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBJc0Rpc2FibGVkKCkge1xuICAgICAgICB0aGlzLlNhdmVEaXNhYmxlZCA9IHRydWU7XG4gICAgICAgIGlmICh0aGlzLkRGU01vZGlmZXJzRm9ybUdyb3VwKSB7XG4gICAgICAgICAgICB0aGlzLlNhdmVEaXNhYmxlZCA9XG4gICAgICAgICAgICAgICAgIXRoaXMuREZTTW9kaWZlcnNGb3JtR3JvdXA/LnZhbGlkIHx8XG4gICAgICAgICAgICAgICAgIXRoaXMuREZTTW9kaWZlcnNGb3JtR3JvdXA/LmRpcnR5IHx8XG4gICAgICAgICAgICAgICAgIXRoaXMuTW9kaWZpZXJEaWFsb2dGb3JtPy52YWxpZDtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLlNlbGVjdGVkTW9kaWZpZXJzRm9ybUdyb3VwKSB7XG4gICAgICAgICAgICB0aGlzLlNhdmVEaXNhYmxlZCA9XG4gICAgICAgICAgICAgICAgIXRoaXMuU2VsZWN0ZWRNb2RpZmllcnNGb3JtR3JvdXA/LnZhbGlkIHx8XG4gICAgICAgICAgICAgICAgIXRoaXMuU2VsZWN0ZWRNb2RpZmllcnNGb3JtR3JvdXA/LmRpcnR5O1xuICAgICAgICB9XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdTYXZlIGRpc2FibGVkOiAnLCB0aGlzLlNhdmVEaXNhYmxlZCk7XG4gICAgICAgIHJldHVybiB0aGlzLlNhdmVEaXNhYmxlZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgQ2hlY2tQcmVjb25maWd1cmVkKCk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAodGhpcy5kYXRhLm1vZGlmaWVyTG9va3VwKSB7XG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgdGhpcy5kYXRhLm1vZGlmaWVyTG9va3VwID09PSAnaHRtbC1iYXNlJyB8fFxuICAgICAgICAgICAgICAgIHRoaXMuZGF0YS5tb2RpZmllckxvb2t1cCA9PT0gJ2xjdS1yZWcnXG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIFNhdmVERlNNb2RpZmllcigpIHtcbiAgICAgICAgLy8gY29uc29sZS5sb2coXCJsZXZlbCBhdCBzYXZlOiBcIiwgdGhpcy5kYXRhLmxldmVsKVxuXG4gICAgICAgIGxldCBzdGF0dXM6IFN0YXR1cztcblxuICAgICAgICBzd2l0Y2ggKHRoaXMuZGF0YS5sZXZlbCkge1xuICAgICAgICAgICAgY2FzZSAnZW50ZXJwcmlzZSc6IHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5Nb2RpZmllckRpYWxvZ0Zvcm0uY29udHJvbHMuYXBwbHlUb0FsbFByb2plY3RzLnZhbHVlKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vc2F2ZSBtb2RpZmllciBhZGQgaXQgdG8gdGhlIE1vZGlmaWVyTG9va3VwcyBvZiBhbGwgcHJvamVjdHNcbiAgICAgICAgICAgICAgICAgICAgc3RhdHVzID1cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuREZTTW9kaWZlcnNGb3JtQ29udHJvbHMuU2F2ZU1vZGlmaWVyRm9yQWxsUHJvamVjdHMoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5Qcm9qZWN0TG9va3Vwc1xuICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAvL3NhdmUgbW9kaWZpZXJcbiAgICAgICAgICAgICAgICAgICAgc3RhdHVzID0gdGhpcy5ERlNNb2RpZmVyc0Zvcm1Db250cm9scy5TYXZlTW9kaWZpZXIoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXNlICdwcm9qZWN0Jzoge1xuICAgICAgICAgICAgICAgIHN0YXR1cyA9IHRoaXMuREZTTW9kaWZlcnNGb3JtQ29udHJvbHMuU2F2ZU1vZGlmaWVyKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRhdGEucHJvamVjdExvb2t1cFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNhc2UgJ2FwcGxpY2F0aW9uJzoge1xuICAgICAgICAgICAgICAgIHN0YXR1cyA9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuREZTTW9kaWZlcnNGb3JtQ29udHJvbHMuU2F2ZU1vZGlmaWVyRm9yQXBwbGljYXRpb24oXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRhdGEuYXBwbGljYXRpb25Mb29rdXBcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoc3RhdHVzLkNvZGUgPT09IDApIHtcbiAgICAgICAgICAgIHRoaXMuc25hY2tCYXIub3BlbignREZTIE1vZGlmaWVyIFNhdmVkIFN1Y2Nlc3NmdWxseScsICdEaXNtaXNzJywge1xuICAgICAgICAgICAgICAgIGR1cmF0aW9uOiA1MDAwLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnNuYWNrQmFyLm9wZW4oJ0RGUyBNb2RpZmllciBGYWlsZWQgdG8gU2F2ZScsICdEaXNtaXNzJywge1xuICAgICAgICAgICAgICAgIGR1cmF0aW9uOiA1MDAwLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gdGhpcy5ERlNNb2RpZmVyc0Zvcm1Db250cm9scy5TYXZlTW9kaWZpZXIoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZGV0ZXJtaW5lTGV2ZWwoKSB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdMRVZFTDogJywgdGhpcy5kYXRhLmxldmVsKTtcbiAgICAgICAgc3dpdGNoICh0aGlzLmRhdGEubGV2ZWwudG9Mb3dlckNhc2UoKSkge1xuICAgICAgICAgICAgY2FzZSAnZW50ZXJwcmlzZSc6IHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldHVwRW50Rm9ybSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHNldHVwRW50Rm9ybSgpIHtcbiAgICAgICAgdGhpcy5Nb2RpZmllckRpYWxvZ0Zvcm0uYWRkQ29udHJvbChcbiAgICAgICAgICAgICdhcHBseVRvQWxsUHJvamVjdHMnLFxuICAgICAgICAgICAgdGhpcy5mb3JtYmxkci5jb250cm9sKGZhbHNlKVxuICAgICAgICApO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJkaWFsb2ctaGVhZGVyXCIgZnhMYXlvdXRBbGlnbj1cInNwYWNlLWJldHdlZW4gY2VudGVyXCI+XG4gICAgPGgyIG1hdC1kaWFsb2ctdGl0bGU+REZTIE1vZGlmaWVyczwvaDI+XG5cbiAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiQ2xvc2VEaWFsb2coKVwiPlxuICAgICAgICA8bWF0LWljb24+Y2FuY2VsPC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cbjwvZGl2PlxuXG48bWF0LWRpYWxvZy1jb250ZW50PlxuICAgIDxsY3UtZGZzLW1vZGlmaWVyLWZvcm1cbiAgICAgICAgW2FwcGxpY2F0aW9uc109XCJ0aGlzLlN0YXRlPy5FYUM/LkFwcGxpY2F0aW9uc1wiXG4gICAgICAgIFthcHBsaWNhdGlvbi1sb29rdXBdPVwiZGF0YS5hcHBsaWNhdGlvbkxvb2t1cFwiXG4gICAgICAgIFtwcm9qZWN0LWxvb2t1cF09XCJkYXRhLnByb2plY3RMb29rdXBcIlxuICAgICAgICBbcHJvamVjdHNdPVwidGhpcy5TdGF0ZT8uRWFDPy5Qcm9qZWN0c1wiXG4gICAgICAgIFtlZGl0aW5nLW1vZGlmaWVyLWxvb2t1cF09XCJkYXRhLm1vZGlmaWVyTG9va3VwXCJcbiAgICAgICAgW2xldmVsXT1cImRhdGEubGV2ZWxcIlxuICAgICAgICBbbW9kaWZpZXJzXT1cIlN0YXRlPy5FYUM/Lk1vZGlmaWVyc1wiXG4gICAgPlxuICAgIDwvbGN1LWRmcy1tb2RpZmllci1mb3JtPlxuXG4gICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJNb2RpZmllckRpYWxvZ0Zvcm1cIj5cbiAgICAgICAgPG1hdC1jaGVja2JveFxuICAgICAgICAgICAgKm5nSWY9XCJkYXRhLmxldmVsID09PSAnZW50ZXJwcmlzZScgJiYgZGF0YS5tb2RpZmllckxvb2t1cFwiXG4gICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJhcHBseVRvQWxsUHJvamVjdHNcIlxuICAgICAgICAgICAgPkFwcGx5IHRvIGFsbCBQcm9qZWN0czwvbWF0LWNoZWNrYm94XG4gICAgICAgID5cbiAgICA8L2Zvcm0+XG5cbiAgICA8bWF0LWVycm9yICpuZ0lmPVwiRXJyb3JNZXNzYWdlXCIgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIj5cbiAgICAgICAge3sgRXJyb3JNZXNzYWdlIH19XG4gICAgPC9tYXQtZXJyb3I+XG48L21hdC1kaWFsb2ctY29udGVudD5cblxuPG1hdC1kaWFsb2ctYWN0aW9uc1xuICAgIGNsYXNzPVwiYWN0aW9ucy1jb250YWluZXJcIlxuICAgIGRpdlxuICAgIGZ4TGF5b3V0PVwicm93XCJcbiAgICBmeExheW91dEFsaWduPVwic3BhY2UtYmV0d2VlbiBjZW50ZXJcIlxuPlxuICAgIDxkaXYgZnhMYXlvdXRBbGlnbj1cInN0YXJ0IGNlbnRlclwiPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAqbmdJZj1cIiFJc1ByZWNvbmZpZ3VyZWRcIlxuICAgICAgICAgICAgbWF0LXJhaXNlZC1idXR0b25cbiAgICAgICAgICAgIGNvbG9yPVwid2FyblwiXG4gICAgICAgICAgICAoY2xpY2spPVwiRGVsZXRlTW9kaWZpZXIoKVwiXG4gICAgICAgICAgICBtYXRUb29sdGlwPVwiRGVsZXRlIHt7IGRhdGEubW9kaWZpZXJMb29rdXAgfX1cIlxuICAgICAgICA+XG4gICAgICAgICAgICBEZWxldGVcbiAgICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGZ4TGF5b3V0QWxpZ249XCJlbmQgY2VudGVyXCI+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIGNsYXNzPVwiYWN0aW9uLWJ1dHRvblwiXG4gICAgICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICAgICAgZnhGbGV4PVwiNTIlXCJcbiAgICAgICAgICAgIChjbGljayk9XCJDbG9zZURpYWxvZygpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgQ2FuY2VsXG4gICAgICAgIDwvYnV0dG9uPlxuXG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIGNsYXNzPVwiYWN0aW9uLWJ1dHRvblwiXG4gICAgICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICAgICAgKm5nSWY9XCIhU3RhdGU/LkxvYWRpbmdcIlxuICAgICAgICAgICAgZnhGbGV4PVwiMzAlXCJcbiAgICAgICAgICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgICAgICAgICAoY2xpY2spPVwiU2F2ZURGU01vZGlmaWVyKClcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cIklzRGlzYWJsZWQoKVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIFNhdmVcbiAgICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG48L21hdC1kaWFsb2ctYWN0aW9ucz5cbiJdfQ==
@@ -100,7 +100,7 @@ export class FeedHeaderComponent {
100
100
  window.location.href = path;
101
101
  }
102
102
  Submit() {
103
- // console.log('submitting: ', this.value);
103
+ console.log('submitting: ', this.value);
104
104
  switch (this.selectedBtn) {
105
105
  case 'pr-btn':
106
106
  //Pull request
@@ -154,4 +154,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
154
154
  type: Input,
155
155
  args: ['loading-feed']
156
156
  }] } });
157
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVlZC1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvZWxlbWVudHMvZmVlZC1oZWFkZXIvZmVlZC1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvZWxlbWVudHMvZmVlZC1oZWFkZXIvZmVlZC1oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFekQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sK0RBQStELENBQUM7QUFDMUcsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sdUVBQXVFLENBQUM7Ozs7Ozs7Ozs7QUFTdEgsTUFBTSxPQUFPLG1CQUFtQjtJQWtENUIsWUFBc0IsTUFBa0IsRUFBWSxNQUFpQjtRQUEvQyxXQUFNLEdBQU4sTUFBTSxDQUFZO1FBQVksV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUNqRSxJQUFJLENBQUMsY0FBYyxHQUFHLE1BQU0sQ0FBQztRQUM3QiwrQkFBK0I7SUFDbkMsQ0FBQztJQUVNLFFBQVEsS0FBVSxDQUFDO0lBRW5CLFdBQVc7UUFDZCxnRUFBZ0U7SUFDcEUsQ0FBQztJQUVNLGVBQWU7UUFDbEIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFTSxrQkFBa0I7UUFDckIsaURBQWlEO1FBQ2pELElBQUksQ0FBQyxZQUFZLENBQUMsY0FBYyxFQUFFLDBCQUEwQixDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVELGdDQUFnQztJQUNoQyw4QkFBOEI7SUFDOUIsZ0RBQWdEO0lBQ2hELGlDQUFpQztJQUNqQyx5QkFBeUI7SUFDekIsbURBQW1EO0lBQ25ELGlDQUFpQztJQUVqQyxJQUFJO0lBRUosc0JBQXNCO0lBQ3RCLDhCQUE4QjtJQUM5QixxQ0FBcUM7SUFDckMsaUNBQWlDO0lBQ2pDLHlCQUF5QjtJQUN6Qix3Q0FBd0M7SUFDeEMsZ0NBQWdDO0lBRWhDLElBQUk7SUFFSiw4QkFBOEI7SUFDOUIsOEJBQThCO0lBQzlCLDhDQUE4QztJQUM5QyxpQ0FBaUM7SUFDakMseUJBQXlCO0lBQ3pCLGlEQUFpRDtJQUNqRCx1Q0FBdUM7SUFFdkMsSUFBSTtJQUVHLFlBQVk7UUFDZixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyw2QkFBNkIsRUFBRTtZQUM5RCxLQUFLLEVBQUUsT0FBTztZQUNkLElBQUksRUFBRTtnQkFDRixpQkFBaUIsRUFBRSxJQUFJLENBQUMsdUJBQXVCO2FBQ2xEO1NBQ0osQ0FBQyxDQUFDO1FBRUgsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQVcsRUFBRSxFQUFFO1lBQzlDLHdDQUF3QztZQUN4QyxpQ0FBaUM7UUFDckMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU0sWUFBWSxDQUFDLE1BQXNCO1FBQ3RDLElBQUksTUFBTSxDQUFDLFVBQVUsSUFBSSxNQUFNLEVBQUU7WUFDN0IsSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsRUFBRTtnQkFDbEMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO2FBQ3hDO2lCQUFNO2dCQUNILE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7YUFDeEM7U0FDSjthQUFNLElBQUksTUFBTSxDQUFDLFVBQVUsSUFBSSxPQUFPLEVBQUU7WUFDckMsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNqRDtJQUNMLENBQUM7SUFFTSxZQUFZLENBQUMsU0FBaUIsRUFBRSxXQUFtQjtRQUN0RCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyx5QkFBeUIsRUFBRTtZQUMxRCxLQUFLLEVBQUUsT0FBTztZQUNkLElBQUksRUFBRTtnQkFDRixXQUFXLEVBQUUsV0FBVztnQkFDeEIsSUFBSSxFQUFFLFNBQVM7Z0JBQ2YsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLG1CQUFtQjtvQkFDekMsQ0FBQyxDQUFDLElBQUksQ0FBQyxtQkFBbUI7b0JBQzFCLENBQUMsQ0FBQyxJQUFJO2FBQ2I7U0FDSixDQUFDLENBQUM7UUFFSCxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBVyxFQUFFLEVBQUU7WUFDOUMsd0NBQXdDO1lBQ3hDLGlDQUFpQztRQUNyQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTSxVQUFVO1FBQ2IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRU0sV0FBVyxDQUFDLElBQVk7UUFDM0IsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQ2hDLENBQUM7SUFFTSxNQUFNO1FBQ1QsMkNBQTJDO1FBQzNDLFFBQVEsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUN0QixLQUFLLFFBQVE7Z0JBQ1QsY0FBYztnQkFDZCxzREFBc0Q7Z0JBQ3RELE1BQU07WUFDVixLQUFLLFFBQVE7Z0JBQ1QsWUFBWTtnQkFDWiwyQ0FBMkM7Z0JBQzNDLE1BQU07WUFDVixLQUFLLFFBQVE7Z0JBQ1QsZ0JBQWdCO2dCQUNoQix3REFBd0Q7Z0JBQ3hELE1BQU07WUFDVjtnQkFDSSxzQkFBc0I7Z0JBRXRCLE1BQU07U0FDYjtJQUNMLENBQUM7SUFFRCxTQUFTO0lBRUMsWUFBWTtRQUNKLFFBQVEsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBRSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQ25FLFVBQVUsQ0FDYixDQUFDO0lBQ04sQ0FBQztJQUVTLGlCQUFpQjtRQUNULENBQ1YsUUFBUSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQzNDLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNyQyxDQUFDOztnSEExTFEsbUJBQW1CO29HQUFuQixtQkFBbUIsNGRDWmhDLG8zSkE0SEE7MkZEaEhhLG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDSSxpQkFBaUI7eUhBTXBCLHVCQUF1QjtzQkFEN0IsS0FBSzt1QkFBQywyQkFBMkI7Z0JBSTNCLElBQUk7c0JBRFYsS0FBSzt1QkFBQyxNQUFNO2dCQUlOLFNBQVM7c0JBRGYsS0FBSzt1QkFBQyxZQUFZO2dCQUlaLG1CQUFtQjtzQkFEekIsS0FBSzt1QkFBQyx1QkFBdUI7Z0JBSXZCLGVBQWU7c0JBRHJCLEtBQUs7dUJBQUMsbUJBQW1CO2dCQUluQixpQkFBaUI7c0JBRHZCLEtBQUs7dUJBQUMscUJBQXFCO2dCQUlyQixXQUFXO3NCQURqQixLQUFLO3VCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBGZWVkSGVhZGVyRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZGlhbG9ncy9mZWVkLWhlYWRlci1kaWFsb2cvZmVlZC1oZWFkZXItZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOZXdBcHBsaWNhdGlvbkRpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL2RpYWxvZ3MvbmV3LWFwcGxpY2F0aW9uLWRpYWxvZy9uZXctYXBwbGljYXRpb24tZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGZWVkSXRlbUFjdGlvbiB9IGZyb20gJy4uLy4uL21vZGVscy91c2VyLWZlZWQubW9kZWwnO1xuaW1wb3J0IHsgRWFDU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2VhYy5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdsY3UtZmVlZC1oZWFkZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9mZWVkLWhlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZmVlZC1oZWFkZXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRmVlZEhlYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQElucHV0KCdhY3RpdmUtZW52aXJvbm1lbnQtbG9va3VwJylcbiAgICBwdWJsaWMgQWN0aXZlRW52aXJvbm1lbnRMb29rdXA6IHN0cmluZztcblxuICAgIEBJbnB1dCgnZmVlZCcpXG4gICAgcHVibGljIEZlZWQ6IGFueTtcblxuICAgIEBJbnB1dCgnZmVlZC1jaGVjaycpXG4gICAgcHVibGljIEZlZWRDaGVjazogYW55O1xuXG4gICAgQElucHV0KCdzb3VyY2UtY29udHJvbC1sb29rdXAnKVxuICAgIHB1YmxpYyBTb3VyY2VDb250cm9sTG9va3VwOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoJ2hhcy1naC1jb25uZWN0aW9uJylcbiAgICBwdWJsaWMgSGFzR0hDb25uZWN0aW9uOiBib29sZWFuO1xuXG4gICAgQElucHV0KCdmZWVkLWhlYWRlci1hY3Rpb25zJylcbiAgICBwdWJsaWMgRmVlZEhlYWRlckFjdGlvbnM6IEFycmF5PEZlZWRJdGVtQWN0aW9uPjtcblxuICAgIEBJbnB1dCgnbG9hZGluZy1mZWVkJylcbiAgICBwdWJsaWMgTG9hZGluZ0ZlZWQ6IGJvb2xlYW47XG5cbiAgICAvLyBwdWJsaWMgZ2V0IEFjdGl2ZUVudmlyb25tZW50TG9va3VwKCk6IHN0cmluZyB7XG4gICAgLy8gICAgIC8vICBUT0RPOiAgRXZlbnR1YWxseSBzdXBwb3J0IG11bHRpcGxlIGVudmlyb25tZW50c1xuICAgIC8vICAgICBjb25zdCBlbnZMb29rdXBzID0gT2JqZWN0LmtleXModGhpcy5TdGF0ZT8uRWFDPy5FbnZpcm9ubWVudHMgfHwge30pO1xuXG4gICAgLy8gICAgIHJldHVybiBlbnZMb29rdXBzWzBdO1xuICAgIC8vIH1cblxuICAgIC8vIHB1YmxpYyBnZXQgRmVlZEhlYWRlckFjdGlvbnMoKTogQXJyYXk8RmVlZEl0ZW1BY3Rpb24+IHtcbiAgICAvLyAgICAgLy8gY29uc29sZS5sb2coJ0ZlZWRBY3Rpb25zOiAnLCB0aGlzLlN0YXRlPy5GZWVkQWN0aW9ucylcbiAgICAvLyAgICAgcmV0dXJuIHRoaXMuU3RhdGU/LkZlZWRBY3Rpb25zO1xuICAgIC8vIH1cblxuICAgIC8vIHB1YmxpYyBnZXQgSGFzR0hDb25uZWN0aW9uKCk6IGJvb2xlYW4ge1xuICAgIC8vICAgICByZXR1cm4gdGhpcy5TdGF0ZT8uR2l0SHViPy5IYXNDb25uZWN0aW9uO1xuICAgIC8vIH1cblxuICAgIC8vIHB1YmxpYyBnZXQgU3RhdGUoKTogQXBwbGljYXRpb25zRmxvd1N0YXRlIHtcbiAgICAvLyAgICAgcmV0dXJuIHRoaXMuZWFjU3ZjLlN0YXRlO1xuICAgIC8vIH1cblxuICAgIHB1YmxpYyBNb2RhbEhlYWRlcjogc3RyaW5nO1xuXG4gICAgcHVibGljIFNrZWxldG9uRWZmZWN0OiBzdHJpbmc7XG5cbiAgICBwcm90ZWN0ZWQgc2VsZWN0ZWRCdG46IHN0cmluZztcblxuICAgIHB1YmxpYyB2YWx1ZTogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIGVhY1N2YzogRWFDU2VydmljZSwgcHJvdGVjdGVkIGRpYWxvZzogTWF0RGlhbG9nKSB7XG4gICAgICAgIHRoaXMuU2tlbGV0b25FZmZlY3QgPSAnd2F2ZSc7XG4gICAgICAgIC8vIHRoaXMuc2VsZWN0ZWRCdG4gPSBcInByLWJ0blwiO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHt9XG5cbiAgICBwdWJsaWMgbmdPbkNoYW5nZXMoKSB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdmZWVkIGhlYWRlciBhY3Rpb25zOiAnLCB0aGlzLkZlZWRIZWFkZXJBY3Rpb25zKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCkge1xuICAgICAgICB0aGlzLmFkZFNlbGVjdEJ0bigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBDcmVhdGVBbm5vdW5jZW1lbnQoKSB7XG4gICAgICAgIC8vIHRoaXMuTW9kYWxIZWFkZXIgPSBcIkNyZWF0ZSBUZWFtIEFubm91bmNlbWVudFwiO1xuICAgICAgICB0aGlzLk9wZW5GSERpYWxvZygnQW5ub3VuY2VtZW50JywgJ0NyZWF0ZSBUZWFtIEFubm91bmNlbWVudCcpO1xuICAgIH1cblxuICAgIC8vIHB1YmxpYyBDcmVhdGVGZWF0dXJlQnJhbmNoKCl7XG4gICAgLy8gICB0aGlzLnJlbW92ZVNlbGVjdGVkQnRuKCk7XG4gICAgLy8gICB0aGlzLk1vZGFsSGVhZGVyID0gXCJDcmVhdGUgRmVhdHVyZSBCcmFuY2hcIjtcbiAgICAvLyAgIHRoaXMuc2VsZWN0ZWRCdG4gPSBcImZiLWJ0blwiO1xuICAgIC8vICAgdGhpcy5hZGRTZWxlY3RCdG4oKTtcbiAgICAvLyAgIGNvbnNvbGUubG9nKFwiY3JlYXRlIGZlYXR1cmUgYnJhbmNoIHNlbGVjdGVkXCIpO1xuICAgIC8vICAgdGhpcy5PcGVuRkhEaWFsb2coJ2JyYW5jaCcpO1xuXG4gICAgLy8gfVxuXG4gICAgLy8gcHVibGljIE9wZW5Jc3N1ZSgpe1xuICAgIC8vICAgdGhpcy5yZW1vdmVTZWxlY3RlZEJ0bigpO1xuICAgIC8vICAgdGhpcy5Nb2RhbEhlYWRlciA9IFwiT3BlbiBJc3N1ZVwiO1xuICAgIC8vICAgdGhpcy5zZWxlY3RlZEJ0biA9IFwib2ktYnRuXCI7XG4gICAgLy8gICB0aGlzLmFkZFNlbGVjdEJ0bigpO1xuICAgIC8vICAgY29uc29sZS5sb2coXCJvcGVuIGlzc3VlIHNlbGVjdGVkXCIpO1xuICAgIC8vICAgdGhpcy5PcGVuRkhEaWFsb2coJ2lzc3VlJyk7XG5cbiAgICAvLyB9XG5cbiAgICAvLyBwdWJsaWMgQ3JlYXRlUHVsbFJlcXVlc3QoKXtcbiAgICAvLyAgIHRoaXMucmVtb3ZlU2VsZWN0ZWRCdG4oKTtcbiAgICAvLyAgIHRoaXMuTW9kYWxIZWFkZXIgPSBcIkNyZWF0ZSBQdWxsIFJlcXVlc3RcIjtcbiAgICAvLyAgIHRoaXMuc2VsZWN0ZWRCdG4gPSBcInByLWJ0blwiO1xuICAgIC8vICAgdGhpcy5hZGRTZWxlY3RCdG4oKTtcbiAgICAvLyAgIGNvbnNvbGUubG9nKFwiY3JlYXRlIHB1bGwgcmVxdWVzdCBzZWxlY3RlZFwiKTtcbiAgICAvLyAgIHRoaXMuT3BlbkZIRGlhbG9nKCdwdWxsLXJlcXVlc3QnKTtcblxuICAgIC8vIH1cblxuICAgIHB1YmxpYyBDcmVhdGVOZXdBcHAoKSB7XG4gICAgICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oTmV3QXBwbGljYXRpb25EaWFsb2dDb21wb25lbnQsIHtcbiAgICAgICAgICAgIHdpZHRoOiAnNjAwcHgnLFxuICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgIGVudmlyb25tZW50TG9va3VwOiB0aGlzLkFjdGl2ZUVudmlyb25tZW50TG9va3VwLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKChyZXN1bHQ6IGFueSkgPT4ge1xuICAgICAgICAgICAgLy8gY29uc29sZS5sb2coJ1RoZSBkaWFsb2cgd2FzIGNsb3NlZCcpO1xuICAgICAgICAgICAgLy8gY29uc29sZS5sb2coXCJyZXN1bHQ6XCIsIHJlc3VsdClcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIEhhbmRsZUFjdGlvbihhY3Rpb246IEZlZWRJdGVtQWN0aW9uKSB7XG4gICAgICAgIGlmIChhY3Rpb24uQWN0aW9uVHlwZSA9PSAnTGluaycpIHtcbiAgICAgICAgICAgIGlmIChhY3Rpb24uQWN0aW9uLnN0YXJ0c1dpdGgoJ2h0dHAnKSkge1xuICAgICAgICAgICAgICAgIHdpbmRvdy5vcGVuKGFjdGlvbi5BY3Rpb24sICdfYmxhbmsnKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBhY3Rpb24uQWN0aW9uO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKGFjdGlvbi5BY3Rpb25UeXBlID09ICdNb2RhbCcpIHtcbiAgICAgICAgICAgIHRoaXMuT3BlbkZIRGlhbG9nKGFjdGlvbi5BY3Rpb24sIGFjdGlvbi5UZXh0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBPcGVuRkhEaWFsb2cobW9kYWxUeXBlOiBzdHJpbmcsIG1vZGFsSGVhZGVyOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihGZWVkSGVhZGVyRGlhbG9nQ29tcG9uZW50LCB7XG4gICAgICAgICAgICB3aWR0aDogJzYwMHB4JyxcbiAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICBkaWFsb2dUaXRsZTogbW9kYWxIZWFkZXIsXG4gICAgICAgICAgICAgICAgdHlwZTogbW9kYWxUeXBlLFxuICAgICAgICAgICAgICAgIHNvdXJjZUNvbnRyb2xMb29rdXA6IHRoaXMuU291cmNlQ29udHJvbExvb2t1cFxuICAgICAgICAgICAgICAgICAgICA/IHRoaXMuU291cmNlQ29udHJvbExvb2t1cFxuICAgICAgICAgICAgICAgICAgICA6IG51bGwsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcblxuICAgICAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKHJlc3VsdDogYW55KSA9PiB7XG4gICAgICAgICAgICAvLyBjb25zb2xlLmxvZygnVGhlIGRpYWxvZyB3YXMgY2xvc2VkJyk7XG4gICAgICAgICAgICAvLyBjb25zb2xlLmxvZyhcInJlc3VsdDpcIiwgcmVzdWx0KVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgUmVsb2FkRmVlZCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5lYWNTdmMuUmVsb2FkRmVlZCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBSb3V0ZVRvUGF0aChwYXRoOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBwYXRoO1xuICAgIH1cblxuICAgIHB1YmxpYyBTdWJtaXQoKSB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdzdWJtaXR0aW5nOiAnLCB0aGlzLnZhbHVlKTtcbiAgICAgICAgc3dpdGNoICh0aGlzLnNlbGVjdGVkQnRuKSB7XG4gICAgICAgICAgICBjYXNlICdwci1idG4nOlxuICAgICAgICAgICAgICAgIC8vUHVsbCByZXF1ZXN0XG4gICAgICAgICAgICAgICAgLy8gY29uc29sZS5sb2coJ2NyZWF0aW5nIHB1bGwgcmVxdWVzdDogJywgdGhpcy52YWx1ZSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdvaS1idG4nOlxuICAgICAgICAgICAgICAgIC8vT3BlbiBJc3N1ZVxuICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKCdPcGVuIGlzc3VlOiAnLCB0aGlzLnZhbHVlKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ2ZiLWJ0bic6XG4gICAgICAgICAgICAgICAgLy9GZWF0dXJlIEJyYW5jaFxuICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKCdjcmVhdGluZyBmZWF0dXJlIGJyYW5jaDogJywgdGhpcy52YWx1ZSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKCdobW0nKTtcblxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy9IRUxQRVJTXG5cbiAgICBwcm90ZWN0ZWQgYWRkU2VsZWN0QnRuKCkge1xuICAgICAgICAoPEhUTUxFbGVtZW50PmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMuc2VsZWN0ZWRCdG4pKT8uY2xhc3NMaXN0LmFkZChcbiAgICAgICAgICAgICdzZWxlY3RlZCdcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgcmVtb3ZlU2VsZWN0ZWRCdG4oKSB7XG4gICAgICAgICg8SFRNTEVsZW1lbnQ+KFxuICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGhpcy5zZWxlY3RlZEJ0bilcbiAgICAgICAgKSk/LmNsYXNzTGlzdC5yZW1vdmUoJ3NlbGVjdGVkJyk7XG4gICAgfVxufVxuIiwiPGRpdj5cbiAgICA8bWF0LWNhcmQgY2xhc3M9XCJzb2NpYWwtY2FyZFwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIUxvYWRpbmdGZWVkICYmIEZlZWRcIj5cbiAgICAgICAgICAgIDwhLS0gQ09NTUVOVEVEIE9VVCBBTk5PVU5DRU1FTlQgQlVUVE9OIC0tPlxuICAgICAgICAgICAgPCEtLSA8ZGl2XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJnaC1jYXJkLWNvbnRhaW5lclwiXG4gICAgICAgICAgICAgICAgZnhMYXlvdXQ9XCJyb3dcIlxuICAgICAgICAgICAgICAgIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgY2VudGVyXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8bWF0LWljb24gZnhGbGV4PVwiMTUlXCIgY2xhc3M9XCJnaC1pY29uXCIgY29sb3I9XCJwcmltYXJ5XCI+XG4gICAgICAgICAgICAgICAgICAgIGNhbXBhaWduXG4gICAgICAgICAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICA8ZGl2IGZ4RmxleD1cIjg1JVwiIGNsYXNzPVwiZ2gtY2FyZC1tYWluLWNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgbWF0LXJhaXNlZC1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibWFpbi1idG5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIkNyZWF0ZUFubm91bmNlbWVudCgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZSBUZWFtIEFubm91bmNlbWVudFxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cblxuICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICA8L2Rpdj4gLS0+XG5cbiAgICAgICAgICAgIDxtYXQtY2FyZC1hY3Rpb25zXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmZWVkLWhlYWRlci1hY3Rpb25zXCJcbiAgICAgICAgICAgICAgICBmeExheW91dD1cInJvd1wiXG4gICAgICAgICAgICAgICAgZnhMYXlvdXRBbGlnbj1cInNwYWNlLWFyb3VuZCBjZW50ZXJcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGFjdGlvbiBvZiBGZWVkSGVhZGVyQWN0aW9uc1wiPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiRmVlZEhlYWRlckFjdGlvbnM/Lmxlbmd0aCA+IDJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xvcl09XCJhY3Rpb24uQ29sb3JcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJIYW5kbGVBY3Rpb24oYWN0aW9uKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhY3Rpb24tYnRuLXNtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmeExheW91dEFsaWduPVwiY2VudGVyIGNlbnRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmeExheW91dC5ndC1tZD1cInJvd1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ4TGF5b3V0Lmx0LW1kPVwiY29sdW1uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiYWN0aW9uLkljb25cIj57e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9uLkljb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX08L21hdC1pY29uPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tdGV4dFwiPnt7IGFjdGlvbi5UZXh0IH19PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJGZWVkSGVhZGVyQWN0aW9ucz8ubGVuZ3RoIDw9IDJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xvcl09XCJhY3Rpb24uQ29sb3JcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJIYW5kbGVBY3Rpb24oYWN0aW9uKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhY3Rpb24tYnRuLWxnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmeExheW91dD1cInJvd1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnhMYXlvdXQuZ3QtbWQ9XCJyb3dcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmeExheW91dC5sdC1tZD1cImNvbHVtblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgY2VudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cImFjdGlvbi5JY29uXCI+e3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbi5JY29uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19PC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbi10ZXh0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBhY3Rpb24uVGV4dCB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvbWF0LWNhcmQtYWN0aW9ucz5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPCEtLSBTS0VMRVRPTiAtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIkxvYWRpbmdGZWVkIHx8ICFGZWVkXCI+XG4gICAgICAgICAgICA8IS0tIENPTU1FTlRFRCBPVVQgU0tFTEVUT04gIEZPUiBBTk5PVU5DRU1FTlQgQlROIC0tPlxuICAgICAgICAgICAgPCEtLSA8ZGl2XG4gICAgICAgICAgICAgICAgaWQ9XCJnaC1jYXJkLXNrZWxldG9uXCJcbiAgICAgICAgICAgICAgICBmeExheW91dD1cInJvd1wiXG4gICAgICAgICAgICAgICAgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxza2VsZXRvbi1hdmF0YXJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJnaC1pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgW3Nob3dJY29uXT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICAgICAgW2VmZmVjdF09XCJTa2VsZXRvbkVmZmVjdFwiXG4gICAgICAgICAgICAgICAgPjwvc2tlbGV0b24tYXZhdGFyPlxuXG4gICAgICAgICAgICAgICAgPGRpdiBmeEZsZXg9XCI4NSVcIiBjbGFzcz1cImdoLWNhcmQtbWFpbi1jb250ZW50XCI+XG4gICAgICAgICAgICAgICAgICAgIDxza2VsZXRvbi1ibG9ja1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiNjBweFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbZWZmZWN0XT1cIlNrZWxldG9uRWZmZWN0XCJcbiAgICAgICAgICAgICAgICAgICAgPjwvc2tlbGV0b24tYmxvY2s+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgPC9kaXY+IC0tPlxuXG4gICAgICAgICAgICA8ZGl2IGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRBbGlnbj1cInNwYWNlLWFyb3VuZCBjZW50ZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IHNrZWxldG9uLXRleHQgW2VmZmVjdF09XCJTa2VsZXRvbkVmZmVjdFwiPlB1bGwgUmVxdWVzdDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgc2tlbGV0b24tdGV4dCBbZWZmZWN0XT1cIlNrZWxldG9uRWZmZWN0XCI+T3BlbiBJc3N1ZTwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgc2tlbGV0b24tdGV4dCBbZWZmZWN0XT1cIlNrZWxldG9uRWZmZWN0XCI+XG4gICAgICAgICAgICAgICAgICAgIEZlYXR1cmUgQnJhbmNoXG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9tYXQtY2FyZD5cbiAgICA8IS0tIDxtYXQtY2FyZFxuICAgICAgICBjbGFzcz1cInNvY2lhbC1jYXJkIHJlbG9hZFwiXG4gICAgICAgICpuZ0lmPVwiRmVlZENoZWNrXCJcbiAgICAgICAgZnhMYXlvdXQ9XCJyb3dcIlxuICAgICAgICBmeExheW91dEFsaWduPVwiY2VudGVyIGNlbnRlclwiXG4gICAgPlxuICAgICAgICA8ZGl2PlRoZXJlIGFyZSBuZXcgaXRlbXMgaW4geW91ciBmZWVkLjwvZGl2PlxuXG4gICAgICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gKGNsaWNrKT1cIlJlbG9hZEZlZWQoKVwiPlJlbG9hZCBGZWVkPC9idXR0b24+XG4gICAgPC9tYXQtY2FyZD4gLS0+XG48L2Rpdj5cbiJdfQ==
157
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVlZC1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvZWxlbWVudHMvZmVlZC1oZWFkZXIvZmVlZC1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvZWxlbWVudHMvZmVlZC1oZWFkZXIvZmVlZC1oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFekQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sK0RBQStELENBQUM7QUFDMUcsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sdUVBQXVFLENBQUM7Ozs7Ozs7Ozs7QUFTdEgsTUFBTSxPQUFPLG1CQUFtQjtJQWtENUIsWUFBc0IsTUFBa0IsRUFBWSxNQUFpQjtRQUEvQyxXQUFNLEdBQU4sTUFBTSxDQUFZO1FBQVksV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUNqRSxJQUFJLENBQUMsY0FBYyxHQUFHLE1BQU0sQ0FBQztRQUM3QiwrQkFBK0I7SUFDbkMsQ0FBQztJQUVNLFFBQVEsS0FBVSxDQUFDO0lBRW5CLFdBQVc7UUFDZCxnRUFBZ0U7SUFDcEUsQ0FBQztJQUVNLGVBQWU7UUFDbEIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFTSxrQkFBa0I7UUFDckIsaURBQWlEO1FBQ2pELElBQUksQ0FBQyxZQUFZLENBQUMsY0FBYyxFQUFFLDBCQUEwQixDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVELGdDQUFnQztJQUNoQyw4QkFBOEI7SUFDOUIsZ0RBQWdEO0lBQ2hELGlDQUFpQztJQUNqQyx5QkFBeUI7SUFDekIsbURBQW1EO0lBQ25ELGlDQUFpQztJQUVqQyxJQUFJO0lBRUosc0JBQXNC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YixDQUFDO0lBQ04sQ0FBQztJQUVTLGlCQUFpQjtRQUNULENBQ1YsUUFBUSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQzNDLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNyQyxDQUFDOztnSEExTFEsbUJBQW1CO29HQUFuQixtQkFBbUIsNGRDWmhDLG8zSkE0SEE7MkZEaEhhLG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDSSxpQkFBaUI7eUhBTXBCLHVCQUF1QjtzQkFEN0IsS0FBSzt1QkFBQywyQkFBMkI7Z0JBSTNCLElBQUk7c0JBRFYsS0FBSzt1QkFBQyxNQUFNO2dCQUlOLFNBQVM7c0JBRGYsS0FBSzt1QkFBQyxZQUFZO2dCQUlaLG1CQUFtQjtzQkFEekIsS0FBSzt1QkFBQyx1QkFBdUI7Z0JBSXZCLGVBQWU7c0JBRHJCLEtBQUs7dUJBQUMsbUJBQW1CO2dCQUluQixpQkFBaUI7c0JBRHZCLEtBQUs7dUJBQUMscUJBQXFCO2dCQUlyQixXQUFXO3NCQURqQixLQUFLO3VCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBGZWVkSGVhZGVyRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZGlhbG9ncy9mZWVkLWhlYWRlci1kaWFsb2cvZmVlZC1oZWFkZXItZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOZXdBcHBsaWNhdGlvbkRpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL2RpYWxvZ3MvbmV3LWFwcGxpY2F0aW9uLWRpYWxvZy9uZXctYXBwbGljYXRpb24tZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGZWVkSXRlbUFjdGlvbiB9IGZyb20gJy4uLy4uL21vZGVscy91c2VyLWZlZWQubW9kZWwnO1xuaW1wb3J0IHsgRWFDU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2VhYy5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdsY3UtZmVlZC1oZWFkZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9mZWVkLWhlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZmVlZC1oZWFkZXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRmVlZEhlYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQElucHV0KCdhY3RpdmUtZW52aXJvbm1lbnQtbG9va3VwJylcbiAgICBwdWJsaWMgQWN0aXZlRW52aXJvbm1lbnRMb29rdXA6IHN0cmluZztcblxuICAgIEBJbnB1dCgnZmVlZCcpXG4gICAgcHVibGljIEZlZWQ6IGFueTtcblxuICAgIEBJbnB1dCgnZmVlZC1jaGVjaycpXG4gICAgcHVibGljIEZlZWRDaGVjazogYW55O1xuXG4gICAgQElucHV0KCdzb3VyY2UtY29udHJvbC1sb29rdXAnKVxuICAgIHB1YmxpYyBTb3VyY2VDb250cm9sTG9va3VwOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoJ2hhcy1naC1jb25uZWN0aW9uJylcbiAgICBwdWJsaWMgSGFzR0hDb25uZWN0aW9uOiBib29sZWFuO1xuXG4gICAgQElucHV0KCdmZWVkLWhlYWRlci1hY3Rpb25zJylcbiAgICBwdWJsaWMgRmVlZEhlYWRlckFjdGlvbnM6IEFycmF5PEZlZWRJdGVtQWN0aW9uPjtcblxuICAgIEBJbnB1dCgnbG9hZGluZy1mZWVkJylcbiAgICBwdWJsaWMgTG9hZGluZ0ZlZWQ6IGJvb2xlYW47XG5cbiAgICAvLyBwdWJsaWMgZ2V0IEFjdGl2ZUVudmlyb25tZW50TG9va3VwKCk6IHN0cmluZyB7XG4gICAgLy8gICAgIC8vICBUT0RPOiAgRXZlbnR1YWxseSBzdXBwb3J0IG11bHRpcGxlIGVudmlyb25tZW50c1xuICAgIC8vICAgICBjb25zdCBlbnZMb29rdXBzID0gT2JqZWN0LmtleXModGhpcy5TdGF0ZT8uRWFDPy5FbnZpcm9ubWVudHMgfHwge30pO1xuXG4gICAgLy8gICAgIHJldHVybiBlbnZMb29rdXBzWzBdO1xuICAgIC8vIH1cblxuICAgIC8vIHB1YmxpYyBnZXQgRmVlZEhlYWRlckFjdGlvbnMoKTogQXJyYXk8RmVlZEl0ZW1BY3Rpb24+IHtcbiAgICAvLyAgICAgLy8gY29uc29sZS5sb2coJ0ZlZWRBY3Rpb25zOiAnLCB0aGlzLlN0YXRlPy5GZWVkQWN0aW9ucylcbiAgICAvLyAgICAgcmV0dXJuIHRoaXMuU3RhdGU/LkZlZWRBY3Rpb25zO1xuICAgIC8vIH1cblxuICAgIC8vIHB1YmxpYyBnZXQgSGFzR0hDb25uZWN0aW9uKCk6IGJvb2xlYW4ge1xuICAgIC8vICAgICByZXR1cm4gdGhpcy5TdGF0ZT8uR2l0SHViPy5IYXNDb25uZWN0aW9uO1xuICAgIC8vIH1cblxuICAgIC8vIHB1YmxpYyBnZXQgU3RhdGUoKTogQXBwbGljYXRpb25zRmxvd1N0YXRlIHtcbiAgICAvLyAgICAgcmV0dXJuIHRoaXMuZWFjU3ZjLlN0YXRlO1xuICAgIC8vIH1cblxuICAgIHB1YmxpYyBNb2RhbEhlYWRlcjogc3RyaW5nO1xuXG4gICAgcHVibGljIFNrZWxldG9uRWZmZWN0OiBzdHJpbmc7XG5cbiAgICBwcm90ZWN0ZWQgc2VsZWN0ZWRCdG46IHN0cmluZztcblxuICAgIHB1YmxpYyB2YWx1ZTogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIGVhY1N2YzogRWFDU2VydmljZSwgcHJvdGVjdGVkIGRpYWxvZzogTWF0RGlhbG9nKSB7XG4gICAgICAgIHRoaXMuU2tlbGV0b25FZmZlY3QgPSAnd2F2ZSc7XG4gICAgICAgIC8vIHRoaXMuc2VsZWN0ZWRCdG4gPSBcInByLWJ0blwiO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHt9XG5cbiAgICBwdWJsaWMgbmdPbkNoYW5nZXMoKSB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdmZWVkIGhlYWRlciBhY3Rpb25zOiAnLCB0aGlzLkZlZWRIZWFkZXJBY3Rpb25zKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCkge1xuICAgICAgICB0aGlzLmFkZFNlbGVjdEJ0bigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBDcmVhdGVBbm5vdW5jZW1lbnQoKSB7XG4gICAgICAgIC8vIHRoaXMuTW9kYWxIZWFkZXIgPSBcIkNyZWF0ZSBUZWFtIEFubm91bmNlbWVudFwiO1xuICAgICAgICB0aGlzLk9wZW5GSERpYWxvZygnQW5ub3VuY2VtZW50JywgJ0NyZWF0ZSBUZWFtIEFubm91bmNlbWVudCcpO1xuICAgIH1cblxuICAgIC8vIHB1YmxpYyBDcmVhdGVGZWF0dXJlQnJhbmNoKCl7XG4gICAgLy8gICB0aGlzLnJlbW92ZVNlbGVjdGVkQnRuKCk7XG4gICAgLy8gICB0aGlzLk1vZGFsSGVhZGVyID0gXCJDcmVhdGUgRmVhdHVyZSBCcmFuY2hcIjtcbiAgICAvLyAgIHRoaXMuc2VsZWN0ZWRCdG4gPSBcImZiLWJ0blwiO1xuICAgIC8vICAgdGhpcy5hZGRTZWxlY3RCdG4oKTtcbiAgICAvLyAgIGNvbnNvbGUubG9nKFwiY3JlYXRlIGZlYXR1cmUgYnJhbmNoIHNlbGVjdGVkXCIpO1xuICAgIC8vICAgdGhpcy5PcGVuRkhEaWFsb2coJ2JyYW5jaCcpO1xuXG4gICAgLy8gfVxuXG4gICAgLy8gcHVibGljIE9wZW5Jc3N1ZSgpe1xuICAgIC8vICAgdGhpcy5yZW1vdmVTZWxlY3RlZEJ0bigpO1xuICAgIC8vICAgdGhpcy5Nb2RhbEhlYWRlciA9IFwiT3BlbiBJc3N1ZVwiO1xuICAgIC8vICAgdGhpcy5zZWxlY3RlZEJ0biA9IFwib2ktYnRuXCI7XG4gICAgLy8gICB0aGlzLmFkZFNlbGVjdEJ0bigpO1xuICAgIC8vICAgY29uc29sZS5sb2coXCJvcGVuIGlzc3VlIHNlbGVjdGVkXCIpO1xuICAgIC8vICAgdGhpcy5PcGVuRkhEaWFsb2coJ2lzc3VlJyk7XG5cbiAgICAvLyB9XG5cbiAgICAvLyBwdWJsaWMgQ3JlYXRlUHVsbFJlcXVlc3QoKXtcbiAgICAvLyAgIHRoaXMucmVtb3ZlU2VsZWN0ZWRCdG4oKTtcbiAgICAvLyAgIHRoaXMuTW9kYWxIZWFkZXIgPSBcIkNyZWF0ZSBQdWxsIFJlcXVlc3RcIjtcbiAgICAvLyAgIHRoaXMuc2VsZWN0ZWRCdG4gPSBcInByLWJ0blwiO1xuICAgIC8vICAgdGhpcy5hZGRTZWxlY3RCdG4oKTtcbiAgICAvLyAgIGNvbnNvbGUubG9nKFwiY3JlYXRlIHB1bGwgcmVxdWVzdCBzZWxlY3RlZFwiKTtcbiAgICAvLyAgIHRoaXMuT3BlbkZIRGlhbG9nKCdwdWxsLXJlcXVlc3QnKTtcblxuICAgIC8vIH1cblxuICAgIHB1YmxpYyBDcmVhdGVOZXdBcHAoKSB7XG4gICAgICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oTmV3QXBwbGljYXRpb25EaWFsb2dDb21wb25lbnQsIHtcbiAgICAgICAgICAgIHdpZHRoOiAnNjAwcHgnLFxuICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgIGVudmlyb25tZW50TG9va3VwOiB0aGlzLkFjdGl2ZUVudmlyb25tZW50TG9va3VwLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKChyZXN1bHQ6IGFueSkgPT4ge1xuICAgICAgICAgICAgLy8gY29uc29sZS5sb2coJ1RoZSBkaWFsb2cgd2FzIGNsb3NlZCcpO1xuICAgICAgICAgICAgLy8gY29uc29sZS5sb2coXCJyZXN1bHQ6XCIsIHJlc3VsdClcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIEhhbmRsZUFjdGlvbihhY3Rpb246IEZlZWRJdGVtQWN0aW9uKSB7XG4gICAgICAgIGlmIChhY3Rpb24uQWN0aW9uVHlwZSA9PSAnTGluaycpIHtcbiAgICAgICAgICAgIGlmIChhY3Rpb24uQWN0aW9uLnN0YXJ0c1dpdGgoJ2h0dHAnKSkge1xuICAgICAgICAgICAgICAgIHdpbmRvdy5vcGVuKGFjdGlvbi5BY3Rpb24sICdfYmxhbmsnKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBhY3Rpb24uQWN0aW9uO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKGFjdGlvbi5BY3Rpb25UeXBlID09ICdNb2RhbCcpIHtcbiAgICAgICAgICAgIHRoaXMuT3BlbkZIRGlhbG9nKGFjdGlvbi5BY3Rpb24sIGFjdGlvbi5UZXh0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBPcGVuRkhEaWFsb2cobW9kYWxUeXBlOiBzdHJpbmcsIG1vZGFsSGVhZGVyOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihGZWVkSGVhZGVyRGlhbG9nQ29tcG9uZW50LCB7XG4gICAgICAgICAgICB3aWR0aDogJzYwMHB4JyxcbiAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICBkaWFsb2dUaXRsZTogbW9kYWxIZWFkZXIsXG4gICAgICAgICAgICAgICAgdHlwZTogbW9kYWxUeXBlLFxuICAgICAgICAgICAgICAgIHNvdXJjZUNvbnRyb2xMb29rdXA6IHRoaXMuU291cmNlQ29udHJvbExvb2t1cFxuICAgICAgICAgICAgICAgICAgICA/IHRoaXMuU291cmNlQ29udHJvbExvb2t1cFxuICAgICAgICAgICAgICAgICAgICA6IG51bGwsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcblxuICAgICAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKHJlc3VsdDogYW55KSA9PiB7XG4gICAgICAgICAgICAvLyBjb25zb2xlLmxvZygnVGhlIGRpYWxvZyB3YXMgY2xvc2VkJyk7XG4gICAgICAgICAgICAvLyBjb25zb2xlLmxvZyhcInJlc3VsdDpcIiwgcmVzdWx0KVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgUmVsb2FkRmVlZCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5lYWNTdmMuUmVsb2FkRmVlZCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBSb3V0ZVRvUGF0aChwYXRoOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBwYXRoO1xuICAgIH1cblxuICAgIHB1YmxpYyBTdWJtaXQoKSB7XG4gICAgICAgIGNvbnNvbGUubG9nKCdzdWJtaXR0aW5nOiAnLCB0aGlzLnZhbHVlKTtcbiAgICAgICAgc3dpdGNoICh0aGlzLnNlbGVjdGVkQnRuKSB7XG4gICAgICAgICAgICBjYXNlICdwci1idG4nOlxuICAgICAgICAgICAgICAgIC8vUHVsbCByZXF1ZXN0XG4gICAgICAgICAgICAgICAgLy8gY29uc29sZS5sb2coJ2NyZWF0aW5nIHB1bGwgcmVxdWVzdDogJywgdGhpcy52YWx1ZSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdvaS1idG4nOlxuICAgICAgICAgICAgICAgIC8vT3BlbiBJc3N1ZVxuICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKCdPcGVuIGlzc3VlOiAnLCB0aGlzLnZhbHVlKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ2ZiLWJ0bic6XG4gICAgICAgICAgICAgICAgLy9GZWF0dXJlIEJyYW5jaFxuICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKCdjcmVhdGluZyBmZWF0dXJlIGJyYW5jaDogJywgdGhpcy52YWx1ZSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKCdobW0nKTtcblxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy9IRUxQRVJTXG5cbiAgICBwcm90ZWN0ZWQgYWRkU2VsZWN0QnRuKCkge1xuICAgICAgICAoPEhUTUxFbGVtZW50PmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMuc2VsZWN0ZWRCdG4pKT8uY2xhc3NMaXN0LmFkZChcbiAgICAgICAgICAgICdzZWxlY3RlZCdcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgcmVtb3ZlU2VsZWN0ZWRCdG4oKSB7XG4gICAgICAgICg8SFRNTEVsZW1lbnQ+KFxuICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGhpcy5zZWxlY3RlZEJ0bilcbiAgICAgICAgKSk/LmNsYXNzTGlzdC5yZW1vdmUoJ3NlbGVjdGVkJyk7XG4gICAgfVxufVxuIiwiPGRpdj5cbiAgICA8bWF0LWNhcmQgY2xhc3M9XCJzb2NpYWwtY2FyZFwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIUxvYWRpbmdGZWVkICYmIEZlZWRcIj5cbiAgICAgICAgICAgIDwhLS0gQ09NTUVOVEVEIE9VVCBBTk5PVU5DRU1FTlQgQlVUVE9OIC0tPlxuICAgICAgICAgICAgPCEtLSA8ZGl2XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJnaC1jYXJkLWNvbnRhaW5lclwiXG4gICAgICAgICAgICAgICAgZnhMYXlvdXQ9XCJyb3dcIlxuICAgICAgICAgICAgICAgIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgY2VudGVyXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8bWF0LWljb24gZnhGbGV4PVwiMTUlXCIgY2xhc3M9XCJnaC1pY29uXCIgY29sb3I9XCJwcmltYXJ5XCI+XG4gICAgICAgICAgICAgICAgICAgIGNhbXBhaWduXG4gICAgICAgICAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICA8ZGl2IGZ4RmxleD1cIjg1JVwiIGNsYXNzPVwiZ2gtY2FyZC1tYWluLWNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgbWF0LXJhaXNlZC1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibWFpbi1idG5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIkNyZWF0ZUFubm91bmNlbWVudCgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZSBUZWFtIEFubm91bmNlbWVudFxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cblxuICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICA8L2Rpdj4gLS0+XG5cbiAgICAgICAgICAgIDxtYXQtY2FyZC1hY3Rpb25zXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmZWVkLWhlYWRlci1hY3Rpb25zXCJcbiAgICAgICAgICAgICAgICBmeExheW91dD1cInJvd1wiXG4gICAgICAgICAgICAgICAgZnhMYXlvdXRBbGlnbj1cInNwYWNlLWFyb3VuZCBjZW50ZXJcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGFjdGlvbiBvZiBGZWVkSGVhZGVyQWN0aW9uc1wiPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiRmVlZEhlYWRlckFjdGlvbnM/Lmxlbmd0aCA+IDJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xvcl09XCJhY3Rpb24uQ29sb3JcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJIYW5kbGVBY3Rpb24oYWN0aW9uKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhY3Rpb24tYnRuLXNtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmeExheW91dEFsaWduPVwiY2VudGVyIGNlbnRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmeExheW91dC5ndC1tZD1cInJvd1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ4TGF5b3V0Lmx0LW1kPVwiY29sdW1uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiYWN0aW9uLkljb25cIj57e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9uLkljb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX08L21hdC1pY29uPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tdGV4dFwiPnt7IGFjdGlvbi5UZXh0IH19PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJGZWVkSGVhZGVyQWN0aW9ucz8ubGVuZ3RoIDw9IDJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xvcl09XCJhY3Rpb24uQ29sb3JcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJIYW5kbGVBY3Rpb24oYWN0aW9uKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhY3Rpb24tYnRuLWxnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmeExheW91dD1cInJvd1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnhMYXlvdXQuZ3QtbWQ9XCJyb3dcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmeExheW91dC5sdC1tZD1cImNvbHVtblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgY2VudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cImFjdGlvbi5JY29uXCI+e3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbi5JY29uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19PC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbi10ZXh0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBhY3Rpb24uVGV4dCB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvbWF0LWNhcmQtYWN0aW9ucz5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPCEtLSBTS0VMRVRPTiAtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIkxvYWRpbmdGZWVkIHx8ICFGZWVkXCI+XG4gICAgICAgICAgICA8IS0tIENPTU1FTlRFRCBPVVQgU0tFTEVUT04gIEZPUiBBTk5PVU5DRU1FTlQgQlROIC0tPlxuICAgICAgICAgICAgPCEtLSA8ZGl2XG4gICAgICAgICAgICAgICAgaWQ9XCJnaC1jYXJkLXNrZWxldG9uXCJcbiAgICAgICAgICAgICAgICBmeExheW91dD1cInJvd1wiXG4gICAgICAgICAgICAgICAgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxza2VsZXRvbi1hdmF0YXJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJnaC1pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgW3Nob3dJY29uXT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICAgICAgW2VmZmVjdF09XCJTa2VsZXRvbkVmZmVjdFwiXG4gICAgICAgICAgICAgICAgPjwvc2tlbGV0b24tYXZhdGFyPlxuXG4gICAgICAgICAgICAgICAgPGRpdiBmeEZsZXg9XCI4NSVcIiBjbGFzcz1cImdoLWNhcmQtbWFpbi1jb250ZW50XCI+XG4gICAgICAgICAgICAgICAgICAgIDxza2VsZXRvbi1ibG9ja1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiNjBweFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbZWZmZWN0XT1cIlNrZWxldG9uRWZmZWN0XCJcbiAgICAgICAgICAgICAgICAgICAgPjwvc2tlbGV0b24tYmxvY2s+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgPC9kaXY+IC0tPlxuXG4gICAgICAgICAgICA8ZGl2IGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRBbGlnbj1cInNwYWNlLWFyb3VuZCBjZW50ZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IHNrZWxldG9uLXRleHQgW2VmZmVjdF09XCJTa2VsZXRvbkVmZmVjdFwiPlB1bGwgUmVxdWVzdDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgc2tlbGV0b24tdGV4dCBbZWZmZWN0XT1cIlNrZWxldG9uRWZmZWN0XCI+T3BlbiBJc3N1ZTwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgc2tlbGV0b24tdGV4dCBbZWZmZWN0XT1cIlNrZWxldG9uRWZmZWN0XCI+XG4gICAgICAgICAgICAgICAgICAgIEZlYXR1cmUgQnJhbmNoXG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9tYXQtY2FyZD5cbiAgICA8IS0tIDxtYXQtY2FyZFxuICAgICAgICBjbGFzcz1cInNvY2lhbC1jYXJkIHJlbG9hZFwiXG4gICAgICAgICpuZ0lmPVwiRmVlZENoZWNrXCJcbiAgICAgICAgZnhMYXlvdXQ9XCJyb3dcIlxuICAgICAgICBmeExheW91dEFsaWduPVwiY2VudGVyIGNlbnRlclwiXG4gICAgPlxuICAgICAgICA8ZGl2PlRoZXJlIGFyZSBuZXcgaXRlbXMgaW4geW91ciBmZWVkLjwvZGl2PlxuXG4gICAgICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gKGNsaWNrKT1cIlJlbG9hZEZlZWQoKVwiPlJlbG9hZCBGZWVkPC9idXR0b24+XG4gICAgPC9tYXQtY2FyZD4gLS0+XG48L2Rpdj5cbiJdfQ==
@@ -109,10 +109,10 @@ export class ProjectCardComponent {
109
109
  let tempProj = this.Projects[pLookup];
110
110
  this.Project = tempProj;
111
111
  let tempProjNode = {
112
- name: tempProj?.Project?.Name,
113
- description: tempProj?.Project?.Description,
112
+ name: tempProj.Project.Name,
113
+ description: tempProj.Project.Description,
114
114
  lookup: pLookup,
115
- url: 'https://' + tempProj?.PrimaryHost,
115
+ url: 'https://' + tempProj.PrimaryHost,
116
116
  routerLink: ['/project', pLookup],
117
117
  };
118
118
  let tempRoutes = this.ApplicationRoutes;
@@ -227,4 +227,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
227
227
  type: Input,
228
228
  args: ['project-lookup']
229
229
  }] } });
230
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVjdC1jYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbW1vbi9zcmMvbGliL2VsZW1lbnRzL3Byb2plY3QtY2FyZC9wcm9qZWN0LWNhcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvZWxlbWVudHMvcHJvamVjdC1jYXJkL3Byb2plY3QtY2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUNILHFCQUFxQixFQUNyQixnQkFBZ0IsR0FDbkIsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7Ozs7OztBQVNoQyxNQUFNLE9BQU8sb0JBQW9CO0lBbUo3QixrQ0FBa0M7SUFFbEM7UUF4SVEsZ0JBQVcsR0FBRyxDQUFDLElBQWMsRUFBRSxLQUFhLEVBQUUsRUFBRTtZQUNwRCxPQUFPO2dCQUNILFVBQVUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDO2dCQUN2RCxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7Z0JBQ2YsS0FBSyxFQUFFLEtBQUs7Z0JBQ1osVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVO2dCQUMzQixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7Z0JBQ2IsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO2dCQUNuQixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7YUFDaEMsQ0FBQztRQUNOLENBQUMsQ0FBQztRQW1HRixnQkFBVyxHQUFHLElBQUksZUFBZSxDQUM3QixDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFD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QyxDQUFDLENBQUM7U0FDTjtRQUNELE9BQU8sWUFBWSxDQUFDO0lBQ3hCLENBQUM7SUFFTSxXQUFXLENBQUMsS0FBYTtRQUM1QixpQ0FBaUM7SUFDckMsQ0FBQzs7aUhBbFNRLG9CQUFvQjtxR0FBcEIsb0JBQW9CLHVXQ2RqQyxpNUtBc0lBOzJGRHhIYSxvQkFBb0I7a0JBTGhDLFNBQVM7K0JBQ0ksa0JBQWtCOzBFQU1yQixnQkFBZ0I7c0JBRHRCLEtBQUs7dUJBQUMsbUJBQW1CO2dCQUluQixPQUFPO3NCQURiLEtBQUs7dUJBQUMsU0FBUztnQkFJVCxjQUFjO3NCQURwQixLQUFLO3VCQUFDLGlCQUFpQjtnQkFJakIsUUFBUTtzQkFEZCxLQUFLO3VCQUFDLFVBQVU7Z0JBa0lWLE9BQU87c0JBRGIsS0FBSzt1QkFBQyxTQUFTO2dCQUlULGFBQWE7c0JBRG5CLEtBQUs7dUJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmxhdFRyZWVDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3RyZWUnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIE1hdFRyZWVGbGF0RGF0YVNvdXJjZSxcbiAgICBNYXRUcmVlRmxhdHRlbmVyLFxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90cmVlJztcbmltcG9ydCB7IEVhQ0FwcGxpY2F0aW9uQXNDb2RlLCBFYUNQcm9qZWN0QXNDb2RlIH0gZnJvbSAnQHNlbWFudGljanMvY29tbW9uJztcbmltcG9ydCB7IEZsYXROb2RlLCBUcmVlTm9kZSB9IGZyb20gJy4uLy4uL21vZGVscy90cmVlLW5vZGUubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2xjdS1wcm9qZWN0LWNhcmQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9wcm9qZWN0LWNhcmQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3Byb2plY3QtY2FyZC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBQcm9qZWN0Q2FyZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQElucHV0KCdhcHBsaWNhdGlvbnMtYmFuaycpXG4gICAgcHVibGljIEFwcGxpY2F0aW9uc0Jhbms6IEFycmF5PEVhQ0FwcGxpY2F0aW9uQXNDb2RlPjtcblxuICAgIEBJbnB1dCgnbG9hZGluZycpXG4gICAgcHVibGljIExvYWRpbmc6IGJvb2xlYW47XG5cbiAgICBASW5wdXQoJ3Byb2plY3QtbG9va3VwcycpXG4gICAgcHVibGljIFByb2plY3RMb29rdXBzOiBBcnJheTxzdHJpbmc+O1xuXG4gICAgQElucHV0KCdwcm9qZWN0cycpXG4gICAgcHVibGljIFByb2plY3RzOiBBcnJheTxFYUNQcm9qZWN0QXNDb2RlPjtcblxuICAgIHByaXZhdGUgdHJhbnNmb3JtZXIgPSAobm9kZTogVHJlZU5vZGUsIGxldmVsOiBudW1iZXIpID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGV4cGFuZGFibGU6ICEhbm9kZS5jaGlsZHJlbiAmJiBub2RlLmNoaWxkcmVuLmxlbmd0aCA+IDAsXG4gICAgICAgICAgICBuYW1lOiBub2RlLm5hbWUsXG4gICAgICAgICAgICBsZXZlbDogbGV2ZWwsXG4gICAgICAgICAgICByb3V0ZXJMaW5rOiBub2RlLnJvdXRlckxpbmssXG4gICAgICAgICAgICB1cmw6IG5vZGUudXJsLFxuICAgICAgICAgICAgbG9va3VwOiBub2RlLmxvb2t1cCxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBub2RlLmRlc2NyaXB0aW9uLFxuICAgICAgICB9O1xuICAgIH07XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IEFwcGxpY2F0aW9ucygpOiB7XG4gICAgICAgIFtsb29rdXA6IHN0cmluZ106IEVhQ0FwcGxpY2F0aW9uQXNDb2RlO1xuICAgIH0ge1xuICAgICAgICBjb25zdCBhcHBzOiB7IFtsb29rdXA6IHN0cmluZ106IEVhQ0FwcGxpY2F0aW9uQXNDb2RlIH0gPSB7fTtcblxuICAgICAgICB0aGlzLlByb2plY3Q/LkFwcGxpY2F0aW9uTG9va3Vwcz8uZm9yRWFjaCgoYXBwTG9va3VwOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgIGFwcHNbYXBwTG9va3VwXSA9IHRoaXMuQXBwbGljYXRpb25zQmFua1thcHBMb29rdXBdO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIGFwcHM7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBBcHBsaWNhdGlvblJvdXRlcygpOiBBcnJheTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuUm91dGVkQXBwbGljYXRpb25zIHx8IHt9KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IEN1cnJlbnRSb3V0ZUFwcGxpY2F0aW9uTG9va3VwcygpOiBBcnJheTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuUm91dGVkQXBwbGljYXRpb25zW3RoaXMuQXBwUm91dGVdIHx8IHt9KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IFJvdXRlZEFwcGxpY2F0aW9ucygpOiB7XG4gICAgICAgIFtyb3V0ZTogc3RyaW5nXTogeyBbbG9va3VwOiBzdHJpbmddOiBFYUNBcHBsaWNhdGlvbkFzQ29kZSB9O1xuICAgIH0ge1xuICAgICAgICBjb25zdCBhcHBMb29rdXBzID0gT2JqZWN0LmtleXModGhpcy5BcHBsaWNhdGlvbnMpO1xuXG4gICAgICAgIGNvbnN0IGFwcHMgPSBhcHBMb29rdXBzLm1hcChcbiAgICAgICAgICAgIChhcHBMb29rdXApID0+IHRoaXMuQXBwbGljYXRpb25zW2FwcExvb2t1cF1cbiAgICAgICAgKTtcblxuICAgICAgICBsZXQgYXBwUm91dGVzID1cbiAgICAgICAgICAgIGFwcHMubWFwKChhcHApID0+IHtcbiAgICAgICAgICAgICAgICAvLyBjb25zb2xlLmxvZyhcIkFwcCBmcm9tIHByb2plY3RzOiBcIiwgYXBwKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gYXBwPy5Mb29rdXBDb25maWc/LlBhdGhSZWdleC5yZXBsYWNlKCcuKicsICcnKTtcbiAgICAgICAgICAgIH0pIHx8IFtdO1xuXG4gICAgICAgIGFwcFJvdXRlcyA9IGFwcFJvdXRlcy5maWx0ZXIoKGFyKSA9PiBhciAhPSBudWxsKTtcblxuICAgICAgICBsZXQgcm91dGVCYXNlczogc3RyaW5nW10gPSBbXTtcblxuICAgICAgICBhcHBSb3V0ZXMuZm9yRWFjaCgoYXBwUm91dGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGFwcFJvdXRlUGFydHMgPSBhcHBSb3V0ZS5zcGxpdCgnLycpO1xuXG4gICAgICAgICAgICBjb25zdCBhcHBSb3V0ZUJhc2UgPSBgLyR7YXBwUm91dGVQYXJ0c1sxXX1gO1xuXG4gICAgICAgICAgICBpZiAocm91dGVCYXNlcy5pbmRleE9mKGFwcFJvdXRlQmFzZSkgPCAwKSB7XG4gICAgICAgICAgICAgICAgcm91dGVCYXNlcy5wdXNoKGFwcFJvdXRlQmFzZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGxldCB3b3JraW5nQXBwTG9va3VwcyA9IFsuLi4oYXBwTG9va3VwcyB8fCBbXSldO1xuXG4gICAgICAgIHJvdXRlQmFzZXMgPSByb3V0ZUJhc2VzLnNvcnQoKGEsIGIpID0+IGIubG9jYWxlQ29tcGFyZShhKSk7XG5cbiAgICAgICAgY29uc3Qgcm91dGVTZXQgPVxuICAgICAgICAgICAgcm91dGVCYXNlcy5yZWR1Y2UoKHByZXZSb3V0ZU1hcCwgY3VycmVudFJvdXRlQmFzZSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJvdXRlTWFwID0ge1xuICAgICAgICAgICAgICAgICAgICAuLi5wcmV2Um91dGVNYXAsXG4gICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IGZpbHRlcmVkQXBwTG9va3VwcyA9IHdvcmtpbmdBcHBMb29rdXBzLmZpbHRlcigod2FsKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHdhID0gdGhpcy5BcHBsaWNhdGlvbnNbd2FsXTtcblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gd2E/Lkxvb2t1cENvbmZpZz8uUGF0aFJlZ2V4LnN0YXJ0c1dpdGgoXG4gICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50Um91dGVCYXNlXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICByb3V0ZU1hcFtjdXJyZW50Um91dGVCYXNlXSA9XG4gICAgICAgICAgICAgICAgICAgIGZpbHRlcmVkQXBwTG9va3Vwcy5yZWR1Y2UoKHByZXZBcHBNYXAsIGFwcExvb2t1cCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgYXBwTWFwOiBhbnkgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4ucHJldkFwcE1hcCxcbiAgICAgICAgICAgICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGFwcE1hcFthcHBMb29rdXBdID0gdGhpcy5BcHBsaWNhdGlvbnNbYXBwTG9va3VwXTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGFwcE1hcDtcbiAgICAgICAgICAgICAgICAgICAgfSwge30pIHx8IHt9O1xuXG4gICAgICAgICAgICAgICAgd29ya2luZ0FwcExvb2t1cHMgPSB3b3JraW5nQXBwTG9va3Vwcy5maWx0ZXIoKHdhKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmaWx0ZXJlZEFwcExvb2t1cHMuaW5kZXhPZih3YSkgPCAwO1xuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHJvdXRlTWFwO1xuICAgICAgICAgICAgfSwge30pIHx8IHt9O1xuXG4gICAgICAgIGxldCByb3V0ZVNldEtleXMgPSBPYmplY3Qua2V5cyhyb3V0ZVNldCk7XG5cbiAgICAgICAgcm91dGVTZXRLZXlzID0gcm91dGVTZXRLZXlzLnNvcnQoKGEsIGIpID0+IGEubG9jYWxlQ29tcGFyZShiKSk7XG5cbiAgICAgICAgY29uc3Qgcm91dGVTZXRSZXN1bHQgPSB7fTtcblxuICAgICAgICByb3V0ZVNldEtleXMuZm9yRWFjaCgocnNrKSA9PiAocm91dGVTZXRSZXN1bHRbcnNrXSA9IHJvdXRlU2V0W3Jza10pKTtcblxuICAgICAgICAvLyBjb25zb2xlLmxvZyhcIkFwcCBSb3V0ZXM6IFwiLHJvdXRlU2V0UmVzdWx0KVxuXG4gICAgICAgIHJldHVybiByb3V0ZVNldFJlc3VsdDtcbiAgICB9XG5cbiAgICB0cmVlQ29udHJvbCA9IG5ldyBGbGF0VHJlZUNvbnRyb2w8RmxhdE5vZGU+KFxuICAgICAgICAobm9kZTogYW55KSA9PiBub2RlLmxldmVsLFxuICAgICAgICAobm9kZTogYW55KSA9PiBub2RlLmV4cGFuZGFibGVcbiAgICApO1xuXG4gICAgdHJlZUZsYXR0ZW5lciA9IG5ldyBNYXRUcmVlRmxhdHRlbmVyKFxuICAgICAgICB0aGlzLnRyYW5zZm9ybWVyLFxuICAgICAgICAobm9kZSkgPT4gbm9kZS5sZXZlbCxcbiAgICAgICAgKG5vZGUpID0+IG5vZGUuZXhwYW5kYWJsZSxcbiAgICAgICAgKG5vZGUpID0+IG5vZGUuY2hpbGRyZW5cbiAgICApO1xuXG4gICAgcHVibGljIERhdGFTb3VyY2UgPSBuZXcgTWF0VHJlZUZsYXREYXRhU291cmNlKFxuICAgICAgICB0aGlzLnRyZWVDb250cm9sLFxuICAgICAgICB0aGlzLnRyZWVGbGF0dGVuZXJcbiAgICApO1xuXG4gICAgQElucHV0KCdwcm9qZWN0JylcbiAgICBwdWJsaWMgUHJvamVjdDogRWFDUHJvamVjdEFzQ29kZTtcblxuICAgIEBJbnB1dCgncHJvamVjdC1sb29rdXAnKVxuICAgIHB1YmxpYyBQcm9qZWN0TG9va3VwOiBzdHJpbmc7XG5cbiAgICBwdWJsaWMgQXBwUm91dGU6IHN0cmluZztcblxuICAgIC8vIHB1YmxpYyBSb3V0ZWRBcHBsaWNhdGlvbnM6IGFueTtcblxuICAgIGNvbnN0cnVjdG9yKCkge31cblxuICAgIHB1YmxpYyBIYXNDaGlsZCA9IChfOiBudW1iZXIsIG5vZGU6IEZsYXROb2RlKSA9PiBub2RlLmV4cGFuZGFibGU7XG5cbiAgICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gICAgcHVibGljIG5nT25DaGFuZ2VzKCkge1xuICAgICAgICBpZiAodGhpcy5Qcm9qZWN0cyAmJiB0aGlzLlByb2plY3RMb29rdXBzICYmIHRoaXMuQXBwbGljYXRpb25zKSB7XG4gICAgICAgICAgICBsZXQgdGVtcCA9IHRoaXMuQnVpbGRQcm9qZWN0VHJlZSgpO1xuICAgICAgICAgICAgLy8gY29uc29sZS5sb2coXCJ0byBzdHJpbmc6IFwiLCBKU09OLnN0cmluZ2lmeSh0ZW1wKSlcblxuICAgICAgICAgICAgaWYgKEpTT04uc3RyaW5naWZ5KHRoaXMuRGF0YVNvdXJjZS5kYXRhKSAhPT0gSlNPTi5zdHJpbmdpZnkodGVtcCkpIHtcbiAgICAgICAgICAgICAgICAvLyBjb25zb2xlLmxvZygnSXRzIGRpZmZlcmVudCcpXG4gICAgICAgICAgICAgICAgdGhpcy5EYXRhU291cmNlLmRhdGEgPSB0ZW1wO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIFJvdXRlVG9QYXRoKHBhdGg6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHBhdGg7XG4gICAgfVxuXG4gICAgcHVibGljIEJ1aWxkUHJvamVjdFRyZWUoKTogQXJyYXk8VHJlZU5vZGU+IHtcbiAgICAgICAgLy8gY29uc29sZS5sb2coJ2NhbGxpbmcgYnVpbGQgcHJvamVjdCB0cmVlJyk7XG4gICAgICAgIGxldCB0ZW1wVHJlZURhdGE6IEFycmF5PFRyZWVOb2RlPiA9IFtdO1xuICAgICAgICB0aGlzLlByb2plY3RMb29rdXBzPy5mb3JFYWNoKChwTG9va3VwOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgIGxldCB0ZW1wUHJvaiA9IHRoaXMuUHJvamVjdHNbcExvb2t1cF07XG4gICAgICAgICAgICB0aGlzLlByb2plY3QgPSB0ZW1wUHJvajtcbiAgICAgICAgICAgIGxldCB0ZW1wUHJvak5vZGU6IFRyZWVOb2RlID0ge1xuICAgICAgICAgICAgICAgIG5hbWU6IHRlbXBQcm9qPy5Qcm9qZWN0Py5OYW1lLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiB0ZW1wUHJvaj8uUHJvamVjdD8uRGVzY3JpcHRpb24sXG4gICAgICAgICAgICAgICAgbG9va3VwOiBwTG9va3VwLFxuICAgICAgICAgICAgICAgIHVybDogJ2h0dHBzOi8vJyArIHRlbXBQcm9qPy5QcmltYXJ5SG9zdCxcbiAgICAgICAgICAgICAgICByb3V0ZXJMaW5rOiBbJy9wcm9qZWN0JywgcExvb2t1cF0sXG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICBsZXQgdGVtcFJvdXRlcyA9IHRoaXMuQXBwbGljYXRpb25Sb3V0ZXM7XG5cbiAgICAgICAgICAgIGlmICh0ZW1wUm91dGVzKSB7XG4gICAgICAgICAgICAgICAgbGV0IHRlbXBQcm9qQ2hpbGRyZW46IEFycmF5PFRyZWVOb2RlPiA9IFtdO1xuICAgICAgICAgICAgICAgIHRlbXBSb3V0ZXMuZm9yRWFjaCgoYXBwUm91dGU6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLkFwcFJvdXRlID0gYXBwUm91dGU7XG4gICAgICAgICAgICAgICAgICAgIC8vIHJvdXRlckxpbms6IFsnL3JvdXRlJywgdGhpcy5BcHBSb3V0ZSwgcExvb2t1cF0sXG4gICAgICAgICAgICAgICAgICAgIGxldCB0ZW1wUm91dGVOb2RlOiBUcmVlTm9kZSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IHRoaXMuQXBwUm91dGUsXG4gICAgICAgICAgICAgICAgICAgICAgICB1cmw6ICdodHRwczovLycgKyB0ZW1wUHJvai5QcmltYXJ5SG9zdCArIHRoaXMuQXBwUm91dGUsXG4gICAgICAgICAgICAgICAgICAgICAgICByb3V0ZXJMaW5rOiBbJy9yb3V0ZScsIHRoaXMuQXBwUm91dGUsIHBMb29rdXBdLFxuICAgICAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgICAgIGxldCB0ZW1wQXBwcyA9IHRoaXMuQ3VycmVudFJvdXRlQXBwbGljYXRpb25Mb29rdXBzO1xuICAgICAgICAgICAgICAgICAgICBpZiAodGVtcEFwcHMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCB0ZW1wUm91dGVDaGlsZHJlbjogQXJyYXk8VHJlZU5vZGU+ID0gW107XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZW1wQXBwcy5mb3JFYWNoKChhcHBMb29rdXA6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCB0ZW1wQXBwID1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5Sb3V0ZWRBcHBsaWNhdGlvbnNbdGhpcy5BcHBSb3V0ZV1bXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcHBMb29rdXBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgYXBwUGF0aCA9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlbXBBcHAuTG9va3VwQ29uZmlnPy5QYXRoUmVnZXguc3Vic3RyaW5nKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlbXBBcHAuTG9va3VwQ29uZmlnPy5QYXRoUmVnZXgubGVuZ3RoIC0gMlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHRlbXBBcHBOb2RlOiBUcmVlTm9kZSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9va3VwOiBhcHBMb29rdXAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IHRlbXBBcHAuQXBwbGljYXRpb24uTmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2h0dHBzOi8vJyArIHRlbXBQcm9qLlByaW1hcnlIb3N0ICsgYXBwUGF0aCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IHRlbXBBcHAuQXBwbGljYXRpb24uRGVzY3JpcHRpb24sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdXRlckxpbms6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcvYXBwbGljYXRpb24nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBwTG9va3VwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5BcHBSb3V0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBMb29rdXAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZW1wUm91dGVDaGlsZHJlbi5wdXNoKHRlbXBBcHBOb2RlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGVtcFJvdXRlTm9kZS5jaGlsZHJlbiA9IHRlbXBSb3V0ZUNoaWxkcmVuO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHRlbXBQcm9qQ2hpbGRyZW4ucHVzaCh0ZW1wUm91dGVOb2RlKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB0ZW1wUHJvak5vZGUuY2hpbGRyZW4gPSB0ZW1wUHJvakNoaWxkcmVuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGVtcFRyZWVEYXRhLnB1c2godGVtcFByb2pOb2RlKTtcbiAgICAgICAgfSk7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdUSEUgVFJFRTogJywgdGVtcFRyZWVEYXRhKTtcbiAgICAgICAgcmV0dXJuIHRlbXBUcmVlRGF0YTtcblxuICAgICAgICAvLyByZXR1cm4gdGVtcFRyZWVEYXRhO1xuICAgIH1cblxuICAgIHB1YmxpYyBCdWlsZFJvdXRlVHJlZSgpIHtcbiAgICAgICAgLy8gY29uc29sZS5sb2coJ2NhbGxlZCByb3V0ZSB0cmVlJyk7XG4gICAgICAgIGxldCB0ZW1wVHJlZURhdGE6IEFycmF5PFRyZWVOb2RlPiA9IFtdO1xuXG4gICAgICAgIGxldCB0ZW1wUm91dGVzID0gdGhpcy5BcHBsaWNhdGlvblJvdXRlcztcbiAgICAgICAgaWYgKHRlbXBSb3V0ZXMpIHtcbiAgICAgICAgICAgIC8vIGxldCB0ZW1wUHJvakNoaWxkcmVuOiBBcnJheTxUcmVlTm9kZT4gPSBbXTtcbiAgICAgICAgICAgIHRlbXBSb3V0ZXMuZm9yRWFjaCgoYXBwUm91dGU6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuQXBwUm91dGUgPSBhcHBSb3V0ZTtcblxuICAgICAgICAgICAgICAgIGxldCB0ZW1wUm91dGVOb2RlOiBUcmVlTm9kZSA9IHtcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogdGhpcy5BcHBSb3V0ZSxcbiAgICAgICAgICAgICAgICAgICAgdXJsOiAnaHR0cHM6Ly8nICsgdGhpcy5Qcm9qZWN0Py5QcmltYXJ5SG9zdCArIHRoaXMuQXBwUm91dGUsXG4gICAgICAgICAgICAgICAgICAgIHJvdXRlckxpbms6IFsnL3JvdXRlJywgdGhpcy5BcHBSb3V0ZSwgdGhpcy5Qcm9qZWN0TG9va3VwXSxcbiAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgbGV0IHRlbXBBcHBzID0gdGhpcy5DdXJyZW50Um91dGVBcHBsaWNhdGlvbkxvb2t1cHM7XG4gICAgICAgICAgICAgICAgaWYgKHRlbXBBcHBzKSB7XG4gICAgICAgICAgICAgICAgICAgIGxldCB0ZW1wUm91dGVDaGlsZHJlbjogQXJyYXk8VHJlZU5vZGU+ID0gW107XG4gICAgICAgICAgICAgICAgICAgIHRlbXBBcHBzLmZvckVhY2goKGFwcExvb2t1cDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgdGVtcEFwcCA9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5Sb3V0ZWRBcHBsaWNhdGlvbnNbdGhpcy5BcHBSb3V0ZV1bYXBwTG9va3VwXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCB0ZW1wQXBwTm9kZTogVHJlZU5vZGUgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9va3VwOiBhcHBMb29rdXAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogdGVtcEFwcC5BcHBsaWNhdGlvbi5OYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2h0dHBzOi8vJyArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuUHJvamVjdD8uUHJpbWFyeUhvc3QgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLkFwcFJvdXRlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiB0ZW1wQXBwLkFwcGxpY2F0aW9uLkRlc2NyaXB0aW9uLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdXRlckxpbms6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJy9hcHBsaWNhdGlvbicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFwcExvb2t1cCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5BcHBSb3V0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5Qcm9qZWN0TG9va3VwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgdGVtcFJvdXRlQ2hpbGRyZW4ucHVzaCh0ZW1wQXBwTm9kZSk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB0ZW1wUm91dGVOb2RlLmNoaWxkcmVuID0gdGVtcFJvdXRlQ2hpbGRyZW47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRlbXBUcmVlRGF0YS5wdXNoKHRlbXBSb3V0ZU5vZGUpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRlbXBUcmVlRGF0YTtcbiAgICB9XG5cbiAgICBwdWJsaWMgSGFuZGxlUm91dGUocm91dGU6IHN0cmluZykge1xuICAgICAgICAvLyBjb25zb2xlLmxvZygncm91dGU6ICcsIHJvdXRlKTtcbiAgICB9XG59XG4iLCI8IS0tIFRSRUUgLS0+XG48IS0tIDxuZy1jb250YWluZXIgKm5nSWY9XCJQcm9qZWN0TG9va3Vwcz9CdWlsZFRyZWUoKTpmYWxzZVwiPjwvbmctY29udGFpbmVyPiAtLT5cbjxsY3Utc2xvdHRlZC1jYXJkLWxnXG4gICAgKm5nSWY9XCJQcm9qZWN0TG9va3Vwcz8ubGVuZ3RoID4gMFwiXG4gICAgY2xhc3M9XCJmaXQtY29udGVudFwiXG4gICAgW2xvYWRpbmddPVwiTG9hZGluZ1wiXG4gICAgY2FyZC10aXRsZT1cIlByb2plY3RcIlxuICAgIGljb249XCJ3b3JrX291dGxpbmVcIlxuICAgIFttYWluLXNsb3QtZGVzY3JpcHRpb25dPVwiUHJvamVjdExvb2t1cHM/Lmxlbmd0aCArICcgcHJvamVjdChzKSBjb25maWd1cmVkJ1wiXG4gICAgKG1haW4tYWN0aW9uLWNsaWNrZWQpPVwiUm91dGVUb1BhdGgoJy9kYXNoYm9hcmQvY3JlYXRlLXByb2plY3QnKVwiXG4+XG4gICAgPCEtLSA8ZGl2PiAtLT5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiRGF0YVNvdXJjZVwiPlxuICAgICAgICA8bWF0LXRyZWUgW2RhdGFTb3VyY2VdPVwiRGF0YVNvdXJjZVwiIFt0cmVlQ29udHJvbF09XCJ0cmVlQ29udHJvbFwiPlxuICAgICAgICAgICAgPG1hdC10cmVlLW5vZGUgKm1hdFRyZWVOb2RlRGVmPVwibGV0IG5vZGVcIiBtYXRUcmVlTm9kZVBhZGRpbmc+XG4gICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJub2RlLnJvdXRlckxpbmtcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInNsb3QtaGVhZGVyLWFuY2hvclwiXG4gICAgICAgICAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIm5vZGUucm91dGVyTGlua1wiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibm9kZS5uYW1lXCIgY2xhc3M9XCJzbG90LW5hbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IG5vZGUubmFtZSB9fVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm5vZGUuZGVzY3JpcHRpb25cIiBjbGFzcz1cInNsb3QtZGVzY3JpcHRpb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IG5vZGUuZGVzY3JpcHRpb24gfX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhbm9kZS5yb3V0ZXJMaW5rXCIgY2xhc3M9XCJ0cmVlLWhlYWRlclwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibm9kZS5uYW1lXCIgY2xhc3M9XCJzbG90LW5hbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IG5vZGUubmFtZSB9fVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm5vZGUuZGVzY3JpcHRpb25cIiBjbGFzcz1cInNsb3QtZGVzY3JpcHRpb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IG5vZGUuZGVzY3JpcHRpb24gfX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInNsb3QtYWN0aW9ucy1jb250YWluZXJcIlxuICAgICAgICAgICAgICAgICAgICBmeExheW91dD1cInJvd1wiXG4gICAgICAgICAgICAgICAgICAgIGZ4TGF5b3V0QWxpZ249XCJzcGFjZS1hcm91bmQgY2VudGVyXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIm5vZGUucm91dGVyTGlua1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInNsb3QtYWN0aW9uLWFuY2hvclwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJub2RlLnJvdXRlckxpbmtcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWljb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImFjdGlvbi1pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXRUb29sdGlwPVwiRWRpdCB7eyBub2RlLm5hbWUgfX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5lZGl0PC9tYXQtaWNvblxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInNsb3QtYWN0aW9uLWFuY2hvclwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaHJlZl09XCJub2RlLnVybFwiXG4gICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWljb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImFjdGlvbi1pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXRUb29sdGlwPVwiTGF1bmNoIHt7IG5vZGUubmFtZSB9fVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPmxhdW5jaDwvbWF0LWljb25cbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwhLS0gPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24+PC9idXR0b24+IC0tPlxuICAgICAgICAgICAgPC9tYXQtdHJlZS1ub2RlPlxuICAgICAgICAgICAgPG1hdC10cmVlLW5vZGVcbiAgICAgICAgICAgICAgICAqbWF0VHJlZU5vZGVEZWY9XCJsZXQgbm9kZTsgd2hlbjogSGFzQ2hpbGRcIlxuICAgICAgICAgICAgICAgIG1hdFRyZWVOb2RlUGFkZGluZ1xuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIG1hdFRyZWVOb2RlVG9nZ2xlXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ1RvZ2dsZSAnICsgbm9kZS5uYW1lXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cIm1hdC1pY29uLXJ0bC1taXJyb3JcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJlZUNvbnRyb2wuaXNFeHBhbmRlZChub2RlKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IFwiZXhwYW5kX21vcmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IFwiY2hldnJvbl9yaWdodFwiXG4gICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICA8L21hdC1pY29uPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwibm9kZS5yb3V0ZXJMaW5rXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzbG90LWhlYWRlci1hbmNob3JcIlxuICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJub2RlLnJvdXRlckxpbmtcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm5vZGUubmFtZVwiIGNsYXNzPVwic2xvdC1uYW1lXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBub2RlLm5hbWUgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJub2RlLmRlc2NyaXB0aW9uXCIgY2xhc3M9XCJzbG90LWRlc2NyaXB0aW9uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBub2RlLmRlc2NyaXB0aW9uIH19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIW5vZGUucm91dGVyTGlua1wiIGNsYXNzPVwidHJlZS1oZWFkZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm5vZGUubmFtZVwiIGNsYXNzPVwic2xvdC1uYW1lXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBub2RlLm5hbWUgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJub2RlLmRlc2NyaXB0aW9uXCIgY2xhc3M9XCJzbG90LWRlc2NyaXB0aW9uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBub2RlLmRlc2NyaXB0aW9uIH19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzbG90LWFjdGlvbnMtY29udGFpbmVyXCJcbiAgICAgICAgICAgICAgICAgICAgZnhMYXlvdXQ9XCJyb3dcIlxuICAgICAgICAgICAgICAgICAgICBmeExheW91dEFsaWduPVwic3BhY2UtYXJvdW5kIGNlbnRlclwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJub2RlLnJvdXRlckxpbmtcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzbG90LWFjdGlvbi1hbmNob3JcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwibm9kZS5yb3V0ZXJMaW5rXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhY3Rpb24taWNvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF0VG9vbHRpcD1cIkVkaXQge3sgbm9kZS5uYW1lIH19XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+ZWRpdDwvbWF0LWljb25cbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzbG90LWFjdGlvbi1hbmNob3JcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2hyZWZdPVwibm9kZS51cmxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhY3Rpb24taWNvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF0VG9vbHRpcD1cIkxhdW5jaCB7eyBub2RlLm5hbWUgfX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5sYXVuY2g8L21hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbWF0LXRyZWUtbm9kZT5cbiAgICAgICAgPC9tYXQtdHJlZT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvbGN1LXNsb3R0ZWQtY2FyZC1sZz5cbiJdfQ==
230
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVjdC1jYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbW1vbi9zcmMvbGliL2VsZW1lbnRzL3Byb2plY3QtY2FyZC9wcm9qZWN0LWNhcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvZWxlbWVudHMvcHJvamVjdC1jYXJkL3Byb2plY3QtY2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUNILHFCQUFxQixFQUNyQixnQkFBZ0IsR0FDbkIsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7Ozs7OztBQVNoQyxNQUFNLE9BQU8sb0JBQW9CO0lBbUo3QixrQ0FBa0M7SUFFbEM7UUF4SVEsZ0JBQVcsR0FBRyxDQUFDLElBQWMsRUFBRSxLQUFhLEVBQUUsRUFBRTtZQUNwRCxPQUFPO2dCQUNILFVBQVUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDO2dCQUN2RCxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7Z0JBQ2YsS0FBSyxFQUFFLEtBQUs7Z0JBQ1osVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVO2dCQUMzQixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7Z0JBQ2IsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO2dCQUNuQixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7YUFDaEMsQ0FBQztRQUNOLENBQUMsQ0FBQztRQW1HRixnQkFBVyxHQUFHLElBQUksZUFBZSxDQUM3QixDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFD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QyxDQUFDLENBQUM7U0FDTjtRQUNELE9BQU8sWUFBWSxDQUFDO0lBQ3hCLENBQUM7SUFFTSxXQUFXLENBQUMsS0FBYTtRQUM1QixpQ0FBaUM7SUFDckMsQ0FBQzs7aUhBbFNRLG9CQUFvQjtxR0FBcEIsb0JBQW9CLHVXQ2RqQyxpNUtBc0lBOzJGRHhIYSxvQkFBb0I7a0JBTGhDLFNBQVM7K0JBQ0ksa0JBQWtCOzBFQU1yQixnQkFBZ0I7c0JBRHRCLEtBQUs7dUJBQUMsbUJBQW1CO2dCQUluQixPQUFPO3NCQURiLEtBQUs7dUJBQUMsU0FBUztnQkFJVCxjQUFjO3NCQURwQixLQUFLO3VCQUFDLGlCQUFpQjtnQkFJakIsUUFBUTtzQkFEZCxLQUFLO3VCQUFDLFVBQVU7Z0JBa0lWLE9BQU87c0JBRGIsS0FBSzt1QkFBQyxTQUFTO2dCQUlULGFBQWE7c0JBRG5CLEtBQUs7dUJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmxhdFRyZWVDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3RyZWUnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIE1hdFRyZWVGbGF0RGF0YVNvdXJjZSxcbiAgICBNYXRUcmVlRmxhdHRlbmVyLFxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90cmVlJztcbmltcG9ydCB7IEVhQ0FwcGxpY2F0aW9uQXNDb2RlLCBFYUNQcm9qZWN0QXNDb2RlIH0gZnJvbSAnQHNlbWFudGljanMvY29tbW9uJztcbmltcG9ydCB7IEZsYXROb2RlLCBUcmVlTm9kZSB9IGZyb20gJy4uLy4uL21vZGVscy90cmVlLW5vZGUubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2xjdS1wcm9qZWN0LWNhcmQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9wcm9qZWN0LWNhcmQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3Byb2plY3QtY2FyZC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBQcm9qZWN0Q2FyZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQElucHV0KCdhcHBsaWNhdGlvbnMtYmFuaycpXG4gICAgcHVibGljIEFwcGxpY2F0aW9uc0Jhbms6IEFycmF5PEVhQ0FwcGxpY2F0aW9uQXNDb2RlPjtcblxuICAgIEBJbnB1dCgnbG9hZGluZycpXG4gICAgcHVibGljIExvYWRpbmc6IGJvb2xlYW47XG5cbiAgICBASW5wdXQoJ3Byb2plY3QtbG9va3VwcycpXG4gICAgcHVibGljIFByb2plY3RMb29rdXBzOiBBcnJheTxzdHJpbmc+O1xuXG4gICAgQElucHV0KCdwcm9qZWN0cycpXG4gICAgcHVibGljIFByb2plY3RzOiBBcnJheTxFYUNQcm9qZWN0QXNDb2RlPjtcblxuICAgIHByaXZhdGUgdHJhbnNmb3JtZXIgPSAobm9kZTogVHJlZU5vZGUsIGxldmVsOiBudW1iZXIpID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGV4cGFuZGFibGU6ICEhbm9kZS5jaGlsZHJlbiAmJiBub2RlLmNoaWxkcmVuLmxlbmd0aCA+IDAsXG4gICAgICAgICAgICBuYW1lOiBub2RlLm5hbWUsXG4gICAgICAgICAgICBsZXZlbDogbGV2ZWwsXG4gICAgICAgICAgICByb3V0ZXJMaW5rOiBub2RlLnJvdXRlckxpbmssXG4gICAgICAgICAgICB1cmw6IG5vZGUudXJsLFxuICAgICAgICAgICAgbG9va3VwOiBub2RlLmxvb2t1cCxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBub2RlLmRlc2NyaXB0aW9uLFxuICAgICAgICB9O1xuICAgIH07XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IEFwcGxpY2F0aW9ucygpOiB7XG4gICAgICAgIFtsb29rdXA6IHN0cmluZ106IEVhQ0FwcGxpY2F0aW9uQXNDb2RlO1xuICAgIH0ge1xuICAgICAgICBjb25zdCBhcHBzOiB7IFtsb29rdXA6IHN0cmluZ106IEVhQ0FwcGxpY2F0aW9uQXNDb2RlIH0gPSB7fTtcblxuICAgICAgICB0aGlzLlByb2plY3Q/LkFwcGxpY2F0aW9uTG9va3Vwcz8uZm9yRWFjaCgoYXBwTG9va3VwOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgIGFwcHNbYXBwTG9va3VwXSA9IHRoaXMuQXBwbGljYXRpb25zQmFua1thcHBMb29rdXBdO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIGFwcHM7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBBcHBsaWNhdGlvblJvdXRlcygpOiBBcnJheTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuUm91dGVkQXBwbGljYXRpb25zIHx8IHt9KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IEN1cnJlbnRSb3V0ZUFwcGxpY2F0aW9uTG9va3VwcygpOiBBcnJheTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuUm91dGVkQXBwbGljYXRpb25zW3RoaXMuQXBwUm91dGVdIHx8IHt9KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IFJvdXRlZEFwcGxpY2F0aW9ucygpOiB7XG4gICAgICAgIFtyb3V0ZTogc3RyaW5nXTogeyBbbG9va3VwOiBzdHJpbmddOiBFYUNBcHBsaWNhdGlvbkFzQ29kZSB9O1xuICAgIH0ge1xuICAgICAgICBjb25zdCBhcHBMb29rdXBzID0gT2JqZWN0LmtleXModGhpcy5BcHBsaWNhdGlvbnMpO1xuXG4gICAgICAgIGNvbnN0IGFwcHMgPSBhcHBMb29rdXBzLm1hcChcbiAgICAgICAgICAgIChhcHBMb29rdXApID0+IHRoaXMuQXBwbGljYXRpb25zW2FwcExvb2t1cF1cbiAgICAgICAgKTtcblxuICAgICAgICBsZXQgYXBwUm91dGVzID1cbiAgICAgICAgICAgIGFwcHMubWFwKChhcHApID0+IHtcbiAgICAgICAgICAgICAgICAvLyBjb25zb2xlLmxvZyhcIkFwcCBmcm9tIHByb2plY3RzOiBcIiwgYXBwKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gYXBwPy5Mb29rdXBDb25maWc/LlBhdGhSZWdleC5yZXBsYWNlKCcuKicsICcnKTtcbiAgICAgICAgICAgIH0pIHx8IFtdO1xuXG4gICAgICAgIGFwcFJvdXRlcyA9IGFwcFJvdXRlcy5maWx0ZXIoKGFyKSA9PiBhciAhPSBudWxsKTtcblxuICAgICAgICBsZXQgcm91dGVCYXNlczogc3RyaW5nW10gPSBbXTtcblxuICAgICAgICBhcHBSb3V0ZXMuZm9yRWFjaCgoYXBwUm91dGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGFwcFJvdXRlUGFydHMgPSBhcHBSb3V0ZS5zcGxpdCgnLycpO1xuXG4gICAgICAgICAgICBjb25zdCBhcHBSb3V0ZUJhc2UgPSBgLyR7YXBwUm91dGVQYXJ0c1sxXX1gO1xuXG4gICAgICAgICAgICBpZiAocm91dGVCYXNlcy5pbmRleE9mKGFwcFJvdXRlQmFzZSkgPCAwKSB7XG4gICAgICAgICAgICAgICAgcm91dGVCYXNlcy5wdXNoKGFwcFJvdXRlQmFzZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGxldCB3b3JraW5nQXBwTG9va3VwcyA9IFsuLi4oYXBwTG9va3VwcyB8fCBbXSldO1xuXG4gICAgICAgIHJvdXRlQmFzZXMgPSByb3V0ZUJhc2VzLnNvcnQoKGEsIGIpID0+IGIubG9jYWxlQ29tcGFyZShhKSk7XG5cbiAgICAgICAgY29uc3Qgcm91dGVTZXQgPVxuICAgICAgICAgICAgcm91dGVCYXNlcy5yZWR1Y2UoKHByZXZSb3V0ZU1hcCwgY3VycmVudFJvdXRlQmFzZSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJvdXRlTWFwID0ge1xuICAgICAgICAgICAgICAgICAgICAuLi5wcmV2Um91dGVNYXAsXG4gICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IGZpbHRlcmVkQXBwTG9va3VwcyA9IHdvcmtpbmdBcHBMb29rdXBzLmZpbHRlcigod2FsKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHdhID0gdGhpcy5BcHBsaWNhdGlvbnNbd2FsXTtcblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gd2E/Lkxvb2t1cENvbmZpZz8uUGF0aFJlZ2V4LnN0YXJ0c1dpdGgoXG4gICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50Um91dGVCYXNlXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICByb3V0ZU1hcFtjdXJyZW50Um91dGVCYXNlXSA9XG4gICAgICAgICAgICAgICAgICAgIGZpbHRlcmVkQXBwTG9va3Vwcy5yZWR1Y2UoKHByZXZBcHBNYXAsIGFwcExvb2t1cCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgYXBwTWFwOiBhbnkgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4ucHJldkFwcE1hcCxcbiAgICAgICAgICAgICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGFwcE1hcFthcHBMb29rdXBdID0gdGhpcy5BcHBsaWNhdGlvbnNbYXBwTG9va3VwXTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGFwcE1hcDtcbiAgICAgICAgICAgICAgICAgICAgfSwge30pIHx8IHt9O1xuXG4gICAgICAgICAgICAgICAgd29ya2luZ0FwcExvb2t1cHMgPSB3b3JraW5nQXBwTG9va3Vwcy5maWx0ZXIoKHdhKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmaWx0ZXJlZEFwcExvb2t1cHMuaW5kZXhPZih3YSkgPCAwO1xuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHJvdXRlTWFwO1xuICAgICAgICAgICAgfSwge30pIHx8IHt9O1xuXG4gICAgICAgIGxldCByb3V0ZVNldEtleXMgPSBPYmplY3Qua2V5cyhyb3V0ZVNldCk7XG5cbiAgICAgICAgcm91dGVTZXRLZXlzID0gcm91dGVTZXRLZXlzLnNvcnQoKGEsIGIpID0+IGEubG9jYWxlQ29tcGFyZShiKSk7XG5cbiAgICAgICAgY29uc3Qgcm91dGVTZXRSZXN1bHQgPSB7fTtcblxuICAgICAgICByb3V0ZVNldEtleXMuZm9yRWFjaCgocnNrKSA9PiAocm91dGVTZXRSZXN1bHRbcnNrXSA9IHJvdXRlU2V0W3Jza10pKTtcblxuICAgICAgICAvLyBjb25zb2xlLmxvZyhcIkFwcCBSb3V0ZXM6IFwiLHJvdXRlU2V0UmVzdWx0KVxuXG4gICAgICAgIHJldHVybiByb3V0ZVNldFJlc3VsdDtcbiAgICB9XG5cbiAgICB0cmVlQ29udHJvbCA9IG5ldyBGbGF0VHJlZUNvbnRyb2w8RmxhdE5vZGU+KFxuICAgICAgICAobm9kZTogYW55KSA9PiBub2RlLmxldmVsLFxuICAgICAgICAobm9kZTogYW55KSA9PiBub2RlLmV4cGFuZGFibGVcbiAgICApO1xuXG4gICAgdHJlZUZsYXR0ZW5lciA9IG5ldyBNYXRUcmVlRmxhdHRlbmVyKFxuICAgICAgICB0aGlzLnRyYW5zZm9ybWVyLFxuICAgICAgICAobm9kZSkgPT4gbm9kZS5sZXZlbCxcbiAgICAgICAgKG5vZGUpID0+IG5vZGUuZXhwYW5kYWJsZSxcbiAgICAgICAgKG5vZGUpID0+IG5vZGUuY2hpbGRyZW5cbiAgICApO1xuXG4gICAgcHVibGljIERhdGFTb3VyY2UgPSBuZXcgTWF0VHJlZUZsYXREYXRhU291cmNlKFxuICAgICAgICB0aGlzLnRyZWVDb250cm9sLFxuICAgICAgICB0aGlzLnRyZWVGbGF0dGVuZXJcbiAgICApO1xuXG4gICAgQElucHV0KCdwcm9qZWN0JylcbiAgICBwdWJsaWMgUHJvamVjdDogRWFDUHJvamVjdEFzQ29kZTtcblxuICAgIEBJbnB1dCgncHJvamVjdC1sb29rdXAnKVxuICAgIHB1YmxpYyBQcm9qZWN0TG9va3VwOiBzdHJpbmc7XG5cbiAgICBwdWJsaWMgQXBwUm91dGU6IHN0cmluZztcblxuICAgIC8vIHB1YmxpYyBSb3V0ZWRBcHBsaWNhdGlvbnM6IGFueTtcblxuICAgIGNvbnN0cnVjdG9yKCkge31cblxuICAgIHB1YmxpYyBIYXNDaGlsZCA9IChfOiBudW1iZXIsIG5vZGU6IEZsYXROb2RlKSA9PiBub2RlLmV4cGFuZGFibGU7XG5cbiAgICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gICAgcHVibGljIG5nT25DaGFuZ2VzKCkge1xuICAgICAgICBpZiAodGhpcy5Qcm9qZWN0cyAmJiB0aGlzLlByb2plY3RMb29rdXBzICYmIHRoaXMuQXBwbGljYXRpb25zKSB7XG4gICAgICAgICAgICBsZXQgdGVtcCA9IHRoaXMuQnVpbGRQcm9qZWN0VHJlZSgpO1xuICAgICAgICAgICAgLy8gY29uc29sZS5sb2coXCJ0byBzdHJpbmc6IFwiLCBKU09OLnN0cmluZ2lmeSh0ZW1wKSlcblxuICAgICAgICAgICAgaWYgKEpTT04uc3RyaW5naWZ5KHRoaXMuRGF0YVNvdXJjZS5kYXRhKSAhPT0gSlNPTi5zdHJpbmdpZnkodGVtcCkpIHtcbiAgICAgICAgICAgICAgICAvLyBjb25zb2xlLmxvZygnSXRzIGRpZmZlcmVudCcpXG4gICAgICAgICAgICAgICAgdGhpcy5EYXRhU291cmNlLmRhdGEgPSB0ZW1wO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIFJvdXRlVG9QYXRoKHBhdGg6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHBhdGg7XG4gICAgfVxuXG4gICAgcHVibGljIEJ1aWxkUHJvamVjdFRyZWUoKTogQXJyYXk8VHJlZU5vZGU+IHtcbiAgICAgICAgLy8gY29uc29sZS5sb2coJ2NhbGxpbmcgYnVpbGQgcHJvamVjdCB0cmVlJyk7XG4gICAgICAgIGxldCB0ZW1wVHJlZURhdGE6IEFycmF5PFRyZWVOb2RlPiA9IFtdO1xuICAgICAgICB0aGlzLlByb2plY3RMb29rdXBzPy5mb3JFYWNoKChwTG9va3VwOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgIGxldCB0ZW1wUHJvaiA9IHRoaXMuUHJvamVjdHNbcExvb2t1cF07XG4gICAgICAgICAgICB0aGlzLlByb2plY3QgPSB0ZW1wUHJvajtcbiAgICAgICAgICAgIGxldCB0ZW1wUHJvak5vZGU6IFRyZWVOb2RlID0ge1xuICAgICAgICAgICAgICAgIG5hbWU6IHRlbXBQcm9qLlByb2plY3QuTmFtZSxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogdGVtcFByb2ouUHJvamVjdC5EZXNjcmlwdGlvbixcbiAgICAgICAgICAgICAgICBsb29rdXA6IHBMb29rdXAsXG4gICAgICAgICAgICAgICAgdXJsOiAnaHR0cHM6Ly8nICsgdGVtcFByb2ouUHJpbWFyeUhvc3QsXG4gICAgICAgICAgICAgICAgcm91dGVyTGluazogWycvcHJvamVjdCcsIHBMb29rdXBdLFxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgbGV0IHRlbXBSb3V0ZXMgPSB0aGlzLkFwcGxpY2F0aW9uUm91dGVzO1xuXG4gICAgICAgICAgICBpZiAodGVtcFJvdXRlcykge1xuICAgICAgICAgICAgICAgIGxldCB0ZW1wUHJvakNoaWxkcmVuOiBBcnJheTxUcmVlTm9kZT4gPSBbXTtcbiAgICAgICAgICAgICAgICB0ZW1wUm91dGVzLmZvckVhY2goKGFwcFJvdXRlOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5BcHBSb3V0ZSA9IGFwcFJvdXRlO1xuICAgICAgICAgICAgICAgICAgICAvLyByb3V0ZXJMaW5rOiBbJy9yb3V0ZScsIHRoaXMuQXBwUm91dGUsIHBMb29rdXBdLFxuICAgICAgICAgICAgICAgICAgICBsZXQgdGVtcFJvdXRlTm9kZTogVHJlZU5vZGUgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiB0aGlzLkFwcFJvdXRlLFxuICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiAnaHR0cHM6Ly8nICsgdGVtcFByb2ouUHJpbWFyeUhvc3QgKyB0aGlzLkFwcFJvdXRlLFxuICAgICAgICAgICAgICAgICAgICAgICAgcm91dGVyTGluazogWycvcm91dGUnLCB0aGlzLkFwcFJvdXRlLCBwTG9va3VwXSxcbiAgICAgICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgICAgICBsZXQgdGVtcEFwcHMgPSB0aGlzLkN1cnJlbnRSb3V0ZUFwcGxpY2F0aW9uTG9va3VwcztcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRlbXBBcHBzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgdGVtcFJvdXRlQ2hpbGRyZW46IEFycmF5PFRyZWVOb2RlPiA9IFtdO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGVtcEFwcHMuZm9yRWFjaCgoYXBwTG9va3VwOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgdGVtcEFwcCA9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuUm91dGVkQXBwbGljYXRpb25zW3RoaXMuQXBwUm91dGVdW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBwTG9va3VwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGFwcFBhdGggPVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZW1wQXBwLkxvb2t1cENvbmZpZz8uUGF0aFJlZ2V4LnN1YnN0cmluZyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZW1wQXBwLkxvb2t1cENvbmZpZz8uUGF0aFJlZ2V4Lmxlbmd0aCAtIDJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCB0ZW1wQXBwTm9kZTogVHJlZU5vZGUgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvb2t1cDogYXBwTG9va3VwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiB0ZW1wQXBwLkFwcGxpY2F0aW9uLk5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdodHRwczovLycgKyB0ZW1wUHJvai5QcmltYXJ5SG9zdCArIGFwcFBhdGgsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiB0ZW1wQXBwLkFwcGxpY2F0aW9uLkRlc2NyaXB0aW9uLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3V0ZXJMaW5rOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnL2FwcGxpY2F0aW9uJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFwcExvb2t1cCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuQXBwUm91dGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwTG9va3VwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVtcFJvdXRlQ2hpbGRyZW4ucHVzaCh0ZW1wQXBwTm9kZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRlbXBSb3V0ZU5vZGUuY2hpbGRyZW4gPSB0ZW1wUm91dGVDaGlsZHJlbjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB0ZW1wUHJvakNoaWxkcmVuLnB1c2godGVtcFJvdXRlTm9kZSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgdGVtcFByb2pOb2RlLmNoaWxkcmVuID0gdGVtcFByb2pDaGlsZHJlbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRlbXBUcmVlRGF0YS5wdXNoKHRlbXBQcm9qTm9kZSk7XG4gICAgICAgIH0pO1xuICAgICAgICAvLyBjb25zb2xlLmxvZygnVEhFIFRSRUU6ICcsIHRlbXBUcmVlRGF0YSk7XG4gICAgICAgIHJldHVybiB0ZW1wVHJlZURhdGE7XG5cbiAgICAgICAgLy8gcmV0dXJuIHRlbXBUcmVlRGF0YTtcbiAgICB9XG5cbiAgICBwdWJsaWMgQnVpbGRSb3V0ZVRyZWUoKSB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdjYWxsZWQgcm91dGUgdHJlZScpO1xuICAgICAgICBsZXQgdGVtcFRyZWVEYXRhOiBBcnJheTxUcmVlTm9kZT4gPSBbXTtcblxuICAgICAgICBsZXQgdGVtcFJvdXRlcyA9IHRoaXMuQXBwbGljYXRpb25Sb3V0ZXM7XG4gICAgICAgIGlmICh0ZW1wUm91dGVzKSB7XG4gICAgICAgICAgICAvLyBsZXQgdGVtcFByb2pDaGlsZHJlbjogQXJyYXk8VHJlZU5vZGU+ID0gW107XG4gICAgICAgICAgICB0ZW1wUm91dGVzLmZvckVhY2goKGFwcFJvdXRlOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLkFwcFJvdXRlID0gYXBwUm91dGU7XG5cbiAgICAgICAgICAgICAgICBsZXQgdGVtcFJvdXRlTm9kZTogVHJlZU5vZGUgPSB7XG4gICAgICAgICAgICAgICAgICAgIG5hbWU6IHRoaXMuQXBwUm91dGUsXG4gICAgICAgICAgICAgICAgICAgIHVybDogJ2h0dHBzOi8vJyArIHRoaXMuUHJvamVjdD8uUHJpbWFyeUhvc3QgKyB0aGlzLkFwcFJvdXRlLFxuICAgICAgICAgICAgICAgICAgICByb3V0ZXJMaW5rOiBbJy9yb3V0ZScsIHRoaXMuQXBwUm91dGUsIHRoaXMuUHJvamVjdExvb2t1cF0sXG4gICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgIGxldCB0ZW1wQXBwcyA9IHRoaXMuQ3VycmVudFJvdXRlQXBwbGljYXRpb25Mb29rdXBzO1xuICAgICAgICAgICAgICAgIGlmICh0ZW1wQXBwcykge1xuICAgICAgICAgICAgICAgICAgICBsZXQgdGVtcFJvdXRlQ2hpbGRyZW46IEFycmF5PFRyZWVOb2RlPiA9IFtdO1xuICAgICAgICAgICAgICAgICAgICB0ZW1wQXBwcy5mb3JFYWNoKChhcHBMb29rdXA6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHRlbXBBcHAgPVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuUm91dGVkQXBwbGljYXRpb25zW3RoaXMuQXBwUm91dGVdW2FwcExvb2t1cF07XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgdGVtcEFwcE5vZGU6IFRyZWVOb2RlID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvb2t1cDogYXBwTG9va3VwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IHRlbXBBcHAuQXBwbGljYXRpb24uTmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdodHRwczovLycgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLlByb2plY3Q/LlByaW1hcnlIb3N0ICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5BcHBSb3V0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogdGVtcEFwcC5BcHBsaWNhdGlvbi5EZXNjcmlwdGlvbixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3V0ZXJMaW5rOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcvYXBwbGljYXRpb24nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcHBMb29rdXAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuQXBwUm91dGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuUHJvamVjdExvb2t1cCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRlbXBSb3V0ZUNoaWxkcmVuLnB1c2godGVtcEFwcE5vZGUpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgdGVtcFJvdXRlTm9kZS5jaGlsZHJlbiA9IHRlbXBSb3V0ZUNoaWxkcmVuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0ZW1wVHJlZURhdGEucHVzaCh0ZW1wUm91dGVOb2RlKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0ZW1wVHJlZURhdGE7XG4gICAgfVxuXG4gICAgcHVibGljIEhhbmRsZVJvdXRlKHJvdXRlOiBzdHJpbmcpIHtcbiAgICAgICAgLy8gY29uc29sZS5sb2coJ3JvdXRlOiAnLCByb3V0ZSk7XG4gICAgfVxufVxuIiwiPCEtLSBUUkVFIC0tPlxuPCEtLSA8bmctY29udGFpbmVyICpuZ0lmPVwiUHJvamVjdExvb2t1cHM/QnVpbGRUcmVlKCk6ZmFsc2VcIj48L25nLWNvbnRhaW5lcj4gLS0+XG48bGN1LXNsb3R0ZWQtY2FyZC1sZ1xuICAgICpuZ0lmPVwiUHJvamVjdExvb2t1cHM/Lmxlbmd0aCA+IDBcIlxuICAgIGNsYXNzPVwiZml0LWNvbnRlbnRcIlxuICAgIFtsb2FkaW5nXT1cIkxvYWRpbmdcIlxuICAgIGNhcmQtdGl0bGU9XCJQcm9qZWN0XCJcbiAgICBpY29uPVwid29ya19vdXRsaW5lXCJcbiAgICBbbWFpbi1zbG90LWRlc2NyaXB0aW9uXT1cIlByb2plY3RMb29rdXBzPy5sZW5ndGggKyAnIHByb2plY3QocykgY29uZmlndXJlZCdcIlxuICAgIChtYWluLWFjdGlvbi1jbGlja2VkKT1cIlJvdXRlVG9QYXRoKCcvZGFzaGJvYXJkL2NyZWF0ZS1wcm9qZWN0JylcIlxuPlxuICAgIDwhLS0gPGRpdj4gLS0+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIkRhdGFTb3VyY2VcIj5cbiAgICAgICAgPG1hdC10cmVlIFtkYXRhU291cmNlXT1cIkRhdGFTb3VyY2VcIiBbdHJlZUNvbnRyb2xdPVwidHJlZUNvbnRyb2xcIj5cbiAgICAgICAgICAgIDxtYXQtdHJlZS1ub2RlICptYXRUcmVlTm9kZURlZj1cImxldCBub2RlXCIgbWF0VHJlZU5vZGVQYWRkaW5nPlxuICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwibm9kZS5yb3V0ZXJMaW5rXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzbG90LWhlYWRlci1hbmNob3JcIlxuICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJub2RlLnJvdXRlckxpbmtcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm5vZGUubmFtZVwiIGNsYXNzPVwic2xvdC1uYW1lXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBub2RlLm5hbWUgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJub2RlLmRlc2NyaXB0aW9uXCIgY2xhc3M9XCJzbG90LWRlc2NyaXB0aW9uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBub2RlLmRlc2NyaXB0aW9uIH19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIW5vZGUucm91dGVyTGlua1wiIGNsYXNzPVwidHJlZS1oZWFkZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm5vZGUubmFtZVwiIGNsYXNzPVwic2xvdC1uYW1lXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBub2RlLm5hbWUgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJub2RlLmRlc2NyaXB0aW9uXCIgY2xhc3M9XCJzbG90LWRlc2NyaXB0aW9uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBub2RlLmRlc2NyaXB0aW9uIH19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzbG90LWFjdGlvbnMtY29udGFpbmVyXCJcbiAgICAgICAgICAgICAgICAgICAgZnhMYXlvdXQ9XCJyb3dcIlxuICAgICAgICAgICAgICAgICAgICBmeExheW91dEFsaWduPVwic3BhY2UtYXJvdW5kIGNlbnRlclwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJub2RlLnJvdXRlckxpbmtcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzbG90LWFjdGlvbi1hbmNob3JcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwibm9kZS5yb3V0ZXJMaW5rXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhY3Rpb24taWNvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF0VG9vbHRpcD1cIkVkaXQge3sgbm9kZS5uYW1lIH19XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+ZWRpdDwvbWF0LWljb25cbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzbG90LWFjdGlvbi1hbmNob3JcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2hyZWZdPVwibm9kZS51cmxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhY3Rpb24taWNvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF0VG9vbHRpcD1cIkxhdW5jaCB7eyBub2RlLm5hbWUgfX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5sYXVuY2g8L21hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8IS0tIDxidXR0b24gbWF0LWljb24tYnV0dG9uPjwvYnV0dG9uPiAtLT5cbiAgICAgICAgICAgIDwvbWF0LXRyZWUtbm9kZT5cbiAgICAgICAgICAgIDxtYXQtdHJlZS1ub2RlXG4gICAgICAgICAgICAgICAgKm1hdFRyZWVOb2RlRGVmPVwibGV0IG5vZGU7IHdoZW46IEhhc0NoaWxkXCJcbiAgICAgICAgICAgICAgICBtYXRUcmVlTm9kZVBhZGRpbmdcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBtYXRUcmVlTm9kZVRvZ2dsZVxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidUb2dnbGUgJyArIG5vZGUubmFtZVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJtYXQtaWNvbi1ydGwtbWlycm9yXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyZWVDb250cm9sLmlzRXhwYW5kZWQobm9kZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBcImV4cGFuZF9tb3JlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBcImNoZXZyb25fcmlnaHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIm5vZGUucm91dGVyTGlua1wiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2xvdC1oZWFkZXItYW5jaG9yXCJcbiAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwibm9kZS5yb3V0ZXJMaW5rXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJub2RlLm5hbWVcIiBjbGFzcz1cInNsb3QtbmFtZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgbm9kZS5uYW1lIH19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibm9kZS5kZXNjcmlwdGlvblwiIGNsYXNzPVwic2xvdC1kZXNjcmlwdGlvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgbm9kZS5kZXNjcmlwdGlvbiB9fVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFub2RlLnJvdXRlckxpbmtcIiBjbGFzcz1cInRyZWUtaGVhZGVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJub2RlLm5hbWVcIiBjbGFzcz1cInNsb3QtbmFtZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgbm9kZS5uYW1lIH19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibm9kZS5kZXNjcmlwdGlvblwiIGNsYXNzPVwic2xvdC1kZXNjcmlwdGlvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgbm9kZS5kZXNjcmlwdGlvbiB9fVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2xvdC1hY3Rpb25zLWNvbnRhaW5lclwiXG4gICAgICAgICAgICAgICAgICAgIGZ4TGF5b3V0PVwicm93XCJcbiAgICAgICAgICAgICAgICAgICAgZnhMYXlvdXRBbGlnbj1cInNwYWNlLWFyb3VuZCBjZW50ZXJcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwibm9kZS5yb3V0ZXJMaW5rXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2xvdC1hY3Rpb24tYW5jaG9yXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIm5vZGUucm91dGVyTGlua1wiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYWN0aW9uLWljb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJFZGl0IHt7IG5vZGUubmFtZSB9fVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPmVkaXQ8L21hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2xvdC1hY3Rpb24tYW5jaG9yXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtocmVmXT1cIm5vZGUudXJsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldD1cIl9ibGFua1wiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYWN0aW9uLWljb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJMYXVuY2gge3sgbm9kZS5uYW1lIH19XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+bGF1bmNoPC9tYXQtaWNvblxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L21hdC10cmVlLW5vZGU+XG4gICAgICAgIDwvbWF0LXRyZWU+XG4gICAgPC9uZy1jb250YWluZXI+XG48L2xjdS1zbG90dGVkLWNhcmQtbGc+XG4iXX0=
@@ -39,7 +39,7 @@ export class TeamMemberCardComponent {
39
39
  memberList.push(this.CurrentUser);
40
40
  }
41
41
  this.ProjectLookups.forEach((proj) => {
42
- this.Projects[proj]?.RelyingParty?.AccessConfigurations?.fathym?.Usernames?.forEach((username) => {
42
+ this.Projects[proj].RelyingParty?.AccessConfigurations?.fathym?.Usernames?.forEach((username) => {
43
43
  if (!memberList.includes(username)) {
44
44
  memberList.push(username);
45
45
  // console.log("Added: ", username)
@@ -68,4 +68,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
68
68
  type: Input,
69
69
  args: ['projects']
70
70
  }] } });
71
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVhbS1tZW1iZXItY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb24vc3JjL2xpYi9lbGVtZW50cy90ZWFtLW1lbWJlci1jYXJkL3RlYW0tbWVtYmVyLWNhcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvZWxlbWVudHMvdGVhbS1tZW1iZXItY2FyZC90ZWFtLW1lbWJlci1jYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBR3pELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHVFQUF1RSxDQUFDOzs7Ozs7Ozs7QUFPckgsTUFBTSxPQUFPLHVCQUF1QjtJQWlCaEMsWUFBc0IsTUFBaUI7UUFBakIsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUNuQyxJQUFJLENBQUMsY0FBYyxHQUFHLE1BQU0sQ0FBQztJQUNqQyxDQUFDO0lBRU0sUUFBUSxLQUFVLENBQUM7SUFDbkIsV0FBVztRQUNkLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNmLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDM0MscUJBQXFCO1lBQ3JCLDZCQUE2QjtZQUM3QiwrREFBK0Q7WUFDL0QsNENBQTRDO1NBQy9DO0lBQ0wsQ0FBQztJQUVNLGtCQUFrQjtRQUNyQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyw0QkFBNEIsRUFBRTtZQUM3RCxLQUFLLEVBQUUsT0FBTztZQUNkLElBQUksRUFBRTtnQkFDRixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7Z0JBQzNCLGFBQWEsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztnQkFDckMsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO2FBQzFCO1NBQ0osQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVTLGdCQUFnQjtRQUN0QixJQUFJLFVBQVUsR0FBa0IsSUFBSSxLQUFLLEVBQVUsQ0FBQztRQUNwRCxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDbEIsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDckM7UUFDRCxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQVksRUFBRSxFQUFFO1lBQ3pDLElBQUksQ0FBQyxRQUFRLENBQ1QsSUFBSSxDQUNQLEVBQUUsWUFBWSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsT0FBTyxDQUM3RCxDQUFDLFFBQWdCLEVBQUUsRUFBRTtnQkFDakIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEVBQUU7b0JBQ2hDLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7b0JBQzFCLG1DQUFtQztpQkFDdEM7WUFDTCxDQUFDLENBQ0osQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDO1FBQ0gsMkNBQTJDO1FBQzNDLE9BQU8sVUFBVSxDQUFDO0lBQ3RCLENBQUM7O29IQTlEUSx1QkFBdUI7d0dBQXZCLHVCQUF1QixnUkNWcEMsZ3lEQXdEQTsyRkQ5Q2EsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNJLHNCQUFzQjtnR0FNekIsVUFBVTtzQkFEaEIsS0FBSzt1QkFBQyxZQUFZO2dCQU1aLFdBQVc7c0JBRGpCLEtBQUs7dUJBQUMsY0FBYztnQkFJZCxjQUFjO3NCQURwQixLQUFLO3VCQUFDLGlCQUFpQjtnQkFJakIsUUFBUTtzQkFEZCxLQUFLO3VCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBFYUNQcm9qZWN0QXNDb2RlLCBFbnRlcnByaXNlQXNDb2RlIH0gZnJvbSAnQHNlbWFudGljanMvY29tbW9uJztcbmltcG9ydCB7IEFkZFRlYW1NZW1iZXJEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi8uLi9kaWFsb2dzL2FkZC10ZWFtLW1lbWJlci1kaWFsb2cvYWRkLXRlYW0tbWVtYmVyLWRpYWxvZy5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2xjdS10ZWFtLW1lbWJlci1jYXJkJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdGVhbS1tZW1iZXItY2FyZC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdGVhbS1tZW1iZXItY2FyZC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBUZWFtTWVtYmVyQ2FyZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQElucHV0KCdlbnRlcnByaXNlJylcbiAgICBwdWJsaWMgRW50ZXJwcmlzZTogRW50ZXJwcmlzZUFzQ29kZTtcblxuICAgIHB1YmxpYyBUZWFtTWVtYmVyczogQXJyYXk8YW55PjtcblxuICAgIEBJbnB1dCgnY3VycmVudC11c2VyJylcbiAgICBwdWJsaWMgQ3VycmVudFVzZXI6IHN0cmluZztcblxuICAgIEBJbnB1dCgncHJvamVjdC1sb29rdXBzJylcbiAgICBwdWJsaWMgUHJvamVjdExvb2t1cHM6IEFycmF5PHN0cmluZz47XG5cbiAgICBASW5wdXQoJ3Byb2plY3RzJylcbiAgICBwdWJsaWMgUHJvamVjdHM6IGFueTtcblxuICAgIHB1YmxpYyBTa2VsZXRvbkVmZmVjdDogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIGRpYWxvZzogTWF0RGlhbG9nKSB7XG4gICAgICAgIHRoaXMuU2tlbGV0b25FZmZlY3QgPSAnd2F2ZSc7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge31cbiAgICBwdWJsaWMgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLlByb2plY3RzKSB7XG4gICAgICAgICAgICB0aGlzLlRlYW1NZW1iZXJzID0gdGhpcy5CdWlsZFRlYW1NZW1iZXJzKCk7XG4gICAgICAgICAgICAvLyAgICAgdGhpcy5Qcm9qZWN0c1tcbiAgICAgICAgICAgIC8vICAgICAgICAgdGhpcy5Qcm9qZWN0TG9va3VwXG4gICAgICAgICAgICAvLyAgICAgXS5SZWx5aW5nUGFydHk/LkFjY2Vzc0NvbmZpZ3VyYXRpb25zPy5mYXRoeW0/LlVzZXJuYW1lcztcbiAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKFwiUHJvamVjdHM6IFwiLCB0aGlzLlByb2plY3RzKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBPcGVuQWRkTWVtYmVyTW9kYWwoKSB7XG4gICAgICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oQWRkVGVhbU1lbWJlckRpYWxvZ0NvbXBvbmVudCwge1xuICAgICAgICAgICAgd2lkdGg6ICc2MDBweCcsXG4gICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgZW50ZXJwcmlzZTogdGhpcy5FbnRlcnByaXNlLFxuICAgICAgICAgICAgICAgIHByb2plY3RMb29rdXA6IHRoaXMuUHJvamVjdExvb2t1cHNbMF0sXG4gICAgICAgICAgICAgICAgcHJvamVjdHM6IHRoaXMuUHJvamVjdHMsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgQnVpbGRUZWFtTWVtYmVycygpOiBBcnJheTxzdHJpbmc+IHtcbiAgICAgICAgbGV0IG1lbWJlckxpc3Q6IEFycmF5PHN0cmluZz4gPSBuZXcgQXJyYXk8c3RyaW5nPigpO1xuICAgICAgICBpZiAodGhpcy5DdXJyZW50VXNlcikge1xuICAgICAgICAgICAgbWVtYmVyTGlzdC5wdXNoKHRoaXMuQ3VycmVudFVzZXIpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuUHJvamVjdExvb2t1cHMuZm9yRWFjaCgocHJvajogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICB0aGlzLlByb2plY3RzW1xuICAgICAgICAgICAgICAgIHByb2pcbiAgICAgICAgICAgIF0/LlJlbHlpbmdQYXJ0eT8uQWNjZXNzQ29uZmlndXJhdGlvbnM/LmZhdGh5bT8uVXNlcm5hbWVzPy5mb3JFYWNoKFxuICAgICAgICAgICAgICAgICh1c2VybmFtZTogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghbWVtYmVyTGlzdC5pbmNsdWRlcyh1c2VybmFtZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1lbWJlckxpc3QucHVzaCh1c2VybmFtZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBjb25zb2xlLmxvZyhcIkFkZGVkOiBcIiwgdXNlcm5hbWUpXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICApO1xuICAgICAgICB9KTtcbiAgICAgICAgLy8gY29uc29sZS5sb2coXCJNZW1iZXJMaXN0OiBcIiwgbWVtYmVyTGlzdCk7XG4gICAgICAgIHJldHVybiBtZW1iZXJMaXN0O1xuICAgIH1cbn1cbiIsIjxtYXQtY2FyZCBjbGFzcz1cInNvY2lhbC1jYXJkXCI+XG4gICAgPGRpdlxuICAgICAgICBjbGFzcz1cInRlYW0tbWVtYmVyLWhlYWRlclwiXG4gICAgICAgIGZ4TGF5b3V0PVwicm93XCJcbiAgICAgICAgZnhMYXlvdXRBbGlnbj1cInNwYWNlLWJldHdlZW4gY2VudGVyXCJcbiAgICA+XG4gICAgICAgIDxtYXQtY2FyZC10aXRsZT5NZW1iZXJzPC9tYXQtY2FyZC10aXRsZT5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgbWF0LXJhaXNlZC1idXR0b25cbiAgICAgICAgICAgIGNsYXNzPVwiYWRkLW1lbWJlci1idG5cIlxuICAgICAgICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgICAgIChjbGljayk9XCJPcGVuQWRkTWVtYmVyTW9kYWwoKVwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiIUVudGVycHJpc2VcIlxuICAgICAgICA+XG4gICAgICAgICAgICBBZGQgTWVtYmVyXG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuXG4gICAgPG1hdC1jYXJkLWNvbnRlbnQ+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJUZWFtTWVtYmVyc1wiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgbWVtYmVyIG9mIFRlYW1NZW1iZXJzXCJcbiAgICAgICAgICAgIGZ4TGF5b3V0PVwicm93XCJcbiAgICAgICAgICAgIGZ4TGF5b3V0QWxpZ249XCJzdGFydCBjZW50ZXJcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJtZW1iZXItaWNvblwiPnBlcnNvbjwvbWF0LWljb24+XG4gICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1c2VybmFtZVwiPnt7IG1lbWJlciB9fTwvZGl2PlxuICAgICAgICAgICAgICAgIDwhLS0gPGRpdj5Pd25lcjwvZGl2PiAtLT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiAqbmdJZj1cIiFUZWFtTWVtYmVyc1wiIGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRBbGlnbj1cInN0YXJ0IGNlbnRlclwiPlxuICAgICAgICAgICAgPHNrZWxldG9uLWF2YXRhclxuICAgICAgICAgICAgICAgIFtzaG93SWNvbl09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICBbZWZmZWN0XT1cIlNrZWxldG9uRWZmZWN0XCJcbiAgICAgICAgICAgID48L3NrZWxldG9uLWF2YXRhcj5cbiAgICAgICAgICAgIDwhLS0gPG1hdC1pY29uIHNrZWxldG9uLXRleHQgY2xhc3M9XCJtZW1iZXItaWNvblwiIFtlZmZlY3RdPVwiU2tlbGV0b25FZmZlY3RcIj5wZXJzb248L21hdC1pY29uPiAtLT5cbiAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICBza2VsZXRvbi10ZXh0XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2tlbGV0b24tdGV4dFwiXG4gICAgICAgICAgICAgICAgICAgIFtlZmZlY3RdPVwiU2tlbGV0b25FZmZlY3RcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgVXNlck5hbWVcbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgIHNrZWxldG9uLXRleHRcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJza2VsZXRvbi10ZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgW2VmZmVjdF09XCJTa2VsZXRvbkVmZmVjdFwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICBPd25lclxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbWF0LWNhcmQtY29udGVudD5cbjwvbWF0LWNhcmQ+XG4iXX0=
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVhbS1tZW1iZXItY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb24vc3JjL2xpYi9lbGVtZW50cy90ZWFtLW1lbWJlci1jYXJkL3RlYW0tbWVtYmVyLWNhcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvZWxlbWVudHMvdGVhbS1tZW1iZXItY2FyZC90ZWFtLW1lbWJlci1jYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBR3pELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHVFQUF1RSxDQUFDOzs7Ozs7Ozs7QUFPckgsTUFBTSxPQUFPLHVCQUF1QjtJQWlCaEMsWUFBc0IsTUFBaUI7UUFBakIsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUNuQyxJQUFJLENBQUMsY0FBYyxHQUFHLE1BQU0sQ0FBQztJQUNqQyxDQUFDO0lBRU0sUUFBUSxLQUFVLENBQUM7SUFDbkIsV0FBVztRQUNkLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNmLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDM0MscUJBQXFCO1lBQ3JCLDZCQUE2QjtZQUM3QiwrREFBK0Q7WUFDL0QsNENBQTRDO1NBQy9DO0lBQ0wsQ0FBQztJQUVNLGtCQUFrQjtRQUNyQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyw0QkFBNEIsRUFBRTtZQUM3RCxLQUFLLEVBQUUsT0FBTztZQUNkLElBQUksRUFBRTtnQkFDRixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7Z0JBQzNCLGFBQWEsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztnQkFDckMsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO2FBQzFCO1NBQ0osQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVTLGdCQUFnQjtRQUN0QixJQUFJLFVBQVUsR0FBa0IsSUFBSSxLQUFLLEVBQVUsQ0FBQztRQUNwRCxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDbEIsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDckM7UUFDRCxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQVksRUFBRSxFQUFFO1lBQ3pDLElBQUksQ0FBQyxRQUFRLENBQ1QsSUFBSSxDQUNQLENBQUMsWUFBWSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsT0FBTyxDQUM1RCxDQUFDLFFBQWdCLEVBQUUsRUFBRTtnQkFDakIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEVBQUU7b0JBQ2hDLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7b0JBQzFCLG1DQUFtQztpQkFDdEM7WUFDTCxDQUFDLENBQ0osQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDO1FBQ0gsMkNBQTJDO1FBQzNDLE9BQU8sVUFBVSxDQUFDO0lBQ3RCLENBQUM7O29IQTlEUSx1QkFBdUI7d0dBQXZCLHVCQUF1QixnUkNWcEMsZ3lEQXdEQTsyRkQ5Q2EsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNJLHNCQUFzQjtnR0FNekIsVUFBVTtzQkFEaEIsS0FBSzt1QkFBQyxZQUFZO2dCQU1aLFdBQVc7c0JBRGpCLEtBQUs7dUJBQUMsY0FBYztnQkFJZCxjQUFjO3NCQURwQixLQUFLO3VCQUFDLGlCQUFpQjtnQkFJakIsUUFBUTtzQkFEZCxLQUFLO3VCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBFYUNQcm9qZWN0QXNDb2RlLCBFbnRlcnByaXNlQXNDb2RlIH0gZnJvbSAnQHNlbWFudGljanMvY29tbW9uJztcbmltcG9ydCB7IEFkZFRlYW1NZW1iZXJEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi8uLi9kaWFsb2dzL2FkZC10ZWFtLW1lbWJlci1kaWFsb2cvYWRkLXRlYW0tbWVtYmVyLWRpYWxvZy5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2xjdS10ZWFtLW1lbWJlci1jYXJkJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdGVhbS1tZW1iZXItY2FyZC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdGVhbS1tZW1iZXItY2FyZC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBUZWFtTWVtYmVyQ2FyZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQElucHV0KCdlbnRlcnByaXNlJylcbiAgICBwdWJsaWMgRW50ZXJwcmlzZTogRW50ZXJwcmlzZUFzQ29kZTtcblxuICAgIHB1YmxpYyBUZWFtTWVtYmVyczogQXJyYXk8YW55PjtcblxuICAgIEBJbnB1dCgnY3VycmVudC11c2VyJylcbiAgICBwdWJsaWMgQ3VycmVudFVzZXI6IHN0cmluZztcblxuICAgIEBJbnB1dCgncHJvamVjdC1sb29rdXBzJylcbiAgICBwdWJsaWMgUHJvamVjdExvb2t1cHM6IEFycmF5PHN0cmluZz47XG5cbiAgICBASW5wdXQoJ3Byb2plY3RzJylcbiAgICBwdWJsaWMgUHJvamVjdHM6IGFueTtcblxuICAgIHB1YmxpYyBTa2VsZXRvbkVmZmVjdDogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIGRpYWxvZzogTWF0RGlhbG9nKSB7XG4gICAgICAgIHRoaXMuU2tlbGV0b25FZmZlY3QgPSAnd2F2ZSc7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge31cbiAgICBwdWJsaWMgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLlByb2plY3RzKSB7XG4gICAgICAgICAgICB0aGlzLlRlYW1NZW1iZXJzID0gdGhpcy5CdWlsZFRlYW1NZW1iZXJzKCk7XG4gICAgICAgICAgICAvLyAgICAgdGhpcy5Qcm9qZWN0c1tcbiAgICAgICAgICAgIC8vICAgICAgICAgdGhpcy5Qcm9qZWN0TG9va3VwXG4gICAgICAgICAgICAvLyAgICAgXS5SZWx5aW5nUGFydHk/LkFjY2Vzc0NvbmZpZ3VyYXRpb25zPy5mYXRoeW0/LlVzZXJuYW1lcztcbiAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKFwiUHJvamVjdHM6IFwiLCB0aGlzLlByb2plY3RzKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBPcGVuQWRkTWVtYmVyTW9kYWwoKSB7XG4gICAgICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oQWRkVGVhbU1lbWJlckRpYWxvZ0NvbXBvbmVudCwge1xuICAgICAgICAgICAgd2lkdGg6ICc2MDBweCcsXG4gICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgZW50ZXJwcmlzZTogdGhpcy5FbnRlcnByaXNlLFxuICAgICAgICAgICAgICAgIHByb2plY3RMb29rdXA6IHRoaXMuUHJvamVjdExvb2t1cHNbMF0sXG4gICAgICAgICAgICAgICAgcHJvamVjdHM6IHRoaXMuUHJvamVjdHMsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgQnVpbGRUZWFtTWVtYmVycygpOiBBcnJheTxzdHJpbmc+IHtcbiAgICAgICAgbGV0IG1lbWJlckxpc3Q6IEFycmF5PHN0cmluZz4gPSBuZXcgQXJyYXk8c3RyaW5nPigpO1xuICAgICAgICBpZiAodGhpcy5DdXJyZW50VXNlcikge1xuICAgICAgICAgICAgbWVtYmVyTGlzdC5wdXNoKHRoaXMuQ3VycmVudFVzZXIpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuUHJvamVjdExvb2t1cHMuZm9yRWFjaCgocHJvajogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICB0aGlzLlByb2plY3RzW1xuICAgICAgICAgICAgICAgIHByb2pcbiAgICAgICAgICAgIF0uUmVseWluZ1BhcnR5Py5BY2Nlc3NDb25maWd1cmF0aW9ucz8uZmF0aHltPy5Vc2VybmFtZXM/LmZvckVhY2goXG4gICAgICAgICAgICAgICAgKHVzZXJuYW1lOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFtZW1iZXJMaXN0LmluY2x1ZGVzKHVzZXJuYW1lKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWVtYmVyTGlzdC5wdXNoKHVzZXJuYW1lKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKFwiQWRkZWQ6IFwiLCB1c2VybmFtZSlcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuICAgICAgICAvLyBjb25zb2xlLmxvZyhcIk1lbWJlckxpc3Q6IFwiLCBtZW1iZXJMaXN0KTtcbiAgICAgICAgcmV0dXJuIG1lbWJlckxpc3Q7XG4gICAgfVxufVxuIiwiPG1hdC1jYXJkIGNsYXNzPVwic29jaWFsLWNhcmRcIj5cbiAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwidGVhbS1tZW1iZXItaGVhZGVyXCJcbiAgICAgICAgZnhMYXlvdXQ9XCJyb3dcIlxuICAgICAgICBmeExheW91dEFsaWduPVwic3BhY2UtYmV0d2VlbiBjZW50ZXJcIlxuICAgID5cbiAgICAgICAgPG1hdC1jYXJkLXRpdGxlPk1lbWJlcnM8L21hdC1jYXJkLXRpdGxlPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICAgICAgY2xhc3M9XCJhZGQtbWVtYmVyLWJ0blwiXG4gICAgICAgICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgICAgICAgKGNsaWNrKT1cIk9wZW5BZGRNZW1iZXJNb2RhbCgpXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhRW50ZXJwcmlzZVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIEFkZCBNZW1iZXJcbiAgICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG5cbiAgICA8bWF0LWNhcmQtY29udGVudD5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIlRlYW1NZW1iZXJzXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBtZW1iZXIgb2YgVGVhbU1lbWJlcnNcIlxuICAgICAgICAgICAgZnhMYXlvdXQ9XCJyb3dcIlxuICAgICAgICAgICAgZnhMYXlvdXRBbGlnbj1cInN0YXJ0IGNlbnRlclwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cIm1lbWJlci1pY29uXCI+cGVyc29uPC9tYXQtaWNvbj5cbiAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInVzZXJuYW1lXCI+e3sgbWVtYmVyIH19PC9kaXY+XG4gICAgICAgICAgICAgICAgPCEtLSA8ZGl2Pk93bmVyPC9kaXY+IC0tPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2ICpuZ0lmPVwiIVRlYW1NZW1iZXJzXCIgZnhMYXlvdXQ9XCJyb3dcIiBmeExheW91dEFsaWduPVwic3RhcnQgY2VudGVyXCI+XG4gICAgICAgICAgICA8c2tlbGV0b24tYXZhdGFyXG4gICAgICAgICAgICAgICAgW3Nob3dJY29uXT1cInRydWVcIlxuICAgICAgICAgICAgICAgIFtlZmZlY3RdPVwiU2tlbGV0b25FZmZlY3RcIlxuICAgICAgICAgICAgPjwvc2tlbGV0b24tYXZhdGFyPlxuICAgICAgICAgICAgPCEtLSA8bWF0LWljb24gc2tlbGV0b24tdGV4dCBjbGFzcz1cIm1lbWJlci1pY29uXCIgW2VmZmVjdF09XCJTa2VsZXRvbkVmZmVjdFwiPnBlcnNvbjwvbWF0LWljb24+IC0tPlxuICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgIHNrZWxldG9uLXRleHRcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJza2VsZXRvbi10ZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgW2VmZmVjdF09XCJTa2VsZXRvbkVmZmVjdFwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICBVc2VyTmFtZVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgc2tlbGV0b24tdGV4dFxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInNrZWxldG9uLXRleHRcIlxuICAgICAgICAgICAgICAgICAgICBbZWZmZWN0XT1cIlNrZWxldG9uRWZmZWN0XCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIE93bmVyXG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9tYXQtY2FyZC1jb250ZW50PlxuPC9tYXQtY2FyZD5cbiJdfQ==