@reusa/ngx-reusa-app-lib 0.0.1337 → 0.0.1339
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.
- package/esm2022/lib/components/weekly-cert-employer/weekly-cert-employer.component.mjs +2 -2
- package/esm2022/lib/components/weekly-work-search-employer-ms/work-search-employer-ms.component.mjs +3 -3
- package/esm2022/lib/components/weekly-work-search-journal/weekly-work-search-journal.component.mjs +2 -1
- package/fesm2022/reusa-ngx-reusa-app-lib.mjs +4 -3
- package/fesm2022/reusa-ngx-reusa-app-lib.mjs.map +1 -1
- package/lib/components/weekly-work-search-journal/weekly-work-search-journal.component.d.ts.map +1 -1
- package/package.json +1 -1
package/esm2022/lib/components/weekly-work-search-employer-ms/work-search-employer-ms.component.mjs
CHANGED
|
@@ -453,7 +453,7 @@ export class WorkSearchEmployerComponentMS extends BasePage {
|
|
|
453
453
|
this.displayJobSearchQuestions = false;
|
|
454
454
|
this.employerName.addValidators([Validators.required, Validators.pattern(/^(?!.*[%<>\^_{}])[A-Za-z0-9\s\.,&'()#!@:$\/\\\-\+?"]+$/)]);
|
|
455
455
|
this.employerName.updateValueAndValidity();
|
|
456
|
-
this.line1.addValidators([Validators.required, Validators.pattern(/^[0-9A-Za-z\s,'\-\.#\/]+$/), Validators.maxLength(
|
|
456
|
+
this.line1.addValidators([Validators.required, Validators.pattern(/^[0-9A-Za-z\s,'\-\.#\/]+$/), Validators.maxLength(40)]);
|
|
457
457
|
this.line1.updateValueAndValidity();
|
|
458
458
|
this.city.addValidators([Validators.required, Validators.pattern(/^(?!-)[A-Za-z -]*$/), Validators.maxLength(30)]);
|
|
459
459
|
this.city.updateValueAndValidity();
|
|
@@ -469,7 +469,7 @@ export class WorkSearchEmployerComponentMS extends BasePage {
|
|
|
469
469
|
this.displayJobApplicationQuestions = false;
|
|
470
470
|
this.employerName.addValidators([Validators.required, Validators.pattern(/^(?!.*[%<>\^_{}])[A-Za-z0-9\s\.,&'()#!@:$\/\\\-\+?"]+$/)]);
|
|
471
471
|
this.employerName.updateValueAndValidity();
|
|
472
|
-
this.line1.addValidators([Validators.required, Validators.pattern(/^[0-9A-Za-z\s,'\-\.#\/]+$/), Validators.maxLength(
|
|
472
|
+
this.line1.addValidators([Validators.required, Validators.pattern(/^[0-9A-Za-z\s,'\-\.#\/]+$/), Validators.maxLength(40)]);
|
|
473
473
|
this.line1.updateValueAndValidity();
|
|
474
474
|
this.city.addValidators([Validators.required, Validators.pattern(/^(?!-)[A-Za-z -]*$/), Validators.maxLength(30)]);
|
|
475
475
|
this.city.updateValueAndValidity();
|
|
@@ -682,4 +682,4 @@ export class WorkSearchEmployerComponentMS extends BasePage {
|
|
|
682
682
|
type: Input
|
|
683
683
|
}] }); })();
|
|
684
684
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(WorkSearchEmployerComponentMS, { className: "WorkSearchEmployerComponentMS", filePath: "lib\\components\\weekly-work-search-employer-ms\\work-search-employer-ms.component.ts", lineNumber: 18 }); })();
|
|
685
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29yay1zZWFyY2gtZW1wbG95ZXItbXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJldXNhLWFwcC1saWIvc3JjL2xpYi9jb21wb25lbnRzL3dlZWtseS13b3JrLXNlYXJjaC1lbXBsb3llci1tcy93b3JrLXNlYXJjaC1lbXBsb3llci1tcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcmV1c2EtYXBwLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvd2Vla2x5LXdvcmstc2VhcmNoLWVtcGxveWVyLW1zL3dvcmstc2VhcmNoLWVtcGxveWVyLW1zLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RyxPQUFPLEVBQWdELFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTFGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFdkQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFFN0YsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lDUzdDLCtCQUE2RSxhQUFBLGdCQUFBO0lBRS9DLFlBQWtEOztJQUFBLGlCQUFRO0lBQ3BGLCtDQUNvQjtJQUQ4QixzTUFBVyxlQUFBLDBCQUFtQixDQUFBLElBQUM7SUFDN0QsaUJBQXNCO0lBQzFDLCtCQUVlO0lBQ2pCLGlCQUFNO0lBRU4sOEJBQW1CLGdCQUFBO0lB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QUNFLDZCQUE2QjsrR0FRaEMsZ0JBQWdCO2tCQUR0QixTQUFTO21CQUFDLGtCQUFrQixFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtZQUloRCxPQUFPO2tCQUROLE1BQU07WUFJUCxPQUFPO2tCQUROLE1BQU07WUFJQSxpQkFBaUI7a0JBRHZCLEtBQUs7WUFJQyxJQUFJO2tCQURWLEtBQUs7WUFJQyxPQUFPO2tCQURiLEtBQUs7WUFJQyxPQUFPO2tCQURiLEtBQUs7WUFJQyxhQUFhO2tCQURuQixLQUFLO1lBSUMsYUFBYTtrQkFEbkIsS0FBSztZQUlDLE9BQU87a0JBRGIsS0FBSzs7a0ZBN0JLLDZCQUE2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTmdGb3JtLCBVbnR5cGVkRm9ybUJ1aWxkZXIsIFVudHlwZWRGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFV0aWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdXRpbC91dGlsLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBCYXNlUGFnZSB9IGZyb20gJy4uLy4uL3BhZ2VzL0Jhc2VQYWdlJztcclxuaW1wb3J0IHsgQ29tYm9PcHRpb24gfSBmcm9tICcuLi8uLi9tb2RlbHMvY29tYm8tbW9kZWwnO1xyXG5pbXBvcnQgeyBFbXBsb3llclNlYXJjaFJlc3VsdCB9IGZyb20gJy4uLy4uL21vZGVscy9FbXBsb3llckRldGFpbFNlYXJjaFJlc3VsdCc7XHJcbmltcG9ydCB7IFdvcmtTZWFyY2hSZWNvcmRNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy93ZWVrbHktY2VydC93b3JrLXNlYXJjaC1yZWNvcmQtdjItbW9kZWwnO1xyXG5pbXBvcnQgeyBXZWVrbHlDZXJ0U2VydmljZVYyIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvd2Vla2x5LWNlcnQvd2Vla2x5LWNlcnQtdjIuc2VydmljZSc7XHJcbmltcG9ydCB7IEFwcFZhbGlkYXRvcnMgfSBmcm9tICcuLi8uLi92YWxpZGF0aW9ucy9BcHBWYWxpZGF0b3JzJztcclxuaW1wb3J0IHsgTGliQ29uc3RhbnRzIH0gZnJvbSAnLi4vLi4vbW9kZWxzL0xpYkNvbnN0YW50cyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC13b3JrLXNlYXJjaC1lbXBsb3llci1tcycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3dvcmstc2VhcmNoLWVtcGxveWVyLW1zLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi93b3JrLXNlYXJjaC1lbXBsb3llci1tcy5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIFdvcmtTZWFyY2hFbXBsb3llckNvbXBvbmVudE1TIGV4dGVuZHMgQmFzZVBhZ2UgaW1wbGVtZW50cyBPbkluaXQgIHtcclxuICAgXHJcbiAgQFZpZXdDaGlsZCgnd3NyRm9ybURpcmVjdGl2ZScsIHsgc3RhdGljOiBmYWxzZSB9KVxyXG4gIHB1YmxpYyB3c3JGb3JtRGlyZWN0aXZlOiBOZ0Zvcm07XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHN1Y2Nlc3M6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBvbkNsb3NlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgcmVjb3JkSW5kZXhUb0VkaXQ6IG51bWJlcjtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZGF0YTogV29ya1NlYXJjaFJlY29yZE1vZGVsO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzYXREYXRlOiBEYXRlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzdW5EYXRlOiBEYXRlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzYXREYXRlU3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzdW5EYXRlU3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBqb3VybmFsOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHB1YmxpYyBhY3Rpdml0eVR5cGVDb21ib01zID0gQ29tYm9PcHRpb24uQWN0aXZpdHlUeXBlQ29tYm9NcztcclxuICBwdWJsaWMgd29ya1NlYXJjaE1ldGhvZENvbnRhY3RNcyA9IENvbWJvT3B0aW9uLldvcmtTZWFyY2hNZXRob2RDb250YWN0TXM7XHJcbiAgcHVibGljIHdvcmtTZWFyY2hSZXN1bHRDb21ib0pvYkFwcGxpY2F0aW9uTXMgPSBDb21ib09wdGlvbi5Xb3JrU2VhcmNoUmVzdWx0Q29tYm9Kb2JBcHBsaWNhdGlvbk1zO1xyXG4gIHB1YmxpYyB3b3JrU2VhcmNoUmVzdWx0Q29tYm9Kb2JTZWFyY2hNcyA9IENvbWJvT3B0aW9uLldvcmtTZWFyY2hSZXN1bHRDb21ib0pvYlNlYXJjaE1zO1xyXG4gIHB1YmxpYyBzdGF0ZXNDb21ibyA9IENvbWJvT3B0aW9uLlN0YXRlc0NvbWJvO1xyXG4gIHB1YmxpYyB3b3JrU2VhcmNoUmVjb3JkRGF0YSA6IFdvcmtTZWFyY2hSZWNvcmRNb2RlbCA9IG51bGw7XHJcblxyXG4gIGR5bmFtaWNQYXJhbTogYW55O1xyXG4gIHB1YmxpYyB3c3JGb3JtIDogVW50eXBlZEZvcm1Hcm91cDtcclxuICBwdWJsaWMgaXNSZWFkT25seSA6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBkaXNwbGF5Sm9iU2VhcmNoUXVlc3Rpb25zIDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGRpc3BsYXlKb2JBcHBsaWNhdGlvblF1ZXN0aW9ucyA6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBjdXJyZW50RGF0ZSA9IG5ldyBEYXRlKCk7XHJcbiAgY3VycmVudERhdGVTdHJpbmcgPSBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tVVMnKS5mb3JtYXQodGhpcy5jdXJyZW50RGF0ZSk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB3Y1NlcnZpY2U6IFdlZWtseUNlcnRTZXJ2aWNlVjIsIHB1YmxpYyBmb3JtQnVpbGRlcjogVW50eXBlZEZvcm1CdWlsZGVyLCBwdWJsaWMgdXRpbDogVXRpbFNlcnZpY2UpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIGlmICghdGhpcy5qb3VybmFsKSB7XHJcbiAgICAgIHRoaXMuc2F0RGF0ZSA9IHRoaXMudXRpbC5nZXRFbnRlcmVkRGF0ZSh0aGlzLndjU2VydmljZS5nZXRTYXR1cmRheURhdGUoKSlcclxuICAgICAgdGhpcy5zdW5EYXRlID0gdGhpcy51dGlsLmdldEVudGVyZWREYXRlKHRoaXMud2NTZXJ2aWNlLmdldFN1bmRheURhdGUoKSk7XHJcbiAgICAgIHRoaXMuc2F0RGF0ZVN0cmluZyA9IHRoaXMud2NTZXJ2aWNlLmdldFNhdHVyZGF5RGF0ZUFzU3RyaW5nKCk7XHJcbiAgICAgIHRoaXMuc3VuRGF0ZVN0cmluZyA9IHRoaXMud2NTZXJ2aWNlLmdldFN1bmRheURhdGVBc1N0cmluZygpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5keW5hbWljUGFyYW0gPSB7XHJcbiAgICAgICdzYXR1cmRheV9kYXRlJzogdGhpcy5zYXREYXRlU3RyaW5nLFxyXG4gICAgICAnc3VuZGF5X2RhdGUnOiB0aGlzLnN1bkRhdGVTdHJpbmcsXHJcbiAgICB9O1xyXG5cclxuICAgIHRoaXMuaW5pdGlsaXplV29ya1NlYXJjaEZvcm0oKTtcclxuICAgIHRoaXMudHJpbUlucHV0SGVscGVyKCk7XHJcbiAgfVxyXG5cclxuICBkYXRlSW5wdXQoZXZlbnQpe1xyXG4gICAgbGV0IGN1cnJlbnRWYWx1ZSA6IHN0cmluZyA9IGV2ZW50LnNyY0VsZW1lbnQudmFsdWU7XHJcbiAgICBpZihjdXJyZW50VmFsdWUpe1xyXG4gICAgICAgIGlmKGN1cnJlbnRWYWx1ZS5sZW5ndGggPT0gMiAmJiBjdXJyZW50VmFsdWUuY2hhckF0KDIpICE9ICcvJyl7XHJcbiAgICAgICAgICAgIGV2ZW50LnRhcmdldC52YWx1ZSA9IGN1cnJlbnRWYWx1ZSArIFwiL1wiO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZihjdXJyZW50VmFsdWUubGVuZ3RoID09IDUgJiYgY3VycmVudFZhbHVlLmNoYXJBdCg1KSAhPSAnLycpe1xyXG4gICAgICAgICAgICBldmVudC50YXJnZXQudmFsdWUgPSBjdXJyZW50VmFsdWUgKyBcIi9cIjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB0cmltSW5wdXRIZWxwZXIoKSB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5lbXBsb3llckVtYWlsLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsID0+IHtcclxuICAgICAgICBpZiAodmFsKSB7XHJcbiAgICAgICAgICBjb25zdCBzYW5pdGl6ZWQgPSB2YWwucmVwbGFjZSgvXFxzKy9nLCAnJyk7XHJcbiAgICAgICAgICBpZiAodmFsICE9PSBzYW5pdGl6ZWQpIHtcclxuICAgICAgICAgICAgdGhpcy5lbXBsb3llckVtYWlsLnNldFZhbHVlKHNhbml0aXplZCwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9LCAwKTtcclxuICB9XHJcblxyXG4gIGluaXRpbGl6ZVdvcmtTZWFyY2hGb3JtKCkge1xyXG4gICAgbGV0IHdzcjogV29ya1NlYXJjaFJlY29yZE1vZGVsO1xyXG4gICAgaWYgKHRoaXMuZGF0YSkge1xyXG4gICAgICB3c3IgPSB0aGlzLmRhdGE7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMucmVjb3JkSW5kZXhUb0VkaXQgPT0gdW5kZWZpbmVkIHx8IHRoaXMucmVjb3JkSW5kZXhUb0VkaXQgPT0gbnVsbCkge1xyXG4gICAgICB3c3IgPSBuZXcgV29ya1NlYXJjaFJlY29yZE1vZGVsKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB3c3IgPSB0aGlzLndjU2VydmljZS5nZXRXb3JrU2VhcmNoUmVjb3JkcygpW3RoaXMucmVjb3JkSW5kZXhUb0VkaXRdO1xyXG4gICAgfVxyXG4gICAgdGhpcy53c3JGb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XHJcbiAgICAgICdhY3Rpdml0eVR5cGUnOiBbd3NyLmFjdGl2aXR5VHlwZSwgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICd3b3JrU2VhcmNoRGF0ZSc6IFt3c3Iud29ya1NlYXJjaERhdGUgIT0gbnVsbCA/IHRoaXMuZ2V0RGF0ZSh3c3Iud29ya1NlYXJjaERhdGUpIDogJycsIFZhbGlkYXRvcnMuY29tcG9zZShbVmFsaWRhdG9ycy5yZXF1aXJlZCwgQXBwVmFsaWRhdG9ycy5pc0JldHdlZW4odGhpcy5zdW5EYXRlLCB0aGlzLmN1cnJlbnREYXRlKV0pXSxcclxuICAgICAgJ2VtcGxveWVyTmFtZSc6IFt3c3IuZW1wbG95ZXJOYW1lXSxcclxuICAgICAgJ2NpdHknOiBbd3NyLmNpdHldLFxyXG4gICAgICAnbGluZTEnOiBbd3NyLmxpbmUxXSxcclxuICAgICAgJ2xpbmUyJzogW3dzci5saW5lMl0sXHJcbiAgICAgICdzdGF0ZSc6IFt3c3Iuc3RhdGUgIT0gbnVsbCA/IHdzci5zdGF0ZSA6IExpYkNvbnN0YW50cy5TVEFURV0sXHJcbiAgICAgICdjb250YWN0TWV0aG9kJzogW3dzci5jb250YWN0TWV0aG9kICE9IG51bGwgPyB3c3IuY29udGFjdE1ldGhvZCA6ICcnXSxcclxuICAgICAgJ2VtcENvbnRhY3RQZXJzb25OYW1lJzogW3dzci5lbXBDb250YWN0UGVyc29uTmFtZV0sXHJcbiAgICAgICdlbXBDb250YWN0UGVyc29uVGl0bGUnOiBbd3NyLmVtcENvbnRhY3RQZXJzb25UaXRsZV0sXHJcbiAgICAgICd6aXAnOiBbd3NyLnppcF0sXHJcbiAgICAgICdlbXBsb3llclBob25lJzogW3dzci5lbXBsb3llclBob25lICE9IG51bGwgPyB3c3IuZW1wbG95ZXJQaG9uZSA6ICcnXSxcclxuICAgICAgJ2VtcGxveWVyRW1haWwnOiBbd3NyLmVtcGxveWVyRW1haWxdLFxyXG4gICAgICAnZW1wbG95ZXJXZWJzaXRlJzogW3dzci5lbXBsb3llcldlYnNpdGVdLFxyXG4gICAgICAnZW1wbG95ZXJGYXgnOiBbd3NyLmVtcGxveWVyRmF4ICE9IG51bGwgPyB3c3IuZW1wbG95ZXJGYXggOiAnJ10sXHJcbiAgICAgICdwb3NpdGlvbkFwcGxpZWRGb3InOiBbd3NyLnBvc2l0aW9uQXBwbGllZEZvcl0sXHJcbiAgICAgICdzZWFyY2hSZXN1bHQnOiBbd3NyLnNlYXJjaFJlc3VsdF0sXHJcbiAgICAgICd3aW5nc1JlZmVycmFsV29ya1NlYXJjaElkJzogW3dzci53aW5nc1JlZmVycmFsV29ya1NlYXJjaElkXSxcclxuICAgICAgJ2NsYWltYW50V29ya1NlYXJjaEpvdXJuYWxJZCc6IFt3c3IuY2xhaW1hbnRXb3JrU2VhcmNoSm91cm5hbElkXSxcclxuICAgICAgJ3dzcklkJzogW3dzci53c3JJZF1cclxuICAgIH0pO1xyXG5cclxuICAgIGlmICh3c3IuYWN0aXZpdHlUeXBlID09ICdKT0FQJykge1xyXG4gICAgICB0aGlzLmRpc3BsYXlKb2JBcHBsaWNhdGlvblF1ZXN0aW9ucyA9IHRydWU7XHJcbiAgICB9IGVsc2UgaWYgKHdzci5hY3Rpdml0eVR5cGUgPT0gJ0pPU0UnKSB7XHJcbiAgICAgIHRoaXMuZGlzcGxheUpvYlNlYXJjaFF1ZXN0aW9ucyA9IHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHdzci53aW5nc1JlZmVycmFsV29ya1NlYXJjaElkICE9IG51bGwgJiYgd3NyLndpbmdzUmVmZXJyYWxXb3JrU2VhcmNoSWQgIT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMuaXNSZWFkT25seSA9IHRydWU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmlzUmVhZE9ubHkgPSBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpID0+IHtcclxuICAgICAgdGhpcy5jb250YWN0TWV0aG9kLnNldFZhbHVlKHdzci5jb250YWN0TWV0aG9kICE9IG51bGwgPyB3c3IuY29udGFjdE1ldGhvZCA6ICcnKTtcclxuXHJcbiAgICAgIHRoaXMuY29udGFjdE1ldGhvZC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKHZhbCA9PiB7XHJcbiAgICAgICAgUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKSA9PiB0aGlzLnNldENvbnRhY3RJbmZvVmFsaWRhdGlvbih2YWwpKTtcclxuICAgICAgICBcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMuYWN0aXZpdHlUeXBlLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsID0+IHtcclxuICAgICAgICBQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpID0+IHRoaXMuc2V0QWN0aXZpdHlUeXBlVmFsaWRhdGlvbih2YWwpKTtcclxuICAgICAgfSk7XHJcblxyXG4gICAgICB0aGlzLnNldENvbnRhY3RJbmZvVmFsaWRhdGlvbih0aGlzLmNvbnRhY3RNZXRob2QudmFsdWUpO1xyXG4gICAgICB0aGlzLnNldEFjdGl2aXR5VHlwZVZhbGlkYXRpb24odGhpcy5hY3Rpdml0eVR5cGUudmFsdWUpO1xyXG5cclxuICAgIH0pO1xyXG5cclxuICB9XHJcblxyXG4gIHNldEFjdGl2aXR5VHlwZVZhbGlkYXRpb24odmFsOiBhbnkpIHtcclxuICAgIHRoaXMuZGlzcGxheUpvYkFwcGxpY2F0aW9uUXVlc3Rpb25zID0gZmFsc2U7XHJcbiAgICB0aGlzLmRpc3BsYXlKb2JTZWFyY2hRdWVzdGlvbnMgPSBmYWxzZTtcclxuICAgIGlmKHZhbCA9PSAnSk9BUCcgKXtcclxuICAgICAgdGhpcy5kaXNwbGF5Sm9iQXBwbGljYXRpb25RdWVzdGlvbnMgPSB0cnVlO1xyXG4gICAgICB0aGlzLmRpc3BsYXlKb2JTZWFyY2hRdWVzdGlvbnMgPSBmYWxzZTtcclxuXHJcbiAgICAgIHRoaXMuZW1wbG95ZXJOYW1lLmFkZFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMucGF0dGVybigvXig/IS4qWyU8PlxcXl97fV0pW0EtWmEtejAtOVxcc1xcLiwmJygpIyFAOiRcXC9cXFxcXFwtXFwrP1wiXSskLyldKTtcclxuICAgICAgdGhpcy5lbXBsb3llck5hbWUudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gICAgICB0aGlzLmxpbmUxLmFkZFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMucGF0dGVybigvXlswLTlBLVphLXpcXHMsJ1xcLVxcLiNcXC9dKyQvKSxWYWxpZGF0b3JzLm1heExlbmd0aCg1MCldKTtcclxuICAgICAgdGhpcy5saW5lMS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICAgIHRoaXMuY2l0eS5hZGRWYWxpZGF0b3JzKFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLnBhdHRlcm4oL14oPyEtKVtBLVphLXogLV0qJC8pLFZhbGlkYXRvcnMubWF4TGVuZ3RoKDMwKV0pO1xyXG4gICAgICB0aGlzLmNpdHkudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gICAgICB0aGlzLnV0aWwuc2V0UmVxdWlyZWRWYWxpZGF0b3IodGhpcy5zdGF0ZSk7XHJcbiAgICAgIHRoaXMudXRpbC5zZXRSZXF1aXJlZFZhbGlkYXRvcih0aGlzLnppcCk7XHJcbiAgICAgIHRoaXMucG9zaXRpb25BcHBsaWVkRm9yLmFkZFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMucGF0dGVybigvXig/IS0pW0EtWmEtejAtOSAtXSokLyksVmFsaWRhdG9ycy5tYXhMZW5ndGgoNTApXSk7XHJcbiAgICAgIHRoaXMucG9zaXRpb25BcHBsaWVkRm9yLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuICAgICAgdGhpcy51dGlsLnNldFJlcXVpcmVkVmFsaWRhdG9yKHRoaXMuY29udGFjdE1ldGhvZCk7XHJcbiAgICAgIHRoaXMudXRpbC5zZXRSZXF1aXJlZFZhbGlkYXRvcih0aGlzLnNlYXJjaFJlc3VsdCk7XHJcbiAgICB9XHJcbiAgICBpZih2YWwgPT0gJ0pPU0UnKXtcclxuICAgICAgdGhpcy5kaXNwbGF5Sm9iU2VhcmNoUXVlc3Rpb25zID0gdHJ1ZTtcclxuICAgICAgdGhpcy5kaXNwbGF5Sm9iQXBwbGljYXRpb25RdWVzdGlvbnMgPSBmYWxzZTtcclxuXHJcbiAgICAgIHRoaXMuZW1wbG95ZXJOYW1lLmFkZFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMucGF0dGVybigvXig/IS4qWyU8PlxcXl97fV0pW0EtWmEtejAtOVxcc1xcLiwmJygpIyFAOiRcXC9cXFxcXFwtXFwrP1wiXSskLyldKTtcclxuICAgICAgdGhpcy5lbXBsb3llck5hbWUudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gICAgICB0aGlzLmxpbmUxLmFkZFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMucGF0dGVybigvXlswLTlBLVphLXpcXHMsJ1xcLVxcLiNcXC9dKyQvKSxWYWxpZGF0b3JzLm1heExlbmd0aCg1MCldKTtcclxuICAgICAgdGhpcy5saW5lMS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICAgIHRoaXMuY2l0eS5hZGRWYWxpZGF0b3JzKFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLnBhdHRlcm4oL14oPyEtKVtBLVphLXogLV0qJC8pLFZhbGlkYXRvcnMubWF4TGVuZ3RoKDMwKV0pO1xyXG4gICAgICB0aGlzLmNpdHkudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gICAgICB0aGlzLnV0aWwuc2V0UmVxdWlyZWRWYWxpZGF0b3IodGhpcy5zdGF0ZSk7XHJcbiAgICAgIHRoaXMudXRpbC5zZXRSZXF1aXJlZFZhbGlkYXRvcih0aGlzLnppcCk7XHJcbiAgICAgIHRoaXMucG9zaXRpb25BcHBsaWVkRm9yLmFkZFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMucGF0dGVybigvXig/IS0pW0EtWmEtejAtOSAtXSokLyksVmFsaWRhdG9ycy5tYXhMZW5ndGgoNTApXSk7XHJcbiAgICAgIHRoaXMucG9zaXRpb25BcHBsaWVkRm9yLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuICAgICAgdGhpcy51dGlsLnNldFJlcXVpcmVkVmFsaWRhdG9yKHRoaXMuY29udGFjdE1ldGhvZCk7XHJcbiAgICAgIHRoaXMudXRpbC5zZXRSZXF1aXJlZFZhbGlkYXRvcih0aGlzLnNlYXJjaFJlc3VsdCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRDb250YWN0SW5mb1ZhbGlkYXRpb24odmFsOiBhbnkpIHtcclxuICAgIFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCkgPT4ge1xyXG4gICAgICBpZiAodmFsID09ICdURUxFJykge1xyXG4gICAgICAgIHRoaXMudXRpbC5zZXRSZXF1aXJlZFZhbGlkYXRvcih0aGlzLmVtcGxveWVyUGhvbmUpO1xyXG4gICAgICAgIHRoaXMudXRpbC5jbGVhclZhbGlkYXRpb24odGhpcy5lbXBDb250YWN0UGVyc29uTmFtZSk7XHJcbiAgICAgICAgdGhpcy51dGlsLmNsZWFyVmFsaWRhdGlvbih0aGlzLmVtcENvbnRhY3RQZXJzb25UaXRsZSk7XHJcbiAgICAgICAgdGhpcy51dGlsLmNsZWFyVmFsaWRhdGlvbih0aGlzLmVtcGxveWVyRW1haWwpO1xyXG4gICAgICAgIHRoaXMudXRpbC5jbGVhclZhbGlkYXRpb24odGhpcy5lbXBsb3llcldlYnNpdGUpO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh2YWwgPT0gJ0VNQUwnKSB7XHJcbiAgICAgICAgdGhpcy51dGlsLnNldFZhbGlkYXRpb24odGhpcy5lbXBsb3llckVtYWlsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5lbWFpbCwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoNDApXSk7XHJcbiAgICAgICAgdGhpcy51dGlsLmNsZWFyVmFsaWRhdGlvbih0aGlzLmVtcGxveWVyUGhvbmUpO1xyXG4gICAgICAgIHRoaXMudXRpbC5jbGVhclZhbGlkYXRpb24odGhpcy5lbXBDb250YWN0UGVyc29uTmFtZSk7XHJcbiAgICAgICAgdGhpcy51dGlsLmNsZWFyVmFsaWRhdGlvbih0aGlzLmVtcENvbnRhY3RQZXJzb25UaXRsZSk7XHJcbiAgICAgICAgdGhpcy51dGlsLmNsZWFyVmFsaWRhdGlvbih0aGlzLmVtcGxveWVyV2Vic2l0ZSk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHZhbCA9PSAnT05MSScpIHtcclxuICAgICAgICB0aGlzLnV0aWwuc2V0UmVxdWlyZWRWYWxpZGF0b3IodGhpcy5lbXBsb3llcldlYnNpdGUpO1xyXG4gICAgICAgIHRoaXMudXRpbC5zZXRWYWxpZGF0aW9uKHRoaXMuZW1wbG95ZXJXZWJzaXRlLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgQXBwVmFsaWRhdG9ycy5pc1ZhbGlkV2Vic2l0ZSwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoNDApXSlcclxuICAgICAgICB0aGlzLnV0aWwuY2xlYXJWYWxpZGF0aW9uKHRoaXMuZW1wbG95ZXJFbWFpbCk7XHJcbiAgICAgICAgdGhpcy51dGlsLmNsZWFyVmFsaWRhdGlvbih0aGlzLmVtcGxveWVyUGhvbmUpO1xyXG4gICAgICAgIHRoaXMudXRpbC5jbGVhclZhbGlkYXRpb24odGhpcy5lbXBDb250YWN0UGVyc29uTmFtZSk7XHJcbiAgICAgICAgdGhpcy51dGlsLmNsZWFyVmFsaWRhdGlvbih0aGlzLmVtcENvbnRhY3RQZXJzb25UaXRsZSk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHZhbCA9PSAnUFJTTicpIHtcclxuICAgICAgICB0aGlzLnV0aWwuc2V0VmFsaWRhdGlvbih0aGlzLmVtcENvbnRhY3RQZXJzb25OYW1lLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoNTApXSk7XHJcbiAgICAgICAgdGhpcy51dGlsLnNldFZhbGlkYXRpb24odGhpcy5lbXBDb250YWN0UGVyc29uVGl0bGUsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1heExlbmd0aCg1MCldKTtcclxuICAgICAgICB0aGlzLnV0aWwuY2xlYXJWYWxpZGF0aW9uKHRoaXMuZW1wbG95ZXJXZWJzaXRlKTtcclxuICAgICAgICB0aGlzLnV0aWwuY2xlYXJWYWxpZGF0aW9uKHRoaXMuZW1wbG95ZXJFbWFpbCk7XHJcbiAgICAgICAgdGhpcy51dGlsLmNsZWFyVmFsaWRhdGlvbih0aGlzLmVtcGxveWVyUGhvbmUpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldERhdGUod3NEYXRlKTogRGF0ZSB7XHJcbiAgICBpZighKHdzRGF0ZSBpbnN0YW5jZW9mIERhdGUpKXtcclxuICAgICAgcmV0dXJuIHRoaXMudXRpbC5nZXRFbnRlcmVkRGF0ZSh3c0RhdGUpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHdzRGF0ZTtcclxuICB9XHJcblxyXG4gIGdldCBhY3Rpdml0eVR5cGUoKXtcclxuICAgIHJldHVybiB0aGlzLndzckZvcm0uY29udHJvbHNbJ2FjdGl2aXR5VHlwZSddO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHdvcmtTZWFyY2hEYXRlKCl7XHJcbiAgICByZXR1cm4gdGhpcy53c3JGb3JtLmNvbnRyb2xzWyd3b3JrU2VhcmNoRGF0ZSddO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGVtcGxveWVyTmFtZSgpe1xyXG4gICAgcmV0dXJuIHRoaXMud3NyRm9ybS5jb250cm9sc1snZW1wbG95ZXJOYW1lJ107XHJcbiAgfVxyXG5cclxuICBnZXQgY2l0eSgpe1xyXG4gICAgcmV0dXJuIHRoaXMud3NyRm9ybS5jb250cm9sc1snY2l0eSddO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGxpbmUxKCl7XHJcbiAgICByZXR1cm4gdGhpcy53c3JGb3JtLmNvbnRyb2xzWydsaW5lMSddO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGxpbmUyKCl7XHJcbiAgICByZXR1cm4gdGhpcy53c3JGb3JtLmNvbnRyb2xzWydsaW5lMiddO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHN0YXRlKCl7XHJcbiAgICByZXR1cm4gdGhpcy53c3JGb3JtLmNvbnRyb2xzWydzdGF0ZSddO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGNvbnRhY3RNZXRob2QoKXtcclxuICAgIHJldHVybiB0aGlzLndzckZvcm0uY29udHJvbHNbJ2NvbnRhY3RNZXRob2QnXTtcclxuICB9XHJcblxyXG4gIGdldCBlbXBDb250YWN0UGVyc29uTmFtZSgpe1xyXG4gICAgcmV0dXJuIHRoaXMud3NyRm9ybS5jb250cm9sc1snZW1wQ29udGFjdFBlcnNvbk5hbWUnXTtcclxuICB9XHJcblxyXG4gIGdldCBlbXBDb250YWN0UGVyc29uVGl0bGUoKXtcclxuICAgIHJldHVybiB0aGlzLndzckZvcm0uY29udHJvbHNbJ2VtcENvbnRhY3RQZXJzb25UaXRsZSddO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHppcCgpe1xyXG4gICAgcmV0dXJuIHRoaXMud3NyRm9ybS5jb250cm9sc1snemlwJ107XHJcbiAgfVxyXG5cclxuICBnZXQgZW1wbG95ZXJQaG9uZSgpe1xyXG4gICAgcmV0dXJuIHRoaXMud3NyRm9ybS5jb250cm9sc1snZW1wbG95ZXJQaG9uZSddO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGVtcGxveWVyRW1haWwoKXtcclxuICAgIHJldHVybiB0aGlzLndzckZvcm0uY29udHJvbHNbJ2VtcGxveWVyRW1haWwnXTtcclxuICB9XHJcblxyXG4gIGdldCBlbXBsb3llcldlYnNpdGUoKXtcclxuICAgIHJldHVybiB0aGlzLndzckZvcm0uY29udHJvbHNbJ2VtcGxveWVyV2Vic2l0ZSddO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGVtcGxveWVyRmF4KCl7XHJcbiAgICByZXR1cm4gdGhpcy53c3JGb3JtLmNvbnRyb2xzWydlbXBsb3llckZheCddO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHBvc2l0aW9uQXBwbGllZEZvcigpe1xyXG4gICAgcmV0dXJuIHRoaXMud3NyRm9ybS5jb250cm9sc1sncG9zaXRpb25BcHBsaWVkRm9yJ107XHJcbiAgfVxyXG5cclxuICBnZXQgc2VhcmNoUmVzdWx0KCl7XHJcbiAgICByZXR1cm4gdGhpcy53c3JGb3JtLmNvbnRyb2xzWydzZWFyY2hSZXN1bHQnXTtcclxuICB9XHJcblxyXG4gIGdldCB3aW5nc1JlZmVycmFsV29ya1NlYXJjaElkKCl7XHJcbiAgICByZXR1cm4gdGhpcy53c3JGb3JtLmNvbnRyb2xzWyd3aW5nc1JlZmVycmFsV29ya1NlYXJjaElkJ107XHJcbiAgfVxyXG5cclxuICBnZXQgY2xhaW1hbnRXb3JrU2VhcmNoSm91cm5hbElkKCl7XHJcbiAgICByZXR1cm4gdGhpcy53c3JGb3JtLmNvbnRyb2xzWydjbGFpbWFudFdvcmtTZWFyY2hKb3VybmFsSWQnXTtcclxuICB9XHJcblxyXG4gIGdldCB3c3JJZCgpe1xyXG4gICAgcmV0dXJuIHRoaXMud3NyRm9ybS5jb250cm9sc1snd3NySWQnXTtcclxuICB9XHJcblxyXG4gIGFkZCgpe1xyXG4gICAgaWYodGhpcy53c3JGb3JtLnZhbGlkKXtcclxuICAgICAgdGhpcy5zdWNjZXNzLmVtaXQodGhpcy53c3JGb3JtLnZhbHVlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNsb3NlKCkge1xyXG4gICAgdGhpcy5vbkNsb3NlLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIHNldEVtcGxveWVyKGVtcGxveWVyOiBFbXBsb3llclNlYXJjaFJlc3VsdCkge1xyXG4gICAgUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKSA9PiB7XHJcbiAgICAgIHRoaXMuZW1wbG95ZXJOYW1lLnNldFZhbHVlKGVtcGxveWVyLmVtcGxveWVyTmFtZSk7XHJcbiAgICAgIHRoaXMubGluZTEuc2V0VmFsdWUoZW1wbG95ZXIuYWRkcmVzc0xpbmUxKTtcclxuICAgICAgdGhpcy5saW5lMi5zZXRWYWx1ZShlbXBsb3llci5hZGRyZXNzTGluZTIpO1xyXG4gICAgICB0aGlzLmNpdHkuc2V0VmFsdWUoZW1wbG95ZXIuY2l0eSk7XHJcbiAgICAgIHRoaXMuc3RhdGUuc2V0VmFsdWUoZW1wbG95ZXIuc3RhdGUudmFsdWUpO1xyXG4gICAgICB0aGlzLnppcC5zZXRWYWx1ZShlbXBsb3llci56aXApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiIsIjxwLWRpYWxvZyB2aXNpYmxlPVwidHJ1ZVwiIG1vZGFsPVwidHJ1ZVwiIGFwcGVuZFRvPVwiYm9keVwiIHBvc2l0aW9uPVwidG9wXCIgW3Nob3dIZWFkZXJdPVwiZmFsc2VcIlxyXG4gIFticmVha3BvaW50c109XCJ7JzEyMDBweCc6ICc2NjBweCcsICc5OTJweCc6ICc2NjBweCcsICc3NjhweCc6ICc2NjBweCcsICc1NzZweCc6ICcxMDB2dyd9XCI+XHJcbiAgPGg0IHN0eWxlPVwiY29sb3I6IHZhcigtLWlvbi1jb2xvci1ncmV5KTsgcGFkZGluZy1sZWZ0OiAyMHB4O1wiPnt7J3dvcmsuc2VhcmNoLmpvdXJuYWwuYWN0aXZpdHkuaGVhZGluZycgfFxyXG4gICAgdHJhbnNsYXRlOmR5bmFtaWNQYXJhbSB9fTwvaDQ+XHJcbiAgPGZvcm0gW2Zvcm1Hcm91cF09XCJ3c3JGb3JtXCIgI3dzckZvcm1EaXJlY3RpdmU9XCJuZ0Zvcm1cIj5cclxuICAgIDxpb24tZ3JpZD5cclxuICAgICAgPGlvbi1yb3c+XHJcbiAgICAgICAgPGlvbi1jb2wgY2xhc3M9XCJpb24tcGFkZGluZ1wiIHNpemU9XCIxMlwiIHNpemVTbT1cIjEyXCIgc2l6ZVhzPVwiMTJcIiBzaXplTWQ9XCI2XCIgc2l6ZUxnPVwiNlwiIHNpemVYbD1cIjZcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJwLWZsdWlkIHAtZm9ybWdyaWRcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cImFjdGl2aXR5VHlwZVwiPnt7J3dvcmsuc2VhcmNoLmpvdXJuYWwuYWN0aXZpdHkudHlwZScgfCB0cmFuc2xhdGV9fTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgPGFwcC1kcm9wZG93biBbb3B0aW9uc109XCJhY3Rpdml0eVR5cGVDb21ib01zXCIgb3B0aW9uTGFiZWw9XCJERVNDXCIgb3B0aW9uVmFsdWU9XCJOQU1FXCJcclxuICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJhY3Rpdml0eVR5cGVcIiBhcHBlbmRUbz1cImJvZHlcIiBpbnB1dElkPVwiYWN0aXZpdHlUeXBlXCI+PC9hcHAtZHJvcGRvd24+XHJcbiAgICAgICAgICAgICAgPGFwcC1lcnJvciBbY2xhc3NdPVwiJ2FwcC1ncmlkJ1wiIFtmaWVsZF09J2FjdGl2aXR5VHlwZScgW2Zvcm1dPVwid3NyRm9ybURpcmVjdGl2ZVwiIFtlcnJEZWZdPVwieyBcclxuICAgICAgICAgICAgICAgIHJlcXVpcmVkOiAnUmVxdWlyZWQuJ1xyXG4gICAgICAgICAgICAgIH1cIj48L2FwcC1lcnJvcj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8c2VjdGlvbiAqbmdJZj1cImRpc3BsYXlKb2JBcHBsaWNhdGlvblF1ZXN0aW9ucyB8fCBkaXNwbGF5Sm9iU2VhcmNoUXVlc3Rpb25zXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiZW1wbG95ZXJOYW1lXCI+e3snd29yay5zZWFyY2guam91cm5hbC5lbXBsb3llck5hbWUnIHwgdHJhbnNsYXRlfX08L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgPGFwcC1zZWFyY2gtZW1wbG95ZXIgW2Zvcm1Db250cm9sXT1cImVtcGxveWVyTmFtZVwiIChvbkZvdW5kKT1cInNldEVtcGxveWVyKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICBbZW1wVHlwZV09XCInUkVHJ1wiPjwvYXBwLXNlYXJjaC1lbXBsb3llcj5cclxuICAgICAgICAgICAgICAgIDxhcHAtZXJyb3IgW2NsYXNzXT1cIidhcHAtZ3JpZCdcIiBbZmllbGRdPSdlbXBsb3llck5hbWUnIFtmb3JtXT1cIndzckZvcm1EaXJlY3RpdmVcIiBbZXJyRGVmXT1cInsgXHJcbiAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiAnUmVxdWlyZWQuJywgcGF0dGVybjogJyUsIDwsID4sIF4sIF8sIHssIH0gYXJlIG5vdCBhbGxvd2VkJ1xyXG4gICAgICAgICAgICAgICAgfVwiPjwvYXBwLWVycm9yPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJsaW5lMVwiPnt7J3dvcmsuc2VhcmNoLmpvdXJuYWwuc3RyZWV0QWRkcmVzcycgfCB0cmFuc2xhdGV9fTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICA8aW5wdXQgaWQ9XCJsaW5lMVwiIHR5cGU9XCJpbnB1dFwiIHBJbnB1dFRleHQgW2Zvcm1Db250cm9sXT1cImxpbmUxXCIgYXBwU3RyaXBJbnZpc2libGVDaGFycy8+XHJcbiAgICAgICAgICAgICAgICA8YXBwLWVycm9yIFtjbGFzc109XCInYXBwLWdyaWQnXCIgW2ZpZWxkXT0nbGluZTEnIFtmb3JtXT1cIndzckZvcm1EaXJlY3RpdmVcIiBbZXJyRGVmXT1cInsgXHJcbiAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiAnUmVxdWlyZWQuJywgcGF0dGVybjogJ09ubHkgbGV0dGVycywgbnVtYmVycywgc3BhY2VzLCBjb21tYXMsIHBlcmlvZHMsIGFwb3N0cm9waGVzLCBoeXBoZW5zLCAjIGFuZCAvIGFsbG93ZWQnLFxyXG4gICAgICAgICAgICAgICAgICBtYXhsZW5ndGg6ICdjYW5ub3QgZXhjZWVkIDQwIGNoYXJhY3RlcnMnXHJcbiAgICAgICAgICAgICAgICB9XCI+PC9hcHAtZXJyb3I+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cImNpdHlcIj57eyd3b3JrLnNlYXJjaC5qb3VybmFsLmNpdHknIHwgdHJhbnNsYXRlfX08L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgPGlucHV0IGlkPVwiY2l0eVwiIHR5cGU9XCJpbnB1dFwiIHBJbnB1dFRleHQgW2Zvcm1Db250cm9sXT1cImNpdHlcIiBhcHBTdHJpcEludmlzaWJsZUNoYXJzLz5cclxuICAgICAgICAgICAgICAgIDxhcHAtZXJyb3IgW2NsYXNzXT1cIidhcHAtZ3JpZCdcIiBbZmllbGRdPSdjaXR5JyBbZm9ybV09XCJ3c3JGb3JtRGlyZWN0aXZlXCIgW2VyckRlZl09XCJ7IFxyXG4gICAgICAgICAgICAgICAgICByZXF1aXJlZDogJ1JlcXVpcmVkLicsXHJcbiAgICAgICAgICAgICAgICAgIGludmFsaWR3c0NpdHlMZW5ndGg6ICdDaXR5IHNob3VsZCBub3QgZXhjZWVkIGEgbGVuZ3RoIG9mIDMwIGNoYXJhY3RlcnMnLFxyXG4gICAgICAgICAgICAgICAgICAgcGF0dGVybjogJ0NpdHkgbmFtZSBjYW4gb25seSBjb250YWluIGxldHRlcnMsIHNwYWNlcywgYW5kIGh5cGhlbnMnLFxyXG4gICAgICAgICAgICAgICAgICAgbWF4bGVuZ3RoOiAnY2Fubm90IGV4Y2VlZCAzMCBjaGFyYWN0ZXJzJ1xyXG4gICAgICAgICAgICAgICAgfVwiPjwvYXBwLWVycm9yPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICA8aW9uLXJvdz5cclxuICAgICAgICAgICAgICAgIDxpb24tY29sIHN0eWxlPVwicGFkZGluZzogMHB4O1wiPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwic3RhdGVcIj57eyd3b3JrLnNlYXJjaC5qb3VybmFsLnN0YXRlJ3wgdHJhbnNsYXRlfX08L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgIDxhcHAtZHJvcGRvd24gaW5wdXRJZD1cInN0YXRlXCIgW29wdGlvbnNdPVwic3RhdGVzQ29tYm9cIiBvcHRpb25MYWJlbD1cIkRFU0NcIiBvcHRpb25WYWx1ZT1cIk5BTUVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgYXBwZW5kVG89XCJib2R5XCIgW2Zvcm1Db250cm9sXT1cInN0YXRlXCIgaW5wdXRJZD1cInN0YXRlXCI+PC9hcHAtZHJvcGRvd24+XHJcbiAgICAgICAgICAgICAgICAgICAgPGFwcC1lcnJvciBbY2xhc3NdPVwiJ2FwcC1ncmlkJ1wiIFtmaWVsZF09J3N0YXRlJyBbZm9ybV09XCJ3c3JGb3JtRGlyZWN0aXZlXCIgW2VyckRlZl09XCJ7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6ICdSZXF1aXJlZC4nXHJcbiAgICAgICAgICAgICAgICAgICAgfVwiPjwvYXBwLWVycm9yPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgICAgICAgIDxpb24tY29sIHNpemU9XCIxXCI+PC9pb24tY29sPlxyXG4gICAgICAgICAgICAgICAgPGlvbi1jb2wgc3R5bGU9XCJwYWRkaW5nOiAwcHg7XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJ6aXBcIj57eyd3b3JrLnNlYXJjaC5qb3VybmFsLnppcCd8IHRyYW5zbGF0ZX19PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgaWQ9XCJ6aXBcIiB0eXBlPVwiaW5wdXRcIiBwSW5wdXRUZXh0IFtmb3JtQ29udHJvbF09XCJ6aXBcIiBtaW5sZW5ndGg9XCI1XCIgbWF4bGVuZ3RoPVwiOVwiIGFwcFN0cmlwSW52aXNpYmxlQ2hhcnMvPlxyXG4gICAgICAgICAgICAgICAgICAgIDxhcHAtZXJyb3IgW2NsYXNzXT1cIidhcHAtZ3JpZCdcIiBbZmllbGRdPSd6aXAnIFtmb3JtXT1cIndzckZvcm1EaXJlY3RpdmVcIiBbZXJyRGVmXT1cInsgXHJcbiAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogJ1JlcXVpcmVkLicsXHJcbiAgICAgICAgICAgICAgICAgICAgICBpbnZhbGlkTGVuZ3RoOiAnWmlwIGNvZGUgc2hvdWxkIGJlIG9mIDUgb3IgOSBkaWdpdHMuJyxcclxuICAgICAgICAgICAgICAgICAgICAgIGludmFsaWROdW1iZXI6ICdaaXAgY29kZSBzaG91bGQgb25seSBoYXZlIG51bWJlcnMuJ1xyXG4gICAgICAgICAgICAgICAgICAgIH1cIj48L2FwcC1lcnJvcj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICAgICAgPC9pb24tcm93PlxyXG5cclxuICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgIDxpb24tY29sIGNsYXNzPVwiaW9uLXBhZGRpbmdcIiBzaXplPVwiMTJcIiBzaXplU209XCIxMlwiIHNpemVYcz1cIjEyXCIgc2l6ZU1kPVwiNlwiIHNpemVMZz1cIjZcIiBzaXplWGw9XCI2XCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicC1mbHVpZCBwLWZvcm1ncmlkXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiICpuZ0lmPVwiZGlzcGxheUpvYkFwcGxpY2F0aW9uUXVlc3Rpb25zIHx8IGRpc3BsYXlKb2JTZWFyY2hRdWVzdGlvbnNcIj5cclxuICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwid29ya1NlYXJjaERhdGVcIj57eyd3b3JrLnNlYXJjaC5qb3VybmFsLmFwcGxpY2F0aW9uRGF0ZSd8IHRyYW5zbGF0ZX19PC9sYWJlbD5cclxuICAgICAgICAgICAgICA8cC1jYWxlbmRhciBbc2hvd0ljb25dPVwidHJ1ZVwiIGlucHV0SWQ9XCJ3b3JrU2VhcmNoRGF0ZVwiIGFwcGVuZFRvPVwiYm9keVwiIFtmb3JtQ29udHJvbF09XCJ3b3JrU2VhcmNoRGF0ZVwiIGRhdGVGb3JtYXQ9XCJtbS9kZC95eVwiXHJcbiAgICAgICAgICAgICAgICBbbWluRGF0ZV09XCJzdW5EYXRlXCIgW21heERhdGVdPVwic2F0RGF0ZVwiIFtkZWZhdWx0RGF0ZV09XCJzdW5EYXRlXCIgW3NlbGVjdE90aGVyTW9udGhzXT1cInRydWVcIiBwbGFjZWhvbGRlcj1cIm1tL2RkL3l5eXlcIiBcclxuICAgICAgICAgICAgICAgIFttb250aE5hdmlnYXRvcl09XCJ0cnVlXCIgW3llYXJOYXZpZ2F0b3JdPVwidHJ1ZVwiIHllYXJSYW5nZT1cIjE5MDE6MjA1MFwiIChvbklucHV0KT1cImRhdGVJbnB1dCgkZXZlbnQpXCI+PC9wLWNhbGVuZGFyPiAgXHJcbiAgICAgICAgICAgICAgPGFwcC1lcnJvciBbY2xhc3NdPVwiJ2FwcC1ncmlkJ1wiIFtmaWVsZF09J3dvcmtTZWFyY2hEYXRlJyBbZm9ybV09XCJ3c3JGb3JtRGlyZWN0aXZlXCIgW2VyckRlZl09XCJ7IFxyXG4gICAgICAgICAgICAgICAgcmVxdWlyZWQ6ICdSZXF1aXJlZC4nLFxyXG4gICAgICAgICAgICAgICAgZGF0ZU5vdEJldHdlZW46ICdEYXRlIHNob3VsZCBiZSBiZXR3ZWVuICcgKyBzdW5EYXRlU3RyaW5nICsgJyBhbmQgJyArIGN1cnJlbnREYXRlU3RyaW5nICsgJy4nXHJcbiAgICAgICAgICAgICAgfVwiPjwvYXBwLWVycm9yPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPHNlY3Rpb24gKm5nSWY9XCJkaXNwbGF5Sm9iQXBwbGljYXRpb25RdWVzdGlvbnMgfHwgZGlzcGxheUpvYlNlYXJjaFF1ZXN0aW9uc1wiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInBvc2l0aW9uQXBwbGllZEZvclwiPnt7J3dvcmsuc2VhcmNoLmpvdXJuYWwuam9iVGl0bGUnfCB0cmFuc2xhdGV9fTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICA8aW5wdXQgaWQ9XCJwb3NpdGlvbkFwcGxpZWRGb3JcIiB0eXBlPVwiaW5wdXRcIiBwSW5wdXRUZXh0IFtmb3JtQ29udHJvbF09XCJwb3NpdGlvbkFwcGxpZWRGb3JcIiAgYXBwU3RyaXBJbnZpc2libGVDaGFycy8+XHJcbiAgICAgICAgICAgICAgICA8YXBwLWVycm9yIFtjbGFzc109XCInYXBwLWdyaWQnXCIgW2ZpZWxkXT0ncG9zaXRpb25BcHBsaWVkRm9yJyBbZm9ybV09XCJ3c3JGb3JtRGlyZWN0aXZlXCIgW2VyckRlZl09XCJ7IFxyXG4gICAgICAgICAgICAgICAgICByZXF1aXJlZDogJ1JlcXVpcmVkLicsXHJcbiAgICAgICAgICAgICAgICAgIHBhdHRlcm46ICdKb2IgVGl0bGUgY2FuIG9ubHkgY29udGFpbiBsZXR0ZXJzLCBzcGFjZXMsIGFuZCBoeXBoZW5zJyxcclxuICAgICAgICAgICAgICAgICAgbWF4bGVuZ3RoOiAnY2Fubm90IGV4Y2VlZCA1MCBjaGFyYWN0ZXJzJ1xyXG4gICAgICAgICAgICAgICAgfVwiPjwvYXBwLWVycm9yPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiZGlzcGxheUpvYkFwcGxpY2F0aW9uUXVlc3Rpb25zXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cImNvbnRhY3RNZXRob2RcIj57eyd3b3JrLnNlYXJjaC5qb3VybmFsLmNvbnRhY3RNZXRob2QnfCB0cmFuc2xhdGV9fTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgIDxwLXNlbGVjdEJ1dHRvbiBbb3B0aW9uc109XCJ3b3JrU2VhcmNoTWV0aG9kQ29udGFjdE1zXCIgb3B0aW9uTGFiZWw9XCJERVNDXCIgb3B0aW9uVmFsdWU9XCJOQU1FXCJcclxuICAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwiY29udGFjdE1ldGhvZFwiPjwvcC1zZWxlY3RCdXR0b24+XHJcbiAgICAgICAgICAgICAgICAgIDxhcHAtZXJyb3IgW2NsYXNzXT1cIidhcHAtZ3JpZCdcIiBbZmllbGRdPSdjb250YWN0TWV0aG9kJyBbZm9ybV09XCJ3c3JGb3JtRGlyZWN0aXZlXCIgW2VyckRlZl09XCJ7IFxyXG4gICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiAnUmVxdWlyZWQuJ1xyXG4gICAgICAgICAgICAgICAgICB9XCI+PC9hcHAtZXJyb3I+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImRpc3BsYXlKb2JTZWFyY2hRdWVzdGlvbnNcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiY29udGFjdE1ldGhvZFwiPnt7J3dvcmsuc2VhcmNoLmpvdXJuYWwuY29udGFjdE1ldGhvZEpvYlNlYXJjaCd8IHRyYW5zbGF0ZX19PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgPHAtc2VsZWN0QnV0dG9uIFtvcHRpb25zXT1cIndvcmtTZWFyY2hNZXRob2RDb250YWN0TXNcIiBvcHRpb25MYWJlbD1cIkRFU0NcIiBvcHRpb25WYWx1ZT1cIk5BTUVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJjb250YWN0TWV0aG9kXCI+PC9wLXNlbGVjdEJ1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgPGFwcC1lcnJvciBbY2xhc3NdPVwiJ2FwcC1ncmlkJ1wiIFtmaWVsZF09J2NvbnRhY3RNZXRob2QnIFtmb3JtXT1cIndzckZvcm1EaXJlY3RpdmVcIiBbZXJyRGVmXT1cInsgXHJcbiAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6ICdSZXF1aXJlZC4nXHJcbiAgICAgICAgICAgICAgICAgIH1cIj48L2FwcC1lcnJvcj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIiAqbmdJZj1cImNvbnRhY3RNZXRob2QudmFsdWUgPT0gJ1RFTEUnXCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiZW1wbG95ZXJQaG9uZVwiPnt7J3dvcmsuc2VhcmNoLmpvdXJuYWwucGhvbmVObycgfCB0cmFuc2xhdGV9fTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICA8cC1pbnB1dE1hc2sgaW5wdXRJZD1cImVtcGxveWVyUGhvbmVcIiBbZm9ybUNvbnRyb2xdPVwiZW1wbG95ZXJQaG9uZVwiIG1hc2s9XCIoOTk5KSA5OTktOTk5OVwiXHJcbiAgICAgICAgICAgICAgICAgIHVubWFzaz1cInRydWVcIj48L3AtaW5wdXRNYXNrPlxyXG4gICAgICAgICAgICAgICAgPGFwcC1lcnJvciBbY2xhc3NdPVwiJ2FwcC1ncmlkJ1wiIFtmaWVsZF09J2VtcGxveWVyUGhvbmUnIFtmb3JtXT1cIndzckZvcm1EaXJlY3RpdmVcIiBbZXJyRGVmXT1cInsgXHJcbiAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6ICdSZXF1aXJlZC4nXHJcbiAgICAgICAgICAgICAgICAgIH1cIj48L2FwcC1lcnJvcj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCIgKm5nSWY9XCJjb250YWN0TWV0aG9kLnZhbHVlID09ICdFTUFMJ1wiPlxyXG4gICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cImVtcGxveWVyRW1haWxcIj57eyd3b3JrLnNlYXJjaC5qb3VybmFsLmVtYWlsJyB8IHRyYW5zbGF0ZX19PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgIDxpbnB1dCBpZD1cImVtcGxveWVyRW1haWxcIiB0eXBlPVwiaW5wdXRcIiBwSW5wdXRUZXh0IFtmb3JtQ29udHJvbF09XCJlbXBsb3llckVtYWlsXCJcclxuICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJlbWFpbGlkQGV4YW1wbGUuY29tXCIgYXBwU3RyaXBJbnZpc2libGVDaGFycy8+XHJcbiAgICAgICAgICAgICAgICA8YXBwLWVycm9yIFtjbGFzc109XCInYXBwLWdyaWQnXCIgW2ZpZWxkXT0nZW1wbG95ZXJFbWFpbCcgW2Zvcm1dPVwid3NyRm9ybURpcmVjdGl2ZVwiIFtlcnJEZWZdPVwieyBcclxuICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6ICdSZXF1aXJlZC4nLFxyXG4gICAgICAgICAgICAgICAgICBlbXBsb3llckVtYWlsOiAnSW52YWxpZCBlbWFpbCBhZGRyZXNzLicsXHJcbiAgICAgICAgICAgICAgICAgIG1heGxlbmd0aDogJ2Nhbm5vdCBleGNlZWQgNDAgY2hhcmFjdGVycydcclxuICAgICAgICAgICAgICAgIH1cIj48L2FwcC1lcnJvcj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCIgKm5nSWY9XCJjb250YWN0TWV0aG9kLnZhbHVlID09ICdPTkxJJ1wiPlxyXG4gICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cImVtcGxveWVyV2Vic2l0ZVwiPnt7J3dvcmsuc2VhcmNoLmpvdXJuYWwud2Vic2l0ZScgfCB0cmFuc2xhdGV9fTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICA8aW5wdXQgaWQ9XCJlbXBsb3llcldlYnNpdGVcIiB0eXBlPVwiaW5wdXRcIiBwSW5wdXRUZXh0IFtmb3JtQ29udHJvbF09XCJlbXBsb3llcldlYnNpdGVcIiBhcHBTdHJpcEludmlzaWJsZUNoYXJzIC8+XHJcbiAgICAgICAgICAgICAgICA8YXBwLWVycm9yIFtjbGFzc109XCInYXBwLWdyaWQnXCIgW2ZpZWxkXT0nZW1wbG95ZXJXZWJzaXRlJyBbZm9ybV09XCJ3c3JGb3JtRGlyZWN0aXZlXCIgW2VyckRlZl09XCJ7IFxyXG4gICAgICAgICAgICAgICAgICByZXF1aXJlZDogJ1JlcXVpcmVkLicsXHJcbiAgICAgICAgICAgICAgICAgIGludmFsaWRXZWJzaXRlOiAnUGxlYXNlIGVudGVyIGEgdmFsaWQgd2Vic2l0ZSBhZGRyZXNzJyxcclxuICAgICAgICAgICAgICAgICAgbWF4bGVuZ3RoOiAnY2Fubm90IGV4Y2VlZCA0MCBjaGFyYWN0ZXJzJ1xyXG4gICAgICAgICAgICAgICAgfVwiPjwvYXBwLWVycm9yPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIiAqbmdJZj1cImNvbnRhY3RNZXRob2QudmFsdWUgPT0nUFJTTidcIj5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJlbXBDb250YWN0UGVyc29uTmFtZVwiPnt7J3dvcmsuc2VhcmNoLmpvdXJuYWwuY29udGFjdE5hbWUnIHwgdHJhbnNsYXRlfX08L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgPGlucHV0IGlkPVwiZW1wQ29udGFjdFBlcnNvbk5hbWVcIiB0eXBlPVwiaW5wdXRcIiBwSW5wdXRUZXh0IFtmb3JtQ29udHJvbF09XCJlbXBDb250YWN0UGVyc29uTmFtZVwiIGFwcFN0cmlwSW52aXNpYmxlQ2hhcnMvPlxyXG4gICAgICAgICAgICAgICAgPGFwcC1lcnJvciBbY2xhc3NdPVwiJ2FwcC1ncmlkJ1wiIFtmaWVsZF09J2VtcENvbnRhY3RQZXJzb25OYW1lJyBbZm9ybV09XCJ3c3JGb3JtRGlyZWN0aXZlXCIgW2VyckRlZl09XCJ7IFxyXG4gICAgICAgICAgICAgICAgICByZXF1aXJlZDogJ1JlcXVpcmVkLicsXHJcbiAgICAgICAgICAgICAgICAgIG1heGxlbmd0aDogJ2Nhbm5vdCBleGNlZWQgNTAgY2hhcmFjdGVycydcclxuICAgICAgICAgICAgICAgIH1cIj48L2FwcC1lcnJvcj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCIgKm5nSWY9XCJjb250YWN0TWV0aG9kLnZhbHVlID09J1BSU04nXCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiZW1wQ29udGFjdFBlcnNvblRpdGxlXCI+e3snd29yay5zZWFyY2guam91cm5hbC5jb250YWN0VGl0bGUnIHwgdHJhbnNsYXRlfX08L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgPGlucHV0IGlkPVwiZW1wQ29udGFjdFBlcnNvblRpdGxlXCIgdHlwZT1cImlucHV0XCIgcElucHV0VGV4dCBbZm9ybUNvbnRyb2xdPVwiZW1wQ29udGFjdFBlcnNvblRpdGxlXCIgYXBwU3RyaXBJbnZpc2libGVDaGFycy8+XHJcbiAgICAgICAgICAgICAgICA8YXBwLWVycm9yIFtjbGFzc109XCInYXBwLWdyaWQnXCIgW2ZpZWxkXT0nZW1wQ29udGFjdFBlcnNvblRpdGxlJyBbZm9ybV09XCJ3c3JGb3JtRGlyZWN0aXZlXCIgW2VyckRlZl09XCJ7IFxyXG4gICAgICAgICAgICAgICAgICByZXF1aXJlZDogJ1JlcXVpcmVkLicsXHJcbiAgICAgICAgICAgICAgICAgIG1heGxlbmd0aDogJ2Nhbm5vdCBleGNlZWQgNTAgY2hhcmFjdGVycydcclxuICAgICAgICAgICAgICAgIH1cIj48L2FwcC1lcnJvcj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwic2VhcmNoUmVzdWx0XCI+e3snd29yay5zZWFyY2guam91cm5hbC5yZXN1bHQnIHwgdHJhbnNsYXRlfX08L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImFjdGl2aXR5VHlwZS52YWx1ZSA9PSdKT0FQJ1wiPlxyXG4gICAgICAgICAgICAgICAgICA8YXBwLWRyb3Bkb3duIFtvcHRpb25zXT1cIndvcmtTZWFyY2hSZXN1bHRDb21ib0pvYkFwcGxpY2F0aW9uTXNcIiBvcHRpb25MYWJlbD1cIkRFU0NcIiBvcHRpb25WYWx1ZT1cIk5BTUVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJzZWFyY2hSZXN1bHRcIiBhcHBlbmRUbz1cImJvZHlcIiBpbnB1dElkPVwic2VhcmNoUmVzdWx0XCI+PC9hcHAtZHJvcGRvd24+XHJcbiAgICAgICAgICAgICAgICAgIDxhcHAtZXJyb3IgW2NsYXNzXT1cIidhcHAtZ3JpZCdcIiBbZmllbGRdPSdzZWFyY2hSZXN1bHQnIFtmb3JtXT1cIndzckZvcm1EaXJlY3RpdmVcIiBbZXJyRGVmXT1cInsgXHJcbiAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiAnUmVxdWlyZWQuJ1xyXG4gICAgICAgICAgICAgICAgfVwiPjwvYXBwLWVycm9yPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiYWN0aXZpdHlUeXBlLnZhbHVlID09J0pPU0UnXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxhcHAtZHJvcGRvd24gW29wdGlvbnNdPVwid29ya1NlYXJjaFJlc3VsdENvbWJvSm9iU2VhcmNoTXNcIiBvcHRpb25MYWJlbD1cIkRFU0NcIiBvcHRpb25WYWx1ZT1cIk5BTUVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJzZWFyY2hSZXN1bHRcIiBhcHBlbmRUbz1cImJvZHlcIiBpbnB1dElkPVwic2VhcmNoUmVzdWx0XCI+PC9hcHAtZHJvcGRvd24+XHJcbiAgICAgICAgICAgICAgICAgIDxhcHAtZXJyb3IgW2NsYXNzXT1cIidhcHAtZ3JpZCdcIiBbZmllbGRdPSdzZWFyY2hSZXN1bHQnIFtmb3JtXT1cIndzckZvcm1EaXJlY3RpdmVcIiBbZXJyRGVmXT1cInsgXHJcbiAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiAnUmVxdWlyZWQuJ1xyXG4gICAgICAgICAgICAgICAgfVwiPjwvYXBwLWVycm9yPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgPC9pb24tcm93PlxyXG4gICAgICA8aW9uLXJvdz5cclxuICAgICAgICA8aW9uLWNvbCBjbGFzcz1cImlvbi10ZXh0LXJpZ2h0XCI+XHJcbiAgICAgICAgICA8aW9uLWJ1dHRvbiBzaGFwZT1cInJvdW5kXCIgZmlsbD1cIm91dGxpbmVcIiAoY2xpY2spPVwiY2xvc2UoKVwiIHR5cGU9XCJyZXNldFwiPnt7J2J1dHRvbi5jYW5jZWwnIHxcclxuICAgICAgICAgICAgdHJhbnNsYXRlfX08L2lvbi1idXR0b24+XHJcbiAgICAgICAgICA8aW9uLWJ1dHRvbiBzaGFwZT1cInJvdW5kXCIgKGNsaWNrKT1cImFkZCgpXCIgdHlwZT1cInN1Ym1pdFwiPnt7J2J1dHRvbi5hZGQnIHwgdHJhbnNsYXRlfX08L2lvbi1idXR0b24+XHJcbiAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICA8L2lvbi1yb3c+XHJcbiAgICA8L2lvbi1ncmlkPlxyXG4gIDwvZm9ybT5cclxuPC9wLWRpYWxvZz4iXX0=
|
|
685
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29yay1zZWFyY2gtZW1wbG95ZXItbXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJldXNhLWFwcC1saWIvc3JjL2xpYi9jb21wb25lbnRzL3dlZWtseS13b3JrLXNlYXJjaC1lbXBsb3llci1tcy93b3JrLXNlYXJjaC1lbXBsb3llci1tcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcmV1c2EtYXBwLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvd2Vla2x5LXdvcmstc2VhcmNoLWVtcGxveWVyLW1zL3dvcmstc2VhcmNoLWVtcGxveWVyLW1zLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RyxPQUFPLEVBQWdELFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTFGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFdkQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFFN0YsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lDUzdDLCtCQUE2RSxhQUFBLGdCQUFBO0lBRS9DLFlBQWtEOztJQUFBLGlCQUFRO0lBQ3BGLCtDQUNvQjtJQUQ4QixzTUFBVyxlQUFBLDBCQUFtQixDQUFBLElBQUM7SUFDN0QsaUJBQXNCO0lBQzFDLCtCQUVlO0lBQ2pCLGlCQUFNO0lBRU4sOEJBQW1CLGdCQUFBO0lB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QUNFLDZCQUE2QjsrR0FRaEMsZ0JBQWdCO2tCQUR0QixTQUFTO21CQUFDLGtCQUFrQixFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtZQUloRCxPQUFPO2tCQUROLE1BQU07WUFJUCxPQUFPO2tCQUROLE1BQU07WUFJQSxpQkFBaUI7a0JBRHZCLEtBQUs7WUFJQyxJQUFJO2tCQURWLEtBQUs7WUFJQyxPQUFPO2tCQURiLEtBQUs7WUFJQyxPQUFPO2tCQURiLEtBQUs7WUFJQyxhQUFhO2tCQURuQixLQUFLO1lBSUMsYUFBYTtrQkFEbkIsS0FBSztZQUlDLE9BQU87a0JBRGIsS0FBSzs7a0ZBN0JLLDZCQUE2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTmdGb3JtLCBVbnR5cGVkRm9ybUJ1aWxkZXIsIFVudHlwZWRGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFV0aWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdXRpbC91dGlsLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBCYXNlUGFnZSB9IGZyb20gJy4uLy4uL3BhZ2VzL0Jhc2VQYWdlJztcclxuaW1wb3J0IHsgQ29tYm9PcHRpb24gfSBmcm9tICcuLi8uLi9tb2RlbHMvY29tYm8tbW9kZWwnO1xyXG5pbXBvcnQgeyBFbXBsb3llclNlYXJjaFJlc3VsdCB9IGZyb20gJy4uLy4uL21vZGVscy9FbXBsb3llckRldGFpbFNlYXJjaFJlc3VsdCc7XHJcbmltcG9ydCB7IFdvcmtTZWFyY2hSZWNvcmRNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy93ZWVrbHktY2VydC93b3JrLXNlYXJjaC1yZWNvcmQtdjItbW9kZWwnO1xyXG5pbXBvcnQgeyBXZWVrbHlDZXJ0U2VydmljZVYyIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvd2Vla2x5LWNlcnQvd2Vla2x5LWNlcnQtdjIuc2VydmljZSc7XHJcbmltcG9ydCB7IEFwcFZhbGlkYXRvcnMgfSBmcm9tICcuLi8uLi92YWxpZGF0aW9ucy9BcHBWYWxpZGF0b3JzJztcclxuaW1wb3J0IHsgTGliQ29uc3RhbnRzIH0gZnJvbSAnLi4vLi4vbW9kZWxzL0xpYkNvbnN0YW50cyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC13b3JrLXNlYXJjaC1lbXBsb3llci1tcycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3dvcmstc2VhcmNoLWVtcGxveWVyLW1zLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi93b3JrLXNlYXJjaC1lbXBsb3llci1tcy5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIFdvcmtTZWFyY2hFbXBsb3llckNvbXBvbmVudE1TIGV4dGVuZHMgQmFzZVBhZ2UgaW1wbGVtZW50cyBPbkluaXQgIHtcclxuICAgXHJcbiAgQFZpZXdDaGlsZCgnd3NyRm9ybURpcmVjdGl2ZScsIHsgc3RhdGljOiBmYWxzZSB9KVxyXG4gIHB1YmxpYyB3c3JGb3JtRGlyZWN0aXZlOiBOZ0Zvcm07XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHN1Y2Nlc3M6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBvbkNsb3NlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgcmVjb3JkSW5kZXhUb0VkaXQ6IG51bWJlcjtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZGF0YTogV29ya1NlYXJjaFJlY29yZE1vZGVsO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzYXREYXRlOiBEYXRlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzdW5EYXRlOiBEYXRlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzYXREYXRlU3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzdW5EYXRlU3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBqb3VybmFsOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHB1YmxpYyBhY3Rpdml0eVR5cGVDb21ib01zID0gQ29tYm9PcHRpb24uQWN0aXZpdHlUeXBlQ29tYm9NcztcclxuICBwdWJsaWMgd29ya1NlYXJjaE1ldGhvZENvbnRhY3RNcyA9IENvbWJvT3B0aW9uLldvcmtTZWFyY2hNZXRob2RDb250YWN0TXM7XHJcbiAgcHVibGljIHdvcmtTZWFyY2hSZXN1bHRDb21ib0pvYkFwcGxpY2F0aW9uTXMgPSBDb21ib09wdGlvbi5Xb3JrU2VhcmNoUmVzdWx0Q29tYm9Kb2JBcHBsaWNhdGlvbk1zO1xyXG4gIHB1YmxpYyB3b3JrU2VhcmNoUmVzdWx0Q29tYm9Kb2JTZWFyY2hNcyA9IENvbWJvT3B0aW9uLldvcmtTZWFyY2hSZXN1bHRDb21ib0pvYlNlYXJjaE1zO1xyXG4gIHB1YmxpYyBzdGF0ZXNDb21ibyA9IENvbWJvT3B0aW9uLlN0YXRlc0NvbWJvO1xyXG4gIHB1YmxpYyB3b3JrU2VhcmNoUmVjb3JkRGF0YSA6IFdvcmtTZWFyY2hSZWNvcmRNb2RlbCA9IG51bGw7XHJcblxyXG4gIGR5bmFtaWNQYXJhbTogYW55O1xyXG4gIHB1YmxpYyB3c3JGb3JtIDogVW50eXBlZEZvcm1Hcm91cDtcclxuICBwdWJsaWMgaXNSZWFkT25seSA6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBkaXNwbGF5Sm9iU2VhcmNoUXVlc3Rpb25zIDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGRpc3BsYXlKb2JBcHBsaWNhdGlvblF1ZXN0aW9ucyA6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBjdXJyZW50RGF0ZSA9IG5ldyBEYXRlKCk7XHJcbiAgY3VycmVudERhdGVTdHJpbmcgPSBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tVVMnKS5mb3JtYXQodGhpcy5jdXJyZW50RGF0ZSk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB3Y1NlcnZpY2U6IFdlZWtseUNlcnRTZXJ2aWNlVjIsIHB1YmxpYyBmb3JtQnVpbGRlcjogVW50eXBlZEZvcm1CdWlsZGVyLCBwdWJsaWMgdXRpbDogVXRpbFNlcnZpY2UpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIGlmICghdGhpcy5qb3VybmFsKSB7XHJcbiAgICAgIHRoaXMuc2F0RGF0ZSA9IHRoaXMudXRpbC5nZXRFbnRlcmVkRGF0ZSh0aGlzLndjU2VydmljZS5nZXRTYXR1cmRheURhdGUoKSlcclxuICAgICAgdGhpcy5zdW5EYXRlID0gdGhpcy51dGlsLmdldEVudGVyZWREYXRlKHRoaXMud2NTZXJ2aWNlLmdldFN1bmRheURhdGUoKSk7XHJcbiAgICAgIHRoaXMuc2F0RGF0ZVN0cmluZyA9IHRoaXMud2NTZXJ2aWNlLmdldFNhdHVyZGF5RGF0ZUFzU3RyaW5nKCk7XHJcbiAgICAgIHRoaXMuc3VuRGF0ZVN0cmluZyA9IHRoaXMud2NTZXJ2aWNlLmdldFN1bmRheURhdGVBc1N0cmluZygpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5keW5hbWljUGFyYW0gPSB7XHJcbiAgICAgICdzYXR1cmRheV9kYXRlJzogdGhpcy5zYXREYXRlU3RyaW5nLFxyXG4gICAgICAnc3VuZGF5X2RhdGUnOiB0aGlzLnN1bkRhdGVTdHJpbmcsXHJcbiAgICB9O1xyXG5cclxuICAgIHRoaXMuaW5pdGlsaXplV29ya1NlYXJjaEZvcm0oKTtcclxuICAgIHRoaXMudHJpbUlucHV0SGVscGVyKCk7XHJcbiAgfVxyXG5cclxuICBkYXRlSW5wdXQoZXZlbnQpe1xyXG4gICAgbGV0IGN1cnJlbnRWYWx1ZSA6IHN0cmluZyA9IGV2ZW50LnNyY0VsZW1lbnQudmFsdWU7XHJcbiAgICBpZihjdXJyZW50VmFsdWUpe1xyXG4gICAgICAgIGlmKGN1cnJlbnRWYWx1ZS5sZW5ndGggPT0gMiAmJiBjdXJyZW50VmFsdWUuY2hhckF0KDIpICE9ICcvJyl7XHJcbiAgICAgICAgICAgIGV2ZW50LnRhcmdldC52YWx1ZSA9IGN1cnJlbnRWYWx1ZSArIFwiL1wiO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZihjdXJyZW50VmFsdWUubGVuZ3RoID09IDUgJiYgY3VycmVudFZhbHVlLmNoYXJBdCg1KSAhPSAnLycpe1xyXG4gICAgICAgICAgICBldmVudC50YXJnZXQudmFsdWUgPSBjdXJyZW50VmFsdWUgKyBcIi9cIjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB0cmltSW5wdXRIZWxwZXIoKSB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5lbXBsb3llckVtYWlsLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsID0+IHtcclxuICAgICAgICBpZiAodmFsKSB7XHJcbiAgICAgICAgICBjb25zdCBzYW5pdGl6ZWQgPSB2YWwucmVwbGFjZSgvXFxzKy9nLCAnJyk7XHJcbiAgICAgICAgICBpZiAodmFsICE9PSBzYW5pdGl6ZWQpIHtcclxuICAgICAgICAgICAgdGhpcy5lbXBsb3llckVtYWlsLnNldFZhbHVlKHNhbml0aXplZCwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9LCAwKTtcclxuICB9XHJcblxyXG4gIGluaXRpbGl6ZVdvcmtTZWFyY2hGb3JtKCkge1xyXG4gICAgbGV0IHdzcjogV29ya1NlYXJjaFJlY29yZE1vZGVsO1xyXG4gICAgaWYgKHRoaXMuZGF0YSkge1xyXG4gICAgICB3c3IgPSB0aGlzLmRhdGE7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMucmVjb3JkSW5kZXhUb0VkaXQgPT0gdW5kZWZpbmVkIHx8IHRoaXMucmVjb3JkSW5kZXhUb0VkaXQgPT0gbnVsbCkge1xyXG4gICAgICB3c3IgPSBuZXcgV29ya1NlYXJjaFJlY29yZE1vZGVsKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB3c3IgPSB0aGlzLndjU2VydmljZS5nZXRXb3JrU2VhcmNoUmVjb3JkcygpW3RoaXMucmVjb3JkSW5kZXhUb0VkaXRdO1xyXG4gICAgfVxyXG4gICAgdGhpcy53c3JGb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XHJcbiAgICAgICdhY3Rpdml0eVR5cGUnOiBbd3NyLmFjdGl2aXR5VHlwZSwgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICd3b3JrU2VhcmNoRGF0ZSc6IFt3c3Iud29ya1NlYXJjaERhdGUgIT0gbnVsbCA/IHRoaXMuZ2V0RGF0ZSh3c3Iud29ya1NlYXJjaERhdGUpIDogJycsIFZhbGlkYXRvcnMuY29tcG9zZShbVmFsaWRhdG9ycy5yZXF1aXJlZCwgQXBwVmFsaWRhdG9ycy5pc0JldHdlZW4odGhpcy5zdW5EYXRlLCB0aGlzLmN1cnJlbnREYXRlKV0pXSxcclxuICAgICAgJ2VtcGxveWVyTmFtZSc6IFt3c3IuZW1wbG95ZXJOYW1lXSxcclxuICAgICAgJ2NpdHknOiBbd3NyLmNpdHldLFxyXG4gICAgICAnbGluZTEnOiBbd3NyLmxpbmUxXSxcclxuICAgICAgJ2xpbmUyJzogW3dzci5saW5lMl0sXHJcbiAgICAgICdzdGF0ZSc6IFt3c3Iuc3RhdGUgIT0gbnVsbCA/IHdzci5zdGF0ZSA6IExpYkNvbnN0YW50cy5TVEFURV0sXHJcbiAgICAgICdjb250YWN0TWV0aG9kJzogW3dzci5jb250YWN0TWV0aG9kICE9IG51bGwgPyB3c3IuY29udGFjdE1ldGhvZCA6ICcnXSxcclxuICAgICAgJ2VtcENvbnRhY3RQZXJzb25OYW1lJzogW3dzci5lbXBDb250YWN0UGVyc29uTmFtZV0sXHJcbiAgICAgICdlbXBDb250YWN0UGVyc29uVGl0bGUnOiBbd3NyLmVtcENvbnRhY3RQZXJzb25UaXRsZV0sXHJcbiAgICAgICd6aXAnOiBbd3NyLnppcF0sXHJcbiAgICAgICdlbXBsb3llclBob25lJzogW3dzci5lbXBsb3llclBob25lICE9IG51bGwgPyB3c3IuZW1wbG95ZXJQaG9uZSA6ICcnXSxcclxuICAgICAgJ2VtcGxveWVyRW1haWwnOiBbd3NyLmVtcGxveWVyRW1haWxdLFxyXG4gICAgICAnZW1wbG95ZXJXZWJzaXRlJzogW3dzci5lbXBsb3llcldlYnNpdGVdLFxyXG4gICAgICAnZW1wbG95ZXJGYXgnOiBbd3NyLmVtcGxveWVyRmF4ICE9IG51bGwgPyB3c3IuZW1wbG95ZXJGYXggOiAnJ10sXHJcbiAgICAgICdwb3NpdGlvbkFwcGxpZWRGb3InOiBbd3NyLnBvc2l0aW9uQXBwbGllZEZvcl0sXHJcbiAgICAgICdzZWFyY2hSZXN1bHQnOiBbd3NyLnNlYXJjaFJlc3VsdF0sXHJcbiAgICAgICd3aW5nc1JlZmVycmFsV29ya1NlYXJjaElkJzogW3dzci53aW5nc1JlZmVycmFsV29ya1NlYXJjaElkXSxcclxuICAgICAgJ2NsYWltYW50V29ya1NlYXJjaEpvdXJuYWxJZCc6IFt3c3IuY2xhaW1hbnRXb3JrU2VhcmNoSm91cm5hbElkXSxcclxuICAgICAgJ3dzcklkJzogW3dzci53c3JJZF1cclxuICAgIH0pO1xyXG5cclxuICAgIGlmICh3c3IuYWN0aXZpdHlUeXBlID09ICdKT0FQJykge1xyXG4gICAgICB0aGlzLmRpc3BsYXlKb2JBcHBsaWNhdGlvblF1ZXN0aW9ucyA9IHRydWU7XHJcbiAgICB9IGVsc2UgaWYgKHdzci5hY3Rpdml0eVR5cGUgPT0gJ0pPU0UnKSB7XHJcbiAgICAgIHRoaXMuZGlzcGxheUpvYlNlYXJjaFF1ZXN0aW9ucyA9IHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHdzci53aW5nc1JlZmVycmFsV29ya1NlYXJjaElkICE9IG51bGwgJiYgd3NyLndpbmdzUmVmZXJyYWxXb3JrU2VhcmNoSWQgIT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMuaXNSZWFkT25seSA9IHRydWU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmlzUmVhZE9ubHkgPSBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpID0+IHtcclxuICAgICAgdGhpcy5jb250YWN0TWV0aG9kLnNldFZhbHVlKHdzci5jb250YWN0TWV0aG9kICE9IG51bGwgPyB3c3IuY29udGFjdE1ldGhvZCA6ICcnKTtcclxuXHJcbiAgICAgIHRoaXMuY29udGFjdE1ldGhvZC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKHZhbCA9PiB7XHJcbiAgICAgICAgUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKSA9PiB0aGlzLnNldENvbnRhY3RJbmZvVmFsaWRhdGlvbih2YWwpKTtcclxuICAgICAgICBcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMuYWN0aXZpdHlUeXBlLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsID0+IHtcclxuICAgICAgICBQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpID0+IHRoaXMuc2V0QWN0aXZpdHlUeXBlVmFsaWRhdGlvbih2YWwpKTtcclxuICAgICAgfSk7XHJcblxyXG4gICAgICB0aGlzLnNldENvbnRhY3RJbmZvVmFsaWRhdGlvbih0aGlzLmNvbnRhY3RNZXRob2QudmFsdWUpO1xyXG4gICAgICB0aGlzLnNldEFjdGl2aXR5VHlwZVZhbGlkYXRpb24odGhpcy5hY3Rpdml0eVR5cGUudmFsdWUpO1xyXG5cclxuICAgIH0pO1xyXG5cclxuICB9XHJcblxyXG4gIHNldEFjdGl2aXR5VHlwZVZhbGlkYXRpb24odmFsOiBhbnkpIHtcclxuICAgIHRoaXMuZGlzcGxheUpvYkFwcGxpY2F0aW9uUXVlc3Rpb25zID0gZmFsc2U7XHJcbiAgICB0aGlzLmRpc3BsYXlKb2JTZWFyY2hRdWVzdGlvbnMgPSBmYWxzZTtcclxuICAgIGlmKHZhbCA9PSAnSk9BUCcgKXtcclxuICAgICAgdGhpcy5kaXNwbGF5Sm9iQXBwbGljYXRpb25RdWVzdGlvbnMgPSB0cnVlO1xyXG4gICAgICB0aGlzLmRpc3BsYXlKb2JTZWFyY2hRdWVzdGlvbnMgPSBmYWxzZTtcclxuXHJcbiAgICAgIHRoaXMuZW1wbG95ZXJOYW1lLmFkZFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMucGF0dGVybigvXig/IS4qWyU8PlxcXl97fV0pW0EtWmEtejAtOVxcc1xcLiwmJygpIyFAOiRcXC9cXFxcXFwtXFwrP1wiXSskLyldKTtcclxuICAgICAgdGhpcy5lbXBsb3llck5hbWUudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gICAgICB0aGlzLmxpbmUxLmFkZFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMucGF0dGVybigvXlswLTlBLVphLXpcXHMsJ1xcLVxcLiNcXC9dKyQvKSxWYWxpZGF0b3JzLm1heExlbmd0aCg0MCldKTtcclxuICAgICAgdGhpcy5saW5lMS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICAgIHRoaXMuY2l0eS5hZGRWYWxpZGF0b3JzKFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLnBhdHRlcm4oL14oPyEtKVtBLVphLXogLV0qJC8pLFZhbGlkYXRvcnMubWF4TGVuZ3RoKDMwKV0pO1xyXG4gICAgICB0aGlzLmNpdHkudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gICAgICB0aGlzLnV0aWwuc2V0UmVxdWlyZWRWYWxpZGF0b3IodGhpcy5zdGF0ZSk7XHJcbiAgICAgIHRoaXMudXRpbC5zZXRSZXF1aXJlZFZhbGlkYXRvcih0aGlzLnppcCk7XHJcbiAgICAgIHRoaXMucG9zaXRpb25BcHBsaWVkRm9yLmFkZFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMucGF0dGVybigvXig/IS0pW0EtWmEtejAtOSAtXSokLyksVmFsaWRhdG9ycy5tYXhMZW5ndGgoNTApXSk7XHJcbiAgICAgIHRoaXMucG9zaXRpb25BcHBsaWVkRm9yLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuICAgICAgdGhpcy51dGlsLnNldFJlcXVpcmVkVmFsaWRhdG9yKHRoaXMuY29udGFjdE1ldGhvZCk7XHJcbiAgICAgIHRoaXMudXRpbC5zZXRSZXF1aXJlZFZhbGlkYXRvcih0aGlzLnNlYXJjaFJlc3VsdCk7XHJcbiAgICB9XHJcbiAgICBpZih2YWwgPT0gJ0pPU0UnKXtcclxuICAgICAgdGhpcy5kaXNwbGF5Sm9iU2VhcmNoUXVlc3Rpb25zID0gdHJ1ZTtcclxuICAgICAgdGhpcy5kaXNwbGF5Sm9iQXBwbGljYXRpb25RdWVzdGlvbnMgPSBmYWxzZTtcclxuXHJcbiAgICAgIHRoaXMuZW1wbG95ZXJOYW1lLmFkZFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMucGF0dGVybigvXig/IS4qWyU8PlxcXl97fV0pW0EtWmEtejAtOVxcc1xcLiwmJygpIyFAOiRcXC9cXFxcXFwtXFwrP1wiXSskLyldKTtcclxuICAgICAgdGhpcy5lbXBsb3llck5hbWUudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gICAgICB0aGlzLmxpbmUxLmFkZFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMucGF0dGVybigvXlswLTlBLVphLXpcXHMsJ1xcLVxcLiNcXC9dKyQvKSxWYWxpZGF0b3JzLm1heExlbmd0aCg0MCldKTtcclxuICAgICAgdGhpcy5saW5lMS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICAgIHRoaXMuY2l0eS5hZGRWYWxpZGF0b3JzKFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLnBhdHRlcm4oL14oPyEtKVtBLVphLXogLV0qJC8pLFZhbGlkYXRvcnMubWF4TGVuZ3RoKDMwKV0pO1xyXG4gICAgICB0aGlzLmNpdHkudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gICAgICB0aGlzLnV0aWwuc2V0UmVxdWlyZWRWYWxpZGF0b3IodGhpcy5zdGF0ZSk7XHJcbiAgICAgIHRoaXMudXRpbC5zZXRSZXF1aXJlZFZhbGlkYXRvcih0aGlzLnppcCk7XHJcbiAgICAgIHRoaXMucG9zaXRpb25BcHBsaWVkRm9yLmFkZFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMucGF0dGVybigvXig/IS0pW0EtWmEtejAtOSAtXSokLyksVmFsaWRhdG9ycy5tYXhMZW5ndGgoNTApXSk7XHJcbiAgICAgIHRoaXMucG9zaXRpb25BcHBsaWVkRm9yLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuICAgICAgdGhpcy51dGlsLnNldFJlcXVpcmVkVmFsaWRhdG9yKHRoaXMuY29udGFjdE1ldGhvZCk7XHJcbiAgICAgIHRoaXMudXRpbC5zZXRSZXF1aXJlZFZhbGlkYXRvcih0aGlzLnNlYXJjaFJlc3VsdCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRDb250YWN0SW5mb1ZhbGlkYXRpb24odmFsOiBhbnkpIHtcclxuICAgIFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCkgPT4ge1xyXG4gICAgICBpZiAodmFsID09ICdURUxFJykge1xyXG4gICAgICAgIHRoaXMudXRpbC5zZXRSZXF1aXJlZFZhbGlkYXRvcih0aGlzLmVtcGxveWVyUGhvbmUpO1xyXG4gICAgICAgIHRoaXMudXRpbC5jbGVhclZhbGlkYXRpb24odGhpcy5lbXBDb250YWN0UGVyc29uTmFtZSk7XHJcbiAgICAgICAgdGhpcy51dGlsLmNsZWFyVmFsaWRhdGlvbih0aGlzLmVtcENvbnRhY3RQZXJzb25UaXRsZSk7XHJcbiAgICAgICAgdGhpcy51dGlsLmNsZWFyVmFsaWRhdGlvbih0aGlzLmVtcGxveWVyRW1haWwpO1xyXG4gICAgICAgIHRoaXMudXRpbC5jbGVhclZhbGlkYXRpb24odGhpcy5lbXBsb3llcldlYnNpdGUpO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh2YWwgPT0gJ0VNQUwnKSB7XHJcbiAgICAgICAgdGhpcy51dGlsLnNldFZhbGlkYXRpb24odGhpcy5lbXBsb3llckVtYWlsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5lbWFpbCwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoNDApXSk7XHJcbiAgICAgICAgdGhpcy51dGlsLmNsZWFyVmFsaWRhdGlvbih0aGlzLmVtcGxveWVyUGhvbmUpO1xyXG4gICAgICAgIHRoaXMudXRpbC5jbGVhclZhbGlkYXRpb24odGhpcy5lbXBDb250YWN0UGVyc29uTmFtZSk7XHJcbiAgICAgICAgdGhpcy51dGlsLmNsZWFyVmFsaWRhdGlvbih0aGlzLmVtcENvbnRhY3RQZXJzb25UaXRsZSk7XHJcbiAgICAgICAgdGhpcy51dGlsLmNsZWFyVmFsaWRhdGlvbih0aGlzLmVtcGxveWVyV2Vic2l0ZSk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHZhbCA9PSAnT05MSScpIHtcclxuICAgICAgICB0aGlzLnV0aWwuc2V0UmVxdWlyZWRWYWxpZGF0b3IodGhpcy5lbXBsb3llcldlYnNpdGUpO1xyXG4gICAgICAgIHRoaXMudXRpbC5zZXRWYWxpZGF0aW9uKHRoaXMuZW1wbG95ZXJXZWJzaXRlLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgQXBwVmFsaWRhdG9ycy5pc1ZhbGlkV2Vic2l0ZSwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoNDApXSlcclxuICAgICAgICB0aGlzLnV0aWwuY2xlYXJWYWxpZGF0aW9uKHRoaXMuZW1wbG95ZXJFbWFpbCk7XHJcbiAgICAgICAgdGhpcy51dGlsLmNsZWFyVmFsaWRhdGlvbih0aGlzLmVtcGxveWVyUGhvbmUpO1xyXG4gICAgICAgIHRoaXMudXRpbC5jbGVhclZhbGlkYXRpb24odGhpcy5lbXBDb250YWN0UGVyc29uTmFtZSk7XHJcbiAgICAgICAgdGhpcy51dGlsLmNsZWFyVmFsaWRhdGlvbih0aGlzLmVtcENvbnRhY3RQZXJzb25UaXRsZSk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHZhbCA9PSAnUFJTTicpIHtcclxuICAgICAgICB0aGlzLnV0aWwuc2V0VmFsaWRhdGlvbih0aGlzLmVtcENvbnRhY3RQZXJzb25OYW1lLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoNTApXSk7XHJcbiAgICAgICAgdGhpcy51dGlsLnNldFZhbGlkYXRpb24odGhpcy5lbXBDb250YWN0UGVyc29uVGl0bGUsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1heExlbmd0aCg1MCldKTtcclxuICAgICAgICB0aGlzLnV0aWwuY2xlYXJWYWxpZGF0aW9uKHRoaXMuZW1wbG95ZXJXZWJzaXRlKTtcclxuICAgICAgICB0aGlzLnV0aWwuY2xlYXJWYWxpZGF0aW9uKHRoaXMuZW1wbG95ZXJFbWFpbCk7XHJcbiAgICAgICAgdGhpcy51dGlsLmNsZWFyVmFsaWRhdGlvbih0aGlzLmVtcGxveWVyUGhvbmUpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldERhdGUod3NEYXRlKTogRGF0ZSB7XHJcbiAgICBpZighKHdzRGF0ZSBpbnN0YW5jZW9mIERhdGUpKXtcclxuICAgICAgcmV0dXJuIHRoaXMudXRpbC5nZXRFbnRlcmVkRGF0ZSh3c0RhdGUpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHdzRGF0ZTtcclxuICB9XHJcblxyXG4gIGdldCBhY3Rpdml0eVR5cGUoKXtcclxuICAgIHJldHVybiB0aGlzLndzckZvcm0uY29udHJvbHNbJ2FjdGl2aXR5VHlwZSddO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHdvcmtTZWFyY2hEYXRlKCl7XHJcbiAgICByZXR1cm4gdGhpcy53c3JGb3JtLmNvbnRyb2xzWyd3b3JrU2VhcmNoRGF0ZSddO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGVtcGxveWVyTmFtZSgpe1xyXG4gICAgcmV0dXJuIHRoaXMud3NyRm9ybS5jb250cm9sc1snZW1wbG95ZXJOYW1lJ107XHJcbiAgfVxyXG5cclxuICBnZXQgY2l0eSgpe1xyXG4gICAgcmV0dXJuIHRoaXMud3NyRm9ybS5jb250cm9sc1snY2l0eSddO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGxpbmUxKCl7XHJcbiAgICByZXR1cm4gdGhpcy53c3JGb3JtLmNvbnRyb2xzWydsaW5lMSddO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGxpbmUyKCl7XHJcbiAgICByZXR1cm4gdGhpcy53c3JGb3JtLmNvbnRyb2xzWydsaW5lMiddO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHN0YXRlKCl7XHJcbiAgICByZXR1cm4gdGhpcy53c3JGb3JtLmNvbnRyb2xzWydzdGF0ZSddO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGNvbnRhY3RNZXRob2QoKXtcclxuICAgIHJldHVybiB0aGlzLndzckZvcm0uY29udHJvbHNbJ2NvbnRhY3RNZXRob2QnXTtcclxuICB9XHJcblxyXG4gIGdldCBlbXBDb250YWN0UGVyc29uTmFtZSgpe1xyXG4gICAgcmV0dXJuIHRoaXMud3NyRm9ybS5jb250cm9sc1snZW1wQ29udGFjdFBlcnNvbk5hbWUnXTtcclxuICB9XHJcblxyXG4gIGdldCBlbXBDb250YWN0UGVyc29uVGl0bGUoKXtcclxuICAgIHJldHVybiB0aGlzLndzckZvcm0uY29udHJvbHNbJ2VtcENvbnRhY3RQZXJzb25UaXRsZSddO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHppcCgpe1xyXG4gICAgcmV0dXJuIHRoaXMud3NyRm9ybS5jb250cm9sc1snemlwJ107XHJcbiAgfVxyXG5cclxuICBnZXQgZW1wbG95ZXJQaG9uZSgpe1xyXG4gICAgcmV0dXJuIHRoaXMud3NyRm9ybS5jb250cm9sc1snZW1wbG95ZXJQaG9uZSddO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGVtcGxveWVyRW1haWwoKXtcclxuICAgIHJldHVybiB0aGlzLndzckZvcm0uY29udHJvbHNbJ2VtcGxveWVyRW1haWwnXTtcclxuICB9XHJcblxyXG4gIGdldCBlbXBsb3llcldlYnNpdGUoKXtcclxuICAgIHJldHVybiB0aGlzLndzckZvcm0uY29udHJvbHNbJ2VtcGxveWVyV2Vic2l0ZSddO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGVtcGxveWVyRmF4KCl7XHJcbiAgICByZXR1cm4gdGhpcy53c3JGb3JtLmNvbnRyb2xzWydlbXBsb3llckZheCddO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHBvc2l0aW9uQXBwbGllZEZvcigpe1xyXG4gICAgcmV0dXJuIHRoaXMud3NyRm9ybS5jb250cm9sc1sncG9zaXRpb25BcHBsaWVkRm9yJ107XHJcbiAgfVxyXG5cclxuICBnZXQgc2VhcmNoUmVzdWx0KCl7XHJcbiAgICByZXR1cm4gdGhpcy53c3JGb3JtLmNvbnRyb2xzWydzZWFyY2hSZXN1bHQnXTtcclxuICB9XHJcblxyXG4gIGdldCB3aW5nc1JlZmVycmFsV29ya1NlYXJjaElkKCl7XHJcbiAgICByZXR1cm4gdGhpcy53c3JGb3JtLmNvbnRyb2xzWyd3aW5nc1JlZmVycmFsV29ya1NlYXJjaElkJ107XHJcbiAgfVxyXG5cclxuICBnZXQgY2xhaW1hbnRXb3JrU2VhcmNoSm91cm5hbElkKCl7XHJcbiAgICByZXR1cm4gdGhpcy53c3JGb3JtLmNvbnRyb2xzWydjbGFpbWFudFdvcmtTZWFyY2hKb3VybmFsSWQnXTtcclxuICB9XHJcblxyXG4gIGdldCB3c3JJZCgpe1xyXG4gICAgcmV0dXJuIHRoaXMud3NyRm9ybS5jb250cm9sc1snd3NySWQnXTtcclxuICB9XHJcblxyXG4gIGFkZCgpe1xyXG4gICAgaWYodGhpcy53c3JGb3JtLnZhbGlkKXtcclxuICAgICAgdGhpcy5zdWNjZXNzLmVtaXQodGhpcy53c3JGb3JtLnZhbHVlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNsb3NlKCkge1xyXG4gICAgdGhpcy5vbkNsb3NlLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIHNldEVtcGxveWVyKGVtcGxveWVyOiBFbXBsb3llclNlYXJjaFJlc3VsdCkge1xyXG4gICAgUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKSA9PiB7XHJcbiAgICAgIHRoaXMuZW1wbG95ZXJOYW1lLnNldFZhbHVlKGVtcGxveWVyLmVtcGxveWVyTmFtZSk7XHJcbiAgICAgIHRoaXMubGluZTEuc2V0VmFsdWUoZW1wbG95ZXIuYWRkcmVzc0xpbmUxKTtcclxuICAgICAgdGhpcy5saW5lMi5zZXRWYWx1ZShlbXBsb3llci5hZGRyZXNzTGluZTIpO1xyXG4gICAgICB0aGlzLmNpdHkuc2V0VmFsdWUoZW1wbG95ZXIuY2l0eSk7XHJcbiAgICAgIHRoaXMuc3RhdGUuc2V0VmFsdWUoZW1wbG95ZXIuc3RhdGUudmFsdWUpO1xyXG4gICAgICB0aGlzLnppcC5zZXRWYWx1ZShlbXBsb3llci56aXApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiIsIjxwLWRpYWxvZyB2aXNpYmxlPVwidHJ1ZVwiIG1vZGFsPVwidHJ1ZVwiIGFwcGVuZFRvPVwiYm9keVwiIHBvc2l0aW9uPVwidG9wXCIgW3Nob3dIZWFkZXJdPVwiZmFsc2VcIlxyXG4gIFticmVha3BvaW50c109XCJ7JzEyMDBweCc6ICc2NjBweCcsICc5OTJweCc6ICc2NjBweCcsICc3NjhweCc6ICc2NjBweCcsICc1NzZweCc6ICcxMDB2dyd9XCI+XHJcbiAgPGg0IHN0eWxlPVwiY29sb3I6IHZhcigtLWlvbi1jb2xvci1ncmV5KTsgcGFkZGluZy1sZWZ0OiAyMHB4O1wiPnt7J3dvcmsuc2VhcmNoLmpvdXJuYWwuYWN0aXZpdHkuaGVhZGluZycgfFxyXG4gICAgdHJhbnNsYXRlOmR5bmFtaWNQYXJhbSB9fTwvaDQ+XHJcbiAgPGZvcm0gW2Zvcm1Hcm91cF09XCJ3c3JGb3JtXCIgI3dzckZvcm1EaXJlY3RpdmU9XCJuZ0Zvcm1cIj5cclxuICAgIDxpb24tZ3JpZD5cclxuICAgICAgPGlvbi1yb3c+XHJcbiAgICAgICAgPGlvbi1jb2wgY2xhc3M9XCJpb24tcGFkZGluZ1wiIHNpemU9XCIxMlwiIHNpemVTbT1cIjEyXCIgc2l6ZVhzPVwiMTJcIiBzaXplTWQ9XCI2XCIgc2l6ZUxnPVwiNlwiIHNpemVYbD1cIjZcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJwLWZsdWlkIHAtZm9ybWdyaWRcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cImFjdGl2aXR5VHlwZVwiPnt7J3dvcmsuc2VhcmNoLmpvdXJuYWwuYWN0aXZpdHkudHlwZScgfCB0cmFuc2xhdGV9fTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgPGFwcC1kcm9wZG93biBbb3B0aW9uc109XCJhY3Rpdml0eVR5cGVDb21ib01zXCIgb3B0aW9uTGFiZWw9XCJERVNDXCIgb3B0aW9uVmFsdWU9XCJOQU1FXCJcclxuICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJhY3Rpdml0eVR5cGVcIiBhcHBlbmRUbz1cImJvZHlcIiBpbnB1dElkPVwiYWN0aXZpdHlUeXBlXCI+PC9hcHAtZHJvcGRvd24+XHJcbiAgICAgICAgICAgICAgPGFwcC1lcnJvciBbY2xhc3NdPVwiJ2FwcC1ncmlkJ1wiIFtmaWVsZF09J2FjdGl2aXR5VHlwZScgW2Zvcm1dPVwid3NyRm9ybURpcmVjdGl2ZVwiIFtlcnJEZWZdPVwieyBcclxuICAgICAgICAgICAgICAgIHJlcXVpcmVkOiAnUmVxdWlyZWQuJ1xyXG4gICAgICAgICAgICAgIH1cIj48L2FwcC1lcnJvcj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8c2VjdGlvbiAqbmdJZj1cImRpc3BsYXlKb2JBcHBsaWNhdGlvblF1ZXN0aW9ucyB8fCBkaXNwbGF5Sm9iU2VhcmNoUXVlc3Rpb25zXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiZW1wbG95ZXJOYW1lXCI+e3snd29yay5zZWFyY2guam91cm5hbC5lbXBsb3llck5hbWUnIHwgdHJhbnNsYXRlfX08L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgPGFwcC1zZWFyY2gtZW1wbG95ZXIgW2Zvcm1Db250cm9sXT1cImVtcGxveWVyTmFtZVwiIChvbkZvdW5kKT1cInNldEVtcGxveWVyKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICBbZW1wVHlwZV09XCInUkVHJ1wiPjwvYXBwLXNlYXJjaC1lbXBsb3llcj5cclxuICAgICAgICAgICAgICAgIDxhcHAtZXJyb3IgW2NsYXNzXT1cIidhcHAtZ3JpZCdcIiBbZmllbGRdPSdlbXBsb3llck5hbWUnIFtmb3JtXT1cIndzckZvcm1EaXJlY3RpdmVcIiBbZXJyRGVmXT1cInsgXHJcbiAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiAnUmVxdWlyZWQuJywgcGF0dGVybjogJyUsIDwsID4sIF4sIF8sIHssIH0gYXJlIG5vdCBhbGxvd2VkJ1xyXG4gICAgICAgICAgICAgICAgfVwiPjwvYXBwLWVycm9yPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJsaW5lMVwiPnt7J3dvcmsuc2VhcmNoLmpvdXJuYWwuc3RyZWV0QWRkcmVzcycgfCB0cmFuc2xhdGV9fTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICA8aW5wdXQgaWQ9XCJsaW5lMVwiIHR5cGU9XCJpbnB1dFwiIHBJbnB1dFRleHQgW2Zvcm1Db250cm9sXT1cImxpbmUxXCIgYXBwU3RyaXBJbnZpc2libGVDaGFycy8+XHJcbiAgICAgICAgICAgICAgICA8YXBwLWVycm9yIFtjbGFzc109XCInYXBwLWdyaWQnXCIgW2ZpZWxkXT0nbGluZTEnIFtmb3JtXT1cIndzckZvcm1EaXJlY3RpdmVcIiBbZXJyRGVmXT1cInsgXHJcbiAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiAnUmVxdWlyZWQuJywgcGF0dGVybjogJ09ubHkgbGV0dGVycywgbnVtYmVycywgc3BhY2VzLCBjb21tYXMsIHBlcmlvZHMsIGFwb3N0cm9waGVzLCBoeXBoZW5zLCAjIGFuZCAvIGFsbG93ZWQnLFxyXG4gICAgICAgICAgICAgICAgICBtYXhsZW5ndGg6ICdjYW5ub3QgZXhjZWVkIDQwIGNoYXJhY3RlcnMnXHJcbiAgICAgICAgICAgICAgICB9XCI+PC9hcHAtZXJyb3I+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cImNpdHlcIj57eyd3b3JrLnNlYXJjaC5qb3VybmFsLmNpdHknIHwgdHJhbnNsYXRlfX08L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgPGlucHV0IGlkPVwiY2l0eVwiIHR5cGU9XCJpbnB1dFwiIHBJbnB1dFRleHQgW2Zvcm1Db250cm9sXT1cImNpdHlcIiBhcHBTdHJpcEludmlzaWJsZUNoYXJzLz5cclxuICAgICAgICAgICAgICAgIDxhcHAtZXJyb3IgW2NsYXNzXT1cIidhcHAtZ3JpZCdcIiBbZmllbGRdPSdjaXR5JyBbZm9ybV09XCJ3c3JGb3JtRGlyZWN0aXZlXCIgW2VyckRlZl09XCJ7IFxyXG4gICAgICAgICAgICAgICAgICByZXF1aXJlZDogJ1JlcXVpcmVkLicsXHJcbiAgICAgICAgICAgICAgICAgIGludmFsaWR3c0NpdHlMZW5ndGg6ICdDaXR5IHNob3VsZCBub3QgZXhjZWVkIGEgbGVuZ3RoIG9mIDMwIGNoYXJhY3RlcnMnLFxyXG4gICAgICAgICAgICAgICAgICAgcGF0dGVybjogJ0NpdHkgbmFtZSBjYW4gb25seSBjb250YWluIGxldHRlcnMsIHNwYWNlcywgYW5kIGh5cGhlbnMnLFxyXG4gICAgICAgICAgICAgICAgICAgbWF4bGVuZ3RoOiAnY2Fubm90IGV4Y2VlZCAzMCBjaGFyYWN0ZXJzJ1xyXG4gICAgICAgICAgICAgICAgfVwiPjwvYXBwLWVycm9yPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICA8aW9uLXJvdz5cclxuICAgICAgICAgICAgICAgIDxpb24tY29sIHN0eWxlPVwicGFkZGluZzogMHB4O1wiPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwic3RhdGVcIj57eyd3b3JrLnNlYXJjaC5qb3VybmFsLnN0YXRlJ3wgdHJhbnNsYXRlfX08L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgIDxhcHAtZHJvcGRvd24gaW5wdXRJZD1cInN0YXRlXCIgW29wdGlvbnNdPVwic3RhdGVzQ29tYm9cIiBvcHRpb25MYWJlbD1cIkRFU0NcIiBvcHRpb25WYWx1ZT1cIk5BTUVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgYXBwZW5kVG89XCJib2R5XCIgW2Zvcm1Db250cm9sXT1cInN0YXRlXCIgaW5wdXRJZD1cInN0YXRlXCI+PC9hcHAtZHJvcGRvd24+XHJcbiAgICAgICAgICAgICAgICAgICAgPGFwcC1lcnJvciBbY2xhc3NdPVwiJ2FwcC1ncmlkJ1wiIFtmaWVsZF09J3N0YXRlJyBbZm9ybV09XCJ3c3JGb3JtRGlyZWN0aXZlXCIgW2VyckRlZl09XCJ7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6ICdSZXF1aXJlZC4nXHJcbiAgICAgICAgICAgICAgICAgICAgfVwiPjwvYXBwLWVycm9yPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgICAgICAgIDxpb24tY29sIHNpemU9XCIxXCI+PC9pb24tY29sPlxyXG4gICAgICAgICAgICAgICAgPGlvbi1jb2wgc3R5bGU9XCJwYWRkaW5nOiAwcHg7XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJ6aXBcIj57eyd3b3JrLnNlYXJjaC5qb3VybmFsLnppcCd8IHRyYW5zbGF0ZX19PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgaWQ9XCJ6aXBcIiB0eXBlPVwiaW5wdXRcIiBwSW5wdXRUZXh0IFtmb3JtQ29udHJvbF09XCJ6aXBcIiBtaW5sZW5ndGg9XCI1XCIgbWF4bGVuZ3RoPVwiOVwiIGFwcFN0cmlwSW52aXNpYmxlQ2hhcnMvPlxyXG4gICAgICAgICAgICAgICAgICAgIDxhcHAtZXJyb3IgW2NsYXNzXT1cIidhcHAtZ3JpZCdcIiBbZmllbGRdPSd6aXAnIFtmb3JtXT1cIndzckZvcm1EaXJlY3RpdmVcIiBbZXJyRGVmXT1cInsgXHJcbiAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogJ1JlcXVpcmVkLicsXHJcbiAgICAgICAgICAgICAgICAgICAgICBpbnZhbGlkTGVuZ3RoOiAnWmlwIGNvZGUgc2hvdWxkIGJlIG9mIDUgb3IgOSBkaWdpdHMuJyxcclxuICAgICAgICAgICAgICAgICAgICAgIGludmFsaWROdW1iZXI6ICdaaXAgY29kZSBzaG91bGQgb25seSBoYXZlIG51bWJlcnMuJ1xyXG4gICAgICAgICAgICAgICAgICAgIH1cIj48L2FwcC1lcnJvcj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICAgICAgPC9pb24tcm93PlxyXG5cclxuICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgIDxpb24tY29sIGNsYXNzPVwiaW9uLXBhZGRpbmdcIiBzaXplPVwiMTJcIiBzaXplU209XCIxMlwiIHNpemVYcz1cIjEyXCIgc2l6ZU1kPVwiNlwiIHNpemVMZz1cIjZcIiBzaXplWGw9XCI2XCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicC1mbHVpZCBwLWZvcm1ncmlkXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiICpuZ0lmPVwiZGlzcGxheUpvYkFwcGxpY2F0aW9uUXVlc3Rpb25zIHx8IGRpc3BsYXlKb2JTZWFyY2hRdWVzdGlvbnNcIj5cclxuICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwid29ya1NlYXJjaERhdGVcIj57eyd3b3JrLnNlYXJjaC5qb3VybmFsLmFwcGxpY2F0aW9uRGF0ZSd8IHRyYW5zbGF0ZX19PC9sYWJlbD5cclxuICAgICAgICAgICAgICA8cC1jYWxlbmRhciBbc2hvd0ljb25dPVwidHJ1ZVwiIGlucHV0SWQ9XCJ3b3JrU2VhcmNoRGF0ZVwiIGFwcGVuZFRvPVwiYm9keVwiIFtmb3JtQ29udHJvbF09XCJ3b3JrU2VhcmNoRGF0ZVwiIGRhdGVGb3JtYXQ9XCJtbS9kZC95eVwiXHJcbiAgICAgICAgICAgICAgICBbbWluRGF0ZV09XCJzdW5EYXRlXCIgW21heERhdGVdPVwic2F0RGF0ZVwiIFtkZWZhdWx0RGF0ZV09XCJzdW5EYXRlXCIgW3NlbGVjdE90aGVyTW9udGhzXT1cInRydWVcIiBwbGFjZWhvbGRlcj1cIm1tL2RkL3l5eXlcIiBcclxuICAgICAgICAgICAgICAgIFttb250aE5hdmlnYXRvcl09XCJ0cnVlXCIgW3llYXJOYXZpZ2F0b3JdPVwidHJ1ZVwiIHllYXJSYW5nZT1cIjE5MDE6MjA1MFwiIChvbklucHV0KT1cImRhdGVJbnB1dCgkZXZlbnQpXCI+PC9wLWNhbGVuZGFyPiAgXHJcbiAgICAgICAgICAgICAgPGFwcC1lcnJvciBbY2xhc3NdPVwiJ2FwcC1ncmlkJ1wiIFtmaWVsZF09J3dvcmtTZWFyY2hEYXRlJyBbZm9ybV09XCJ3c3JGb3JtRGlyZWN0aXZlXCIgW2VyckRlZl09XCJ7IFxyXG4gICAgICAgICAgICAgICAgcmVxdWlyZWQ6ICdSZXF1aXJlZC4nLFxyXG4gICAgICAgICAgICAgICAgZGF0ZU5vdEJldHdlZW46ICdEYXRlIHNob3VsZCBiZSBiZXR3ZWVuICcgKyBzdW5EYXRlU3RyaW5nICsgJyBhbmQgJyArIGN1cnJlbnREYXRlU3RyaW5nICsgJy4nXHJcbiAgICAgICAgICAgICAgfVwiPjwvYXBwLWVycm9yPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPHNlY3Rpb24gKm5nSWY9XCJkaXNwbGF5Sm9iQXBwbGljYXRpb25RdWVzdGlvbnMgfHwgZGlzcGxheUpvYlNlYXJjaFF1ZXN0aW9uc1wiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInBvc2l0aW9uQXBwbGllZEZvclwiPnt7J3dvcmsuc2VhcmNoLmpvdXJuYWwuam9iVGl0bGUnfCB0cmFuc2xhdGV9fTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICA8aW5wdXQgaWQ9XCJwb3NpdGlvbkFwcGxpZWRGb3JcIiB0eXBlPVwiaW5wdXRcIiBwSW5wdXRUZXh0IFtmb3JtQ29udHJvbF09XCJwb3NpdGlvbkFwcGxpZWRGb3JcIiAgYXBwU3RyaXBJbnZpc2libGVDaGFycy8+XHJcbiAgICAgICAgICAgICAgICA8YXBwLWVycm9yIFtjbGFzc109XCInYXBwLWdyaWQnXCIgW2ZpZWxkXT0ncG9zaXRpb25BcHBsaWVkRm9yJyBbZm9ybV09XCJ3c3JGb3JtRGlyZWN0aXZlXCIgW2VyckRlZl09XCJ7IFxyXG4gICAgICAgICAgICAgICAgICByZXF1aXJlZDogJ1JlcXVpcmVkLicsXHJcbiAgICAgICAgICAgICAgICAgIHBhdHRlcm46ICdKb2IgVGl0bGUgY2FuIG9ubHkgY29udGFpbiBsZXR0ZXJzLCBzcGFjZXMsIGFuZCBoeXBoZW5zJyxcclxuICAgICAgICAgICAgICAgICAgbWF4bGVuZ3RoOiAnY2Fubm90IGV4Y2VlZCA1MCBjaGFyYWN0ZXJzJ1xyXG4gICAgICAgICAgICAgICAgfVwiPjwvYXBwLWVycm9yPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiZGlzcGxheUpvYkFwcGxpY2F0aW9uUXVlc3Rpb25zXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cImNvbnRhY3RNZXRob2RcIj57eyd3b3JrLnNlYXJjaC5qb3VybmFsLmNvbnRhY3RNZXRob2QnfCB0cmFuc2xhdGV9fTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgIDxwLXNlbGVjdEJ1dHRvbiBbb3B0aW9uc109XCJ3b3JrU2VhcmNoTWV0aG9kQ29udGFjdE1zXCIgb3B0aW9uTGFiZWw9XCJERVNDXCIgb3B0aW9uVmFsdWU9XCJOQU1FXCJcclxuICAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwiY29udGFjdE1ldGhvZFwiPjwvcC1zZWxlY3RCdXR0b24+XHJcbiAgICAgICAgICAgICAgICAgIDxhcHAtZXJyb3IgW2NsYXNzXT1cIidhcHAtZ3JpZCdcIiBbZmllbGRdPSdjb250YWN0TWV0aG9kJyBbZm9ybV09XCJ3c3JGb3JtRGlyZWN0aXZlXCIgW2VyckRlZl09XCJ7IFxyXG4gICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiAnUmVxdWlyZWQuJ1xyXG4gICAgICAgICAgICAgICAgICB9XCI+PC9hcHAtZXJyb3I+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImRpc3BsYXlKb2JTZWFyY2hRdWVzdGlvbnNcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiY29udGFjdE1ldGhvZFwiPnt7J3dvcmsuc2VhcmNoLmpvdXJuYWwuY29udGFjdE1ldGhvZEpvYlNlYXJjaCd8IHRyYW5zbGF0ZX19PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgPHAtc2VsZWN0QnV0dG9uIFtvcHRpb25zXT1cIndvcmtTZWFyY2hNZXRob2RDb250YWN0TXNcIiBvcHRpb25MYWJlbD1cIkRFU0NcIiBvcHRpb25WYWx1ZT1cIk5BTUVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJjb250YWN0TWV0aG9kXCI+PC9wLXNlbGVjdEJ1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgPGFwcC1lcnJvciBbY2xhc3NdPVwiJ2FwcC1ncmlkJ1wiIFtmaWVsZF09J2NvbnRhY3RNZXRob2QnIFtmb3JtXT1cIndzckZvcm1EaXJlY3RpdmVcIiBbZXJyRGVmXT1cInsgXHJcbiAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6ICdSZXF1aXJlZC4nXHJcbiAgICAgICAgICAgICAgICAgIH1cIj48L2FwcC1lcnJvcj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIiAqbmdJZj1cImNvbnRhY3RNZXRob2QudmFsdWUgPT0gJ1RFTEUnXCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiZW1wbG95ZXJQaG9uZVwiPnt7J3dvcmsuc2VhcmNoLmpvdXJuYWwucGhvbmVObycgfCB0cmFuc2xhdGV9fTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICA8cC1pbnB1dE1hc2sgaW5wdXRJZD1cImVtcGxveWVyUGhvbmVcIiBbZm9ybUNvbnRyb2xdPVwiZW1wbG95ZXJQaG9uZVwiIG1hc2s9XCIoOTk5KSA5OTktOTk5OVwiXHJcbiAgICAgICAgICAgICAgICAgIHVubWFzaz1cInRydWVcIj48L3AtaW5wdXRNYXNrPlxyXG4gICAgICAgICAgICAgICAgPGFwcC1lcnJvciBbY2xhc3NdPVwiJ2FwcC1ncmlkJ1wiIFtmaWVsZF09J2VtcGxveWVyUGhvbmUnIFtmb3JtXT1cIndzckZvcm1EaXJlY3RpdmVcIiBbZXJyRGVmXT1cInsgXHJcbiAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6ICdSZXF1aXJlZC4nXHJcbiAgICAgICAgICAgICAgICAgIH1cIj48L2FwcC1lcnJvcj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCIgKm5nSWY9XCJjb250YWN0TWV0aG9kLnZhbHVlID09ICdFTUFMJ1wiPlxyXG4gICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cImVtcGxveWVyRW1haWxcIj57eyd3b3JrLnNlYXJjaC5qb3VybmFsLmVtYWlsJyB8IHRyYW5zbGF0ZX19PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgIDxpbnB1dCBpZD1cImVtcGxveWVyRW1haWxcIiB0eXBlPVwiaW5wdXRcIiBwSW5wdXRUZXh0IFtmb3JtQ29udHJvbF09XCJlbXBsb3llckVtYWlsXCJcclxuICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJlbWFpbGlkQGV4YW1wbGUuY29tXCIgYXBwU3RyaXBJbnZpc2libGVDaGFycy8+XHJcbiAgICAgICAgICAgICAgICA8YXBwLWVycm9yIFtjbGFzc109XCInYXBwLWdyaWQnXCIgW2ZpZWxkXT0nZW1wbG95ZXJFbWFpbCcgW2Zvcm1dPVwid3NyRm9ybURpcmVjdGl2ZVwiIFtlcnJEZWZdPVwieyBcclxuICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6ICdSZXF1aXJlZC4nLFxyXG4gICAgICAgICAgICAgICAgICBlbXBsb3llckVtYWlsOiAnSW52YWxpZCBlbWFpbCBhZGRyZXNzLicsXHJcbiAgICAgICAgICAgICAgICAgIG1heGxlbmd0aDogJ2Nhbm5vdCBleGNlZWQgNDAgY2hhcmFjdGVycydcclxuICAgICAgICAgICAgICAgIH1cIj48L2FwcC1lcnJvcj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCIgKm5nSWY9XCJjb250YWN0TWV0aG9kLnZhbHVlID09ICdPTkxJJ1wiPlxyXG4gICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cImVtcGxveWVyV2Vic2l0ZVwiPnt7J3dvcmsuc2VhcmNoLmpvdXJuYWwud2Vic2l0ZScgfCB0cmFuc2xhdGV9fTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICA8aW5wdXQgaWQ9XCJlbXBsb3llcldlYnNpdGVcIiB0eXBlPVwiaW5wdXRcIiBwSW5wdXRUZXh0IFtmb3JtQ29udHJvbF09XCJlbXBsb3llcldlYnNpdGVcIiBhcHBTdHJpcEludmlzaWJsZUNoYXJzIC8+XHJcbiAgICAgICAgICAgICAgICA8YXBwLWVycm9yIFtjbGFzc109XCInYXBwLWdyaWQnXCIgW2ZpZWxkXT0nZW1wbG95ZXJXZWJzaXRlJyBbZm9ybV09XCJ3c3JGb3JtRGlyZWN0aXZlXCIgW2VyckRlZl09XCJ7IFxyXG4gICAgICAgICAgICAgICAgICByZXF1aXJlZDogJ1JlcXVpcmVkLicsXHJcbiAgICAgICAgICAgICAgICAgIGludmFsaWRXZWJzaXRlOiAnUGxlYXNlIGVudGVyIGEgdmFsaWQgd2Vic2l0ZSBhZGRyZXNzJyxcclxuICAgICAgICAgICAgICAgICAgbWF4bGVuZ3RoOiAnY2Fubm90IGV4Y2VlZCA0MCBjaGFyYWN0ZXJzJ1xyXG4gICAgICAgICAgICAgICAgfVwiPjwvYXBwLWVycm9yPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIiAqbmdJZj1cImNvbnRhY3RNZXRob2QudmFsdWUgPT0nUFJTTidcIj5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJlbXBDb250YWN0UGVyc29uTmFtZVwiPnt7J3dvcmsuc2VhcmNoLmpvdXJuYWwuY29udGFjdE5hbWUnIHwgdHJhbnNsYXRlfX08L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgPGlucHV0IGlkPVwiZW1wQ29udGFjdFBlcnNvbk5hbWVcIiB0eXBlPVwiaW5wdXRcIiBwSW5wdXRUZXh0IFtmb3JtQ29udHJvbF09XCJlbXBDb250YWN0UGVyc29uTmFtZVwiIGFwcFN0cmlwSW52aXNpYmxlQ2hhcnMvPlxyXG4gICAgICAgICAgICAgICAgPGFwcC1lcnJvciBbY2xhc3NdPVwiJ2FwcC1ncmlkJ1wiIFtmaWVsZF09J2VtcENvbnRhY3RQZXJzb25OYW1lJyBbZm9ybV09XCJ3c3JGb3JtRGlyZWN0aXZlXCIgW2VyckRlZl09XCJ7IFxyXG4gICAgICAgICAgICAgICAgICByZXF1aXJlZDogJ1JlcXVpcmVkLicsXHJcbiAgICAgICAgICAgICAgICAgIG1heGxlbmd0aDogJ2Nhbm5vdCBleGNlZWQgNTAgY2hhcmFjdGVycydcclxuICAgICAgICAgICAgICAgIH1cIj48L2FwcC1lcnJvcj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCIgKm5nSWY9XCJjb250YWN0TWV0aG9kLnZhbHVlID09J1BSU04nXCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiZW1wQ29udGFjdFBlcnNvblRpdGxlXCI+e3snd29yay5zZWFyY2guam91cm5hbC5jb250YWN0VGl0bGUnIHwgdHJhbnNsYXRlfX08L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgPGlucHV0IGlkPVwiZW1wQ29udGFjdFBlcnNvblRpdGxlXCIgdHlwZT1cImlucHV0XCIgcElucHV0VGV4dCBbZm9ybUNvbnRyb2xdPVwiZW1wQ29udGFjdFBlcnNvblRpdGxlXCIgYXBwU3RyaXBJbnZpc2libGVDaGFycy8+XHJcbiAgICAgICAgICAgICAgICA8YXBwLWVycm9yIFtjbGFzc109XCInYXBwLWdyaWQnXCIgW2ZpZWxkXT0nZW1wQ29udGFjdFBlcnNvblRpdGxlJyBbZm9ybV09XCJ3c3JGb3JtRGlyZWN0aXZlXCIgW2VyckRlZl09XCJ7IFxyXG4gICAgICAgICAgICAgICAgICByZXF1aXJlZDogJ1JlcXVpcmVkLicsXHJcbiAgICAgICAgICAgICAgICAgIG1heGxlbmd0aDogJ2Nhbm5vdCBleGNlZWQgNTAgY2hhcmFjdGVycydcclxuICAgICAgICAgICAgICAgIH1cIj48L2FwcC1lcnJvcj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwic2VhcmNoUmVzdWx0XCI+e3snd29yay5zZWFyY2guam91cm5hbC5yZXN1bHQnIHwgdHJhbnNsYXRlfX08L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImFjdGl2aXR5VHlwZS52YWx1ZSA9PSdKT0FQJ1wiPlxyXG4gICAgICAgICAgICAgICAgICA8YXBwLWRyb3Bkb3duIFtvcHRpb25zXT1cIndvcmtTZWFyY2hSZXN1bHRDb21ib0pvYkFwcGxpY2F0aW9uTXNcIiBvcHRpb25MYWJlbD1cIkRFU0NcIiBvcHRpb25WYWx1ZT1cIk5BTUVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJzZWFyY2hSZXN1bHRcIiBhcHBlbmRUbz1cImJvZHlcIiBpbnB1dElkPVwic2VhcmNoUmVzdWx0XCI+PC9hcHAtZHJvcGRvd24+XHJcbiAgICAgICAgICAgICAgICAgIDxhcHAtZXJyb3IgW2NsYXNzXT1cIidhcHAtZ3JpZCdcIiBbZmllbGRdPSdzZWFyY2hSZXN1bHQnIFtmb3JtXT1cIndzckZvcm1EaXJlY3RpdmVcIiBbZXJyRGVmXT1cInsgXHJcbiAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiAnUmVxdWlyZWQuJ1xyXG4gICAgICAgICAgICAgICAgfVwiPjwvYXBwLWVycm9yPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiYWN0aXZpdHlUeXBlLnZhbHVlID09J0pPU0UnXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxhcHAtZHJvcGRvd24gW29wdGlvbnNdPVwid29ya1NlYXJjaFJlc3VsdENvbWJvSm9iU2VhcmNoTXNcIiBvcHRpb25MYWJlbD1cIkRFU0NcIiBvcHRpb25WYWx1ZT1cIk5BTUVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJzZWFyY2hSZXN1bHRcIiBhcHBlbmRUbz1cImJvZHlcIiBpbnB1dElkPVwic2VhcmNoUmVzdWx0XCI+PC9hcHAtZHJvcGRvd24+XHJcbiAgICAgICAgICAgICAgICAgIDxhcHAtZXJyb3IgW2NsYXNzXT1cIidhcHAtZ3JpZCdcIiBbZmllbGRdPSdzZWFyY2hSZXN1bHQnIFtmb3JtXT1cIndzckZvcm1EaXJlY3RpdmVcIiBbZXJyRGVmXT1cInsgXHJcbiAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiAnUmVxdWlyZWQuJ1xyXG4gICAgICAgICAgICAgICAgfVwiPjwvYXBwLWVycm9yPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgPC9pb24tcm93PlxyXG4gICAgICA8aW9uLXJvdz5cclxuICAgICAgICA8aW9uLWNvbCBjbGFzcz1cImlvbi10ZXh0LXJpZ2h0XCI+XHJcbiAgICAgICAgICA8aW9uLWJ1dHRvbiBzaGFwZT1cInJvdW5kXCIgZmlsbD1cIm91dGxpbmVcIiAoY2xpY2spPVwiY2xvc2UoKVwiIHR5cGU9XCJyZXNldFwiPnt7J2J1dHRvbi5jYW5jZWwnIHxcclxuICAgICAgICAgICAgdHJhbnNsYXRlfX08L2lvbi1idXR0b24+XHJcbiAgICAgICAgICA8aW9uLWJ1dHRvbiBzaGFwZT1cInJvdW5kXCIgKGNsaWNrKT1cImFkZCgpXCIgdHlwZT1cInN1Ym1pdFwiPnt7J2J1dHRvbi5hZGQnIHwgdHJhbnNsYXRlfX08L2lvbi1idXR0b24+XHJcbiAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICA8L2lvbi1yb3c+XHJcbiAgICA8L2lvbi1ncmlkPlxyXG4gIDwvZm9ybT5cclxuPC9wLWRpYWxvZz4iXX0=
|
package/esm2022/lib/components/weekly-work-search-journal/weekly-work-search-journal.component.mjs
CHANGED
|
@@ -271,6 +271,7 @@ export class WeeklyWorkSearchJournalComponent extends BasePage {
|
|
|
271
271
|
}
|
|
272
272
|
addWsRecord(event) {
|
|
273
273
|
this.isLoading = true;
|
|
274
|
+
console.log(event);
|
|
274
275
|
this.wss.saveWorkSearchJournal(event)
|
|
275
276
|
.subscribe(res => {
|
|
276
277
|
this.isLoading = false;
|
|
@@ -391,4 +392,4 @@ export class WeeklyWorkSearchJournalComponent extends BasePage {
|
|
|
391
392
|
args: [{ selector: 'app-weekly-work-search-journal', template: "<div *ngIf=\"!isLoading && errorMsg\" class=\"ion-text-center ion-padding-top\" style=\"padding-top: 50px;\">\r\n <ion-icon name=\"alert-circle-outline\" style=\"font-size: 60px; color: var(--ion-color-danger);\"></ion-icon>\r\n <div [innerHTML]=\"sanitizer.bypassSecurityTrustHtml(errorMsg)\"\r\n style=\"color: var(--ion-color-danger); font-size: larger;\" class=\"ion-text-center ion-padding\"></div>\r\n</div>\r\n\r\n<div *ngIf=\"!isLoading && !errorMsg\">\r\n <ion-grid>\r\n <ion-row>\r\n <ion-col size=\"12\" offsetXl=\"1\">\r\n <h1 class=\"app-heading\">{{'work.search.journal.heading' | translate:dynamicParam }}</h1>\r\n </ion-col>\r\n </ion-row>\r\n </ion-grid>\r\n <!-- There can be below combinations:\r\n 1. Waiting week is NOT served (With or without worksearch waived) - highest priority (Waiting week message)\r\n 2. Waiting week is served & Work search is waived - Worksearch waiver message\r\n 3. Waiting week is served and work search is NOT waived -->\r\n <div *ngIf=\"!isWaitingWeekServed\">\r\n <ion-grid class=\"ion-padding-top\">\r\n <ion-row>\r\n <ion-col ion-col size=\"12\" sizeSm=\"12\" sizeXs=\"12\" sizeMd=\"10\" sizeLg=\"6\" sizeXl=\"5\" offsetLg=\"3\"\r\n offsetXl={{offSetValue}} offsetMd=\"1\">\r\n <span>{{'no.work.search.required' | translate}}</span>\r\n </ion-col>\r\n </ion-row>\r\n </ion-grid>\r\n </div>\r\n <div *ngIf=\"isMS() && isWorkSearchWaived && isWaitingWeekServed\">\r\n <ion-grid class=\"ion-padding-top\">\r\n <ion-row *ngIf=\"this.waiverReason\">\r\n <ion-col ion-col size=\"12\" sizeSm=\"12\" sizeXs=\"12\" sizeMd=\"10\" sizeLg=\"6\" sizeXl=\"5\" offsetLg=\"3\"\r\n offsetXl={{offSetValue}} offsetMd=\"1\">\r\n <span>{{ this.waiverReason}}</span>\r\n </ion-col>\r\n </ion-row>\r\n </ion-grid>\r\n </div>\r\n <div *ngIf=\"(!isWorkSearchWaived || (!isMS() && isWorkSearchWaived)) && isWaitingWeekServed\">\r\n <ion-grid>\r\n <ion-row>\r\n <ion-col size=\"12\" sizeSm=\"12\" sizeXs=\"12\" sizeMd=\"10\" sizeLg=\"6\" sizeXl=\"5\" offsetLg=\"3\"\r\n offsetXl={{offSetValue}} offsetMd=\"1\">\r\n <br />\r\n <ion-row>\r\n <ion-col size=\"6\">\r\n <h1 *ngIf=\"isME()\" style=\"position: fixed; margin-top: -45px;\" class=\"heading\">\r\n {{'work.search.activities' | translate }}</h1>\r\n <app-work-search-counter [count]=\"journals.length\"\r\n [hiredRecordCount]=\"retrieveHiredRecordCount()\"\r\n [msg]=\"getWorkSearchMessage()\"></app-work-search-counter>\r\n </ion-col>\r\n <ion-col class=\"journal-text\" style=\"padding-top: 75px; padding-right: 0px;\" size=\"5\">\r\n <b>+ Add</b> activity\r\n </ion-col>\r\n <ion-col class=\"journal-button\" style=\"padding-top: 60px;\" size=\"1\">\r\n <ion-button style=\"padding: 0px 0px;\" fill=\"outline\" size=\"small\" (click)=\"add()\"\r\n class=\"action-button\">\r\n <fa-icon [icon]=\"['fal', 'plus']\" class=\"action-icon\"></fa-icon>\r\n </ion-button>\r\n </ion-col>\r\n </ion-row>\r\n <div style=\"margin-bottom: 5px;\"></div>\r\n <section *ngIf=\"journals.length === 0\">\r\n <p-table [value]=\"[{}]\" styleClass=\"p-datatable-striped app-datatable\">\r\n <ng-template pTemplate=\"header\">\r\n <tr class=\"row-border\">\r\n <th style=\"height: 75px;\"></th>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </section>\r\n <p-table [value]=\"journals\" styleClass=\"p-datatable-striped app-datatable\" [loading]=\"isLoading\">\r\n <ng-template pTemplate=\"body\" let-record>\r\n <tr class=\"row-border\">\r\n <td>{{record.workSearchDate | date:'M/d/yyyy'}}</td>\r\n <td style=\"white-space: pre;\">{{record | formatWorksearchRecord}}</td>\r\n <td class=\"ion-text-right\">\r\n <ion-button fill=\"outline\" size=\"small\" (click)=\"edit(record)\"\r\n class=\"action-button\">\r\n <fa-icon [icon]=\"['fal', 'edit']\" class=\"action-icon\"></fa-icon>\r\n </ion-button>\r\n <ion-button fill=\"outline\" size=\"small\" (click)=\"delete(record)\"\r\n class=\"action-button\">\r\n <fa-icon [icon]=\"['fal', 'trash-alt']\" class=\"action-icon\"></fa-icon>\r\n </ion-button>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </ion-col>\r\n <ion-col size=\"12\" sizeXl=\"5\" offsetXl=\"1\" sizeLg=\"6\" style=\"text-align: center;\" *ngIf=\"!isMS()\">\r\n <h4 class=\"heading\">{{'work.search.journal.weekly.header' | translate}}</h4><br />\r\n <div>\r\n <div [innerHtml]=\"'work.search.journal.weekly.placeholder' | translate \"></div>\r\n </div>\r\n </ion-col>\r\n </ion-row>\r\n </ion-grid>\r\n </div>\r\n <!-- <app-work-search-employer-ct *ngIf=\"showAddWsRecors && isCT()\" (success)=\"addWsRecord($event)\"\r\n (onClose)=\"closeWsRecord()\" [journal]=\"true\" [sunDate]=\"sunDate\" [satDate]=\"satDate\"\r\n [satDateString]=\"satDateString\" [sunDateString]=\"sunDateString\" [data]=\"journal\"></app-work-search-employer-ct> -->\r\n <app-work-search-employer-me *ngIf=\"showAddWsRecors && isME()\" (success)=\"addWsRecord($event)\"\r\n (onClose)=\"closeWsRecord()\" [journal]=\"true\" [sunDate]=\"sunDate\" [satDate]=\"satDate\"\r\n [satDateString]=\"satDateString\" [sunDateString]=\"sunDateString\" [data]=\"journal\"></app-work-search-employer-me>\r\n <app-work-search-employer-ms *ngIf=\"showAddWsRecors && isMS()\" (success)=\"addWsRecord($event)\"\r\n (onClose)=\"closeWsRecord()\" [journal]=\"true\" [sunDate]=\"sunDate\" [satDate]=\"satDate\"\r\n [satDateString]=\"satDateString\" [sunDateString]=\"sunDateString\" [data]=\"journal\"></app-work-search-employer-ms>\r\n</div>", styles: ["ion-col{padding:12px}.row-border{background:#fff 0% 0% no-repeat padding-box;border:.5px solid #707070;border-bottom:.5px solid #707070;opacity:1}.journal-text,.journal-button{text-align:right}@media (min-width: 344px) and (max-width: 391px){.journal-text{padding-top:100px!important}.journal-button{padding-top:80px!important}}\n"] }]
|
|
392
393
|
}], () => [{ type: i1.WorkSearchService }, { type: i2.UtilService }, { type: i3.AlertController }, { type: i4.ReviewService }, { type: i5.DomSanitizer }], null); })();
|
|
393
394
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(WeeklyWorkSearchJournalComponent, { className: "WeeklyWorkSearchJournalComponent", filePath: "lib\\components\\weekly-work-search-journal\\weekly-work-search-journal.component.ts", lineNumber: 16 }); })();
|
|
394
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vla2x5LXdvcmstc2VhcmNoLWpvdXJuYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJldXNhLWFwcC1saWIvc3JjL2xpYi9jb21wb25lbnRzL3dlZWtseS13b3JrLXNlYXJjaC1qb3VybmFsL3dlZWtseS13b3JrLXNlYXJjaC1qb3VybmFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy93ZWVrbHktd29yay1zZWFyY2gtam91cm5hbC93ZWVrbHktd29yay1zZWFyY2gtam91cm5hbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBSWxELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7SUNKaEQsOEJBQXVHO0lBQ25HLDhCQUEwRyxhQUFBO0lBRzlHLGlCQUFNOzs7SUFGRyxlQUF5RDtJQUF6RCx3R0FBeUQ7OztJQWdCOUQsMkJBQWtDLGtCQUFBLGNBQUEsaUJBQUEsV0FBQTtJQUtaLFlBQXlDOztJQUFBLGlCQUFPLEVBQUEsRUFBQSxFQUFBLEVBQUE7OztJQUR0RCxlQUF3QjtJQUF4Qix3REFBd0I7SUFDbEIsZUFBeUM7SUFBekMscUVBQXlDOzs7SUFPdkQsK0JBQW1DLGlCQUFBLFdBQUE7SUFHckIsWUFBc0I7SUFBQSxpQkFBTyxFQUFBLEVBQUE7OztJQURuQyxlQUF3QjtJQUF4Qix3REFBd0I7SUFDbEIsZUFBc0I7SUFBdEIseUNBQXNCOzs7SUFMNUMsMkJBQWlFLGtCQUFBO0lBRXpELHFHQUtVO0lBQ2QsaUJBQVcsRUFBQTs7O0lBTkcsZUFBdUI7SUFBdkIsMENBQXVCOzs7SUFnQmpCLDhCQUErRTtJQUMzRSxZQUF5Qzs7SUFB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QW1CLEdBQUcsQ0FBQyxFQUFHO2dCQUN4RSxPQUFPLDBGQUEwRixDQUFBO2FBQ2xHO2lCQUFNLElBQUksS0FBSyxHQUFHLENBQUMsSUFBSSxnQkFBZ0IsR0FBRyxDQUFDLElBQUksbUJBQW1CLElBQUksQ0FBQyxFQUFDO2dCQUN2RSxPQUFPLHlDQUF5QyxDQUFBO2FBQ2pEO2lCQUFNLElBQUksS0FBSyxHQUFHLENBQUMsSUFBSSxnQkFBZ0IsR0FBRyxDQUFDLElBQUksbUJBQW1CLEdBQUcsQ0FBQyxFQUFHO2dCQUN4RSxPQUFPLHdGQUF3RixDQUFBO2FBQ2hHO2lCQUFNLElBQUksS0FBSyxHQUFHLENBQUMsSUFBSSxnQkFBZ0IsR0FBRyxDQUFDLElBQUksbUJBQW1CLElBQUksQ0FBQyxFQUFHO2dCQUN6RSxPQUFPLHVDQUF1QyxDQUFBO2FBQy9DO2lCQUFNLElBQUksZ0JBQWdCLEdBQUcsQ0FBQyxJQUFJLG1CQUFtQixHQUFHLENBQUMsRUFBRTtnQkFDMUQsT0FBTyxtRUFBbUUsQ0FBQTthQUMzRTtpQkFDSTtnQkFDSCxPQUFPLDBCQUEwQixDQUFDO2FBQ25DO1NBQ0Y7SUFDSCxDQUFDO2lHQWxNUSxnQ0FBZ0M7b0VBQWhDLGdDQUFnQztZQ2Y3QyxpRkFJTSxxRUFBQTs7WUFKQSxxREFBNEI7WUFNNUIsZUFBNkI7WUFBN0Isc0RBQTZCOzs7aUZEU3RCLGdDQUFnQztjQUw1QyxTQUFTOzJCQUNFLGdDQUFnQzs7a0ZBSS9CLGdDQUFnQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERvbVNhbml0aXplciB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xyXG5pbXBvcnQgeyBBbGVydENvbnRyb2xsZXIgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XHJcbmltcG9ydCB7IFV0aWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdXRpbC91dGlsLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBCYXNlUGFnZSB9IGZyb20gJy4uLy4uL3BhZ2VzL0Jhc2VQYWdlJztcclxuaW1wb3J0IHsgQ29tYm9PcHRpb24gfSBmcm9tICcuLi8uLi9tb2RlbHMvY29tYm8tbW9kZWwnO1xyXG5pbXBvcnQgeyBXb3JrU2VhcmNoUmVjb3JkTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvd2Vla2x5LWNlcnQvd29yay1zZWFyY2gtcmVjb3JkLXYyLW1vZGVsJztcclxuaW1wb3J0IHsgUmV2aWV3U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3dlZWtseS1jZXJ0L3Jldmlldy5zZXJ2aWNlJ1xyXG5pbXBvcnQgeyBXb3JrU2VhcmNoU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3dlZWtseS1jZXJ0L3dvcmstc2VhcmNoLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtd2Vla2x5LXdvcmstc2VhcmNoLWpvdXJuYWwnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi93ZWVrbHktd29yay1zZWFyY2gtam91cm5hbC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL3dlZWtseS13b3JrLXNlYXJjaC1qb3VybmFsLmNvbXBvbmVudC5zY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgV2Vla2x5V29ya1NlYXJjaEpvdXJuYWxDb21wb25lbnQgZXh0ZW5kcyBCYXNlUGFnZSBpbXBsZW1lbnRzIE9uSW5pdHtcclxuIHB1YmxpYyBqb3VybmFscyA6IFdvcmtTZWFyY2hSZWNvcmRNb2RlbFtdID0gW107XHJcblxyXG4gIHB1YmxpYyBqb3VybmFsIDogV29ya1NlYXJjaFJlY29yZE1vZGVsO1xyXG5cclxuICBwdWJsaWMgc2hvd0FkZFdzUmVjb3JzID0gZmFsc2U7XHJcblxyXG4gIHB1YmxpYyBzYXREYXRlIDogRGF0ZTtcclxuICBwdWJsaWMgc3VuRGF0ZSA6IERhdGU7XHJcbiAgcHVibGljIHNhdERhdGVTdHJpbmc7XHJcbiAgcHVibGljIHN1bkRhdGVTdHJpbmc7XHJcbiAgcHVibGljIGlzTG9hZGluZyA6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgZHluYW1pY1BhcmFtIDogYW55O1xyXG4gIHB1YmxpYyBlcnJvck1zZyA6IHN0cmluZztcclxuICBwdWJsaWMgd2FpdmVyUmVhc29uOiBzdHJpbmc7XHJcbiAgcHVibGljIGlzV29ya1NlYXJjaFdhaXZlZCA6IGJvb2xlYW47XHJcbiAgcHVibGljIGlzV2FpdGluZ1dlZWtTZXJ2ZWQgOiBib29sZWFuO1xyXG4gIGNvbXBTdGF0ZSA6IHN0cmluZztcclxuXHJcbiAgcHVibGljIGN1cnJlbnRTdGF0ZTogc3RyaW5nID0gdGhpcy51dGlsLmdldFN0YXRlKCk7XHJcbiAgcHVibGljIG9mZlNldFZhbHVlOiBudW1iZXJcclxuXHJcbiAgY29uc3RydWN0b3IocHVibGljIHdzcyA6IFdvcmtTZWFyY2hTZXJ2aWNlLCBwdWJsaWMgdXRpbDogVXRpbFNlcnZpY2UsIHB1YmxpYyBhYzogQWxlcnRDb250cm9sbGVyLCBwcml2YXRlIHJzIDogUmV2aWV3U2VydmljZSwgcHVibGljIHNhbml0aXplcjogRG9tU2FuaXRpemVyKSB7IFxyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgaWYodGhpcy5jdXJyZW50U3RhdGUgPT09ICdNUycpXHJcbiAgICB7XHJcbiAgICAgIHRoaXMub2ZmU2V0VmFsdWU9NFxyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHRoaXMub2ZmU2V0VmFsdWU9MVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuY29tcFN0YXRlID0gdGhpcy51dGlsLmdldFN0YXRlTG93ZXJjYXNlKCk7XHJcbiAgICB0aGlzLmZldGNoSm91cm5hbHMoKTtcclxuICB9XHJcblxyXG4gIGZldGNoSm91cm5hbHMoKSB7XHJcbiAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XHJcbiAgICB0aGlzLndzcy5mZXRjaFdvcmtTZWFyY2hKb3VybmFscygpXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUocmVzID0+IHtcclxuICAgICAgICAgICAgICB0aGlzLnN1bkRhdGUgPSB0aGlzLmdldEVudGVyZWREYXRlKHJlcy5taW5Xb3JrU2VhcmNoRGF0ZVN0cmluZyk7XHJcbiAgICAgICAgICAgICAgdGhpcy5zYXREYXRlID0gdGhpcy5nZXRFbnRlcmVkRGF0ZShyZXMubWF4V29ya1NlYXJjaERhdGVTdHJpbmcpO1xyXG4gICAgICAgICAgICAgIHRoaXMuc2F0RGF0ZVN0cmluZyA9IHJlcy5tYXhXb3JrU2VhcmNoRGF0ZVN0cmluZztcclxuICAgICAgICAgICAgICB0aGlzLnN1bkRhdGVTdHJpbmcgPSByZXMubWluV29ya1NlYXJjaERhdGVTdHJpbmc7XHJcbiAgICAgICAgICAgICAgdGhpcy5qb3VybmFscyA9IHJlcy53b3JrU2VhcmNoUmVjb3JkcztcclxuICAgICAgICAgICAgICB0aGlzLmlzV29ya1NlYXJjaFdhaXZlZCA9IHJlcy5pc1dvcmtTZWFyY2hXYWl2ZWQ7XHJcbiAgICAgICAgICAgICAgdGhpcy53YWl2ZXJSZWFzb24gPSByZXMud2FpdmVyUmVhc29uO1xyXG4gICAgICAgICAgICAgIHRoaXMuaXNXYWl0aW5nV2Vla1NlcnZlZCA9IHJlcy5pc1dhaXRpbmdXZWVrU2VydmVkO1xyXG4gICAgICAgICAgICAgIHRoaXMuZHluYW1pY1BhcmFtID0ge1xyXG4gICAgICAgICAgICAgICAgJ3NhdHVyZGF5X2RhdGUnOiB0aGlzLnNhdERhdGVTdHJpbmcsXHJcbiAgICAgICAgICAgICAgICAnc3VuZGF5X2RhdGUnOiB0aGlzLnN1bkRhdGVTdHJpbmcsXHJcbiAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9LGVyciA9PiB7XHJcbiAgICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICB0aGlzLmVycm9yTXNnID0gZXJyLm1zZztcclxuICAgICAgICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBnZXRFbnRlcmVkRGF0ZSh2YWx1ZSl7XHJcbiAgICB2YXIgZGF0ZUFycmF5ID0gdmFsdWUuc3BsaXQoXCIvXCIpO1xyXG4gICAgdmFyIGRkID0gcGFyc2VJbnQodGhpcy51dGlsLnByZXBlZFplcm9JZlNpbmdsZURpZ2l0KGRhdGVBcnJheVsxXSkpO1xyXG4gICAgdmFyIE1NID0gcGFyc2VJbnQodGhpcy51dGlsLnByZXBlZFplcm9JZlNpbmdsZURpZ2l0KGRhdGVBcnJheVswXSkpIC0gMTtcclxuICAgIHZhciB5eXl5ID0gcGFyc2VJbnQodGhpcy51dGlsLnByZXBlZFplcm9JZlNpbmdsZURpZ2l0KGRhdGVBcnJheVsyXSkpO1xyXG4gICAgcmV0dXJuIG5ldyBEYXRlKHl5eXksTU0sZGQpO1xyXG4gIH1cclxuXHJcbiBhZGQoKXtcclxuICAgIHRoaXMuam91cm5hbCA9IG51bGw7XHJcbiAgICB0aGlzLnNob3dBZGRXc1JlY29ycyA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBjbG9zZVdzUmVjb3JkKCl7XHJcbiAgICB0aGlzLnNob3dBZGRXc1JlY29ycyA9IGZhbHNlO1xyXG4gICAgdGhpcy5qb3VybmFsID0gbnVsbDtcclxuICB9XHJcblxyXG4gIGFkZFdzUmVjb3JkKGV2ZW50IDogV29ya1NlYXJjaFJlY29yZE1vZGVsKXtcclxuICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcclxuICAgIHRoaXMud3NzLnNhdmVXb3JrU2VhcmNoSm91cm5hbChldmVudClcclxuICAgICAgICAgICAgLnN1YnNjcmliZShyZXMgPT4ge1xyXG4gICAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgdGhpcy5zaG93QWRkV3NSZWNvcnMgPSBmYWxzZTtcclxuICAgICAgICAgICAgICB0aGlzLmpvdXJuYWwgPSBudWxsO1xyXG4gICAgICAgICAgICAgIGlmKGV2ZW50LmNsYWltYW50V29ya1NlYXJjaEpvdXJuYWxJZCl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnV0aWwuc3VjY2VzcyhcIkFjdGl2aXR5IHVwZGF0ZWQgc3VjY2Vzc2Z1bGx5LlwiKTtcclxuICAgICAgICAgICAgICB9ZWxzZXtcclxuICAgICAgICAgICAgICAgIHRoaXMudXRpbC5zdWNjZXNzKFwiQWN0aXZpdHkgc2F2ZWQgc3VjY2Vzc2Z1bGx5LlwiKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgdGhpcy5mZXRjaEpvdXJuYWxzKCk7XHJcbiAgICAgICAgICAgICAgdGhpcy5ycy5zZXRSZXZpZXdBcHAodHJ1ZSk7XHJcbiAgICAgICAgICAgIH0sIGVyciA9PiB7XHJcbiAgICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICB0aGlzLnV0aWwuZXJyb3JIYW5kbGVyKGVycik7XHJcbiAgICAgICAgICAgICAgdGhpcy5zaG93QWRkV3NSZWNvcnMgPSBmYWxzZTtcclxuICAgICAgICAgICAgICB0aGlzLmpvdXJuYWwgPSBudWxsO1xyXG4gICAgICAgICAgICB9KTtcclxuICB9XHJcblxyXG4gIGVkaXQod3NSZWNvcmQgOiBXb3JrU2VhcmNoUmVjb3JkTW9kZWwpe1xyXG4gICAgdGhpcy5qb3VybmFsID0gd3NSZWNvcmQ7XHJcbiAgICB0aGlzLnNob3dBZGRXc1JlY29ycyA9IHRydWU7XHJcbiAgfVxyXG5cclxuICByZXRyaWV2ZUhpcmVkUmVjb3JkQ291bnQgKCkgOiBudW1iZXIge1xyXG4gICAgLy9pdGVyYXRlIGpvdXJuYWxcclxuICAgICAgbGV0IGhpcmVkUmVjb3JkQ291bnQgPSAwO1xyXG4gICAgICBmb3IobGV0IGk9MDsgaSA8IHRoaXMuam91cm5hbHMubGVuZ3RoOyBpKyspXHJcbiAgICAgIHtcclxuICAgICAgICBpZih0aGlzLmpvdXJuYWxzW2ldLnNlYXJjaFJlc3VsdCA9PT0gXCJISVJFXCIpXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgaGlyZWRSZWNvcmRDb3VudCs9IDE7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBoaXJlZFJlY29yZENvdW50O1xyXG4gIH1cclxuXHJcbiAgcmV0cmlldmVKb2FwQ291bnQgKCkgOiBudW1iZXIge1xyXG4gICAgbGV0IGpvYXBDb3VudCA9MDtcclxuICAgIGZvcihsZXQgaT0wOyBpIDwgdGhpcy5qb3VybmFscy5sZW5ndGg7IGkrKylcclxuICAgIHtcclxuICAgICAgaWYodGhpcy5qb3VybmFsc1tpXS5hY3Rpdml0eVR5cGUgPT09IFwiSk9BUFwiKVxyXG4gICAgICB7XHJcbiAgICAgICAgam9hcENvdW50Kys7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBqb2FwQ291bnQ7XHJcbiAgfVxyXG5cclxuICBhc3luYyBkZWxldGUod3NSZWNvcmQgOiBXb3JrU2VhcmNoUmVjb3JkTW9kZWwpe1xyXG4gICAgY29uc3QgYWxlcnQgPSBhd2FpdCB0aGlzLmFjLmNyZWF0ZSh7XHJcbiAgICAgIGhlYWRlcjogJ0NvbmZpcm0hJyxcclxuICAgICAgbWVzc2FnZTogJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBlbnRyeT8nLFxyXG4gICAgICBidXR0b25zOiBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgdGV4dDogJ0NhbmNlbCcsXHJcbiAgICAgICAgICByb2xlOiAnY2FuY2VsJyxcclxuICAgICAgICAgIGNzc0NsYXNzOiAncHJpbWFyeScsXHJcbiAgICAgICAgICBoYW5kbGVyOiAoKSA9PiB7fVxyXG4gICAgICAgIH0sIHtcclxuICAgICAgICAgIHRleHQ6ICdPa2F5JyxcclxuICAgICAgICAgIGhhbmRsZXI6ICgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy53c3MuZGVsZXRlV29ya1NlYXJjaEpvdXJuYWwod3NSZWNvcmQuY2xhaW1hbnRXb3JrU2VhcmNoSm91cm5hbElkKVxyXG4gICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgICAgICAgICAgICByZXMgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnV0aWwuc3VjY2VzcyhcIlJlY29yZCBkZWxldGVkIHN1Y2Nlc3NmdWxseS5cIik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZmV0Y2hKb3VybmFscygpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgfSxlcnIgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnV0aWwuZXJyb3JIYW5kbGVyKGVycik7XHJcbiAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIF1cclxuICAgIH0pO1xyXG5cclxuICAgIGF3YWl0IGFsZXJ0LnByZXNlbnQoKTtcclxuICB9XHJcblxyXG4gICAgZ2V0V29ya1NlYXJjaE1lc3NhZ2UoKSB7XHJcbiAgICAgIGxldCBjb3VudCA9IHRoaXMuam91cm5hbHMubGVuZ3RoO1xyXG5cclxuICAgICAgLy9pdGVyYXRlIGpvdXJuYWxcclxuICAgICAgbGV0IGhpcmVkUmVjb3JkQ291bnQgPSB0aGlzLnJldHJpZXZlSGlyZWRSZWNvcmRDb3VudCgpO1xyXG5cclxuICAgICAgbGV0IGpvYXBBY3Rpdml0aWVzQ291bnQgPSB0aGlzLnJldHJpZXZlSm9hcENvdW50KCk7XHJcbiAgICAgIFxyXG4gICAgICBpZih0aGlzLnV0aWwuZ2V0U3RhdGVMb3dlcmNhc2UoKSA9PSAnbWUnKXtcclxuICAgICAgICBpZihjb3VudCA8IDEpe1xyXG4gICAgICAgICAgcmV0dXJuICdBdCBsZWFzdCBvbmUgYWN0aXZpdHkgcmVxdWlyZWQnXHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHJldHVybiAnTWluaW11bSByZXF1aXJlbWVudHMgbWV0JztcclxuICAgICAgICB9XHJcbiAgICAgIH1lbHNle1xyXG4gICAgICAgIGlmIChjb3VudCA8IDEpIHtcclxuICAgICAgICAgIHJldHVybiAnWW91IG5lZWQgdG8gYWRkIGF0IGxlYXN0IDMgYWN0aXZpdGllcyBmb3IgdGhlIHdlZWssIGF0IGxlYXN0IG9uZSB3aXRoIGEgZmlsZWQgYXBwbGljYXRpb24gb3IgcmVzdW1lJ1xyXG4gICAgICAgIH0gZWxzZSBpZiAoY291bnQgPCAyICYmIGhpcmVkUmVjb3JkQ291bnQgPCAxICYmIGpvYXBBY3Rpdml0aWVzQ291bnQgPCAxICkge1xyXG4gICAgICAgICAgcmV0dXJuICdZb3UgbmVlZCAyIG1vcmUgYWN0aXZpdGllcyBmb3IgdGhlIHdlZWssIGF0IGxlYXN0IG9uZSB3aXRoIGEgZmlsZWQgYXBwbGljYXRpb24gb3IgcmVzdW1lJ1xyXG4gICAgICAgIH0gZWxzZSBpZiAoY291bnQgPCAyICYmIGhpcmVkUmVjb3JkQ291bnQgPCAxICYmIGpvYXBBY3Rpdml0aWVzQ291bnQgPj0gMSl7XHJcbiAgICAgICAgICByZXR1cm4gJ1lvdSBuZWVkIDIgbW9yZSBhY3Rpdml0aWVzIGZvciB0aGUgd2VlaydcclxuICAgICAgICB9IGVsc2UgaWYgKGNvdW50IDwgMyAmJiBoaXJlZFJlY29yZENvdW50IDwgMSAmJiBqb2FwQWN0aXZpdGllc0NvdW50IDwgMSApIHtcclxuICAgICAgICAgIHJldHVybiAnWW91IG5lZWQgMSBtb3JlIGFjdGl2aXR5IGZvciB0aGUgd2VlaywgYXQgbGVhc3Qgb25lIHdpdGggYSBmaWxlZCBhcHBsaWNhdGlvbiBvciByZXN1bWUnXHJcbiAgICAgICAgfSBlbHNlIGlmIChjb3VudCA8IDMgJiYgaGlyZWRSZWNvcmRDb3VudCA8IDEgJiYgam9hcEFjdGl2aXRpZXNDb3VudCA+PSAxICkge1xyXG4gICAgICAgICAgcmV0dXJuICdZb3UgbmVlZCAxIG1vcmUgYWN0aXZpdHkgZm9yIHRoZSB3ZWVrJ1xyXG4gICAgICAgIH0gZWxzZSBpZiAoaGlyZWRSZWNvcmRDb3VudCA8IDEgJiYgam9hcEFjdGl2aXRpZXNDb3VudCA8IDEgKXtcclxuICAgICAgICAgIHJldHVybiAnWW91IG5lZWQgYXQgbGVhc3Qgb25lIGFjdGl2aXR5IHdpdGggYSBmaWxlZCBhcHBsaWNhdGlvbiBvciByZXN1bWUnXHJcbiAgICAgICAgfSAgXHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICByZXR1cm4gJ01pbmltdW0gcmVxdWlyZW1lbnRzIG1ldCc7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiPGRpdiAqbmdJZj1cIiFpc0xvYWRpbmcgJiYgZXJyb3JNc2dcIiBjbGFzcz1cImlvbi10ZXh0LWNlbnRlciBpb24tcGFkZGluZy10b3BcIiBzdHlsZT1cInBhZGRpbmctdG9wOiA1MHB4O1wiPlxyXG4gICAgPGlvbi1pY29uIG5hbWU9XCJhbGVydC1jaXJjbGUtb3V0bGluZVwiIHN0eWxlPVwiZm9udC1zaXplOiA2MHB4OyBjb2xvcjogdmFyKC0taW9uLWNvbG9yLWRhbmdlcik7XCI+PC9pb24taWNvbj5cclxuICAgIDxkaXYgW2lubmVySFRNTF09XCJzYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdEh0bWwoZXJyb3JNc2cpXCJcclxuICAgICAgICBzdHlsZT1cImNvbG9yOiB2YXIoLS1pb24tY29sb3ItZGFuZ2VyKTsgZm9udC1zaXplOiBsYXJnZXI7XCIgY2xhc3M9XCJpb24tdGV4dC1jZW50ZXIgaW9uLXBhZGRpbmdcIj48L2Rpdj5cclxuPC9kaXY+XHJcblxyXG48ZGl2ICpuZ0lmPVwiIWlzTG9hZGluZyAmJiAhZXJyb3JNc2dcIj5cclxuICAgIDxpb24tZ3JpZD5cclxuICAgICAgICA8aW9uLXJvdz5cclxuICAgICAgICAgICAgPGlvbi1jb2wgc2l6ZT1cIjEyXCIgb2Zmc2V0WGw9XCIxXCI+XHJcbiAgICAgICAgICAgICAgICA8aDEgY2xhc3M9XCJhcHAtaGVhZGluZ1wiPnt7J3dvcmsuc2VhcmNoLmpvdXJuYWwuaGVhZGluZycgfCB0cmFuc2xhdGU6ZHluYW1pY1BhcmFtIH19PC9oMT5cclxuICAgICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgIDwvaW9uLXJvdz5cclxuICAgIDwvaW9uLWdyaWQ+XHJcbiAgICA8IS0tIFRoZXJlIGNhbiBiZSBiZWxvdyBjb21iaW5hdGlvbnM6XHJcbiAgICAgICAxLiBXYWl0aW5nIHdlZWsgaXMgTk9UIHNlcnZlZCAoV2l0aCBvciB3aXRob3V0IHdvcmtzZWFyY2ggd2FpdmVkKSAtIGhpZ2hlc3QgcHJpb3JpdHkgKFdhaXRpbmcgd2VlayBtZXNzYWdlKVxyXG4gICAgICAgMi4gV2FpdGluZyB3ZWVrIGlzIHNlcnZlZCAmIFdvcmsgc2VhcmNoIGlzIHdhaXZlZCAtIFdvcmtzZWFyY2ggd2FpdmVyIG1lc3NhZ2VcclxuICAgICAgIDMuIFdhaXRpbmcgd2VlayBpcyBzZXJ2ZWQgYW5kIHdvcmsgc2VhcmNoIGlzIE5PVCB3YWl2ZWQgIC0tPlxyXG4gICAgPGRpdiAqbmdJZj1cIiFpc1dhaXRpbmdXZWVrU2VydmVkXCI+XHJcbiAgICAgICAgPGlvbi1ncmlkIGNsYXNzPVwiaW9uLXBhZGRpbmctdG9wXCI+XHJcbiAgICAgICAgICAgIDxpb24tcm93PlxyXG4gICAgICAgICAgICAgICAgPGlvbi1jb2wgaW9uLWNvbCBzaXplPVwiMTJcIiBzaXplU209XCIxMlwiIHNpemVYcz1cIjEyXCIgc2l6ZU1kPVwiMTBcIiBzaXplTGc9XCI2XCIgc2l6ZVhsPVwiNVwiIG9mZnNldExnPVwiM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgb2Zmc2V0WGw9e3tvZmZTZXRWYWx1ZX19IG9mZnNldE1kPVwiMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7J25vLndvcmsuc2VhcmNoLnJlcXVpcmVkJyB8IHRyYW5zbGF0ZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgICAgICA8L2lvbi1yb3c+XHJcbiAgICAgICAgPC9pb24tZ3JpZD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiAqbmdJZj1cImlzTVMoKSAmJiBpc1dvcmtTZWFyY2hXYWl2ZWQgJiYgaXNXYWl0aW5nV2Vla1NlcnZlZFwiPlxyXG4gICAgICAgIDxpb24tZ3JpZCBjbGFzcz1cImlvbi1wYWRkaW5nLXRvcFwiPlxyXG4gICAgICAgICAgICA8aW9uLXJvdyAqbmdJZj1cInRoaXMud2FpdmVyUmVhc29uXCI+XHJcbiAgICAgICAgICAgICAgICA8aW9uLWNvbCBpb24tY29sIHNpemU9XCIxMlwiIHNpemVTbT1cIjEyXCIgc2l6ZVhzPVwiMTJcIiBzaXplTWQ9XCIxMFwiIHNpemVMZz1cIjZcIiBzaXplWGw9XCI1XCIgb2Zmc2V0TGc9XCIzXCJcclxuICAgICAgICAgICAgICAgICAgICBvZmZzZXRYbD17e29mZlNldFZhbHVlfX0gb2Zmc2V0TWQ9XCIxXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4+e3sgdGhpcy53YWl2ZXJSZWFzb259fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgICAgPC9pb24tcm93PlxyXG4gICAgICAgIDwvaW9uLWdyaWQ+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgKm5nSWY9XCIoIWlzV29ya1NlYXJjaFdhaXZlZCB8fCAoIWlzTVMoKSAmJiBpc1dvcmtTZWFyY2hXYWl2ZWQpKSAmJiBpc1dhaXRpbmdXZWVrU2VydmVkXCI+XHJcbiAgICAgICAgPGlvbi1ncmlkPlxyXG4gICAgICAgICAgICA8aW9uLXJvdz5cclxuICAgICAgICAgICAgICAgIDxpb24tY29sIHNpemU9XCIxMlwiIHNpemVTbT1cIjEyXCIgc2l6ZVhzPVwiMTJcIiBzaXplTWQ9XCIxMFwiIHNpemVMZz1cIjZcIiBzaXplWGw9XCI1XCIgb2Zmc2V0TGc9XCIzXCJcclxuICAgICAgICAgICAgICAgICAgICBvZmZzZXRYbD17e29mZlNldFZhbHVlfX0gb2Zmc2V0TWQ9XCIxXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJyIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlvbi1yb3c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpb24tY29sIHNpemU9XCI2XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDEgKm5nSWY9XCJpc01FKClcIiBzdHlsZT1cInBvc2l0aW9uOiBmaXhlZDsgbWFyZ2luLXRvcDogLTQ1cHg7XCIgY2xhc3M9XCJoZWFkaW5nXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3snd29yay5zZWFyY2guYWN0aXZpdGllcycgfCB0cmFuc2xhdGUgfX08L2gxPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFwcC13b3JrLXNlYXJjaC1jb3VudGVyIFtjb3VudF09XCJqb3VybmFscy5sZW5ndGhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtoaXJlZFJlY29yZENvdW50XT1cInJldHJpZXZlSGlyZWRSZWNvcmRDb3VudCgpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbXNnXT1cImdldFdvcmtTZWFyY2hNZXNzYWdlKClcIj48L2FwcC13b3JrLXNlYXJjaC1jb3VudGVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpb24tY29sIGNsYXNzPVwiam91cm5hbC10ZXh0XCIgc3R5bGU9XCJwYWRkaW5nLXRvcDogNzVweDsgcGFkZGluZy1yaWdodDogMHB4O1wiIHNpemU9XCI1XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Yj4rIEFkZDwvYj4gYWN0aXZpdHlcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW9uLWNvbCBjbGFzcz1cImpvdXJuYWwtYnV0dG9uXCIgc3R5bGU9XCJwYWRkaW5nLXRvcDogNjBweDtcIiBzaXplPVwiMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlvbi1idXR0b24gc3R5bGU9XCJwYWRkaW5nOiAwcHggMHB4O1wiIGZpbGw9XCJvdXRsaW5lXCIgc2l6ZT1cInNtYWxsXCIgKGNsaWNrKT1cImFkZCgpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImFjdGlvbi1idXR0b25cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmEtaWNvbiBbaWNvbl09XCJbJ2ZhbCcsICdwbHVzJ11cIiBjbGFzcz1cImFjdGlvbi1pY29uXCI+PC9mYS1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9pb24tcm93PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJtYXJnaW4tYm90dG9tOiA1cHg7XCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gKm5nSWY9XCJqb3VybmFscy5sZW5ndGggPT09IDBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHAtdGFibGUgW3ZhbHVlXT1cIlt7fV1cIiBzdHlsZUNsYXNzPVwicC1kYXRhdGFibGUtc3RyaXBlZCBhcHAtZGF0YXRhYmxlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaGVhZGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyIGNsYXNzPVwicm93LWJvcmRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggc3R5bGU9XCJoZWlnaHQ6IDc1cHg7XCI+PC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wLXRhYmxlPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICA8cC10YWJsZSBbdmFsdWVdPVwiam91cm5hbHNcIiBzdHlsZUNsYXNzPVwicC1kYXRhdGFibGUtc3RyaXBlZCBhcHAtZGF0YXRhYmxlXCIgW2xvYWRpbmddPVwiaXNMb2FkaW5nXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJib2R5XCIgbGV0LXJlY29yZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBjbGFzcz1cInJvdy1ib3JkZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tyZWNvcmQud29ya1NlYXJjaERhdGUgfCBkYXRlOidNL2QveXl5eSd9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPVwid2hpdGUtc3BhY2U6IHByZTtcIj57e3JlY29yZCB8IGZvcm1hdFdvcmtzZWFyY2hSZWNvcmR9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiaW9uLXRleHQtcmlnaHRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlvbi1idXR0b24gZmlsbD1cIm91dGxpbmVcIiBzaXplPVwic21hbGxcIiAoY2xpY2spPVwiZWRpdChyZWNvcmQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYWN0aW9uLWJ1dHRvblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZhLWljb24gW2ljb25dPVwiWydmYWwnLCAnZWRpdCddXCIgY2xhc3M9XCJhY3Rpb24taWNvblwiPjwvZmEtaWNvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW9uLWJ1dHRvbiBmaWxsPVwib3V0bGluZVwiIHNpemU9XCJzbWFsbFwiIChjbGljayk9XCJkZWxldGUocmVjb3JkKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImFjdGlvbi1idXR0b25cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmYS1pY29uIFtpY29uXT1cIlsnZmFsJywgJ3RyYXNoLWFsdCddXCIgY2xhc3M9XCJhY3Rpb24taWNvblwiPjwvZmEtaWNvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9pb24tYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvcC10YWJsZT5cclxuICAgICAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgICAgICAgIDxpb24tY29sIHNpemU9XCIxMlwiIHNpemVYbD1cIjVcIiBvZmZzZXRYbD1cIjFcIiBzaXplTGc9XCI2XCIgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCIgKm5nSWY9XCIhaXNNUygpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzPVwiaGVhZGluZ1wiPnt7J3dvcmsuc2VhcmNoLmpvdXJuYWwud2Vla2x5LmhlYWRlcicgfCB0cmFuc2xhdGV9fTwvaDQ+PGJyIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBbaW5uZXJIdG1sXT1cIid3b3JrLnNlYXJjaC5qb3VybmFsLndlZWtseS5wbGFjZWhvbGRlcicgfCB0cmFuc2xhdGUgXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICAgIDwvaW9uLXJvdz5cclxuICAgICAgICA8L2lvbi1ncmlkPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8IS0tIDxhcHAtd29yay1zZWFyY2gtZW1wbG95ZXItY3QgKm5nSWY9XCJzaG93QWRkV3NSZWNvcnMgJiYgaXNDVCgpXCIgKHN1Y2Nlc3MpPVwiYWRkV3NSZWNvcmQoJGV2ZW50KVwiXHJcbiAgICAgICAgKG9uQ2xvc2UpPVwiY2xvc2VXc1JlY29yZCgpXCIgW2pvdXJuYWxdPVwidHJ1ZVwiIFtzdW5EYXRlXT1cInN1bkRhdGVcIiBbc2F0RGF0ZV09XCJzYXREYXRlXCJcclxuICAgICAgICBbc2F0RGF0ZVN0cmluZ109XCJzYXREYXRlU3RyaW5nXCIgW3N1bkRhdGVTdHJpbmddPVwic3VuRGF0ZVN0cmluZ1wiIFtkYXRhXT1cImpvdXJuYWxcIj48L2FwcC13b3JrLXNlYXJjaC1lbXBsb3llci1jdD4gLS0+XHJcbiAgICA8YXBwLXdvcmstc2VhcmNoLWVtcGxveWVyLW1lICpuZ0lmPVwic2hvd0FkZFdzUmVjb3JzICYmIGlzTUUoKVwiIChzdWNjZXNzKT1cImFkZFdzUmVjb3JkKCRldmVudClcIlxyXG4gICAgICAgIChvbkNsb3NlKT1cImNsb3NlV3NSZWNvcmQoKVwiIFtqb3VybmFsXT1cInRydWVcIiBbc3VuRGF0ZV09XCJzdW5EYXRlXCIgW3NhdERhdGVdPVwic2F0RGF0ZVwiXHJcbiAgICAgICAgW3NhdERhdGVTdHJpbmddPVwic2F0RGF0ZVN0cmluZ1wiIFtzdW5EYXRlU3RyaW5nXT1cInN1bkRhdGVTdHJpbmdcIiBbZGF0YV09XCJqb3VybmFsXCI+PC9hcHAtd29yay1zZWFyY2gtZW1wbG95ZXItbWU+XHJcbiAgICA8YXBwLXdvcmstc2VhcmNoLWVtcGxveWVyLW1zICpuZ0lmPVwic2hvd0FkZFdzUmVjb3JzICYmIGlzTVMoKVwiIChzdWNjZXNzKT1cImFkZFdzUmVjb3JkKCRldmVudClcIlxyXG4gICAgICAgIChvbkNsb3NlKT1cImNsb3NlV3NSZWNvcmQoKVwiIFtqb3VybmFsXT1cInRydWVcIiBbc3VuRGF0ZV09XCJzdW5EYXRlXCIgW3NhdERhdGVdPVwic2F0RGF0ZVwiXHJcbiAgICAgICAgW3NhdERhdGVTdHJpbmddPVwic2F0RGF0ZVN0cmluZ1wiIFtzdW5EYXRlU3RyaW5nXT1cInN1bkRhdGVTdHJpbmdcIiBbZGF0YV09XCJqb3VybmFsXCI+PC9hcHAtd29yay1zZWFyY2gtZW1wbG95ZXItbXM+XHJcbjwvZGl2PiJdfQ==
|
|
395
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vla2x5LXdvcmstc2VhcmNoLWpvdXJuYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJldXNhLWFwcC1saWIvc3JjL2xpYi9jb21wb25lbnRzL3dlZWtseS13b3JrLXNlYXJjaC1qb3VybmFsL3dlZWtseS13b3JrLXNlYXJjaC1qb3VybmFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvY29tcG9uZW50cy93ZWVrbHktd29yay1zZWFyY2gtam91cm5hbC93ZWVrbHktd29yay1zZWFyY2gtam91cm5hbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBSWxELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7SUNKaEQsOEJBQXVHO0lBQ25HLDhCQUEwRyxhQUFBO0lBRzlHLGlCQUFNOzs7SUFGRyxlQUF5RDtJQUF6RCx3R0FBeUQ7OztJQWdCOUQsMkJBQWtDLGtCQUFBLGNBQUEsaUJBQUEsV0FBQTtJQUtaLFlBQXlDOztJQUFBLGlCQUFPLEVBQUEsRUFBQSxFQUFBLEVBQUE7OztJQUR0RCxlQUF3QjtJQUF4Qix3REFBd0I7SUFDbEIsZUFBeUM7SUFBekMscUVBQXlDOzs7SUFPdkQsK0JBQW1DLGlCQUFBLFdBQUE7SUFHckIsWUFBc0I7SUFBQSxpQkFBTyxFQUFBLEVBQUE7OztJQURuQyxlQUF3QjtJQUF4Qix3REFBd0I7SUFDbEIsZUFBc0I7SUFBdEIseUNBQXNCOzs7SUFMNUMsMkJBQWlFLGtCQUFBO0lBRXpELHFHQUtVO0lBQ2QsaUJBQVcsRUFBQTs7O0lBTkcsZUFBdUI7SUFBdkIsMENBQXVCOzs7SUFnQmpCLDhCQUErRTtJQUMzRSxZQUF5Qzs7SUFBQSxpQkFBSzs7SUFBOUMsZUFBeUM7SUFBekMsOEVBQXlDOzs7SUFtQnpDLDhCQUF1QjtJQUNuQix5QkFBK0I7SUFDbkMsaUJBQUs7Ozs7O0lBTGpCLCtCQUF1QyxrQkFBQTtJQUUvQix5SEFJYztJQUNsQixpQkFBVSxFQUFBOztJQU5ELGVBQWM7SUFBZCw4RUFBYzs7Ozs7O0lBVW5CLDhCQUF1QixTQUFBO0lBQ2YsWUFBMkM7O0lBQUEsaUJBQUs7SUFDcEQsOEJBQThCO0lBQUEsWUFBbUM7O0lBQUEsaUJBQUs7SUFDdEUsOEJBQTJCLHFCQUFBO0lBQ2lCLHVRQUFTLGVBQUEsd0JBQVksQ0FBQSxJQUFDO0lBRTFELDhCQUFnRTtJQUNwRSxpQkFBYTtJQUNiLHVDQUMwQjtJQURjLHdRQUFTLGVBQUEsMEJBQWMsQ0FBQSxJQUFDO0lBRTVELCtCQUFxRTtJQUN6RSxpQkFBYSxFQUFBLEVBQUE7OztJQVZiLGVBQTJDO0lBQTNDLGlGQUEyQztJQUNqQixlQUFtQztJQUFuQyxzREFBbUM7SUFJaEQsZUFBd0I7SUFBeEIsaURBQXdCO0lBSXhCLGVBQTZCO0lBQTdCLGtEQUE2Qjs7O0lBTzlELG1DQUFrRyxhQUFBO0lBQzFFLFlBQW1EOztJQUFBLGlCQUFLO0lBQUEscUJBQU07SUFDbEYsMkJBQUs7SUFDRCwwQkFBK0U7O0lBQ25GLGlCQUFNLEVBQUE7O0lBSGMsZUFBbUQ7SUFBbkQsK0VBQW1EO0lBRTlELGVBQW1FO0lBQW5FLDZHQUFtRTs7Ozs7SUF4RDVGLDJCQUE2RixlQUFBLGNBQUEsa0JBQUE7SUFLN0UscUJBQU07SUFDTiwrQkFBUyxrQkFBQTtJQUVELDRGQUNrRDtJQUNsRCw4Q0FFNkQ7SUFDakUsaUJBQVU7SUFDVixtQ0FBc0YsU0FBQTtJQUMvRSxzQkFBSztJQUFBLGlCQUFJO0lBQUMsMkJBQ2pCO0lBQUEsaUJBQVU7SUFDVixvQ0FBb0Usc0JBQUE7SUFDRSwyTEFBUyxlQUFBLGFBQUssQ0FBQSxJQUFDO0lBRTdFLCtCQUFnRTtJQUNwRSxpQkFBYSxFQUFBLEVBQUE7SUFHckIsMkJBQXVDO0lBQ3ZDLHVHQVFVO0lBQ1Ysb0NBQWlHO0lBQzdGLGtIQWVjO0lBQ2xCLGlCQUFVLEVBQUE7SUFFZCx3R0FLVTtJQUNkLGlCQUFVLEVBQUEsRUFBQTs7O0lBdkRGLGVBQXdCO0lBQXhCLHdEQUF3QjtJQUlYLGVBQVk7SUFBWixvQ0FBWTtJQUVRLGVBQXlCO0lBQXpCLDhDQUF5Qix1REFBQSxzQ0FBQTtJQVVyQyxlQUF3QjtJQUF4QixrREFBd0I7SUFLbkMsZUFBMkI7SUFBM0IsbURBQTJCO0lBUzVCLGVBQWtCO0lBQWxCLHVDQUFrQiw2QkFBQTtJQW1Cb0QsZUFBYTtJQUFiLHFDQUFhOzs7O0lBWTVHLHVEQUVxRjtJQUZ0Qiw4T0FBVyxlQUFBLDJCQUFtQixDQUFBLElBQUMsMk5BQy9FLGVBQUEsdUJBQWUsQ0FBQSxJQURnRTtJQUVULGlCQUE4Qjs7O0lBRG5GLDhCQUFnQiwyQkFBQSwyQkFBQSx1Q0FBQSx1Q0FBQSx3QkFBQTs7OztJQUVoRCx1REFFcUY7SUFGdEIsOE9BQVcsZUFBQSwyQkFBbUIsQ0FBQSxJQUFDLDJOQUMvRSxlQUFBLHVCQUFlLENBQUEsSUFEZ0U7SUFFVCxpQkFBOEI7OztJQURuRiw4QkFBZ0IsMkJBQUEsMkJBQUEsdUNBQUEsdUNBQUEsd0JBQUE7OztJQXJHcEQsMkJBQXFDLGVBQUEsY0FBQSxpQkFBQSxZQUFBO0lBSUcsWUFBMkQ7O0lBQUEsaUJBQUssRUFBQSxFQUFBLEVBQUE7SUFRcEcsdUZBU00sMEVBQUEsNEVBQUEsNEhBQUEsNEhBQUE7SUFrRlYsaUJBQU07OztJQW5Ha0MsZUFBMkQ7SUFBM0QsOEZBQTJEO0lBUXpGLGVBQTBCO0lBQTFCLGtEQUEwQjtJQVUxQixlQUF5RDtJQUF6RCwrRkFBeUQ7SUFVekQsZUFBcUY7SUFBckYsZ0lBQXFGO0lBaUU3RCxlQUErQjtJQUEvQiw4REFBK0I7SUFHL0IsZUFBK0I7SUFBL0IsOERBQStCOztBRDNGakUsTUFBTSxPQUFPLGdDQUFpQyxTQUFRLFFBQVE7SUFzQjVELFlBQW1CLEdBQXVCLEVBQVMsSUFBaUIsRUFBUyxFQUFtQixFQUFVLEVBQWtCLEVBQVMsU0FBdUI7UUFDMUosS0FBSyxFQUFFLENBQUM7UUFEUyxRQUFHLEdBQUgsR0FBRyxDQUFvQjtRQUFTLFNBQUksR0FBSixJQUFJLENBQWE7UUFBUyxPQUFFLEdBQUYsRUFBRSxDQUFpQjtRQUFVLE9BQUUsR0FBRixFQUFFLENBQWdCO1FBQVMsY0FBUyxHQUFULFNBQVMsQ0FBYztRQXJCdEosYUFBUSxHQUE2QixFQUFFLENBQUM7UUFJdkMsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFNeEIsY0FBUyxHQUFhLEtBQUssQ0FBQztRQVE1QixpQkFBWSxHQUFXLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFLbkQsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFHLElBQUksQ0FBQyxZQUFZLEtBQUssSUFBSSxFQUM3QjtZQUNFLElBQUksQ0FBQyxXQUFXLEdBQUMsQ0FBQyxDQUFBO1NBQ25CO2FBQ0k7WUFDSCxJQUFJLENBQUMsV0FBVyxHQUFDLENBQUMsQ0FBQTtTQUNuQjtRQUVELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQy9DLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxHQUFHLENBQUMsdUJBQXVCLEVBQUU7YUFDekIsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ2YsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1lBQ2hFLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsdUJBQXVCLENBQUMsQ0FBQztZQUNoRSxJQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsQ0FBQyx1QkFBdUIsQ0FBQztZQUNqRCxJQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsQ0FBQyx1QkFBdUIsQ0FBQztZQUNqRCxJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQztZQUN0QyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsR0FBRyxDQUFDLGtCQUFrQixDQUFDO1lBQ2pELElBQUksQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFDLFlBQVksQ0FBQztZQUNyQyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsR0FBRyxDQUFDLG1CQUFtQixDQUFDO1lBQ25ELElBQUksQ0FBQyxZQUFZLEdBQUc7Z0JBQ2xCLGVBQWUsRUFBRSxJQUFJLENBQUMsYUFBYTtnQkFDbkMsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO2FBQ2xDLENBQUM7WUFDRixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN6QixDQUFDLEVBQUMsR0FBRyxDQUFDLEVBQUU7WUFDTixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztZQUN2QixJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUM7UUFDMUIsQ0FBQyxDQUFDLENBQUM7SUFDYixDQUFDO0lBRUQsY0FBYyxDQUFDLEtBQUs7UUFDbEIsSUFBSSxTQUFTLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNqQyxJQUFJLEVBQUUsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ25FLElBQUksRUFBRSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZFLElBQUksSUFBSSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDckUsT0FBTyxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUMsRUFBRSxFQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRixHQUFHO1FBQ0EsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUM7SUFDOUIsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztRQUM3QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztJQUN0QixDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQTZCO1FBQ3ZDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ3RCLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUM7YUFDNUIsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ2YsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7WUFDdkIsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7WUFDN0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7WUFDcEIsSUFBRyxLQUFLLENBQUMsMkJBQTJCLEVBQUM7Z0JBQ25DLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGdDQUFnQyxDQUFDLENBQUM7YUFDckQ7aUJBQUk7Z0JBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsOEJBQThCLENBQUMsQ0FBQzthQUNuRDtZQUNELElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNyQixJQUFJLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM3QixDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUU7WUFDUCxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztZQUN2QixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUM1QixJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztZQUM3QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUN0QixDQUFDLENBQUMsQ0FBQztJQUNiLENBQUM7SUFFRCxJQUFJLENBQUMsUUFBZ0M7UUFDbkMsSUFBSSxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUM7UUFDeEIsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUM7SUFDOUIsQ0FBQztJQUVELHdCQUF3QjtRQUN0QixpQkFBaUI7UUFDZixJQUFJLGdCQUFnQixHQUFHLENBQUMsQ0FBQztRQUN6QixLQUFJLElBQUksQ0FBQyxHQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQzFDO1lBQ0UsSUFBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksS0FBSyxNQUFNLEVBQzNDO2dCQUNFLGdCQUFnQixJQUFHLENBQUMsQ0FBQzthQUN0QjtTQUNGO1FBQ0QsT0FBTyxnQkFBZ0IsQ0FBQztJQUM1QixDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsSUFBSSxTQUFTLEdBQUUsQ0FBQyxDQUFDO1FBQ2pCLEtBQUksSUFBSSxDQUFDLEdBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFDMUM7WUFDRSxJQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxLQUFLLE1BQU0sRUFDM0M7Z0JBQ0UsU0FBUyxFQUFFLENBQUM7YUFDYjtTQUNGO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUVELEtBQUssQ0FBQyxNQUFNLENBQUMsUUFBZ0M7UUFDM0MsTUFBTSxLQUFLLEdBQUcsTUFBTSxJQUFJLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQztZQUNqQyxNQUFNLEVBQUUsVUFBVTtZQUNsQixPQUFPLEVBQUUsNkNBQTZDO1lBQ3RELE9BQU8sRUFBRTtnQkFDUDtvQkFDRSxJQUFJLEVBQUUsUUFBUTtvQkFDZCxJQUFJLEVBQUUsUUFBUTtvQkFDZCxRQUFRLEVBQUUsU0FBUztvQkFDbkIsT0FBTyxFQUFFLEdBQUcsRUFBRSxHQUFFLENBQUM7aUJBQ2xCLEVBQUU7b0JBQ0QsSUFBSSxFQUFFLE1BQU07b0JBQ1osT0FBTyxFQUFFLEdBQUcsRUFBRTt3QkFDWixJQUFJLENBQUMsR0FBRyxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQywyQkFBMkIsQ0FBQzs2QkFDN0QsU0FBUyxDQUNSLEdBQUcsQ0FBQyxFQUFFOzRCQUNKLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLDhCQUE4QixDQUFDLENBQUM7NEJBQ2xELElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQzt3QkFDdkIsQ0FBQyxFQUFDLEdBQUcsQ0FBQyxFQUFFOzRCQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDO3dCQUM5QixDQUFDLENBQ0YsQ0FBQztvQkFDWixDQUFDO2lCQUNGO2FBQ0Y7U0FDRixDQUFDLENBQUM7UUFFSCxNQUFNLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUMsb0JBQW9CO1FBQ2xCLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO1FBRWpDLGlCQUFpQjtRQUNqQixJQUFJLGdCQUFnQixHQUFHLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1FBRXZELElBQUksbUJBQW1CLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFFbkQsSUFBRyxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLElBQUksSUFBSSxFQUFDO1lBQ3ZDLElBQUcsS0FBSyxHQUFHLENBQUMsRUFBQztnQkFDWCxPQUFPLGdDQUFnQyxDQUFBO2FBQ3hDO2lCQUFNO2dCQUNMLE9BQU8sMEJBQTBCLENBQUM7YUFDbkM7U0FDRjthQUFJO1lBQ0gsSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFO2dCQUNiLE9BQU8scUdBQXFHLENBQUE7YUFDN0c7aUJBQU0sSUFBSSxLQUFLLEdBQUcsQ0FBQyxJQUFJLGdCQUFnQixHQUFHLENBQUMsSUFBSSxtQkFBbUIsR0FBRyxDQUFDLEVBQUc7Z0JBQ3hFLE9BQU8sMEZBQTBGLENBQUE7YUFDbEc7aUJBQU0sSUFBSSxLQUFLLEdBQUcsQ0FBQyxJQUFJLGdCQUFnQixHQUFHLENBQUMsSUFBSSxtQkFBbUIsSUFBSSxDQUFDLEVBQUM7Z0JBQ3ZFLE9BQU8seUNBQXlDLENBQUE7YUFDakQ7aUJBQU0sSUFBSSxLQUFLLEdBQUcsQ0FBQyxJQUFJLGdCQUFnQixHQUFHLENBQUMsSUFBSSxtQkFBbUIsR0FBRyxDQUFDLEVBQUc7Z0JBQ3hFLE9BQU8sd0ZBQXdGLENBQUE7YUFDaEc7aUJBQU0sSUFBSSxLQUFLLEdBQUcsQ0FBQyxJQUFJLGdCQUFnQixHQUFHLENBQUMsSUFBSSxtQkFBbUIsSUFBSSxDQUFDLEVBQUc7Z0JBQ3pFLE9BQU8sdUNBQXVDLENBQUE7YUFDL0M7aUJBQU0sSUFBSSxnQkFBZ0IsR0FBRyxDQUFDLElBQUksbUJBQW1CLEdBQUcsQ0FBQyxFQUFFO2dCQUMxRCxPQUFPLG1FQUFtRSxDQUFBO2FBQzNFO2lCQUNJO2dCQUNILE9BQU8sMEJBQTBCLENBQUM7YUFDbkM7U0FDRjtJQUNILENBQUM7aUdBbk1RLGdDQUFnQztvRUFBaEMsZ0NBQWdDO1lDZjdDLGlGQUlNLHFFQUFBOztZQUpBLHFEQUE0QjtZQU01QixlQUE2QjtZQUE3QixzREFBNkI7OztpRkRTdEIsZ0NBQWdDO2NBTDVDLFNBQVM7MkJBQ0UsZ0NBQWdDOztrRkFJL0IsZ0NBQWdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRG9tU2FuaXRpemVyIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcbmltcG9ydCB7IEFsZXJ0Q29udHJvbGxlciB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcclxuaW1wb3J0IHsgVXRpbFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy91dGlsL3V0aWwuc2VydmljZSc7XHJcbmltcG9ydCB7IEJhc2VQYWdlIH0gZnJvbSAnLi4vLi4vcGFnZXMvQmFzZVBhZ2UnO1xyXG5pbXBvcnQgeyBDb21ib09wdGlvbiB9IGZyb20gJy4uLy4uL21vZGVscy9jb21iby1tb2RlbCc7XHJcbmltcG9ydCB7IFdvcmtTZWFyY2hSZWNvcmRNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy93ZWVrbHktY2VydC93b3JrLXNlYXJjaC1yZWNvcmQtdjItbW9kZWwnO1xyXG5pbXBvcnQgeyBSZXZpZXdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvd2Vla2x5LWNlcnQvcmV2aWV3LnNlcnZpY2UnXHJcbmltcG9ydCB7IFdvcmtTZWFyY2hTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvd2Vla2x5LWNlcnQvd29yay1zZWFyY2guc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC13ZWVrbHktd29yay1zZWFyY2gtam91cm5hbCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3dlZWtseS13b3JrLXNlYXJjaC1qb3VybmFsLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vd2Vla2x5LXdvcmstc2VhcmNoLWpvdXJuYWwuY29tcG9uZW50LnNjc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBXZWVrbHlXb3JrU2VhcmNoSm91cm5hbENvbXBvbmVudCBleHRlbmRzIEJhc2VQYWdlIGltcGxlbWVudHMgT25Jbml0e1xyXG4gcHVibGljIGpvdXJuYWxzIDogV29ya1NlYXJjaFJlY29yZE1vZGVsW10gPSBbXTtcclxuXHJcbiAgcHVibGljIGpvdXJuYWwgOiBXb3JrU2VhcmNoUmVjb3JkTW9kZWw7XHJcblxyXG4gIHB1YmxpYyBzaG93QWRkV3NSZWNvcnMgPSBmYWxzZTtcclxuXHJcbiAgcHVibGljIHNhdERhdGUgOiBEYXRlO1xyXG4gIHB1YmxpYyBzdW5EYXRlIDogRGF0ZTtcclxuICBwdWJsaWMgc2F0RGF0ZVN0cmluZztcclxuICBwdWJsaWMgc3VuRGF0ZVN0cmluZztcclxuICBwdWJsaWMgaXNMb2FkaW5nIDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBkeW5hbWljUGFyYW0gOiBhbnk7XHJcbiAgcHVibGljIGVycm9yTXNnIDogc3RyaW5nO1xyXG4gIHB1YmxpYyB3YWl2ZXJSZWFzb246IHN0cmluZztcclxuICBwdWJsaWMgaXNXb3JrU2VhcmNoV2FpdmVkIDogYm9vbGVhbjtcclxuICBwdWJsaWMgaXNXYWl0aW5nV2Vla1NlcnZlZCA6IGJvb2xlYW47XHJcbiAgY29tcFN0YXRlIDogc3RyaW5nO1xyXG5cclxuICBwdWJsaWMgY3VycmVudFN0YXRlOiBzdHJpbmcgPSB0aGlzLnV0aWwuZ2V0U3RhdGUoKTtcclxuICBwdWJsaWMgb2ZmU2V0VmFsdWU6IG51bWJlclxyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgd3NzIDogV29ya1NlYXJjaFNlcnZpY2UsIHB1YmxpYyB1dGlsOiBVdGlsU2VydmljZSwgcHVibGljIGFjOiBBbGVydENvbnRyb2xsZXIsIHByaXZhdGUgcnMgOiBSZXZpZXdTZXJ2aWNlLCBwdWJsaWMgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIpIHsgXHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBpZih0aGlzLmN1cnJlbnRTdGF0ZSA9PT0gJ01TJylcclxuICAgIHtcclxuICAgICAgdGhpcy5vZmZTZXRWYWx1ZT00XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgdGhpcy5vZmZTZXRWYWx1ZT0xXHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5jb21wU3RhdGUgPSB0aGlzLnV0aWwuZ2V0U3RhdGVMb3dlcmNhc2UoKTtcclxuICAgIHRoaXMuZmV0Y2hKb3VybmFscygpO1xyXG4gIH1cclxuXHJcbiAgZmV0Y2hKb3VybmFscygpIHtcclxuICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcclxuICAgIHRoaXMud3NzLmZldGNoV29ya1NlYXJjaEpvdXJuYWxzKClcclxuICAgICAgICAgICAgLnN1YnNjcmliZShyZXMgPT4ge1xyXG4gICAgICAgICAgICAgIHRoaXMuc3VuRGF0ZSA9IHRoaXMuZ2V0RW50ZXJlZERhdGUocmVzLm1pbldvcmtTZWFyY2hEYXRlU3RyaW5nKTtcclxuICAgICAgICAgICAgICB0aGlzLnNhdERhdGUgPSB0aGlzLmdldEVudGVyZWREYXRlKHJlcy5tYXhXb3JrU2VhcmNoRGF0ZVN0cmluZyk7XHJcbiAgICAgICAgICAgICAgdGhpcy5zYXREYXRlU3RyaW5nID0gcmVzLm1heFdvcmtTZWFyY2hEYXRlU3RyaW5nO1xyXG4gICAgICAgICAgICAgIHRoaXMuc3VuRGF0ZVN0cmluZyA9IHJlcy5taW5Xb3JrU2VhcmNoRGF0ZVN0cmluZztcclxuICAgICAgICAgICAgICB0aGlzLmpvdXJuYWxzID0gcmVzLndvcmtTZWFyY2hSZWNvcmRzO1xyXG4gICAgICAgICAgICAgIHRoaXMuaXNXb3JrU2VhcmNoV2FpdmVkID0gcmVzLmlzV29ya1NlYXJjaFdhaXZlZDtcclxuICAgICAgICAgICAgICB0aGlzLndhaXZlclJlYXNvbiA9IHJlcy53YWl2ZXJSZWFzb247XHJcbiAgICAgICAgICAgICAgdGhpcy5pc1dhaXRpbmdXZWVrU2VydmVkID0gcmVzLmlzV2FpdGluZ1dlZWtTZXJ2ZWQ7XHJcbiAgICAgICAgICAgICAgdGhpcy5keW5hbWljUGFyYW0gPSB7XHJcbiAgICAgICAgICAgICAgICAnc2F0dXJkYXlfZGF0ZSc6IHRoaXMuc2F0RGF0ZVN0cmluZyxcclxuICAgICAgICAgICAgICAgICdzdW5kYXlfZGF0ZSc6IHRoaXMuc3VuRGF0ZVN0cmluZyxcclxuICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH0sZXJyID0+IHtcclxuICAgICAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIHRoaXMuZXJyb3JNc2cgPSBlcnIubXNnO1xyXG4gICAgICAgICAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldEVudGVyZWREYXRlKHZhbHVlKXtcclxuICAgIHZhciBkYXRlQXJyYXkgPSB2YWx1ZS5zcGxpdChcIi9cIik7XHJcbiAgICB2YXIgZGQgPSBwYXJzZUludCh0aGlzLnV0aWwucHJlcGVkWmVyb0lmU2luZ2xlRGlnaXQoZGF0ZUFycmF5WzFdKSk7XHJcbiAgICB2YXIgTU0gPSBwYXJzZUludCh0aGlzLnV0aWwucHJlcGVkWmVyb0lmU2luZ2xlRGlnaXQoZGF0ZUFycmF5WzBdKSkgLSAxO1xyXG4gICAgdmFyIHl5eXkgPSBwYXJzZUludCh0aGlzLnV0aWwucHJlcGVkWmVyb0lmU2luZ2xlRGlnaXQoZGF0ZUFycmF5WzJdKSk7XHJcbiAgICByZXR1cm4gbmV3IERhdGUoeXl5eSxNTSxkZCk7XHJcbiAgfVxyXG5cclxuIGFkZCgpe1xyXG4gICAgdGhpcy5qb3VybmFsID0gbnVsbDtcclxuICAgIHRoaXMuc2hvd0FkZFdzUmVjb3JzID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIGNsb3NlV3NSZWNvcmQoKXtcclxuICAgIHRoaXMuc2hvd0FkZFdzUmVjb3JzID0gZmFsc2U7XHJcbiAgICB0aGlzLmpvdXJuYWwgPSBudWxsO1xyXG4gIH1cclxuXHJcbiAgYWRkV3NSZWNvcmQoZXZlbnQgOiBXb3JrU2VhcmNoUmVjb3JkTW9kZWwpe1xyXG4gICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xyXG4gICAgY29uc29sZS5sb2coZXZlbnQpO1xyXG4gICAgdGhpcy53c3Muc2F2ZVdvcmtTZWFyY2hKb3VybmFsKGV2ZW50KVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHJlcyA9PiB7XHJcbiAgICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICB0aGlzLnNob3dBZGRXc1JlY29ycyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIHRoaXMuam91cm5hbCA9IG51bGw7XHJcbiAgICAgICAgICAgICAgaWYoZXZlbnQuY2xhaW1hbnRXb3JrU2VhcmNoSm91cm5hbElkKXtcclxuICAgICAgICAgICAgICAgIHRoaXMudXRpbC5zdWNjZXNzKFwiQWN0aXZpdHkgdXBkYXRlZCBzdWNjZXNzZnVsbHkuXCIpO1xyXG4gICAgICAgICAgICAgIH1lbHNle1xyXG4gICAgICAgICAgICAgICAgdGhpcy51dGlsLnN1Y2Nlc3MoXCJBY3Rpdml0eSBzYXZlZCBzdWNjZXNzZnVsbHkuXCIpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB0aGlzLmZldGNoSm91cm5hbHMoKTtcclxuICAgICAgICAgICAgICB0aGlzLnJzLnNldFJldmlld0FwcCh0cnVlKTtcclxuICAgICAgICAgICAgfSwgZXJyID0+IHtcclxuICAgICAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIHRoaXMudXRpbC5lcnJvckhhbmRsZXIoZXJyKTtcclxuICAgICAgICAgICAgICB0aGlzLnNob3dBZGRXc1JlY29ycyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIHRoaXMuam91cm5hbCA9IG51bGw7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZWRpdCh3c1JlY29yZCA6IFdvcmtTZWFyY2hSZWNvcmRNb2RlbCl7XHJcbiAgICB0aGlzLmpvdXJuYWwgPSB3c1JlY29yZDtcclxuICAgIHRoaXMuc2hvd0FkZFdzUmVjb3JzID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHJldHJpZXZlSGlyZWRSZWNvcmRDb3VudCAoKSA6IG51bWJlciB7XHJcbiAgICAvL2l0ZXJhdGUgam91cm5hbFxyXG4gICAgICBsZXQgaGlyZWRSZWNvcmRDb3VudCA9IDA7XHJcbiAgICAgIGZvcihsZXQgaT0wOyBpIDwgdGhpcy5qb3VybmFscy5sZW5ndGg7IGkrKylcclxuICAgICAge1xyXG4gICAgICAgIGlmKHRoaXMuam91cm5hbHNbaV0uc2VhcmNoUmVzdWx0ID09PSBcIkhJUkVcIilcclxuICAgICAgICB7XHJcbiAgICAgICAgICBoaXJlZFJlY29yZENvdW50Kz0gMTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIGhpcmVkUmVjb3JkQ291bnQ7XHJcbiAgfVxyXG5cclxuICByZXRyaWV2ZUpvYXBDb3VudCAoKSA6IG51bWJlciB7XHJcbiAgICBsZXQgam9hcENvdW50ID0wO1xyXG4gICAgZm9yKGxldCBpPTA7IGkgPCB0aGlzLmpvdXJuYWxzLmxlbmd0aDsgaSsrKVxyXG4gICAge1xyXG4gICAgICBpZih0aGlzLmpvdXJuYWxzW2ldLmFjdGl2aXR5VHlwZSA9PT0gXCJKT0FQXCIpXHJcbiAgICAgIHtcclxuICAgICAgICBqb2FwQ291bnQrKztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIGpvYXBDb3VudDtcclxuICB9XHJcblxyXG4gIGFzeW5jIGRlbGV0ZSh3c1JlY29yZCA6IFdvcmtTZWFyY2hSZWNvcmRNb2RlbCl7XHJcbiAgICBjb25zdCBhbGVydCA9IGF3YWl0IHRoaXMuYWMuY3JlYXRlKHtcclxuICAgICAgaGVhZGVyOiAnQ29uZmlybSEnLFxyXG4gICAgICBtZXNzYWdlOiAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGVudHJ5PycsXHJcbiAgICAgIGJ1dHRvbnM6IFtcclxuICAgICAgICB7XHJcbiAgICAgICAgICB0ZXh0OiAnQ2FuY2VsJyxcclxuICAgICAgICAgIHJvbGU6ICdjYW5jZWwnLFxyXG4gICAgICAgICAgY3NzQ2xhc3M6ICdwcmltYXJ5JyxcclxuICAgICAgICAgIGhhbmRsZXI6ICgpID0+IHt9XHJcbiAgICAgICAgfSwge1xyXG4gICAgICAgICAgdGV4dDogJ09rYXknLFxyXG4gICAgICAgICAgaGFuZGxlcjogKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLndzcy5kZWxldGVXb3JrU2VhcmNoSm91cm5hbCh3c1JlY29yZC5jbGFpbWFudFdvcmtTZWFyY2hKb3VybmFsSWQpXHJcbiAgICAgICAgICAgICAgICAgICAgLnN1YnNjcmliZShcclxuICAgICAgICAgICAgICAgICAgICAgIHJlcyA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudXRpbC5zdWNjZXNzKFwiUmVjb3JkIGRlbGV0ZWQgc3VjY2Vzc2Z1bGx5LlwiKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5mZXRjaEpvdXJuYWxzKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICB9LGVyciA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudXRpbC5lcnJvckhhbmRsZXIoZXJyKTtcclxuICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgXVxyXG4gICAgfSk7XHJcblxyXG4gICAgYXdhaXQgYWxlcnQucHJlc2VudCgpO1xyXG4gIH1cclxuXHJcbiAgICBnZXRXb3JrU2VhcmNoTWVzc2FnZSgpIHtcclxuICAgICAgbGV0IGNvdW50ID0gdGhpcy5qb3VybmFscy5sZW5ndGg7XHJcblxyXG4gICAgICAvL2l0ZXJhdGUgam91cm5hbFxyXG4gICAgICBsZXQgaGlyZWRSZWNvcmRDb3VudCA9IHRoaXMucmV0cmlldmVIaXJlZFJlY29yZENvdW50KCk7XHJcblxyXG4gICAgICBsZXQgam9hcEFjdGl2aXRpZXNDb3VudCA9IHRoaXMucmV0cmlldmVKb2FwQ291bnQoKTtcclxuICAgICAgXHJcbiAgICAgIGlmKHRoaXMudXRpbC5nZXRTdGF0ZUxvd2VyY2FzZSgpID09ICdtZScpe1xyXG4gICAgICAgIGlmKGNvdW50IDwgMSl7XHJcbiAgICAgICAgICByZXR1cm4gJ0F0IGxlYXN0IG9uZSBhY3Rpdml0eSByZXF1aXJlZCdcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmV0dXJuICdNaW5pbXVtIHJlcXVpcmVtZW50cyBtZXQnO1xyXG4gICAgICAgIH1cclxuICAgICAgfWVsc2V7XHJcbiAgICAgICAgaWYgKGNvdW50IDwgMSkge1xyXG4gICAgICAgICAgcmV0dXJuICdZb3UgbmVlZCB0byBhZGQgYXQgbGVhc3QgMyBhY3Rpdml0aWVzIGZvciB0aGUgd2VlaywgYXQgbGVhc3Qgb25lIHdpdGggYSBmaWxlZCBhcHBsaWNhdGlvbiBvciByZXN1bWUnXHJcbiAgICAgICAgfSBlbHNlIGlmIChjb3VudCA8IDIgJiYgaGlyZWRSZWNvcmRDb3VudCA8IDEgJiYgam9hcEFjdGl2aXRpZXNDb3VudCA8IDEgKSB7XHJcbiAgICAgICAgICByZXR1cm4gJ1lvdSBuZWVkIDIgbW9yZSBhY3Rpdml0aWVzIGZvciB0aGUgd2VlaywgYXQgbGVhc3Qgb25lIHdpdGggYSBmaWxlZCBhcHBsaWNhdGlvbiBvciByZXN1bWUnXHJcbiAgICAgICAgfSBlbHNlIGlmIChjb3VudCA8IDIgJiYgaGlyZWRSZWNvcmRDb3VudCA8IDEgJiYgam9hcEFjdGl2aXRpZXNDb3VudCA+PSAxKXtcclxuICAgICAgICAgIHJldHVybiAnWW91IG5lZWQgMiBtb3JlIGFjdGl2aXRpZXMgZm9yIHRoZSB3ZWVrJ1xyXG4gICAgICAgIH0gZWxzZSBpZiAoY291bnQgPCAzICYmIGhpcmVkUmVjb3JkQ291bnQgPCAxICYmIGpvYXBBY3Rpdml0aWVzQ291bnQgPCAxICkge1xyXG4gICAgICAgICAgcmV0dXJuICdZb3UgbmVlZCAxIG1vcmUgYWN0aXZpdHkgZm9yIHRoZSB3ZWVrLCBhdCBsZWFzdCBvbmUgd2l0aCBhIGZpbGVkIGFwcGxpY2F0aW9uIG9yIHJlc3VtZSdcclxuICAgICAgICB9IGVsc2UgaWYgKGNvdW50IDwgMyAmJiBoaXJlZFJlY29yZENvdW50IDwgMSAmJiBqb2FwQWN0aXZpdGllc0NvdW50ID49IDEgKSB7XHJcbiAgICAgICAgICByZXR1cm4gJ1lvdSBuZWVkIDEgbW9yZSBhY3Rpdml0eSBmb3IgdGhlIHdlZWsnXHJcbiAgICAgICAgfSBlbHNlIGlmIChoaXJlZFJlY29yZENvdW50IDwgMSAmJiBqb2FwQWN0aXZpdGllc0NvdW50IDwgMSApe1xyXG4gICAgICAgICAgcmV0dXJuICdZb3UgbmVlZCBhdCBsZWFzdCBvbmUgYWN0aXZpdHkgd2l0aCBhIGZpbGVkIGFwcGxpY2F0aW9uIG9yIHJlc3VtZSdcclxuICAgICAgICB9ICBcclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgIHJldHVybiAnTWluaW11bSByZXF1aXJlbWVudHMgbWV0JztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCI8ZGl2ICpuZ0lmPVwiIWlzTG9hZGluZyAmJiBlcnJvck1zZ1wiIGNsYXNzPVwiaW9uLXRleHQtY2VudGVyIGlvbi1wYWRkaW5nLXRvcFwiIHN0eWxlPVwicGFkZGluZy10b3A6IDUwcHg7XCI+XHJcbiAgICA8aW9uLWljb24gbmFtZT1cImFsZXJ0LWNpcmNsZS1vdXRsaW5lXCIgc3R5bGU9XCJmb250LXNpemU6IDYwcHg7IGNvbG9yOiB2YXIoLS1pb24tY29sb3ItZGFuZ2VyKTtcIj48L2lvbi1pY29uPlxyXG4gICAgPGRpdiBbaW5uZXJIVE1MXT1cInNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbChlcnJvck1zZylcIlxyXG4gICAgICAgIHN0eWxlPVwiY29sb3I6IHZhcigtLWlvbi1jb2xvci1kYW5nZXIpOyBmb250LXNpemU6IGxhcmdlcjtcIiBjbGFzcz1cImlvbi10ZXh0LWNlbnRlciBpb24tcGFkZGluZ1wiPjwvZGl2PlxyXG48L2Rpdj5cclxuXHJcbjxkaXYgKm5nSWY9XCIhaXNMb2FkaW5nICYmICFlcnJvck1zZ1wiPlxyXG4gICAgPGlvbi1ncmlkPlxyXG4gICAgICAgIDxpb24tcm93PlxyXG4gICAgICAgICAgICA8aW9uLWNvbCBzaXplPVwiMTJcIiBvZmZzZXRYbD1cIjFcIj5cclxuICAgICAgICAgICAgICAgIDxoMSBjbGFzcz1cImFwcC1oZWFkaW5nXCI+e3snd29yay5zZWFyY2guam91cm5hbC5oZWFkaW5nJyB8IHRyYW5zbGF0ZTpkeW5hbWljUGFyYW0gfX08L2gxPlxyXG4gICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgPC9pb24tcm93PlxyXG4gICAgPC9pb24tZ3JpZD5cclxuICAgIDwhLS0gVGhlcmUgY2FuIGJlIGJlbG93IGNvbWJpbmF0aW9uczpcclxuICAgICAgIDEuIFdhaXRpbmcgd2VlayBpcyBOT1Qgc2VydmVkIChXaXRoIG9yIHdpdGhvdXQgd29ya3NlYXJjaCB3YWl2ZWQpIC0gaGlnaGVzdCBwcmlvcml0eSAoV2FpdGluZyB3ZWVrIG1lc3NhZ2UpXHJcbiAgICAgICAyLiBXYWl0aW5nIHdlZWsgaXMgc2VydmVkICYgV29yayBzZWFyY2ggaXMgd2FpdmVkIC0gV29ya3NlYXJjaCB3YWl2ZXIgbWVzc2FnZVxyXG4gICAgICAgMy4gV2FpdGluZyB3ZWVrIGlzIHNlcnZlZCBhbmQgd29yayBzZWFyY2ggaXMgTk9UIHdhaXZlZCAgLS0+XHJcbiAgICA8ZGl2ICpuZ0lmPVwiIWlzV2FpdGluZ1dlZWtTZXJ2ZWRcIj5cclxuICAgICAgICA8aW9uLWdyaWQgY2xhc3M9XCJpb24tcGFkZGluZy10b3BcIj5cclxuICAgICAgICAgICAgPGlvbi1yb3c+XHJcbiAgICAgICAgICAgICAgICA8aW9uLWNvbCBpb24tY29sIHNpemU9XCIxMlwiIHNpemVTbT1cIjEyXCIgc2l6ZVhzPVwiMTJcIiBzaXplTWQ9XCIxMFwiIHNpemVMZz1cIjZcIiBzaXplWGw9XCI1XCIgb2Zmc2V0TGc9XCIzXCJcclxuICAgICAgICAgICAgICAgICAgICBvZmZzZXRYbD17e29mZlNldFZhbHVlfX0gb2Zmc2V0TWQ9XCIxXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4+e3snbm8ud29yay5zZWFyY2gucmVxdWlyZWQnIHwgdHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICAgIDwvaW9uLXJvdz5cclxuICAgICAgICA8L2lvbi1ncmlkPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2ICpuZ0lmPVwiaXNNUygpICYmIGlzV29ya1NlYXJjaFdhaXZlZCAmJiBpc1dhaXRpbmdXZWVrU2VydmVkXCI+XHJcbiAgICAgICAgPGlvbi1ncmlkIGNsYXNzPVwiaW9uLXBhZGRpbmctdG9wXCI+XHJcbiAgICAgICAgICAgIDxpb24tcm93ICpuZ0lmPVwidGhpcy53YWl2ZXJSZWFzb25cIj5cclxuICAgICAgICAgICAgICAgIDxpb24tY29sIGlvbi1jb2wgc2l6ZT1cIjEyXCIgc2l6ZVNtPVwiMTJcIiBzaXplWHM9XCIxMlwiIHNpemVNZD1cIjEwXCIgc2l6ZUxnPVwiNlwiIHNpemVYbD1cIjVcIiBvZmZzZXRMZz1cIjNcIlxyXG4gICAgICAgICAgICAgICAgICAgIG9mZnNldFhsPXt7b2ZmU2V0VmFsdWV9fSBvZmZzZXRNZD1cIjFcIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3Bhbj57eyB0aGlzLndhaXZlclJlYXNvbn19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgICAgICA8L2lvbi1yb3c+XHJcbiAgICAgICAgPC9pb24tZ3JpZD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiAqbmdJZj1cIighaXNXb3JrU2VhcmNoV2FpdmVkIHx8ICghaXNNUygpICYmIGlzV29ya1NlYXJjaFdhaXZlZCkpICYmIGlzV2FpdGluZ1dlZWtTZXJ2ZWRcIj5cclxuICAgICAgICA8aW9uLWdyaWQ+XHJcbiAgICAgICAgICAgIDxpb24tcm93PlxyXG4gICAgICAgICAgICAgICAgPGlvbi1jb2wgc2l6ZT1cIjEyXCIgc2l6ZVNtPVwiMTJcIiBzaXplWHM9XCIxMlwiIHNpemVNZD1cIjEwXCIgc2l6ZUxnPVwiNlwiIHNpemVYbD1cIjVcIiBvZmZzZXRMZz1cIjNcIlxyXG4gICAgICAgICAgICAgICAgICAgIG9mZnNldFhsPXt7b2ZmU2V0VmFsdWV9fSBvZmZzZXRNZD1cIjFcIj5cclxuICAgICAgICAgICAgICAgICAgICA8YnIgLz5cclxuICAgICAgICAgICAgICAgICAgICA8aW9uLXJvdz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlvbi1jb2wgc2l6ZT1cIjZcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMSAqbmdJZj1cImlzTUUoKVwiIHN0eWxlPVwicG9zaXRpb246IGZpeGVkOyBtYXJnaW4tdG9wOiAtNDVweDtcIiBjbGFzcz1cImhlYWRpbmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyd3b3JrLnNlYXJjaC5hY3Rpdml0aWVzJyB8IHRyYW5zbGF0ZSB9fTwvaDE+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YXBwLXdvcmstc2VhcmNoLWNvdW50ZXIgW2NvdW50XT1cImpvdXJuYWxzLmxlbmd0aFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2hpcmVkUmVjb3JkQ291bnRdPVwicmV0cmlldmVIaXJlZFJlY29yZENvdW50KClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttc2ddPVwiZ2V0V29ya1NlYXJjaE1lc3NhZ2UoKVwiPjwvYXBwLXdvcmstc2VhcmNoLWNvdW50ZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlvbi1jb2wgY2xhc3M9XCJqb3VybmFsLXRleHRcIiBzdHlsZT1cInBhZGRpbmctdG9wOiA3NXB4OyBwYWRkaW5nLXJpZ2h0OiAwcHg7XCIgc2l6ZT1cIjVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiPisgQWRkPC9iPiBhY3Rpdml0eVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2lvbi1jb2w+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpb24tY29sIGNsYXNzPVwiam91cm5hbC1idXR0b25cIiBzdHlsZT1cInBhZGRpbmctdG9wOiA2MHB4O1wiIHNpemU9XCIxXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW9uLWJ1dHRvbiBzdHlsZT1cInBhZGRpbmc6IDBweCAwcHg7XCIgZmlsbD1cIm91dGxpbmVcIiBzaXplPVwic21hbGxcIiAoY2xpY2spPVwiYWRkKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYWN0aW9uLWJ1dHRvblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmYS1pY29uIFtpY29uXT1cIlsnZmFsJywgJ3BsdXMnXVwiIGNsYXNzPVwiYWN0aW9uLWljb25cIj48L2ZhLWljb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgICAgICAgICAgICA8L2lvbi1yb3c+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBzdHlsZT1cIm1hcmdpbi1ib3R0b206IDVweDtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiAqbmdJZj1cImpvdXJuYWxzLmxlbmd0aCA9PT0gMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cC10YWJsZSBbdmFsdWVdPVwiW3t9XVwiIHN0eWxlQ2xhc3M9XCJwLWRhdGF0YWJsZS1zdHJpcGVkIGFwcC1kYXRhdGFibGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHIgY2xhc3M9XCJyb3ctYm9yZGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBzdHlsZT1cImhlaWdodDogNzVweDtcIj48L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3AtdGFibGU+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwLXRhYmxlIFt2YWx1ZV09XCJqb3VybmFsc1wiIHN0eWxlQ2xhc3M9XCJwLWRhdGF0YWJsZS1zdHJpcGVkIGFwcC1kYXRhdGFibGVcIiBbbG9hZGluZ109XCJpc0xvYWRpbmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImJvZHlcIiBsZXQtcmVjb3JkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyIGNsYXNzPVwicm93LWJvcmRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e3JlY29yZC53b3JrU2VhcmNoRGF0ZSB8IGRhdGU6J00vZC95eXl5J319PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9XCJ3aGl0ZS1zcGFjZTogcHJlO1wiPnt7cmVjb3JkIHwgZm9ybWF0V29ya3NlYXJjaFJlY29yZH19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJpb24tdGV4dC1yaWdodFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW9uLWJ1dHRvbiBmaWxsPVwib3V0bGluZVwiIHNpemU9XCJzbWFsbFwiIChjbGljayk9XCJlZGl0KHJlY29yZClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhY3Rpb24tYnV0dG9uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmEtaWNvbiBbaWNvbl09XCJbJ2ZhbCcsICdlZGl0J11cIiBjbGFzcz1cImFjdGlvbi1pY29uXCI+PC9mYS1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpb24tYnV0dG9uIGZpbGw9XCJvdXRsaW5lXCIgc2l6ZT1cInNtYWxsXCIgKGNsaWNrKT1cImRlbGV0ZShyZWNvcmQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYWN0aW9uLWJ1dHRvblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZhLWljb24gW2ljb25dPVwiWydmYWwnLCAndHJhc2gtYWx0J11cIiBjbGFzcz1cImFjdGlvbi1pY29uXCI+PC9mYS1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9wLXRhYmxlPlxyXG4gICAgICAgICAgICAgICAgPC9pb24tY29sPlxyXG4gICAgICAgICAgICAgICAgPGlvbi1jb2wgc2l6ZT1cIjEyXCIgc2l6ZVhsPVwiNVwiIG9mZnNldFhsPVwiMVwiIHNpemVMZz1cIjZcIiBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIiAqbmdJZj1cIiFpc01TKClcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aDQgY2xhc3M9XCJoZWFkaW5nXCI+e3snd29yay5zZWFyY2guam91cm5hbC53ZWVrbHkuaGVhZGVyJyB8IHRyYW5zbGF0ZX19PC9oND48YnIgLz5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IFtpbm5lckh0bWxdPVwiJ3dvcmsuc2VhcmNoLmpvdXJuYWwud2Vla2x5LnBsYWNlaG9sZGVyJyB8IHRyYW5zbGF0ZSBcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvaW9uLWNvbD5cclxuICAgICAgICAgICAgPC9pb24tcm93PlxyXG4gICAgICAgIDwvaW9uLWdyaWQ+XHJcbiAgICA8L2Rpdj5cclxuICAgIDwhLS0gPGFwcC13b3JrLXNlYXJjaC1lbXBsb3llci1jdCAqbmdJZj1cInNob3dBZGRXc1JlY29ycyAmJiBpc0NUKClcIiAoc3VjY2Vzcyk9XCJhZGRXc1JlY29yZCgkZXZlbnQpXCJcclxuICAgICAgICAob25DbG9zZSk9XCJjbG9zZVdzUmVjb3JkKClcIiBbam91cm5hbF09XCJ0cnVlXCIgW3N1bkRhdGVdPVwic3VuRGF0ZVwiIFtzYXREYXRlXT1cInNhdERhdGVcIlxyXG4gICAgICAgIFtzYXREYXRlU3RyaW5nXT1cInNhdERhdGVTdHJpbmdcIiBbc3VuRGF0ZVN0cmluZ109XCJzdW5EYXRlU3RyaW5nXCIgW2RhdGFdPVwiam91cm5hbFwiPjwvYXBwLXdvcmstc2VhcmNoLWVtcGxveWVyLWN0PiAtLT5cclxuICAgIDxhcHAtd29yay1zZWFyY2gtZW1wbG95ZXItbWUgKm5nSWY9XCJzaG93QWRkV3NSZWNvcnMgJiYgaXNNRSgpXCIgKHN1Y2Nlc3MpPVwiYWRkV3NSZWNvcmQoJGV2ZW50KVwiXHJcbiAgICAgICAgKG9uQ2xvc2UpPVwiY2xvc2VXc1JlY29yZCgpXCIgW2pvdXJuYWxdPVwidHJ1ZVwiIFtzdW5EYXRlXT1cInN1bkRhdGVcIiBbc2F0RGF0ZV09XCJzYXREYXRlXCJcclxuICAgICAgICBbc2F0RGF0ZVN0cmluZ109XCJzYXREYXRlU3RyaW5nXCIgW3N1bkRhdGVTdHJpbmddPVwic3VuRGF0ZVN0cmluZ1wiIFtkYXRhXT1cImpvdXJuYWxcIj48L2FwcC13b3JrLXNlYXJjaC1lbXBsb3llci1tZT5cclxuICAgIDxhcHAtd29yay1zZWFyY2gtZW1wbG95ZXItbXMgKm5nSWY9XCJzaG93QWRkV3NSZWNvcnMgJiYgaXNNUygpXCIgKHN1Y2Nlc3MpPVwiYWRkV3NSZWNvcmQoJGV2ZW50KVwiXHJcbiAgICAgICAgKG9uQ2xvc2UpPVwiY2xvc2VXc1JlY29yZCgpXCIgW2pvdXJuYWxdPVwidHJ1ZVwiIFtzdW5EYXRlXT1cInN1bkRhdGVcIiBbc2F0RGF0ZV09XCJzYXREYXRlXCJcclxuICAgICAgICBbc2F0RGF0ZVN0cmluZ109XCJzYXREYXRlU3RyaW5nXCIgW3N1bkRhdGVTdHJpbmddPVwic3VuRGF0ZVN0cmluZ1wiIFtkYXRhXT1cImpvdXJuYWxcIj48L2FwcC13b3JrLXNlYXJjaC1lbXBsb3llci1tcz5cclxuPC9kaXY+Il19
|