iptdevs-design-system 3.1.899 → 3.1.901

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.
@@ -76,8 +76,10 @@ export class CodFormComponent {
76
76
  }
77
77
  }
78
78
  getFormAction(action) {
79
- if (!this.isRenovation) {
80
- if (!this.financingData && this.localStorageCOD.getCodFormData(4, 'payment_method') === '1') {
79
+ console.log(this.isRenovation);
80
+ console.log(this.financingData);
81
+ if (this.isRenovation == true) {
82
+ if (this.localStorageCOD.getCodFormData(4, 'payment_method') === '1') {
81
83
  Swal.fire({
82
84
  title: 'Querido asesor',
83
85
  text: 'Debe hacer el cálculo de las cuotas en el paso 4',
@@ -85,9 +87,10 @@ export class CodFormComponent {
85
87
  });
86
88
  return;
87
89
  }
90
+ this.financingData = [];
88
91
  }
89
92
  else {
90
- if (this.localStorageCOD.getCodFormData(4, 'payment_method') === '1') {
93
+ if (!this.financingData && this.localStorageCOD.getCodFormData(4, 'payment_method') === '1') {
91
94
  Swal.fire({
92
95
  title: 'Querido asesor',
93
96
  text: 'Debe hacer el cálculo de las cuotas en el paso 4',
@@ -434,4 +437,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
434
437
  }], okCreatedCOD: [{
435
438
  type: Output
436
439
  }] } });
437
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvZC9jb2QtZm9ybS9jb2QtZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29kL2NvZC1mb3JtL2NvZC1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQTRCLE1BQU0sZUFBZSxDQUFDO0FBRTVHLE9BQU8sSUFBSSxNQUFNLGFBQWEsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7O0FBYy9CLE1BQU0sT0FBTyxnQkFBZ0I7SUEwQjNCLFlBQ1UsV0FBd0IsRUFDeEIsZUFBdUMsRUFDdkMsZUFBZ0MsRUFDaEMsaUJBQW9DLEVBQ3BDLGdCQUFrQztRQUpsQyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixvQkFBZSxHQUFmLGVBQWUsQ0FBd0I7UUFDdkMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQXRCbEMsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRzdDLGlCQUFZLEdBQWE7WUFDL0IsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRTtTQUN0QyxDQUFDO1FBRUssZ0JBQVcsR0FBVyxDQUFDLENBQUM7UUFDeEIsY0FBUyxHQUFXLGtDQUFrQyxDQUFDO1FBRXZELGNBQVMsR0FBVyxDQUFDLENBQUM7UUFFdEIsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUMzQixrQkFBYSxHQUFXLEVBQUUs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UUFDWCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsdUJBQXVCLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNyRSxJQUFJLENBQUMsYUFBYSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUM7UUFDckMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzs2R0ExYVUsZ0JBQWdCO2lHQUFoQixnQkFBZ0IsMFVDaEI3QixpL0ZBbUNBOzJGRG5CYSxnQkFBZ0I7a0JBTDVCLFNBQVM7K0JBQ0UsY0FBYztvT0FNZixzQkFBc0I7c0JBQTlCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxzQkFBc0I7c0JBQTlCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFFSSxZQUFZO3NCQUFyQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcywgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCBTd2FsIGZyb20gJ3N3ZWV0YWxlcnQyJztcbmltcG9ydCB7IENyZWF0ZUNPRFJxLCBJVXBkYXRlQ09EUnEgfSBmcm9tICcuLi8uLi9jb3JlL21vZGVscy9jb2QvY29kLXJxLm1vZGVsJztcbmltcG9ydCB7IENvbW1lcmNpYWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9zZXJ2aWNlcy9jb21tZXJjaWFsLXNlcnZpY2UvY29tZXJjaWFsLnNlcnZpY2UnO1xuaW1wb3J0IHsgQmFzZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL3V0aWxzL2Jhc2Utc2VydmljZS9iYXNlLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29kRm9ybUNvbnRyb2xzLCBDb250cm9sIH0gZnJvbSAnLi4vbG9naWMvY29kLWZvcm0tY29udHJvbHMnO1xuaW1wb3J0IHsgTG9jYWxTdG9yYWdlQ09EU2VydmljZSB9IGZyb20gJy4uL2xvZ2ljL2xvY2FsLXN0b3JhZ2UtY29kLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGFyYW1ldGVyU2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvc2VydmljZXMvcGFyYW1ldGVycy1zZXJ2aWNlL3BhcmFtZXRlcnMuc2VydmljZSc7XG5pbXBvcnQgeyBJUGFyYW1ldGVyc0FsbFJzIH0gZnJvbSAnLi4vLi4vY29yZS9tb2RlbHMvcGFyYW1ldGVycy9wYXJhbWV0ZXJzLXJzLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXB0LWNvZC1mb3JtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvZC1mb3JtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbXVxufSlcbmV4cG9ydCBjbGFzcyBDb2RGb3JtQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuXG4gIEBJbnB1dCgpIGRhdGFGcm9tUHJldml1c0NvZERhdGE/OiBhbnk7XG4gIEBJbnB1dCgpIGNvdXJzZVNlbGVjdD86IGFueTtcbiAgQElucHV0KCkgaXNOZXdDb2QhOiBib29sZWFuO1xuICBASW5wdXQoKSBlZGl0Q29kITogYm9vbGVhbjtcbiAgQElucHV0KCkgQ291cnNlU2VsZWN0UmVub3ZhdGlvbiE6YW55O1xuICBASW5wdXQoKSBpc1Jlbm92YXRpb24/OmJvb2xlYW47XG5cbiAgQE91dHB1dCgpIG9rQ3JlYXRlZENPRCA9IG5ldyBFdmVudEVtaXR0ZXI8Qm9vbGVhbj4oKTtcbiAgc3Vic2NyaXB0aW9uPzogU3Vic2NyaXB0aW9uO1xuXG4gIHByaXZhdGUgYWxsb3dlZFJvbGVzOiBudW1iZXJbXSA9IFtcbiAgICAxLCAzMCwgMzEsIDMyLCA0MCwgNDEsIDQyLCA1MCwgNTEsIDUyLFxuICBdO1xuXG4gIHB1YmxpYyBjdXJyZW50U3RlcDogbnVtYmVyID0gMDtcbiAgcHVibGljIGZvcm1UaXRsZTogc3RyaW5nID0gJ0Zvcm11bGFyaW8gcGFyYSBjcmVhY2nDs24gZGVsIENPRCc7XG4gIHB1YmxpYyB1c2VyUm9sZTogbnVtYmVyO1xuICBwdWJsaWMgZm9ybVN0ZXBzOiBudW1iZXIgPSA1O1xuICBwdWJsaWMgZmluYW5jaW5nRGF0YT86IGFueVtdO1xuICBwdWJsaWMgaXNMb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XG4gIHB1YmxpYyBsb2FkZXJNZXNzYWdlOiBzdHJpbmcgPSAnJztcbiAgcHVibGljIGNvZENyZWF0aW9uU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gfCBudWxsID0gbnVsbDtcbiAgcHVibGljIHBhcmFtZXRlcnNBbGw/OklQYXJhbWV0ZXJzQWxsUnM7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBiYXNlU2VydmljZTogQmFzZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBsb2NhbFN0b3JhZ2VDT0Q6IExvY2FsU3RvcmFnZUNPRFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb2RGb3JtQ29udHJvbHM6IENvZEZvcm1Db250cm9scyxcbiAgICBwcml2YXRlIGNvbW1lcmNpYWxTZXJ2aWNlOiBDb21tZXJjaWFsU2VydmljZSxcbiAgICBwcml2YXRlIHBhcmFtZXRlclNlcnZpY2U6IFBhcmFtZXRlclNlcnZpY2UsXG4gICkge1xuICAgIHRoaXMudXNlclJvbGUgPSB0aGlzLmJhc2VTZXJ2aWNlLmdldFVzZXJSb2xlKCk7XG4gICAgdGhpcy5nZXRQYXJhbWV0ZXJzKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZXNbJ2VkaXRDb2QnXSAmJiB0aGlzLmRhdGFGcm9tUHJldml1c0NvZERhdGEpIHtcbiAgICAgIGlmICh0aGlzLmVkaXRDb2QpIHtcbiAgICAgICAgaWYgKCF0aGlzLmRhdGFGcm9tUHJldml1c0NvZERhdGEuZWRpdF9jb3Vyc2VfcGF5bWVudCkge1xuICAgICAgICAgIFN3YWwuZmlyZSh7XG4gICAgICAgICAgICB0aXRsZTogJ1F1ZXJpZG8gYXNlc29yJyxcbiAgICAgICAgICAgIHRleHQ6ICdTb2xvIHB1ZWRlIGVkaXRhciBEYXRvcyBkZWwgZXN0dWRpYW50ZScsXG4gICAgICAgICAgICBpY29uOiAnd2FybmluZydcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICAgIHRoaXMuZm9ybVRpdGxlID0gJ0Zvcm11bGFyaW8gcGFyYSB2ZXJpZmljYXIgeSBlZGl0YXIgaW5mb3JtYWNpw7NuIGRlbCBDT0QgYWN0dWFsJztcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5kYXRhRnJvbVByZXZpdXNDb2REYXRhPy5jb2RfcmVub3ZhdGlvbiA9PSBmYWxzZSAmJiB0aGlzLmVkaXRDb2QgPT0gZmFsc2UpIHtcbiAgICAgICAgdGhpcy5mb3JtVGl0bGUgPSAnRm9ybXVsYXJpbyBwYXJhIGNyZWFjacOzbiBkZWwgQ09EJztcbiAgICAgIH1lbHNlIGlmKHRoaXMuZGF0YUZyb21QcmV2aXVzQ29kRGF0YS5jb2RfcmVub3ZhdGlvbiA9PSB0cnVlICYmIHRoaXMuZWRpdENvZCA9PSBmYWxzZSl7XG4gICAgICAgIHRoaXMuZm9ybVRpdGxlID0gJ0Zvcm11bGFyaW8gcGFyYSBsYSByZW5vdmFjaW9uIGRlbCBDT0QnO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBhbGxvd2VkUm9sZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5hbGxvd2VkUm9sZXMuaW5jbHVkZXModGhpcy51c2VyUm9sZSk7XG4gIH1cblxuICBnZXRDb2RieUNvZGUoKSB7XG4gICAgLy8gVE9ETzogVHJhZXIgQ09EIHBvciBjw7NkaWdvIHkgcGludGFybG9cbiAgfVxuXG5cbiAgc2F2ZUZpbmFuY2luZ0RhdGEoZGF0YTogYW55W10pIHtcbiAgICBpZiAoZGF0YSkge1xuICAgICAgY29uc3QgZGF0ZXM6IHN0cmluZ1tdID0gW107XG4gICAgICBkYXRhLmZvckVhY2gocCA9PiB7XG4gICAgICAgIGNvbnN0IGRhdGUgPSBwWzJdO1xuICAgICAgICBkYXRlcy5wdXNoKGRhdGUpO1xuICAgICAgfSlcbiAgICAgIHRoaXMuZmluYW5jaW5nRGF0YSA9IGRhdGVzO1xuICAgIH1cbiAgfVxuXG4gIGdldEZvcm1BY3Rpb24oYWN0aW9uOiBzdHJpbmcpIHtcbiAgICBpZiAoIXRoaXMuaXNSZW5vdmF0aW9uKSB7XG4gICAgICBpZiAoIXRoaXMuZmluYW5jaW5nRGF0YSAgJiYgdGhpcy5sb2NhbFN0b3JhZ2VDT0QuZ2V0Q29kRm9ybURhdGEoNCwgJ3BheW1lbnRfbWV0aG9kJykgPT09ICcxJykge1xuICAgICAgICBTd2FsLmZpcmUoe1xuICAgICAgICAgIHRpdGxlOiAnUXVlcmlkbyBhc2Vzb3InLFxuICAgICAgICAgIHRleHQ6ICdEZWJlIGhhY2VyIGVsIGPDoWxjdWxvIGRlIGxhcyBjdW90YXMgZW4gZWwgcGFzbyA0JyxcbiAgICAgICAgICBpY29uOiAnZXJyb3InXG4gICAgICAgIH0pXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICB9ZWxzZXtcbiAgICAgIGlmICh0aGlzLmxvY2FsU3RvcmFnZUNPRC5nZXRDb2RGb3JtRGF0YSg0LCAncGF5bWVudF9tZXRob2QnKSA9PT0gJzEnKSB7XG4gICAgICAgIFN3YWwuZmlyZSh7XG4gICAgICAgICAgdGl0bGU6ICdRdWVyaWRvIGFzZXNvcicsXG4gICAgICAgICAgdGV4dDogJ0RlYmUgaGFjZXIgZWwgY8OhbGN1bG8gZGUgbGFzIGN1b3RhcyBlbiBlbCBwYXNvIDQnLFxuICAgICAgICAgIGljb246ICdlcnJvcidcbiAgICAgICAgfSlcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cbiAgICBjb25zdCB0b3RhbERhdGE6IGFueVtdID0gW107XG5cbiAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHRoaXMuY29kRm9ybUNvbnRyb2xzLmdldENvbnRyb2xWYWx1ZXMoKS5zdWJzY3JpYmUoKGNvbnRyb2xzKSA9PiB7XG4gICAgICAgIGZvciAobGV0IGkgPSAxOyBpIDw9IHRoaXMuZm9ybVN0ZXBzOyBpKyspIHtcbiAgICAgICAgICBsZXQgY29udHJvbHNCeVN0ZXA6IENvbnRyb2xbXSA9IGNvbnRyb2xzW2ktMV07XG4gICAgICAgICAgICBjb250cm9sc0J5U3RlcC5mb3JFYWNoKGNvbnRyb2wgPT4ge1xuICAgICAgICAgICAgICBsZXQgdmFsdWUgPSB0aGlzLmxvY2FsU3RvcmFnZUNPRC5nZXRDb2RGb3JtRGF0YShpLCBjb250cm9sLm5hbWUpO1xuICAgICAgICAgICAgICAvLyBDYW1iaWFyIFRydWUvRmFsc2UgZGVsIG11bHRpY3VsdHVyYWxpc21vIDEvMFxuICAgICAgICAgICAgICBpZiAodmFsdWUgPT09ICdmYWxzZScgJiYgY29udHJvbC5kZXNjcmlwdGlvbiA9PT0gJ011bHRpY3VsdHVyYWxpc21vJykge1xuICAgICAgICAgICAgICAgIHRvdGFsRGF0YS5wdXNoKHtcbiAgICAgICAgICAgICAgICAgIGNvbnRyb2w6IGNvbnRyb2wubmFtZSxcbiAgICAgICAgICAgICAgICAgIGlzUmVxdWlyZWQ6IGNvbnRyb2wucmVxdWlyZWQsXG4gICAgICAgICAgICAgICAgICB2YWx1ZTogJzAnLFxuICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IGNvbnRyb2wuZGVzY3JpcHRpb25cbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICB9IGVsc2UgaWYgKHZhbHVlID09PSAndHJ1ZScgJiYgY29udHJvbC5kZXNjcmlwdGlvbiA9PT0gJ011bHRpY3VsdHVyYWxpc21vJykge1xuICAgICAgICAgICAgICAgIHRvdGFsRGF0YS5wdXNoKHtcbiAgICAgICAgICAgICAgICAgIGNvbnRyb2w6IGNvbnRyb2wubmFtZSxcbiAgICAgICAgICAgICAgICAgIGlzUmVxdWlyZWQ6IGNvbnRyb2wucmVxdWlyZWQsXG4gICAgICAgICAgICAgICAgICB2YWx1ZTogJzEnLFxuICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IGNvbnRyb2wuZGVzY3JpcHRpb25cbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRvdGFsRGF0YS5wdXNoKHtcbiAgICAgICAgICAgICAgICAgIGNvbnRyb2w6IGNvbnRyb2wubmFtZSxcbiAgICAgICAgICAgICAgICAgIGlzUmVxdWlyZWQ6IGNvbnRyb2wucmVxdWlyZWQsXG4gICAgICAgICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBjb250cm9sLmRlc2NyaXB0aW9uXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIC8vIFZhbGlkYXIgZXJyb3Jlc1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0b3RhbERhdGEubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3QgZWxlbWVudCA9IHRvdGFsRGF0YVtpXTtcbiAgICAgICAgaWYgKCFlbGVtZW50LnZhbHVlICYmIGVsZW1lbnQuaXNSZXF1aXJlZCkge1xuICAgICAgICAgIFN3YWwuZmlyZSh7XG4gICAgICAgICAgICB0aXRsZTogJ0Vycm9yIEZvcm0gQWN0aW9uIFZhbGlkYXRlIEVycm9yJyxcbiAgICAgICAgICAgIHRleHQ6IGBSZXZpc2FyIGVsIGNhbXBvOiBcIiR7ZWxlbWVudC5kZXNjcmlwdGlvbn1cImAsXG4gICAgICAgICAgICBpY29uOiAnZXJyb3InXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKGFjdGlvbiA9PT0gJ2NyZWF0ZScpIHRoaXMuY3JlYXRlQ09EKHRvdGFsRGF0YSk7XG4gICAgICBpZiAoYWN0aW9uID09PSAndXBkYXRlJykgdGhpcy51cGRhdGVDT0QodG90YWxEYXRhKTtcbiAgICB9KVxuXG4gICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHVwZGF0ZUNPRCh0b3RhbERhdGE6IGFueVtdKSB7XG4gICAgaWYgKHRoaXMuY29kQ3JlYXRpb25TdWJzY3JpcHRpb24gJiYgIXRoaXMuY29kQ3JlYXRpb25TdWJzY3JpcHRpb24uY2xvc2VkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICB0aGlzLmxvYWRlck1lc3NhZ2UgPSAnRWRpdGFuZG8gQ09ELCBlc3BlcmUgdW4gbW9tZW50bydcbiAgICBsZXQgcmVxdWVzdDogSVVwZGF0ZUNPRFJxID0gdGhpcy5nZXRVcGRhdGVDT0QodG90YWxEYXRhKTtcbiAgICB0aGlzLmNvbW1lcmNpYWxTZXJ2aWNlLnVwZGF0ZUNPRChyZXF1ZXN0KS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKHJlc3BvbnNlOiBhbnkpID0+IHtcbiAgICAgICAgaWYgKHJlc3BvbnNlLm1lc3NhZ2UuY29kZSA9PT0gMSkge1xuICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgdGhpcy5sb2FkZXJNZXNzYWdlID0gJyc7XG4gICAgICAgICAgU3dhbC5maXJlKHtcbiAgICAgICAgICAgIHRpdGxlOiAnUGVyZmVjdG8hJyxcbiAgICAgICAgICAgIHRleHQ6ICdFbCBDT0QgaGEgc2lkbyBFZGl0YWRvIGV4aXRvc2FtZW50ZS4nLFxuICAgICAgICAgICAgaWNvbjogJ3N1Y2Nlc3MnXG4gICAgICAgICAgfSlcbiAgICAgICAgICB0aGlzLmxvY2FsU3RvcmFnZUNPRC5jbGVhckRhdGEoKTtcbiAgICAgICAgICB0aGlzLm9rQ3JlYXRlZENPRC5lbWl0KHRydWUpO1xuICAgICAgICB9IGVsc2UgaWYgKHJlc3BvbnNlLm1lc3NhZ2UuY29kZSA9PT0gNCkge1xuICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgdGhpcy5sb2FkZXJNZXNzYWdlID0gJyc7XG4gICAgICAgICAgY29uc3QgZXJyb3JNZXNzYWdlcyA9IChyZXNwb25zZS5kYXRhLmVycm9ycyBhcyBhbnlbXSkubWFwKGVycm9yID0+IGAtICR7ZXJyb3IubWVzc2FnZX1gKS5qb2luKCc8YnI+Jyk7XG5cbiAgICAgICAgICBTd2FsLmZpcmUoe1xuICAgICAgICAgICAgdGl0bGU6ICdSZXZpc2FyIGxvIHNlbGVjY2lvbmFkbyBlbiBsb3MgY2FtcG9zJyxcbiAgICAgICAgICAgIGh0bWw6IGAke2Vycm9yTWVzc2FnZXN9YCxcbiAgICAgICAgICAgIGljb246ICd3YXJuaW5nJ1xuICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgdGhpcy5sb2FkZXJNZXNzYWdlID0gJyc7XG5cbiAgICAgICAgICBTd2FsLmZpcmUoe1xuICAgICAgICAgICAgdGl0bGU6ICdXYXJuaW5nIScsXG4gICAgICAgICAgICB0ZXh0OiByZXNwb25zZS5tZXNzYWdlLm1lc3NhZ2UsXG4gICAgICAgICAgICBpY29uOiAnZXJyb3InXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5sb2FkZXJNZXNzYWdlID0gJyc7XG4gICAgICAgIFN3YWwuZmlyZSh7XG4gICAgICAgICAgdGl0bGU6ICdFcnJvciBpbiBjb2QgY3JlYXRpb24nLFxuICAgICAgICAgIHRleHQ6IGVyci5tZXNzYWdlLFxuICAgICAgICAgIGljb246ICdlcnJvcidcbiAgICAgICAgfSlcbiAgICAgIH0sXG4gICAgICBjb21wbGV0ZTogKCkgPT4ge1xuICAgICAgICB0aGlzLmNvZENyZWF0aW9uU3Vic2NyaXB0aW9uID0gbnVsbDtcbiAgICAgIH1cbiAgICB9KVxuXG4gIH1cblxuICBjcmVhdGVDT0QodG90YWxEYXRhOiBhbnlbXSkge1xuICAgIGlmICh0aGlzLmNvZENyZWF0aW9uU3Vic2NyaXB0aW9uICYmICF0aGlzLmNvZENyZWF0aW9uU3Vic2NyaXB0aW9uLmNsb3NlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gICAgdGhpcy5sb2FkZXJNZXNzYWdlID0gJ0NyZWFuZG8gQ09ELCBlc3BlcmUgdW4gbW9tZW50bydcbiAgICBsZXQgcmVxdWVzdDogQ3JlYXRlQ09EUnEgPSB0aGlzLmdldENyZWF0ZUNPRCh0b3RhbERhdGEpO1xuICAgIHRoaXMuY29tbWVyY2lhbFNlcnZpY2UuY3JlYXRlQ09EKHJlcXVlc3QpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAocmVzcG9uc2U6IGFueSkgPT4ge1xuICAgICAgICBpZiAocmVzcG9uc2UubWVzc2FnZS5jb2RlID09PSAxKSB7XG4gICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLmxvYWRlck1lc3NhZ2UgPSAnJztcbiAgICAgICAgICBTd2FsLmZpcmUoe1xuICAgICAgICAgICAgdGl0bGU6ICdQZXJmZWN0byEnLFxuICAgICAgICAgICAgdGV4dDogJ0VsIENPRCBoYSBzaWRvIGNyZWFkbyBleGl0b3NhbWVudGUuJyxcbiAgICAgICAgICAgIGljb246ICdzdWNjZXNzJ1xuICAgICAgICAgIH0pXG4gICAgICAgICAgdGhpcy5sb2NhbFN0b3JhZ2VDT0QuY2xlYXJEYXRhKCk7XG4gICAgICAgICAgdGhpcy5va0NyZWF0ZWRDT0QuZW1pdCh0cnVlKTtcbiAgICAgICAgfWVsc2UgaWYocmVzcG9uc2UubWVzc2FnZS5jb2RlID09PSAzKXtcbiAgICAgICAgICBsZXQgYWxlcnRIdG1sID0gYFxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS1jdXN0b20tYWxlcnRcIj5cbiAgICAgICAgICAgICAgPGgyPldhcm5pbmchPC9oMj5cbiAgICAgICAgICBgO1xuICAgICAgICAgICAgaWYgKCFyZXNwb25zZS5kYXRhLndhcm5pbmcuYXZlcmFnZV9zY29yZSkge1xuICAgICAgICAgICAgICAgIGFsZXJ0SHRtbCArPSBgPHA+Tm8gcGFzw7MgZWwgcHJvbWVkaW8gZmluYWw8L3A+PGJyPmA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIXJlc3BvbnNlLmRhdGEud2FybmluZy5ub25fYXR0ZW5kYW5jZSkge1xuICAgICAgICAgICAgICAgIGFsZXJ0SHRtbCArPSBgPHA+VGllbmUgbcOhcyBkZWwgMjUlIGRlIGluYXNpc3RlbmNpYXM8L3A+PGJyPmA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIXJlc3BvbnNlLmRhdGEud2FybmluZy5vdXRzdGFuZGluZ19wYXltZW50cykge1xuICAgICAgICAgICAgICAgIGFsZXJ0SHRtbCArPSBgPHA+VGllbmUgcGFnb3MgcGVuZGllbnRlczwvcD5gO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIGFsZXJ0SHRtbCArPSBgPC9kaXY+YDtcbiAgICAgICAgICBTd2FsLmZpcmUoe1xuICAgICAgICAgICAgaHRtbDogYWxlcnRIdG1sLFxuICAgICAgICAgICAgaWNvbjogJ2Vycm9yJyxcbiAgICAgICAgICAgIC8vIHNob3dDYW5jZWxCdXR0b246IHRydWUsXG4gICAgICAgICAgICBjb25maXJtQnV0dG9uVGV4dDogJ0NvbmZpcm1hcicsXG4gICAgICAgICAgICAvLyBjYW5jZWxCdXR0b25UZXh0OiAnQ2FuY2VsYXInLFxuICAgICAgICAgIH0pXG4gICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgfSBlbHNlIGlmIChyZXNwb25zZS5tZXNzYWdlLmNvZGUgPT09IDQpIHtcbiAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgIHRoaXMubG9hZGVyTWVzc2FnZSA9ICcnO1xuICAgICAgICAgIGNvbnN0IGVycm9yTWVzc2FnZXMgPSAocmVzcG9uc2UuZGF0YS5lcnJvcnMgYXMgYW55W10pLm1hcChlcnJvciA9PiBgLSAke2Vycm9yLm1lc3NhZ2V9YCkuam9pbignPGJyPicpO1xuXG4gICAgICAgICAgU3dhbC5maXJlKHtcbiAgICAgICAgICAgIHRpdGxlOiAnUmV2aXNhciBsbyBzZWxlY2Npb25hZG8gZW4gbG9zIGNhbXBvcycsXG4gICAgICAgICAgICBodG1sOiBgJHtlcnJvck1lc3NhZ2VzfWAsXG4gICAgICAgICAgICBpY29uOiAnd2FybmluZydcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgIHRoaXMubG9hZGVyTWVzc2FnZSA9ICcnO1xuXG4gICAgICAgICAgU3dhbC5maXJlKHtcbiAgICAgICAgICAgIHRpdGxlOiAnV2FybmluZyEnLFxuICAgICAgICAgICAgdGV4dDogcmVzcG9uc2UubWVzc2FnZS5tZXNzYWdlLFxuICAgICAgICAgICAgaWNvbjogJ2Vycm9yJ1xuICAgICAgICAgIH0pXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBlcnJvcjogKGVycjogYW55KSA9PiB7XG4gICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgIHRoaXMubG9hZGVyTWVzc2FnZSA9ICcnO1xuICAgICAgICBTd2FsLmZpcmUoe1xuICAgICAgICAgIHRpdGxlOiAnRXJyb3IgaW4gY29kIGNyZWF0aW9uJyxcbiAgICAgICAgICB0ZXh0OiBlcnIubWVzc2FnZSxcbiAgICAgICAgICBpY29uOiAnZXJyb3InXG4gICAgICAgIH0pXG4gICAgICB9LFxuICAgICAgY29tcGxldGU6ICgpID0+IHtcbiAgICAgICAgdGhpcy5jb2RDcmVhdGlvblN1YnNjcmlwdGlvbiA9IG51bGw7XG4gICAgICB9XG4gICAgfSlcblxuICB9XG5cbiAgZ2V0Q3JlYXRlQ09EKGRhdGE6IGFueVtdKTogQ3JlYXRlQ09EUnEge1xuICAgIGxldCByZXF1ZXN0OiBDcmVhdGVDT0RScSA9IHtcbiAgICAgIHRva2VuOiB0aGlzLmJhc2VTZXJ2aWNlLmdldFVzZXJUb2tlbigpLFxuICAgICAgc3R1ZGVudF9uYW1lOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWRlbnRfbmFtZScpWzBdLnZhbHVlLFxuICAgICAgc3R1ZGVudF9sYXN0X25hbWU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3R1ZGVudF9sYXN0X25hbWUnKVswXS52YWx1ZSxcbiAgICAgIG5pY2tuYW1lOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ25pY2tuYW1lJylbMF0udmFsdWUsXG4gICAgICBzdHVkZW50X2VtYWlsOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWRlbnRfZW1haWwnKVswXS52YWx1ZSxcbiAgICAgIHN0dWRlbnRfcGhvbmVfaW5kaWNhdGl2ZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X3Bob25lX2luZGljYXRpdmUnKVswXS52YWx1ZSxcbiAgICAgIHN0dWRlbnRfcGhvbmVfbnVtYmVyOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWRlbnRfcGhvbmVfbnVtYmVyJylbMF0udmFsdWUsXG4gICAgICBnZW5kZXI6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnZ2VuZGVyJylbMF0udmFsdWUsXG4gICAgICBiaXJ0aGRhdGU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnYmlydGhkYXRlJylbMF0udmFsdWUsXG4gICAgICBjaXR5OiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2NpdHknKVswXS52YWx1ZSxcbiAgICAgIHN0dWRlbnRfaWRfY2FyZF90eXBlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWRlbnRfaWRfY2FyZF90eXBlJylbMF0udmFsdWUsXG4gICAgICBzdHVkZW50X2lkX2NhcmQ6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3R1ZGVudF9pZF9jYXJkJylbMF0udmFsdWUsXG4gICAgICBwYXNzd29yZDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXNzd29yZCcpWzBdLnZhbHVlLFxuICAgICAgbmVlZEF0ZW5kYW50OiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ25lZWRBdGVuZGFudCcpWzBdLnZhbHVlLFxuICAgICAgcGFyZW50X25hbWU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X25hbWUnKVswXS52YWx1ZSxcbiAgICAgIHBhcmVudF9sYXN0X25hbWU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X2xhc3RfbmFtZScpWzBdLnZhbHVlLFxuICAgICAgcGFyZW50X2lkX2NhcmRfdHlwZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXJlbnRfaWRfY2FyZF90eXBlJylbMF0udmFsdWUsXG4gICAgICBwYXJlbnRfaWRfY2FyZDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXJlbnRfaWRfY2FyZCcpWzBdLnZhbHVlLFxuICAgICAgcGFyZW50X3Bob25lX2luZGljYXRpdmU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X3Bob25lX2luZGljYXRpdmUnKVswXS52YWx1ZSxcbiAgICAgIHBhcmVudF9waG9uZV9udW1iZXI6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X3Bob25lX251bWJlcicpWzBdLnZhbHVlLFxuICAgICAgcGFyZW50X29jY3VwYXRpb246IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X29jY3VwYXRpb24nKVswXS52YWx1ZSxcbiAgICAgIHBhcmVudF9vZmZpY2VfYWRkcmVzczogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXJlbnRfYWRkcmVzcycpWzBdLnZhbHVlLFxuICAgICAgc29jaWFsX3N0cmF0dW06IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3RyYXR1bScpWzBdLnZhbHVlLFxuICAgICAgY2l2aWxfc3RhdHVzOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2NpdmlsX3N0YXR1cycpWzBdLnZhbHVlLFxuICAgICAgZWR1Y2F0aW9uYWxfbGV2ZWw6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnZ3JhZGUnKVswXS52YWx1ZSxcbiAgICAgIHN0dWRlbnRfYWRkcmVzczogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X2FkZHJlc3MnKVswXS52YWx1ZSxcbiAgICAgIHN0dWRlbnRfb2NjdXBhdGlvbjogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X29jY3VwYXRpb24nKVswXS52YWx1ZSxcbiAgICAgIGRpc2FiaWxpdHk6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnZGlzYWJpbGl0eScpWzBdLnZhbHVlLFxuICAgICAgaGVhbHRoX3JlZ2ltZW46IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnaGVhbHRoX3JlZ2ltZW4nKVswXS52YWx1ZSxcbiAgICAgIG1hcmtldGluZ19yZWFzb25zOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ21hcmtldGluZ19yZWFzb25zJylbMF0udmFsdWUsXG4gICAgICBzdHVkeV9yZWFzb25zOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWR5X3JlYXNvbnMnKVswXS52YWx1ZSxcbiAgICAgIG9ic2VydmF0aW9uOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ29ic2VydmF0aW9uJylbMF0udmFsdWUsXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzE6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbXVsdGljdWx0dXJhbGlzbV8xJylbMF0udmFsdWUsXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzI6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbXVsdGljdWx0dXJhbGlzbV8yJylbMF0udmFsdWUsXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzM6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbXVsdGljdWx0dXJhbGlzbV8zJylbMF0udmFsdWUsXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzQ6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbXVsdGljdWx0dXJhbGlzbV80JylbMF0udmFsdWUsXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbXVsdGljdWx0dXJhbGlzbV81JylbMF0udmFsdWUsXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzY6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbXVsdGljdWx0dXJhbGlzbV82JylbMF0udmFsdWUsXG4gICAgICBhdmFpbGlibGVfY291cnNlczogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdhdmFpbGlibGVfY291cnNlcycpWzBdLnZhbHVlLFxuICAgICAgY291cnNlX3R5cGU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnY291cnNlX3R5cGUnKVswXS52YWx1ZSxcbiAgICAgIGFncmVlbWVudF9ieV9jYXRlZ29yeTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdhZ3JlZW1lbnRfYnlfY2F0ZWdvcnknKVswXS52YWx1ZSxcbiAgICAgIGVuZ2xpc2hfbGV2ZWw6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnZW5nbGlzaF9sZXZlbCcpWzBdLnZhbHVlLFxuICAgICAgcGF5bWVudF9tZXRob2Q6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGF5bWVudF9tZXRob2QnKVswXS52YWx1ZSxcbiAgICAgIHF1b3RhX3RpbWVzOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3F1b3RhX3RpbWVzJylbMF0udmFsdWUsXG4gICAgICBwYXltZW50X2RhdGU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGF5bWVudF9kYXRlJylbMF0udmFsdWUsXG4gICAgICBwYXltZW50X2RhdGVzOiB0aGlzLmZpbmFuY2luZ0RhdGEhLFxuICAgICAgcHJvZ3JhbV9wcmljZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwcm9ncmFtX3ByaWNlJylbMF0udmFsdWUsXG4gICAgICB0b3RhbF9wcmljZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICd0b3RhbF9wcmljZScpWzBdLnZhbHVlLFxuICAgICAgcGFpZF9sZXZlbDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYWlkX2xldmVsJylbMF0udmFsdWUsXG4gICAgICB0ZXJtczogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICd0ZXJtcycpWzBdLnZhbHVlLFxuICAgICAgcmVfcGFzc3dvcmQ6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncmVfcGFzc3dvcmQnKVswXS52YWx1ZSxcbiAgICAgIGFnZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdhZ2UnKVswXS52YWx1ZSxcbiAgICAgIGNvdW50cnk6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnY291bnRyeScpWzBdLnZhbHVlLFxuICAgICAgc3RhdGU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3RhdGUnKVswXS52YWx1ZSxcbiAgICAgIGFjYWRlbWljX3BsYW46IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnYWNhZGVtaWNfcGxhbicpWzBdLnZhbHVlLFxuICAgICAgY29kZV9yZWZlcnM6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnY29kZV9yZWZlcnMnKVswXS52YWx1ZSxcbiAgICB9XG4gICAgcmV0dXJuIHJlcXVlc3Q7XG4gIH1cblxuICBnZXRVcGRhdGVDT0QoZGF0YTogYW55W10pOiBJVXBkYXRlQ09EUnEge1xuICAgIGxldCByZXF1ZXN0OiBJVXBkYXRlQ09EUnEgPSB7XG4gICAgICB0b2tlbjogdGhpcy5iYXNlU2VydmljZS5nZXRVc2VyVG9rZW4oKSxcbiAgICAgIHN0dWRlbnRfbmFtZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X25hbWUnKVswXS52YWx1ZSxcbiAgICAgIHN0dWRlbnRfbGFzdF9uYW1lOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWRlbnRfbGFzdF9uYW1lJylbMF0udmFsdWUsXG4gICAgICBuaWNrbmFtZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICduaWNrbmFtZScpWzBdLnZhbHVlLFxuICAgICAgc3R1ZGVudF9lbWFpbDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X2VtYWlsJylbMF0udmFsdWUsXG4gICAgICBzdHVkZW50X3Bob25lX2luZGljYXRpdmU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3R1ZGVudF9waG9uZV9pbmRpY2F0aXZlJylbMF0udmFsdWUsXG4gICAgICBzdHVkZW50X3Bob25lX251bWJlcjogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X3Bob25lX251bWJlcicpWzBdLnZhbHVlLFxuICAgICAgZ2VuZGVyOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2dlbmRlcicpWzBdLnZhbHVlLFxuICAgICAgYmlydGhkYXRlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2JpcnRoZGF0ZScpWzBdLnZhbHVlLFxuICAgICAgY2l0eTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdjaXR5JylbMF0udmFsdWUsXG4gICAgICBzdHVkZW50X2lkX2NhcmRfdHlwZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X2lkX2NhcmRfdHlwZScpWzBdLnZhbHVlLFxuICAgICAgc3R1ZGVudF9pZF9jYXJkOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWRlbnRfaWRfY2FyZCcpWzBdLnZhbHVlLFxuICAgICAgbmVlZEF0ZW5kYW50OiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ25lZWRBdGVuZGFudCcpWzBdLnZhbHVlLFxuICAgICAgcGFyZW50X25hbWU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X25hbWUnKVswXS52YWx1ZSxcbiAgICAgIHBhcmVudF9sYXN0X25hbWU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X2xhc3RfbmFtZScpWzBdLnZhbHVlLFxuICAgICAgcGFyZW50X2lkX2NhcmRfdHlwZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXJlbnRfaWRfY2FyZF90eXBlJylbMF0udmFsdWUsXG4gICAgICBwYXJlbnRfaWRfY2FyZDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXJlbnRfaWRfY2FyZCcpWzBdLnZhbHVlLFxuICAgICAgcGFyZW50X3Bob25lX2luZGljYXRpdmU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X3Bob25lX2luZGljYXRpdmUnKVswXS52YWx1ZSxcbiAgICAgIHBhcmVudF9waG9uZV9udW1iZXI6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X3Bob25lX251bWJlcicpWzBdLnZhbHVlLFxuICAgICAgcGFyZW50X29jY3VwYXRpb246IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X29jY3VwYXRpb24nKVswXS52YWx1ZSxcbiAgICAgIHBhcmVudF9vZmZpY2VfYWRkcmVzczogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXJlbnRfYWRkcmVzcycpWzBdLnZhbHVlLFxuICAgICAgc29jaWFsX3N0cmF0dW06IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3RyYXR1bScpWzBdLnZhbHVlLFxuICAgICAgY2l2aWxfc3RhdHVzOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2NpdmlsX3N0YXR1cycpWzBdLnZhbHVlLFxuICAgICAgZWR1Y2F0aW9uYWxfbGV2ZWw6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnZ3JhZGUnKVswXS52YWx1ZSxcbiAgICAgIHN0dWRlbnRfYWRkcmVzczogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X2FkZHJlc3MnKVswXS52YWx1ZSxcbiAgICAgIHN0dWRlbnRfb2NjdXBhdGlvbjogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X29jY3VwYXRpb24nKVswXS52YWx1ZSxcbiAgICAgIGRpc2FiaWxpdHk6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnZGlzYWJpbGl0eScpWzBdLnZhbHVlLFxuICAgICAgaGVhbHRoX3JlZ2ltZW46IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnaGVhbHRoX3JlZ2ltZW4nKVswXS52YWx1ZSxcbiAgICAgIG1hcmtldGluZ19yZWFzb25zOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ21hcmtldGluZ19yZWFzb25zJylbMF0udmFsdWUsXG4gICAgICBzdHVkeV9yZWFzb25zOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWR5X3JlYXNvbnMnKVswXS52YWx1ZSxcbiAgICAgIG9ic2VydmF0aW9uOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ29ic2VydmF0aW9uJylbMF0udmFsdWUsXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzE6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbXVsdGljdWx0dXJhbGlzbV8xJylbMF0udmFsdWUsXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzI6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbXVsdGljdWx0dXJhbGlzbV8yJylbMF0udmFsdWUsXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzM6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbXVsdGljdWx0dXJhbGlzbV8zJylbMF0udmFsdWUsXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzQ6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbXVsdGljdWx0dXJhbGlzbV80JylbMF0udmFsdWUsXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbXVsdGljdWx0dXJhbGlzbV81JylbMF0udmFsdWUsXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzY6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbXVsdGljdWx0dXJhbGlzbV82JylbMF0udmFsdWUsXG4gICAgICBhdmFpbGlibGVfY291cnNlczogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdhdmFpbGlibGVfY291cnNlcycpWzBdLnZhbHVlLFxuICAgICAgY291cnNlX3R5cGU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnY291cnNlX3R5cGUnKVswXS52YWx1ZSxcbiAgICAgIGFncmVlbWVudF9ieV9jYXRlZ29yeTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdhZ3JlZW1lbnRfYnlfY2F0ZWdvcnknKVswXS52YWx1ZSxcbiAgICAgIGVuZ2xpc2hfbGV2ZWw6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnZW5nbGlzaF9sZXZlbCcpWzBdLnZhbHVlLFxuICAgICAgcGF5bWVudF9tZXRob2Q6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGF5bWVudF9tZXRob2QnKVswXS52YWx1ZSxcbiAgICAgIHF1b3RhX3RpbWVzOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3F1b3RhX3RpbWVzJylbMF0udmFsdWUsXG4gICAgICBwYXltZW50X2RhdGU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGF5bWVudF9kYXRlJylbMF0udmFsdWUsXG4gICAgICBwYXltZW50X2RhdGVzOiB0aGlzLmZpbmFuY2luZ0RhdGEhLFxuICAgICAgcHJvZ3JhbV9wcmljZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwcm9ncmFtX3ByaWNlJylbMF0udmFsdWUsXG4gICAgICB0b3RhbF9wcmljZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICd0b3RhbF9wcmljZScpWzBdLnZhbHVlLFxuICAgICAgcGFpZF9sZXZlbDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYWlkX2xldmVsJylbMF0udmFsdWUsXG4gICAgICB0ZXJtczogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICd0ZXJtcycpWzBdLnZhbHVlLFxuICAgICAgYWdlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2FnZScpWzBdLnZhbHVlLFxuICAgICAgY291bnRyeTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdjb3VudHJ5JylbMF0udmFsdWUsXG4gICAgICBzdGF0ZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdGF0ZScpWzBdLnZhbHVlLFxuICAgICAgYWNhZGVtaWNfcGxhbjogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdhY2FkZW1pY19wbGFuJylbMF0udmFsdWUsXG4gICAgICBjb2RlX3JlZmVyczogdGhpcy5wYXJzZU51bWJlcihkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2NvZGVfcmVmZXJzJylbMF0udmFsdWUpLFxuICAgICAgY29kZV9jb2Q6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnY29kZV9jb2QnKVswXS52YWx1ZSxcbiAgICB9XG4gICAgcmV0dXJuIHJlcXVlc3Q7XG4gIH1cblxuICBjaGFuZ2VTdGVwKHN0ZXA6IG51bWJlcikge1xuICAgIHRoaXMuY3VycmVudFN0ZXAgPSBzdGVwO1xuICB9XG5cbiAgcGFyc2VOdW1iZXIodmFsdWU6IGFueSk6IG51bWJlciB8IG51bGwge1xuICAgIGNvbnN0IHBhcnNlZFZhbHVlID0gcGFyc2VGbG9hdCh2YWx1ZSk7XG4gICAgcmV0dXJuIGlzTmFOKHBhcnNlZFZhbHVlKSA/IG51bGwgOiBwYXJzZWRWYWx1ZTtcbiAgfVxuXG4gIGdldFBhcmFtZXRlcnMoKXtcbiAgICB0aGlzLnBhcmFtZXRlclNlcnZpY2UuZ2V0QWxsUGFyYW1ldGVyc0NvZEZvcm0oKS5zdWJzY3JpYmUoKHJlc3BvbnNlKSA9PiB7XG4gICAgICB0aGlzLnBhcmFtZXRlcnNBbGwgPSByZXNwb25zZS5kYXRhO1xuICAgIH0pO1xuICB9XG59XG4iLCI8ZGl2ICpuZ0lmPVwiYWxsb3dlZFJvbGUoKSA7IGVsc2UgVW5hdXRob3JpemVkXCIgY2xhc3M9XCJjb250YWluZXIgZmxleCBmbGV4LWNvbHVtbiBiZy13aGl0ZSBib3JkZXItcm91bmQtMnhsIHAtMyBjb250YWluZXIgYW5pbWF0ZV9fYW5pbWF0ZWQgYW5pbWF0ZV9fZmFkZUluVXBcIj5cblxuICA8c3BhbiAqbmdJZj1cImVkaXRDb2RcIiBjbGFzcz1cImJnLXllbGxvdy01MDAgcC0yIGJvcmRlci1yb3VuZCBtYi0yIHctYXV0byB0ZXh0LWxnIGZvbnQtc2VtaWJvbGRcIiBzdHlsZT1cImNvbG9yOiB3aGl0ZTtcIj57eyBmb3JtVGl0bGUgfX08L3NwYW4+XG4gIDxzcGFuICpuZ0lmPVwiIWVkaXRDb2QgJiYgIWRhdGFGcm9tUHJldml1c0NvZERhdGE/LmNvZF9yZW5vdmF0aW9uXCIgY2xhc3M9XCJiZy1wcmltYXJ5IHAtMiBib3JkZXItcm91bmQgbWItMiB3LWF1dG8gdGV4dC1sZyBmb250LXNlbWlib2xkXCI+e3sgZm9ybVRpdGxlIH19PC9zcGFuPlxuICA8c3BhbiAqbmdJZj1cIiFlZGl0Q29kICYmIGRhdGFGcm9tUHJldml1c0NvZERhdGE/LmNvZF9yZW5vdmF0aW9uID09IHRydWVcIiBjbGFzcz1cInAtMiBib3JkZXItcm91bmQgbWItMiB3LWF1dG8gdGV4dC1sZyBmb250LXNlbWlib2xkXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOiMxZGE3NTA7IGNvbG9yOiB3aGl0ZTtcIj57eyBmb3JtVGl0bGUgfX08L3NwYW4+XG4gIDxkaXYgKm5nSWY9XCJwYXJhbWV0ZXJzQWxsICE9PSBudWxsXCI+XG4gICAgPHAtdGFiVmlldyBbYWN0aXZlSW5kZXhdPVwiY3VycmVudFN0ZXBcIiAoYWN0aXZlSW5kZXhDaGFuZ2UpPVwiY3VycmVudFN0ZXAgPSAkZXZlbnRcIiBbc2Nyb2xsYWJsZV09XCJ0cnVlXCI+XG4gICAgICA8cC10YWJQYW5lbCBsZWZ0SWNvbj1cInBpIHBpLXN0YXJcIiBoZWFkZXI9XCIxLiBQbGFuZXMgeSBjb252ZW5pb3NcIj5cbiAgICAgICAgPGFwcC1jb2QtZm9ybS1zdGVwLW9uZSAoY2hhbmdlU3RlcEV2ZW50KT1cImNoYW5nZVN0ZXAoJGV2ZW50KVwiIFtpbml0aWFsRGF0YV09XCJjb3Vyc2VTZWxlY3RcIiBbZGF0YVByZXZpdXNDb2REYXRhXT1cImRhdGFGcm9tUHJldml1c0NvZERhdGFcIiBbaXNFZGl0Q29kXT1cImVkaXRDb2RcIiBbY291cnNlU2VsZWN0UmVub3ZhdGlvbl09XCJDb3Vyc2VTZWxlY3RSZW5vdmF0aW9uXCIgW2lzUmVub3ZhdGlvbl09XCJpc1Jlbm92YXRpb25cIiBbcGFyYW1ldGVyc0FsbF09XCJwYXJhbWV0ZXJzQWxsXCIgY2xhc3M9XCJwLTFcIj48L2FwcC1jb2QtZm9ybS1zdGVwLW9uZT5cbiAgICAgIDwvcC10YWJQYW5lbD5cbiAgICAgIDxwLXRhYlBhbmVsIGxlZnRJY29uPVwicGkgcGktaWQtY2FyZFwiIGhlYWRlcj1cIjIuIERhdG9zIGRlbCBlc3R1ZGlhbnRlXCI+XG4gICAgICAgIDxhcHAtY29kLWZvcm0tc3RlcC10d28gKGNoYW5nZVN0ZXBFdmVudCk9XCJjaGFuZ2VTdGVwKCRldmVudClcIiBbaW5pdGlhbERhdGFdPVwiZGF0YUZyb21QcmV2aXVzQ29kRGF0YVwiIFtpc0VkaXRDb2RdPVwiZWRpdENvZFwiIFtwYXJhbWV0ZXJzQWxsXT1cInBhcmFtZXRlcnNBbGxcIiBjbGFzcz1cInAtMVwiPjwvYXBwLWNvZC1mb3JtLXN0ZXAtdHdvPlxuICAgICAgPC9wLXRhYlBhbmVsPlxuICAgICAgPHAtdGFiUGFuZWwgbGVmdEljb249XCJwaSBwaS11c2VyLWVkaXRcIiBoZWFkZXI9XCIzLiBEYXRvcyBkZWwgYWN1ZGllbnRlXCI+XG4gICAgICAgIDxhcHAtY29kLWZvcm0tc3RlcC10aHJlZSAgKGNoYW5nZVN0ZXBFdmVudCk9XCJjaGFuZ2VTdGVwKCRldmVudClcIiBbaW5pdGlhbERhdGFdPVwiZGF0YUZyb21QcmV2aXVzQ29kRGF0YVwiIFtpc0VkaXRDb2RdPVwiZWRpdENvZFwiIFtwYXJhbWV0ZXJzQWxsXT1cInBhcmFtZXRlcnNBbGxcIiBjbGFzcz1cInAtMVwiPjwvYXBwLWNvZC1mb3JtLXN0ZXAtdGhyZWU+XG4gICAgICA8L3AtdGFiUGFuZWw+XG4gICAgICA8cC10YWJQYW5lbCBsZWZ0SWNvbj1cInBpIHBpLW1vbmV5LWJpbGxcIiBoZWFkZXI9XCI0LiBWYWxvcmVzXCI+XG4gICAgICAgIDxhcHAtY29kLWZvcm0tc3RlcC1mb3VyIChjaGFuZ2VTdGVwRXZlbnQpPVwiY2hhbmdlU3RlcCgkZXZlbnQpXCIgKGZpbmFuY2luZ0RhdGEpPVwic2F2ZUZpbmFuY2luZ0RhdGEoJGV2ZW50KVwiIFtpbml0aWFsRGF0YV09XCJkYXRhRnJvbVByZXZpdXNDb2REYXRhXCIgW2lzRWRpdENvZF09XCJlZGl0Q29kXCIgY2xhc3M9XCJwLTFcIiBbaXNSZW5vdmF0aW9uXT1cImlzUmVub3ZhdGlvblwiPjwvYXBwLWNvZC1mb3JtLXN0ZXAtZm91cj5cbiAgICAgIDwvcC10YWJQYW5lbD5cbiAgICAgIDxwLXRhYlBhbmVsIGxlZnRJY29uPVwicGkgcGktZXllXCIgaGVhZGVyPVwiNS4gT2JzZXJ2YWNpb25lc1wiPlxuICAgICAgICA8YXBwLWNvZC1mb3JtLXN0ZXAtZml2ZSAoY2hhbmdlU3RlcEV2ZW50KT1cImNoYW5nZVN0ZXAoJGV2ZW50KVwiIFt1c2VyUm9sZV09XCJ1c2VyUm9sZVwiIFtpbml0aWFsRGF0YV09XCJkYXRhRnJvbVByZXZpdXNDb2REYXRhXCIgKGFjdGlvbik9XCJnZXRGb3JtQWN0aW9uKCRldmVudClcIiBbaXNFZGl0Q29kXT1cImVkaXRDb2RcIiBbaXNSZW5vdmF0aW9uXT1cImlzUmVub3ZhdGlvblwiIGNsYXNzPVwicC0xXCIgW3BhcmFtZXRlcnNBbGxdPVwicGFyYW1ldGVyc0FsbFwiPjwvYXBwLWNvZC1mb3JtLXN0ZXAtZml2ZT5cbiAgICAgIDwvcC10YWJQYW5lbD5cbiAgICA8L3AtdGFiVmlldz5cbiAgPC9kaXY+XG5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI1VuYXV0aG9yaXplZD5cbiAgPHNwYW4gY2xhc3M9XCJmbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgZm9udC1ib2xkIHAtMiBiZy15ZWxsb3ctMjAwIGJvcmRlci1yb3VuZC1sZyB3LWZ1bGxcIj5cbiAgICBObyB0aWVuZXMgbG9zIHBlcm1pc29zIHBhcmEgYWNjZWRlciBhIGVzdGEgZnVuY2lvbmFsaWRhZCwgY29tdW7DrWNhdGUgY29uIGVsIGRlc2Fycm9sbGFkb3IuXG4gIDwvc3Bhbj5cbjwvbmctdGVtcGxhdGU+XG5cblxuPGlwdC1sb2FkZXIgKm5nSWY9XCJpc0xvYWRpbmdcIiBbaXNEaWFsb2ddPVwidHJ1ZVwiIFttZXNzYWdlXT1cImxvYWRlck1lc3NhZ2VcIj48L2lwdC1sb2FkZXI+XG4iXX0=
440
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvZC9jb2QtZm9ybS9jb2QtZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29kL2NvZC1mb3JtL2NvZC1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQTRCLE1BQU0sZUFBZSxDQUFDO0FBRTVHLE9BQU8sSUFBSSxNQUFNLGFBQWEsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7O0FBYy9CLE1BQU0sT0FBTyxnQkFBZ0I7SUEwQjNCLFlBQ1UsV0FBd0IsRUFDeEIsZUFBdUMsRUFDdkMsZUFBZ0MsRUFDaEMsaUJBQW9DLEVBQ3BDLGdCQUFrQztRQUpsQyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixvQkFBZSxHQUFmLGVBQWUsQ0FBd0I7UUFDdkMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQXRCbEMsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRzdDLGlCQUFZLEdBQWE7WUFDL0IsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRTtTQUN0QyxDQUFDO1FBRUssZ0JBQVcsR0FBVyxDQUFDLENBQUM7UUFDeEIsY0FBUyxHQUFXLGtDQUFrQyxDQUFDO1FBRXZELGNBQVMsR0FBVyxDQUFDLENBQUM7UUFFdEIsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUMzQixrQkFBYSxHQUFXLEVBQUUs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QyxDQUFDLENBQUMsQ0FBQyxLQUFLO1lBQ3pFLFVBQVUsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sS0FBSyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLO1lBQ3ZFLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sS0FBSyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLO1lBQzdELFdBQVcsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sS0FBSyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLO1lBQ3pFLEdBQUcsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLO1lBQ3pELE9BQU8sRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLO1lBQ2pFLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sS0FBSyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLO1lBQzdELGFBQWEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sS0FBSyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLO1lBQzdFLFdBQVcsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sS0FBSyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMs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UUFDcEIsTUFBTSxXQUFXLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3RDLE9BQU8sS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQztJQUNqRCxDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyx1QkFBdUIsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ3JFLElBQUksQ0FBQyxhQUFhLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OzZHQTdhVSxnQkFBZ0I7aUdBQWhCLGdCQUFnQiwwVUNoQjdCLGkvRkFtQ0E7MkZEbkJhLGdCQUFnQjtrQkFMNUIsU0FBUzsrQkFDRSxjQUFjO29PQU1mLHNCQUFzQjtzQkFBOUIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLHNCQUFzQjtzQkFBOUIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUVJLFlBQVk7c0JBQXJCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IFN3YWwgZnJvbSAnc3dlZXRhbGVydDInO1xuaW1wb3J0IHsgQ3JlYXRlQ09EUnEsIElVcGRhdGVDT0RScSB9IGZyb20gJy4uLy4uL2NvcmUvbW9kZWxzL2NvZC9jb2QtcnEubW9kZWwnO1xuaW1wb3J0IHsgQ29tbWVyY2lhbFNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL3NlcnZpY2VzL2NvbW1lcmNpYWwtc2VydmljZS9jb21lcmNpYWwuc2VydmljZSc7XG5pbXBvcnQgeyBCYXNlU2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvdXRpbHMvYmFzZS1zZXJ2aWNlL2Jhc2Uuc2VydmljZSc7XG5pbXBvcnQgeyBDb2RGb3JtQ29udHJvbHMsIENvbnRyb2wgfSBmcm9tICcuLi9sb2dpYy9jb2QtZm9ybS1jb250cm9scyc7XG5pbXBvcnQgeyBMb2NhbFN0b3JhZ2VDT0RTZXJ2aWNlIH0gZnJvbSAnLi4vbG9naWMvbG9jYWwtc3RvcmFnZS1jb2Quc2VydmljZSc7XG5pbXBvcnQgeyBQYXJhbWV0ZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9zZXJ2aWNlcy9wYXJhbWV0ZXJzLXNlcnZpY2UvcGFyYW1ldGVycy5zZXJ2aWNlJztcbmltcG9ydCB7IElQYXJhbWV0ZXJzQWxsUnMgfSBmcm9tICcuLi8uLi9jb3JlL21vZGVscy9wYXJhbWV0ZXJzL3BhcmFtZXRlcnMtcnMubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpcHQtY29kLWZvcm0nLFxuICB0ZW1wbGF0ZVVybDogJy4vY29kLWZvcm0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFtdXG59KVxuZXhwb3J0IGNsYXNzIENvZEZvcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG5cbiAgQElucHV0KCkgZGF0YUZyb21QcmV2aXVzQ29kRGF0YT86IGFueTtcbiAgQElucHV0KCkgY291cnNlU2VsZWN0PzogYW55O1xuICBASW5wdXQoKSBpc05ld0NvZCE6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGVkaXRDb2QhOiBib29sZWFuO1xuICBASW5wdXQoKSBDb3Vyc2VTZWxlY3RSZW5vdmF0aW9uITphbnk7XG4gIEBJbnB1dCgpIGlzUmVub3ZhdGlvbj86Ym9vbGVhbjtcblxuICBAT3V0cHV0KCkgb2tDcmVhdGVkQ09EID0gbmV3IEV2ZW50RW1pdHRlcjxCb29sZWFuPigpO1xuICBzdWJzY3JpcHRpb24/OiBTdWJzY3JpcHRpb247XG5cbiAgcHJpdmF0ZSBhbGxvd2VkUm9sZXM6IG51bWJlcltdID0gW1xuICAgIDEsIDMwLCAzMSwgMzIsIDQwLCA0MSwgNDIsIDUwLCA1MSwgNTIsXG4gIF07XG5cbiAgcHVibGljIGN1cnJlbnRTdGVwOiBudW1iZXIgPSAwO1xuICBwdWJsaWMgZm9ybVRpdGxlOiBzdHJpbmcgPSAnRm9ybXVsYXJpbyBwYXJhIGNyZWFjacOzbiBkZWwgQ09EJztcbiAgcHVibGljIHVzZXJSb2xlOiBudW1iZXI7XG4gIHB1YmxpYyBmb3JtU3RlcHM6IG51bWJlciA9IDU7XG4gIHB1YmxpYyBmaW5hbmNpbmdEYXRhPzogYW55W107XG4gIHB1YmxpYyBpc0xvYWRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGxvYWRlck1lc3NhZ2U6IHN0cmluZyA9ICcnO1xuICBwdWJsaWMgY29kQ3JlYXRpb25TdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiB8IG51bGwgPSBudWxsO1xuICBwdWJsaWMgcGFyYW1ldGVyc0FsbD86SVBhcmFtZXRlcnNBbGxScztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGJhc2VTZXJ2aWNlOiBCYXNlU2VydmljZSxcbiAgICBwcml2YXRlIGxvY2FsU3RvcmFnZUNPRDogTG9jYWxTdG9yYWdlQ09EU2VydmljZSxcbiAgICBwcml2YXRlIGNvZEZvcm1Db250cm9sczogQ29kRm9ybUNvbnRyb2xzLFxuICAgIHByaXZhdGUgY29tbWVyY2lhbFNlcnZpY2U6IENvbW1lcmNpYWxTZXJ2aWNlLFxuICAgIHByaXZhdGUgcGFyYW1ldGVyU2VydmljZTogUGFyYW1ldGVyU2VydmljZSxcbiAgKSB7XG4gICAgdGhpcy51c2VyUm9sZSA9IHRoaXMuYmFzZVNlcnZpY2UuZ2V0VXNlclJvbGUoKTtcbiAgICB0aGlzLmdldFBhcmFtZXRlcnMoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlc1snZWRpdENvZCddICYmIHRoaXMuZGF0YUZyb21QcmV2aXVzQ29kRGF0YSkge1xuICAgICAgaWYgKHRoaXMuZWRpdENvZCkge1xuICAgICAgICBpZiAoIXRoaXMuZGF0YUZyb21QcmV2aXVzQ29kRGF0YS5lZGl0X2NvdXJzZV9wYXltZW50KSB7XG4gICAgICAgICAgU3dhbC5maXJlKHtcbiAgICAgICAgICAgIHRpdGxlOiAnUXVlcmlkbyBhc2Vzb3InLFxuICAgICAgICAgICAgdGV4dDogJ1NvbG8gcHVlZGUgZWRpdGFyIERhdG9zIGRlbCBlc3R1ZGlhbnRlJyxcbiAgICAgICAgICAgIGljb246ICd3YXJuaW5nJ1xuICAgICAgICAgIH0pXG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5mb3JtVGl0bGUgPSAnRm9ybXVsYXJpbyBwYXJhIHZlcmlmaWNhciB5IGVkaXRhciBpbmZvcm1hY2nDs24gZGVsIENPRCBhY3R1YWwnO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLmRhdGFGcm9tUHJldml1c0NvZERhdGE/LmNvZF9yZW5vdmF0aW9uID09IGZhbHNlICYmIHRoaXMuZWRpdENvZCA9PSBmYWxzZSkge1xuICAgICAgICB0aGlzLmZvcm1UaXRsZSA9ICdGb3JtdWxhcmlvIHBhcmEgY3JlYWNpw7NuIGRlbCBDT0QnO1xuICAgICAgfWVsc2UgaWYodGhpcy5kYXRhRnJvbVByZXZpdXNDb2REYXRhLmNvZF9yZW5vdmF0aW9uID09IHRydWUgJiYgdGhpcy5lZGl0Q29kID09IGZhbHNlKXtcbiAgICAgICAgdGhpcy5mb3JtVGl0bGUgPSAnRm9ybXVsYXJpbyBwYXJhIGxhIHJlbm92YWNpb24gZGVsIENPRCc7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3Vic2NyaXB0aW9uKSB7XG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cbiAgfVxuXG4gIGFsbG93ZWRSb2xlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmFsbG93ZWRSb2xlcy5pbmNsdWRlcyh0aGlzLnVzZXJSb2xlKTtcbiAgfVxuXG4gIGdldENvZGJ5Q29kZSgpIHtcbiAgICAvLyBUT0RPOiBUcmFlciBDT0QgcG9yIGPDs2RpZ28geSBwaW50YXJsb1xuICB9XG5cblxuICBzYXZlRmluYW5jaW5nRGF0YShkYXRhOiBhbnlbXSkge1xuICAgIGlmIChkYXRhKSB7XG4gICAgICBjb25zdCBkYXRlczogc3RyaW5nW10gPSBbXTtcbiAgICAgIGRhdGEuZm9yRWFjaChwID0+IHtcbiAgICAgICAgY29uc3QgZGF0ZSA9IHBbMl07XG4gICAgICAgIGRhdGVzLnB1c2goZGF0ZSk7XG4gICAgICB9KVxuICAgICAgdGhpcy5maW5hbmNpbmdEYXRhID0gZGF0ZXM7XG4gICAgfVxuICB9XG5cbiAgZ2V0Rm9ybUFjdGlvbihhY3Rpb246IHN0cmluZykge1xuICAgIGNvbnNvbGUubG9nKHRoaXMuaXNSZW5vdmF0aW9uKTtcbiAgICBjb25zb2xlLmxvZyh0aGlzLmZpbmFuY2luZ0RhdGEpOyBcbiAgICBpZiAodGhpcy5pc1Jlbm92YXRpb24gPT10cnVlKSB7XG4gICAgICBpZiAodGhpcy5sb2NhbFN0b3JhZ2VDT0QuZ2V0Q29kRm9ybURhdGEoNCwgJ3BheW1lbnRfbWV0aG9kJykgPT09ICcxJykge1xuICAgICAgICBTd2FsLmZpcmUoe1xuICAgICAgICAgIHRpdGxlOiAnUXVlcmlkbyBhc2Vzb3InLFxuICAgICAgICAgIHRleHQ6ICdEZWJlIGhhY2VyIGVsIGPDoWxjdWxvIGRlIGxhcyBjdW90YXMgZW4gZWwgcGFzbyA0JyxcbiAgICAgICAgICBpY29uOiAnZXJyb3InXG4gICAgICAgIH0pXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIHRoaXMuZmluYW5jaW5nRGF0YT1bXTtcbiAgICB9ZWxzZXtcbiAgICAgIGlmICghdGhpcy5maW5hbmNpbmdEYXRhICAmJiB0aGlzLmxvY2FsU3RvcmFnZUNPRC5nZXRDb2RGb3JtRGF0YSg0LCAncGF5bWVudF9tZXRob2QnKSA9PT0gJzEnKSB7XG4gICAgICAgIFN3YWwuZmlyZSh7XG4gICAgICAgICAgdGl0bGU6ICdRdWVyaWRvIGFzZXNvcicsXG4gICAgICAgICAgdGV4dDogJ0RlYmUgaGFjZXIgZWwgY8OhbGN1bG8gZGUgbGFzIGN1b3RhcyBlbiBlbCBwYXNvIDQnLFxuICAgICAgICAgIGljb246ICdlcnJvcidcbiAgICAgICAgfSlcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cbiAgICBjb25zdCB0b3RhbERhdGE6IGFueVtdID0gW107XG5cbiAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHRoaXMuY29kRm9ybUNvbnRyb2xzLmdldENvbnRyb2xWYWx1ZXMoKS5zdWJzY3JpYmUoKGNvbnRyb2xzKSA9PiB7XG4gICAgICAgIGZvciAobGV0IGkgPSAxOyBpIDw9IHRoaXMuZm9ybVN0ZXBzOyBpKyspIHtcbiAgICAgICAgICBsZXQgY29udHJvbHNCeVN0ZXA6IENvbnRyb2xbXSA9IGNvbnRyb2xzW2ktMV07XG4gICAgICAgICAgICBjb250cm9sc0J5U3RlcC5mb3JFYWNoKGNvbnRyb2wgPT4ge1xuICAgICAgICAgICAgICBsZXQgdmFsdWUgPSB0aGlzLmxvY2FsU3RvcmFnZUNPRC5nZXRDb2RGb3JtRGF0YShpLCBjb250cm9sLm5hbWUpO1xuICAgICAgICAgICAgICAvLyBDYW1iaWFyIFRydWUvRmFsc2UgZGVsIG11bHRpY3VsdHVyYWxpc21vIDEvMFxuICAgICAgICAgICAgICBpZiAodmFsdWUgPT09ICdmYWxzZScgJiYgY29udHJvbC5kZXNjcmlwdGlvbiA9PT0gJ011bHRpY3VsdHVyYWxpc21vJykge1xuICAgICAgICAgICAgICAgIHRvdGFsRGF0YS5wdXNoKHtcbiAgICAgICAgICAgICAgICAgIGNvbnRyb2w6IGNvbnRyb2wubmFtZSxcbiAgICAgICAgICAgICAgICAgIGlzUmVxdWlyZWQ6IGNvbnRyb2wucmVxdWlyZWQsXG4gICAgICAgICAgICAgICAgICB2YWx1ZTogJzAnLFxuICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IGNvbnRyb2wuZGVzY3JpcHRpb25cbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICB9IGVsc2UgaWYgKHZhbHVlID09PSAndHJ1ZScgJiYgY29udHJvbC5kZXNjcmlwdGlvbiA9PT0gJ011bHRpY3VsdHVyYWxpc21vJykge1xuICAgICAgICAgICAgICAgIHRvdGFsRGF0YS5wdXNoKHtcbiAgICAgICAgICAgICAgICAgIGNvbnRyb2w6IGNvbnRyb2wubmFtZSxcbiAgICAgICAgICAgICAgICAgIGlzUmVxdWlyZWQ6IGNvbnRyb2wucmVxdWlyZWQsXG4gICAgICAgICAgICAgICAgICB2YWx1ZTogJzEnLFxuICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IGNvbnRyb2wuZGVzY3JpcHRpb25cbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRvdGFsRGF0YS5wdXNoKHtcbiAgICAgICAgICAgICAgICAgIGNvbnRyb2w6IGNvbnRyb2wubmFtZSxcbiAgICAgICAgICAgICAgICAgIGlzUmVxdWlyZWQ6IGNvbnRyb2wucmVxdWlyZWQsXG4gICAgICAgICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBjb250cm9sLmRlc2NyaXB0aW9uXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIC8vIFZhbGlkYXIgZXJyb3Jlc1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0b3RhbERhdGEubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3QgZWxlbWVudCA9IHRvdGFsRGF0YVtpXTtcbiAgICAgICAgaWYgKCFlbGVtZW50LnZhbHVlICYmIGVsZW1lbnQuaXNSZXF1aXJlZCkge1xuICAgICAgICAgIFN3YWwuZmlyZSh7XG4gICAgICAgICAgICB0aXRsZTogJ0Vycm9yIEZvcm0gQWN0aW9uIFZhbGlkYXRlIEVycm9yJyxcbiAgICAgICAgICAgIHRleHQ6IGBSZXZpc2FyIGVsIGNhbXBvOiBcIiR7ZWxlbWVudC5kZXNjcmlwdGlvbn1cImAsXG4gICAgICAgICAgICBpY29uOiAnZXJyb3InXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKGFjdGlvbiA9PT0gJ2NyZWF0ZScpIHRoaXMuY3JlYXRlQ09EKHRvdGFsRGF0YSk7XG4gICAgICBpZiAoYWN0aW9uID09PSAndXBkYXRlJykgdGhpcy51cGRhdGVDT0QodG90YWxEYXRhKTtcbiAgICB9KVxuXG4gICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHVwZGF0ZUNPRCh0b3RhbERhdGE6IGFueVtdKSB7XG4gICAgaWYgKHRoaXMuY29kQ3JlYXRpb25TdWJzY3JpcHRpb24gJiYgIXRoaXMuY29kQ3JlYXRpb25TdWJzY3JpcHRpb24uY2xvc2VkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICB0aGlzLmxvYWRlck1lc3NhZ2UgPSAnRWRpdGFuZG8gQ09ELCBlc3BlcmUgdW4gbW9tZW50bydcbiAgICBsZXQgcmVxdWVzdDogSVVwZGF0ZUNPRFJxID0gdGhpcy5nZXRVcGRhdGVDT0QodG90YWxEYXRhKTtcbiAgICB0aGlzLmNvbW1lcmNpYWxTZXJ2aWNlLnVwZGF0ZUNPRChyZXF1ZXN0KS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKHJlc3BvbnNlOiBhbnkpID0+IHtcbiAgICAgICAgaWYgKHJlc3BvbnNlLm1lc3NhZ2UuY29kZSA9PT0gMSkge1xuICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgdGhpcy5sb2FkZXJNZXNzYWdlID0gJyc7XG4gICAgICAgICAgU3dhbC5maXJlKHtcbiAgICAgICAgICAgIHRpdGxlOiAnUGVyZmVjdG8hJyxcbiAgICAgICAgICAgIHRleHQ6ICdFbCBDT0QgaGEgc2lkbyBFZGl0YWRvIGV4aXRvc2FtZW50ZS4nLFxuICAgICAgICAgICAgaWNvbjogJ3N1Y2Nlc3MnXG4gICAgICAgICAgfSlcbiAgICAgICAgICB0aGlzLmxvY2FsU3RvcmFnZUNPRC5jbGVhckRhdGEoKTtcbiAgICAgICAgICB0aGlzLm9rQ3JlYXRlZENPRC5lbWl0KHRydWUpO1xuICAgICAgICB9IGVsc2UgaWYgKHJlc3BvbnNlLm1lc3NhZ2UuY29kZSA9PT0gNCkge1xuICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgdGhpcy5sb2FkZXJNZXNzYWdlID0gJyc7XG4gICAgICAgICAgY29uc3QgZXJyb3JNZXNzYWdlcyA9IChyZXNwb25zZS5kYXRhLmVycm9ycyBhcyBhbnlbXSkubWFwKGVycm9yID0+IGAtICR7ZXJyb3IubWVzc2FnZX1gKS5qb2luKCc8YnI+Jyk7XG5cbiAgICAgICAgICBTd2FsLmZpcmUoe1xuICAgICAgICAgICAgdGl0bGU6ICdSZXZpc2FyIGxvIHNlbGVjY2lvbmFkbyBlbiBsb3MgY2FtcG9zJyxcbiAgICAgICAgICAgIGh0bWw6IGAke2Vycm9yTWVzc2FnZXN9YCxcbiAgICAgICAgICAgIGljb246ICd3YXJuaW5nJ1xuICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgdGhpcy5sb2FkZXJNZXNzYWdlID0gJyc7XG5cbiAgICAgICAgICBTd2FsLmZpcmUoe1xuICAgICAgICAgICAgdGl0bGU6ICdXYXJuaW5nIScsXG4gICAgICAgICAgICB0ZXh0OiByZXNwb25zZS5tZXNzYWdlLm1lc3NhZ2UsXG4gICAgICAgICAgICBpY29uOiAnZXJyb3InXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5sb2FkZXJNZXNzYWdlID0gJyc7XG4gICAgICAgIFN3YWwuZmlyZSh7XG4gICAgICAgICAgdGl0bGU6ICdFcnJvciBpbiBjb2QgY3JlYXRpb24nLFxuICAgICAgICAgIHRleHQ6IGVyci5tZXNzYWdlLFxuICAgICAgICAgIGljb246ICdlcnJvcidcbiAgICAgICAgfSlcbiAgICAgIH0sXG4gICAgICBjb21wbGV0ZTogKCkgPT4ge1xuICAgICAgICB0aGlzLmNvZENyZWF0aW9uU3Vic2NyaXB0aW9uID0gbnVsbDtcbiAgICAgIH1cbiAgICB9KVxuXG4gIH1cblxuICBjcmVhdGVDT0QodG90YWxEYXRhOiBhbnlbXSkge1xuICAgIGlmICh0aGlzLmNvZENyZWF0aW9uU3Vic2NyaXB0aW9uICYmICF0aGlzLmNvZENyZWF0aW9uU3Vic2NyaXB0aW9uLmNsb3NlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gICAgdGhpcy5sb2FkZXJNZXNzYWdlID0gJ0NyZWFuZG8gQ09ELCBlc3BlcmUgdW4gbW9tZW50bydcbiAgICBsZXQgcmVxdWVzdDogQ3JlYXRlQ09EUnEgPSB0aGlzLmdldENyZWF0ZUNPRCh0b3RhbERhdGEpO1xuICAgIHRoaXMuY29tbWVyY2lhbFNlcnZpY2UuY3JlYXRlQ09EKHJlcXVlc3QpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAocmVzcG9uc2U6IGFueSkgPT4ge1xuICAgICAgICBpZiAocmVzcG9uc2UubWVzc2FnZS5jb2RlID09PSAxKSB7XG4gICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLmxvYWRlck1lc3NhZ2UgPSAnJztcbiAgICAgICAgICBTd2FsLmZpcmUoe1xuICAgICAgICAgICAgdGl0bGU6ICdQZXJmZWN0byEnLFxuICAgICAgICAgICAgdGV4dDogJ0VsIENPRCBoYSBzaWRvIGNyZWFkbyBleGl0b3NhbWVudGUuJyxcbiAgICAgICAgICAgIGljb246ICdzdWNjZXNzJ1xuICAgICAgICAgIH0pXG4gICAgICAgICAgdGhpcy5sb2NhbFN0b3JhZ2VDT0QuY2xlYXJEYXRhKCk7XG4gICAgICAgICAgdGhpcy5va0NyZWF0ZWRDT0QuZW1pdCh0cnVlKTtcbiAgICAgICAgfWVsc2UgaWYocmVzcG9uc2UubWVzc2FnZS5jb2RlID09PSAzKXtcbiAgICAgICAgICBsZXQgYWxlcnRIdG1sID0gYFxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJteS1jdXN0b20tYWxlcnRcIj5cbiAgICAgICAgICAgICAgPGgyPldhcm5pbmchPC9oMj5cbiAgICAgICAgICBgO1xuICAgICAgICAgICAgaWYgKCFyZXNwb25zZS5kYXRhLndhcm5pbmcuYXZlcmFnZV9zY29yZSkge1xuICAgICAgICAgICAgICAgIGFsZXJ0SHRtbCArPSBgPHA+Tm8gcGFzw7MgZWwgcHJvbWVkaW8gZmluYWw8L3A+PGJyPmA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIXJlc3BvbnNlLmRhdGEud2FybmluZy5ub25fYXR0ZW5kYW5jZSkge1xuICAgICAgICAgICAgICAgIGFsZXJ0SHRtbCArPSBgPHA+VGllbmUgbcOhcyBkZWwgMjUlIGRlIGluYXNpc3RlbmNpYXM8L3A+PGJyPmA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIXJlc3BvbnNlLmRhdGEud2FybmluZy5vdXRzdGFuZGluZ19wYXltZW50cykge1xuICAgICAgICAgICAgICAgIGFsZXJ0SHRtbCArPSBgPHA+VGllbmUgcGFnb3MgcGVuZGllbnRlczwvcD5gO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIGFsZXJ0SHRtbCArPSBgPC9kaXY+YDtcbiAgICAgICAgICBTd2FsLmZpcmUoe1xuICAgICAgICAgICAgaHRtbDogYWxlcnRIdG1sLFxuICAgICAgICAgICAgaWNvbjogJ2Vycm9yJyxcbiAgICAgICAgICAgIC8vIHNob3dDYW5jZWxCdXR0b246IHRydWUsXG4gICAgICAgICAgICBjb25maXJtQnV0dG9uVGV4dDogJ0NvbmZpcm1hcicsXG4gICAgICAgICAgICAvLyBjYW5jZWxCdXR0b25UZXh0OiAnQ2FuY2VsYXInLFxuICAgICAgICAgIH0pXG4gICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgfSBlbHNlIGlmIChyZXNwb25zZS5tZXNzYWdlLmNvZGUgPT09IDQpIHtcbiAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgIHRoaXMubG9hZGVyTWVzc2FnZSA9ICcnO1xuICAgICAgICAgIGNvbnN0IGVycm9yTWVzc2FnZXMgPSAocmVzcG9uc2UuZGF0YS5lcnJvcnMgYXMgYW55W10pLm1hcChlcnJvciA9PiBgLSAke2Vycm9yLm1lc3NhZ2V9YCkuam9pbignPGJyPicpO1xuXG4gICAgICAgICAgU3dhbC5maXJlKHtcbiAgICAgICAgICAgIHRpdGxlOiAnUmV2aXNhciBsbyBzZWxlY2Npb25hZG8gZW4gbG9zIGNhbXBvcycsXG4gICAgICAgICAgICBodG1sOiBgJHtlcnJvck1lc3NhZ2VzfWAsXG4gICAgICAgICAgICBpY29uOiAnd2FybmluZydcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgIHRoaXMubG9hZGVyTWVzc2FnZSA9ICcnO1xuXG4gICAgICAgICAgU3dhbC5maXJlKHtcbiAgICAgICAgICAgIHRpdGxlOiAnV2FybmluZyEnLFxuICAgICAgICAgICAgdGV4dDogcmVzcG9uc2UubWVzc2FnZS5tZXNzYWdlLFxuICAgICAgICAgICAgaWNvbjogJ2Vycm9yJ1xuICAgICAgICAgIH0pXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBlcnJvcjogKGVycjogYW55KSA9PiB7XG4gICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgIHRoaXMubG9hZGVyTWVzc2FnZSA9ICcnO1xuICAgICAgICBTd2FsLmZpcmUoe1xuICAgICAgICAgIHRpdGxlOiAnRXJyb3IgaW4gY29kIGNyZWF0aW9uJyxcbiAgICAgICAgICB0ZXh0OiBlcnIubWVzc2FnZSxcbiAgICAgICAgICBpY29uOiAnZXJyb3InXG4gICAgICAgIH0pXG4gICAgICB9LFxuICAgICAgY29tcGxldGU6ICgpID0+IHtcbiAgICAgICAgdGhpcy5jb2RDcmVhdGlvblN1YnNjcmlwdGlvbiA9IG51bGw7XG4gICAgICB9XG4gICAgfSlcblxuICB9XG5cbiAgZ2V0Q3JlYXRlQ09EKGRhdGE6IGFueVtdKTogQ3JlYXRlQ09EUnEge1xuICAgIGxldCByZXF1ZXN0OiBDcmVhdGVDT0RScSA9IHtcbiAgICAgIHRva2VuOiB0aGlzLmJhc2VTZXJ2aWNlLmdldFVzZXJUb2tlbigpLFxuICAgICAgc3R1ZGVudF9uYW1lOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWRlbnRfbmFtZScpWzBdLnZhbHVlLFxuICAgICAgc3R1ZGVudF9sYXN0X25hbWU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3R1ZGVudF9sYXN0X25hbWUnKVswXS52YWx1ZSxcbiAgICAgIG5pY2tuYW1lOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ25pY2tuYW1lJylbMF0udmFsdWUsXG4gICAgICBzdHVkZW50X2VtYWlsOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWRlbnRfZW1haWwnKVswXS52YWx1ZSxcbiAgICAgIHN0dWRlbnRfcGhvbmVfaW5kaWNhdGl2ZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X3Bob25lX2luZGljYXRpdmUnKVswXS52YWx1ZSxcbiAgICAgIHN0dWRlbnRfcGhvbmVfbnVtYmVyOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWRlbnRfcGhvbmVfbnVtYmVyJylbMF0udmFsdWUsXG4gICAgICBnZW5kZXI6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnZ2VuZGVyJylbMF0udmFsdWUsXG4gICAgICBiaXJ0aGRhdGU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnYmlydGhkYXRlJylbMF0udmFsdWUsXG4gICAgICBjaXR5OiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2NpdHknKVswXS52YWx1ZSxcbiAgICAgIHN0dWRlbnRfaWRfY2FyZF90eXBlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWRlbnRfaWRfY2FyZF90eXBlJylbMF0udmFsdWUsXG4gICAgICBzdHVkZW50X2lkX2NhcmQ6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3R1ZGVudF9pZF9jYXJkJylbMF0udmFsdWUsXG4gICAgICBwYXNzd29yZDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXNzd29yZCcpWzBdLnZhbHVlLFxuICAgICAgbmVlZEF0ZW5kYW50OiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ25lZWRBdGVuZGFudCcpWzBdLnZhbHVlLFxuICAgICAgcGFyZW50X25hbWU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X25hbWUnKVswXS52YWx1ZSxcbiAgICAgIHBhcmVudF9sYXN0X25hbWU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X2xhc3RfbmFtZScpWzBdLnZhbHVlLFxuICAgICAgcGFyZW50X2lkX2NhcmRfdHlwZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXJlbnRfaWRfY2FyZF90eXBlJylbMF0udmFsdWUsXG4gICAgICBwYXJlbnRfaWRfY2FyZDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXJlbnRfaWRfY2FyZCcpWzBdLnZhbHVlLFxuICAgICAgcGFyZW50X3Bob25lX2luZGljYXRpdmU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X3Bob25lX2luZGljYXRpdmUnKVswXS52YWx1ZSxcbiAgICAgIHBhcmVudF9waG9uZV9udW1iZXI6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X3Bob25lX251bWJlcicpWzBdLnZhbHVlLFxuICAgICAgcGFyZW50X29jY3VwYXRpb246IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X29jY3VwYXRpb24nKVswXS52YWx1ZSxcbiAgICAgIHBhcmVudF9vZmZpY2VfYWRkcmVzczogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXJlbnRfYWRkcmVzcycpWzBdLnZhbHVlLFxuICAgICAgc29jaWFsX3N0cmF0dW06IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3RyYXR1bScpWzBdLnZhbHVlLFxuICAgICAgY2l2aWxfc3RhdHVzOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2NpdmlsX3N0YXR1cycpWzBdLnZhbHVlLFxuICAgICAgZWR1Y2F0aW9uYWxfbGV2ZWw6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnZ3JhZGUnKVswXS52YWx1ZSxcbiAgICAgIHN0dWRlbnRfYWRkcmVzczogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X2FkZHJlc3MnKVswXS52YWx1ZSxcbiAgICAgIHN0dWRlbnRfb2NjdXBhdGlvbjogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X29jY3VwYXRpb24nKVswXS52YWx1ZSxcbiAgICAgIGRpc2FiaWxpdHk6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnZGlzYWJpbGl0eScpWzBdLnZhbHVlLFxuICAgICAgaGVhbHRoX3JlZ2ltZW46IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnaGVhbHRoX3JlZ2ltZW4nKVswXS52YWx1ZSxcbiAgICAgIG1hcmtldGluZ19yZWFzb25zOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ21hcmtldGluZ19yZWFzb25zJylbMF0udmFsdWUsXG4gICAgICBzdHVkeV9yZWFzb25zOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWR5X3JlYXNvbnMnKVswXS52YWx1ZSxcbiAgICAgIG9ic2VydmF0aW9uOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ29ic2VydmF0aW9uJylbMF0udmFsdWUsXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzE6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbXVsdGljdWx0dXJhbGlzbV8xJylbMF0udmFsdWUsXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzI6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbXVsdGljdWx0dXJhbGlzbV8yJylbMF0udmFsdWUsXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzM6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbXVsdGljdWx0dXJhbGlzbV8zJylbMF0udmFsdWUsXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzQ6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbXVsdGljdWx0dXJhbGlzbV80JylbMF0udmFsdWUsXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbXVsdGljdWx0dXJhbGlzbV81JylbMF0udmFsdWUsXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzY6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbXVsdGljdWx0dXJhbGlzbV82JylbMF0udmFsdWUsXG4gICAgICBhdmFpbGlibGVfY291cnNlczogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdhdmFpbGlibGVfY291cnNlcycpWzBdLnZhbHVlLFxuICAgICAgY291cnNlX3R5cGU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnY291cnNlX3R5cGUnKVswXS52YWx1ZSxcbiAgICAgIGFncmVlbWVudF9ieV9jYXRlZ29yeTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdhZ3JlZW1lbnRfYnlfY2F0ZWdvcnknKVswXS52YWx1ZSxcbiAgICAgIGVuZ2xpc2hfbGV2ZWw6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnZW5nbGlzaF9sZXZlbCcpWzBdLnZhbHVlLFxuICAgICAgcGF5bWVudF9tZXRob2Q6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGF5bWVudF9tZXRob2QnKVswXS52YWx1ZSxcbiAgICAgIHF1b3RhX3RpbWVzOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3F1b3RhX3RpbWVzJylbMF0udmFsdWUsXG4gICAgICBwYXltZW50X2RhdGU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGF5bWVudF9kYXRlJylbMF0udmFsdWUsXG4gICAgICBwYXltZW50X2RhdGVzOiB0aGlzLmZpbmFuY2luZ0RhdGEhLFxuICAgICAgcHJvZ3JhbV9wcmljZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwcm9ncmFtX3ByaWNlJylbMF0udmFsdWUsXG4gICAgICB0b3RhbF9wcmljZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICd0b3RhbF9wcmljZScpWzBdLnZhbHVlLFxuICAgICAgcGFpZF9sZXZlbDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYWlkX2xldmVsJylbMF0udmFsdWUsXG4gICAgICB0ZXJtczogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICd0ZXJtcycpWzBdLnZhbHVlLFxuICAgICAgcmVfcGFzc3dvcmQ6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncmVfcGFzc3dvcmQnKVswXS52YWx1ZSxcbiAgICAgIGFnZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdhZ2UnKVswXS52YWx1ZSxcbiAgICAgIGNvdW50cnk6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnY291bnRyeScpWzBdLnZhbHVlLFxuICAgICAgc3RhdGU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3RhdGUnKVswXS52YWx1ZSxcbiAgICAgIGFjYWRlbWljX3BsYW46IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnYWNhZGVtaWNfcGxhbicpWzBdLnZhbHVlLFxuICAgICAgY29kZV9yZWZlcnM6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnY29kZV9yZWZlcnMnKVswXS52YWx1ZSxcbiAgICB9XG4gICAgcmV0dXJuIHJlcXVlc3Q7XG4gIH1cblxuICBnZXRVcGRhdGVDT0QoZGF0YTogYW55W10pOiBJVXBkYXRlQ09EUnEge1xuICAgIGxldCByZXF1ZXN0OiBJVXBkYXRlQ09EUnEgPSB7XG4gICAgICB0b2tlbjogdGhpcy5iYXNlU2VydmljZS5nZXRVc2VyVG9rZW4oKSxcbiAgICAgIHN0dWRlbnRfbmFtZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X25hbWUnKVswXS52YWx1ZSxcbiAgICAgIHN0dWRlbnRfbGFzdF9uYW1lOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWRlbnRfbGFzdF9uYW1lJylbMF0udmFsdWUsXG4gICAgICBuaWNrbmFtZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICduaWNrbmFtZScpWzBdLnZhbHVlLFxuICAgICAgc3R1ZGVudF9lbWFpbDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X2VtYWlsJylbMF0udmFsdWUsXG4gICAgICBzdHVkZW50X3Bob25lX2luZGljYXRpdmU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3R1ZGVudF9waG9uZV9pbmRpY2F0aXZlJylbMF0udmFsdWUsXG4gICAgICBzdHVkZW50X3Bob25lX251bWJlcjogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X3Bob25lX251bWJlcicpWzBdLnZhbHVlLFxuICAgICAgZ2VuZGVyOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2dlbmRlcicpWzBdLnZhbHVlLFxuICAgICAgYmlydGhkYXRlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2JpcnRoZGF0ZScpWzBdLnZhbHVlLFxuICAgICAgY2l0eTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdjaXR5JylbMF0udmFsdWUsXG4gICAgICBzdHVkZW50X2lkX2NhcmRfdHlwZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X2lkX2NhcmRfdHlwZScpWzBdLnZhbHVlLFxuICAgICAgc3R1ZGVudF9pZF9jYXJkOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWRlbnRfaWRfY2FyZCcpWzBdLnZhbHVlLFxuICAgICAgbmVlZEF0ZW5kYW50OiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ25lZWRBdGVuZGFudCcpWzBdLnZhbHVlLFxuICAgICAgcGFyZW50X25hbWU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X25hbWUnKVswXS52YWx1ZSxcbiAgICAgIHBhcmVudF9sYXN0X25hbWU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X2xhc3RfbmFtZScpWzBdLnZhbHVlLFxuICAgICAgcGFyZW50X2lkX2NhcmRfdHlwZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXJlbnRfaWRfY2FyZF90eXBlJylbMF0udmFsdWUsXG4gICAgICBwYXJlbnRfaWRfY2FyZDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXJlbnRfaWRfY2FyZCcpWzBdLnZhbHVlLFxuICAgICAgcGFyZW50X3Bob25lX2luZGljYXRpdmU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X3Bob25lX2luZGljYXRpdmUnKVswXS52YWx1ZSxcbiAgICAgIHBhcmVudF9waG9uZV9udW1iZXI6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X3Bob25lX251bWJlcicpWzBdLnZhbHVlLFxuICAgICAgcGFyZW50X29jY3VwYXRpb246IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X29jY3VwYXRpb24nKVswXS52YWx1ZSxcbiAgICAgIHBhcmVudF9vZmZpY2VfYWRkcmVzczogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXJlbnRfYWRkcmVzcycpWzBdLnZhbHVlLFxuICAgICAgc29jaWFsX3N0cmF0dW06IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3RyYXR1bScpWzBdLnZhbHVlLFxuICAgICAgY2l2aWxfc3RhdHVzOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2NpdmlsX3N0YXR1cycpWzBdLnZhbHVlLFxuICAgICAgZWR1Y2F0aW9uYWxfbGV2ZWw6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnZ3JhZGUnKVswXS52YWx1ZSxcbiAgICAgIHN0dWRlbnRfYWRkcmVzczogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X2FkZHJlc3MnKVswXS52YWx1ZSxcbiAgICAgIHN0dWRlbnRfb2NjdXBhdGlvbjogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X29jY3VwYXRpb24nKVswXS52YWx1ZSxcbiAgICAgIGRpc2FiaWxpdHk6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnZGlzYWJpbGl0eScpWzBdLnZhbHVlLFxuICAgICAgaGVhbHRoX3JlZ2ltZW46IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnaGVhbHRoX3JlZ2ltZW4nKVswXS52YWx1ZSxcbiAgICAgIG1hcmtldGluZ19yZWFzb25zOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ21hcmtldGluZ19yZWFzb25zJylbMF0udmFsdWUsXG4gICAgICBzdHVkeV9yZWFzb25zOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWR5X3JlYXNvbnMnKVswXS52YWx1ZSxcbiAgICAgIG9ic2VydmF0aW9uOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ29ic2VydmF0aW9uJylbMF0udmFsdWUsXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzE6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbXVsdGljdWx0dXJhbGlzbV8xJylbMF0udmFsdWUsXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzI6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbXVsdGljdWx0dXJhbGlzbV8yJylbMF0udmFsdWUsXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzM6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbXVsdGljdWx0dXJhbGlzbV8zJylbMF0udmFsdWUsXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzQ6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbXVsdGljdWx0dXJhbGlzbV80JylbMF0udmFsdWUsXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbXVsdGljdWx0dXJhbGlzbV81JylbMF0udmFsdWUsXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzY6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbXVsdGljdWx0dXJhbGlzbV82JylbMF0udmFsdWUsXG4gICAgICBhdmFpbGlibGVfY291cnNlczogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdhdmFpbGlibGVfY291cnNlcycpWzBdLnZhbHVlLFxuICAgICAgY291cnNlX3R5cGU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnY291cnNlX3R5cGUnKVswXS52YWx1ZSxcbiAgICAgIGFncmVlbWVudF9ieV9jYXRlZ29yeTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdhZ3JlZW1lbnRfYnlfY2F0ZWdvcnknKVswXS52YWx1ZSxcbiAgICAgIGVuZ2xpc2hfbGV2ZWw6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnZW5nbGlzaF9sZXZlbCcpWzBdLnZhbHVlLFxuICAgICAgcGF5bWVudF9tZXRob2Q6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGF5bWVudF9tZXRob2QnKVswXS52YWx1ZSxcbiAgICAgIHF1b3RhX3RpbWVzOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3F1b3RhX3RpbWVzJylbMF0udmFsdWUsXG4gICAgICBwYXltZW50X2RhdGU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGF5bWVudF9kYXRlJylbMF0udmFsdWUsXG4gICAgICBwYXltZW50X2RhdGVzOiB0aGlzLmZpbmFuY2luZ0RhdGEhLFxuICAgICAgcHJvZ3JhbV9wcmljZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwcm9ncmFtX3ByaWNlJylbMF0udmFsdWUsXG4gICAgICB0b3RhbF9wcmljZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICd0b3RhbF9wcmljZScpWzBdLnZhbHVlLFxuICAgICAgcGFpZF9sZXZlbDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYWlkX2xldmVsJylbMF0udmFsdWUsXG4gICAgICB0ZXJtczogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICd0ZXJtcycpWzBdLnZhbHVlLFxuICAgICAgYWdlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2FnZScpWzBdLnZhbHVlLFxuICAgICAgY291bnRyeTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdjb3VudHJ5JylbMF0udmFsdWUsXG4gICAgICBzdGF0ZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdGF0ZScpWzBdLnZhbHVlLFxuICAgICAgYWNhZGVtaWNfcGxhbjogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdhY2FkZW1pY19wbGFuJylbMF0udmFsdWUsXG4gICAgICBjb2RlX3JlZmVyczogdGhpcy5wYXJzZU51bWJlcihkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2NvZGVfcmVmZXJzJylbMF0udmFsdWUpLFxuICAgICAgY29kZV9jb2Q6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnY29kZV9jb2QnKVswXS52YWx1ZSxcbiAgICB9XG4gICAgcmV0dXJuIHJlcXVlc3Q7XG4gIH1cblxuICBjaGFuZ2VTdGVwKHN0ZXA6IG51bWJlcikge1xuICAgIHRoaXMuY3VycmVudFN0ZXAgPSBzdGVwO1xuICB9XG5cbiAgcGFyc2VOdW1iZXIodmFsdWU6IGFueSk6IG51bWJlciB8IG51bGwge1xuICAgIGNvbnN0IHBhcnNlZFZhbHVlID0gcGFyc2VGbG9hdCh2YWx1ZSk7XG4gICAgcmV0dXJuIGlzTmFOKHBhcnNlZFZhbHVlKSA/IG51bGwgOiBwYXJzZWRWYWx1ZTtcbiAgfVxuXG4gIGdldFBhcmFtZXRlcnMoKXtcbiAgICB0aGlzLnBhcmFtZXRlclNlcnZpY2UuZ2V0QWxsUGFyYW1ldGVyc0NvZEZvcm0oKS5zdWJzY3JpYmUoKHJlc3BvbnNlKSA9PiB7XG4gICAgICB0aGlzLnBhcmFtZXRlcnNBbGwgPSByZXNwb25zZS5kYXRhO1xuICAgIH0pO1xuICB9XG59XG4iLCI8ZGl2ICpuZ0lmPVwiYWxsb3dlZFJvbGUoKSA7IGVsc2UgVW5hdXRob3JpemVkXCIgY2xhc3M9XCJjb250YWluZXIgZmxleCBmbGV4LWNvbHVtbiBiZy13aGl0ZSBib3JkZXItcm91bmQtMnhsIHAtMyBjb250YWluZXIgYW5pbWF0ZV9fYW5pbWF0ZWQgYW5pbWF0ZV9fZmFkZUluVXBcIj5cblxuICA8c3BhbiAqbmdJZj1cImVkaXRDb2RcIiBjbGFzcz1cImJnLXllbGxvdy01MDAgcC0yIGJvcmRlci1yb3VuZCBtYi0yIHctYXV0byB0ZXh0LWxnIGZvbnQtc2VtaWJvbGRcIiBzdHlsZT1cImNvbG9yOiB3aGl0ZTtcIj57eyBmb3JtVGl0bGUgfX08L3NwYW4+XG4gIDxzcGFuICpuZ0lmPVwiIWVkaXRDb2QgJiYgIWRhdGFGcm9tUHJldml1c0NvZERhdGE/LmNvZF9yZW5vdmF0aW9uXCIgY2xhc3M9XCJiZy1wcmltYXJ5IHAtMiBib3JkZXItcm91bmQgbWItMiB3LWF1dG8gdGV4dC1sZyBmb250LXNlbWlib2xkXCI+e3sgZm9ybVRpdGxlIH19PC9zcGFuPlxuICA8c3BhbiAqbmdJZj1cIiFlZGl0Q29kICYmIGRhdGFGcm9tUHJldml1c0NvZERhdGE/LmNvZF9yZW5vdmF0aW9uID09IHRydWVcIiBjbGFzcz1cInAtMiBib3JkZXItcm91bmQgbWItMiB3LWF1dG8gdGV4dC1sZyBmb250LXNlbWlib2xkXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOiMxZGE3NTA7IGNvbG9yOiB3aGl0ZTtcIj57eyBmb3JtVGl0bGUgfX08L3NwYW4+XG4gIDxkaXYgKm5nSWY9XCJwYXJhbWV0ZXJzQWxsICE9PSBudWxsXCI+XG4gICAgPHAtdGFiVmlldyBbYWN0aXZlSW5kZXhdPVwiY3VycmVudFN0ZXBcIiAoYWN0aXZlSW5kZXhDaGFuZ2UpPVwiY3VycmVudFN0ZXAgPSAkZXZlbnRcIiBbc2Nyb2xsYWJsZV09XCJ0cnVlXCI+XG4gICAgICA8cC10YWJQYW5lbCBsZWZ0SWNvbj1cInBpIHBpLXN0YXJcIiBoZWFkZXI9XCIxLiBQbGFuZXMgeSBjb252ZW5pb3NcIj5cbiAgICAgICAgPGFwcC1jb2QtZm9ybS1zdGVwLW9uZSAoY2hhbmdlU3RlcEV2ZW50KT1cImNoYW5nZVN0ZXAoJGV2ZW50KVwiIFtpbml0aWFsRGF0YV09XCJjb3Vyc2VTZWxlY3RcIiBbZGF0YVByZXZpdXNDb2REYXRhXT1cImRhdGFGcm9tUHJldml1c0NvZERhdGFcIiBbaXNFZGl0Q29kXT1cImVkaXRDb2RcIiBbY291cnNlU2VsZWN0UmVub3ZhdGlvbl09XCJDb3Vyc2VTZWxlY3RSZW5vdmF0aW9uXCIgW2lzUmVub3ZhdGlvbl09XCJpc1Jlbm92YXRpb25cIiBbcGFyYW1ldGVyc0FsbF09XCJwYXJhbWV0ZXJzQWxsXCIgY2xhc3M9XCJwLTFcIj48L2FwcC1jb2QtZm9ybS1zdGVwLW9uZT5cbiAgICAgIDwvcC10YWJQYW5lbD5cbiAgICAgIDxwLXRhYlBhbmVsIGxlZnRJY29uPVwicGkgcGktaWQtY2FyZFwiIGhlYWRlcj1cIjIuIERhdG9zIGRlbCBlc3R1ZGlhbnRlXCI+XG4gICAgICAgIDxhcHAtY29kLWZvcm0tc3RlcC10d28gKGNoYW5nZVN0ZXBFdmVudCk9XCJjaGFuZ2VTdGVwKCRldmVudClcIiBbaW5pdGlhbERhdGFdPVwiZGF0YUZyb21QcmV2aXVzQ29kRGF0YVwiIFtpc0VkaXRDb2RdPVwiZWRpdENvZFwiIFtwYXJhbWV0ZXJzQWxsXT1cInBhcmFtZXRlcnNBbGxcIiBjbGFzcz1cInAtMVwiPjwvYXBwLWNvZC1mb3JtLXN0ZXAtdHdvPlxuICAgICAgPC9wLXRhYlBhbmVsPlxuICAgICAgPHAtdGFiUGFuZWwgbGVmdEljb249XCJwaSBwaS11c2VyLWVkaXRcIiBoZWFkZXI9XCIzLiBEYXRvcyBkZWwgYWN1ZGllbnRlXCI+XG4gICAgICAgIDxhcHAtY29kLWZvcm0tc3RlcC10aHJlZSAgKGNoYW5nZVN0ZXBFdmVudCk9XCJjaGFuZ2VTdGVwKCRldmVudClcIiBbaW5pdGlhbERhdGFdPVwiZGF0YUZyb21QcmV2aXVzQ29kRGF0YVwiIFtpc0VkaXRDb2RdPVwiZWRpdENvZFwiIFtwYXJhbWV0ZXJzQWxsXT1cInBhcmFtZXRlcnNBbGxcIiBjbGFzcz1cInAtMVwiPjwvYXBwLWNvZC1mb3JtLXN0ZXAtdGhyZWU+XG4gICAgICA8L3AtdGFiUGFuZWw+XG4gICAgICA8cC10YWJQYW5lbCBsZWZ0SWNvbj1cInBpIHBpLW1vbmV5LWJpbGxcIiBoZWFkZXI9XCI0LiBWYWxvcmVzXCI+XG4gICAgICAgIDxhcHAtY29kLWZvcm0tc3RlcC1mb3VyIChjaGFuZ2VTdGVwRXZlbnQpPVwiY2hhbmdlU3RlcCgkZXZlbnQpXCIgKGZpbmFuY2luZ0RhdGEpPVwic2F2ZUZpbmFuY2luZ0RhdGEoJGV2ZW50KVwiIFtpbml0aWFsRGF0YV09XCJkYXRhRnJvbVByZXZpdXNDb2REYXRhXCIgW2lzRWRpdENvZF09XCJlZGl0Q29kXCIgY2xhc3M9XCJwLTFcIiBbaXNSZW5vdmF0aW9uXT1cImlzUmVub3ZhdGlvblwiPjwvYXBwLWNvZC1mb3JtLXN0ZXAtZm91cj5cbiAgICAgIDwvcC10YWJQYW5lbD5cbiAgICAgIDxwLXRhYlBhbmVsIGxlZnRJY29uPVwicGkgcGktZXllXCIgaGVhZGVyPVwiNS4gT2JzZXJ2YWNpb25lc1wiPlxuICAgICAgICA8YXBwLWNvZC1mb3JtLXN0ZXAtZml2ZSAoY2hhbmdlU3RlcEV2ZW50KT1cImNoYW5nZVN0ZXAoJGV2ZW50KVwiIFt1c2VyUm9sZV09XCJ1c2VyUm9sZVwiIFtpbml0aWFsRGF0YV09XCJkYXRhRnJvbVByZXZpdXNDb2REYXRhXCIgKGFjdGlvbik9XCJnZXRGb3JtQWN0aW9uKCRldmVudClcIiBbaXNFZGl0Q29kXT1cImVkaXRDb2RcIiBbaXNSZW5vdmF0aW9uXT1cImlzUmVub3ZhdGlvblwiIGNsYXNzPVwicC0xXCIgW3BhcmFtZXRlcnNBbGxdPVwicGFyYW1ldGVyc0FsbFwiPjwvYXBwLWNvZC1mb3JtLXN0ZXAtZml2ZT5cbiAgICAgIDwvcC10YWJQYW5lbD5cbiAgICA8L3AtdGFiVmlldz5cbiAgPC9kaXY+XG5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI1VuYXV0aG9yaXplZD5cbiAgPHNwYW4gY2xhc3M9XCJmbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgZm9udC1ib2xkIHAtMiBiZy15ZWxsb3ctMjAwIGJvcmRlci1yb3VuZC1sZyB3LWZ1bGxcIj5cbiAgICBObyB0aWVuZXMgbG9zIHBlcm1pc29zIHBhcmEgYWNjZWRlciBhIGVzdGEgZnVuY2lvbmFsaWRhZCwgY29tdW7DrWNhdGUgY29uIGVsIGRlc2Fycm9sbGFkb3IuXG4gIDwvc3Bhbj5cbjwvbmctdGVtcGxhdGU+XG5cblxuPGlwdC1sb2FkZXIgKm5nSWY9XCJpc0xvYWRpbmdcIiBbaXNEaWFsb2ddPVwidHJ1ZVwiIFttZXNzYWdlXT1cImxvYWRlck1lc3NhZ2VcIj48L2lwdC1sb2FkZXI+XG4iXX0=
@@ -5481,8 +5481,10 @@ class CodFormComponent {
5481
5481
  }
5482
5482
  }
5483
5483
  getFormAction(action) {
5484
- if (!this.isRenovation) {
5485
- if (!this.financingData && this.localStorageCOD.getCodFormData(4, 'payment_method') === '1') {
5484
+ console.log(this.isRenovation);
5485
+ console.log(this.financingData);
5486
+ if (this.isRenovation == true) {
5487
+ if (this.localStorageCOD.getCodFormData(4, 'payment_method') === '1') {
5486
5488
  Swal.fire({
5487
5489
  title: 'Querido asesor',
5488
5490
  text: 'Debe hacer el cálculo de las cuotas en el paso 4',
@@ -5490,9 +5492,10 @@ class CodFormComponent {
5490
5492
  });
5491
5493
  return;
5492
5494
  }
5495
+ this.financingData = [];
5493
5496
  }
5494
5497
  else {
5495
- if (this.localStorageCOD.getCodFormData(4, 'payment_method') === '1') {
5498
+ if (!this.financingData && this.localStorageCOD.getCodFormData(4, 'payment_method') === '1') {
5496
5499
  Swal.fire({
5497
5500
  title: 'Querido asesor',
5498
5501
  text: 'Debe hacer el cálculo de las cuotas en el paso 4',