@colijnit/sharedcomponents 260.1.4 → 260.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -34,6 +34,7 @@ export class FormBuilderUserFormComponent {
34
34
  this.saveForm = new EventEmitter();
35
35
  this.definitiveChange = new EventEmitter();
36
36
  this.createNewFormResponse = new EventEmitter();
37
+ this.errorMessage = new EventEmitter();
37
38
  this.cloneForm = NULL_FORM_FULL_OBJECT;
38
39
  }
39
40
  set form(form) {
@@ -73,13 +74,20 @@ export class FormBuilderUserFormComponent {
73
74
  this.saveForm.next(this.formResponse);
74
75
  }
75
76
  handleCancelForm() {
76
- // if (this.userForm && this.userForm.responseId) {
77
- // this._formRepo.unlockFormResponse(this.userForm.responseId);
78
- // }
79
- this.cloneForm = undefined;
80
- this.userForm = undefined;
81
- this.formResponse = undefined;
82
- this.cancelForm.next();
77
+ return __awaiter(this, void 0, void 0, function* () {
78
+ if (this.userForm && this.userForm.responseId) {
79
+ try {
80
+ yield this._sharedConnectorService.unlockFormResponse(this.userForm.responseId);
81
+ }
82
+ catch (e) {
83
+ this.errorMessage.emit(e);
84
+ }
85
+ }
86
+ this.cloneForm = undefined;
87
+ this.userForm = undefined;
88
+ this.formResponse = undefined;
89
+ this.cancelForm.next();
90
+ });
83
91
  }
84
92
  changeMultipleOption(id, formResponse, add) {
85
93
  const responseList = formResponse.response ? formResponse.response.split(',') : [];
@@ -124,8 +132,13 @@ export class FormBuilderUserFormComponent {
124
132
  }
125
133
  else {
126
134
  this.mode = UserFormMode.Edit;
127
- // const isLockedSuccesfully: boolean = await this._formRepo.lockFormResponse(formResponseId);
128
135
  this._prepareExistingForm();
136
+ try {
137
+ yield this._sharedConnectorService.lockFormResponse(this.userForm.responseId);
138
+ }
139
+ catch (e) {
140
+ this.errorMessage.emit(e);
141
+ }
129
142
  }
130
143
  this._loadDocs();
131
144
  if (this.enableQuestions) {
@@ -184,7 +197,7 @@ export class FormBuilderUserFormComponent {
184
197
  this.handleCancelForm();
185
198
  }
186
199
  else {
187
- this._promptService.showError('ERROR_INSERT_FORM_RESPONSE', 'ERROR_INSERT_FORM_RESPONSE_TITLE');
200
+ this.errorMessage.emit("ERROR_INSERT_FORM_RESPONSE");
188
201
  }
189
202
  });
190
203
  this.createNewFormResponse.next(this.formResponse);
@@ -196,7 +209,7 @@ export class FormBuilderUserFormComponent {
196
209
  this.handleCancelForm();
197
210
  }
198
211
  else {
199
- this._promptService.showError('ERROR_SAVING_FORM_RESPONSE', 'ERROR_SAVING_FORM_RESPONSE_TITLE');
212
+ this.errorMessage.emit("ERROR_SAVING_FORM_RESPONSE");
200
213
  }
201
214
  });
202
215
  break;
@@ -210,7 +223,7 @@ FormBuilderUserFormComponent.decorators = [
210
223
  { type: Component, args: [{
211
224
  selector: 'co-form-builder-user-form',
212
225
  template: `
213
- <co-dialog [headerTemplate]="headerTemplate" [footerTemplate]="footerTemplate" (closeClick)="handleCancelForm()" >
226
+ <co-dialog [headerTemplate]="headerTemplate" [footerTemplate]="footerTemplate" (closeClick)="handleCancelForm()">
214
227
  <div class="main-content-wrapper">
215
228
  <div class="section-wrapper mini-scrollbar" #sectionWrapper>
216
229
  <co-form #coForm (validSubmit)="onValid()" [keepInView]="sectionWrapper">
@@ -352,9 +365,10 @@ FormBuilderUserFormComponent.propDecorators = {
352
365
  saveForm: [{ type: Output }],
353
366
  definitiveChange: [{ type: Output }],
354
367
  createNewFormResponse: [{ type: Output }],
368
+ errorMessage: [{ type: Output }],
355
369
  showClass: [{ type: HostBinding, args: ['class.co-form-builder-user-form',] }]
356
370
  };
357
371
  __decorate([
358
372
  InputBoolean()
359
373
  ], FormBuilderUserFormComponent.prototype, "readonly", void 0);
360
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1idWlsZGVyLXVzZXItZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9mb3JtLWJ1aWxkZXIvZm9ybS1idWlsZGVyLXVzZXItZm9ybS9mb3JtLWJ1aWxkZXItdXNlci1mb3JtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzlJLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGlEQUFpRCxDQUFDO0FBQ2pGLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSw4Q0FBOEMsQ0FBQztBQUN2RSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDM0QsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQzVFLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQUV4RSxPQUFPLEVBQUMscUJBQXFCLEVBQTRCLE1BQU0sdUNBQXVDLENBQUM7QUFJdkcsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3RELE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLCtEQUErRCxDQUFDO0FBQ3BHLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDckUsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQy9ELE9BQU8s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Z0JBQ0gsTUFBSztTQUNSO0lBQ0gsQ0FBQztJQUVNLHFCQUFxQjtRQUMxQixJQUFJLENBQUMsb0JBQW9CLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDOUMsQ0FBQzs7O1lBaFhGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsMkJBQTJCO2dCQUNyQyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FzSFQ7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7OztZQS9JTyxpQkFBaUI7WUFZakIscUJBQXFCO1lBWnJCLGlCQUFpQjtZQWlCakIsc0JBQXNCO1lBRXRCLGFBQWE7WUFKYixnQkFBZ0I7OzttQ0E0SXJCLFNBQVMsU0FBQyxzQkFBc0I7d0JBR2hDLEtBQUs7bUJBR0wsS0FBSzt1QkFXTCxLQUFLO29CQUdMLEtBQUs7a0JBR0wsS0FBSzt1QkFHTCxLQUFLOzhCQUlMLEtBQUs7eUJBR0wsTUFBTTt1QkFHTixNQUFNOytCQUdOLE1BQU07b0NBR04sTUFBTTt3QkFVTixXQUFXLFNBQUMsaUNBQWlDOztBQXhCOUM7SUFEQyxZQUFZLEVBQUU7OERBQ2tCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT25EZXN0cm95LCBPdXRwdXQsIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0Zvcm1RdWVzdGlvblR5cGV9IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL2VudW0vZm9ybS1xdWVzdGlvbi50eXBlJztcclxuaW1wb3J0IHtUYWJsZU5hbWV9IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL2VudW0vdGFibGUtbmFtZS5lbnVtJztcclxuaW1wb3J0IHtGb3JtfSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9mb3JtLmJvJztcclxuaW1wb3J0IHtGb3JtUmVzcG9uc2V9IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL2Zvcm0tcmVzcG9uc2UuYm8nO1xyXG5pbXBvcnQge0lucHV0Qm9vbGVhbn0gZnJvbSAnLi4vLi4vLi4vZGVjb3JhdG9yL2lucHV0LWJvb2xlYW4uZGVjb3JhdG9yJztcclxuaW1wb3J0IHtGb3JtUXVlc3Rpb259IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL2Zvcm0tcXVlc3Rpb24uYm8nO1xyXG5pbXBvcnQge05VTExfRk9STV9GVUxMX09CSkVDVCwgTlVMTF9GT1JNX1JFU1BPTlNFX09CSkVDVH0gZnJvbSAnLi4vLi4vLi4vbW9kZWwvdXRpbC9mb3Jtcy1udWxsLW9iamVjdCc7XHJcbmltcG9ydCB7Rm9ybVF1ZXN0aW9uQW5zd2VyfSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9mb3JtLXF1ZXN0aW9uLWFuc3dlci5ibyc7XHJcbmltcG9ydCB7Rm9ybVF1ZXN0aW9uUmVzcG9uc2V9IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL2Zvcm0tcXVlc3Rpb24tcmVzcG9uc2UuYm8nO1xyXG5pbXBvcnQge0NvRG9jdW1lbnR9IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL2NvLWRvY3VtZW50LmJvJztcclxuaW1wb3J0IHtBcnJheVV0aWxzfSBmcm9tICcuLi8uLi8uLi91dGlscy9hcnJheS11dGlscyc7XHJcbmltcG9ydCB7QnVzaW5lc3NPYmplY3RGYWN0b3J5fSBmcm9tICdAY29saWpuaXQvaW9uZWNvbm5lY3Rvci9idWlsZC9zZXJ2aWNlL2J1c2luZXNzLW9iamVjdC1mYWN0b3J5JztcclxuaW1wb3J0IHtGb3JtVXRpbHN9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2Zvcm0tdXRpbHMnO1xyXG5pbXBvcnQge0ljb259IGZyb20gJy4uLy4uLy4uL2VudW0vaWNvbi5lbnVtJztcclxuaW1wb3J0IHtJY29uQ2FjaGVTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL2ljb24tY2FjaGUuc2VydmljZSc7XHJcbmltcG9ydCB7VXNlckZvcm1Nb2RlfSBmcm9tICcuLi8uLi8uLi9lbnVtL3VzZXItZm9ybS1tb2RlLmVudW0nO1xyXG5pbXBvcnQge1NoYXJlZENvbm5lY3RvclNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2Uvc2hhcmVkLWNvbm5lY3Rvci5zZXJ2aWNlJztcclxuaW1wb3J0IHtGaWxlc1VwbG9hZENvbXBvbmVudH0gZnJvbSAnLi4vLi4vZmlsZXMtdXBsb2FkL2ZpbGVzLXVwbG9hZC5jb21wb25lbnQnO1xyXG5pbXBvcnQge1Byb21wdFNlcnZpY2V9IGZyb20gJ0Bjb2xpam5pdC9jb3JlY29tcG9uZW50c192MTInO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjby1mb3JtLWJ1aWxkZXItdXNlci1mb3JtJyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgICA8Y28tZGlhbG9nIFtoZWFkZXJUZW1wbGF0ZV09XCJoZWFkZXJUZW1wbGF0ZVwiIFtmb290ZXJUZW1wbGF0ZV09XCJmb290ZXJUZW1wbGF0ZVwiIChjbG9zZUNsaWNrKT1cImhhbmRsZUNhbmNlbEZvcm0oKVwiID5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYWluLWNvbnRlbnQtd3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWN0aW9uLXdyYXBwZXIgbWluaS1zY3JvbGxiYXJcIiAjc2VjdGlvbldyYXBwZXI+XHJcbiAgICAgICAgICAgICAgICAgIDxjby1mb3JtICNjb0Zvcm0gKHZhbGlkU3VibWl0KT1cIm9uVmFsaWQoKVwiIFtrZWVwSW5WaWV3XT1cInNlY3Rpb25XcmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBxdWVzdGlvbiBvZiBjbG9uZUZvcm0ucXVlc3Rpb25zOyBsZXQgaW5kZXggPSBpbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgW2NsYXNzLmFjdGl2ZV09XCJmb3JtLnF1ZXN0aW9ucy5pbmRleE9mKHF1ZXN0aW9uKSA9PT0gZm9ybS5xdWVzdGlvbnMuaW5kZXhPZihhY3RpdmVRdWVzdGlvbilcIiBjbGFzcz1cImhlYWRlcnMtcm93XCIgZnhMYXlvdXQ9XCJjb2x1bW5cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cInF1ZXN0aW9uLmRpc2FibGVkICYmIGluZGV4ICE9PSAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChrZXlkb3duKT1cImVuYWJsZWROZXh0UXVlc3Rpb24ocXVlc3Rpb24pXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmb3JtLXJ1YnJpYy1oZWFkZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0ZXh0Q29udGVudF09XCJxdWVzdGlvbi5zZXF1ZW5jZSsgJy4gJyArIChxdWVzdGlvbi5xdWVzdGlvbilcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhbnN3ZXItd3JhcHBlclwiIFtuZ1N3aXRjaF09XCJxdWVzdGlvbi5xdWVzdGlvblR5cGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjby1pbnB1dC10ZXh0ICpuZ1N3aXRjaENhc2U9XCJmb3JtUXVlc3Rpb25UeXBlLlNob3J0QW5zd2VyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cInF1ZXN0aW9uLnJlc3BvbnNlUXVlc3Rpb24ucmVzcG9uc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cInF1ZXN0aW9uLm1hbmRhdG9yeVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInF1ZXN0aW9uLmRpc2FibGVkICYmIGluZGV4ICE9PSAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y28taW5wdXQtdGV4dGFyZWEgKm5nU3dpdGNoQ2FzZT1cImZvcm1RdWVzdGlvblR5cGUuTG9uZ0Fuc3dlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwicXVlc3Rpb24ucmVzcG9uc2VRdWVzdGlvbi5yZXNwb25zZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cInF1ZXN0aW9uLm1hbmRhdG9yeVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwicXVlc3Rpb24uZGlzYWJsZWQgJiYgaW5kZXggIT09IDBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvY28taW5wdXQtdGV4dGFyZWE+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCJmb3JtUXVlc3Rpb25UeXBlLk11bHRpcGxlQ2hvaWNlU2luZ2xlT3B0aW9uXCJcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvLWZvcm0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjby1pbnB1dC1yYWRpby1idXR0b24gKm5nRm9yPVwibGV0IGFuc3dlciBvZiBxdWVzdGlvbi5mb3JtUXVlc3Rpb25BbnN3ZXJzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiYW5zd2VyLmFuc3dlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVsXT1cImFuc3dlci5hbnN3ZXJJZCA9PSBxdWVzdGlvbi5yZXNwb25zZVF1ZXN0aW9uLnJlc3BvbnNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwicXVlc3Rpb24uZGlzYWJsZWQgJiYgaW5kZXggIT09IDBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJxdWVzdGlvbi5yZXNwb25zZVF1ZXN0aW9uLnJlc3BvbnNlID0gYW5zd2VyLmFuc3dlcklkICsgJyc7IGVuYWJsZWROZXh0UXVlc3Rpb24ocXVlc3Rpb24sIGFuc3dlcilcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9jby1pbnB1dC1yYWRpby1idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jby1mb3JtPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCJmb3JtUXVlc3Rpb25UeXBlLk11bHRpcGxlQ2hvaWNlTXVsdGlwbGVPcHRpb25zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvLWlucHV0LWNoZWNrYm94ICpuZ0Zvcj1cImxldCBhbnN3ZXIgb2YgcXVlc3Rpb24uZm9ybVF1ZXN0aW9uQW5zd2Vyc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJhbnN3ZXIuYW5zd2VyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVsXT1cInF1ZXN0aW9uLnJlc3BvbnNlUXVlc3Rpb24ucmVzcG9uc2UgPyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcXVlc3Rpb24ucmVzcG9uc2VRdWVzdGlvbi5yZXNwb25zZS5pbmRleE9mKGFuc3dlci5hbnN3ZXJJZCkgPiAtMSA6IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBxdWVzdGlvbi5yZXNwb25zZVF1ZXN0aW9uLnJlc3BvbnNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInF1ZXN0aW9uLmRpc2FibGVkICYmIGluZGV4ICE9PSAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cImNoYW5nZU11bHRpcGxlT3B0aW9uKGFuc3dlci5hbnN3ZXJJZCwgcXVlc3Rpb24ucmVzcG9uc2VRdWVzdGlvbiwgJGV2ZW50KTsgZW5hYmxlZE5leHRRdWVzdGlvbihxdWVzdGlvbiwgYW5zd2VyKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvY28taW5wdXQtY2hlY2tib3g+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjby1saXN0LW9mLXZhbHVlcyAqbmdTd2l0Y2hDYXNlPVwiZm9ybVF1ZXN0aW9uVHlwZS5Ecm9wRG93bkxpc3RcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttb2RlbF09XCJxdWVzdGlvbi5yZXNwb25zZVF1ZXN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJxdWVzdGlvbi5mb3JtUXVlc3Rpb25BbnN3ZXJzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzcGxheUZpZWxkXT1cIidhbnN3ZXInXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwicXVlc3Rpb24ubWFuZGF0b3J5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJxdWVzdGlvbi5kaXNhYmxlZCAmJiBpbmRleCAhPT0gMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cImNoYW5nZUxvdk9wdGlvbihxdWVzdGlvbi5yZXNwb25zZVF1ZXN0aW9uLCAkZXZlbnQpOyBlbmFibGVkTmV4dFF1ZXN0aW9uKHF1ZXN0aW9uLCAkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2NvLWxpc3Qtb2YtdmFsdWVzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvLXVzZXItZm9ybS1pbnB1dC1zY2FsZSAqbmdTd2l0Y2hDYXNlPVwiZm9ybVF1ZXN0aW9uVHlwZS5MaW5lYXJTY2FsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJxdWVzdGlvbi5xdWVzdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpZEZpZWxkXT1cIidhbnN3ZXJJZCdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2VsZWN0ZWRdPVwicXVlc3Rpb24ucmVzcG9uc2VRdWVzdGlvbi5yZXNwb25zZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzY2FsZU1vZGVsXT1cInF1ZXN0aW9uLmZvcm1RdWVzdGlvbkFuc3dlcnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGVzY3JpcHRpb25GaWVsZF09XCInYW5zd2VyJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJxdWVzdGlvbi5tYW5kYXRvcnlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwicXVlc3Rpb24uZGlzYWJsZWQgJiYgaW5kZXggIT09IDBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2VsZWN0aW9uQ2hhbmdlKT1cInF1ZXN0aW9uLnJlc3BvbnNlUXVlc3Rpb24ucmVzcG9uc2UgPSAkZXZlbnQuYW5zd2VySWQgKyAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9jby11c2VyLWZvcm0taW5wdXQtc2NhbGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y28taW5wdXQtZGF0ZSAqbmdTd2l0Y2hDYXNlPVwiZm9ybVF1ZXN0aW9uVHlwZS5EYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cInF1ZXN0aW9uLnJlc3BvbnNlUXVlc3Rpb24uZGF0ZVJlc3BvbnNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJxdWVzdGlvbi5tYW5kYXRvcnlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJxdWVzdGlvbi5kaXNhYmxlZCAmJiBpbmRleCAhPT0gMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9jby1pbnB1dC1kYXRlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvLWlucHV0LXRpbWUgKm5nU3dpdGNoQ2FzZT1cImZvcm1RdWVzdGlvblR5cGUuVGltZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbW9kZWxdPVwicXVlc3Rpb24ucmVzcG9uc2VRdWVzdGlvbj8udGltZVJlc3BvbnNlID8/IDFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cImNoYW5nZVRpbWUocXVlc3Rpb24ucmVzcG9uc2VRdWVzdGlvbiwgJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwicXVlc3Rpb24ubWFuZGF0b3J5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwicXVlc3Rpb24uZGlzYWJsZWQgJiYgaW5kZXggIT09IDBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvY28taW5wdXQtdGltZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImdvdG8tcXVlc3Rpb25cIiAqbmdJZj1cInF1ZXN0aW9uID09PSBhY3RpdmVRdWVzdGlvbiAmJiBnb3RvUXVlc3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RleHRDb250ZW50XT1cIignR09UT19ORVhUX1FVRVNUSU9OJyB8IHNoYXJlZExvY2FsaXplKSArICcgJyArIGdvdG9RdWVzdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgIDwvY28tZm9ybT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VjdGlvbi13cmFwcGVyIG1pbmktc2Nyb2xsYmFyXCIgI3NlY3Rpb25XcmFwcGVyPlxyXG4gICAgICAgICAgICAgICAgICA8Y28taW5wdXQtY2hlY2tib3ggW21vZGVsXT1cImZvcm1SZXNwb25zZT8uaXNGaW5hbFwiIChtb2RlbENoYW5nZSk9XCJoYW5kbGVEZWZpbml0aXZlQ2hhbmdlKCRldmVudClcIiBbbGFiZWxdPVwiJ0RFRklOSVRJVkUnIHwgc2hhcmVkTG9jYWxpemVcIj48L2NvLWlucHV0LWNoZWNrYm94PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuXHJcbiAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwvY28tZGlhbG9nPlxyXG4gICAgICA8bmctdGVtcGxhdGUgI2hlYWRlclRlbXBsYXRlPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlci13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmb3JtLXRpdGxlXCIgW3RleHRDb250ZW50XT1cImZvcm0/LmZvcm1OYW1lXCI+PC9zcGFuPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDxuZy10ZW1wbGF0ZSAjZm9vdGVyVGVtcGxhdGU+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9vdGVyLXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXR0YWNobWVudHMtd3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8Y28taWNvbiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLlBhcGVyY2xpcFJlZ3VsYXIpXCIgKGNsaWNrKT1cImhhbmRsZU9wZW5GaWxlc1VwbG9hZCgpXCI+PC9jby1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJmaWxlXCIgYWNjZXB0PVwiaW1hZ2UvKlwiIGNhcHR1cmU9XCJlbnZpcm9ubWVudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGNvLWZpbGVzLXVwbG9hZCAjZmlsZXNVcGxvYWRDb21wb25lbnQgW2RvY3VtZW50c109XCJmb3JtUmVzcG9uc2UuZG9jdW1lbnRzXCIgY2xhc3M9XCJjby1maWxlcy11cGxvYWRcIj48L2NvLWZpbGVzLXVwbG9hZD5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICA8Y28tYnV0dG9uIGNsYXNzPVwic2F2ZS1idXR0b25cIiAoY2xpY2spPVwiY29tbWl0VXNlckZvcm0oKVwiIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuQ2hlY2tEdW90b25lKVwiPjwvY28tYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICA8Y28tYnV0dG9uIGNsYXNzPVwiY2xvc2UtYnV0dG9uXCIgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5Dcm9zc1NraW5ueSlcIiAoY2xpY2spPVwiaGFuZGxlQ2FuY2VsRm9ybSgpXCI+PC9jby1idXR0b24+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRm9ybUJ1aWxkZXJVc2VyRm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XHJcblxyXG4gIHB1YmxpYyByZWFkb25seSBmb3JtUXVlc3Rpb25UeXBlOiB0eXBlb2YgRm9ybVF1ZXN0aW9uVHlwZSA9IEZvcm1RdWVzdGlvblR5cGU7XHJcbiAgcHVibGljIHJlYWRvbmx5IFRhYmxlTmFtZTogdHlwZW9mIFRhYmxlTmFtZSA9IFRhYmxlTmFtZTtcclxuICBwdWJsaWMgcmVhZG9ubHkgaWNvbnM6IHR5cGVvZiBJY29uID0gSWNvbjtcclxuXHJcbiAgcHVibGljIG1vZGU6IFVzZXJGb3JtTW9kZSA9IFVzZXJGb3JtTW9kZS5DcmVhdGU7XHJcbiAgcHVibGljIGRvY3VtZW50czogQ29Eb2N1bWVudFtdID0gW107XHJcblxyXG4gIHByaXZhdGUgX2Zvcm06IEZvcm07XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2ZpbGVzVXBsb2FkQ29tcG9uZW50JylcclxuICBwdWJsaWMgZmlsZXNVcGxvYWRDb21wb25lbnQ6IEZpbGVzVXBsb2FkQ29tcG9uZW50O1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzaG93UG9wdXA6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IGZvcm0oZm9ybTogRm9ybSkge1xyXG4gICAgdGhpcy5fZm9ybSA9IGZvcm07XHJcbiAgICB0aGlzLl9wcmVwYXJlTmV3Rm9ybSgpO1xyXG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBmb3JtKCk6IEZvcm0ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2Zvcm07XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyB1c2VyRm9ybTogRm9ybVJlc3BvbnNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyB0YWJsZTogVGFibGVOYW1lO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBrZXk6IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICBASW5wdXRCb29sZWFuKClcclxuICBwdWJsaWMgcmVhZG9ubHk6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZW5hYmxlUXVlc3Rpb25zOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHJlYWRvbmx5IGNhbmNlbEZvcm06IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHJlYWRvbmx5IHNhdmVGb3JtOiBFdmVudEVtaXR0ZXI8Rm9ybVJlc3BvbnNlPiA9IG5ldyBFdmVudEVtaXR0ZXI8Rm9ybVJlc3BvbnNlPigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgcmVhZG9ubHkgZGVmaW5pdGl2ZUNoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgcmVhZG9ubHkgY3JlYXRlTmV3Rm9ybVJlc3BvbnNlOiBFdmVudEVtaXR0ZXI8Rm9ybVJlc3BvbnNlPiA9IG5ldyBFdmVudEVtaXR0ZXI8Rm9ybVJlc3BvbnNlPigpO1xyXG5cclxuXHJcbiAgcHVibGljIGNsb25lRm9ybTogRm9ybSA9IE5VTExfRk9STV9GVUxMX09CSkVDVDtcclxuICBwdWJsaWMgZm9ybVJlc3BvbnNlOiBGb3JtUmVzcG9uc2U7XHJcblxyXG4gIHB1YmxpYyBhY3RpdmVRdWVzdGlvbjogRm9ybVF1ZXN0aW9uO1xyXG4gIHB1YmxpYyBnb3RvUXVlc3Rpb246IG51bWJlcjtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jby1mb3JtLWJ1aWxkZXItdXNlci1mb3JtJylcclxuICBwdWJsaWMgc2hvd0NsYXNzKCkge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgX2RldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByaXZhdGUgX2JvRmFjdG9yeTogQnVzaW5lc3NPYmplY3RGYWN0b3J5LFxyXG4gICAgcHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSBfc2hhcmVkQ29ubmVjdG9yU2VydmljZTogU2hhcmVkQ29ubmVjdG9yU2VydmljZSxcclxuICAgIHByaXZhdGUgX3Byb21wdFNlcnZpY2U6IFByb21wdFNlcnZpY2UsXHJcbiAgICBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZVxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLl9kZXRlY3RvclJlZiA9IHVuZGVmaW5lZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBlbmFibGVkTmV4dFF1ZXN0aW9uKHF1ZXN0aW9uOiBGb3JtUXVlc3Rpb24sIGFuc3dlcj86IEZvcm1RdWVzdGlvbkFuc3dlciB8IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5hY3RpdmVRdWVzdGlvbiA9IHF1ZXN0aW9uO1xyXG4gICAgaWYgKHR5cGVvZiBhbnN3ZXIgPT09ICdudW1iZXInKSB7XHJcbiAgICAgIGFuc3dlciA9IHF1ZXN0aW9uLmZvcm1RdWVzdGlvbkFuc3dlcnMuZmluZChhID0+IGEuYW5zd2VySWQgPT09IGFuc3dlcik7XHJcbiAgICB9XHJcbiAgICBjb25zdCBnb3RvUXVlc3Rpb246IG51bWJlciA9IGFuc3dlciA/IGFuc3dlci5nb3RvUXVlc3Rpb25JZCA6IHF1ZXN0aW9uLmdvdG9RdWVzdGlvbklkO1xyXG4gICAgY29uc3QgY3VycmVudEluZGV4OiBudW1iZXIgPSB0aGlzLmNsb25lRm9ybS5xdWVzdGlvbnMuZmluZEluZGV4KHEgPT4gcS5xdWVzdGlvbklkID09PSBxdWVzdGlvbi5xdWVzdGlvbklkKTtcclxuICAgIGxldCBuZXh0UXVlc3Rpb246IEZvcm1RdWVzdGlvbiA9IHRoaXMuY2xvbmVGb3JtLnF1ZXN0aW9uc1tjdXJyZW50SW5kZXggKyAxXTtcclxuICAgIGlmIChnb3RvUXVlc3Rpb24pIHtcclxuICAgICAgbmV4dFF1ZXN0aW9uID0gdGhpcy5jbG9uZUZvcm0ucXVlc3Rpb25zLmZpbmQocSA9PiBxLnF1ZXN0aW9uSWQgPT09IGdvdG9RdWVzdGlvbik7XHJcbiAgICB9XHJcbiAgICBpZiAobmV4dFF1ZXN0aW9uKSB7XHJcbiAgICAgIG5leHRRdWVzdGlvbi5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgdGhpcy5nb3RvUXVlc3Rpb24gPSBuZXh0UXVlc3Rpb24uc2VxdWVuY2U7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmdvdG9RdWVzdGlvbiA9IHVuZGVmaW5lZDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBvblZhbGlkKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zYXZlRm9ybS5uZXh0KHRoaXMuZm9ybVJlc3BvbnNlKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVDYW5jZWxGb3JtKCk6IHZvaWQge1xyXG4gICAgLy8gaWYgKHRoaXMudXNlckZvcm0gJiYgdGhpcy51c2VyRm9ybS5yZXNwb25zZUlkKSB7XHJcbiAgICAvLyAgIHRoaXMuX2Zvcm1SZXBvLnVubG9ja0Zvcm1SZXNwb25zZSh0aGlzLnVzZXJGb3JtLnJlc3BvbnNlSWQpO1xyXG4gICAgLy8gfVxyXG4gICAgdGhpcy5jbG9uZUZvcm0gPSB1bmRlZmluZWQ7XHJcbiAgICB0aGlzLnVzZXJGb3JtID0gdW5kZWZpbmVkO1xyXG4gICAgdGhpcy5mb3JtUmVzcG9uc2UgPSB1bmRlZmluZWQ7XHJcbiAgICB0aGlzLmNhbmNlbEZvcm0ubmV4dCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNoYW5nZU11bHRpcGxlT3B0aW9uKGlkOiBzdHJpbmcsIGZvcm1SZXNwb25zZTogRm9ybVF1ZXN0aW9uUmVzcG9uc2UsIGFkZDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgY29uc3QgcmVzcG9uc2VMaXN0OiBzdHJpbmdbXSA9IGZvcm1SZXNwb25zZS5yZXNwb25zZSA/IGZvcm1SZXNwb25zZS5yZXNwb25zZS5zcGxpdCgnLCcpIDogW107XHJcbiAgICBpZiAoYWRkKSB7XHJcbiAgICAgIHJlc3BvbnNlTGlzdC5wdXNoKGlkKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJlc3BvbnNlTGlzdC5zcGxpY2UocmVzcG9uc2VMaXN0LmluZGV4T2YoaWQpLCAxKTtcclxuICAgIH1cclxuICAgIGZvcm1SZXNwb25zZS5yZXNwb25zZSA9IHJlc3BvbnNlTGlzdC50b1N0cmluZygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNoYW5nZUxvdk9wdGlvbihmb3JtUmVzcG9uc2U6IEZvcm1RdWVzdGlvblJlc3BvbnNlLCB2YWx1ZTogRm9ybVF1ZXN0aW9uQW5zd2VyKTogdm9pZCB7XHJcbiAgICBpZiAodmFsdWUgJiYgdmFsdWUucXVlc3Rpb25JZCAmJiB2YWx1ZS5xdWVzdGlvbklkICYmIHZhbHVlLmFuc3dlcikge1xyXG4gICAgICBmb3JtUmVzcG9uc2UucXVlc3Rpb25JZCA9IHZhbHVlLnF1ZXN0aW9uSWQ7XHJcbiAgICAgIGZvcm1SZXNwb25zZS5yZXNwb25zZSA9IHZhbHVlLmFuc3dlci50b1N0cmluZygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGNoYW5nZVRpbWUoZm9ybVJlc3BvbnNlOiBGb3JtUXVlc3Rpb25SZXNwb25zZSwgdGltZTogRGF0ZSk6IHZvaWQge1xyXG4gICAgZm9ybVJlc3BvbnNlLnRpbWVSZXNwb25zZSA9IHRpbWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlRG9jdW1lbnREZWxldGVkKGRvYzogQ29Eb2N1bWVudCk6IHZvaWQge1xyXG4gICAgQXJyYXlVdGlscy5SZW1vdmVFbGVtZW50KGRvYywgdGhpcy5mb3JtUmVzcG9uc2UuZG9jdW1lbnRzKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVEb2N1bWVudENoYW5nZWQoZG9jOiBDb0RvY3VtZW50KTogdm9pZCB7XHJcbiAgICB0aGlzLmZvcm1SZXNwb25zZS5kb2N1bWVudHMucHVzaChkb2MpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZURvY3VtZW50c0FkZGVkKGRvY3M6IENvRG9jdW1lbnRbXSk6IHZvaWQge1xyXG4gICAgZG9jcy5mb3JFYWNoKChkb2N1bWVudDogQ29Eb2N1bWVudCkgPT4ge1xyXG4gICAgICB0aGlzLmZvcm1SZXNwb25zZS5kb2N1bWVudHMucHVzaChkb2N1bWVudCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgX3ByZXBhcmVOZXdGb3JtKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy5jbG9uZUZvcm0gPSA8Rm9ybT50aGlzLl9ib0ZhY3RvcnkubWFrZVdpdGhSYXdCYWNrZW5kRGF0YShGb3JtLCB0aGlzLmZvcm0pO1xyXG4gICAgaWYgKCF0aGlzLnVzZXJGb3JtPy5yZXNwb25zZUlkKSB7XHJcbiAgICAgIHRoaXMuZm9ybVJlc3BvbnNlID0gPEZvcm1SZXNwb25zZT50aGlzLl9ib0ZhY3RvcnkubWFrZVdpdGhSYXdCYWNrZW5kRGF0YShGb3JtUmVzcG9uc2UsIHRoaXMudXNlckZvcm0pO1xyXG4gICAgICB0aGlzLmZvcm1SZXNwb25zZS5mb3JtSWQgPSB0aGlzLmZvcm0uZm9ybUlkO1xyXG4gICAgICB0aGlzLmZvcm1SZXNwb25zZS50YWJsZSA9IHRoaXMudGFibGU7XHJcbiAgICAgIHRoaXMuZm9ybVJlc3BvbnNlLmtleSA9IHRoaXMua2V5O1xyXG4gICAgICBGb3JtVXRpbHMuTWVyZ2VSZXNwb25zZVdpdGhGb3JtKHRoaXMuY2xvbmVGb3JtLCB0aGlzLmZvcm1SZXNwb25zZSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLm1vZGUgPSBVc2VyRm9ybU1vZGUuRWRpdDtcclxuICAgICAgLy8gY29uc3QgaXNMb2NrZWRTdWNjZXNmdWxseTogYm9vbGVhbiA9IGF3YWl0IHRoaXMuX2Zvcm1SZXBvLmxvY2tGb3JtUmVzcG9uc2UoZm9ybVJlc3BvbnNlSWQpO1xyXG4gICAgICB0aGlzLl9wcmVwYXJlRXhpc3RpbmdGb3JtKCk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHRoaXMuX2xvYWREb2NzKCk7XHJcbiAgICBpZiAodGhpcy5lbmFibGVRdWVzdGlvbnMpIHtcclxuICAgICAgdGhpcy5fZW5hYmxlUXVlc3Rpb25zKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9wcmVwYXJlRXhpc3RpbmdGb3JtKCk6IHZvaWQge1xyXG4gICAgdGhpcy5jbG9uZUZvcm0gPSA8Rm9ybT50aGlzLl9ib0ZhY3RvcnkubWFrZVdpdGhSYXdCYWNrZW5kRGF0YShGb3JtLCB0aGlzLmZvcm0pO1xyXG4gICAgdGhpcy5mb3JtUmVzcG9uc2UgPSA8Rm9ybVJlc3BvbnNlPnRoaXMuX2JvRmFjdG9yeS5tYWtlV2l0aFJhd0JhY2tlbmREYXRhKEZvcm1SZXNwb25zZSwgdGhpcy51c2VyRm9ybSk7XHJcbiAgICBGb3JtVXRpbHMuTWVyZ2VSZXNwb25zZVdpdGhGb3JtKHRoaXMuY2xvbmVGb3JtLCB0aGlzLmZvcm1SZXNwb25zZSk7XHJcblxyXG4gICAgaWYgKHRoaXMuZW5hYmxlUXVlc3Rpb25zKSB7XHJcbiAgICAgIHRoaXMuX2VuYWJsZVF1ZXN0aW9ucygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZW5hYmxlUXVlc3Rpb25zKCk6IHZvaWQge1xyXG4gICAgZm9yIChjb25zdCBjdXJyZW50SW5kZXggaW4gdGhpcy5jbG9uZUZvcm0ucXVlc3Rpb25zKSB7XHJcbiAgICAgIGlmICh0aGlzLmNsb25lRm9ybS5xdWVzdGlvbnNbY3VycmVudEluZGV4XSkge1xyXG4gICAgICAgIGNvbnN0IG5leHRRdWVzdGlvbjogRm9ybVF1ZXN0aW9uID0gdGhpcy5jbG9uZUZvcm0ucXVlc3Rpb25zW2N1cnJlbnRJbmRleF07XHJcbiAgICAgICAgaWYgKG5leHRRdWVzdGlvbikge1xyXG4gICAgICAgICAgbmV4dFF1ZXN0aW9uLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5nb3RvUXVlc3Rpb24gPSBuZXh0UXVlc3Rpb24uc2VxdWVuY2U7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuZ290b1F1ZXN0aW9uID0gdW5kZWZpbmVkO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfbG9hZERvY3MoKTogdm9pZCB7XHJcbiAgICBpZighdGhpcy5mb3JtUmVzcG9uc2UuZG9jdW1lbnRzKSB7XHJcbiAgICAgIHRoaXMuZm9ybVJlc3BvbnNlLmRvY3VtZW50cyA9IFtdO1xyXG4gICAgfVxyXG4gICAgdGhpcy5mb3JtUmVzcG9uc2UuZG9jdW1lbnRzLmZvckVhY2goKGRvYzogQ29Eb2N1bWVudCkgPT4ge1xyXG4gICAgICBpZiAoZG9jLmRvY3VtZW50SWQgJiYgIWRvYy5kb2N1bWVudEJvZHkpIHtcclxuICAgICAgICB0aGlzLl9zaGFyZWRDb25uZWN0b3JTZXJ2aWNlLmdldERvY3VtZW50Q29udGVudChkb2MuZG9jdW1lbnRJZCkudGhlbigoY29udGVudDogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgICBkb2MuZG9jdW1lbnRCb2R5ID0gY29udGVudDtcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlRGVmaW5pdGl2ZUNoYW5nZShkZWZpbml0aXZlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLmZvcm1SZXNwb25zZS5pc0ZpbmFsID0gZGVmaW5pdGl2ZTtcclxuICAgIHRoaXMuZGVmaW5pdGl2ZUNoYW5nZS5uZXh0KGRlZmluaXRpdmUpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNvbW1pdFVzZXJGb3JtKCkge1xyXG4gICAgRm9ybVV0aWxzLk1lcmdlUmVzcG9uc2VXaXRoRm9ybSh0aGlzLmNsb25lRm9ybSwgdGhpcy5mb3JtUmVzcG9uc2UpO1xyXG4gICAgdGhpcy5mb3JtUmVzcG9uc2UudGFibGUgPSB0aGlzLnRhYmxlO1xyXG4gICAgdGhpcy5mb3JtUmVzcG9uc2Uua2V5ID0gdGhpcy5rZXk7XHJcbiAgICBzd2l0Y2ggKHRoaXMubW9kZSkge1xyXG4gICAgICBjYXNlIFVzZXJGb3JtTW9kZS5DcmVhdGU6XHJcbiAgICAgICAgdGhpcy5fc2hhcmVkQ29ubmVjdG9yU2VydmljZS5pbnNlcnRGb3JtUmVzcG9uc2UodGhpcy5mb3JtUmVzcG9uc2UpLnRoZW4oKHJlc3BvbnNlOiBGb3JtUmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgIGlmKHJlc3BvbnNlICYmIHJlc3BvbnNlLnJlc3BvbnNlSWQpIHtcclxuICAgICAgICAgICAgdGhpcy5zYXZlRm9ybS5uZXh0KHJlc3BvbnNlKTtcclxuICAgICAgICAgICAgdGhpcy5oYW5kbGVDYW5jZWxGb3JtKCk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLl9wcm9tcHRTZXJ2aWNlLnNob3dFcnJvcignRVJST1JfSU5TRVJUX0ZPUk1fUkVTUE9OU0UnLCAnRVJST1JfSU5TRVJUX0ZPUk1fUkVTUE9OU0VfVElUTEUnKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICAgIHRoaXMuY3JlYXRlTmV3Rm9ybVJlc3BvbnNlLm5leHQodGhpcy5mb3JtUmVzcG9uc2UpO1xyXG4gICAgICAgIGJyZWFrXHJcbiAgICAgIGNhc2UgVXNlckZvcm1Nb2RlLkVkaXQ6XHJcbiAgICAgICAgdGhpcy5fc2hhcmVkQ29ubmVjdG9yU2VydmljZS51cGRhdGVGb3JtUmVzcG9uc2UodGhpcy5mb3JtUmVzcG9uc2UpLnRoZW4oKHJlc3BvbnNlOiBGb3JtUmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgIGlmKHJlc3BvbnNlICYmIHJlc3BvbnNlLnJlc3BvbnNlSWQpIHtcclxuICAgICAgICAgICAgdGhpcy5zYXZlRm9ybS5uZXh0KHJlc3BvbnNlKTtcclxuICAgICAgICAgICAgdGhpcy5oYW5kbGVDYW5jZWxGb3JtKCk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLl9wcm9tcHRTZXJ2aWNlLnNob3dFcnJvcignRVJST1JfU0FWSU5HX0ZPUk1fUkVTUE9OU0UnLCAnRVJST1JfU0FWSU5HX0ZPUk1fUkVTUE9OU0VfVElUTEUnKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgICBicmVha1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZU9wZW5GaWxlc1VwbG9hZCgpIHtcclxuICAgIHRoaXMuZmlsZXNVcGxvYWRDb21wb25lbnQub3BlbkZpbGVCcm93c2VyKCk7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
374
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1idWlsZGVyLXVzZXItZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9mb3JtLWJ1aWxkZXIvZm9ybS1idWlsZGVyLXVzZXItZm9ybS9mb3JtLWJ1aWxkZXItdXNlci1mb3JtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzlJLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGlEQUFpRCxDQUFDO0FBQ2pGLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSw4Q0FBOEMsQ0FBQztBQUN2RSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDM0QsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQzVFLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQUV4RSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUk1RSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDdEQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sK0RBQStELENBQUM7QUFDcEcsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3BELE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDL0QsT0FBTyxF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LE1BQU07K0JBR04sTUFBTTtvQ0FHTixNQUFNOzJCQUdOLE1BQU07d0JBU04sV0FBVyxTQUFDLGlDQUFpQzs7QUExQjlDO0lBREMsWUFBWSxFQUFFOzhEQUNrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE9uRGVzdHJveSwgT3V0cHV0LCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtGb3JtUXVlc3Rpb25UeXBlfSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9lbnVtL2Zvcm0tcXVlc3Rpb24udHlwZSc7XHJcbmltcG9ydCB7VGFibGVOYW1lfSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9lbnVtL3RhYmxlLW5hbWUuZW51bSc7XHJcbmltcG9ydCB7Rm9ybX0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvZm9ybS5ibyc7XHJcbmltcG9ydCB7Rm9ybVJlc3BvbnNlfSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9mb3JtLXJlc3BvbnNlLmJvJztcclxuaW1wb3J0IHtJbnB1dEJvb2xlYW59IGZyb20gJy4uLy4uLy4uL2RlY29yYXRvci9pbnB1dC1ib29sZWFuLmRlY29yYXRvcic7XHJcbmltcG9ydCB7Rm9ybVF1ZXN0aW9ufSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9mb3JtLXF1ZXN0aW9uLmJvJztcclxuaW1wb3J0IHtOVUxMX0ZPUk1fRlVMTF9PQkpFQ1R9IGZyb20gJy4uLy4uLy4uL21vZGVsL3V0aWwvZm9ybXMtbnVsbC1vYmplY3QnO1xyXG5pbXBvcnQge0Zvcm1RdWVzdGlvbkFuc3dlcn0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvZm9ybS1xdWVzdGlvbi1hbnN3ZXIuYm8nO1xyXG5pbXBvcnQge0Zvcm1RdWVzdGlvblJlc3BvbnNlfSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9mb3JtLXF1ZXN0aW9uLXJlc3BvbnNlLmJvJztcclxuaW1wb3J0IHtDb0RvY3VtZW50fSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9jby1kb2N1bWVudC5ibyc7XHJcbmltcG9ydCB7QXJyYXlVdGlsc30gZnJvbSAnLi4vLi4vLi4vdXRpbHMvYXJyYXktdXRpbHMnO1xyXG5pbXBvcnQge0J1c2luZXNzT2JqZWN0RmFjdG9yeX0gZnJvbSAnQGNvbGlqbml0L2lvbmVjb25uZWN0b3IvYnVpbGQvc2VydmljZS9idXNpbmVzcy1vYmplY3QtZmFjdG9yeSc7XHJcbmltcG9ydCB7Rm9ybVV0aWxzfSBmcm9tICcuLi8uLi8uLi91dGlscy9mb3JtLXV0aWxzJztcclxuaW1wb3J0IHtJY29ufSBmcm9tICcuLi8uLi8uLi9lbnVtL2ljb24uZW51bSc7XHJcbmltcG9ydCB7SWNvbkNhY2hlU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2UnO1xyXG5pbXBvcnQge1VzZXJGb3JtTW9kZX0gZnJvbSAnLi4vLi4vLi4vZW51bS91c2VyLWZvcm0tbW9kZS5lbnVtJztcclxuaW1wb3J0IHtTaGFyZWRDb25uZWN0b3JTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL3NoYXJlZC1jb25uZWN0b3Iuc2VydmljZSc7XHJcbmltcG9ydCB7RmlsZXNVcGxvYWRDb21wb25lbnR9IGZyb20gJy4uLy4uL2ZpbGVzLXVwbG9hZC9maWxlcy11cGxvYWQuY29tcG9uZW50JztcclxuaW1wb3J0IHtQcm9tcHRTZXJ2aWNlfSBmcm9tICdAY29saWpuaXQvY29yZWNvbXBvbmVudHNfdjEyJztcclxuaW1wb3J0IHtWYWxpZGF0aW9uRXJyb3JzfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2NvLWZvcm0tYnVpbGRlci11c2VyLWZvcm0nLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICAgIDxjby1kaWFsb2cgW2hlYWRlclRlbXBsYXRlXT1cImhlYWRlclRlbXBsYXRlXCIgW2Zvb3RlclRlbXBsYXRlXT1cImZvb3RlclRlbXBsYXRlXCIgKGNsb3NlQ2xpY2spPVwiaGFuZGxlQ2FuY2VsRm9ybSgpXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibWFpbi1jb250ZW50LXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VjdGlvbi13cmFwcGVyIG1pbmktc2Nyb2xsYmFyXCIgI3NlY3Rpb25XcmFwcGVyPlxyXG4gICAgICAgICAgICAgICAgICA8Y28tZm9ybSAjY29Gb3JtICh2YWxpZFN1Ym1pdCk9XCJvblZhbGlkKClcIiBba2VlcEluVmlld109XCJzZWN0aW9uV3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgcXVlc3Rpb24gb2YgY2xvbmVGb3JtLnF1ZXN0aW9uczsgbGV0IGluZGV4ID0gaW5kZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IFtjbGFzcy5hY3RpdmVdPVwiZm9ybS5xdWVzdGlvbnMuaW5kZXhPZihxdWVzdGlvbikgPT09IGZvcm0ucXVlc3Rpb25zLmluZGV4T2YoYWN0aXZlUXVlc3Rpb24pXCIgY2xhc3M9XCJoZWFkZXJzLXJvd1wiIGZ4TGF5b3V0PVwiY29sdW1uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCJxdWVzdGlvbi5kaXNhYmxlZCAmJiBpbmRleCAhPT0gMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoa2V5ZG93bik9XCJlbmFibGVkTmV4dFF1ZXN0aW9uKHF1ZXN0aW9uKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZm9ybS1ydWJyaWMtaGVhZGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdGV4dENvbnRlbnRdPVwicXVlc3Rpb24uc2VxdWVuY2UrICcuICcgKyAocXVlc3Rpb24ucXVlc3Rpb24pXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYW5zd2VyLXdyYXBwZXJcIiBbbmdTd2l0Y2hdPVwicXVlc3Rpb24ucXVlc3Rpb25UeXBlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y28taW5wdXQtdGV4dCAqbmdTd2l0Y2hDYXNlPVwiZm9ybVF1ZXN0aW9uVHlwZS5TaG9ydEFuc3dlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJxdWVzdGlvbi5yZXNwb25zZVF1ZXN0aW9uLnJlc3BvbnNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJxdWVzdGlvbi5tYW5kYXRvcnlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJxdWVzdGlvbi5kaXNhYmxlZCAmJiBpbmRleCAhPT0gMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvLWlucHV0LXRleHRhcmVhICpuZ1N3aXRjaENhc2U9XCJmb3JtUXVlc3Rpb25UeXBlLkxvbmdBbnN3ZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cInF1ZXN0aW9uLnJlc3BvbnNlUXVlc3Rpb24ucmVzcG9uc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJxdWVzdGlvbi5tYW5kYXRvcnlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInF1ZXN0aW9uLmRpc2FibGVkICYmIGluZGV4ICE9PSAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2NvLWlucHV0LXRleHRhcmVhPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiZm9ybVF1ZXN0aW9uVHlwZS5NdWx0aXBsZUNob2ljZVNpbmdsZU9wdGlvblwiXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjby1mb3JtPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y28taW5wdXQtcmFkaW8tYnV0dG9uICpuZ0Zvcj1cImxldCBhbnN3ZXIgb2YgcXVlc3Rpb24uZm9ybVF1ZXN0aW9uQW5zd2Vyc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cImFuc3dlci5hbnN3ZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttb2RlbF09XCJhbnN3ZXIuYW5zd2VySWQgPT0gcXVlc3Rpb24ucmVzcG9uc2VRdWVzdGlvbi5yZXNwb25zZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInF1ZXN0aW9uLmRpc2FibGVkICYmIGluZGV4ICE9PSAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwicXVlc3Rpb24ucmVzcG9uc2VRdWVzdGlvbi5yZXNwb25zZSA9IGFuc3dlci5hbnN3ZXJJZCArICcnOyBlbmFibGVkTmV4dFF1ZXN0aW9uKHF1ZXN0aW9uLCBhbnN3ZXIpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvY28taW5wdXQtcmFkaW8tYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY28tZm9ybT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiZm9ybVF1ZXN0aW9uVHlwZS5NdWx0aXBsZUNob2ljZU11bHRpcGxlT3B0aW9uc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjby1pbnB1dC1jaGVja2JveCAqbmdGb3I9XCJsZXQgYW5zd2VyIG9mIHF1ZXN0aW9uLmZvcm1RdWVzdGlvbkFuc3dlcnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiYW5zd2VyLmFuc3dlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttb2RlbF09XCJxdWVzdGlvbi5yZXNwb25zZVF1ZXN0aW9uLnJlc3BvbnNlID8gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHF1ZXN0aW9uLnJlc3BvbnNlUXVlc3Rpb24ucmVzcG9uc2UuaW5kZXhPZihhbnN3ZXIuYW5zd2VySWQpID4gLTEgOiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcXVlc3Rpb24ucmVzcG9uc2VRdWVzdGlvbi5yZXNwb25zZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJxdWVzdGlvbi5kaXNhYmxlZCAmJiBpbmRleCAhPT0gMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJjaGFuZ2VNdWx0aXBsZU9wdGlvbihhbnN3ZXIuYW5zd2VySWQsIHF1ZXN0aW9uLnJlc3BvbnNlUXVlc3Rpb24sICRldmVudCk7IGVuYWJsZWROZXh0UXVlc3Rpb24ocXVlc3Rpb24sIGFuc3dlcilcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2NvLWlucHV0LWNoZWNrYm94PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y28tbGlzdC1vZi12YWx1ZXMgKm5nU3dpdGNoQ2FzZT1cImZvcm1RdWVzdGlvblR5cGUuRHJvcERvd25MaXN0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbW9kZWxdPVwicXVlc3Rpb24ucmVzcG9uc2VRdWVzdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbGxlY3Rpb25dPVwicXVlc3Rpb24uZm9ybVF1ZXN0aW9uQW5zd2Vyc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc3BsYXlGaWVsZF09XCInYW5zd2VyJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cInF1ZXN0aW9uLm1hbmRhdG9yeVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwicXVlc3Rpb24uZGlzYWJsZWQgJiYgaW5kZXggIT09IDBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJjaGFuZ2VMb3ZPcHRpb24ocXVlc3Rpb24ucmVzcG9uc2VRdWVzdGlvbiwgJGV2ZW50KTsgZW5hYmxlZE5leHRRdWVzdGlvbihxdWVzdGlvbiwgJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9jby1saXN0LW9mLXZhbHVlcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjby11c2VyLWZvcm0taW5wdXQtc2NhbGUgKm5nU3dpdGNoQ2FzZT1cImZvcm1RdWVzdGlvblR5cGUuTGluZWFyU2NhbGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwicXVlc3Rpb24ucXVlc3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaWRGaWVsZF09XCInYW5zd2VySWQnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NlbGVjdGVkXT1cInF1ZXN0aW9uLnJlc3BvbnNlUXVlc3Rpb24ucmVzcG9uc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2NhbGVNb2RlbF09XCJxdWVzdGlvbi5mb3JtUXVlc3Rpb25BbnN3ZXJzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rlc2NyaXB0aW9uRmllbGRdPVwiJ2Fuc3dlcidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwicXVlc3Rpb24ubWFuZGF0b3J5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInF1ZXN0aW9uLmRpc2FibGVkICYmIGluZGV4ICE9PSAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNlbGVjdGlvbkNoYW5nZSk9XCJxdWVzdGlvbi5yZXNwb25zZVF1ZXN0aW9uLnJlc3BvbnNlID0gJGV2ZW50LmFuc3dlcklkICsgJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvY28tdXNlci1mb3JtLWlucHV0LXNjYWxlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvLWlucHV0LWRhdGUgKm5nU3dpdGNoQ2FzZT1cImZvcm1RdWVzdGlvblR5cGUuRGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJxdWVzdGlvbi5yZXNwb25zZVF1ZXN0aW9uLmRhdGVSZXNwb25zZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwicXVlc3Rpb24ubWFuZGF0b3J5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwicXVlc3Rpb24uZGlzYWJsZWQgJiYgaW5kZXggIT09IDBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvY28taW5wdXQtZGF0ZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjby1pbnB1dC10aW1lICpuZ1N3aXRjaENhc2U9XCJmb3JtUXVlc3Rpb25UeXBlLlRpbWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVsXT1cInF1ZXN0aW9uLnJlc3BvbnNlUXVlc3Rpb24/LnRpbWVSZXNwb25zZSA/PyAxXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJjaGFuZ2VUaW1lKHF1ZXN0aW9uLnJlc3BvbnNlUXVlc3Rpb24sICRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cInF1ZXN0aW9uLm1hbmRhdG9yeVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInF1ZXN0aW9uLmRpc2FibGVkICYmIGluZGV4ICE9PSAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2NvLWlucHV0LXRpbWU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJnb3RvLXF1ZXN0aW9uXCIgKm5nSWY9XCJxdWVzdGlvbiA9PT0gYWN0aXZlUXVlc3Rpb24gJiYgZ290b1F1ZXN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0ZXh0Q29udGVudF09XCIoJ0dPVE9fTkVYVF9RVUVTVElPTicgfCBzaGFyZWRMb2NhbGl6ZSkgKyAnICcgKyBnb3RvUXVlc3Rpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICA8L2NvLWZvcm0+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlY3Rpb24td3JhcHBlciBtaW5pLXNjcm9sbGJhclwiICNzZWN0aW9uV3JhcHBlcj5cclxuICAgICAgICAgICAgICAgICAgPGNvLWlucHV0LWNoZWNrYm94IFttb2RlbF09XCJmb3JtUmVzcG9uc2U/LmlzRmluYWxcIiAobW9kZWxDaGFuZ2UpPVwiaGFuZGxlRGVmaW5pdGl2ZUNoYW5nZSgkZXZlbnQpXCIgW2xhYmVsXT1cIidERUZJTklUSVZFJyB8IHNoYXJlZExvY2FsaXplXCI+PC9jby1pbnB1dC1jaGVja2JveD5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcblxyXG4gICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8L2NvLWRpYWxvZz5cclxuICAgICAgPG5nLXRlbXBsYXRlICNoZWFkZXJUZW1wbGF0ZT5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItd3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZm9ybS10aXRsZVwiIFt0ZXh0Q29udGVudF09XCJmb3JtPy5mb3JtTmFtZVwiPjwvc3Bhbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICA8bmctdGVtcGxhdGUgI2Zvb3RlclRlbXBsYXRlPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZvb3Rlci13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF0dGFjaG1lbnRzLXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGNvLWljb24gW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5QYXBlcmNsaXBSZWd1bGFyKVwiIChjbGljayk9XCJoYW5kbGVPcGVuRmlsZXNVcGxvYWQoKVwiPjwvY28taWNvbj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiZmlsZVwiIGFjY2VwdD1cImltYWdlLypcIiBjYXB0dXJlPVwiZW52aXJvbm1lbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxjby1maWxlcy11cGxvYWQgI2ZpbGVzVXBsb2FkQ29tcG9uZW50IFtkb2N1bWVudHNdPVwiZm9ybVJlc3BvbnNlLmRvY3VtZW50c1wiIGNsYXNzPVwiY28tZmlsZXMtdXBsb2FkXCI+PC9jby1maWxlcy11cGxvYWQ+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgPGNvLWJ1dHRvbiBjbGFzcz1cInNhdmUtYnV0dG9uXCIgKGNsaWNrKT1cImNvbW1pdFVzZXJGb3JtKClcIiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkNoZWNrRHVvdG9uZSlcIj48L2NvLWJ1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgPGNvLWJ1dHRvbiBjbGFzcz1cImNsb3NlLWJ1dHRvblwiIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuQ3Jvc3NTa2lubnkpXCIgKGNsaWNrKT1cImhhbmRsZUNhbmNlbEZvcm0oKVwiPjwvY28tYnV0dG9uPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICBgLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIEZvcm1CdWlsZGVyVXNlckZvcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xyXG5cclxuICBwdWJsaWMgcmVhZG9ubHkgZm9ybVF1ZXN0aW9uVHlwZTogdHlwZW9mIEZvcm1RdWVzdGlvblR5cGUgPSBGb3JtUXVlc3Rpb25UeXBlO1xyXG4gIHB1YmxpYyByZWFkb25seSBUYWJsZU5hbWU6IHR5cGVvZiBUYWJsZU5hbWUgPSBUYWJsZU5hbWU7XHJcbiAgcHVibGljIHJlYWRvbmx5IGljb25zOiB0eXBlb2YgSWNvbiA9IEljb247XHJcblxyXG4gIHB1YmxpYyBtb2RlOiBVc2VyRm9ybU1vZGUgPSBVc2VyRm9ybU1vZGUuQ3JlYXRlO1xyXG4gIHB1YmxpYyBkb2N1bWVudHM6IENvRG9jdW1lbnRbXSA9IFtdO1xyXG5cclxuICBwcml2YXRlIF9mb3JtOiBGb3JtO1xyXG5cclxuICBAVmlld0NoaWxkKCdmaWxlc1VwbG9hZENvbXBvbmVudCcpXHJcbiAgcHVibGljIGZpbGVzVXBsb2FkQ29tcG9uZW50OiBGaWxlc1VwbG9hZENvbXBvbmVudDtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2hvd1BvcHVwOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBmb3JtKGZvcm06IEZvcm0pIHtcclxuICAgIHRoaXMuX2Zvcm0gPSBmb3JtO1xyXG4gICAgdGhpcy5fcHJlcGFyZU5ld0Zvcm0oKTtcclxuICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZm9ybSgpOiBGb3JtIHtcclxuICAgIHJldHVybiB0aGlzLl9mb3JtO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgdXNlckZvcm06IEZvcm1SZXNwb25zZTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgdGFibGU6IFRhYmxlTmFtZTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMga2V5OiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgQElucHV0Qm9vbGVhbigpXHJcbiAgcHVibGljIHJlYWRvbmx5OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGVuYWJsZVF1ZXN0aW9uczogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyByZWFkb25seSBjYW5jZWxGb3JtOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyByZWFkb25seSBzYXZlRm9ybTogRXZlbnRFbWl0dGVyPEZvcm1SZXNwb25zZT4gPSBuZXcgRXZlbnRFbWl0dGVyPEZvcm1SZXNwb25zZT4oKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHJlYWRvbmx5IGRlZmluaXRpdmVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHJlYWRvbmx5IGNyZWF0ZU5ld0Zvcm1SZXNwb25zZTogRXZlbnRFbWl0dGVyPEZvcm1SZXNwb25zZT4gPSBuZXcgRXZlbnRFbWl0dGVyPEZvcm1SZXNwb25zZT4oKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHJlYWRvbmx5IGVycm9yTWVzc2FnZTogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuXHJcbiAgcHVibGljIGNsb25lRm9ybTogRm9ybSA9IE5VTExfRk9STV9GVUxMX09CSkVDVDtcclxuICBwdWJsaWMgZm9ybVJlc3BvbnNlOiBGb3JtUmVzcG9uc2U7XHJcblxyXG4gIHB1YmxpYyBhY3RpdmVRdWVzdGlvbjogRm9ybVF1ZXN0aW9uO1xyXG4gIHB1YmxpYyBnb3RvUXVlc3Rpb246IG51bWJlcjtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jby1mb3JtLWJ1aWxkZXItdXNlci1mb3JtJylcclxuICBwdWJsaWMgc2hvd0NsYXNzKCkge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgX2RldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByaXZhdGUgX2JvRmFjdG9yeTogQnVzaW5lc3NPYmplY3RGYWN0b3J5LFxyXG4gICAgcHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSBfc2hhcmVkQ29ubmVjdG9yU2VydmljZTogU2hhcmVkQ29ubmVjdG9yU2VydmljZSxcclxuICAgIHByaXZhdGUgX3Byb21wdFNlcnZpY2U6IFByb21wdFNlcnZpY2UsXHJcbiAgICBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZVxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLl9kZXRlY3RvclJlZiA9IHVuZGVmaW5lZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBlbmFibGVkTmV4dFF1ZXN0aW9uKHF1ZXN0aW9uOiBGb3JtUXVlc3Rpb24sIGFuc3dlcj86IEZvcm1RdWVzdGlvbkFuc3dlciB8IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5hY3RpdmVRdWVzdGlvbiA9IHF1ZXN0aW9uO1xyXG4gICAgaWYgKHR5cGVvZiBhbnN3ZXIgPT09ICdudW1iZXInKSB7XHJcbiAgICAgIGFuc3dlciA9IHF1ZXN0aW9uLmZvcm1RdWVzdGlvbkFuc3dlcnMuZmluZChhID0+IGEuYW5zd2VySWQgPT09IGFuc3dlcik7XHJcbiAgICB9XHJcbiAgICBjb25zdCBnb3RvUXVlc3Rpb246IG51bWJlciA9IGFuc3dlciA/IGFuc3dlci5nb3RvUXVlc3Rpb25JZCA6IHF1ZXN0aW9uLmdvdG9RdWVzdGlvbklkO1xyXG4gICAgY29uc3QgY3VycmVudEluZGV4OiBudW1iZXIgPSB0aGlzLmNsb25lRm9ybS5xdWVzdGlvbnMuZmluZEluZGV4KHEgPT4gcS5xdWVzdGlvbklkID09PSBxdWVzdGlvbi5xdWVzdGlvbklkKTtcclxuICAgIGxldCBuZXh0UXVlc3Rpb246IEZvcm1RdWVzdGlvbiA9IHRoaXMuY2xvbmVGb3JtLnF1ZXN0aW9uc1tjdXJyZW50SW5kZXggKyAxXTtcclxuICAgIGlmIChnb3RvUXVlc3Rpb24pIHtcclxuICAgICAgbmV4dFF1ZXN0aW9uID0gdGhpcy5jbG9uZUZvcm0ucXVlc3Rpb25zLmZpbmQocSA9PiBxLnF1ZXN0aW9uSWQgPT09IGdvdG9RdWVzdGlvbik7XHJcbiAgICB9XHJcbiAgICBpZiAobmV4dFF1ZXN0aW9uKSB7XHJcbiAgICAgIG5leHRRdWVzdGlvbi5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgdGhpcy5nb3RvUXVlc3Rpb24gPSBuZXh0UXVlc3Rpb24uc2VxdWVuY2U7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmdvdG9RdWVzdGlvbiA9IHVuZGVmaW5lZDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBvblZhbGlkKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zYXZlRm9ybS5uZXh0KHRoaXMuZm9ybVJlc3BvbnNlKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBoYW5kbGVDYW5jZWxGb3JtKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgaWYgKHRoaXMudXNlckZvcm0gJiYgdGhpcy51c2VyRm9ybS5yZXNwb25zZUlkKSB7XHJcbiAgICAgIHRyeSB7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5fc2hhcmVkQ29ubmVjdG9yU2VydmljZS51bmxvY2tGb3JtUmVzcG9uc2UodGhpcy51c2VyRm9ybS5yZXNwb25zZUlkKTtcclxuICAgICAgfSBjYXRjaCAoZTogYW55KSB7XHJcbiAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UuZW1pdCg8c3RyaW5nPiBlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhpcy5jbG9uZUZvcm0gPSB1bmRlZmluZWQ7XHJcbiAgICB0aGlzLnVzZXJGb3JtID0gdW5kZWZpbmVkO1xyXG4gICAgdGhpcy5mb3JtUmVzcG9uc2UgPSB1bmRlZmluZWQ7XHJcbiAgICB0aGlzLmNhbmNlbEZvcm0ubmV4dCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNoYW5nZU11bHRpcGxlT3B0aW9uKGlkOiBzdHJpbmcsIGZvcm1SZXNwb25zZTogRm9ybVF1ZXN0aW9uUmVzcG9uc2UsIGFkZDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgY29uc3QgcmVzcG9uc2VMaXN0OiBzdHJpbmdbXSA9IGZvcm1SZXNwb25zZS5yZXNwb25zZSA/IGZvcm1SZXNwb25zZS5yZXNwb25zZS5zcGxpdCgnLCcpIDogW107XHJcbiAgICBpZiAoYWRkKSB7XHJcbiAgICAgIHJlc3BvbnNlTGlzdC5wdXNoKGlkKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJlc3BvbnNlTGlzdC5zcGxpY2UocmVzcG9uc2VMaXN0LmluZGV4T2YoaWQpLCAxKTtcclxuICAgIH1cclxuICAgIGZvcm1SZXNwb25zZS5yZXNwb25zZSA9IHJlc3BvbnNlTGlzdC50b1N0cmluZygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNoYW5nZUxvdk9wdGlvbihmb3JtUmVzcG9uc2U6IEZvcm1RdWVzdGlvblJlc3BvbnNlLCB2YWx1ZTogRm9ybVF1ZXN0aW9uQW5zd2VyKTogdm9pZCB7XHJcbiAgICBpZiAodmFsdWUgJiYgdmFsdWUucXVlc3Rpb25JZCAmJiB2YWx1ZS5xdWVzdGlvbklkICYmIHZhbHVlLmFuc3dlcikge1xyXG4gICAgICBmb3JtUmVzcG9uc2UucXVlc3Rpb25JZCA9IHZhbHVlLnF1ZXN0aW9uSWQ7XHJcbiAgICAgIGZvcm1SZXNwb25zZS5yZXNwb25zZSA9IHZhbHVlLmFuc3dlci50b1N0cmluZygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGNoYW5nZVRpbWUoZm9ybVJlc3BvbnNlOiBGb3JtUXVlc3Rpb25SZXNwb25zZSwgdGltZTogRGF0ZSk6IHZvaWQge1xyXG4gICAgZm9ybVJlc3BvbnNlLnRpbWVSZXNwb25zZSA9IHRpbWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlRG9jdW1lbnREZWxldGVkKGRvYzogQ29Eb2N1bWVudCk6IHZvaWQge1xyXG4gICAgQXJyYXlVdGlscy5SZW1vdmVFbGVtZW50KGRvYywgdGhpcy5mb3JtUmVzcG9uc2UuZG9jdW1lbnRzKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVEb2N1bWVudENoYW5nZWQoZG9jOiBDb0RvY3VtZW50KTogdm9pZCB7XHJcbiAgICB0aGlzLmZvcm1SZXNwb25zZS5kb2N1bWVudHMucHVzaChkb2MpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZURvY3VtZW50c0FkZGVkKGRvY3M6IENvRG9jdW1lbnRbXSk6IHZvaWQge1xyXG4gICAgZG9jcy5mb3JFYWNoKChkb2N1bWVudDogQ29Eb2N1bWVudCkgPT4ge1xyXG4gICAgICB0aGlzLmZvcm1SZXNwb25zZS5kb2N1bWVudHMucHVzaChkb2N1bWVudCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgX3ByZXBhcmVOZXdGb3JtKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy5jbG9uZUZvcm0gPSA8Rm9ybT50aGlzLl9ib0ZhY3RvcnkubWFrZVdpdGhSYXdCYWNrZW5kRGF0YShGb3JtLCB0aGlzLmZvcm0pO1xyXG4gICAgaWYgKCF0aGlzLnVzZXJGb3JtPy5yZXNwb25zZUlkKSB7XHJcbiAgICAgIHRoaXMuZm9ybVJlc3BvbnNlID0gPEZvcm1SZXNwb25zZT50aGlzLl9ib0ZhY3RvcnkubWFrZVdpdGhSYXdCYWNrZW5kRGF0YShGb3JtUmVzcG9uc2UsIHRoaXMudXNlckZvcm0pO1xyXG4gICAgICB0aGlzLmZvcm1SZXNwb25zZS5mb3JtSWQgPSB0aGlzLmZvcm0uZm9ybUlkO1xyXG4gICAgICB0aGlzLmZvcm1SZXNwb25zZS50YWJsZSA9IHRoaXMudGFibGU7XHJcbiAgICAgIHRoaXMuZm9ybVJlc3BvbnNlLmtleSA9IHRoaXMua2V5O1xyXG4gICAgICBGb3JtVXRpbHMuTWVyZ2VSZXNwb25zZVdpdGhGb3JtKHRoaXMuY2xvbmVGb3JtLCB0aGlzLmZvcm1SZXNwb25zZSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLm1vZGUgPSBVc2VyRm9ybU1vZGUuRWRpdDtcclxuICAgICAgdGhpcy5fcHJlcGFyZUV4aXN0aW5nRm9ybSgpO1xyXG4gICAgICB0cnkge1xyXG4gICAgICAgIGF3YWl0IHRoaXMuX3NoYXJlZENvbm5lY3RvclNlcnZpY2UubG9ja0Zvcm1SZXNwb25zZSh0aGlzLnVzZXJGb3JtLnJlc3BvbnNlSWQpO1xyXG4gICAgICB9IGNhdGNoIChlOiBhbnkpIHtcclxuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZS5lbWl0KDxzdHJpbmc+IGUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5fbG9hZERvY3MoKTtcclxuICAgIGlmICh0aGlzLmVuYWJsZVF1ZXN0aW9ucykge1xyXG4gICAgICB0aGlzLl9lbmFibGVRdWVzdGlvbnMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3ByZXBhcmVFeGlzdGluZ0Zvcm0oKTogdm9pZCB7XHJcbiAgICB0aGlzLmNsb25lRm9ybSA9IDxGb3JtPnRoaXMuX2JvRmFjdG9yeS5tYWtlV2l0aFJhd0JhY2tlbmREYXRhKEZvcm0sIHRoaXMuZm9ybSk7XHJcbiAgICB0aGlzLmZvcm1SZXNwb25zZSA9IDxGb3JtUmVzcG9uc2U+dGhpcy5fYm9GYWN0b3J5Lm1ha2VXaXRoUmF3QmFja2VuZERhdGEoRm9ybVJlc3BvbnNlLCB0aGlzLnVzZXJGb3JtKTtcclxuICAgIEZvcm1VdGlscy5NZXJnZVJlc3BvbnNlV2l0aEZvcm0odGhpcy5jbG9uZUZvcm0sIHRoaXMuZm9ybVJlc3BvbnNlKTtcclxuXHJcbiAgICBpZiAodGhpcy5lbmFibGVRdWVzdGlvbnMpIHtcclxuICAgICAgdGhpcy5fZW5hYmxlUXVlc3Rpb25zKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9lbmFibGVRdWVzdGlvbnMoKTogdm9pZCB7XHJcbiAgICBmb3IgKGNvbnN0IGN1cnJlbnRJbmRleCBpbiB0aGlzLmNsb25lRm9ybS5xdWVzdGlvbnMpIHtcclxuICAgICAgaWYgKHRoaXMuY2xvbmVGb3JtLnF1ZXN0aW9uc1tjdXJyZW50SW5kZXhdKSB7XHJcbiAgICAgICAgY29uc3QgbmV4dFF1ZXN0aW9uOiBGb3JtUXVlc3Rpb24gPSB0aGlzLmNsb25lRm9ybS5xdWVzdGlvbnNbY3VycmVudEluZGV4XTtcclxuICAgICAgICBpZiAobmV4dFF1ZXN0aW9uKSB7XHJcbiAgICAgICAgICBuZXh0UXVlc3Rpb24uYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgICB0aGlzLmdvdG9RdWVzdGlvbiA9IG5leHRRdWVzdGlvbi5zZXF1ZW5jZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5nb3RvUXVlc3Rpb24gPSB1bmRlZmluZWQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9sb2FkRG9jcygpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5mb3JtUmVzcG9uc2UuZG9jdW1lbnRzKSB7XHJcbiAgICAgIHRoaXMuZm9ybVJlc3BvbnNlLmRvY3VtZW50cyA9IFtdO1xyXG4gICAgfVxyXG4gICAgdGhpcy5mb3JtUmVzcG9uc2UuZG9jdW1lbnRzLmZvckVhY2goKGRvYzogQ29Eb2N1bWVudCkgPT4ge1xyXG4gICAgICBpZiAoZG9jLmRvY3VtZW50SWQgJiYgIWRvYy5kb2N1bWVudEJvZHkpIHtcclxuICAgICAgICB0aGlzLl9zaGFyZWRDb25uZWN0b3JTZXJ2aWNlLmdldERvY3VtZW50Q29udGVudChkb2MuZG9jdW1lbnRJZCkudGhlbigoY29udGVudDogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgICBkb2MuZG9jdW1lbnRCb2R5ID0gY29udGVudDtcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlRGVmaW5pdGl2ZUNoYW5nZShkZWZpbml0aXZlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLmZvcm1SZXNwb25zZS5pc0ZpbmFsID0gZGVmaW5pdGl2ZTtcclxuICAgIHRoaXMuZGVmaW5pdGl2ZUNoYW5nZS5uZXh0KGRlZmluaXRpdmUpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNvbW1pdFVzZXJGb3JtKCkge1xyXG4gICAgRm9ybVV0aWxzLk1lcmdlUmVzcG9uc2VXaXRoRm9ybSh0aGlzLmNsb25lRm9ybSwgdGhpcy5mb3JtUmVzcG9uc2UpO1xyXG4gICAgdGhpcy5mb3JtUmVzcG9uc2UudGFibGUgPSB0aGlzLnRhYmxlO1xyXG4gICAgdGhpcy5mb3JtUmVzcG9uc2Uua2V5ID0gdGhpcy5rZXk7XHJcbiAgICBzd2l0Y2ggKHRoaXMubW9kZSkge1xyXG4gICAgICBjYXNlIFVzZXJGb3JtTW9kZS5DcmVhdGU6XHJcbiAgICAgICAgdGhpcy5fc2hhcmVkQ29ubmVjdG9yU2VydmljZS5pbnNlcnRGb3JtUmVzcG9uc2UodGhpcy5mb3JtUmVzcG9uc2UpLnRoZW4oKHJlc3BvbnNlOiBGb3JtUmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgIGlmIChyZXNwb25zZSAmJiByZXNwb25zZS5yZXNwb25zZUlkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc2F2ZUZvcm0ubmV4dChyZXNwb25zZSk7XHJcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlQ2FuY2VsRm9ybSgpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UuZW1pdChcIkVSUk9SX0lOU0VSVF9GT1JNX1JFU1BPTlNFXCIpXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy5jcmVhdGVOZXdGb3JtUmVzcG9uc2UubmV4dCh0aGlzLmZvcm1SZXNwb25zZSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgVXNlckZvcm1Nb2RlLkVkaXQ6XHJcbiAgICAgICAgdGhpcy5fc2hhcmVkQ29ubmVjdG9yU2VydmljZS51cGRhdGVGb3JtUmVzcG9uc2UodGhpcy5mb3JtUmVzcG9uc2UpLnRoZW4oKHJlc3BvbnNlOiBGb3JtUmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgIGlmIChyZXNwb25zZSAmJiByZXNwb25zZS5yZXNwb25zZUlkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc2F2ZUZvcm0ubmV4dChyZXNwb25zZSk7XHJcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlQ2FuY2VsRm9ybSgpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UuZW1pdChcIkVSUk9SX1NBVklOR19GT1JNX1JFU1BPTlNFXCIpXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlT3BlbkZpbGVzVXBsb2FkKCkge1xyXG4gICAgdGhpcy5maWxlc1VwbG9hZENvbXBvbmVudC5vcGVuRmlsZUJyb3dzZXIoKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
@@ -1,6 +1,5 @@
1
1
  import { Component, EventEmitter, HostBinding, Input, Output, ViewEncapsulation } from '@angular/core';
2
2
  import { SendMethodService } from '../../service/send-method.service';
3
- ;
4
3
  export class SendMethodPurchaseComponent {
5
4
  constructor(sendMethodService) {
6
5
  this.sendMethodService = sendMethodService;
@@ -18,7 +17,8 @@ export class SendMethodPurchaseComponent {
18
17
  this.overruleOptions = [
19
18
  { code: 1, description: 'Print' },
20
19
  { code: 2, description: 'E-mail' },
21
- { code: 3, description: 'EDI' }
20
+ { code: 3, description: 'EDI' },
21
+ { code: 8, description: 'PDF' }
22
22
  ];
23
23
  }
24
24
  showClass() {
@@ -152,4 +152,4 @@ SendMethodPurchaseComponent.propDecorators = {
152
152
  purchaseMethodChanged: [{ type: Output }],
153
153
  showClass: [{ type: HostBinding, args: ['class.co-send-method-purchase',] }]
154
154
  };
155
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VuZC1tZXRob2QtcHVyY2hhc2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc2VuZC1tZXRob2QtZGlhbG9nL2NvbXBvbmVudHMvc2VuZC1tZXRob2QtcHVyY2hhc2Uvc2VuZC1tZXRob2QtcHVyY2hhc2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzdHLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQUEsQ0FBQztBQTRGckUsTUFBTSxPQUFPLDJCQUEyQjtJQStDdEMsWUFDUyxpQkFBb0M7UUFBcEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQTdDdEMsaUJBQVksR0FBaUMsRUFBRSxDQUFDO1FBR2hELGlCQUFZLEdBQWlDLEVBQUUsQ0FBQztRQU1oRCxnQkFBVyxHQUFjLEVBQUUsQ0FBQztRQUc1QixXQUFNLEdBQVEsRUFBRSxDQUFDO1FBR2pCLDBCQUFxQixHQUFZLEtBQUssQ0FBQztRQUd2QyxvQkFBZSxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBRy9ELDJCQUFzQixHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO1FBRWhFLDBCQUFxQixHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBTzdFLHFCQUFnQixHQUFZLElBQUksQ0FBQztRQUNqQyw4QkFBeUIsR0FBWSxJQUFJLENBQUM7UUFDakQsK0NBQStDO1FBRXhDLG9CQUFlLEdBQXNCO1lBQzFDLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFO1lBQ2pDLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFO1lBQ2xDLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFO1NBQ2hDLENBQUM7SUFTRixDQUFDO0lBckJNLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFxQkQsUUFBUTtJQUVSLENBQUM7SUFFTSw4QkFBOEIsQ0FBQyxPQUFnQjtRQUNwRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsd0NBQXdDLENBQUMseUJBQXlCLEdBQUcsT0FBTyxDQUFDO1FBQ3BHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQywrQ0FBK0MsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLHdDQUF3QyxDQUFDLENBQUM7SUFDL0ksQ0FBQztJQUVNLGtDQUFrQyxDQUFDLE9BQWdCO1FBQ3hELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyx3Q0FBd0MsQ0FBQyw2QkFBNkIsR0FBRyxPQUFPLENBQUM7UUFDeEcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLCtDQUErQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsd0NBQXdDLENBQUMsQ0FBQztJQUMvSSxDQUFDO0lBRU0sb0JBQW9COztRQUN6QixNQUFNLG1CQUFtQixHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUNoRCxDQUFDLENBQUMsRUFBRSxXQUFDLE9BQUEsQ0FBQyxDQUFDLFFBQVEsTUFBSyxNQUFBLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyx3Q0FBd0MsMENBQUUsUUFBUSxDQUFBLENBQUEsRUFBQSxDQUM5RixDQUFDO1FBRUYsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FDaEQsQ0FBQyxDQUFDLEVBQUUsV0FBQyxPQUFBLENBQUMsQ0FBQyxRQUFRLE1BQUssTUFBQSxJQUFJLENBQUMsaUJBQWlCLENBQUMsd0NBQXdDLDBDQUFFLFFBQVEsQ0FBQSxDQUFBLEVBQUEsQ0FDOUYsQ0FBQztRQUVGLE1BQU0sY0FBYyxHQUFHO1lBQ3JCLGdCQUFnQixFQUFFLElBQUksQ0FBQyxnQkFBZ0I7WUFDdkMseUJBQXlCLEVBQUUsSUFBSSxDQUFDLHlCQUF5QjtZQUN6RCxjQUFjLEVBQUUsSUFBSSxDQUFDLGNBQWM7WUFDbkMsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQy9CLGNBQWMsRUFBRSxJQUFJLENBQUMsY0FBYztZQUNuQyxXQUFXLEVBQUUsTUFBQSxJQUFJLENBQUMsaUJBQWlCLENBQUMsd0NBQXdDLDBDQUFFLFdBQVc7WUFDekYsbUJBQW1CLEVBQUUsbUJBQW1CO1lBQ3hDLGdCQUFnQixFQUFFLG1CQUFtQjtZQUNyQyx5QkFBeUIsRUFBRSxDQUFBLE1BQUEsSUFBSSxDQUFDLGlCQUFpQixDQUFDLHdDQUF3QywwQ0FBRSx5QkFBeUIsS0FBSSxLQUFLO1lBQzlILDZCQUE2QixFQUFFLENBQUEsTUFBQSxJQUFJLENBQUMsaUJBQWlCLENBQUMsd0NBQXdDLDBDQUFFLDZCQUE2QixLQUFJLEtBQUs7U0FDdkksQ0FBQztRQUNGLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDbEQsQ0FBQzs7O1lBMUtGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUseUJBQXlCO2dCQUNuQyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBNkVUO2dCQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2FBQ3RDOzs7WUEzRk8saUJBQWlCOzs7MkJBOEZ0QixLQUFLOzJCQUdMLEtBQUs7NkJBR0wsS0FBSzswQkFHTCxLQUFLO3FCQUdMLEtBQUs7b0NBR0wsS0FBSzs4QkFHTCxNQUFNO3FDQUdOLE1BQU07b0NBR04sTUFBTTt3QkFFTixXQUFXLFNBQUMsK0JBQStCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1NlbmRNZXRob2RTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3NlbmQtbWV0aG9kLnNlcnZpY2UnOztcclxuaW1wb3J0IHtSZXBvcnRMYXlvdXRTZWxlY3Rpb25FbWFpbH0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcmVwb3J0LWxheW91dC1zZWxlY3Rpb24tZW1haWwuYm8nO1xyXG5pbXBvcnQge1JlcG9ydExheW91dFNlbGVjdGlvblByaW50fSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9yZXBvcnQtbGF5b3V0LXNlbGVjdGlvbi1wcmludC5ibyc7XHJcbmltcG9ydCB7UHJpbnRlcn0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcHJpbnRlci5ibyc7XHJcblxyXG5pbnRlcmZhY2UgT3ZlcnJ1bGVPcHRpb25zIHtcclxuICBjb2RlOiBudW1iZXI7XHJcbiAgZGVzY3JpcHRpb246IHN0cmluZztcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjby1zZW5kLW1ldGhvZC1wdXJjaGFzZScsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgICAgPHNwYW4gY2xhc3M9XCJzZW5kLW1ldGhvZHMtbGFiZWxcIiBbdGV4dENvbnRlbnRdPVwiJ1NFVFRJTkdTJyB8IHNoYXJlZExvY2FsaXplXCI+PC9zcGFuPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwic2F2ZS1kaWFsb2ctY29udGVudHNcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1c2UtZGVmYXVsdC13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgPGNvLWlucHV0LWNoZWNrYm94XHJcbiAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJ1c2VEZWZhdWx0TGF5b3V0XCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInUkVMQVRJT05fTEFZT1VUUycgfCBzaGFyZWRMb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwidXBkYXRlUHVyY2hhc2VNZXRob2QoKVwiPlxyXG4gICAgICAgICAgICAgIDwvY28taW5wdXQtY2hlY2tib3g+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImluZm9cIiBbdGV4dENvbnRlbnRdPVwiJ1JFTEFUSU9OX0xBWU9VVFNfTUVTU0FHRScgfCBzaGFyZWRMb2NhbGl6ZVwiPjwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwib3ZlcnJpZGUtc2VsZWN0aW9ucy13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxheW91dC1zZWxlY3Rpb25zXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxjby1sYXlvdXQtc2VsZWN0aW9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgWyhyZXF1ZXN0KV09XCJzZW5kTWV0aG9kU2VydmljZS5yZXBvcnRpbmdEb2N1bWVudFByaW50U2lnbkRvY0Jhc2VSZXF1ZXN0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAocmVxdWVzdENoYW5nZSk9XCJzaG93RmlsZVByZXZpZXcuZW1pdCgpOyB1cGRhdGVQdXJjaGFzZU1ldGhvZCgpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAobG9hZERlZmF1bHRQcmludGVyTmFtZSk9XCJsb2FkRGVmYXVsdFByaW50ZXJOYW1lLmVtaXQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2xheW91dHNdPVwicHJpbnRMYXlvdXRzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ1BSSU5URVJfTEFZT1VUJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW3VzZURlZmF1bHRdPVwidXNlRGVmYXVsdExheW91dFwiPlxyXG4gICAgICAgICAgICAgICAgICA8L2NvLWxheW91dC1zZWxlY3Rpb24+XHJcbiAgICAgICAgICAgICAgICAgIDxjby1sYXlvdXQtc2VsZWN0aW9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgWyhyZXF1ZXN0KV09XCJzZW5kTWV0aG9kU2VydmljZS5yZXBvcnRpbmdEb2N1bWVudEVtYWlsU2lnbkRvY0Jhc2VSZXF1ZXN0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAocmVxdWVzdENoYW5nZSk9XCJzaG93RmlsZVByZXZpZXcuZW1pdCgpOyB1cGRhdGVQdXJjaGFzZU1ldGhvZCgpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbbGF5b3V0c109XCJlbWFpbExheW91dHNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInRU1BSUxfTEFZT1VUJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW3VzZURlZmF1bHRdPVwidXNlRGVmYXVsdExheW91dFwiPlxyXG4gICAgICAgICAgICAgICAgICA8L2NvLWxheW91dC1zZWxlY3Rpb24+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGNvLXByaW50ZXItc2VsZWN0aW9uIFtkZWZhdWx0UHJpbnRlcl09XCJkZWZhdWx0UHJpbnRlclwiIFtwcmludGVyc109XCJwcmludGVyTGlzdFwiPjwvY28tcHJpbnRlci1zZWxlY3Rpb24+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFkZGl0aW9uYWwtY2hlY2tzXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxjby1pbnB1dC1jaGVja2JveFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFttb2RlbF09XCJzZW5kTWV0aG9kU2VydmljZS5yZXBvcnRpbmdEb2N1bWVudFByaW50U2lnbkRvY0Jhc2VSZXF1ZXN0LnNhdmVEZWZhdWx0UHJpbnRlckZvclVzZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInS29wcGVsaW5nIG9udGhvdWRlbidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJoYW5kbGVEZWZhdWx0UHJpbnRlclVzZXJDaGFuZ2UoJGV2ZW50KTsgdXBkYXRlUHVyY2hhc2VNZXRob2QoKVwiPlxyXG4gICAgICAgICAgICAgICAgICA8L2NvLWlucHV0LWNoZWNrYm94PlxyXG4gICAgICAgICAgICAgICAgICA8Y28taW5wdXQtY2hlY2tib3hcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbbW9kZWxdPVwic2VuZE1ldGhvZFNlcnZpY2UucmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdC5zYXZlRGVmYXVsdFByaW50ZXJGb3JBbGxVc2Vyc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidBbGxlIGdlYnJ1aWtlcnMnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwiaGFuZGxlRGVmYXVsdFByaW50ZXJBbGxVc2Vyc0NoYW5nZSgkZXZlbnQpOyB1cGRhdGVQdXJjaGFzZU1ldGhvZCgpXCI+XHJcbiAgICAgICAgICAgICAgICAgIDwvY28taW5wdXQtY2hlY2tib3g+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJvdmVycmlkZS1tZXRob2RzLXdyYXBwZXJcIj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2VuZC1tZXRob2RzLWxhYmVsXCIgW3RleHRDb250ZW50XT1cIidTSElQUElOR19NRVRIT0RfU0VUVElOR1MnIHwgc2hhcmVkTG9jYWxpemVcIj48L3NwYW4+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidXNlLWRlZmF1bHQtd3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgIDxjby1pbnB1dC1jaGVja2JveFxyXG4gICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwidXNlRGVmYXVsdFNoaXBwaW5nTWV0aG9kc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ1NISVBQSU5HX01FVEhPRF9TVEFOREFSRF9TRVRUSU5HUycgfCBzaGFyZWRMb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwidXBkYXRlUHVyY2hhc2VNZXRob2QoKVwiPlxyXG4gICAgICAgICAgICAgIDwvY28taW5wdXQtY2hlY2tib3g+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGlwcGluZy1tZXRob2RzXCIgKm5nSWY9XCIhdXNlRGVmYXVsdFNoaXBwaW5nTWV0aG9kc1wiPlxyXG4gICAgICAgICAgICAgIDxjby1saXN0LW9mLXZhbHVlc1xyXG4gICAgICAgICAgICAgICAgICAgICAgW2Rpc3BsYXlGaWVsZF09XCInZGVzY3JpcHRpb24nXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cIm92ZXJydWxlZEVtYWlsXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInT1ZFUlJVTEVfVklBX0VNQUlMJyB8IHNoYXJlZExvY2FsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtjb2xsZWN0aW9uXT1cIm92ZXJydWxlT3B0aW9uc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwidXBkYXRlUHVyY2hhc2VNZXRob2QoKVwiPlxyXG4gICAgICAgICAgICAgIDwvY28tbGlzdC1vZi12YWx1ZXM+XHJcbiAgICAgICAgICAgICAgPGNvLWxpc3Qtb2YtdmFsdWVzXHJcbiAgICAgICAgICAgICAgICAgICAgICBbZGlzcGxheUZpZWxkXT1cIidkZXNjcmlwdGlvbidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwib3ZlcnJ1bGVkRWRpXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInT1ZFUlJVTEVfVklBX0VESScgfCBzaGFyZWRMb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJvdmVycnVsZU9wdGlvbnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cInVwZGF0ZVB1cmNoYXNlTWV0aG9kKClcIj5cclxuICAgICAgICAgICAgICA8L2NvLWxpc3Qtb2YtdmFsdWVzPlxyXG4gICAgICAgICAgICAgIDxjby1saXN0LW9mLXZhbHVlc1xyXG4gICAgICAgICAgICAgICAgICAgICAgW2Rpc3BsYXlGaWVsZF09XCInZGVzY3JpcHRpb24nXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cIm92ZXJydWxlZFByaW50XCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInT1ZFUlJVTEVfVklBX1BSSU5UJyB8IHNoYXJlZExvY2FsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtjb2xsZWN0aW9uXT1cIm92ZXJydWxlT3B0aW9uc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwidXBkYXRlUHVyY2hhc2VNZXRob2QoKVwiPlxyXG4gICAgICAgICAgICAgIDwvY28tbGlzdC1vZi12YWx1ZXM+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgYCxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZW5kTWV0aG9kUHVyY2hhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBlbWFpbExheW91dHM6IFJlcG9ydExheW91dFNlbGVjdGlvbkVtYWlsW10gPSBbXTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgcHJpbnRMYXlvdXRzOiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25QcmludFtdID0gW107XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGRlZmF1bHRQcmludGVyOiBQcmludGVyO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBwcmludGVyTGlzdDogUHJpbnRlcltdID0gW107XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHBkZkRvYzogYW55ID0gJyc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGVtYWlsVW5zaWduZWRQb3NzaWJsZTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgc2hvd0ZpbGVQcmV2aWV3OiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBsb2FkRGVmYXVsdFByaW50ZXJOYW1lOiBFdmVudEVtaXR0ZXI8bnVtYmVyPiA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xyXG5cclxuICBAT3V0cHV0KCkgcHVibGljIHB1cmNoYXNlTWV0aG9kQ2hhbmdlZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jby1zZW5kLW1ldGhvZC1wdXJjaGFzZScpXHJcbiAgcHVibGljIHNob3dDbGFzcygpIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHVzZURlZmF1bHRMYXlvdXQ6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIHB1YmxpYyB1c2VEZWZhdWx0U2hpcHBpbmdNZXRob2RzOiBib29sZWFuID0gdHJ1ZTtcclxuICAvL3B1YmxpYyBzZWxlY3RlZFByaW50ZXI6IFByaW50ZXIgfCBudWxsID0gbnVsbFxyXG5cclxuICBwdWJsaWMgb3ZlcnJ1bGVPcHRpb25zOiBPdmVycnVsZU9wdGlvbnNbXSA9IFtcclxuICAgIHsgY29kZTogMSwgZGVzY3JpcHRpb246ICdQcmludCcgfSxcclxuICAgIHsgY29kZTogMiwgZGVzY3JpcHRpb246ICdFLW1haWwnIH0sXHJcbiAgICB7IGNvZGU6IDMsIGRlc2NyaXB0aW9uOiAnRURJJyB9XHJcbiAgXTtcclxuXHJcbiAgcHVibGljIG92ZXJydWxlZEVtYWlsOiBPdmVycnVsZU9wdGlvbnM7XHJcbiAgcHVibGljIG92ZXJydWxlZEVkaTogT3ZlcnJ1bGVPcHRpb25zO1xyXG4gIHB1YmxpYyBvdmVycnVsZWRQcmludDogT3ZlcnJ1bGVPcHRpb25zO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBzZW5kTWV0aG9kU2VydmljZTogU2VuZE1ldGhvZFNlcnZpY2VcclxuICApIHtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG5cclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVEZWZhdWx0UHJpbnRlclVzZXJDaGFuZ2UoY2hlY2tlZDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5zZW5kTWV0aG9kU2VydmljZS5yZXBvcnRpbmdEb2N1bWVudFByaW50U2lnbkRvY0Jhc2VSZXF1ZXN0LnNhdmVEZWZhdWx0UHJpbnRlckZvclVzZXIgPSBjaGVja2VkO1xyXG4gICAgdGhpcy5zZW5kTWV0aG9kU2VydmljZS5yZXBvcnRpbmdEb2N1bWVudFByaW50U2lnbkRvY0Jhc2VSZXF1ZXN0Q2hhbmdlZC5uZXh0KHRoaXMuc2VuZE1ldGhvZFNlcnZpY2UucmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlRGVmYXVsdFByaW50ZXJBbGxVc2Vyc0NoYW5nZShjaGVja2VkOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlbmRNZXRob2RTZXJ2aWNlLnJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3Quc2F2ZURlZmF1bHRQcmludGVyRm9yQWxsVXNlcnMgPSBjaGVja2VkO1xyXG4gICAgdGhpcy5zZW5kTWV0aG9kU2VydmljZS5yZXBvcnRpbmdEb2N1bWVudFByaW50U2lnbkRvY0Jhc2VSZXF1ZXN0Q2hhbmdlZC5uZXh0KHRoaXMuc2VuZE1ldGhvZFNlcnZpY2UucmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdXBkYXRlUHVyY2hhc2VNZXRob2QoKTogdm9pZCB7XHJcbiAgICBjb25zdCBzZWxlY3RlZFByaW50TGF5b3V0ID0gdGhpcy5wcmludExheW91dHMuZmluZChcclxuICAgICAgbCA9PiBsLnJlcG9ydElkID09PSB0aGlzLnNlbmRNZXRob2RTZXJ2aWNlLnJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3Q/LnJlcG9ydElkXHJcbiAgICApO1xyXG5cclxuICAgIGNvbnN0IHNlbGVjdGVkRW1haWxMYXlvdXQgPSB0aGlzLmVtYWlsTGF5b3V0cy5maW5kKFxyXG4gICAgICBsID0+IGwucmVwb3J0SWQgPT09IHRoaXMuc2VuZE1ldGhvZFNlcnZpY2UucmVwb3J0aW5nRG9jdW1lbnRFbWFpbFNpZ25Eb2NCYXNlUmVxdWVzdD8ucmVwb3J0SWRcclxuICAgICk7XHJcblxyXG4gICAgY29uc3Qgc2VsZWN0ZWRNZXRob2QgPSB7XHJcbiAgICAgIHVzZURlZmF1bHRMYXlvdXQ6IHRoaXMudXNlRGVmYXVsdExheW91dCxcclxuICAgICAgdXNlRGVmYXVsdFNoaXBwaW5nTWV0aG9kczogdGhpcy51c2VEZWZhdWx0U2hpcHBpbmdNZXRob2RzLFxyXG4gICAgICBvdmVycnVsZWRFbWFpbDogdGhpcy5vdmVycnVsZWRFbWFpbCxcclxuICAgICAgb3ZlcnJ1bGVkRWRpOiB0aGlzLm92ZXJydWxlZEVkaSxcclxuICAgICAgb3ZlcnJ1bGVkUHJpbnQ6IHRoaXMub3ZlcnJ1bGVkUHJpbnQsXHJcbiAgICAgIHByaW50ZXJOYW1lOiB0aGlzLnNlbmRNZXRob2RTZXJ2aWNlLnJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3Q/LnByaW50ZXJOYW1lLFxyXG4gICAgICByZXBvcnRJZEZvclByaW50aW5nOiBzZWxlY3RlZFByaW50TGF5b3V0LFxyXG4gICAgICByZXBvcnRJZEZvckVtYWlsOiBzZWxlY3RlZEVtYWlsTGF5b3V0LFxyXG4gICAgICBzYXZlRGVmYXVsdFByaW50ZXJGb3JVc2VyOiB0aGlzLnNlbmRNZXRob2RTZXJ2aWNlLnJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3Q/LnNhdmVEZWZhdWx0UHJpbnRlckZvclVzZXIgfHwgZmFsc2UsXHJcbiAgICAgIHNhdmVEZWZhdWx0UHJpbnRlckZvckFsbFVzZXJzOiB0aGlzLnNlbmRNZXRob2RTZXJ2aWNlLnJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3Q/LnNhdmVEZWZhdWx0UHJpbnRlckZvckFsbFVzZXJzIHx8IGZhbHNlXHJcbiAgICB9O1xyXG4gICAgdGhpcy5wdXJjaGFzZU1ldGhvZENoYW5nZWQuZW1pdChzZWxlY3RlZE1ldGhvZCk7XHJcbiAgfVxyXG5cclxuXHJcbn1cclxuIl19
155
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VuZC1tZXRob2QtcHVyY2hhc2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc2VuZC1tZXRob2QtZGlhbG9nL2NvbXBvbmVudHMvc2VuZC1tZXRob2QtcHVyY2hhc2Uvc2VuZC1tZXRob2QtcHVyY2hhc2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzdHLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBNEZwRSxNQUFNLE9BQU8sMkJBQTJCO0lBZ0R0QyxZQUNTLGlCQUFvQztRQUFwQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBOUN0QyxpQkFBWSxHQUFpQyxFQUFFLENBQUM7UUFHaEQsaUJBQVksR0FBaUMsRUFBRSxDQUFDO1FBTWhELGdCQUFXLEdBQWMsRUFBRSxDQUFDO1FBRzVCLFdBQU0sR0FBUSxFQUFFLENBQUM7UUFHakIsMEJBQXFCLEdBQVksS0FBSyxDQUFDO1FBR3ZDLG9CQUFlLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFHL0QsMkJBQXNCLEdBQXlCLElBQUksWUFBWSxFQUFVLENBQUM7UUFFaEUsMEJBQXFCLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7UUFPN0UscUJBQWdCLEdBQVksSUFBSSxDQUFDO1FBQ2pDLDhCQUF5QixHQUFZLElBQUksQ0FBQztRQUNqRCwrQ0FBK0M7UUFFeEMsb0JBQWUsR0FBc0I7WUFDMUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUU7WUFDakMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLFdB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e0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7U2VuZE1ldGhvZFNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2Uvc2VuZC1tZXRob2Quc2VydmljZSc7XHJcbmltcG9ydCB7UmVwb3J0TGF5b3V0U2VsZWN0aW9uRW1haWx9IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL3JlcG9ydC1sYXlvdXQtc2VsZWN0aW9uLWVtYWlsLmJvJztcclxuaW1wb3J0IHtSZXBvcnRMYXlvdXRTZWxlY3Rpb25QcmludH0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcmVwb3J0LWxheW91dC1zZWxlY3Rpb24tcHJpbnQuYm8nO1xyXG5pbXBvcnQge1ByaW50ZXJ9IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL3ByaW50ZXIuYm8nO1xyXG5cclxuaW50ZXJmYWNlIE92ZXJydWxlT3B0aW9ucyB7XHJcbiAgY29kZTogbnVtYmVyO1xyXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY28tc2VuZC1tZXRob2QtcHVyY2hhc2UnLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICAgIDxzcGFuIGNsYXNzPVwic2VuZC1tZXRob2RzLWxhYmVsXCIgW3RleHRDb250ZW50XT1cIidTRVRUSU5HUycgfCBzaGFyZWRMb2NhbGl6ZVwiPjwvc3Bhbj5cclxuICAgICAgPGRpdiBjbGFzcz1cInNhdmUtZGlhbG9nLWNvbnRlbnRzXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidXNlLWRlZmF1bHQtd3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgIDxjby1pbnB1dC1jaGVja2JveFxyXG4gICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwidXNlRGVmYXVsdExheW91dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ1JFTEFUSU9OX0xBWU9VVFMnIHwgc2hhcmVkTG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cInVwZGF0ZVB1cmNoYXNlTWV0aG9kKClcIj5cclxuICAgICAgICAgICAgICA8L2NvLWlucHV0LWNoZWNrYm94PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbmZvXCIgW3RleHRDb250ZW50XT1cIidSRUxBVElPTl9MQVlPVVRTX01FU1NBR0UnIHwgc2hhcmVkTG9jYWxpemVcIj48L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm92ZXJyaWRlLXNlbGVjdGlvbnMtd3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsYXlvdXQtc2VsZWN0aW9uc1wiPlxyXG4gICAgICAgICAgICAgICAgICA8Y28tbGF5b3V0LXNlbGVjdGlvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFsocmVxdWVzdCldPVwic2VuZE1ldGhvZFNlcnZpY2UucmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKHJlcXVlc3RDaGFuZ2UpPVwic2hvd0ZpbGVQcmV2aWV3LmVtaXQoKTsgdXBkYXRlUHVyY2hhc2VNZXRob2QoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKGxvYWREZWZhdWx0UHJpbnRlck5hbWUpPVwibG9hZERlZmF1bHRQcmludGVyTmFtZS5lbWl0KCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtsYXlvdXRzXT1cInByaW50TGF5b3V0c1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidQUklOVEVSX0xBWU9VVCdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFt1c2VEZWZhdWx0XT1cInVzZURlZmF1bHRMYXlvdXRcIj5cclxuICAgICAgICAgICAgICAgICAgPC9jby1sYXlvdXQtc2VsZWN0aW9uPlxyXG4gICAgICAgICAgICAgICAgICA8Y28tbGF5b3V0LXNlbGVjdGlvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFsocmVxdWVzdCldPVwic2VuZE1ldGhvZFNlcnZpY2UucmVwb3J0aW5nRG9jdW1lbnRFbWFpbFNpZ25Eb2NCYXNlUmVxdWVzdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKHJlcXVlc3RDaGFuZ2UpPVwic2hvd0ZpbGVQcmV2aWV3LmVtaXQoKTsgdXBkYXRlUHVyY2hhc2VNZXRob2QoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2xheW91dHNdPVwiZW1haWxMYXlvdXRzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ0VNQUlMX0xBWU9VVCdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFt1c2VEZWZhdWx0XT1cInVzZURlZmF1bHRMYXlvdXRcIj5cclxuICAgICAgICAgICAgICAgICAgPC9jby1sYXlvdXQtc2VsZWN0aW9uPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxjby1wcmludGVyLXNlbGVjdGlvbiBbZGVmYXVsdFByaW50ZXJdPVwiZGVmYXVsdFByaW50ZXJcIiBbcHJpbnRlcnNdPVwicHJpbnRlckxpc3RcIj48L2NvLXByaW50ZXItc2VsZWN0aW9uPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhZGRpdGlvbmFsLWNoZWNrc1wiPlxyXG4gICAgICAgICAgICAgICAgICA8Y28taW5wdXQtY2hlY2tib3hcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbbW9kZWxdPVwic2VuZE1ldGhvZFNlcnZpY2UucmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdC5zYXZlRGVmYXVsdFByaW50ZXJGb3JVc2VyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ0tvcHBlbGluZyBvbnRob3VkZW4nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwiaGFuZGxlRGVmYXVsdFByaW50ZXJVc2VyQ2hhbmdlKCRldmVudCk7IHVwZGF0ZVB1cmNoYXNlTWV0aG9kKClcIj5cclxuICAgICAgICAgICAgICAgICAgPC9jby1pbnB1dC1jaGVja2JveD5cclxuICAgICAgICAgICAgICAgICAgPGNvLWlucHV0LWNoZWNrYm94XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVsXT1cInNlbmRNZXRob2RTZXJ2aWNlLnJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3Quc2F2ZURlZmF1bHRQcmludGVyRm9yQWxsVXNlcnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInQWxsZSBnZWJydWlrZXJzJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cImhhbmRsZURlZmF1bHRQcmludGVyQWxsVXNlcnNDaGFuZ2UoJGV2ZW50KTsgdXBkYXRlUHVyY2hhc2VNZXRob2QoKVwiPlxyXG4gICAgICAgICAgICAgICAgICA8L2NvLWlucHV0LWNoZWNrYm94PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwib3ZlcnJpZGUtbWV0aG9kcy13cmFwcGVyXCI+XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNlbmQtbWV0aG9kcy1sYWJlbFwiIFt0ZXh0Q29udGVudF09XCInU0hJUFBJTkdfTUVUSE9EX1NFVFRJTkdTJyB8IHNoYXJlZExvY2FsaXplXCI+PC9zcGFuPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInVzZS1kZWZhdWx0LXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgICA8Y28taW5wdXQtY2hlY2tib3hcclxuICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cInVzZURlZmF1bHRTaGlwcGluZ01ldGhvZHNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidTSElQUElOR19NRVRIT0RfU1RBTkRBUkRfU0VUVElOR1MnIHwgc2hhcmVkTG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cInVwZGF0ZVB1cmNoYXNlTWV0aG9kKClcIj5cclxuICAgICAgICAgICAgICA8L2NvLWlucHV0LWNoZWNrYm94PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpcHBpbmctbWV0aG9kc1wiICpuZ0lmPVwiIXVzZURlZmF1bHRTaGlwcGluZ01ldGhvZHNcIj5cclxuICAgICAgICAgICAgICA8Y28tbGlzdC1vZi12YWx1ZXNcclxuICAgICAgICAgICAgICAgICAgICAgIFtkaXNwbGF5RmllbGRdPVwiJ2Rlc2NyaXB0aW9uJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJvdmVycnVsZWRFbWFpbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ09WRVJSVUxFX1ZJQV9FTUFJTCcgfCBzaGFyZWRMb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJvdmVycnVsZU9wdGlvbnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cInVwZGF0ZVB1cmNoYXNlTWV0aG9kKClcIj5cclxuICAgICAgICAgICAgICA8L2NvLWxpc3Qtb2YtdmFsdWVzPlxyXG4gICAgICAgICAgICAgIDxjby1saXN0LW9mLXZhbHVlc1xyXG4gICAgICAgICAgICAgICAgICAgICAgW2Rpc3BsYXlGaWVsZF09XCInZGVzY3JpcHRpb24nXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cIm92ZXJydWxlZEVkaVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ09WRVJSVUxFX1ZJQV9FREknIHwgc2hhcmVkTG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW2NvbGxlY3Rpb25dPVwib3ZlcnJ1bGVPcHRpb25zXCJcclxuICAgICAgICAgICAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJ1cGRhdGVQdXJjaGFzZU1ldGhvZCgpXCI+XHJcbiAgICAgICAgICAgICAgPC9jby1saXN0LW9mLXZhbHVlcz5cclxuICAgICAgICAgICAgICA8Y28tbGlzdC1vZi12YWx1ZXNcclxuICAgICAgICAgICAgICAgICAgICAgIFtkaXNwbGF5RmllbGRdPVwiJ2Rlc2NyaXB0aW9uJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJvdmVycnVsZWRQcmludFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ09WRVJSVUxFX1ZJQV9QUklOVCcgfCBzaGFyZWRMb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJvdmVycnVsZU9wdGlvbnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cInVwZGF0ZVB1cmNoYXNlTWV0aG9kKClcIj5cclxuICAgICAgICAgICAgICA8L2NvLWxpc3Qtb2YtdmFsdWVzPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2VuZE1ldGhvZFB1cmNoYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZW1haWxMYXlvdXRzOiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25FbWFpbFtdID0gW107XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHByaW50TGF5b3V0czogUmVwb3J0TGF5b3V0U2VsZWN0aW9uUHJpbnRbXSA9IFtdO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBkZWZhdWx0UHJpbnRlcjogUHJpbnRlcjtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgcHJpbnRlckxpc3Q6IFByaW50ZXJbXSA9IFtdO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBwZGZEb2M6IGFueSA9ICcnO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBlbWFpbFVuc2lnbmVkUG9zc2libGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHNob3dGaWxlUHJldmlldzogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgbG9hZERlZmF1bHRQcmludGVyTmFtZTogRXZlbnRFbWl0dGVyPG51bWJlcj4gPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcclxuXHJcbiAgQE91dHB1dCgpIHB1YmxpYyBwdXJjaGFzZU1ldGhvZENoYW5nZWQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcblxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuY28tc2VuZC1tZXRob2QtcHVyY2hhc2UnKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB1c2VEZWZhdWx0TGF5b3V0OiBib29sZWFuID0gdHJ1ZTtcclxuICBwdWJsaWMgdXNlRGVmYXVsdFNoaXBwaW5nTWV0aG9kczogYm9vbGVhbiA9IHRydWU7XHJcbiAgLy9wdWJsaWMgc2VsZWN0ZWRQcmludGVyOiBQcmludGVyIHwgbnVsbCA9IG51bGxcclxuXHJcbiAgcHVibGljIG92ZXJydWxlT3B0aW9uczogT3ZlcnJ1bGVPcHRpb25zW10gPSBbXHJcbiAgICB7IGNvZGU6IDEsIGRlc2NyaXB0aW9uOiAnUHJpbnQnIH0sXHJcbiAgICB7IGNvZGU6IDIsIGRlc2NyaXB0aW9uOiAnRS1tYWlsJyB9LFxyXG4gICAgeyBjb2RlOiAzLCBkZXNjcmlwdGlvbjogJ0VESScgfSxcclxuICAgIHsgY29kZTogOCwgZGVzY3JpcHRpb246ICdQREYnIH1cclxuICBdO1xyXG5cclxuICBwdWJsaWMgb3ZlcnJ1bGVkRW1haWw6IE92ZXJydWxlT3B0aW9ucztcclxuICBwdWJsaWMgb3ZlcnJ1bGVkRWRpOiBPdmVycnVsZU9wdGlvbnM7XHJcbiAgcHVibGljIG92ZXJydWxlZFByaW50OiBPdmVycnVsZU9wdGlvbnM7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHNlbmRNZXRob2RTZXJ2aWNlOiBTZW5kTWV0aG9kU2VydmljZVxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcblxyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZURlZmF1bHRQcmludGVyVXNlckNoYW5nZShjaGVja2VkOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlbmRNZXRob2RTZXJ2aWNlLnJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3Quc2F2ZURlZmF1bHRQcmludGVyRm9yVXNlciA9IGNoZWNrZWQ7XHJcbiAgICB0aGlzLnNlbmRNZXRob2RTZXJ2aWNlLnJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3RDaGFuZ2VkLm5leHQodGhpcy5zZW5kTWV0aG9kU2VydmljZS5yZXBvcnRpbmdEb2N1bWVudFByaW50U2lnbkRvY0Jhc2VSZXF1ZXN0KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVEZWZhdWx0UHJpbnRlckFsbFVzZXJzQ2hhbmdlKGNoZWNrZWQ6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIHRoaXMuc2VuZE1ldGhvZFNlcnZpY2UucmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdC5zYXZlRGVmYXVsdFByaW50ZXJGb3JBbGxVc2VycyA9IGNoZWNrZWQ7XHJcbiAgICB0aGlzLnNlbmRNZXRob2RTZXJ2aWNlLnJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3RDaGFuZ2VkLm5leHQodGhpcy5zZW5kTWV0aG9kU2VydmljZS5yZXBvcnRpbmdEb2N1bWVudFByaW50U2lnbkRvY0Jhc2VSZXF1ZXN0KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB1cGRhdGVQdXJjaGFzZU1ldGhvZCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IHNlbGVjdGVkUHJpbnRMYXlvdXQgPSB0aGlzLnByaW50TGF5b3V0cy5maW5kKFxyXG4gICAgICBsID0+IGwucmVwb3J0SWQgPT09IHRoaXMuc2VuZE1ldGhvZFNlcnZpY2UucmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdD8ucmVwb3J0SWRcclxuICAgICk7XHJcblxyXG4gICAgY29uc3Qgc2VsZWN0ZWRFbWFpbExheW91dCA9IHRoaXMuZW1haWxMYXlvdXRzLmZpbmQoXHJcbiAgICAgIGwgPT4gbC5yZXBvcnRJZCA9PT0gdGhpcy5zZW5kTWV0aG9kU2VydmljZS5yZXBvcnRpbmdEb2N1bWVudEVtYWlsU2lnbkRvY0Jhc2VSZXF1ZXN0Py5yZXBvcnRJZFxyXG4gICAgKTtcclxuXHJcbiAgICBjb25zdCBzZWxlY3RlZE1ldGhvZCA9IHtcclxuICAgICAgdXNlRGVmYXVsdExheW91dDogdGhpcy51c2VEZWZhdWx0TGF5b3V0LFxyXG4gICAgICB1c2VEZWZhdWx0U2hpcHBpbmdNZXRob2RzOiB0aGlzLnVzZURlZmF1bHRTaGlwcGluZ01ldGhvZHMsXHJcbiAgICAgIG92ZXJydWxlZEVtYWlsOiB0aGlzLm92ZXJydWxlZEVtYWlsLFxyXG4gICAgICBvdmVycnVsZWRFZGk6IHRoaXMub3ZlcnJ1bGVkRWRpLFxyXG4gICAgICBvdmVycnVsZWRQcmludDogdGhpcy5vdmVycnVsZWRQcmludCxcclxuICAgICAgcHJpbnRlck5hbWU6IHRoaXMuc2VuZE1ldGhvZFNlcnZpY2UucmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdD8ucHJpbnRlck5hbWUsXHJcbiAgICAgIHJlcG9ydElkRm9yUHJpbnRpbmc6IHNlbGVjdGVkUHJpbnRMYXlvdXQsXHJcbiAgICAgIHJlcG9ydElkRm9yRW1haWw6IHNlbGVjdGVkRW1haWxMYXlvdXQsXHJcbiAgICAgIHNhdmVEZWZhdWx0UHJpbnRlckZvclVzZXI6IHRoaXMuc2VuZE1ldGhvZFNlcnZpY2UucmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdD8uc2F2ZURlZmF1bHRQcmludGVyRm9yVXNlciB8fCBmYWxzZSxcclxuICAgICAgc2F2ZURlZmF1bHRQcmludGVyRm9yQWxsVXNlcnM6IHRoaXMuc2VuZE1ldGhvZFNlcnZpY2UucmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdD8uc2F2ZURlZmF1bHRQcmludGVyRm9yQWxsVXNlcnMgfHwgZmFsc2VcclxuICAgIH07XHJcbiAgICB0aGlzLnB1cmNoYXNlTWV0aG9kQ2hhbmdlZC5lbWl0KHNlbGVjdGVkTWV0aG9kKTtcclxuICB9XHJcblxyXG5cclxufVxyXG4iXX0=