iptdevs-design-system 3.1.375 → 3.1.376
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/esm2020/lib/cod/cod-form/cod-form.component.mjs +1 -3
- package/esm2020/lib/cod/steps/cod-form-step-one/cod-form-step-one.component.mjs +1 -24
- package/fesm2015/iptdevs-design-system.mjs +0 -25
- package/fesm2015/iptdevs-design-system.mjs.map +1 -1
- package/fesm2020/iptdevs-design-system.mjs +0 -25
- package/fesm2020/iptdevs-design-system.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -32,7 +32,6 @@ export class CodFormComponent {
|
|
|
32
32
|
this.userRole = this.baseService.getUserRole();
|
|
33
33
|
}
|
|
34
34
|
ngOnChanges(changes) {
|
|
35
|
-
console.log(this.courseSelect);
|
|
36
35
|
if (changes['editCod'] && this.dataFromPreviusCodData) {
|
|
37
36
|
if (this.editCod) {
|
|
38
37
|
if (!this.dataFromPreviusCodData.edit_course_payment) {
|
|
@@ -209,7 +208,6 @@ export class CodFormComponent {
|
|
|
209
208
|
this.okCreatedCOD.emit(true);
|
|
210
209
|
}
|
|
211
210
|
else if (response.message.code === 3) {
|
|
212
|
-
console.log(response.data);
|
|
213
211
|
let alertHtml = `
|
|
214
212
|
<div class="my-custom-alert">
|
|
215
213
|
<h2>Warning!</h2>
|
|
@@ -416,4 +414,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
|
|
|
416
414
|
}], okCreatedCOD: [{
|
|
417
415
|
type: Output
|
|
418
416
|
}] } });
|
|
419
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvZC9jb2QtZm9ybS9jb2QtZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29kL2NvZC1mb3JtL2NvZC1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQTRCLE1BQU0sZUFBZSxDQUFDO0FBRTVHLE9BQU8sSUFBSSxNQUFNLGFBQWEsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFXL0IsTUFBTSxPQUFPLGdCQUFnQjtJQXlCM0IsWUFDVSxXQUF3QixFQUN4QixlQUF1QyxFQUN2QyxlQUFnQyxFQUNoQyxpQkFBb0M7UUFIcEMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsb0JBQWUsR0FBZixlQUFlLENBQXdCO1FBQ3ZDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBcEJwQyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFHN0MsaUJBQVksR0FBYTtZQUMvQixDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFO1NBQ3RDLENBQUM7UUFFSyxnQkFBVyxHQUFXLENBQUMsQ0FBQztRQUN4QixjQUFTLEdBQVcsa0NBQWtDLENBQUM7UUFFdkQsY0FBUyxHQUFXLENBQUMsQ0FBQztRQUV0QixjQUFTLEdBQVksS0FBSyxDQUFDO1FBQzNCLGtCQUFhLEdBQVcsRUFBRSxDQUFDO1FBQzNCLDRCQUF1QixHQUF3QixJQUFJLENBQUM7UUFRekQsSUFBSSxD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TSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgU3dhbCBmcm9tICdzd2VldGFsZXJ0Mic7XG5pbXBvcnQgeyBDcmVhdGVDT0RScSwgSVVwZGF0ZUNPRFJxIH0gZnJvbSAnLi4vLi4vY29yZS9tb2RlbHMvY29kL2NvZC1ycS5tb2RlbCc7XG5pbXBvcnQgeyBDb21tZXJjaWFsU2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvc2VydmljZXMvY29tbWVyY2lhbC1zZXJ2aWNlL2NvbWVyY2lhbC5zZXJ2aWNlJztcbmltcG9ydCB7IEJhc2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS91dGlscy9iYXNlLXNlcnZpY2UvYmFzZS5zZXJ2aWNlJztcbmltcG9ydCB7IENvZEZvcm1Db250cm9scywgQ29udHJvbCB9IGZyb20gJy4uL2xvZ2ljL2NvZC1mb3JtLWNvbnRyb2xzJztcbmltcG9ydCB7IExvY2FsU3RvcmFnZUNPRFNlcnZpY2UgfSBmcm9tICcuLi9sb2dpYy9sb2NhbC1zdG9yYWdlLWNvZC5zZXJ2aWNlJztcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2lwdC1jb2QtZm9ybScsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb2QtZm9ybS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogW11cbn0pXG5leHBvcnQgY2xhc3MgQ29kRm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcblxuICBASW5wdXQoKSBkYXRhRnJvbVByZXZpdXNDb2REYXRhPzogYW55O1xuICBASW5wdXQoKSBjb3Vyc2VTZWxlY3Q/OiBhbnk7XG4gIEBJbnB1dCgpIGlzTmV3Q29kITogYm9vbGVhbjtcbiAgQElucHV0KCkgZWRpdENvZCE6IGJvb2xlYW47XG4gIEBJbnB1dCgpIENvdXJzZVNlbGVjdFJlbm92YXRpb24hOmFueTtcbiAgQElucHV0KCkgaXNSZW5vdmF0aW9uITpib29sZWFuO1xuXG4gIEBPdXRwdXQoKSBva0NyZWF0ZWRDT0QgPSBuZXcgRXZlbnRFbWl0dGVyPEJvb2xlYW4+KCk7XG4gIHN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcblxuICBwcml2YXRlIGFsbG93ZWRSb2xlczogbnVtYmVyW10gPSBbXG4gICAgMSwgMzAsIDMxLCAzMiwgNDAsIDQxLCA0MiwgNTAsIDUxLCA1MixcbiAgXTtcblxuICBwdWJsaWMgY3VycmVudFN0ZXA6IG51bWJlciA9IDA7XG4gIHB1YmxpYyBmb3JtVGl0bGU6IHN0cmluZyA9ICdGb3JtdWxhcmlvIHBhcmEgY3JlYWNpw7NuIGRlbCBDT0QnO1xuICBwdWJsaWMgdXNlclJvbGU6IG51bWJlcjtcbiAgcHVibGljIGZvcm1TdGVwczogbnVtYmVyID0gNTtcbiAgcHVibGljIGZpbmFuY2luZ0RhdGE/OiBhbnlbXTtcbiAgcHVibGljIGlzTG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xuICBwdWJsaWMgbG9hZGVyTWVzc2FnZTogc3RyaW5nID0gJyc7XG4gIHB1YmxpYyBjb2RDcmVhdGlvblN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uIHwgbnVsbCA9IG51bGw7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBiYXNlU2VydmljZTogQmFzZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBsb2NhbFN0b3JhZ2VDT0Q6IExvY2FsU3RvcmFnZUNPRFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb2RGb3JtQ29udHJvbHM6IENvZEZvcm1Db250cm9scyxcbiAgICBwcml2YXRlIGNvbW1lcmNpYWxTZXJ2aWNlOiBDb21tZXJjaWFsU2VydmljZVxuICApIHtcbiAgICB0aGlzLnVzZXJSb2xlID0gdGhpcy5iYXNlU2VydmljZS5nZXRVc2VyUm9sZSgpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGNvbnNvbGUubG9nKHRoaXMuY291cnNlU2VsZWN0KTtcbiAgICBpZiAoY2hhbmdlc1snZWRpdENvZCddICYmIHRoaXMuZGF0YUZyb21QcmV2aXVzQ29kRGF0YSkge1xuICAgICAgaWYgKHRoaXMuZWRpdENvZCkge1xuICAgICAgICBpZiAoIXRoaXMuZGF0YUZyb21QcmV2aXVzQ29kRGF0YS5lZGl0X2NvdXJzZV9wYXltZW50KSB7XG4gICAgICAgICAgU3dhbC5maXJlKHtcbiAgICAgICAgICAgIHRpdGxlOiAnUXVlcmlkbyBhc2Vzb3InLFxuICAgICAgICAgICAgdGV4dDogJ1NvbG8gcHVlZGUgZWRpdGFyIERhdG9zIGRlbCBlc3R1ZGlhbnRlJyxcbiAgICAgICAgICAgIGljb246ICd3YXJuaW5nJ1xuICAgICAgICAgIH0pXG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5mb3JtVGl0bGUgPSAnRm9ybXVsYXJpbyBwYXJhIHZlcmlmaWNhciB5IGVkaXRhciBpbmZvcm1hY2nDs24gZGVsIENPRCBhY3R1YWwnO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLmRhdGFGcm9tUHJldml1c0NvZERhdGE/LmNvZF9yZW5vdmF0aW9uID09IGZhbHNlICYmIHRoaXMuZWRpdENvZCA9PSBmYWxzZSkge1xuICAgICAgICB0aGlzLmZvcm1UaXRsZSA9ICdGb3JtdWxhcmlvIHBhcmEgY3JlYWNpw7NuIGRlbCBDT0QnO1xuICAgICAgfWVsc2UgaWYodGhpcy5kYXRhRnJvbVByZXZpdXNDb2REYXRhLmNvZF9yZW5vdmF0aW9uID09IHRydWUgJiYgdGhpcy5lZGl0Q29kID09IGZhbHNlKXtcbiAgICAgICAgdGhpcy5mb3JtVGl0bGUgPSAnRm9ybXVsYXJpbyBwYXJhIGxhIHJlbm92YWNpb24gZGVsIENPRCc7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3Vic2NyaXB0aW9uKSB7XG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cbiAgfVxuXG4gIGFsbG93ZWRSb2xlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmFsbG93ZWRSb2xlcy5pbmNsdWRlcyh0aGlzLnVzZXJSb2xlKTtcbiAgfVxuXG4gIGdldENvZGJ5Q29kZSgpIHtcbiAgICAvLyBUT0RPOiBUcmFlciBDT0QgcG9yIGPDs2RpZ28geSBwaW50YXJsb1xuICB9XG5cblxuICBzYXZlRmluYW5jaW5nRGF0YShkYXRhOiBhbnlbXSkge1xuICAgIGlmIChkYXRhKSB7XG4gICAgICBjb25zdCBkYXRlczogc3RyaW5nW10gPSBbXTtcbiAgICAgIGRhdGEuZm9yRWFjaChwID0+IHtcbiAgICAgICAgY29uc3QgZGF0ZSA9IHBbMl07XG4gICAgICAgIGRhdGVzLnB1c2goZGF0ZSk7XG4gICAgICB9KVxuICAgICAgdGhpcy5maW5hbmNpbmdEYXRhID0gZGF0ZXM7XG4gICAgfVxuICB9XG5cbiAgZ2V0Rm9ybUFjdGlvbihhY3Rpb246IHN0cmluZykge1xuICAgIGlmICghdGhpcy5maW5hbmNpbmdEYXRhICYmIHRoaXMubG9jYWxTdG9yYWdlQ09ELmdldENvZEZvcm1EYXRhKDQsICdwYXltZW50X21ldGhvZCcpID09PSAnMScpIHtcbiAgICAgIFN3YWwuZmlyZSh7XG4gICAgICAgIHRpdGxlOiAnUXVlcmlkbyBhc2Vzb3InLFxuICAgICAgICB0ZXh0OiAnRGViZSBoYWNlciBlbCBjw6FsY3VsbyBkZSBsYXMgY3VvdGFzIGVuIGVsIHBhc28gNCcsXG4gICAgICAgIGljb246ICdlcnJvcidcbiAgICAgIH0pXG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IHRvdGFsRGF0YTogYW55W10gPSBbXTtcblxuICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gdGhpcy5jb2RGb3JtQ29udHJvbHMuZ2V0Q29udHJvbFZhbHVlcygpLnN1YnNjcmliZSgoY29udHJvbHMpID0+IHtcbiAgICAgICAgZm9yIChsZXQgaSA9IDE7IGkgPD0gdGhpcy5mb3JtU3RlcHM7IGkrKykge1xuICAgICAgICAgIGxldCBjb250cm9sc0J5U3RlcDogQ29udHJvbFtdID0gY29udHJvbHNbaS0xXTtcbiAgICAgICAgICAgIGNvbnRyb2xzQnlTdGVwLmZvckVhY2goY29udHJvbCA9PiB7XG4gICAgICAgICAgICAgIGxldCB2YWx1ZSA9IHRoaXMubG9jYWxTdG9yYWdlQ09ELmdldENvZEZvcm1EYXRhKGksIGNvbnRyb2wubmFtZSk7XG4gICAgICAgICAgICAgIC8vIENhbWJpYXIgVHJ1ZS9GYWxzZSBkZWwgbXVsdGljdWx0dXJhbGlzbW8gMS8wXG4gICAgICAgICAgICAgIGlmICh2YWx1ZSA9PT0gJ2ZhbHNlJyAmJiBjb250cm9sLmRlc2NyaXB0aW9uID09PSAnTXVsdGljdWx0dXJhbGlzbW8nKSB7XG4gICAgICAgICAgICAgICAgdG90YWxEYXRhLnB1c2goe1xuICAgICAgICAgICAgICAgICAgY29udHJvbDogY29udHJvbC5uYW1lLFxuICAgICAgICAgICAgICAgICAgaXNSZXF1aXJlZDogY29udHJvbC5yZXF1aXJlZCxcbiAgICAgICAgICAgICAgICAgIHZhbHVlOiAnMCcsXG4gICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogY29udHJvbC5kZXNjcmlwdGlvblxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIH0gZWxzZSBpZiAodmFsdWUgPT09ICd0cnVlJyAmJiBjb250cm9sLmRlc2NyaXB0aW9uID09PSAnTXVsdGljdWx0dXJhbGlzbW8nKSB7XG4gICAgICAgICAgICAgICAgdG90YWxEYXRhLnB1c2goe1xuICAgICAgICAgICAgICAgICAgY29udHJvbDogY29udHJvbC5uYW1lLFxuICAgICAgICAgICAgICAgICAgaXNSZXF1aXJlZDogY29udHJvbC5yZXF1aXJlZCxcbiAgICAgICAgICAgICAgICAgIHZhbHVlOiAnMScsXG4gICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogY29udHJvbC5kZXNjcmlwdGlvblxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdG90YWxEYXRhLnB1c2goe1xuICAgICAgICAgICAgICAgICAgY29udHJvbDogY29udHJvbC5uYW1lLFxuICAgICAgICAgICAgICAgICAgaXNSZXF1aXJlZDogY29udHJvbC5yZXF1aXJlZCxcbiAgICAgICAgICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IGNvbnRyb2wuZGVzY3JpcHRpb25cbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgLy8gVmFsaWRhciBlcnJvcmVzXG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRvdGFsRGF0YS5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBlbGVtZW50ID0gdG90YWxEYXRhW2ldO1xuICAgICAgICBpZiAoIWVsZW1lbnQudmFsdWUgJiYgZWxlbWVudC5pc1JlcXVpcmVkKSB7XG4gICAgICAgICAgU3dhbC5maXJlKHtcbiAgICAgICAgICAgIHRpdGxlOiAnRXJyb3IgRm9ybSBBY3Rpb24gVmFsaWRhdGUgRXJyb3InLFxuICAgICAgICAgICAgdGV4dDogYFJldmlzYXIgZWwgY2FtcG86IFwiJHtlbGVtZW50LmRlc2NyaXB0aW9ufVwiYCxcbiAgICAgICAgICAgIGljb246ICdlcnJvcidcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoYWN0aW9uID09PSAnY3JlYXRlJykgdGhpcy5jcmVhdGVDT0QodG90YWxEYXRhKTtcbiAgICAgIGlmIChhY3Rpb24gPT09ICd1cGRhdGUnKSB0aGlzLnVwZGF0ZUNPRCh0b3RhbERhdGEpO1xuICAgIH0pXG5cbiAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuXG4gIH1cblxuICB1cGRhdGVDT0QodG90YWxEYXRhOiBhbnlbXSkge1xuICAgIGlmICh0aGlzLmNvZENyZWF0aW9uU3Vic2NyaXB0aW9uICYmICF0aGlzLmNvZENyZWF0aW9uU3Vic2NyaXB0aW9uLmNsb3NlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gICAgdGhpcy5sb2FkZXJNZXNzYWdlID0gJ0VkaXRhbmRvIENPRCwgZXNwZXJlIHVuIG1vbWVudG8nXG4gICAgbGV0IHJlcXVlc3Q6IElVcGRhdGVDT0RScSA9IHRoaXMuZ2V0VXBkYXRlQ09EKHRvdGFsRGF0YSk7XG4gICAgdGhpcy5jb21tZXJjaWFsU2VydmljZS51cGRhdGVDT0QocmVxdWVzdCkuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IChyZXNwb25zZTogYW55KSA9PiB7XG4gICAgICAgIGlmIChyZXNwb25zZS5tZXNzYWdlLmNvZGUgPT09IDEpIHtcbiAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgIHRoaXMubG9hZGVyTWVzc2FnZSA9ICcnO1xuICAgICAgICAgIFN3YWwuZmlyZSh7XG4gICAgICAgICAgICB0aXRsZTogJ1BlcmZlY3RvIScsXG4gICAgICAgICAgICB0ZXh0OiAnRWwgQ09EIGhhIHNpZG8gRWRpdGFkbyBleGl0b3NhbWVudGUuJyxcbiAgICAgICAgICAgIGljb246ICdzdWNjZXNzJ1xuICAgICAgICAgIH0pXG4gICAgICAgICAgdGhpcy5sb2NhbFN0b3JhZ2VDT0QuY2xlYXJEYXRhKCk7XG4gICAgICAgICAgdGhpcy5va0NyZWF0ZWRDT0QuZW1pdCh0cnVlKTtcbiAgICAgICAgfSBlbHNlIGlmIChyZXNwb25zZS5tZXNzYWdlLmNvZGUgPT09IDQpIHtcbiAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgIHRoaXMubG9hZGVyTWVzc2FnZSA9ICcnO1xuICAgICAgICAgIGNvbnN0IGVycm9yTWVzc2FnZXMgPSAocmVzcG9uc2UuZGF0YS5lcnJvcnMgYXMgYW55W10pLm1hcChlcnJvciA9PiBgLSAke2Vycm9yLm1lc3NhZ2V9YCkuam9pbignPGJyPicpO1xuXG4gICAgICAgICAgU3dhbC5maXJlKHtcbiAgICAgICAgICAgIHRpdGxlOiAnUmV2aXNhciBsbyBzZWxlY2Npb25hZG8gZW4gbG9zIGNhbXBvcycsXG4gICAgICAgICAgICBodG1sOiBgJHtlcnJvck1lc3NhZ2VzfWAsXG4gICAgICAgICAgICBpY29uOiAnd2FybmluZydcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgIHRoaXMubG9hZGVyTWVzc2FnZSA9ICcnO1xuXG4gICAgICAgICAgU3dhbC5maXJlKHtcbiAgICAgICAgICAgIHRpdGxlOiAnV2FybmluZyEnLFxuICAgICAgICAgICAgdGV4dDogcmVzcG9uc2UubWVzc2FnZS5tZXNzYWdlLFxuICAgICAgICAgICAgaWNvbjogJ2Vycm9yJ1xuICAgICAgICAgIH0pXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBlcnJvcjogKGVycjogYW55KSA9PiB7XG4gICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgIHRoaXMubG9hZGVyTWVzc2FnZSA9ICcnO1xuICAgICAgICBTd2FsLmZpcmUoe1xuICAgICAgICAgIHRpdGxlOiAnRXJyb3IgaW4gY29kIGNyZWF0aW9uJyxcbiAgICAgICAgICB0ZXh0OiBlcnIubWVzc2FnZSxcbiAgICAgICAgICBpY29uOiAnZXJyb3InXG4gICAgICAgIH0pXG4gICAgICB9LFxuICAgICAgY29tcGxldGU6ICgpID0+IHtcbiAgICAgICAgdGhpcy5jb2RDcmVhdGlvblN1YnNjcmlwdGlvbiA9IG51bGw7XG4gICAgICB9XG4gICAgfSlcblxuICB9XG5cbiAgY3JlYXRlQ09EKHRvdGFsRGF0YTogYW55W10pIHtcbiAgICBpZiAodGhpcy5jb2RDcmVhdGlvblN1YnNjcmlwdGlvbiAmJiAhdGhpcy5jb2RDcmVhdGlvblN1YnNjcmlwdGlvbi5jbG9zZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xuICAgIHRoaXMubG9hZGVyTWVzc2FnZSA9ICdDcmVhbmRvIENPRCwgZXNwZXJlIHVuIG1vbWVudG8nXG4gICAgbGV0IHJlcXVlc3Q6IENyZWF0ZUNPRFJxID0gdGhpcy5nZXRDcmVhdGVDT0QodG90YWxEYXRhKTtcbiAgICB0aGlzLmNvbW1lcmNpYWxTZXJ2aWNlLmNyZWF0ZUNPRChyZXF1ZXN0KS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKHJlc3BvbnNlOiBhbnkpID0+IHtcbiAgICAgICAgaWYgKHJlc3BvbnNlLm1lc3NhZ2UuY29kZSA9PT0gMSkge1xuICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgdGhpcy5sb2FkZXJNZXNzYWdlID0gJyc7XG4gICAgICAgICAgU3dhbC5maXJlKHtcbiAgICAgICAgICAgIHRpdGxlOiAnUGVyZmVjdG8hJyxcbiAgICAgICAgICAgIHRleHQ6ICdFbCBDT0QgaGEgc2lkbyBjcmVhZG8gZXhpdG9zYW1lbnRlLicsXG4gICAgICAgICAgICBpY29uOiAnc3VjY2VzcydcbiAgICAgICAgICB9KVxuICAgICAgICAgIHRoaXMubG9jYWxTdG9yYWdlQ09ELmNsZWFyRGF0YSgpO1xuICAgICAgICAgIHRoaXMub2tDcmVhdGVkQ09ELmVtaXQodHJ1ZSk7XG4gICAgICAgIH1lbHNlIGlmKHJlc3BvbnNlLm1lc3NhZ2UuY29kZSA9PT0gMyl7XG4gICAgICAgICAgY29uc29sZS5sb2cocmVzcG9uc2UuZGF0YSk7XG4gICAgICAgICAgbGV0IGFsZXJ0SHRtbCA9IGBcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibXktY3VzdG9tLWFsZXJ0XCI+XG4gICAgICAgICAgICAgIDxoMj5XYXJuaW5nITwvaDI+XG4gICAgICAgICAgYDtcbiAgICAgICAgICAgIGlmICghcmVzcG9uc2UuZGF0YS53YXJuaW5nLmF2ZXJhZ2Vfc2NvcmUpIHtcbiAgICAgICAgICAgICAgICBhbGVydEh0bWwgKz0gYDxwPk5vIHBhc8OzIGVsIHByb21lZGlvIGZpbmFsPC9wPjxicj5gO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCFyZXNwb25zZS5kYXRhLndhcm5pbmcubm9uX2F0dGVuZGFuY2UpIHtcbiAgICAgICAgICAgICAgICBhbGVydEh0bWwgKz0gYDxwPlRpZW5lIG3DoXMgZGVsIDI1JSBkZSBpbmFzaXN0ZW5jaWFzPC9wPjxicj5gO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCFyZXNwb25zZS5kYXRhLndhcm5pbmcub3V0c3RhbmRpbmdfcGF5bWVudHMpIHtcbiAgICAgICAgICAgICAgICBhbGVydEh0bWwgKz0gYDxwPlRpZW5lIHBhZ29zIHBlbmRpZW50ZXM8L3A+YDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICBhbGVydEh0bWwgKz0gYDwvZGl2PmA7XG4gICAgICAgICAgU3dhbC5maXJlKHtcbiAgICAgICAgICAgIGh0bWw6IGFsZXJ0SHRtbCxcbiAgICAgICAgICAgIGljb246ICdlcnJvcicsXG4gICAgICAgICAgICAvLyBzaG93Q2FuY2VsQnV0dG9uOiB0cnVlLFxuICAgICAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6ICdDb25maXJtYXInLFxuICAgICAgICAgICAgLy8gY2FuY2VsQnV0dG9uVGV4dDogJ0NhbmNlbGFyJyxcbiAgICAgICAgICB9KVxuICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgIH0gZWxzZSBpZiAocmVzcG9uc2UubWVzc2FnZS5jb2RlID09PSA0KSB7XG4gICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLmxvYWRlck1lc3NhZ2UgPSAnJztcbiAgICAgICAgICBjb25zdCBlcnJvck1lc3NhZ2VzID0gKHJlc3BvbnNlLmRhdGEuZXJyb3JzIGFzIGFueVtdKS5tYXAoZXJyb3IgPT4gYC0gJHtlcnJvci5tZXNzYWdlfWApLmpvaW4oJzxicj4nKTtcblxuICAgICAgICAgIFN3YWwuZmlyZSh7XG4gICAgICAgICAgICB0aXRsZTogJ1JldmlzYXIgbG8gc2VsZWNjaW9uYWRvIGVuIGxvcyBjYW1wb3MnLFxuICAgICAgICAgICAgaHRtbDogYCR7ZXJyb3JNZXNzYWdlc31gLFxuICAgICAgICAgICAgaWNvbjogJ3dhcm5pbmcnXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLmxvYWRlck1lc3NhZ2UgPSAnJztcblxuICAgICAgICAgIFN3YWwuZmlyZSh7XG4gICAgICAgICAgICB0aXRsZTogJ1dhcm5pbmchJyxcbiAgICAgICAgICAgIHRleHQ6IHJlc3BvbnNlLm1lc3NhZ2UubWVzc2FnZSxcbiAgICAgICAgICAgIGljb246ICdlcnJvcidcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgZXJyb3I6IChlcnI6IGFueSkgPT4ge1xuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICB0aGlzLmxvYWRlck1lc3NhZ2UgPSAnJztcbiAgICAgICAgU3dhbC5maXJlKHtcbiAgICAgICAgICB0aXRsZTogJ0Vycm9yIGluIGNvZCBjcmVhdGlvbicsXG4gICAgICAgICAgdGV4dDogZXJyLm1lc3NhZ2UsXG4gICAgICAgICAgaWNvbjogJ2Vycm9yJ1xuICAgICAgICB9KVxuICAgICAgfSxcbiAgICAgIGNvbXBsZXRlOiAoKSA9PiB7XG4gICAgICAgIHRoaXMuY29kQ3JlYXRpb25TdWJzY3JpcHRpb24gPSBudWxsO1xuICAgICAgfVxuICAgIH0pXG5cbiAgfVxuXG4gIGdldENyZWF0ZUNPRChkYXRhOiBhbnlbXSk6IENyZWF0ZUNPRFJxIHtcbiAgICBsZXQgcmVxdWVzdDogQ3JlYXRlQ09EUnEgPSB7XG4gICAgICB0b2tlbjogdGhpcy5iYXNlU2VydmljZS5nZXRVc2VyVG9rZW4oKSxcbiAgICAgIHN0dWRlbnRfbmFtZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X25hbWUnKVswXS52YWx1ZSxcbiAgICAgIHN0dWRlbnRfbGFzdF9uYW1lOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWRlbnRfbGFzdF9uYW1lJylbMF0udmFsdWUsXG4gICAgICBuaWNrbmFtZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICduaWNrbmFtZScpWzBdLnZhbHVlLFxuICAgICAgc3R1ZGVudF9lbWFpbDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X2VtYWlsJylbMF0udmFsdWUsXG4gICAgICBzdHVkZW50X3Bob25lX2luZGljYXRpdmU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3R1ZGVudF9waG9uZV9pbmRpY2F0aXZlJylbMF0udmFsdWUsXG4gICAgICBzdHVkZW50X3Bob25lX251bWJlcjogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X3Bob25lX251bWJlcicpWzBdLnZhbHVlLFxuICAgICAgZ2VuZGVyOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2dlbmRlcicpWzBdLnZhbHVlLFxuICAgICAgYmlydGhkYXRlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2JpcnRoZGF0ZScpWzBdLnZhbHVlLFxuICAgICAgY2l0eTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdjaXR5JylbMF0udmFsdWUsXG4gICAgICBzdHVkZW50X2lkX2NhcmRfdHlwZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X2lkX2NhcmRfdHlwZScpWzBdLnZhbHVlLFxuICAgICAgc3R1ZGVudF9pZF9jYXJkOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWRlbnRfaWRfY2FyZCcpWzBdLnZhbHVlLFxuICAgICAgcGFzc3dvcmQ6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFzc3dvcmQnKVswXS52YWx1ZSxcbiAgICAgIG5lZWRBdGVuZGFudDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICduZWVkQXRlbmRhbnQnKVswXS52YWx1ZSxcbiAgICAgIHBhcmVudF9uYW1lOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3BhcmVudF9uYW1lJylbMF0udmFsdWUsXG4gICAgICBwYXJlbnRfbGFzdF9uYW1lOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3BhcmVudF9sYXN0X25hbWUnKVswXS52YWx1ZSxcbiAgICAgIHBhcmVudF9pZF9jYXJkX3R5cGU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X2lkX2NhcmRfdHlwZScpWzBdLnZhbHVlLFxuICAgICAgcGFyZW50X2lkX2NhcmQ6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X2lkX2NhcmQnKVswXS52YWx1ZSxcbiAgICAgIHBhcmVudF9waG9uZV9pbmRpY2F0aXZlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3BhcmVudF9waG9uZV9pbmRpY2F0aXZlJylbMF0udmFsdWUsXG4gICAgICBwYXJlbnRfcGhvbmVfbnVtYmVyOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3BhcmVudF9waG9uZV9udW1iZXInKVswXS52YWx1ZSxcbiAgICAgIHBhcmVudF9vY2N1cGF0aW9uOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3BhcmVudF9vY2N1cGF0aW9uJylbMF0udmFsdWUsXG4gICAgICBwYXJlbnRfb2ZmaWNlX2FkZHJlc3M6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X2FkZHJlc3MnKVswXS52YWx1ZSxcbiAgICAgIHNvY2lhbF9zdHJhdHVtOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0cmF0dW0nKVswXS52YWx1ZSxcbiAgICAgIGNpdmlsX3N0YXR1czogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdjaXZpbF9zdGF0dXMnKVswXS52YWx1ZSxcbiAgICAgIGVkdWNhdGlvbmFsX2xldmVsOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2dyYWRlJylbMF0udmFsdWUsXG4gICAgICBzdHVkZW50X2FkZHJlc3M6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3R1ZGVudF9hZGRyZXNzJylbMF0udmFsdWUsXG4gICAgICBzdHVkZW50X29jY3VwYXRpb246IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3R1ZGVudF9vY2N1cGF0aW9uJylbMF0udmFsdWUsXG4gICAgICBkaXNhYmlsaXR5OiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2Rpc2FiaWxpdHknKVswXS52YWx1ZSxcbiAgICAgIGhlYWx0aF9yZWdpbWVuOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2hlYWx0aF9yZWdpbWVuJylbMF0udmFsdWUsXG4gICAgICBtYXJrZXRpbmdfcmVhc29uczogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdtYXJrZXRpbmdfcmVhc29ucycpWzBdLnZhbHVlLFxuICAgICAgc3R1ZHlfcmVhc29uczogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkeV9yZWFzb25zJylbMF0udmFsdWUsXG4gICAgICBvYnNlcnZhdGlvbjogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdvYnNlcnZhdGlvbicpWzBdLnZhbHVlLFxuICAgICAgbXVsdGljdWx0dXJhbGlzbV8xOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ211bHRpY3VsdHVyYWxpc21fMScpWzBdLnZhbHVlLFxuICAgICAgbXVsdGljdWx0dXJhbGlzbV8yOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ211bHRpY3VsdHVyYWxpc21fMicpWzBdLnZhbHVlLFxuICAgICAgbXVsdGljdWx0dXJhbGlzbV8zOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ211bHRpY3VsdHVyYWxpc21fMycpWzBdLnZhbHVlLFxuICAgICAgbXVsdGljdWx0dXJhbGlzbV80OiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ211bHRpY3VsdHVyYWxpc21fNCcpWzBdLnZhbHVlLFxuICAgICAgbXVsdGljdWx0dXJhbGlzbV81OiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ211bHRpY3VsdHVyYWxpc21fNScpWzBdLnZhbHVlLFxuICAgICAgbXVsdGljdWx0dXJhbGlzbV82OiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ211bHRpY3VsdHVyYWxpc21fNicpWzBdLnZhbHVlLFxuICAgICAgYXZhaWxpYmxlX2NvdXJzZXM6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnYXZhaWxpYmxlX2NvdXJzZXMnKVswXS52YWx1ZSxcbiAgICAgIGNvdXJzZV90eXBlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2NvdXJzZV90eXBlJylbMF0udmFsdWUsXG4gICAgICBhZ3JlZW1lbnRfYnlfY2F0ZWdvcnk6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnYWdyZWVtZW50X2J5X2NhdGVnb3J5JylbMF0udmFsdWUsXG4gICAgICBlbmdsaXNoX2xldmVsOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2VuZ2xpc2hfbGV2ZWwnKVswXS52YWx1ZSxcbiAgICAgIHBheW1lbnRfbWV0aG9kOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3BheW1lbnRfbWV0aG9kJylbMF0udmFsdWUsXG4gICAgICBxdW90YV90aW1lczogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdxdW90YV90aW1lcycpWzBdLnZhbHVlLFxuICAgICAgcGF5bWVudF9kYXRlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3BheW1lbnRfZGF0ZScpWzBdLnZhbHVlLFxuICAgICAgcGF5bWVudF9kYXRlczogdGhpcy5maW5hbmNpbmdEYXRhISxcbiAgICAgIHByb2dyYW1fcHJpY2U6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncHJvZ3JhbV9wcmljZScpWzBdLnZhbHVlLFxuICAgICAgdG90YWxfcHJpY2U6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAndG90YWxfcHJpY2UnKVswXS52YWx1ZSxcbiAgICAgIHBhaWRfbGV2ZWw6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFpZF9sZXZlbCcpWzBdLnZhbHVlLFxuICAgICAgdGVybXM6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAndGVybXMnKVswXS52YWx1ZSxcbiAgICAgIHJlX3Bhc3N3b3JkOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3JlX3Bhc3N3b3JkJylbMF0udmFsdWUsXG4gICAgICBhZ2U6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnYWdlJylbMF0udmFsdWUsXG4gICAgICBjb3VudHJ5OiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2NvdW50cnknKVswXS52YWx1ZSxcbiAgICAgIHN0YXRlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0YXRlJylbMF0udmFsdWUsXG4gICAgICBhY2FkZW1pY19wbGFuOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2FjYWRlbWljX3BsYW4nKVswXS52YWx1ZSxcbiAgICAgIGNvZGVfcmVmZXJzOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2NvZGVfcmVmZXJzJylbMF0udmFsdWUsXG4gICAgfVxuICAgIHJldHVybiByZXF1ZXN0O1xuICB9XG5cbiAgZ2V0VXBkYXRlQ09EKGRhdGE6IGFueVtdKTogSVVwZGF0ZUNPRFJxIHtcbiAgICBsZXQgcmVxdWVzdDogSVVwZGF0ZUNPRFJxID0ge1xuICAgICAgdG9rZW46IHRoaXMuYmFzZVNlcnZpY2UuZ2V0VXNlclRva2VuKCksXG4gICAgICBzdHVkZW50X25hbWU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3R1ZGVudF9uYW1lJylbMF0udmFsdWUsXG4gICAgICBzdHVkZW50X2xhc3RfbmFtZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X2xhc3RfbmFtZScpWzBdLnZhbHVlLFxuICAgICAgbmlja25hbWU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbmlja25hbWUnKVswXS52YWx1ZSxcbiAgICAgIHN0dWRlbnRfZW1haWw6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3R1ZGVudF9lbWFpbCcpWzBdLnZhbHVlLFxuICAgICAgc3R1ZGVudF9waG9uZV9pbmRpY2F0aXZlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWRlbnRfcGhvbmVfaW5kaWNhdGl2ZScpWzBdLnZhbHVlLFxuICAgICAgc3R1ZGVudF9waG9uZV9udW1iZXI6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3R1ZGVudF9waG9uZV9udW1iZXInKVswXS52YWx1ZSxcbiAgICAgIGdlbmRlcjogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdnZW5kZXInKVswXS52YWx1ZSxcbiAgICAgIGJpcnRoZGF0ZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdiaXJ0aGRhdGUnKVswXS52YWx1ZSxcbiAgICAgIGNpdHk6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnY2l0eScpWzBdLnZhbHVlLFxuICAgICAgc3R1ZGVudF9pZF9jYXJkX3R5cGU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3R1ZGVudF9pZF9jYXJkX3R5cGUnKVswXS52YWx1ZSxcbiAgICAgIHN0dWRlbnRfaWRfY2FyZDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X2lkX2NhcmQnKVswXS52YWx1ZSxcbiAgICAgIG5lZWRBdGVuZGFudDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICduZWVkQXRlbmRhbnQnKVswXS52YWx1ZSxcbiAgICAgIHBhcmVudF9uYW1lOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3BhcmVudF9uYW1lJylbMF0udmFsdWUsXG4gICAgICBwYXJlbnRfbGFzdF9uYW1lOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3BhcmVudF9sYXN0X25hbWUnKVswXS52YWx1ZSxcbiAgICAgIHBhcmVudF9pZF9jYXJkX3R5cGU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X2lkX2NhcmRfdHlwZScpWzBdLnZhbHVlLFxuICAgICAgcGFyZW50X2lkX2NhcmQ6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X2lkX2NhcmQnKVswXS52YWx1ZSxcbiAgICAgIHBhcmVudF9waG9uZV9pbmRpY2F0aXZlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3BhcmVudF9waG9uZV9pbmRpY2F0aXZlJylbMF0udmFsdWUsXG4gICAgICBwYXJlbnRfcGhvbmVfbnVtYmVyOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3BhcmVudF9waG9uZV9udW1iZXInKVswXS52YWx1ZSxcbiAgICAgIHBhcmVudF9vY2N1cGF0aW9uOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3BhcmVudF9vY2N1cGF0aW9uJylbMF0udmFsdWUsXG4gICAgICBwYXJlbnRfb2ZmaWNlX2FkZHJlc3M6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFyZW50X2FkZHJlc3MnKVswXS52YWx1ZSxcbiAgICAgIHNvY2lhbF9zdHJhdHVtOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0cmF0dW0nKVswXS52YWx1ZSxcbiAgICAgIGNpdmlsX3N0YXR1czogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdjaXZpbF9zdGF0dXMnKVswXS52YWx1ZSxcbiAgICAgIGVkdWNhdGlvbmFsX2xldmVsOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2dyYWRlJylbMF0udmFsdWUsXG4gICAgICBzdHVkZW50X2FkZHJlc3M6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3R1ZGVudF9hZGRyZXNzJylbMF0udmFsdWUsXG4gICAgICBzdHVkZW50X29jY3VwYXRpb246IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3R1ZGVudF9vY2N1cGF0aW9uJylbMF0udmFsdWUsXG4gICAgICBkaXNhYmlsaXR5OiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2Rpc2FiaWxpdHknKVswXS52YWx1ZSxcbiAgICAgIGhlYWx0aF9yZWdpbWVuOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2hlYWx0aF9yZWdpbWVuJylbMF0udmFsdWUsXG4gICAgICBtYXJrZXRpbmdfcmVhc29uczogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdtYXJrZXRpbmdfcmVhc29ucycpWzBdLnZhbHVlLFxuICAgICAgc3R1ZHlfcmVhc29uczogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkeV9yZWFzb25zJylbMF0udmFsdWUsXG4gICAgICBvYnNlcnZhdGlvbjogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdvYnNlcnZhdGlvbicpWzBdLnZhbHVlLFxuICAgICAgbXVsdGljdWx0dXJhbGlzbV8xOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ211bHRpY3VsdHVyYWxpc21fMScpWzBdLnZhbHVlLFxuICAgICAgbXVsdGljdWx0dXJhbGlzbV8yOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ211bHRpY3VsdHVyYWxpc21fMicpWzBdLnZhbHVlLFxuICAgICAgbXVsdGljdWx0dXJhbGlzbV8zOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ211bHRpY3VsdHVyYWxpc21fMycpWzBdLnZhbHVlLFxuICAgICAgbXVsdGljdWx0dXJhbGlzbV80OiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ211bHRpY3VsdHVyYWxpc21fNCcpWzBdLnZhbHVlLFxuICAgICAgbXVsdGljdWx0dXJhbGlzbV81OiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ211bHRpY3VsdHVyYWxpc21fNScpWzBdLnZhbHVlLFxuICAgICAgbXVsdGljdWx0dXJhbGlzbV82OiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ211bHRpY3VsdHVyYWxpc21fNicpWzBdLnZhbHVlLFxuICAgICAgYXZhaWxpYmxlX2NvdXJzZXM6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnYXZhaWxpYmxlX2NvdXJzZXMnKVswXS52YWx1ZSxcbiAgICAgIGNvdXJzZV90eXBlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2NvdXJzZV90eXBlJylbMF0udmFsdWUsXG4gICAgICBhZ3JlZW1lbnRfYnlfY2F0ZWdvcnk6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnYWdyZWVtZW50X2J5X2NhdGVnb3J5JylbMF0udmFsdWUsXG4gICAgICBlbmdsaXNoX2xldmVsOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2VuZ2xpc2hfbGV2ZWwnKVswXS52YWx1ZSxcbiAgICAgIHBheW1lbnRfbWV0aG9kOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3BheW1lbnRfbWV0aG9kJylbMF0udmFsdWUsXG4gICAgICBxdW90YV90aW1lczogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdxdW90YV90aW1lcycpWzBdLnZhbHVlLFxuICAgICAgcGF5bWVudF9kYXRlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3BheW1lbnRfZGF0ZScpWzBdLnZhbHVlLFxuICAgICAgcGF5bWVudF9kYXRlczogdGhpcy5maW5hbmNpbmdEYXRhISxcbiAgICAgIHByb2dyYW1fcHJpY2U6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncHJvZ3JhbV9wcmljZScpWzBdLnZhbHVlLFxuICAgICAgdG90YWxfcHJpY2U6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAndG90YWxfcHJpY2UnKVswXS52YWx1ZSxcbiAgICAgIHBhaWRfbGV2ZWw6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncGFpZF9sZXZlbCcpWzBdLnZhbHVlLFxuICAgICAgdGVybXM6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAndGVybXMnKVswXS52YWx1ZSxcbiAgICAgIGFnZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdhZ2UnKVswXS52YWx1ZSxcbiAgICAgIGNvdW50cnk6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnY291bnRyeScpWzBdLnZhbHVlLFxuICAgICAgc3RhdGU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3RhdGUnKVswXS52YWx1ZSxcbiAgICAgIGFjYWRlbWljX3BsYW46IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnYWNhZGVtaWNfcGxhbicpWzBdLnZhbHVlLFxuICAgICAgY29kZV9yZWZlcnM6IHRoaXMucGFyc2VOdW1iZXIoZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdjb2RlX3JlZmVycycpWzBdLnZhbHVlKSxcbiAgICAgIGNvZGVfY29kOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2NvZGVfY29kJylbMF0udmFsdWUsXG4gICAgfVxuICAgIHJldHVybiByZXF1ZXN0O1xuICB9XG5cbiAgY2hhbmdlU3RlcChzdGVwOiBudW1iZXIpIHtcbiAgICB0aGlzLmN1cnJlbnRTdGVwID0gc3RlcDtcbiAgfVxuXG4gIHBhcnNlTnVtYmVyKHZhbHVlOiBhbnkpOiBudW1iZXIgfCBudWxsIHtcbiAgICBjb25zdCBwYXJzZWRWYWx1ZSA9IHBhcnNlRmxvYXQodmFsdWUpO1xuICAgIHJldHVybiBpc05hTihwYXJzZWRWYWx1ZSkgPyBudWxsIDogcGFyc2VkVmFsdWU7XG4gIH1cbn1cbiIsIjxkaXYgKm5nSWY9XCJhbGxvd2VkUm9sZSgpIDsgZWxzZSBVbmF1dGhvcml6ZWRcIiBjbGFzcz1cImNvbnRhaW5lciBmbGV4IGZsZXgtY29sdW1uIGJnLXdoaXRlIGJvcmRlci1yb3VuZC0yeGwgcC0zIGNvbnRhaW5lciBhbmltYXRlX19hbmltYXRlZCBhbmltYXRlX19mYWRlSW5VcFwiPlxuXG4gIDxzcGFuICpuZ0lmPVwiZWRpdENvZFwiIGNsYXNzPVwiYmcteWVsbG93LTUwMCBwLTIgYm9yZGVyLXJvdW5kIG1iLTIgdy1hdXRvIHRleHQtbGcgZm9udC1zZW1pYm9sZFwiIHN0eWxlPVwiY29sb3I6IHdoaXRlO1wiPnt7IGZvcm1UaXRsZSB9fTwvc3Bhbj5cbiAgPHNwYW4gKm5nSWY9XCIhZWRpdENvZCAmJiAhZGF0YUZyb21QcmV2aXVzQ29kRGF0YT8uY29kX3Jlbm92YXRpb25cIiBjbGFzcz1cImJnLXByaW1hcnkgcC0yIGJvcmRlci1yb3VuZCBtYi0yIHctYXV0byB0ZXh0LWxnIGZvbnQtc2VtaWJvbGRcIj57eyBmb3JtVGl0bGUgfX08L3NwYW4+XG4gIDxzcGFuICpuZ0lmPVwiIWVkaXRDb2QgJiYgZGF0YUZyb21QcmV2aXVzQ29kRGF0YT8uY29kX3Jlbm92YXRpb24gPT0gdHJ1ZVwiIGNsYXNzPVwicC0yIGJvcmRlci1yb3VuZCBtYi0yIHctYXV0byB0ZXh0LWxnIGZvbnQtc2VtaWJvbGRcIiBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6IzFkYTc1MDsgY29sb3I6IHdoaXRlO1wiPnt7IGZvcm1UaXRsZSB9fTwvc3Bhbj5cblxuICA8cC10YWJWaWV3IFthY3RpdmVJbmRleF09XCJjdXJyZW50U3RlcFwiIChhY3RpdmVJbmRleENoYW5nZSk9XCJjdXJyZW50U3RlcCA9ICRldmVudFwiIFtzY3JvbGxhYmxlXT1cInRydWVcIj5cbiAgICA8cC10YWJQYW5lbCBsZWZ0SWNvbj1cInBpIHBpLXN0YXJcIiBoZWFkZXI9XCIxLiBQbGFuZXMgeSBjb252ZW5pb3NcIj5cbiAgICAgIDxhcHAtY29kLWZvcm0tc3RlcC1vbmUgKGNoYW5nZVN0ZXBFdmVudCk9XCJjaGFuZ2VTdGVwKCRldmVudClcIiBbaW5pdGlhbERhdGFdPVwiY291cnNlU2VsZWN0XCIgW2RhdGFQcmV2aXVzQ29kRGF0YV09XCJkYXRhRnJvbVByZXZpdXNDb2REYXRhXCIgW2lzRWRpdENvZF09XCJlZGl0Q29kXCIgW2NvdXJzZVNlbGVjdFJlbm92YXRpb25dPVwiQ291cnNlU2VsZWN0UmVub3ZhdGlvblwiIFtpc1Jlbm92YXRpb25dPVwiaXNSZW5vdmF0aW9uXCIgY2xhc3M9XCJwLTFcIj48L2FwcC1jb2QtZm9ybS1zdGVwLW9uZT5cbiAgICA8L3AtdGFiUGFuZWw+XG4gICAgPHAtdGFiUGFuZWwgbGVmdEljb249XCJwaSBwaS1pZC1jYXJkXCIgaGVhZGVyPVwiMi4gRGF0b3MgZGVsIGVzdHVkaWFudGVcIj5cbiAgICAgIDxhcHAtY29kLWZvcm0tc3RlcC10d28gKGNoYW5nZVN0ZXBFdmVudCk9XCJjaGFuZ2VTdGVwKCRldmVudClcIiBbaW5pdGlhbERhdGFdPVwiZGF0YUZyb21QcmV2aXVzQ29kRGF0YVwiIFtpc0VkaXRDb2RdPVwiZWRpdENvZFwiIGNsYXNzPVwicC0xXCI+PC9hcHAtY29kLWZvcm0tc3RlcC10d28+XG4gICAgPC9wLXRhYlBhbmVsPlxuICAgIDxwLXRhYlBhbmVsIGxlZnRJY29uPVwicGkgcGktdXNlci1lZGl0XCIgaGVhZGVyPVwiMy4gRGF0b3MgZGVsIGFjdWRpZW50ZVwiPlxuICAgICAgPGFwcC1jb2QtZm9ybS1zdGVwLXRocmVlICAoY2hhbmdlU3RlcEV2ZW50KT1cImNoYW5nZVN0ZXAoJGV2ZW50KVwiIFtpbml0aWFsRGF0YV09XCJkYXRhRnJvbVByZXZpdXNDb2REYXRhXCIgW2lzRWRpdENvZF09XCJlZGl0Q29kXCIgY2xhc3M9XCJwLTFcIj48L2FwcC1jb2QtZm9ybS1zdGVwLXRocmVlPlxuICAgIDwvcC10YWJQYW5lbD5cbiAgICA8cC10YWJQYW5lbCBsZWZ0SWNvbj1cInBpIHBpLW1vbmV5LWJpbGxcIiBoZWFkZXI9XCI0LiBWYWxvcmVzXCI+XG4gICAgICA8YXBwLWNvZC1mb3JtLXN0ZXAtZm91ciAoY2hhbmdlU3RlcEV2ZW50KT1cImNoYW5nZVN0ZXAoJGV2ZW50KVwiIChmaW5hbmNpbmdEYXRhKT1cInNhdmVGaW5hbmNpbmdEYXRhKCRldmVudClcIiBbaW5pdGlhbERhdGFdPVwiZGF0YUZyb21QcmV2aXVzQ29kRGF0YVwiIFtpc0VkaXRDb2RdPVwiZWRpdENvZFwiIGNsYXNzPVwicC0xXCI+PC9hcHAtY29kLWZvcm0tc3RlcC1mb3VyPlxuICAgIDwvcC10YWJQYW5lbD5cbiAgICA8cC10YWJQYW5lbCBsZWZ0SWNvbj1cInBpIHBpLWV5ZVwiIGhlYWRlcj1cIjUuIE9ic2VydmFjaW9uZXNcIj5cbiAgICAgIDxhcHAtY29kLWZvcm0tc3RlcC1maXZlIChjaGFuZ2VTdGVwRXZlbnQpPVwiY2hhbmdlU3RlcCgkZXZlbnQpXCIgW3VzZXJSb2xlXT1cInVzZXJSb2xlXCIgW2luaXRpYWxEYXRhXT1cImRhdGFGcm9tUHJldml1c0NvZERhdGFcIiAoYWN0aW9uKT1cImdldEZvcm1BY3Rpb24oJGV2ZW50KVwiIFtpc0VkaXRDb2RdPVwiZWRpdENvZFwiIFtpc1Jlbm92YXRpb25dPVwiaXNSZW5vdmF0aW9uXCIgY2xhc3M9XCJwLTFcIj48L2FwcC1jb2QtZm9ybS1zdGVwLWZpdmU+XG4gICAgPC9wLXRhYlBhbmVsPlxuICA8L3AtdGFiVmlldz5cblxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjVW5hdXRob3JpemVkPlxuICA8c3BhbiBjbGFzcz1cImZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBmb250LWJvbGQgcC0yIGJnLXllbGxvdy0yMDAgYm9yZGVyLXJvdW5kLWxnIHctZnVsbFwiPlxuICAgIE5vIHRpZW5lcyBsb3MgcGVybWlzb3MgcGFyYSBhY2NlZGVyIGEgZXN0YSBmdW5jaW9uYWxpZGFkLCBjb211bsOtY2F0ZSBjb24gZWwgZGVzYXJyb2xsYWRvci5cbiAgPC9zcGFuPlxuPC9uZy10ZW1wbGF0ZT5cblxuXG48aXB0LWxvYWRlciAqbmdJZj1cImlzTG9hZGluZ1wiIFtpc0RpYWxvZ109XCJ0cnVlXCIgW21lc3NhZ2VdPVwibG9hZGVyTWVzc2FnZVwiPjwvaXB0LWxvYWRlcj5cbiJdfQ==
|
|
417
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvZC9jb2QtZm9ybS9jb2QtZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29kL2NvZC1mb3JtL2NvZC1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQTRCLE1BQU0sZUFBZSxDQUFDO0FBRTVHLE9BQU8sSUFBSSxNQUFNLGFBQWEsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFXL0IsTUFBTSxPQUFPLGdCQUFnQjtJQXlCM0IsWUFDVSxXQUF3QixFQUN4QixlQUF1QyxFQUN2QyxlQUFnQyxFQUNoQyxpQkFBb0M7UUFIcEMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsb0JBQWUsR0FBZixlQUFlLENBQXdCO1FBQ3ZDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBcEJwQyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFHN0MsaUJBQVksR0FBYTtZQUMvQixDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFO1NBQ3RDLENBQUM7UUFFSyxnQkFBVyxHQUFXLENBQUMsQ0FBQztRQUN4QixjQUFTLEdBQVcsa0NBQWtDLENBQUM7UUFFdkQsY0FBUyxHQUFXLENBQUMsQ0FBQztRQUV0QixjQUFTLEdBQVksS0FBSyxDQUFDO1FBQzNCLGtCQUFhLEdBQVcsRUFBRSxDQUFDO1FBQzNCLDRCQUF1QixHQUF3QixJQUFJLENBQUM7UUFRekQsSUFBSSxD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LENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSztZQUMzRSxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWM7WUFDbEMsYUFBYSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxLQUFLLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUs7WUFDN0UsV0FBVyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxLQUFLLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUs7WUFDekUsVUFBVSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxLQUFLLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUs7WUFDdkUsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUs7WUFDN0QsR0FBRyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUs7WUFDekQsT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUs7WUFDakUsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUs7WUFDN0QsYUFBYSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxLQUFLLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUs7WUFDN0UsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEtBQUssYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1lBQzNGLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLO1NBQ3BFLENBQUE7UUFDRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRUQsVUFBVSxDQUFDLElBQVk7UUFDckIsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7SUFDMUIsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFVO1FBQ3BCLE1BQU0sV0FBVyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN0QyxPQUFPLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUM7SUFDakQsQ0FBQzs7NkdBdlpVLGdCQUFnQjtpR0FBaEIsZ0JBQWdCLDBVQ2I3QixxdkZBa0NBOzJGRHJCYSxnQkFBZ0I7a0JBTDVCLFNBQVM7K0JBQ0UsY0FBYztxTUFNZixzQkFBc0I7c0JBQTlCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxzQkFBc0I7c0JBQTlCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFFSSxZQUFZO3NCQUFyQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcywgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCBTd2FsIGZyb20gJ3N3ZWV0YWxlcnQyJztcbmltcG9ydCB7IENyZWF0ZUNPRFJxLCBJVXBkYXRlQ09EUnEgfSBmcm9tICcuLi8uLi9jb3JlL21vZGVscy9jb2QvY29kLXJxLm1vZGVsJztcbmltcG9ydCB7IENvbW1lcmNpYWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9zZXJ2aWNlcy9jb21tZXJjaWFsLXNlcnZpY2UvY29tZXJjaWFsLnNlcnZpY2UnO1xuaW1wb3J0IHsgQmFzZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL3V0aWxzL2Jhc2Utc2VydmljZS9iYXNlLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29kRm9ybUNvbnRyb2xzLCBDb250cm9sIH0gZnJvbSAnLi4vbG9naWMvY29kLWZvcm0tY29udHJvbHMnO1xuaW1wb3J0IHsgTG9jYWxTdG9yYWdlQ09EU2VydmljZSB9IGZyb20gJy4uL2xvZ2ljL2xvY2FsLXN0b3JhZ2UtY29kLnNlcnZpY2UnO1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXB0LWNvZC1mb3JtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvZC1mb3JtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbXVxufSlcbmV4cG9ydCBjbGFzcyBDb2RGb3JtQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuXG4gIEBJbnB1dCgpIGRhdGFGcm9tUHJldml1c0NvZERhdGE/OiBhbnk7XG4gIEBJbnB1dCgpIGNvdXJzZVNlbGVjdD86IGFueTtcbiAgQElucHV0KCkgaXNOZXdDb2QhOiBib29sZWFuO1xuICBASW5wdXQoKSBlZGl0Q29kITogYm9vbGVhbjtcbiAgQElucHV0KCkgQ291cnNlU2VsZWN0UmVub3ZhdGlvbiE6YW55O1xuICBASW5wdXQoKSBpc1Jlbm92YXRpb24hOmJvb2xlYW47XG5cbiAgQE91dHB1dCgpIG9rQ3JlYXRlZENPRCA9IG5ldyBFdmVudEVtaXR0ZXI8Qm9vbGVhbj4oKTtcbiAgc3Vic2NyaXB0aW9uPzogU3Vic2NyaXB0aW9uO1xuXG4gIHByaXZhdGUgYWxsb3dlZFJvbGVzOiBudW1iZXJbXSA9IFtcbiAgICAxLCAzMCwgMzEsIDMyLCA0MCwgNDEsIDQyLCA1MCwgNTEsIDUyLFxuICBdO1xuXG4gIHB1YmxpYyBjdXJyZW50U3RlcDogbnVtYmVyID0gMDtcbiAgcHVibGljIGZvcm1UaXRsZTogc3RyaW5nID0gJ0Zvcm11bGFyaW8gcGFyYSBjcmVhY2nDs24gZGVsIENPRCc7XG4gIHB1YmxpYyB1c2VyUm9sZTogbnVtYmVyO1xuICBwdWJsaWMgZm9ybVN0ZXBzOiBudW1iZXIgPSA1O1xuICBwdWJsaWMgZmluYW5jaW5nRGF0YT86IGFueVtdO1xuICBwdWJsaWMgaXNMb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XG4gIHB1YmxpYyBsb2FkZXJNZXNzYWdlOiBzdHJpbmcgPSAnJztcbiAgcHVibGljIGNvZENyZWF0aW9uU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gfCBudWxsID0gbnVsbDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGJhc2VTZXJ2aWNlOiBCYXNlU2VydmljZSxcbiAgICBwcml2YXRlIGxvY2FsU3RvcmFnZUNPRDogTG9jYWxTdG9yYWdlQ09EU2VydmljZSxcbiAgICBwcml2YXRlIGNvZEZvcm1Db250cm9sczogQ29kRm9ybUNvbnRyb2xzLFxuICAgIHByaXZhdGUgY29tbWVyY2lhbFNlcnZpY2U6IENvbW1lcmNpYWxTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMudXNlclJvbGUgPSB0aGlzLmJhc2VTZXJ2aWNlLmdldFVzZXJSb2xlKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZXNbJ2VkaXRDb2QnXSAmJiB0aGlzLmRhdGFGcm9tUHJldml1c0NvZERhdGEpIHtcbiAgICAgIGlmICh0aGlzLmVkaXRDb2QpIHtcbiAgICAgICAgaWYgKCF0aGlzLmRhdGFGcm9tUHJldml1c0NvZERhdGEuZWRpdF9jb3Vyc2VfcGF5bWVudCkge1xuICAgICAgICAgIFN3YWwuZmlyZSh7XG4gICAgICAgICAgICB0aXRsZTogJ1F1ZXJpZG8gYXNlc29yJyxcbiAgICAgICAgICAgIHRleHQ6ICdTb2xvIHB1ZWRlIGVkaXRhciBEYXRvcyBkZWwgZXN0dWRpYW50ZScsXG4gICAgICAgICAgICBpY29uOiAnd2FybmluZydcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICAgIHRoaXMuZm9ybVRpdGxlID0gJ0Zvcm11bGFyaW8gcGFyYSB2ZXJpZmljYXIgeSBlZGl0YXIgaW5mb3JtYWNpw7NuIGRlbCBDT0QgYWN0dWFsJztcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5kYXRhRnJvbVByZXZpdXNDb2REYXRhPy5jb2RfcmVub3ZhdGlvbiA9PSBmYWxzZSAmJiB0aGlzLmVkaXRDb2QgPT0gZmFsc2UpIHtcbiAgICAgICAgdGhpcy5mb3JtVGl0bGUgPSAnRm9ybXVsYXJpbyBwYXJhIGNyZWFjacOzbiBkZWwgQ09EJztcbiAgICAgIH1lbHNlIGlmKHRoaXMuZGF0YUZyb21QcmV2aXVzQ29kRGF0YS5jb2RfcmVub3ZhdGlvbiA9PSB0cnVlICYmIHRoaXMuZWRpdENvZCA9PSBmYWxzZSl7XG4gICAgICAgIHRoaXMuZm9ybVRpdGxlID0gJ0Zvcm11bGFyaW8gcGFyYSBsYSByZW5vdmFjaW9uIGRlbCBDT0QnO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBhbGxvd2VkUm9sZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5hbGxvd2VkUm9sZXMuaW5jbHVkZXModGhpcy51c2VyUm9sZSk7XG4gIH1cblxuICBnZXRDb2RieUNvZGUoKSB7XG4gICAgLy8gVE9ETzogVHJhZXIgQ09EIHBvciBjw7NkaWdvIHkgcGludGFybG9cbiAgfVxuXG5cbiAgc2F2ZUZpbmFuY2luZ0RhdGEoZGF0YTogYW55W10pIHtcbiAgICBpZiAoZGF0YSkge1xuICAgICAgY29uc3QgZGF0ZXM6IHN0cmluZ1tdID0gW107XG4gICAgICBkYXRhLmZvckVhY2gocCA9PiB7XG4gICAgICAgIGNvbnN0IGRhdGUgPSBwWzJdO1xuICAgICAgICBkYXRlcy5wdXNoKGRhdGUpO1xuICAgICAgfSlcbiAgICAgIHRoaXMuZmluYW5jaW5nRGF0YSA9IGRhdGVzO1xuICAgIH1cbiAgfVxuXG4gIGdldEZvcm1BY3Rpb24oYWN0aW9uOiBzdHJpbmcpIHtcbiAgICBpZiAoIXRoaXMuZmluYW5jaW5nRGF0YSAmJiB0aGlzLmxvY2FsU3RvcmFnZUNPRC5nZXRDb2RGb3JtRGF0YSg0LCAncGF5bWVudF9tZXRob2QnKSA9PT0gJzEnKSB7XG4gICAgICBTd2FsLmZpcmUoe1xuICAgICAgICB0aXRsZTogJ1F1ZXJpZG8gYXNlc29yJyxcbiAgICAgICAgdGV4dDogJ0RlYmUgaGFjZXIgZWwgY8OhbGN1bG8gZGUgbGFzIGN1b3RhcyBlbiBlbCBwYXNvIDQnLFxuICAgICAgICBpY29uOiAnZXJyb3InXG4gICAgICB9KVxuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCB0b3RhbERhdGE6IGFueVtdID0gW107XG5cbiAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHRoaXMuY29kRm9ybUNvbnRyb2xzLmdldENvbnRyb2xWYWx1ZXMoKS5zdWJzY3JpYmUoKGNvbnRyb2xzKSA9PiB7XG4gICAgICAgIGZvciAobGV0IGkgPSAxOyBpIDw9IHRoaXMuZm9ybVN0ZXBzOyBpKyspIHtcbiAgICAgICAgICBsZXQgY29udHJvbHNCeVN0ZXA6IENvbnRyb2xbXSA9IGNvbnRyb2xzW2ktMV07XG4gICAgICAgICAgICBjb250cm9sc0J5U3RlcC5mb3JFYWNoKGNvbnRyb2wgPT4ge1xuICAgICAgICAgICAgICBsZXQgdmFsdWUgPSB0aGlzLmxvY2FsU3RvcmFnZUNPRC5nZXRDb2RGb3JtRGF0YShpLCBjb250cm9sLm5hbWUpO1xuICAgICAgICAgICAgICAvLyBDYW1iaWFyIFRydWUvRmFsc2UgZGVsIG11bHRpY3VsdHVyYWxpc21vIDEvMFxuICAgICAgICAgICAgICBpZiAodmFsdWUgPT09ICdmYWxzZScgJiYgY29udHJvbC5kZXNjcmlwdGlvbiA9PT0gJ011bHRpY3VsdHVyYWxpc21vJykge1xuICAgICAgICAgICAgICAgIHRvdGFsRGF0YS5wdXNoKHtcbiAgICAgICAgICAgICAgICAgIGNvbnRyb2w6IGNvbnRyb2wubmFtZSxcbiAgICAgICAgICAgICAgICAgIGlzUmVxdWlyZWQ6IGNvbnRyb2wucmVxdWlyZWQsXG4gICAgICAgICAgICAgICAgICB2YWx1ZTogJzAnLFxuICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IGNvbnRyb2wuZGVzY3JpcHRpb25cbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICB9IGVsc2UgaWYgKHZhbHVlID09PSAndHJ1ZScgJiYgY29udHJvbC5kZXNjcmlwdGlvbiA9PT0gJ011bHRpY3VsdHVyYWxpc21vJykge1xuICAgICAgICAgICAgICAgIHRvdGFsRGF0YS5wdXNoKHtcbiAgICAgICAgICAgICAgICAgIGNvbnRyb2w6IGNvbnRyb2wubmFtZSxcbiAgICAgICAgICAgICAgICAgIGlzUmVxdWlyZWQ6IGNvbnRyb2wucmVxdWlyZWQsXG4gICAgICAgICAgICAgICAgICB2YWx1ZTogJzEnLFxuICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IGNvbnRyb2wuZGVzY3JpcHRpb25cbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRvdGFsRGF0YS5wdXNoKHtcbiAgICAgICAgICAgICAgICAgIGNvbnRyb2w6IGNvbnRyb2wubmFtZSxcbiAgICAgICAgICAgICAgICAgIGlzUmVxdWlyZWQ6IGNvbnRyb2wucmVxdWlyZWQsXG4gICAgICAgICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBjb250cm9sLmRlc2NyaXB0aW9uXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIC8vIFZhbGlkYXIgZXJyb3Jlc1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0b3RhbERhdGEubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3QgZWxlbWVudCA9IHRvdGFsRGF0YVtpXTtcbiAgICAgICAgaWYgKCFlbGVtZW50LnZhbHVlICYmIGVsZW1lbnQuaXNSZXF1aXJlZCkge1xuICAgICAgICAgIFN3YWwuZmlyZSh7XG4gICAgICAgICAgICB0aXRsZTogJ0Vycm9yIEZvcm0gQWN0aW9uIFZhbGlkYXRlIEVycm9yJyxcbiAgICAgICAgICAgIHRleHQ6IGBSZXZpc2FyIGVsIGNhbXBvOiBcIiR7ZWxlbWVudC5kZXNjcmlwdGlvbn1cImAsXG4gICAgICAgICAgICBpY29uOiAnZXJyb3InXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKGFjdGlvbiA9PT0gJ2NyZWF0ZScpIHRoaXMuY3JlYXRlQ09EKHRvdGFsRGF0YSk7XG4gICAgICBpZiAoYWN0aW9uID09PSAndXBkYXRlJykgdGhpcy51cGRhdGVDT0QodG90YWxEYXRhKTtcbiAgICB9KVxuXG4gICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcblxuICB9XG5cbiAgdXBkYXRlQ09EKHRvdGFsRGF0YTogYW55W10pIHtcbiAgICBpZiAodGhpcy5jb2RDcmVhdGlvblN1YnNjcmlwdGlvbiAmJiAhdGhpcy5jb2RDcmVhdGlvblN1YnNjcmlwdGlvbi5jbG9zZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xuICAgIHRoaXMubG9hZGVyTWVzc2FnZSA9ICdFZGl0YW5kbyBDT0QsIGVzcGVyZSB1biBtb21lbnRvJ1xuICAgIGxldCByZXF1ZXN0OiBJVXBkYXRlQ09EUnEgPSB0aGlzLmdldFVwZGF0ZUNPRCh0b3RhbERhdGEpO1xuICAgIHRoaXMuY29tbWVyY2lhbFNlcnZpY2UudXBkYXRlQ09EKHJlcXVlc3QpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAocmVzcG9uc2U6IGFueSkgPT4ge1xuICAgICAgICBpZiAocmVzcG9uc2UubWVzc2FnZS5jb2RlID09PSAxKSB7XG4gICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLmxvYWRlck1lc3NhZ2UgPSAnJztcbiAgICAgICAgICBTd2FsLmZpcmUoe1xuICAgICAgICAgICAgdGl0bGU6ICdQZXJmZWN0byEnLFxuICAgICAgICAgICAgdGV4dDogJ0VsIENPRCBoYSBzaWRvIEVkaXRhZG8gZXhpdG9zYW1lbnRlLicsXG4gICAgICAgICAgICBpY29uOiAnc3VjY2VzcydcbiAgICAgICAgICB9KVxuICAgICAgICAgIHRoaXMubG9jYWxTdG9yYWdlQ09ELmNsZWFyRGF0YSgpO1xuICAgICAgICAgIHRoaXMub2tDcmVhdGVkQ09ELmVtaXQodHJ1ZSk7XG4gICAgICAgIH0gZWxzZSBpZiAocmVzcG9uc2UubWVzc2FnZS5jb2RlID09PSA0KSB7XG4gICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLmxvYWRlck1lc3NhZ2UgPSAnJztcbiAgICAgICAgICBjb25zdCBlcnJvck1lc3NhZ2VzID0gKHJlc3BvbnNlLmRhdGEuZXJyb3JzIGFzIGFueVtdKS5tYXAoZXJyb3IgPT4gYC0gJHtlcnJvci5tZXNzYWdlfWApLmpvaW4oJzxicj4nKTtcblxuICAgICAgICAgIFN3YWwuZmlyZSh7XG4gICAgICAgICAgICB0aXRsZTogJ1JldmlzYXIgbG8gc2VsZWNjaW9uYWRvIGVuIGxvcyBjYW1wb3MnLFxuICAgICAgICAgICAgaHRtbDogYCR7ZXJyb3JNZXNzYWdlc31gLFxuICAgICAgICAgICAgaWNvbjogJ3dhcm5pbmcnXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLmxvYWRlck1lc3NhZ2UgPSAnJztcblxuICAgICAgICAgIFN3YWwuZmlyZSh7XG4gICAgICAgICAgICB0aXRsZTogJ1dhcm5pbmchJyxcbiAgICAgICAgICAgIHRleHQ6IHJlc3BvbnNlLm1lc3NhZ2UubWVzc2FnZSxcbiAgICAgICAgICAgIGljb246ICdlcnJvcidcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgZXJyb3I6IChlcnI6IGFueSkgPT4ge1xuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICB0aGlzLmxvYWRlck1lc3NhZ2UgPSAnJztcbiAgICAgICAgU3dhbC5maXJlKHtcbiAgICAgICAgICB0aXRsZTogJ0Vycm9yIGluIGNvZCBjcmVhdGlvbicsXG4gICAgICAgICAgdGV4dDogZXJyLm1lc3NhZ2UsXG4gICAgICAgICAgaWNvbjogJ2Vycm9yJ1xuICAgICAgICB9KVxuICAgICAgfSxcbiAgICAgIGNvbXBsZXRlOiAoKSA9PiB7XG4gICAgICAgIHRoaXMuY29kQ3JlYXRpb25TdWJzY3JpcHRpb24gPSBudWxsO1xuICAgICAgfVxuICAgIH0pXG5cbiAgfVxuXG4gIGNyZWF0ZUNPRCh0b3RhbERhdGE6IGFueVtdKSB7XG4gICAgaWYgKHRoaXMuY29kQ3JlYXRpb25TdWJzY3JpcHRpb24gJiYgIXRoaXMuY29kQ3JlYXRpb25TdWJzY3JpcHRpb24uY2xvc2VkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICB0aGlzLmxvYWRlck1lc3NhZ2UgPSAnQ3JlYW5kbyBDT0QsIGVzcGVyZSB1biBtb21lbnRvJ1xuICAgIGxldCByZXF1ZXN0OiBDcmVhdGVDT0RScSA9IHRoaXMuZ2V0Q3JlYXRlQ09EKHRvdGFsRGF0YSk7XG4gICAgdGhpcy5jb21tZXJjaWFsU2VydmljZS5jcmVhdGVDT0QocmVxdWVzdCkuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IChyZXNwb25zZTogYW55KSA9PiB7XG4gICAgICAgIGlmIChyZXNwb25zZS5tZXNzYWdlLmNvZGUgPT09IDEpIHtcbiAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgIHRoaXMubG9hZGVyTWVzc2FnZSA9ICcnO1xuICAgICAgICAgIFN3YWwuZmlyZSh7XG4gICAgICAgICAgICB0aXRsZTogJ1BlcmZlY3RvIScsXG4gICAgICAgICAgICB0ZXh0OiAnRWwgQ09EIGhhIHNpZG8gY3JlYWRvIGV4aXRvc2FtZW50ZS4nLFxuICAgICAgICAgICAgaWNvbjogJ3N1Y2Nlc3MnXG4gICAgICAgICAgfSlcbiAgICAgICAgICB0aGlzLmxvY2FsU3RvcmFnZUNPRC5jbGVhckRhdGEoKTtcbiAgICAgICAgICB0aGlzLm9rQ3JlYXRlZENPRC5lbWl0KHRydWUpO1xuICAgICAgICB9ZWxzZSBpZihyZXNwb25zZS5tZXNzYWdlLmNvZGUgPT09IDMpe1xuICAgICAgICAgIGxldCBhbGVydEh0bWwgPSBgXG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm15LWN1c3RvbS1hbGVydFwiPlxuICAgICAgICAgICAgICA8aDI+V2FybmluZyE8L2gyPlxuICAgICAgICAgIGA7XG4gICAgICAgICAgICBpZiAoIXJlc3BvbnNlLmRhdGEud2FybmluZy5hdmVyYWdlX3Njb3JlKSB7XG4gICAgICAgICAgICAgICAgYWxlcnRIdG1sICs9IGA8cD5ObyBwYXPDsyBlbCBwcm9tZWRpbyBmaW5hbDwvcD48YnI+YDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghcmVzcG9uc2UuZGF0YS53YXJuaW5nLm5vbl9hdHRlbmRhbmNlKSB7XG4gICAgICAgICAgICAgICAgYWxlcnRIdG1sICs9IGA8cD5UaWVuZSBtw6FzIGRlbCAyNSUgZGUgaW5hc2lzdGVuY2lhczwvcD48YnI+YDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghcmVzcG9uc2UuZGF0YS53YXJuaW5nLm91dHN0YW5kaW5nX3BheW1lbnRzKSB7XG4gICAgICAgICAgICAgICAgYWxlcnRIdG1sICs9IGA8cD5UaWVuZSBwYWdvcyBwZW5kaWVudGVzPC9wPmA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgYWxlcnRIdG1sICs9IGA8L2Rpdj5gO1xuICAgICAgICAgIFN3YWwuZmlyZSh7XG4gICAgICAgICAgICBodG1sOiBhbGVydEh0bWwsXG4gICAgICAgICAgICBpY29uOiAnZXJyb3InLFxuICAgICAgICAgICAgLy8gc2hvd0NhbmNlbEJ1dHRvbjogdHJ1ZSxcbiAgICAgICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiAnQ29uZmlybWFyJyxcbiAgICAgICAgICAgIC8vIGNhbmNlbEJ1dHRvblRleHQ6ICdDYW5jZWxhcicsXG4gICAgICAgICAgfSlcbiAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICB9IGVsc2UgaWYgKHJlc3BvbnNlLm1lc3NhZ2UuY29kZSA9PT0gNCkge1xuICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgdGhpcy5sb2FkZXJNZXNzYWdlID0gJyc7XG4gICAgICAgICAgY29uc3QgZXJyb3JNZXNzYWdlcyA9IChyZXNwb25zZS5kYXRhLmVycm9ycyBhcyBhbnlbXSkubWFwKGVycm9yID0+IGAtICR7ZXJyb3IubWVzc2FnZX1gKS5qb2luKCc8YnI+Jyk7XG5cbiAgICAgICAgICBTd2FsLmZpcmUoe1xuICAgICAgICAgICAgdGl0bGU6ICdSZXZpc2FyIGxvIHNlbGVjY2lvbmFkbyBlbiBsb3MgY2FtcG9zJyxcbiAgICAgICAgICAgIGh0bWw6IGAke2Vycm9yTWVzc2FnZXN9YCxcbiAgICAgICAgICAgIGljb246ICd3YXJuaW5nJ1xuICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgdGhpcy5sb2FkZXJNZXNzYWdlID0gJyc7XG5cbiAgICAgICAgICBTd2FsLmZpcmUoe1xuICAgICAgICAgICAgdGl0bGU6ICdXYXJuaW5nIScsXG4gICAgICAgICAgICB0ZXh0OiByZXNwb25zZS5tZXNzYWdlLm1lc3NhZ2UsXG4gICAgICAgICAgICBpY29uOiAnZXJyb3InXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5sb2FkZXJNZXNzYWdlID0gJyc7XG4gICAgICAgIFN3YWwuZmlyZSh7XG4gICAgICAgICAgdGl0bGU6ICdFcnJvciBpbiBjb2QgY3JlYXRpb24nLFxuICAgICAgICAgIHRleHQ6IGVyci5tZXNzYWdlLFxuICAgICAgICAgIGljb246ICdlcnJvcidcbiAgICAgICAgfSlcbiAgICAgIH0sXG4gICAgICBjb21wbGV0ZTogKCkgPT4ge1xuICAgICAgICB0aGlzLmNvZENyZWF0aW9uU3Vic2NyaXB0aW9uID0gbnVsbDtcbiAgICAgIH1cbiAgICB9KVxuXG4gIH1cblxuICBnZXRDcmVhdGVDT0QoZGF0YTogYW55W10pOiBDcmVhdGVDT0RScSB7XG4gICAgbGV0IHJlcXVlc3Q6IENyZWF0ZUNPRFJxID0ge1xuICAgICAgdG9rZW46IHRoaXMuYmFzZVNlcnZpY2UuZ2V0VXNlclRva2VuKCksXG4gICAgICBzdHVkZW50X25hbWU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3R1ZGVudF9uYW1lJylbMF0udmFsdWUsXG4gICAgICBzdHVkZW50X2xhc3RfbmFtZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X2xhc3RfbmFtZScpWzBdLnZhbHVlLFxuICAgICAgbmlja25hbWU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbmlja25hbWUnKVswXS52YWx1ZSxcbiAgICAgIHN0dWRlbnRfZW1haWw6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3R1ZGVudF9lbWFpbCcpWzBdLnZhbHVlLFxuICAgICAgc3R1ZGVudF9waG9uZV9pbmRpY2F0aXZlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWRlbnRfcGhvbmVfaW5kaWNhdGl2ZScpWzBdLnZhbHVlLFxuICAgICAgc3R1ZGVudF9waG9uZV9udW1iZXI6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3R1ZGVudF9waG9uZV9udW1iZXInKVswXS52YWx1ZSxcbiAgICAgIGdlbmRlcjogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdnZW5kZXInKVswXS52YWx1ZSxcbiAgICAgIGJpcnRoZGF0ZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdiaXJ0aGRhdGUnKVswXS52YWx1ZSxcbiAgICAgIGNpdHk6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnY2l0eScpWzBdLnZhbHVlLFxuICAgICAgc3R1ZGVudF9pZF9jYXJkX3R5cGU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3R1ZGVudF9pZF9jYXJkX3R5cGUnKVswXS52YWx1ZSxcbiAgICAgIHN0dWRlbnRfaWRfY2FyZDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X2lkX2NhcmQnKVswXS52YWx1ZSxcbiAgICAgIHBhc3N3b3JkOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3Bhc3N3b3JkJylbMF0udmFsdWUsXG4gICAgICBuZWVkQXRlbmRhbnQ6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbmVlZEF0ZW5kYW50JylbMF0udmFsdWUsXG4gICAgICBwYXJlbnRfbmFtZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXJlbnRfbmFtZScpWzBdLnZhbHVlLFxuICAgICAgcGFyZW50X2xhc3RfbmFtZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXJlbnRfbGFzdF9uYW1lJylbMF0udmFsdWUsXG4gICAgICBwYXJlbnRfaWRfY2FyZF90eXBlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3BhcmVudF9pZF9jYXJkX3R5cGUnKVswXS52YWx1ZSxcbiAgICAgIHBhcmVudF9pZF9jYXJkOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3BhcmVudF9pZF9jYXJkJylbMF0udmFsdWUsXG4gICAgICBwYXJlbnRfcGhvbmVfaW5kaWNhdGl2ZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXJlbnRfcGhvbmVfaW5kaWNhdGl2ZScpWzBdLnZhbHVlLFxuICAgICAgcGFyZW50X3Bob25lX251bWJlcjogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXJlbnRfcGhvbmVfbnVtYmVyJylbMF0udmFsdWUsXG4gICAgICBwYXJlbnRfb2NjdXBhdGlvbjogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXJlbnRfb2NjdXBhdGlvbicpWzBdLnZhbHVlLFxuICAgICAgcGFyZW50X29mZmljZV9hZGRyZXNzOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3BhcmVudF9hZGRyZXNzJylbMF0udmFsdWUsXG4gICAgICBzb2NpYWxfc3RyYXR1bTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHJhdHVtJylbMF0udmFsdWUsXG4gICAgICBjaXZpbF9zdGF0dXM6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnY2l2aWxfc3RhdHVzJylbMF0udmFsdWUsXG4gICAgICBlZHVjYXRpb25hbF9sZXZlbDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdncmFkZScpWzBdLnZhbHVlLFxuICAgICAgc3R1ZGVudF9hZGRyZXNzOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWRlbnRfYWRkcmVzcycpWzBdLnZhbHVlLFxuICAgICAgc3R1ZGVudF9vY2N1cGF0aW9uOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWRlbnRfb2NjdXBhdGlvbicpWzBdLnZhbHVlLFxuICAgICAgZGlzYWJpbGl0eTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdkaXNhYmlsaXR5JylbMF0udmFsdWUsXG4gICAgICBoZWFsdGhfcmVnaW1lbjogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdoZWFsdGhfcmVnaW1lbicpWzBdLnZhbHVlLFxuICAgICAgbWFya2V0aW5nX3JlYXNvbnM6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbWFya2V0aW5nX3JlYXNvbnMnKVswXS52YWx1ZSxcbiAgICAgIHN0dWR5X3JlYXNvbnM6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3R1ZHlfcmVhc29ucycpWzBdLnZhbHVlLFxuICAgICAgb2JzZXJ2YXRpb246IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnb2JzZXJ2YXRpb24nKVswXS52YWx1ZSxcbiAgICAgIG11bHRpY3VsdHVyYWxpc21fMTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdtdWx0aWN1bHR1cmFsaXNtXzEnKVswXS52YWx1ZSxcbiAgICAgIG11bHRpY3VsdHVyYWxpc21fMjogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdtdWx0aWN1bHR1cmFsaXNtXzInKVswXS52YWx1ZSxcbiAgICAgIG11bHRpY3VsdHVyYWxpc21fMzogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdtdWx0aWN1bHR1cmFsaXNtXzMnKVswXS52YWx1ZSxcbiAgICAgIG11bHRpY3VsdHVyYWxpc21fNDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdtdWx0aWN1bHR1cmFsaXNtXzQnKVswXS52YWx1ZSxcbiAgICAgIG11bHRpY3VsdHVyYWxpc21fNTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdtdWx0aWN1bHR1cmFsaXNtXzUnKVswXS52YWx1ZSxcbiAgICAgIG11bHRpY3VsdHVyYWxpc21fNjogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdtdWx0aWN1bHR1cmFsaXNtXzYnKVswXS52YWx1ZSxcbiAgICAgIGF2YWlsaWJsZV9jb3Vyc2VzOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2F2YWlsaWJsZV9jb3Vyc2VzJylbMF0udmFsdWUsXG4gICAgICBjb3Vyc2VfdHlwZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdjb3Vyc2VfdHlwZScpWzBdLnZhbHVlLFxuICAgICAgYWdyZWVtZW50X2J5X2NhdGVnb3J5OiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2FncmVlbWVudF9ieV9jYXRlZ29yeScpWzBdLnZhbHVlLFxuICAgICAgZW5nbGlzaF9sZXZlbDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdlbmdsaXNoX2xldmVsJylbMF0udmFsdWUsXG4gICAgICBwYXltZW50X21ldGhvZDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXltZW50X21ldGhvZCcpWzBdLnZhbHVlLFxuICAgICAgcXVvdGFfdGltZXM6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncXVvdGFfdGltZXMnKVswXS52YWx1ZSxcbiAgICAgIHBheW1lbnRfZGF0ZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXltZW50X2RhdGUnKVswXS52YWx1ZSxcbiAgICAgIHBheW1lbnRfZGF0ZXM6IHRoaXMuZmluYW5jaW5nRGF0YSEsXG4gICAgICBwcm9ncmFtX3ByaWNlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3Byb2dyYW1fcHJpY2UnKVswXS52YWx1ZSxcbiAgICAgIHRvdGFsX3ByaWNlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3RvdGFsX3ByaWNlJylbMF0udmFsdWUsXG4gICAgICBwYWlkX2xldmVsOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3BhaWRfbGV2ZWwnKVswXS52YWx1ZSxcbiAgICAgIHRlcm1zOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3Rlcm1zJylbMF0udmFsdWUsXG4gICAgICByZV9wYXNzd29yZDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdyZV9wYXNzd29yZCcpWzBdLnZhbHVlLFxuICAgICAgYWdlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2FnZScpWzBdLnZhbHVlLFxuICAgICAgY291bnRyeTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdjb3VudHJ5JylbMF0udmFsdWUsXG4gICAgICBzdGF0ZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdGF0ZScpWzBdLnZhbHVlLFxuICAgICAgYWNhZGVtaWNfcGxhbjogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdhY2FkZW1pY19wbGFuJylbMF0udmFsdWUsXG4gICAgICBjb2RlX3JlZmVyczogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdjb2RlX3JlZmVycycpWzBdLnZhbHVlLFxuICAgIH1cbiAgICByZXR1cm4gcmVxdWVzdDtcbiAgfVxuXG4gIGdldFVwZGF0ZUNPRChkYXRhOiBhbnlbXSk6IElVcGRhdGVDT0RScSB7XG4gICAgbGV0IHJlcXVlc3Q6IElVcGRhdGVDT0RScSA9IHtcbiAgICAgIHRva2VuOiB0aGlzLmJhc2VTZXJ2aWNlLmdldFVzZXJUb2tlbigpLFxuICAgICAgc3R1ZGVudF9uYW1lOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWRlbnRfbmFtZScpWzBdLnZhbHVlLFxuICAgICAgc3R1ZGVudF9sYXN0X25hbWU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3R1ZGVudF9sYXN0X25hbWUnKVswXS52YWx1ZSxcbiAgICAgIG5pY2tuYW1lOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ25pY2tuYW1lJylbMF0udmFsdWUsXG4gICAgICBzdHVkZW50X2VtYWlsOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWRlbnRfZW1haWwnKVswXS52YWx1ZSxcbiAgICAgIHN0dWRlbnRfcGhvbmVfaW5kaWNhdGl2ZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHVkZW50X3Bob25lX2luZGljYXRpdmUnKVswXS52YWx1ZSxcbiAgICAgIHN0dWRlbnRfcGhvbmVfbnVtYmVyOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWRlbnRfcGhvbmVfbnVtYmVyJylbMF0udmFsdWUsXG4gICAgICBnZW5kZXI6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnZ2VuZGVyJylbMF0udmFsdWUsXG4gICAgICBiaXJ0aGRhdGU6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnYmlydGhkYXRlJylbMF0udmFsdWUsXG4gICAgICBjaXR5OiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2NpdHknKVswXS52YWx1ZSxcbiAgICAgIHN0dWRlbnRfaWRfY2FyZF90eXBlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWRlbnRfaWRfY2FyZF90eXBlJylbMF0udmFsdWUsXG4gICAgICBzdHVkZW50X2lkX2NhcmQ6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3R1ZGVudF9pZF9jYXJkJylbMF0udmFsdWUsXG4gICAgICBuZWVkQXRlbmRhbnQ6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbmVlZEF0ZW5kYW50JylbMF0udmFsdWUsXG4gICAgICBwYXJlbnRfbmFtZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXJlbnRfbmFtZScpWzBdLnZhbHVlLFxuICAgICAgcGFyZW50X2xhc3RfbmFtZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXJlbnRfbGFzdF9uYW1lJylbMF0udmFsdWUsXG4gICAgICBwYXJlbnRfaWRfY2FyZF90eXBlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3BhcmVudF9pZF9jYXJkX3R5cGUnKVswXS52YWx1ZSxcbiAgICAgIHBhcmVudF9pZF9jYXJkOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3BhcmVudF9pZF9jYXJkJylbMF0udmFsdWUsXG4gICAgICBwYXJlbnRfcGhvbmVfaW5kaWNhdGl2ZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXJlbnRfcGhvbmVfaW5kaWNhdGl2ZScpWzBdLnZhbHVlLFxuICAgICAgcGFyZW50X3Bob25lX251bWJlcjogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXJlbnRfcGhvbmVfbnVtYmVyJylbMF0udmFsdWUsXG4gICAgICBwYXJlbnRfb2NjdXBhdGlvbjogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXJlbnRfb2NjdXBhdGlvbicpWzBdLnZhbHVlLFxuICAgICAgcGFyZW50X29mZmljZV9hZGRyZXNzOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3BhcmVudF9hZGRyZXNzJylbMF0udmFsdWUsXG4gICAgICBzb2NpYWxfc3RyYXR1bTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdzdHJhdHVtJylbMF0udmFsdWUsXG4gICAgICBjaXZpbF9zdGF0dXM6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnY2l2aWxfc3RhdHVzJylbMF0udmFsdWUsXG4gICAgICBlZHVjYXRpb25hbF9sZXZlbDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdncmFkZScpWzBdLnZhbHVlLFxuICAgICAgc3R1ZGVudF9hZGRyZXNzOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWRlbnRfYWRkcmVzcycpWzBdLnZhbHVlLFxuICAgICAgc3R1ZGVudF9vY2N1cGF0aW9uOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0dWRlbnRfb2NjdXBhdGlvbicpWzBdLnZhbHVlLFxuICAgICAgZGlzYWJpbGl0eTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdkaXNhYmlsaXR5JylbMF0udmFsdWUsXG4gICAgICBoZWFsdGhfcmVnaW1lbjogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdoZWFsdGhfcmVnaW1lbicpWzBdLnZhbHVlLFxuICAgICAgbWFya2V0aW5nX3JlYXNvbnM6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnbWFya2V0aW5nX3JlYXNvbnMnKVswXS52YWx1ZSxcbiAgICAgIHN0dWR5X3JlYXNvbnM6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnc3R1ZHlfcmVhc29ucycpWzBdLnZhbHVlLFxuICAgICAgb2JzZXJ2YXRpb246IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnb2JzZXJ2YXRpb24nKVswXS52YWx1ZSxcbiAgICAgIG11bHRpY3VsdHVyYWxpc21fMTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdtdWx0aWN1bHR1cmFsaXNtXzEnKVswXS52YWx1ZSxcbiAgICAgIG11bHRpY3VsdHVyYWxpc21fMjogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdtdWx0aWN1bHR1cmFsaXNtXzInKVswXS52YWx1ZSxcbiAgICAgIG11bHRpY3VsdHVyYWxpc21fMzogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdtdWx0aWN1bHR1cmFsaXNtXzMnKVswXS52YWx1ZSxcbiAgICAgIG11bHRpY3VsdHVyYWxpc21fNDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdtdWx0aWN1bHR1cmFsaXNtXzQnKVswXS52YWx1ZSxcbiAgICAgIG11bHRpY3VsdHVyYWxpc21fNTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdtdWx0aWN1bHR1cmFsaXNtXzUnKVswXS52YWx1ZSxcbiAgICAgIG11bHRpY3VsdHVyYWxpc21fNjogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdtdWx0aWN1bHR1cmFsaXNtXzYnKVswXS52YWx1ZSxcbiAgICAgIGF2YWlsaWJsZV9jb3Vyc2VzOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2F2YWlsaWJsZV9jb3Vyc2VzJylbMF0udmFsdWUsXG4gICAgICBjb3Vyc2VfdHlwZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdjb3Vyc2VfdHlwZScpWzBdLnZhbHVlLFxuICAgICAgYWdyZWVtZW50X2J5X2NhdGVnb3J5OiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2FncmVlbWVudF9ieV9jYXRlZ29yeScpWzBdLnZhbHVlLFxuICAgICAgZW5nbGlzaF9sZXZlbDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdlbmdsaXNoX2xldmVsJylbMF0udmFsdWUsXG4gICAgICBwYXltZW50X21ldGhvZDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXltZW50X21ldGhvZCcpWzBdLnZhbHVlLFxuICAgICAgcXVvdGFfdGltZXM6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAncXVvdGFfdGltZXMnKVswXS52YWx1ZSxcbiAgICAgIHBheW1lbnRfZGF0ZTogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdwYXltZW50X2RhdGUnKVswXS52YWx1ZSxcbiAgICAgIHBheW1lbnRfZGF0ZXM6IHRoaXMuZmluYW5jaW5nRGF0YSEsXG4gICAgICBwcm9ncmFtX3ByaWNlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3Byb2dyYW1fcHJpY2UnKVswXS52YWx1ZSxcbiAgICAgIHRvdGFsX3ByaWNlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3RvdGFsX3ByaWNlJylbMF0udmFsdWUsXG4gICAgICBwYWlkX2xldmVsOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3BhaWRfbGV2ZWwnKVswXS52YWx1ZSxcbiAgICAgIHRlcm1zOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3Rlcm1zJylbMF0udmFsdWUsXG4gICAgICBhZ2U6IGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnYWdlJylbMF0udmFsdWUsXG4gICAgICBjb3VudHJ5OiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2NvdW50cnknKVswXS52YWx1ZSxcbiAgICAgIHN0YXRlOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ3N0YXRlJylbMF0udmFsdWUsXG4gICAgICBhY2FkZW1pY19wbGFuOiBkYXRhLmZpbHRlcihkYXRhID0+IGRhdGEuY29udHJvbCA9PT0gJ2FjYWRlbWljX3BsYW4nKVswXS52YWx1ZSxcbiAgICAgIGNvZGVfcmVmZXJzOiB0aGlzLnBhcnNlTnVtYmVyKGRhdGEuZmlsdGVyKGRhdGEgPT4gZGF0YS5jb250cm9sID09PSAnY29kZV9yZWZlcnMnKVswXS52YWx1ZSksXG4gICAgICBjb2RlX2NvZDogZGF0YS5maWx0ZXIoZGF0YSA9PiBkYXRhLmNvbnRyb2wgPT09ICdjb2RlX2NvZCcpWzBdLnZhbHVlLFxuICAgIH1cbiAgICByZXR1cm4gcmVxdWVzdDtcbiAgfVxuXG4gIGNoYW5nZVN0ZXAoc3RlcDogbnVtYmVyKSB7XG4gICAgdGhpcy5jdXJyZW50U3RlcCA9IHN0ZXA7XG4gIH1cblxuICBwYXJzZU51bWJlcih2YWx1ZTogYW55KTogbnVtYmVyIHwgbnVsbCB7XG4gICAgY29uc3QgcGFyc2VkVmFsdWUgPSBwYXJzZUZsb2F0KHZhbHVlKTtcbiAgICByZXR1cm4gaXNOYU4ocGFyc2VkVmFsdWUpID8gbnVsbCA6IHBhcnNlZFZhbHVlO1xuICB9XG59XG4iLCI8ZGl2ICpuZ0lmPVwiYWxsb3dlZFJvbGUoKSA7IGVsc2UgVW5hdXRob3JpemVkXCIgY2xhc3M9XCJjb250YWluZXIgZmxleCBmbGV4LWNvbHVtbiBiZy13aGl0ZSBib3JkZXItcm91bmQtMnhsIHAtMyBjb250YWluZXIgYW5pbWF0ZV9fYW5pbWF0ZWQgYW5pbWF0ZV9fZmFkZUluVXBcIj5cblxuICA8c3BhbiAqbmdJZj1cImVkaXRDb2RcIiBjbGFzcz1cImJnLXllbGxvdy01MDAgcC0yIGJvcmRlci1yb3VuZCBtYi0yIHctYXV0byB0ZXh0LWxnIGZvbnQtc2VtaWJvbGRcIiBzdHlsZT1cImNvbG9yOiB3aGl0ZTtcIj57eyBmb3JtVGl0bGUgfX08L3NwYW4+XG4gIDxzcGFuICpuZ0lmPVwiIWVkaXRDb2QgJiYgIWRhdGFGcm9tUHJldml1c0NvZERhdGE/LmNvZF9yZW5vdmF0aW9uXCIgY2xhc3M9XCJiZy1wcmltYXJ5IHAtMiBib3JkZXItcm91bmQgbWItMiB3LWF1dG8gdGV4dC1sZyBmb250LXNlbWlib2xkXCI+e3sgZm9ybVRpdGxlIH19PC9zcGFuPlxuICA8c3BhbiAqbmdJZj1cIiFlZGl0Q29kICYmIGRhdGFGcm9tUHJldml1c0NvZERhdGE/LmNvZF9yZW5vdmF0aW9uID09IHRydWVcIiBjbGFzcz1cInAtMiBib3JkZXItcm91bmQgbWItMiB3LWF1dG8gdGV4dC1sZyBmb250LXNlbWlib2xkXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOiMxZGE3NTA7IGNvbG9yOiB3aGl0ZTtcIj57eyBmb3JtVGl0bGUgfX08L3NwYW4+XG5cbiAgPHAtdGFiVmlldyBbYWN0aXZlSW5kZXhdPVwiY3VycmVudFN0ZXBcIiAoYWN0aXZlSW5kZXhDaGFuZ2UpPVwiY3VycmVudFN0ZXAgPSAkZXZlbnRcIiBbc2Nyb2xsYWJsZV09XCJ0cnVlXCI+XG4gICAgPHAtdGFiUGFuZWwgbGVmdEljb249XCJwaSBwaS1zdGFyXCIgaGVhZGVyPVwiMS4gUGxhbmVzIHkgY29udmVuaW9zXCI+XG4gICAgICA8YXBwLWNvZC1mb3JtLXN0ZXAtb25lIChjaGFuZ2VTdGVwRXZlbnQpPVwiY2hhbmdlU3RlcCgkZXZlbnQpXCIgW2luaXRpYWxEYXRhXT1cImNvdXJzZVNlbGVjdFwiIFtkYXRhUHJldml1c0NvZERhdGFdPVwiZGF0YUZyb21QcmV2aXVzQ29kRGF0YVwiIFtpc0VkaXRDb2RdPVwiZWRpdENvZFwiIFtjb3Vyc2VTZWxlY3RSZW5vdmF0aW9uXT1cIkNvdXJzZVNlbGVjdFJlbm92YXRpb25cIiBbaXNSZW5vdmF0aW9uXT1cImlzUmVub3ZhdGlvblwiIGNsYXNzPVwicC0xXCI+PC9hcHAtY29kLWZvcm0tc3RlcC1vbmU+XG4gICAgPC9wLXRhYlBhbmVsPlxuICAgIDxwLXRhYlBhbmVsIGxlZnRJY29uPVwicGkgcGktaWQtY2FyZFwiIGhlYWRlcj1cIjIuIERhdG9zIGRlbCBlc3R1ZGlhbnRlXCI+XG4gICAgICA8YXBwLWNvZC1mb3JtLXN0ZXAtdHdvIChjaGFuZ2VTdGVwRXZlbnQpPVwiY2hhbmdlU3RlcCgkZXZlbnQpXCIgW2luaXRpYWxEYXRhXT1cImRhdGFGcm9tUHJldml1c0NvZERhdGFcIiBbaXNFZGl0Q29kXT1cImVkaXRDb2RcIiBjbGFzcz1cInAtMVwiPjwvYXBwLWNvZC1mb3JtLXN0ZXAtdHdvPlxuICAgIDwvcC10YWJQYW5lbD5cbiAgICA8cC10YWJQYW5lbCBsZWZ0SWNvbj1cInBpIHBpLXVzZXItZWRpdFwiIGhlYWRlcj1cIjMuIERhdG9zIGRlbCBhY3VkaWVudGVcIj5cbiAgICAgIDxhcHAtY29kLWZvcm0tc3RlcC10aHJlZSAgKGNoYW5nZVN0ZXBFdmVudCk9XCJjaGFuZ2VTdGVwKCRldmVudClcIiBbaW5pdGlhbERhdGFdPVwiZGF0YUZyb21QcmV2aXVzQ29kRGF0YVwiIFtpc0VkaXRDb2RdPVwiZWRpdENvZFwiIGNsYXNzPVwicC0xXCI+PC9hcHAtY29kLWZvcm0tc3RlcC10aHJlZT5cbiAgICA8L3AtdGFiUGFuZWw+XG4gICAgPHAtdGFiUGFuZWwgbGVmdEljb249XCJwaSBwaS1tb25leS1iaWxsXCIgaGVhZGVyPVwiNC4gVmFsb3Jlc1wiPlxuICAgICAgPGFwcC1jb2QtZm9ybS1zdGVwLWZvdXIgKGNoYW5nZVN0ZXBFdmVudCk9XCJjaGFuZ2VTdGVwKCRldmVudClcIiAoZmluYW5jaW5nRGF0YSk9XCJzYXZlRmluYW5jaW5nRGF0YSgkZXZlbnQpXCIgW2luaXRpYWxEYXRhXT1cImRhdGFGcm9tUHJldml1c0NvZERhdGFcIiBbaXNFZGl0Q29kXT1cImVkaXRDb2RcIiBjbGFzcz1cInAtMVwiPjwvYXBwLWNvZC1mb3JtLXN0ZXAtZm91cj5cbiAgICA8L3AtdGFiUGFuZWw+XG4gICAgPHAtdGFiUGFuZWwgbGVmdEljb249XCJwaSBwaS1leWVcIiBoZWFkZXI9XCI1LiBPYnNlcnZhY2lvbmVzXCI+XG4gICAgICA8YXBwLWNvZC1mb3JtLXN0ZXAtZml2ZSAoY2hhbmdlU3RlcEV2ZW50KT1cImNoYW5nZVN0ZXAoJGV2ZW50KVwiIFt1c2VyUm9sZV09XCJ1c2VyUm9sZVwiIFtpbml0aWFsRGF0YV09XCJkYXRhRnJvbVByZXZpdXNDb2REYXRhXCIgKGFjdGlvbik9XCJnZXRGb3JtQWN0aW9uKCRldmVudClcIiBbaXNFZGl0Q29kXT1cImVkaXRDb2RcIiBbaXNSZW5vdmF0aW9uXT1cImlzUmVub3ZhdGlvblwiIGNsYXNzPVwicC0xXCI+PC9hcHAtY29kLWZvcm0tc3RlcC1maXZlPlxuICAgIDwvcC10YWJQYW5lbD5cbiAgPC9wLXRhYlZpZXc+XG5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI1VuYXV0aG9yaXplZD5cbiAgPHNwYW4gY2xhc3M9XCJmbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgZm9udC1ib2xkIHAtMiBiZy15ZWxsb3ctMjAwIGJvcmRlci1yb3VuZC1sZyB3LWZ1bGxcIj5cbiAgICBObyB0aWVuZXMgbG9zIHBlcm1pc29zIHBhcmEgYWNjZWRlciBhIGVzdGEgZnVuY2lvbmFsaWRhZCwgY29tdW7DrWNhdGUgY29uIGVsIGRlc2Fycm9sbGFkb3IuXG4gIDwvc3Bhbj5cbjwvbmctdGVtcGxhdGU+XG5cblxuPGlwdC1sb2FkZXIgKm5nSWY9XCJpc0xvYWRpbmdcIiBbaXNEaWFsb2ddPVwidHJ1ZVwiIFttZXNzYWdlXT1cImxvYWRlck1lc3NhZ2VcIj48L2lwdC1sb2FkZXI+XG4iXX0=
|
|
@@ -36,11 +36,6 @@ export class CodFormStepOneComponent extends CodFormSteps {
|
|
|
36
36
|
Nota: la clase CodFormSteps() se encarga de toda la lógica de LS con los pasos del formulario del COD
|
|
37
37
|
*/
|
|
38
38
|
ngOnChanges(changes) {
|
|
39
|
-
console.log("initialData", this.initialData);
|
|
40
|
-
console.log("dataPreviusCodData", this.dataPreviusCodData);
|
|
41
|
-
console.log("courseSelectRenovation", this.courseSelectRenovation);
|
|
42
|
-
console.log("isEditCod", this.isEditCod);
|
|
43
|
-
console.log("isRenovation", this.isRenovation);
|
|
44
39
|
this.getParameters();
|
|
45
40
|
this.initForm();
|
|
46
41
|
this.startLocalStorageWork();
|
|
@@ -53,14 +48,12 @@ export class CodFormStepOneComponent extends CodFormSteps {
|
|
|
53
48
|
this.cdRef.detectChanges();
|
|
54
49
|
}
|
|
55
50
|
else {
|
|
56
|
-
console.log("llegue aqui por alguna razon del la condicion");
|
|
57
51
|
this.codFormStepOne.controls['academic_plan'].setValue(null);
|
|
58
52
|
this.codFormStepOne.controls['course_type'].setValue(null);
|
|
59
53
|
this.codFormStepOne.controls['agreement_by_category'].setValue(null);
|
|
60
54
|
this.codFormStepOne.controls['english_level'].setValue(null);
|
|
61
55
|
this.codFormStepOne.controls['availible_courses'].setValue(null);
|
|
62
56
|
this.codFormStepOne.controls['course_modality'].setValue(null);
|
|
63
|
-
// this.cdRef.detectChanges();
|
|
64
57
|
}
|
|
65
58
|
if (changes['dataPreviusCodData'] && this.dataPreviusCodData != null && this.isEditCod && this.isRenovation === false) {
|
|
66
59
|
this.processData(this.dataPreviusCodData);
|
|
@@ -70,29 +63,15 @@ export class CodFormStepOneComponent extends CodFormSteps {
|
|
|
70
63
|
else {
|
|
71
64
|
this.isDisabledSel = false;
|
|
72
65
|
}
|
|
73
|
-
// if (this.isDisabledSel) {
|
|
74
|
-
// this.disableFormControls();
|
|
75
|
-
// }
|
|
76
|
-
// Forzar detección de cambios
|
|
77
66
|
this.cdRef.detectChanges();
|
|
78
67
|
}
|
|
79
68
|
else if (changes['dataPreviusCodData'] && this.dataPreviusCodData != null && !this.isEditCod && this.courseSelectRenovation && this.isRenovation === true) {
|
|
80
69
|
this.setDataCodRenovationSelect();
|
|
81
70
|
this.isDisabledSel = true;
|
|
82
|
-
// this.disableFormControls();
|
|
83
71
|
this.cdRef.detectChanges();
|
|
84
72
|
}
|
|
85
73
|
}
|
|
86
|
-
// private disableFormControls() {
|
|
87
|
-
// this.codFormStepOne.controls['academic_plan'].disable();
|
|
88
|
-
// this.codFormStepOne.controls['course_type'].disable();
|
|
89
|
-
// this.codFormStepOne.controls['agreement_by_category'].disable();
|
|
90
|
-
// this.codFormStepOne.controls['english_level'].disable();
|
|
91
|
-
// this.codFormStepOne.controls['availible_courses'].disable();
|
|
92
|
-
// this.codFormStepOne.controls['course_modality'].disable();
|
|
93
|
-
// }
|
|
94
74
|
processData(data) {
|
|
95
|
-
console.log("llegue aqui en processData");
|
|
96
75
|
const { codFormStepOne } = this;
|
|
97
76
|
this.getAgreementByPlan(data.course_type?.academic_plan.code);
|
|
98
77
|
this.getCourseType(data.course_type?.academic_plan.code);
|
|
@@ -102,11 +81,9 @@ export class CodFormStepOneComponent extends CodFormSteps {
|
|
|
102
81
|
codFormStepOne.controls['academic_plan'].setValue(data.course_type?.academic_plan.code);
|
|
103
82
|
this.getAvailibleCourses();
|
|
104
83
|
if (this.isEditCod) {
|
|
105
|
-
console.log("llegue aqui setDataFromEditCodHistory");
|
|
106
84
|
this.setDataFromEditCodHistory();
|
|
107
85
|
}
|
|
108
86
|
else if (!this.isEditCod && this.initialData != null) {
|
|
109
|
-
console.log("llegue aqui2");
|
|
110
87
|
this.setDataFromUserHistory();
|
|
111
88
|
}
|
|
112
89
|
}
|
|
@@ -322,4 +299,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
|
|
|
322
299
|
}], changeStepEvent: [{
|
|
323
300
|
type: Output
|
|
324
301
|
}] } });
|
|
325
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kLWZvcm0tc3RlcC1vbmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvZC9zdGVwcy9jb2QtZm9ybS1zdGVwLW9uZS9jb2QtZm9ybS1zdGVwLW9uZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29kL3N0ZXBzL2NvZC1mb3JtLXN0ZXAtb25lL2NvZC1mb3JtLXN0ZXAtb25lLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUErQyxNQUFNLGVBQWUsQ0FBQztBQUN2SSxPQUFPLEVBQTBCLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBTXBFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsWUFBWSxFQUFzQixNQUFNLDRCQUE0QixDQUFDOzs7Ozs7Ozs7OztBQVE5RSxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsWUFBWTtJQXVCdkQsWUFDVSxFQUFlLEVBQ2YsZ0JBQWtDLEVBQ2xDLGFBQTRCLEVBQzVCLFdBQXdCLEVBQ3hCLGFBQTRCLEVBQzVCLG1CQUF3QyxFQUN4QyxLQUF3QjtRQUVoQyxLQUFLLEVBQUUsQ0FBQztRQVJBLE9BQUUsR0FBRixFQUFFLENBQWE7UUFDZixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUF2QnhCLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQVUs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LE1BQU0sQ0FBQyxlQUFlLENBQUMsSUFBSTt5QkFDdEMsQ0FBQyxDQUFDO29CQUNMLENBQUMsQ0FBQyxDQUFBO2lCQUNIO3FCQUFNO29CQUNMLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxLQUFLLENBQUM7b0JBQ2hDLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLG1CQUFtQixDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO29CQUMvRCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztpQkFFekI7WUFDSCxDQUFDLENBQUMsQ0FBQztTQUNOO0lBQ0gsQ0FBQztJQUVELGdCQUFnQjtRQUNkLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLEVBQUUsZUFBZSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLEVBQUUsYUFBYSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ25ELElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLEVBQUUsYUFBYSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3JELENBQUM7O29IQTVVVSx1QkFBdUI7d0dBQXZCLHVCQUF1QixvVkNoQnBDLDh4R0FnRUE7MkZEaERhLHVCQUF1QjtrQkFMbkMsU0FBUzsrQkFDRSx1QkFBdUI7cVJBTXhCLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csc0JBQXNCO3NCQUE5QixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0ksZUFBZTtzQkFBeEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcywgT25DaGFuZ2VzLCBDaGFuZ2VEZXRlY3RvclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEdldEF2YWlsaWJsZUNvdXJzZXNScSB9IGZyb20gJy4uLy4uLy4uL2NvcmUvbW9kZWxzL2NvdXJzZS9jb3Vyc2UtcnEubW9kZWwnO1xuaW1wb3J0IHsgQ29waWVzU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2NvcmUvc2VydmljZXMvY29waWVzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ291cnNlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2NvcmUvc2VydmljZXMvY291cnNlLXNlcnZpY2UvY291cnNlLXNlcnZpY2UubW9kZWwnO1xuaW1wb3J0IHsgUGFyYW1ldGVyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2NvcmUvc2VydmljZXMvcGFyYW1ldGVycy1zZXJ2aWNlL3BhcmFtZXRlcnMuc2VydmljZSc7XG5pbXBvcnQgeyBCYXNlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2NvcmUvdXRpbHMvYmFzZS1zZXJ2aWNlL2Jhc2Uuc2VydmljZSc7XG5pbXBvcnQgeyBDb2RGb3JtQ29udHJvbHMgfSBmcm9tICcuLi8uLi9sb2dpYy9jb2QtZm9ybS1jb250cm9scyc7XG5pbXBvcnQgeyBDb2RGb3JtU3RlcHMsIGxvY2FsU3RvcmFnZVZhbHVlcyB9IGZyb20gJy4uLy4uL2xvZ2ljL2NvZC1mb3JtLXN0ZXBzJztcbmltcG9ydCB7IENvbW11bmljYXRvclNlcnZpY2UgfSBmcm9tICcuLi8uLi9sb2dpYy9jb21tdW5pY2F0b3Iuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1jb2QtZm9ybS1zdGVwLW9uZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb2QtZm9ybS1zdGVwLW9uZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvZC1mb3JtLXN0ZXAtb25lLmNvbXBvbmVudC5jc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQ29kRm9ybVN0ZXBPbmVDb21wb25lbnQgZXh0ZW5kcyBDb2RGb3JtU3RlcHMgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuXG4gIEBJbnB1dCgpIGluaXRpYWxEYXRhPzogYW55O1xuICBASW5wdXQoKSBkYXRhUHJldml1c0NvZERhdGE/OiBhbnk7XG4gIEBJbnB1dCgpIGlzRWRpdENvZD86IGJvb2xlYW47XG4gIEBJbnB1dCgpIGNvdXJzZVNlbGVjdFJlbm92YXRpb24/OmFueTtcbiAgQElucHV0KCkgaXNSZW5vdmF0aW9uPzphbnk7XG4gIEBPdXRwdXQoKSBjaGFuZ2VTdGVwRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcblxuICBjb3BpZXM6IGFueTtcbiAgY29kRm9ybVN0ZXBPbmUhOiBGb3JtR3JvdXA7XG4gIGhhc0F2YWlsYWJsZUNvdXJzZSE6IGJvb2xlYW47XG5cbiAgLy8gUGFyYW1ldGVyc1xuICBhZ3JlZW1lbnRzOiBhbnk7XG4gIGF2YWlsaWJsZUNvdXJzZXM6IGFueVtdID0gW107XG4gIGNvdXJzZV90eXBlOiBhbnk7XG4gIGxldmVsczogYW55O1xuICBwbGFuczogYW55O1xuICBpc0Rpc2FibGVkU2VsOmJvb2xlYW49ZmFsc2VcbiAgLy8gQ29udHJvbHMgZGVsIGZvcm11bGFyaW9cbiAgY29udHJvbHMgPSBuZXcgQ29kRm9ybUNvbnRyb2xzKCkuY29udHJvbHNbMF07XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsXG4gICAgcHJpdmF0ZSBwYXJhbWV0ZXJTZXJ2aWNlOiBQYXJhbWV0ZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29waWVzU2VydmljZTogQ29waWVzU2VydmljZSxcbiAgICBwcml2YXRlIGJhc2VTZXJ2aWNlOiBCYXNlU2VydmljZSxcbiAgICBwcml2YXRlIGNvdXJzZVNlcnZpY2U6IENvdXJzZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb21tdW5pY2F0b3JTZXJ2aWNlOiBDb21tdW5pY2F0b3JTZXJ2aWNlLFxuICAgIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5jb3BpZXMgPSB0aGlzLmNvcGllc1NlcnZpY2UuY29waWVzO1xuICB9XG5cbiAgLyogRXMgbmVjZXNhcmlvIHJlY29ycmVyIGVsIGFycmF5IGRlIGNvbnRyb2xzIGRlIG51ZXN0cm8gZm9ybXVsYXJpbyBwYXJhOlxuICAgIOKchSBMZWVyIGVsIExvY2FsIFN0b3JhZ2UgeSBzZXRlYXIgbG9zIHZhbG9yZXNcbiAgICDinIUgU3Vic2NyaWJpcnNlIGEgbG9zIGNhbWJpb3MgZGVsIGZvcm11bGFyaW8gcGFyYSBzZXRlYXIgdmFsb3JlcyBudWV2b3NcblxuICAgIE5vdGE6IGxhIGNsYXNlIENvZEZvcm1TdGVwcygpIHNlIGVuY2FyZ2EgZGUgdG9kYSBsYSBsw7NnaWNhIGRlIExTIGNvbiBsb3MgcGFzb3MgZGVsIGZvcm11bGFyaW8gZGVsIENPRFxuICAqL1xuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBjb25zb2xlLmxvZyhcImluaXRpYWxEYXRhXCIsdGhpcy5pbml0aWFsRGF0YSk7XG4gICAgY29uc29sZS5sb2coXCJkYXRhUHJldml1c0NvZERhdGFcIix0aGlzLmRhdGFQcmV2aXVzQ29kRGF0YSk7XG4gICAgY29uc29sZS5sb2coXCJjb3Vyc2VTZWxlY3RSZW5vdmF0aW9uXCIsdGhpcy5jb3Vyc2VTZWxlY3RSZW5vdmF0aW9uKTtcbiAgICBjb25zb2xlLmxvZyhcImlzRWRpdENvZFwiLHRoaXMuaXNFZGl0Q29kKTtcbiAgICBjb25zb2xlLmxvZyhcImlzUmVub3ZhdGlvblwiLHRoaXMuaXNSZW5vdmF0aW9uKTtcblxuICAgIHRoaXMuZ2V0UGFyYW1ldGVycygpO1xuICAgIHRoaXMuaW5pdEZvcm0oKTtcbiAgICB0aGlzLnN0YXJ0TG9jYWxTdG9yYWdlV29yaygpO1xuICAgIHRoaXMuc2V0VmFsdWVzQnlMb2NhbFN0b3JhZ2UoKVxuICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2NvdXJzZV90eXBlJ10udmFsdWVDaGFuZ2VzXG4gICAgLnN1YnNjcmliZSh2YWx1ZSA9PiB0aGlzLmNvbW11bmljYXRvclNlcnZpY2Uuc2V0Q3VycmVudENvdXJzZVR5cGUodmFsdWUpKTtcblxuICAgIHRoaXMuY29tbXVuaWNhdG9yU2VydmljZS5zZXRDdXJyZW50QWdyZWVtZW50KHRoaXMubG9jYWxTdG9yYWdlQ09ELmdldENvZEZvcm1EYXRhKDEsICdhZ3JlZW1lbnRfYnlfY2F0ZWdvcnknKSEpO1xuXG4gICAgaWYgKGNoYW5nZXNbJ2luaXRpYWxEYXRhJ10gJiYgdGhpcy5pbml0aWFsRGF0YSAhPSBudWxsICYmIHRoaXMuZGF0YVByZXZpdXNDb2REYXRhID09PSBudWxsIHx8IHRoaXMuZGF0YVByZXZpdXNDb2REYXRhICE9IG51bGwgICYmIHRoaXMuaXNFZGl0Q29kID09PSBmYWxzZSAmJiB0aGlzLmlzUmVub3ZhdGlvbiA9PT0gZmFsc2UpIHtcbiAgICAgIHRoaXMucHJvY2Vzc0RhdGEodGhpcy5pbml0aWFsRGF0YSk7XG4gICAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9ZWxzZXtcbiAgICAgIGNvbnNvbGUubG9nKFwibGxlZ3VlIGFxdWkgcG9yIGFsZ3VuYSByYXpvbiBkZWwgbGEgY29uZGljaW9uXCIpO1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYWNhZGVtaWNfcGxhbiddLnNldFZhbHVlKG51bGwpO1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snY291cnNlX3R5cGUnXS5zZXRWYWx1ZShudWxsKTtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2FncmVlbWVudF9ieV9jYXRlZ29yeSddLnNldFZhbHVlKG51bGwpO1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snZW5nbGlzaF9sZXZlbCddLnNldFZhbHVlKG51bGwpO1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYXZhaWxpYmxlX2NvdXJzZXMnXS5zZXRWYWx1ZShudWxsKTtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2NvdXJzZV9tb2RhbGl0eSddLnNldFZhbHVlKG51bGwpO1xuICAgICAgLy8gdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgaWYgKGNoYW5nZXNbJ2RhdGFQcmV2aXVzQ29kRGF0YSddICYmIHRoaXMuZGF0YVByZXZpdXNDb2REYXRhICE9IG51bGwgICYmIHRoaXMuaXNFZGl0Q29kICYmIHRoaXMuaXNSZW5vdmF0aW9uID09PSBmYWxzZSApIHtcbiAgICAgIHRoaXMucHJvY2Vzc0RhdGEodGhpcy5kYXRhUHJldml1c0NvZERhdGEpO1xuXG4gICAgICBpZiAodGhpcy5pc0VkaXRDb2QgJiYgIXRoaXMuZGF0YVByZXZpdXNDb2REYXRhLmVkaXRfY291cnNlX3BheW1lbnQpIHtcbiAgICAgICAgdGhpcy5pc0Rpc2FibGVkU2VsID0gdHJ1ZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuaXNEaXNhYmxlZFNlbCA9IGZhbHNlO1xuICAgICAgfVxuXG4gICAgICAvLyBpZiAodGhpcy5pc0Rpc2FibGVkU2VsKSB7XG4gICAgICAvLyAgIHRoaXMuZGlzYWJsZUZvcm1Db250cm9scygpO1xuICAgICAgLy8gfVxuICAgICAgLy8gRm9yemFyIGRldGVjY2nDs24gZGUgY2FtYmlvc1xuICAgICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfWVsc2UgaWYoY2hhbmdlc1snZGF0YVByZXZpdXNDb2REYXRhJ10gJiYgdGhpcy5kYXRhUHJldml1c0NvZERhdGEgIT0gbnVsbCAmJiAhdGhpcy5pc0VkaXRDb2QgJiYgdGhpcy5jb3Vyc2VTZWxlY3RSZW5vdmF0aW9uICYmIHRoaXMuaXNSZW5vdmF0aW9uID09PSB0cnVlICl7XG4gICAgICB0aGlzLnNldERhdGFDb2RSZW5vdmF0aW9uU2VsZWN0KCk7XG4gICAgICB0aGlzLmlzRGlzYWJsZWRTZWw9IHRydWVcbiAgICAgIC8vIHRoaXMuZGlzYWJsZUZvcm1Db250cm9scygpO1xuICAgICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB9XG5cbiAgfVxuICAvLyBwcml2YXRlIGRpc2FibGVGb3JtQ29udHJvbHMoKSB7XG4gIC8vICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYWNhZGVtaWNfcGxhbiddLmRpc2FibGUoKTtcbiAgLy8gICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydjb3Vyc2VfdHlwZSddLmRpc2FibGUoKTtcbiAgLy8gICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhZ3JlZW1lbnRfYnlfY2F0ZWdvcnknXS5kaXNhYmxlKCk7XG4gIC8vICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snZW5nbGlzaF9sZXZlbCddLmRpc2FibGUoKTtcbiAgLy8gICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhdmFpbGlibGVfY291cnNlcyddLmRpc2FibGUoKTtcbiAgLy8gICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydjb3Vyc2VfbW9kYWxpdHknXS5kaXNhYmxlKCk7XG4gIC8vIH1cblxuICBwcml2YXRlIHByb2Nlc3NEYXRhKGRhdGE6IGFueSkge1xuICAgIGNvbnNvbGUubG9nKFwibGxlZ3VlIGFxdWkgZW4gcHJvY2Vzc0RhdGFcIik7XG4gICAgY29uc3QgeyBjb2RGb3JtU3RlcE9uZSB9ID0gdGhpcztcbiAgICB0aGlzLmdldEFncmVlbWVudEJ5UGxhbihkYXRhLmNvdXJzZV90eXBlPy5hY2FkZW1pY19wbGFuLmNvZGUpO1xuICAgIHRoaXMuZ2V0Q291cnNlVHlwZShkYXRhLmNvdXJzZV90eXBlPy5hY2FkZW1pY19wbGFuLmNvZGUpO1xuICAgIGNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydlbmdsaXNoX2xldmVsJ10uc2V0VmFsdWUoZGF0YS5lbmdsaXNoX2xldmVsPy5jb2RlKTtcbiAgICBjb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYWdyZWVtZW50X2J5X2NhdGVnb3J5J10uc2V0VmFsdWUoZGF0YS5hZ3JlZW1lbnQ/LmNvZGUpO1xuICAgIGNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydjb3Vyc2VfdHlwZSddLnNldFZhbHVlKGRhdGEuY291cnNlX3R5cGU/LmNvZGUpO1xuICAgIGNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhY2FkZW1pY19wbGFuJ10uc2V0VmFsdWUoZGF0YS5jb3Vyc2VfdHlwZT8uYWNhZGVtaWNfcGxhbi5jb2RlKTtcbiAgICB0aGlzLmdldEF2YWlsaWJsZUNvdXJzZXMoKTtcblxuICAgIGlmICh0aGlzLmlzRWRpdENvZCkge1xuICAgICAgY29uc29sZS5sb2coXCJsbGVndWUgYXF1aSBzZXREYXRhRnJvbUVkaXRDb2RIaXN0b3J5XCIpO1xuICAgICAgdGhpcy5zZXREYXRhRnJvbUVkaXRDb2RIaXN0b3J5KCk7XG4gICAgfSBlbHNlIGlmICghdGhpcy5pc0VkaXRDb2QgJiYgdGhpcy5pbml0aWFsRGF0YSAhPSBudWxsKSB7XG4gICAgICBjb25zb2xlLmxvZyhcImxsZWd1ZSBhcXVpMlwiKTtcbiAgICAgIHRoaXMuc2V0RGF0YUZyb21Vc2VySGlzdG9yeSgpO1xuICAgIH1cbiAgfVxuXG4gIHNldERhdGFGcm9tVXNlckhpc3RvcnkoKXtcbiAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhY2FkZW1pY19wbGFuJ10uc2V0VmFsdWUodGhpcy5pbml0aWFsRGF0YS5jb3Vyc2VfdHlwZS5hY2FkZW1pY19wbGFuLmNvZGUpO1xuICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2NvdXJzZV90eXBlJ10uc2V0VmFsdWUodGhpcy5pbml0aWFsRGF0YS5jb3Vyc2VfdHlwZS5jb2RlKTtcbiAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhZ3JlZW1lbnRfYnlfY2F0ZWdvcnknXS5zZXRWYWx1ZSh0aGlzLmluaXRpYWxEYXRhLmFncmVlbWVudC5jb2RlKTtcbiAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydlbmdsaXNoX2xldmVsJ10uc2V0VmFsdWUodGhpcy5pbml0aWFsRGF0YS5lbmdsaXNoX2xldmVsLmNvZGUpO1xuICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2F2YWlsaWJsZV9jb3Vyc2VzJ10uc2V0VmFsdWUodGhpcy5pbml0aWFsRGF0YS5jb2RlKTtcbiAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydjb3Vyc2VfbW9kYWxpdHknXS5zZXRWYWx1ZSh0aGlzLmluaXRpYWxEYXRhLmNvdXJzZV9tb2RhbGl0eS5jb2RlKTtcbiAgfVxuXG4gIHNldERhdGFGcm9tRWRpdENvZEhpc3RvcnkoKXtcblxuICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2FjYWRlbWljX3BsYW4nXS5zZXRWYWx1ZSh0aGlzLmRhdGFQcmV2aXVzQ29kRGF0YS5jb3Vyc2VfdHlwZS5hY2FkZW1pY19wbGFuLmNvZGUgPyB0aGlzLmRhdGFQcmV2aXVzQ29kRGF0YS5jb3Vyc2VfdHlwZS5hY2FkZW1pY19wbGFuLmNvZGUgOiBudWxsKTtcbiAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydjb3Vyc2VfdHlwZSddLnNldFZhbHVlKHRoaXMuZGF0YVByZXZpdXNDb2REYXRhLmNvdXJzZV90eXBlLmNvZGUgPyB0aGlzLmRhdGFQcmV2aXVzQ29kRGF0YS5jb3Vyc2VfdHlwZS5jb2RlIDogbnVsbCk7XG4gICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYWdyZWVtZW50X2J5X2NhdGVnb3J5J10uc2V0VmFsdWUodGhpcy5kYXRhUHJldml1c0NvZERhdGEuYWdyZWVtZW50LmNvZGUgPyB0aGlzLmRhdGFQcmV2aXVzQ29kRGF0YS5hZ3JlZW1lbnQuY29kZSA6IG51bGwpO1xuICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2VuZ2xpc2hfbGV2ZWwnXS5zZXRWYWx1ZSh0aGlzLmRhdGFQcmV2aXVzQ29kRGF0YS5lbmdsaXNoX2xldmVsLmNvZGUgPyB0aGlzLmRhdGFQcmV2aXVzQ29kRGF0YS5lbmdsaXNoX2xldmVsLmNvZGUgOiBudWxsKTtcbiAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhdmFpbGlibGVfY291cnNlcyddLnNldFZhbHVlKHRoaXMuZGF0YVByZXZpdXNDb2REYXRhLmNvdXJzZS5jb2RlID8gdGhpcy5kYXRhUHJldml1c0NvZERhdGEuY291cnNlLmNvZGUgOiBudWxsKTtcbiAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydjb3Vyc2VfbW9kYWxpdHknXS5zZXRWYWx1ZSh0aGlzLmRhdGFQcmV2aXVzQ29kRGF0YS5jb3Vyc2UuY291cnNlX21vZGFsaXR5ID8gdGhpcy5kYXRhUHJldml1c0NvZERhdGEuY291cnNlLmNvdXJzZV9tb2RhbGl0eSA6IG51bGwpO1xuICB9XG4gIHNldERhdGFDb2RSZW5vdmF0aW9uU2VsZWN0KCl7XG4gICAgdGhpcy5nZXRBZ3JlZW1lbnRCeVBsYW4odGhpcy5jb3Vyc2VTZWxlY3RSZW5vdmF0aW9uLmNvdXJzZV90eXBlPy5hY2FkZW1pY19wbGFuLmNvZGUpO1xuICAgIHRoaXMuZ2V0Q291cnNlVHlwZSh0aGlzLmNvdXJzZVNlbGVjdFJlbm92YXRpb24uY291cnNlX3R5cGU/LmFjYWRlbWljX3BsYW4uY29kZSk7XG4gICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYWNhZGVtaWNfcGxhbiddLnNldFZhbHVlKHRoaXMuY291cnNlU2VsZWN0UmVub3ZhdGlvbi5jb3Vyc2VfdHlwZT8uYWNhZGVtaWNfcGxhbi5jb2RlID8gdGhpcy5jb3Vyc2VTZWxlY3RSZW5vdmF0aW9uLmNvdXJzZV90eXBlPy5hY2FkZW1pY19wbGFuLmNvZGUgOiBudWxsKTtcbiAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydjb3Vyc2VfdHlwZSddLnNldFZhbHVlKHRoaXMuY291cnNlU2VsZWN0UmVub3ZhdGlvbi5jb3Vyc2VfdHlwZT8uY29kZSA/IHRoaXMuY291cnNlU2VsZWN0UmVub3ZhdGlvbi5jb3Vyc2VfdHlwZT8uY29kZSA6IG51bGwpO1xuICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2FncmVlbWVudF9ieV9jYXRlZ29yeSddLnNldFZhbHVlKHRoaXMuY291cnNlU2VsZWN0UmVub3ZhdGlvbi5hZ3JlZW1lbnQ/LmNvZGUgPyB0aGlzLmNvdXJzZVNlbGVjdFJlbm92YXRpb24uYWdyZWVtZW50Py5jb2RlIDogbnVsbCk7XG4gICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snZW5nbGlzaF9sZXZlbCddLnNldFZhbHVlKHRoaXMuY291cnNlU2VsZWN0UmVub3ZhdGlvbi5lbmdsaXNoX2xldmVsPy5jb2RlID8gdGhpcy5jb3Vyc2VTZWxlY3RSZW5vdmF0aW9uLmVuZ2xpc2hfbGV2ZWw/LmNvZGUgOiBudWxsKTtcbiAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhdmFpbGlibGVfY291cnNlcyddLnNldFZhbHVlKHRoaXMuY291cnNlU2VsZWN0UmVub3ZhdGlvbj8uY29kZSA/IHRoaXMuY291cnNlU2VsZWN0UmVub3ZhdGlvbj8uY29kZSA6IG51bGwpO1xuICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2NvdXJzZV9tb2RhbGl0eSddLnNldFZhbHVlKHRoaXMuY291cnNlU2VsZWN0UmVub3ZhdGlvbi5jb3Vyc2VfbW9kYWxpdHk/LmNvZGUgPyB0aGlzLmNvdXJzZVNlbGVjdFJlbm92YXRpb24uY291cnNlX21vZGFsaXR5Py5jb2RlIDogbnVsbCk7XG4gICAgdGhpcy5nZXRBdmFpbGlibGVDb3Vyc2VzKCk7XG4gIH1cblxuICBzdGFydExvY2FsU3RvcmFnZVdvcmsoKSB7XG4gICAgdGhpcy5jb250cm9scy5mb3JFYWNoKGNvbnRyb2wgPT4ge1xuICAgICAgbGV0IGxvY2FsU3RvcmFnZVZhbHVlOiBsb2NhbFN0b3JhZ2VWYWx1ZXMgPSB0aGlzLnJlYWRBbmRXcml0ZUxTKDEsIGNvbnRyb2wubmFtZSk7XG4gICAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzW2NvbnRyb2wubmFtZV0uc2V0VmFsdWUobG9jYWxTdG9yYWdlVmFsdWUudmFsdWUpO1xuICAgICAgdGhpcy5saXN0ZW5Gb3JtQ2hhbmdlcygxLCBjb250cm9sLm5hbWUsIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbY29udHJvbC5uYW1lXS52YWx1ZUNoYW5nZXMpO1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0UGFyYW1ldGVycygpIHtcbiAgICB0aGlzLnBhcmFtZXRlclNlcnZpY2UuZ2V0QWxsUGxhbnMoKS5zdWJzY3JpYmUoKHJlc3BvbnNlKSA9PiB7XG4gICAgICB0aGlzLnBsYW5zID0gcmVzcG9uc2UuZGF0YTtcbiAgICB9KTtcbiAgICB0aGlzLnBhcmFtZXRlclNlcnZpY2UuZ2V0TGV2ZWxzKCkuc3Vic2NyaWJlKChyZXNwb25zZSkgPT4ge1xuICAgICAgdGhpcy5sZXZlbHMgPSByZXNwb25zZS5kYXRhO1xuICAgIH0pO1xuICB9XG5cbiAgaW5pdEZvcm0oKSB7XG4gICAgdGhpcy5jb2RGb3JtU3RlcE9uZSA9IHRoaXMuZmIuZ3JvdXAoe1xuICAgICAgYWNhZGVtaWNfcGxhbjogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxuICAgICAgY291cnNlX3R5cGU6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcbiAgICAgIGFncmVlbWVudF9ieV9jYXRlZ29yeTogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxuICAgICAgZW5nbGlzaF9sZXZlbDogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxuICAgICAgYXZhaWxpYmxlX2NvdXJzZXM6IFsnJywgW11dLFxuICAgICAgY291cnNlX21vZGFsaXR5OiBbJyddLFxuXG4gICAgfSk7XG4gIH1cblxuICBzZXRWYWx1ZXNCeUxvY2FsU3RvcmFnZSgpIHtcbiAgICBjb25zdCBhY2FkZW1pY1BsYW4gPSB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhY2FkZW1pY19wbGFuJ10udmFsdWUgfHwgbnVsbDtcbiAgICBpZiAoIWFjYWRlbWljUGxhbikgcmV0dXJuO1xuICAgIHRoaXMuc2VsZWN0QWNhZGVtaWNQbGFuKGFjYWRlbWljUGxhbik7XG5cbiAgICBjb25zdCBhZ3JlZW1lbnRCeUNhdGVnb3J5ID0gdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYWdyZWVtZW50X2J5X2NhdGVnb3J5J10udmFsdWUgfHwgbnVsbDtcbiAgICBpZiAoIWFncmVlbWVudEJ5Q2F0ZWdvcnkpIHJldHVybjtcbiAgICB0aGlzLmdldEF2YWlsaWJsZUNvdXJzZXMoKTtcblxuICAgIGNvbnN0IGVuZ2xpc2hMZXZlbCA9IHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2VuZ2xpc2hfbGV2ZWwnXS52YWx1ZSB8fCBudWxsO1xuICAgIGlmICghZW5nbGlzaExldmVsKSByZXR1cm47XG4gICAgdGhpcy5nZXRBdmFpbGlibGVDb3Vyc2VzKCk7XG5cbiAgICBjb25zdCBjb3Vyc2VNb2RhbGl0eSA9IHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2NvdXJzZV9tb2RhbGl0eSddLnZhbHVlIHx8IG51bGw7XG4gICAgaWYgKCFjb3Vyc2VNb2RhbGl0eSkgcmV0dXJuO1xuICAgIHRoaXMuZ2V0QXZhaWxpYmxlQ291cnNlcygpO1xuICB9XG5cbiAgc2VuZEZvcm0oKSB7XG4gICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5tYXJrQXNUb3VjaGVkKCk7XG4gICAgaWYgKHRoaXMuY29kRm9ybVN0ZXBPbmUuaW52YWxpZCkgcmV0dXJuO1xuXG4gICAgLy8gTW92ZXJub3MgYWwgcGFzbyAyXG4gICAgdGhpcy5jaGFuZ2VTdGVwRXZlbnQuZW1pdCgxKTtcbiAgfVxuXG4gIHJlc2V0Rm9ybSgpIHtcbiAgICB0aGlzLnJlc2V0TG9jYWxTdG9yYWdlKHRoaXMuY29udHJvbHMpO1xuICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUucmVzZXQoKTtcbiAgfVxuXG4gIC8vIEV2ZW50b3MgZGUgbG9zIHNlbGVjdHNcbiAgc2VsZWN0QWNhZGVtaWNQbGFuKGFjYWRlbWljX3BsYW46IGFueSkge1xuICAgIGlmIChhY2FkZW1pY19wbGFuICE9PSAnUGxhbicpIHtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2FjYWRlbWljX3BsYW4nXS5zZXRWYWx1ZShhY2FkZW1pY19wbGFuKTtcbiAgICAgIC8vIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2FncmVlbWVudF9ieV9jYXRlZ29yeSddLnNldFZhbHVlKG51bGwpO1xuICAgICAgLy8gdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snc2Nob29sX25hbWUnXS5zZXRWYWx1ZShudWxsKTtcbiAgICAgIC8vIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2NvdXJzZV90eXBlJ10uc2V0VmFsdWUobnVsbCk7XG4gICAgICB0aGlzLmdldENvdXJzZVR5cGUoYWNhZGVtaWNfcGxhbik7XG4gICAgICB0aGlzLmdldEFncmVlbWVudEJ5UGxhbihhY2FkZW1pY19wbGFuKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYWNhZGVtaWNfcGxhbiddLnNldFZhbHVlKG51bGwpO1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snY291cnNlX3R5cGUnXS5zZXRWYWx1ZShudWxsKTtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2FncmVlbWVudF9ieV9jYXRlZ29yeSddLnNldFZhbHVlKG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIGdldENvdXJzZVR5cGUocGxhbjogbnVtYmVyKSB7XG4gICAgdGhpcy5wYXJhbWV0ZXJTZXJ2aWNlLmdldENvdXJzZXNUeXBlc0J5UGxhbihwbGFuKS5zdWJzY3JpYmUoKHJlc3BvbnNlKSA9PiB7XG4gICAgICB0aGlzLmNvdXJzZV90eXBlID0gcmVzcG9uc2UuZGF0YTtcbiAgICB9KTtcbiAgfVxuXG4gIGdldEFncmVlbWVudEJ5UGxhbihwbGFuOiBudW1iZXIpIHtcbiAgICB0aGlzLnBhcmFtZXRlclNlcnZpY2UuZ2V0QWdyZWVtZW50QnlDYXRlZ29yeShwbGFuKS5zdWJzY3JpYmUoKHJlc3BvbnNlKSA9PiB7XG4gICAgICB0aGlzLmFncmVlbWVudHMgPSByZXNwb25zZS5kYXRhO1xuICAgIH0pO1xuICB9XG5cbiAgc2VsZWN0Q291cnNlc1R5cGVzQnlQbGFuKGNvdXJzZXNUeXBlczogYW55KSB7XG4gICAgaWYgKGNvdXJzZXNUeXBlcyAhPT0gJ1RpcG8gZGUgcGxhbicpIHtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2NvdXJzZV9tb2RhbGl0eSddLnNldFZhbHVlKG51bGwpO1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snY291cnNlX3R5cGUnXS5zZXRWYWx1ZShjb3Vyc2VzVHlwZXMpO1xuICAgICAgdGhpcy5nZXRBdmFpbGlibGVDb3Vyc2VzKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2NvdXJzZV90eXBlJ10uc2V0VmFsdWUobnVsbCk7XG4gICAgfVxuICB9XG5cbiAgc2VsZWN0QWdyZWVtZW50QnlDYXRlZ29yeShhZ3JlZW1lbnRCeUNhdGVnb3JpZXM6IGFueSkge1xuICAgIGlmIChhZ3JlZW1lbnRCeUNhdGVnb3JpZXMgIT09ICdDb252ZW5pbyBwb3IgY2F0ZWdvcmlhJykge1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snY291cnNlX21vZGFsaXR5J10uc2V0VmFsdWUobnVsbCk7XG4gICAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhZ3JlZW1lbnRfYnlfY2F0ZWdvcnknXS5zZXRWYWx1ZShhZ3JlZW1lbnRCeUNhdGVnb3JpZXMpO1xuICAgICAgdGhpcy5jb21tdW5pY2F0b3JTZXJ2aWNlLnNldEN1cnJlbnRBZ3JlZW1lbnQoYWdyZWVtZW50QnlDYXRlZ29yaWVzKTtcbiAgICAgIHRoaXMuZ2V0QXZhaWxpYmxlQ291cnNlcygpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhZ3JlZW1lbnRfYnlfY2F0ZWdvcnknXS5zZXRWYWx1ZShudWxsKTtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ3NjaG9vbF9uYW1lJ10uc2V0VmFsdWUobnVsbCk7XG4gICAgfVxuICB9XG5cbiAgc2VsZWN0TGV2ZWwobGV2ZWxzOiBhbnkpIHtcbiAgICBpZiAobGV2ZWxzICE9PSAnTml2ZWwgZGUgaW5nbMOpcycpIHtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2NvdXJzZV9tb2RhbGl0eSddLnNldFZhbHVlKG51bGwpO1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snZW5nbGlzaF9sZXZlbCddLnNldFZhbHVlKGxldmVscyk7XG4gICAgICB0aGlzLmdldEF2YWlsaWJsZUNvdXJzZXMoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snZW5nbGlzaF9sZXZlbCddLnNldFZhbHVlKG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIHNlbGVjdEF2YWlsaWJsZUNvdXJzZXMoYXZhaWxpYmxlQ291cnNlczogYW55KSB7XG4gICAgaWYgKGF2YWlsaWJsZUNvdXJzZXMgIT09ICdHcnVwb3MgZGlzcG9uaWJsZXMnKSB7XG4gICAgICBsZXQgY291cnNlTW9kID0gdGhpcy5hdmFpbGlibGVDb3Vyc2VzLmZpbmQob2JqZXRvID0+IG9iamV0by5jb2RlID09PSBwYXJzZUludChhdmFpbGlibGVDb3Vyc2VzLCAxMCkpO1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snY291cnNlX21vZGFsaXR5J10uc2V0VmFsdWUoY291cnNlTW9kLm1vZGFsaXR5KTtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2F2YWlsaWJsZV9jb3Vyc2VzJ10uc2V0VmFsdWUoYXZhaWxpYmxlQ291cnNlcyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2F2YWlsaWJsZV9jb3Vyc2VzJ10uc2V0VmFsdWUobnVsbCk7XG4gICAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhZ3JlZW1lbnRfYnlfY2F0ZWdvcnknXS5zZXRWYWx1ZShudWxsKTtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2NvdXJzZV90eXBlJ10uc2V0VmFsdWUobnVsbCk7XG4gICAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydlbmdsaXNoX2xldmVsJ10uc2V0VmFsdWUobnVsbCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSB2YWxpZFJlcXVlc3QoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2VuZ2xpc2hfbGV2ZWwnXS52YWx1ZSAhPSAnJyAmJlxuICAgICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYWdyZWVtZW50X2J5X2NhdGVnb3J5J10udmFsdWUgIT0gJycgJiZcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2NvdXJzZV90eXBlJ10udmFsdWUgIT0gJydcbiAgICApO1xuICB9XG5cbiAgZ2V0QXZhaWxpYmxlQ291cnNlcygpIHtcbiAgICB0aGlzLmF2YWlsaWJsZUNvdXJzZXMgPSBbXTtcbiAgICBpZiAodGhpcy52YWxpZFJlcXVlc3QoKSkge1xuICAgICAgbGV0IHJlcXVlc3RfYXZhaWxpYmxlQ291cnNlczogR2V0QXZhaWxpYmxlQ291cnNlc1JxID0ge1xuICAgICAgICB0b2tlbjogdGhpcy5iYXNlU2VydmljZS5nZXRVc2VyVG9rZW4oKSxcbiAgICAgICAgZW5nbGlzaF9sZXZlbDogdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snZW5nbGlzaF9sZXZlbCddLnZhbHVlLFxuICAgICAgICBhZ3JlZW1lbnQ6IHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2FncmVlbWVudF9ieV9jYXRlZ29yeSddLnZhbHVlLFxuICAgICAgICBjb3Vyc2VfdHlwZTogdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snY291cnNlX3R5cGUnXS52YWx1ZSxcbiAgICAgIH07XG5cbiAgICAgIHRoaXMuY291cnNlU2VydmljZS5nZXRBdmFpbGFibGVDb3Vyc2VzQnlMZXZBZ3JlZUNUeXBlKHJlcXVlc3RfYXZhaWxpYmxlQ291cnNlcykuc3Vic2NyaWJlKChyZXNwb25zZSkgPT4ge1xuICAgICAgICBpZiAocmVzcG9uc2UuZGF0YSkge1xuICAgICAgICAgICAgbGV0IGNvdXJzZXM6IGFueVtdID0gcmVzcG9uc2UuZGF0YTtcbiAgICAgICAgICAgIHRoaXMuaGFzQXZhaWxhYmxlQ291cnNlID0gdHJ1ZTtcbiAgICAgICAgICAgIGNvdXJzZXMuZm9yRWFjaChjb3Vyc2UgPT4ge1xuICAgICAgICAgICAgICBsZXQgc2NoZWR1bGVQYXJ0cyA9IGNvdXJzZS5jb3Vyc2Vfc2NoZWR1bGVbMF0uc3BsaXQoXCIgXCIpO1xuICAgICAgICAgICAgICBsZXQgc3RhcnRUaW1lID0gc2NoZWR1bGVQYXJ0c1syXTtcbiAgICAgICAgICAgICAgdGhpcy5hdmFpbGlibGVDb3Vyc2VzLnB1c2goe1xuICAgICAgICAgICAgICAgIGNvZGU6IGNvdXJzZS5jb2RlLFxuICAgICAgICAgICAgICAgIG5hbWU6IGBDdXJzbyAke2NvdXJzZS5jb3Vyc2VfbW9kYWxpdHkubmFtZSA9PT0gJ1ByZXNlbmNpYWwnID8gJ1ByZXNlbmNpYWwnIDogJ1ZpcnR1YWwnfSAtIFRlYWNoZXIgJHtjb3Vyc2UudGVhY2hlcn0gLSAgRmVjaGEgZGUgaW5pY2lvOiAke2NvdXJzZS50b19zdGFydH0sIEhvcmEgZGUgaW5pY2lvOiAke3N0YXJ0VGltZX0sIEN1cG9zIGRpc3A6ICR7Y291cnNlLmF2YWlsYWJsZV9jYXBhY2l0eX1gLFxuICAgICAgICAgICAgICAgIG1vZGFsaXR5OiBjb3Vyc2UuY291cnNlX21vZGFsaXR5LmNvZGVcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmhhc0F2YWlsYWJsZUNvdXJzZSA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYXZhaWxpYmxlX2NvdXJzZXMnXS5zZXRWYWx1ZShcIlwiKTtcbiAgICAgICAgICAgIHRoaXMuc2V0VmFsdWVTdGVwRm91cigpO1xuXG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBzZXRWYWx1ZVN0ZXBGb3VyKCl7XG4gICAgdGhpcy5zZXREYXRhSW5Mb2NhbFN0b3JhZ2UoNCwgJ3Byb2dyYW1fcHJpY2UnLCBudWxsKTtcbiAgICB0aGlzLnNldERhdGFJbkxvY2FsU3RvcmFnZSg0LCAncXVvdGFfdGltZXMnLCBudWxsKTtcbiAgICB0aGlzLnNldERhdGFJbkxvY2FsU3RvcmFnZSg0LCAndG90YWxfcHJpY2UnLCBudWxsKTtcbiAgfVxufVxuIiwiPGZvcm0gW2Zvcm1Hcm91cF09XCJjb2RGb3JtU3RlcE9uZVwiIGNsYXNzPVwiZ3JpZFwiPlxuICA8ZGl2IGNsYXNzPVwiY29sXCI+XG4gICAgPGlwdC1zZWxlY3RcbiAgICAgIFtpbml0aWFsVmFsdWVdPVwiY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2FjYWRlbWljX3BsYW4nXS52YWx1ZVwiXG4gICAgICBbc2VsZWN0Q29kZV09XCJjb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYWNhZGVtaWNfcGxhbiddLnZhbHVlID09PSBudWxsPyAnUGxhbic6IGNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhY2FkZW1pY19wbGFuJ10udmFsdWVcIlxuICAgICAgW2RlZmF1bHRUZXh0XT1cIidQbGFuJ1wiXG4gICAgICBbaXNSZXF1aXJlZF09XCJ0cnVlXCJcbiAgICAgIChldmVudFNlbGVjdCk9XCJzZWxlY3RBY2FkZW1pY1BsYW4oJGV2ZW50KVwiXG4gICAgICBbZGF0YV09XCJwbGFuc1wiXG4gICAgICBbY29udHJvbF09XCJjb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYWNhZGVtaWNfcGxhbiddXCJcbiAgICAgIFtkaXNhYmxlZFNlbF09XCJpc0Rpc2FibGVkU2VsXCJcbiAgICA+PC9pcHQtc2VsZWN0PlxuICAgIDxpcHQtc2VsZWN0XG4gICAgICBbaW5pdGlhbFZhbHVlXT1cImNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydjb3Vyc2VfdHlwZSddLnZhbHVlXCJcbiAgICAgIFtzZWxlY3RDb2RlXT1cImNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydjb3Vyc2VfdHlwZSddLnZhbHVlID09PSBudWxsPyAnVGlwbyBkZSBwbGFuJzogY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2NvdXJzZV90eXBlJ10udmFsdWVcIlxuICAgICAgW2RlZmF1bHRUZXh0XT1cIidUaXBvIGRlIHBsYW4nXCJcbiAgICAgIFtpc1JlcXVpcmVkXT1cInRydWVcIlxuICAgICAgKGV2ZW50U2VsZWN0KT1cInNlbGVjdENvdXJzZXNUeXBlc0J5UGxhbigkZXZlbnQpXCJcbiAgICAgIFtkYXRhXT1cImNvdXJzZV90eXBlXCJcbiAgICAgIFtjb250cm9sXT1cImNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydjb3Vyc2VfdHlwZSddXCJcbiAgICAgIFtkaXNhYmxlZFNlbF09XCJpc0Rpc2FibGVkU2VsXCJcbiAgICA+PC9pcHQtc2VsZWN0PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImNvbFwiPlxuICAgIDxpcHQtc2VsZWN0XG4gICAgICBbaW5pdGlhbFZhbHVlXT1cImNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhZ3JlZW1lbnRfYnlfY2F0ZWdvcnknXS52YWx1ZVwiXG4gICAgICBbc2VsZWN0Q29kZV09XCJjb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYWdyZWVtZW50X2J5X2NhdGVnb3J5J10udmFsdWUgPT09IG51bGw/ICdDb252ZW5pbyBwb3IgY2F0ZWdvcmlhJzogY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2FncmVlbWVudF9ieV9jYXRlZ29yeSddLnZhbHVlXCJcbiAgICAgIFtkZWZhdWx0VGV4dF09XCInQ29udmVuaW8gcG9yIGNhdGVnb3JpYSdcIlxuICAgICAgW2lzUmVxdWlyZWRdPVwidHJ1ZVwiXG4gICAgICAoZXZlbnRTZWxlY3QpPVwic2VsZWN0QWdyZWVtZW50QnlDYXRlZ29yeSgkZXZlbnQpXCJcbiAgICAgIFtkYXRhXT1cImFncmVlbWVudHNcIlxuICAgICAgW2NvbnRyb2xdPVwiY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2FncmVlbWVudF9ieV9jYXRlZ29yeSddXCJcbiAgICAgIFtkaXNhYmxlZFNlbF09XCJpc0Rpc2FibGVkU2VsXCJcbiAgICA+PC9pcHQtc2VsZWN0PlxuICAgIDxpcHQtc2VsZWN0XG4gICAgICBbaW5pdGlhbFZhbHVlXT1cImNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydlbmdsaXNoX2xldmVsJ10udmFsdWVcIlxuICAgICAgW3NlbGVjdENvZGVdPVwiY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2VuZ2xpc2hfbGV2ZWwnXS52YWx1ZSA9PT0gbnVsbD8gJ05pdmVsIGRlIGluZ2zDqXMnOiBjb2RGb3JtU3RlcE9uZS5jb250cm9sc1snZW5nbGlzaF9sZXZlbCddLnZhbHVlXCJcbiAgICAgIFtkZWZhdWx0VGV4dF09XCInTml2ZWwgZGUgaW5nbMOpcydcIlxuICAgICAgW2lzUmVxdWlyZWRdPVwidHJ1ZVwiXG4gICAgICAoZXZlbnRTZWxlY3QpPVwic2VsZWN0TGV2ZWwoJGV2ZW50KVwiXG4gICAgICBbZGF0YV09XCJsZXZlbHNcIlxuICAgICAgW2NvbnRyb2xdPVwiY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2VuZ2xpc2hfbGV2ZWwnXVwiXG4gICAgICBbZGlzYWJsZWRTZWxdPVwiaXNEaXNhYmxlZFNlbFwiXG4gICAgPjwvaXB0LXNlbGVjdD5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJjb2wtMTJcIj5cbiAgICA8aXB0LXNlbGVjdFxuICAgICAgW2luaXRpYWxWYWx1ZV09XCJjb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYXZhaWxpYmxlX2NvdXJzZXMnXS52YWx1ZVwiXG4gICAgICBbc2VsZWN0Q29kZV09XCJjb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYXZhaWxpYmxlX2NvdXJzZXMnXS52YWx1ZSA9PT0gbnVsbD8gJ0dydXBvcyBkaXNwb25pYmxlcyc6IGNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhdmFpbGlibGVfY291cnNlcyddLnZhbHVlXCJcbiAgICAgIFtkZWZhdWx0VGV4dF09XCInR3J1cG9zIGRpc3BvbmlibGVzJ1wiXG4gICAgICBbaXNSZXF1aXJlZF09XCJ0cnVlXCJcbiAgICAgIChldmVudFNlbGVjdCk9XCJzZWxlY3RBdmFpbGlibGVDb3Vyc2VzKCRldmVudClcIlxuICAgICAgW2RhdGFdPVwiYXZhaWxpYmxlQ291cnNlc1wiXG4gICAgICBbY29udHJvbF09XCJjb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYXZhaWxpYmxlX2NvdXJzZXMnXVwiXG4gICAgICBbZGlzYWJsZWRTZWxdPVwiaXNEaXNhYmxlZFNlbFwiXG4gICAgPjwvaXB0LXNlbGVjdD5cbiAgPC9kaXY+XG4gIDxzcGFuICpuZ0lmPVwiIWhhc0F2YWlsYWJsZUNvdXJzZVwiIGNsYXNzPVwibXQtMSBwbC0yIHRleHQtcmVkLTUwMFwiPlRvZGF2w61hIG5vIGhheSBjdXJzb3MgY29uIGVzdGFzIGNhcmFjdGVyw61zdGljYXMuPC9zcGFuPlxuPC9mb3JtPlxuXG48ZGl2IGNsYXNzPVwiZmxleCBtdC0yIGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtM1wiPlxuICA8c3BhbiAqbmdJZj1cImNvZEZvcm1TdGVwT25lLmludmFsaWQgJiYgY29kRm9ybVN0ZXBPbmUudG91Y2hlZFwiIGNsYXNzPVwidGV4dC1yZWQtNTAwIGZvbnQtYm9sZCB0ZXh0LWNlbnRlciBtdC0xIHB5LTIgYmctcmVkLTEwMCB3LWZ1bGwgYm9yZGVyLXJvdW5kLXhsXCI+RmFsdGFuIGNhbXBvcyBwb3IgbGxlbmFyLjwvc3Bhbj5cbiAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgW2NsYXNzXT1cImlzRWRpdENvZCA/ICdtbC1hdXRvIHllbGxvdy0zMDAgcC1idXR0b24tc20nIDogJ21sLWF1dG8gcC1idXR0b24tc20nXCIgKGNsaWNrKT1cInNlbmRGb3JtKClcIiBwQnV0dG9uIGxhYmVsPVwiU2lndWllbnRlXCIgaWNvbj1cInBpIHBpLWFycm93LXJpZ2h0XCI+PC9idXR0b24+XG48L2Rpdj5cbiJdfQ==
|
|
302
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kLWZvcm0tc3RlcC1vbmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvZC9zdGVwcy9jb2QtZm9ybS1zdGVwLW9uZS9jb2QtZm9ybS1zdGVwLW9uZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29kL3N0ZXBzL2NvZC1mb3JtLXN0ZXAtb25lL2NvZC1mb3JtLXN0ZXAtb25lLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUErQyxNQUFNLGVBQWUsQ0FBQztBQUN2SSxPQUFPLEVBQTBCLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBTXBFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsWUFBWSxFQUFzQixNQUFNLDRCQUE0QixDQUFDOzs7Ozs7Ozs7OztBQVE5RSxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsWUFBWTtJQXVCdkQsWUFDVSxFQUFlLEVBQ2YsZ0JBQWtDLEVBQ2xDLGFBQTRCLEVBQzVCLFdBQXdCLEVBQ3hCLGFBQTRCLEVBQzVCLG1CQUF3QyxFQUN4QyxLQUF3QjtRQUVoQyxLQUFLLEVBQUUsQ0FBQztRQVJBLE9BQUUsR0FBRixFQUFFLENBQWE7UUFDZixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUF2QnhCLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQVF2RCxxQkFBZ0IsR0FBVSxFQUFFLENBQUM7UUFJN0Isa0JBQWEsR0FBUyxLQUFLLENBQUE7UUFDM0IsMEJBQTBCO1FBQzFCLGFBQVEsR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQVkzQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDO0lBQzFDLENBQUM7SUFFRDs7Ozs7TUFLRTtJQUVGLFdBQVcsQ0FBQyxPQUFzQjtRQUVoQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFBO1FBQzlCLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLFlBQVk7YUFDdkQsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFFMUUsSUFBSSxDQUFDLG1CQUFtQixDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsY0FBYyxDQUFDLENBQUMsRUFBRSx1QkFBdUIsQ0FBRSxDQUFDLENBQUM7UUFFL0csSUFBSSxPQUFPLENBQUMsYUFBYSxDQUFDLElBQUksSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLGtCQUFrQixLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsa0JBQWtCLElBQUksSUFBSSxJQUFLLElBQUksQ0FBQyxTQUFTLEtBQUssS0FBSyxJQUFJLElBQUksQ0FBQyxZQUFZLEtBQUssS0FBSyxFQUFFO1lBQ3pMLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ25DLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDNUI7YUFBSTtZQUNILElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM3RCxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDM0QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDckUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzdELElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLG1CQUFtQixDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2pFLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ2hFO1FBRUQsSUFBSSxPQUFPLENBQUMsb0JBQW9CLENBQUMsSUFBSSxJQUFJLENBQUMsa0JBQWtCLElBQUksSUFBSSxJQUFLLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLFlBQVksS0FBSyxLQUFLLEVBQUc7WUFDdkgsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQztZQUUxQyxJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsbUJBQW1CLEVBQUU7Z0JBQ2xFLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO2FBQzNCO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO2FBQzVCO1lBRUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUM1QjthQUFLLElBQUcsT0FBTyxDQUFDLG9CQUFvQixDQUFDLElBQUksSUFBSSxDQUFDLGtCQUFrQixJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLHNCQUFzQixJQUFJLElBQUksQ0FBQyxZQUFZLEtBQUssSUFBSSxFQUFFO1lBQ3pKLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDO1lBQ2xDLElBQUksQ0FBQyxhQUFhLEdBQUUsSUFBSSxDQUFBO1lBQ3hCLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDMUI7SUFFTCxDQUFDO0lBRU8sV0FBVyxDQUFDLElBQVM7UUFDM0IsTUFBTSxFQUFFLGNBQWMsRUFBRSxHQUFHLElBQUksQ0FBQztRQUNoQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6RCxjQUFjLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzVFLGNBQWMsQ0FBQyxRQUFRLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNoRixjQUFjLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3hFLGNBQWMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hGLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBRTNCLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNsQixJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztTQUNsQzthQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxFQUFFO1lBQ3RELElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1NBQy9CO0lBQ0gsQ0FBQztJQUVELHNCQUFzQjtRQUNwQixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hHLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4RixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNoRyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUYsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsRixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsRyxDQUFDO0lBRUQseUJBQXlCO1FBRXZCLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDL0ssSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakosSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2SixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2SixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzdJLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbkssQ0FBQztJQUNELDBCQUEwQjtRQUN4QixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFdBQVcsRUFBRSxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDckYsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsV0FBVyxFQUFFLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNoRixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFdBQVcsRUFBRSxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsV0FBVyxFQUFFLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pMLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNKLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLHVCQUF1QixDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakssSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakssSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekksSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2SyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQscUJBQXFCO1FBQ25CLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQzlCLElBQUksaUJBQWlCLEdBQXVCLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNqRixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzdFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDbkcsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUN6RCxJQUFJLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDdkQsSUFBSSxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQzlCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDO1lBQ2xDLGFBQWEsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUMxQyxXQUFXLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDeEMscUJBQXFCLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDbEQsYUFBYSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzFDLGlCQUFpQixFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUMzQixlQUFlLEVBQUUsQ0FBQyxFQUFFLENBQUM7U0FFdEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELHVCQUF1QjtRQUNyQixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDO1FBQ2pGLElBQUksQ0FBQyxZQUFZO1lBQUUsT0FBTztRQUMxQixJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFdEMsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUM7UUFDaEcsSUFBSSxDQUFDLG1CQUFtQjtZQUFFLE9BQU87UUFDakMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFFM0IsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQztRQUNqRixJQUFJLENBQUMsWUFBWTtZQUFFLE9BQU87UUFDMUIsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFFM0IsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDO1FBQ3JGLElBQUksQ0FBQyxjQUFjO1lBQUUsT0FBTztRQUM1QixJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDcEMsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU87WUFBRSxPQUFPO1FBRXhDLHFCQUFxQjtRQUNyQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQsU0FBUztRQUNQLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDdEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRUQseUJBQXlCO0lBQ3pCLGtCQUFrQixDQUFDLGFBQWtCO1FBQ25DLElBQUksYUFBYSxLQUFLLE1BQU0sRUFBRTtZQUM1QixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDdEUsd0VBQXdFO1lBQ3hFLDhEQUE4RDtZQUM5RCw4REFBOEQ7WUFDOUQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUNsQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDeEM7YUFBTTtZQUNMLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM3RCxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDM0QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDdEU7SUFDSCxDQUFDO0lBRUQsYUFBYSxDQUFDLElBQVk7UUFDeEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ3ZFLElBQUksQ0FBQyxXQUFXLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQztRQUNuQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxJQUFZO1FBQzdCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUN4RSxJQUFJLENBQUMsVUFBVSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUM7UUFDbEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsd0JBQXdCLENBQUMsWUFBaUI7UUFDeEMsSUFBSSxZQUFZLEtBQUssY0FBYyxFQUFFO1lBQ25DLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQy9ELElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUNuRSxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztTQUM1QjthQUFNO1lBQ0wsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzVEO0lBQ0gsQ0FBQztJQUVELHlCQUF5QixDQUFDLHFCQUEwQjtRQUNsRCxJQUFJLHFCQUFxQixLQUFLLHdCQUF3QixFQUFFO1lBQ3RELElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQy9ELElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLHVCQUF1QixDQUFDLENBQUMsUUFBUSxDQUFDLHFCQUFxQixDQUFDLENBQUM7WUFDdEYsSUFBSSxDQUFDLG1CQUFtQixDQUFDLG1CQUFtQixDQUFDLHFCQUFxQixDQUFDLENBQUM7WUFDcEUsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7U0FDNUI7YUFBTTtZQUNMLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLHVCQUF1QixDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3JFLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM1RDtJQUNILENBQUM7SUFFRCxXQUFXLENBQUMsTUFBVztRQUNyQixJQUFJLE1BQU0sS0FBSyxpQkFBaUIsRUFBRTtZQUNoQyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUMvRCxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDL0QsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7U0FDNUI7YUFBTTtZQUNMLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM5RDtJQUNILENBQUM7SUFFRCxzQkFBc0IsQ0FBQyxnQkFBcUI7UUFDMUMsSUFBSSxnQkFBZ0IsS0FBSyxvQkFBb0IsRUFBRTtZQUM3QyxJQUFJLFNBQVMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxRQUFRLENBQUMsZ0JBQWdCLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNyRyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDN0UsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztTQUM5RTthQUFNO1lBQ0wsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDakUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDckUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzNELElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM5RDtJQUNILENBQUM7SUFFTyxZQUFZO1FBQ2xCLE9BQU8sQ0FDTCxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxLQUFLLElBQUksRUFBRTtZQUN6RCxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFO1lBQ2pFLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQ3hELENBQUM7SUFDSixDQUFDO0lBRUQsbUJBQW1CO1FBQ2pCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFDM0IsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLEVBQUU7WUFDdkIsSUFBSSx3QkFBd0IsR0FBMEI7Z0JBQ3BELEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRTtnQkFDdEMsYUFBYSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDLEtBQUs7Z0JBQ2xFLFNBQVMsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLEtBQUs7Z0JBQ3RFLFdBQVcsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQyxLQUFLO2FBQy9ELENBQUM7WUFFRixJQUFJLENBQUMsYUFBYSxDQUFDLGtDQUFrQyxDQUFDLHdCQUF3QixDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7Z0JBQ3JHLElBQUksUUFBUSxDQUFDLElBQUksRUFBRTtvQkFDZixJQUFJLE9BQU8sR0FBVSxRQUFRLENBQUMsSUFBSSxDQUFDO29CQUNuQyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDO29CQUMvQixPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFO3dCQUN2QixJQUFJLGFBQWEsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQzt3QkFDekQsSUFBSSxTQUFTLEdBQUcsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO3dCQUNqQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDOzRCQUN6QixJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUk7NEJBQ2pCLElBQUksRUFBRSxTQUFTLE1BQU0sQ0FBQyxlQUFlLENBQUMsSUFBSSxLQUFLLFlBQVksQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxTQUFTLGNBQWMsTUFBTSxDQUFDLE9BQU8sd0JBQXdCLE1BQU0sQ0FBQyxRQUFRLHFCQUFxQixTQUFTLGlCQUFpQixNQUFNLENBQUMsa0JBQWtCLEVBQUU7NEJBQ25PLFFBQVEsRUFBRSxNQUFNLENBQUMsZUFBZSxDQUFDLElBQUk7eUJBQ3RDLENBQUMsQ0FBQztvQkFDTCxDQUFDLENBQUMsQ0FBQTtpQkFDSDtxQkFBTTtvQkFDTCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDO29CQUNoQyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztvQkFDL0QsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7aUJBRXpCO1lBQ0gsQ0FBQyxDQUFDLENBQUM7U0FDTjtJQUNILENBQUM7SUFFRCxnQkFBZ0I7UUFDZCxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQyxFQUFFLGVBQWUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNyRCxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQyxFQUFFLGFBQWEsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQyxFQUFFLGFBQWEsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNyRCxDQUFDOztvSEFyVFUsdUJBQXVCO3dHQUF2Qix1QkFBdUIsb1ZDaEJwQyw4eEdBZ0VBOzJGRGhEYSx1QkFBdUI7a0JBTG5DLFNBQVM7K0JBQ0UsdUJBQXVCO3FSQU14QixXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLHNCQUFzQjtzQkFBOUIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNJLGVBQWU7c0JBQXhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMsIE9uQ2hhbmdlcywgQ2hhbmdlRGV0ZWN0b3JSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBHZXRBdmFpbGlibGVDb3Vyc2VzUnEgfSBmcm9tICcuLi8uLi8uLi9jb3JlL21vZGVscy9jb3Vyc2UvY291cnNlLXJxLm1vZGVsJztcbmltcG9ydCB7IENvcGllc1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL3NlcnZpY2VzL2NvcGllcy5zZXJ2aWNlJztcbmltcG9ydCB7IENvdXJzZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL3NlcnZpY2VzL2NvdXJzZS1zZXJ2aWNlL2NvdXJzZS1zZXJ2aWNlLm1vZGVsJztcbmltcG9ydCB7IFBhcmFtZXRlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL3NlcnZpY2VzL3BhcmFtZXRlcnMtc2VydmljZS9wYXJhbWV0ZXJzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQmFzZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL3V0aWxzL2Jhc2Utc2VydmljZS9iYXNlLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29kRm9ybUNvbnRyb2xzIH0gZnJvbSAnLi4vLi4vbG9naWMvY29kLWZvcm0tY29udHJvbHMnO1xuaW1wb3J0IHsgQ29kRm9ybVN0ZXBzLCBsb2NhbFN0b3JhZ2VWYWx1ZXMgfSBmcm9tICcuLi8uLi9sb2dpYy9jb2QtZm9ybS1zdGVwcyc7XG5pbXBvcnQgeyBDb21tdW5pY2F0b3JTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vbG9naWMvY29tbXVuaWNhdG9yLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtY29kLWZvcm0tc3RlcC1vbmUnLFxuICB0ZW1wbGF0ZVVybDogJy4vY29kLWZvcm0tc3RlcC1vbmUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jb2QtZm9ybS1zdGVwLW9uZS5jb21wb25lbnQuY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIENvZEZvcm1TdGVwT25lQ29tcG9uZW50IGV4dGVuZHMgQ29kRm9ybVN0ZXBzIGltcGxlbWVudHMgT25DaGFuZ2VzIHtcblxuICBASW5wdXQoKSBpbml0aWFsRGF0YT86IGFueTtcbiAgQElucHV0KCkgZGF0YVByZXZpdXNDb2REYXRhPzogYW55O1xuICBASW5wdXQoKSBpc0VkaXRDb2Q/OiBib29sZWFuO1xuICBASW5wdXQoKSBjb3Vyc2VTZWxlY3RSZW5vdmF0aW9uPzphbnk7XG4gIEBJbnB1dCgpIGlzUmVub3ZhdGlvbj86YW55O1xuICBAT3V0cHV0KCkgY2hhbmdlU3RlcEV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgY29waWVzOiBhbnk7XG4gIGNvZEZvcm1TdGVwT25lITogRm9ybUdyb3VwO1xuICBoYXNBdmFpbGFibGVDb3Vyc2UhOiBib29sZWFuO1xuXG4gIC8vIFBhcmFtZXRlcnNcbiAgYWdyZWVtZW50czogYW55O1xuICBhdmFpbGlibGVDb3Vyc2VzOiBhbnlbXSA9IFtdO1xuICBjb3Vyc2VfdHlwZTogYW55O1xuICBsZXZlbHM6IGFueTtcbiAgcGxhbnM6IGFueTtcbiAgaXNEaXNhYmxlZFNlbDpib29sZWFuPWZhbHNlXG4gIC8vIENvbnRyb2xzIGRlbCBmb3JtdWxhcmlvXG4gIGNvbnRyb2xzID0gbmV3IENvZEZvcm1Db250cm9scygpLmNvbnRyb2xzWzBdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLFxuICAgIHByaXZhdGUgcGFyYW1ldGVyU2VydmljZTogUGFyYW1ldGVyU2VydmljZSxcbiAgICBwcml2YXRlIGNvcGllc1NlcnZpY2U6IENvcGllc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBiYXNlU2VydmljZTogQmFzZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb3Vyc2VTZXJ2aWNlOiBDb3Vyc2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29tbXVuaWNhdG9yU2VydmljZTogQ29tbXVuaWNhdG9yU2VydmljZSxcbiAgICBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuY29waWVzID0gdGhpcy5jb3BpZXNTZXJ2aWNlLmNvcGllcztcbiAgfVxuXG4gIC8qIEVzIG5lY2VzYXJpbyByZWNvcnJlciBlbCBhcnJheSBkZSBjb250cm9scyBkZSBudWVzdHJvIGZvcm11bGFyaW8gcGFyYTpcbiAgICDinIUgTGVlciBlbCBMb2NhbCBTdG9yYWdlIHkgc2V0ZWFyIGxvcyB2YWxvcmVzXG4gICAg4pyFIFN1YnNjcmliaXJzZSBhIGxvcyBjYW1iaW9zIGRlbCBmb3JtdWxhcmlvIHBhcmEgc2V0ZWFyIHZhbG9yZXMgbnVldm9zXG5cbiAgICBOb3RhOiBsYSBjbGFzZSBDb2RGb3JtU3RlcHMoKSBzZSBlbmNhcmdhIGRlIHRvZGEgbGEgbMOzZ2ljYSBkZSBMUyBjb24gbG9zIHBhc29zIGRlbCBmb3JtdWxhcmlvIGRlbCBDT0RcbiAgKi9cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG5cbiAgICB0aGlzLmdldFBhcmFtZXRlcnMoKTtcbiAgICB0aGlzLmluaXRGb3JtKCk7XG4gICAgdGhpcy5zdGFydExvY2FsU3RvcmFnZVdvcmsoKTtcbiAgICB0aGlzLnNldFZhbHVlc0J5TG9jYWxTdG9yYWdlKClcbiAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydjb3Vyc2VfdHlwZSddLnZhbHVlQ2hhbmdlc1xuICAgIC5zdWJzY3JpYmUodmFsdWUgPT4gdGhpcy5jb21tdW5pY2F0b3JTZXJ2aWNlLnNldEN1cnJlbnRDb3Vyc2VUeXBlKHZhbHVlKSk7XG5cbiAgICB0aGlzLmNvbW11bmljYXRvclNlcnZpY2Uuc2V0Q3VycmVudEFncmVlbWVudCh0aGlzLmxvY2FsU3RvcmFnZUNPRC5nZXRDb2RGb3JtRGF0YSgxLCAnYWdyZWVtZW50X2J5X2NhdGVnb3J5JykhKTtcblxuICAgIGlmIChjaGFuZ2VzWydpbml0aWFsRGF0YSddICYmIHRoaXMuaW5pdGlhbERhdGEgIT0gbnVsbCAmJiB0aGlzLmRhdGFQcmV2aXVzQ29kRGF0YSA9PT0gbnVsbCB8fCB0aGlzLmRhdGFQcmV2aXVzQ29kRGF0YSAhPSBudWxsICAmJiB0aGlzLmlzRWRpdENvZCA9PT0gZmFsc2UgJiYgdGhpcy5pc1Jlbm92YXRpb24gPT09IGZhbHNlKSB7XG4gICAgICB0aGlzLnByb2Nlc3NEYXRhKHRoaXMuaW5pdGlhbERhdGEpO1xuICAgICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfWVsc2V7XG4gICAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhY2FkZW1pY19wbGFuJ10uc2V0VmFsdWUobnVsbCk7XG4gICAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydjb3Vyc2VfdHlwZSddLnNldFZhbHVlKG51bGwpO1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYWdyZWVtZW50X2J5X2NhdGVnb3J5J10uc2V0VmFsdWUobnVsbCk7XG4gICAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydlbmdsaXNoX2xldmVsJ10uc2V0VmFsdWUobnVsbCk7XG4gICAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhdmFpbGlibGVfY291cnNlcyddLnNldFZhbHVlKG51bGwpO1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snY291cnNlX21vZGFsaXR5J10uc2V0VmFsdWUobnVsbCk7XG4gICAgfVxuXG4gICAgaWYgKGNoYW5nZXNbJ2RhdGFQcmV2aXVzQ29kRGF0YSddICYmIHRoaXMuZGF0YVByZXZpdXNDb2REYXRhICE9IG51bGwgICYmIHRoaXMuaXNFZGl0Q29kICYmIHRoaXMuaXNSZW5vdmF0aW9uID09PSBmYWxzZSApIHtcbiAgICAgIHRoaXMucHJvY2Vzc0RhdGEodGhpcy5kYXRhUHJldml1c0NvZERhdGEpO1xuXG4gICAgICBpZiAodGhpcy5pc0VkaXRDb2QgJiYgIXRoaXMuZGF0YVByZXZpdXNDb2REYXRhLmVkaXRfY291cnNlX3BheW1lbnQpIHtcbiAgICAgICAgdGhpcy5pc0Rpc2FibGVkU2VsID0gdHJ1ZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuaXNEaXNhYmxlZFNlbCA9IGZhbHNlO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9ZWxzZSBpZihjaGFuZ2VzWydkYXRhUHJldml1c0NvZERhdGEnXSAmJiB0aGlzLmRhdGFQcmV2aXVzQ29kRGF0YSAhPSBudWxsICYmICF0aGlzLmlzRWRpdENvZCAmJiB0aGlzLmNvdXJzZVNlbGVjdFJlbm92YXRpb24gJiYgdGhpcy5pc1Jlbm92YXRpb24gPT09IHRydWUgKXtcbiAgICAgIHRoaXMuc2V0RGF0YUNvZFJlbm92YXRpb25TZWxlY3QoKTtcbiAgICAgIHRoaXMuaXNEaXNhYmxlZFNlbD0gdHJ1ZVxuICAgICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB9XG5cbiAgfVxuXG4gIHByaXZhdGUgcHJvY2Vzc0RhdGEoZGF0YTogYW55KSB7XG4gICAgY29uc3QgeyBjb2RGb3JtU3RlcE9uZSB9ID0gdGhpcztcbiAgICB0aGlzLmdldEFncmVlbWVudEJ5UGxhbihkYXRhLmNvdXJzZV90eXBlPy5hY2FkZW1pY19wbGFuLmNvZGUpO1xuICAgIHRoaXMuZ2V0Q291cnNlVHlwZShkYXRhLmNvdXJzZV90eXBlPy5hY2FkZW1pY19wbGFuLmNvZGUpO1xuICAgIGNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydlbmdsaXNoX2xldmVsJ10uc2V0VmFsdWUoZGF0YS5lbmdsaXNoX2xldmVsPy5jb2RlKTtcbiAgICBjb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYWdyZWVtZW50X2J5X2NhdGVnb3J5J10uc2V0VmFsdWUoZGF0YS5hZ3JlZW1lbnQ/LmNvZGUpO1xuICAgIGNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydjb3Vyc2VfdHlwZSddLnNldFZhbHVlKGRhdGEuY291cnNlX3R5cGU/LmNvZGUpO1xuICAgIGNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhY2FkZW1pY19wbGFuJ10uc2V0VmFsdWUoZGF0YS5jb3Vyc2VfdHlwZT8uYWNhZGVtaWNfcGxhbi5jb2RlKTtcbiAgICB0aGlzLmdldEF2YWlsaWJsZUNvdXJzZXMoKTtcblxuICAgIGlmICh0aGlzLmlzRWRpdENvZCkge1xuICAgICAgdGhpcy5zZXREYXRhRnJvbUVkaXRDb2RIaXN0b3J5KCk7XG4gICAgfSBlbHNlIGlmICghdGhpcy5pc0VkaXRDb2QgJiYgdGhpcy5pbml0aWFsRGF0YSAhPSBudWxsKSB7XG4gICAgICB0aGlzLnNldERhdGFGcm9tVXNlckhpc3RvcnkoKTtcbiAgICB9XG4gIH1cblxuICBzZXREYXRhRnJvbVVzZXJIaXN0b3J5KCl7XG4gICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYWNhZGVtaWNfcGxhbiddLnNldFZhbHVlKHRoaXMuaW5pdGlhbERhdGEuY291cnNlX3R5cGUuYWNhZGVtaWNfcGxhbi5jb2RlKTtcbiAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydjb3Vyc2VfdHlwZSddLnNldFZhbHVlKHRoaXMuaW5pdGlhbERhdGEuY291cnNlX3R5cGUuY29kZSk7XG4gICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYWdyZWVtZW50X2J5X2NhdGVnb3J5J10uc2V0VmFsdWUodGhpcy5pbml0aWFsRGF0YS5hZ3JlZW1lbnQuY29kZSk7XG4gICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snZW5nbGlzaF9sZXZlbCddLnNldFZhbHVlKHRoaXMuaW5pdGlhbERhdGEuZW5nbGlzaF9sZXZlbC5jb2RlKTtcbiAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhdmFpbGlibGVfY291cnNlcyddLnNldFZhbHVlKHRoaXMuaW5pdGlhbERhdGEuY29kZSk7XG4gICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snY291cnNlX21vZGFsaXR5J10uc2V0VmFsdWUodGhpcy5pbml0aWFsRGF0YS5jb3Vyc2VfbW9kYWxpdHkuY29kZSk7XG4gIH1cblxuICBzZXREYXRhRnJvbUVkaXRDb2RIaXN0b3J5KCl7XG5cbiAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhY2FkZW1pY19wbGFuJ10uc2V0VmFsdWUodGhpcy5kYXRhUHJldml1c0NvZERhdGEuY291cnNlX3R5cGUuYWNhZGVtaWNfcGxhbi5jb2RlID8gdGhpcy5kYXRhUHJldml1c0NvZERhdGEuY291cnNlX3R5cGUuYWNhZGVtaWNfcGxhbi5jb2RlIDogbnVsbCk7XG4gICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snY291cnNlX3R5cGUnXS5zZXRWYWx1ZSh0aGlzLmRhdGFQcmV2aXVzQ29kRGF0YS5jb3Vyc2VfdHlwZS5jb2RlID8gdGhpcy5kYXRhUHJldml1c0NvZERhdGEuY291cnNlX3R5cGUuY29kZSA6IG51bGwpO1xuICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2FncmVlbWVudF9ieV9jYXRlZ29yeSddLnNldFZhbHVlKHRoaXMuZGF0YVByZXZpdXNDb2REYXRhLmFncmVlbWVudC5jb2RlID8gdGhpcy5kYXRhUHJldml1c0NvZERhdGEuYWdyZWVtZW50LmNvZGUgOiBudWxsKTtcbiAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydlbmdsaXNoX2xldmVsJ10uc2V0VmFsdWUodGhpcy5kYXRhUHJldml1c0NvZERhdGEuZW5nbGlzaF9sZXZlbC5jb2RlID8gdGhpcy5kYXRhUHJldml1c0NvZERhdGEuZW5nbGlzaF9sZXZlbC5jb2RlIDogbnVsbCk7XG4gICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYXZhaWxpYmxlX2NvdXJzZXMnXS5zZXRWYWx1ZSh0aGlzLmRhdGFQcmV2aXVzQ29kRGF0YS5jb3Vyc2UuY29kZSA/IHRoaXMuZGF0YVByZXZpdXNDb2REYXRhLmNvdXJzZS5jb2RlIDogbnVsbCk7XG4gICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snY291cnNlX21vZGFsaXR5J10uc2V0VmFsdWUodGhpcy5kYXRhUHJldml1c0NvZERhdGEuY291cnNlLmNvdXJzZV9tb2RhbGl0eSA/IHRoaXMuZGF0YVByZXZpdXNDb2REYXRhLmNvdXJzZS5jb3Vyc2VfbW9kYWxpdHkgOiBudWxsKTtcbiAgfVxuICBzZXREYXRhQ29kUmVub3ZhdGlvblNlbGVjdCgpe1xuICAgIHRoaXMuZ2V0QWdyZWVtZW50QnlQbGFuKHRoaXMuY291cnNlU2VsZWN0UmVub3ZhdGlvbi5jb3Vyc2VfdHlwZT8uYWNhZGVtaWNfcGxhbi5jb2RlKTtcbiAgICB0aGlzLmdldENvdXJzZVR5cGUodGhpcy5jb3Vyc2VTZWxlY3RSZW5vdmF0aW9uLmNvdXJzZV90eXBlPy5hY2FkZW1pY19wbGFuLmNvZGUpO1xuICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2FjYWRlbWljX3BsYW4nXS5zZXRWYWx1ZSh0aGlzLmNvdXJzZVNlbGVjdFJlbm92YXRpb24uY291cnNlX3R5cGU/LmFjYWRlbWljX3BsYW4uY29kZSA/IHRoaXMuY291cnNlU2VsZWN0UmVub3ZhdGlvbi5jb3Vyc2VfdHlwZT8uYWNhZGVtaWNfcGxhbi5jb2RlIDogbnVsbCk7XG4gICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snY291cnNlX3R5cGUnXS5zZXRWYWx1ZSh0aGlzLmNvdXJzZVNlbGVjdFJlbm92YXRpb24uY291cnNlX3R5cGU/LmNvZGUgPyB0aGlzLmNvdXJzZVNlbGVjdFJlbm92YXRpb24uY291cnNlX3R5cGU/LmNvZGUgOiBudWxsKTtcbiAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhZ3JlZW1lbnRfYnlfY2F0ZWdvcnknXS5zZXRWYWx1ZSh0aGlzLmNvdXJzZVNlbGVjdFJlbm92YXRpb24uYWdyZWVtZW50Py5jb2RlID8gdGhpcy5jb3Vyc2VTZWxlY3RSZW5vdmF0aW9uLmFncmVlbWVudD8uY29kZSA6IG51bGwpO1xuICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2VuZ2xpc2hfbGV2ZWwnXS5zZXRWYWx1ZSh0aGlzLmNvdXJzZVNlbGVjdFJlbm92YXRpb24uZW5nbGlzaF9sZXZlbD8uY29kZSA/IHRoaXMuY291cnNlU2VsZWN0UmVub3ZhdGlvbi5lbmdsaXNoX2xldmVsPy5jb2RlIDogbnVsbCk7XG4gICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYXZhaWxpYmxlX2NvdXJzZXMnXS5zZXRWYWx1ZSh0aGlzLmNvdXJzZVNlbGVjdFJlbm92YXRpb24/LmNvZGUgPyB0aGlzLmNvdXJzZVNlbGVjdFJlbm92YXRpb24/LmNvZGUgOiBudWxsKTtcbiAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydjb3Vyc2VfbW9kYWxpdHknXS5zZXRWYWx1ZSh0aGlzLmNvdXJzZVNlbGVjdFJlbm92YXRpb24uY291cnNlX21vZGFsaXR5Py5jb2RlID8gdGhpcy5jb3Vyc2VTZWxlY3RSZW5vdmF0aW9uLmNvdXJzZV9tb2RhbGl0eT8uY29kZSA6IG51bGwpO1xuICAgIHRoaXMuZ2V0QXZhaWxpYmxlQ291cnNlcygpO1xuICB9XG5cbiAgc3RhcnRMb2NhbFN0b3JhZ2VXb3JrKCkge1xuICAgIHRoaXMuY29udHJvbHMuZm9yRWFjaChjb250cm9sID0+IHtcbiAgICAgIGxldCBsb2NhbFN0b3JhZ2VWYWx1ZTogbG9jYWxTdG9yYWdlVmFsdWVzID0gdGhpcy5yZWFkQW5kV3JpdGVMUygxLCBjb250cm9sLm5hbWUpO1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1tjb250cm9sLm5hbWVdLnNldFZhbHVlKGxvY2FsU3RvcmFnZVZhbHVlLnZhbHVlKTtcbiAgICAgIHRoaXMubGlzdGVuRm9ybUNoYW5nZXMoMSwgY29udHJvbC5uYW1lLCB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzW2NvbnRyb2wubmFtZV0udmFsdWVDaGFuZ2VzKTtcbiAgICB9KTtcbiAgfVxuXG4gIGdldFBhcmFtZXRlcnMoKSB7XG4gICAgdGhpcy5wYXJhbWV0ZXJTZXJ2aWNlLmdldEFsbFBsYW5zKCkuc3Vic2NyaWJlKChyZXNwb25zZSkgPT4ge1xuICAgICAgdGhpcy5wbGFucyA9IHJlc3BvbnNlLmRhdGE7XG4gICAgfSk7XG4gICAgdGhpcy5wYXJhbWV0ZXJTZXJ2aWNlLmdldExldmVscygpLnN1YnNjcmliZSgocmVzcG9uc2UpID0+IHtcbiAgICAgIHRoaXMubGV2ZWxzID0gcmVzcG9uc2UuZGF0YTtcbiAgICB9KTtcbiAgfVxuXG4gIGluaXRGb3JtKCkge1xuICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUgPSB0aGlzLmZiLmdyb3VwKHtcbiAgICAgIGFjYWRlbWljX3BsYW46IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcbiAgICAgIGNvdXJzZV90eXBlOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXG4gICAgICBhZ3JlZW1lbnRfYnlfY2F0ZWdvcnk6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcbiAgICAgIGVuZ2xpc2hfbGV2ZWw6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcbiAgICAgIGF2YWlsaWJsZV9jb3Vyc2VzOiBbJycsIFtdXSxcbiAgICAgIGNvdXJzZV9tb2RhbGl0eTogWycnXSxcblxuICAgIH0pO1xuICB9XG5cbiAgc2V0VmFsdWVzQnlMb2NhbFN0b3JhZ2UoKSB7XG4gICAgY29uc3QgYWNhZGVtaWNQbGFuID0gdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYWNhZGVtaWNfcGxhbiddLnZhbHVlIHx8IG51bGw7XG4gICAgaWYgKCFhY2FkZW1pY1BsYW4pIHJldHVybjtcbiAgICB0aGlzLnNlbGVjdEFjYWRlbWljUGxhbihhY2FkZW1pY1BsYW4pO1xuXG4gICAgY29uc3QgYWdyZWVtZW50QnlDYXRlZ29yeSA9IHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2FncmVlbWVudF9ieV9jYXRlZ29yeSddLnZhbHVlIHx8IG51bGw7XG4gICAgaWYgKCFhZ3JlZW1lbnRCeUNhdGVnb3J5KSByZXR1cm47XG4gICAgdGhpcy5nZXRBdmFpbGlibGVDb3Vyc2VzKCk7XG5cbiAgICBjb25zdCBlbmdsaXNoTGV2ZWwgPSB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydlbmdsaXNoX2xldmVsJ10udmFsdWUgfHwgbnVsbDtcbiAgICBpZiAoIWVuZ2xpc2hMZXZlbCkgcmV0dXJuO1xuICAgIHRoaXMuZ2V0QXZhaWxpYmxlQ291cnNlcygpO1xuXG4gICAgY29uc3QgY291cnNlTW9kYWxpdHkgPSB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydjb3Vyc2VfbW9kYWxpdHknXS52YWx1ZSB8fCBudWxsO1xuICAgIGlmICghY291cnNlTW9kYWxpdHkpIHJldHVybjtcbiAgICB0aGlzLmdldEF2YWlsaWJsZUNvdXJzZXMoKTtcbiAgfVxuXG4gIHNlbmRGb3JtKCkge1xuICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUubWFya0FzVG91Y2hlZCgpO1xuICAgIGlmICh0aGlzLmNvZEZvcm1TdGVwT25lLmludmFsaWQpIHJldHVybjtcblxuICAgIC8vIE1vdmVybm9zIGFsIHBhc28gMlxuICAgIHRoaXMuY2hhbmdlU3RlcEV2ZW50LmVtaXQoMSk7XG4gIH1cblxuICByZXNldEZvcm0oKSB7XG4gICAgdGhpcy5yZXNldExvY2FsU3RvcmFnZSh0aGlzLmNvbnRyb2xzKTtcbiAgICB0aGlzLmNvZEZvcm1TdGVwT25lLnJlc2V0KCk7XG4gIH1cblxuICAvLyBFdmVudG9zIGRlIGxvcyBzZWxlY3RzXG4gIHNlbGVjdEFjYWRlbWljUGxhbihhY2FkZW1pY19wbGFuOiBhbnkpIHtcbiAgICBpZiAoYWNhZGVtaWNfcGxhbiAhPT0gJ1BsYW4nKSB7XG4gICAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhY2FkZW1pY19wbGFuJ10uc2V0VmFsdWUoYWNhZGVtaWNfcGxhbik7XG4gICAgICAvLyB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhZ3JlZW1lbnRfYnlfY2F0ZWdvcnknXS5zZXRWYWx1ZShudWxsKTtcbiAgICAgIC8vIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ3NjaG9vbF9uYW1lJ10uc2V0VmFsdWUobnVsbCk7XG4gICAgICAvLyB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydjb3Vyc2VfdHlwZSddLnNldFZhbHVlKG51bGwpO1xuICAgICAgdGhpcy5nZXRDb3Vyc2VUeXBlKGFjYWRlbWljX3BsYW4pO1xuICAgICAgdGhpcy5nZXRBZ3JlZW1lbnRCeVBsYW4oYWNhZGVtaWNfcGxhbik7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2FjYWRlbWljX3BsYW4nXS5zZXRWYWx1ZShudWxsKTtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2NvdXJzZV90eXBlJ10uc2V0VmFsdWUobnVsbCk7XG4gICAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhZ3JlZW1lbnRfYnlfY2F0ZWdvcnknXS5zZXRWYWx1ZShudWxsKTtcbiAgICB9XG4gIH1cblxuICBnZXRDb3Vyc2VUeXBlKHBsYW46IG51bWJlcikge1xuICAgIHRoaXMucGFyYW1ldGVyU2VydmljZS5nZXRDb3Vyc2VzVHlwZXNCeVBsYW4ocGxhbikuc3Vic2NyaWJlKChyZXNwb25zZSkgPT4ge1xuICAgICAgdGhpcy5jb3Vyc2VfdHlwZSA9IHJlc3BvbnNlLmRhdGE7XG4gICAgfSk7XG4gIH1cblxuICBnZXRBZ3JlZW1lbnRCeVBsYW4ocGxhbjogbnVtYmVyKSB7XG4gICAgdGhpcy5wYXJhbWV0ZXJTZXJ2aWNlLmdldEFncmVlbWVudEJ5Q2F0ZWdvcnkocGxhbikuc3Vic2NyaWJlKChyZXNwb25zZSkgPT4ge1xuICAgICAgdGhpcy5hZ3JlZW1lbnRzID0gcmVzcG9uc2UuZGF0YTtcbiAgICB9KTtcbiAgfVxuXG4gIHNlbGVjdENvdXJzZXNUeXBlc0J5UGxhbihjb3Vyc2VzVHlwZXM6IGFueSkge1xuICAgIGlmIChjb3Vyc2VzVHlwZXMgIT09ICdUaXBvIGRlIHBsYW4nKSB7XG4gICAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydjb3Vyc2VfbW9kYWxpdHknXS5zZXRWYWx1ZShudWxsKTtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2NvdXJzZV90eXBlJ10uc2V0VmFsdWUoY291cnNlc1R5cGVzKTtcbiAgICAgIHRoaXMuZ2V0QXZhaWxpYmxlQ291cnNlcygpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydjb3Vyc2VfdHlwZSddLnNldFZhbHVlKG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIHNlbGVjdEFncmVlbWVudEJ5Q2F0ZWdvcnkoYWdyZWVtZW50QnlDYXRlZ29yaWVzOiBhbnkpIHtcbiAgICBpZiAoYWdyZWVtZW50QnlDYXRlZ29yaWVzICE9PSAnQ29udmVuaW8gcG9yIGNhdGVnb3JpYScpIHtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2NvdXJzZV9tb2RhbGl0eSddLnNldFZhbHVlKG51bGwpO1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYWdyZWVtZW50X2J5X2NhdGVnb3J5J10uc2V0VmFsdWUoYWdyZWVtZW50QnlDYXRlZ29yaWVzKTtcbiAgICAgIHRoaXMuY29tbXVuaWNhdG9yU2VydmljZS5zZXRDdXJyZW50QWdyZWVtZW50KGFncmVlbWVudEJ5Q2F0ZWdvcmllcyk7XG4gICAgICB0aGlzLmdldEF2YWlsaWJsZUNvdXJzZXMoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYWdyZWVtZW50X2J5X2NhdGVnb3J5J10uc2V0VmFsdWUobnVsbCk7XG4gICAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydzY2hvb2xfbmFtZSddLnNldFZhbHVlKG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIHNlbGVjdExldmVsKGxldmVsczogYW55KSB7XG4gICAgaWYgKGxldmVscyAhPT0gJ05pdmVsIGRlIGluZ2zDqXMnKSB7XG4gICAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydjb3Vyc2VfbW9kYWxpdHknXS5zZXRWYWx1ZShudWxsKTtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2VuZ2xpc2hfbGV2ZWwnXS5zZXRWYWx1ZShsZXZlbHMpO1xuICAgICAgdGhpcy5nZXRBdmFpbGlibGVDb3Vyc2VzKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2VuZ2xpc2hfbGV2ZWwnXS5zZXRWYWx1ZShudWxsKTtcbiAgICB9XG4gIH1cblxuICBzZWxlY3RBdmFpbGlibGVDb3Vyc2VzKGF2YWlsaWJsZUNvdXJzZXM6IGFueSkge1xuICAgIGlmIChhdmFpbGlibGVDb3Vyc2VzICE9PSAnR3J1cG9zIGRpc3BvbmlibGVzJykge1xuICAgICAgbGV0IGNvdXJzZU1vZCA9IHRoaXMuYXZhaWxpYmxlQ291cnNlcy5maW5kKG9iamV0byA9PiBvYmpldG8uY29kZSA9PT0gcGFyc2VJbnQoYXZhaWxpYmxlQ291cnNlcywgMTApKTtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2NvdXJzZV9tb2RhbGl0eSddLnNldFZhbHVlKGNvdXJzZU1vZC5tb2RhbGl0eSk7XG4gICAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhdmFpbGlibGVfY291cnNlcyddLnNldFZhbHVlKGF2YWlsaWJsZUNvdXJzZXMpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhdmFpbGlibGVfY291cnNlcyddLnNldFZhbHVlKG51bGwpO1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYWdyZWVtZW50X2J5X2NhdGVnb3J5J10uc2V0VmFsdWUobnVsbCk7XG4gICAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydjb3Vyc2VfdHlwZSddLnNldFZhbHVlKG51bGwpO1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcE9uZS5jb250cm9sc1snZW5nbGlzaF9sZXZlbCddLnNldFZhbHVlKG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgdmFsaWRSZXF1ZXN0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydlbmdsaXNoX2xldmVsJ10udmFsdWUgIT0gJycgJiZcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2FncmVlbWVudF9ieV9jYXRlZ29yeSddLnZhbHVlICE9ICcnICYmXG4gICAgICB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydjb3Vyc2VfdHlwZSddLnZhbHVlICE9ICcnXG4gICAgKTtcbiAgfVxuXG4gIGdldEF2YWlsaWJsZUNvdXJzZXMoKSB7XG4gICAgdGhpcy5hdmFpbGlibGVDb3Vyc2VzID0gW107XG4gICAgaWYgKHRoaXMudmFsaWRSZXF1ZXN0KCkpIHtcbiAgICAgIGxldCByZXF1ZXN0X2F2YWlsaWJsZUNvdXJzZXM6IEdldEF2YWlsaWJsZUNvdXJzZXNScSA9IHtcbiAgICAgICAgdG9rZW46IHRoaXMuYmFzZVNlcnZpY2UuZ2V0VXNlclRva2VuKCksXG4gICAgICAgIGVuZ2xpc2hfbGV2ZWw6IHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2VuZ2xpc2hfbGV2ZWwnXS52YWx1ZSxcbiAgICAgICAgYWdyZWVtZW50OiB0aGlzLmNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhZ3JlZW1lbnRfYnlfY2F0ZWdvcnknXS52YWx1ZSxcbiAgICAgICAgY291cnNlX3R5cGU6IHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2NvdXJzZV90eXBlJ10udmFsdWUsXG4gICAgICB9O1xuXG4gICAgICB0aGlzLmNvdXJzZVNlcnZpY2UuZ2V0QXZhaWxhYmxlQ291cnNlc0J5TGV2QWdyZWVDVHlwZShyZXF1ZXN0X2F2YWlsaWJsZUNvdXJzZXMpLnN1YnNjcmliZSgocmVzcG9uc2UpID0+IHtcbiAgICAgICAgaWYgKHJlc3BvbnNlLmRhdGEpIHtcbiAgICAgICAgICAgIGxldCBjb3Vyc2VzOiBhbnlbXSA9IHJlc3BvbnNlLmRhdGE7XG4gICAgICAgICAgICB0aGlzLmhhc0F2YWlsYWJsZUNvdXJzZSA9IHRydWU7XG4gICAgICAgICAgICBjb3Vyc2VzLmZvckVhY2goY291cnNlID0+IHtcbiAgICAgICAgICAgICAgbGV0IHNjaGVkdWxlUGFydHMgPSBjb3Vyc2UuY291cnNlX3NjaGVkdWxlWzBdLnNwbGl0KFwiIFwiKTtcbiAgICAgICAgICAgICAgbGV0IHN0YXJ0VGltZSA9IHNjaGVkdWxlUGFydHNbMl07XG4gICAgICAgICAgICAgIHRoaXMuYXZhaWxpYmxlQ291cnNlcy5wdXNoKHtcbiAgICAgICAgICAgICAgICBjb2RlOiBjb3Vyc2UuY29kZSxcbiAgICAgICAgICAgICAgICBuYW1lOiBgQ3Vyc28gJHtjb3Vyc2UuY291cnNlX21vZGFsaXR5Lm5hbWUgPT09ICdQcmVzZW5jaWFsJyA/ICdQcmVzZW5jaWFsJyA6ICdWaXJ0dWFsJ30gLSBUZWFjaGVyICR7Y291cnNlLnRlYWNoZXJ9IC0gIEZlY2hhIGRlIGluaWNpbzogJHtjb3Vyc2UudG9fc3RhcnR9LCBIb3JhIGRlIGluaWNpbzogJHtzdGFydFRpbWV9LCBDdXBvcyBkaXNwOiAke2NvdXJzZS5hdmFpbGFibGVfY2FwYWNpdHl9YCxcbiAgICAgICAgICAgICAgICBtb2RhbGl0eTogY291cnNlLmNvdXJzZV9tb2RhbGl0eS5jb2RlXG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5oYXNBdmFpbGFibGVDb3Vyc2UgPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMuY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2F2YWlsaWJsZV9jb3Vyc2VzJ10uc2V0VmFsdWUoXCJcIik7XG4gICAgICAgICAgICB0aGlzLnNldFZhbHVlU3RlcEZvdXIoKTtcblxuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgc2V0VmFsdWVTdGVwRm91cigpe1xuICAgIHRoaXMuc2V0RGF0YUluTG9jYWxTdG9yYWdlKDQsICdwcm9ncmFtX3ByaWNlJywgbnVsbCk7XG4gICAgdGhpcy5zZXREYXRhSW5Mb2NhbFN0b3JhZ2UoNCwgJ3F1b3RhX3RpbWVzJywgbnVsbCk7XG4gICAgdGhpcy5zZXREYXRhSW5Mb2NhbFN0b3JhZ2UoNCwgJ3RvdGFsX3ByaWNlJywgbnVsbCk7XG4gIH1cbn1cbiIsIjxmb3JtIFtmb3JtR3JvdXBdPVwiY29kRm9ybVN0ZXBPbmVcIiBjbGFzcz1cImdyaWRcIj5cbiAgPGRpdiBjbGFzcz1cImNvbFwiPlxuICAgIDxpcHQtc2VsZWN0XG4gICAgICBbaW5pdGlhbFZhbHVlXT1cImNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhY2FkZW1pY19wbGFuJ10udmFsdWVcIlxuICAgICAgW3NlbGVjdENvZGVdPVwiY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2FjYWRlbWljX3BsYW4nXS52YWx1ZSA9PT0gbnVsbD8gJ1BsYW4nOiBjb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYWNhZGVtaWNfcGxhbiddLnZhbHVlXCJcbiAgICAgIFtkZWZhdWx0VGV4dF09XCInUGxhbidcIlxuICAgICAgW2lzUmVxdWlyZWRdPVwidHJ1ZVwiXG4gICAgICAoZXZlbnRTZWxlY3QpPVwic2VsZWN0QWNhZGVtaWNQbGFuKCRldmVudClcIlxuICAgICAgW2RhdGFdPVwicGxhbnNcIlxuICAgICAgW2NvbnRyb2xdPVwiY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2FjYWRlbWljX3BsYW4nXVwiXG4gICAgICBbZGlzYWJsZWRTZWxdPVwiaXNEaXNhYmxlZFNlbFwiXG4gICAgPjwvaXB0LXNlbGVjdD5cbiAgICA8aXB0LXNlbGVjdFxuICAgICAgW2luaXRpYWxWYWx1ZV09XCJjb2RGb3JtU3RlcE9uZS5jb250cm9sc1snY291cnNlX3R5cGUnXS52YWx1ZVwiXG4gICAgICBbc2VsZWN0Q29kZV09XCJjb2RGb3JtU3RlcE9uZS5jb250cm9sc1snY291cnNlX3R5cGUnXS52YWx1ZSA9PT0gbnVsbD8gJ1RpcG8gZGUgcGxhbic6IGNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydjb3Vyc2VfdHlwZSddLnZhbHVlXCJcbiAgICAgIFtkZWZhdWx0VGV4dF09XCInVGlwbyBkZSBwbGFuJ1wiXG4gICAgICBbaXNSZXF1aXJlZF09XCJ0cnVlXCJcbiAgICAgIChldmVudFNlbGVjdCk9XCJzZWxlY3RDb3Vyc2VzVHlwZXNCeVBsYW4oJGV2ZW50KVwiXG4gICAgICBbZGF0YV09XCJjb3Vyc2VfdHlwZVwiXG4gICAgICBbY29udHJvbF09XCJjb2RGb3JtU3RlcE9uZS5jb250cm9sc1snY291cnNlX3R5cGUnXVwiXG4gICAgICBbZGlzYWJsZWRTZWxdPVwiaXNEaXNhYmxlZFNlbFwiXG4gICAgPjwvaXB0LXNlbGVjdD5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJjb2xcIj5cbiAgICA8aXB0LXNlbGVjdFxuICAgICAgW2luaXRpYWxWYWx1ZV09XCJjb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYWdyZWVtZW50X2J5X2NhdGVnb3J5J10udmFsdWVcIlxuICAgICAgW3NlbGVjdENvZGVdPVwiY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2FncmVlbWVudF9ieV9jYXRlZ29yeSddLnZhbHVlID09PSBudWxsPyAnQ29udmVuaW8gcG9yIGNhdGVnb3JpYSc6IGNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhZ3JlZW1lbnRfYnlfY2F0ZWdvcnknXS52YWx1ZVwiXG4gICAgICBbZGVmYXVsdFRleHRdPVwiJ0NvbnZlbmlvIHBvciBjYXRlZ29yaWEnXCJcbiAgICAgIFtpc1JlcXVpcmVkXT1cInRydWVcIlxuICAgICAgKGV2ZW50U2VsZWN0KT1cInNlbGVjdEFncmVlbWVudEJ5Q2F0ZWdvcnkoJGV2ZW50KVwiXG4gICAgICBbZGF0YV09XCJhZ3JlZW1lbnRzXCJcbiAgICAgIFtjb250cm9sXT1cImNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydhZ3JlZW1lbnRfYnlfY2F0ZWdvcnknXVwiXG4gICAgICBbZGlzYWJsZWRTZWxdPVwiaXNEaXNhYmxlZFNlbFwiXG4gICAgPjwvaXB0LXNlbGVjdD5cbiAgICA8aXB0LXNlbGVjdFxuICAgICAgW2luaXRpYWxWYWx1ZV09XCJjb2RGb3JtU3RlcE9uZS5jb250cm9sc1snZW5nbGlzaF9sZXZlbCddLnZhbHVlXCJcbiAgICAgIFtzZWxlY3RDb2RlXT1cImNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydlbmdsaXNoX2xldmVsJ10udmFsdWUgPT09IG51bGw/ICdOaXZlbCBkZSBpbmdsw6lzJzogY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2VuZ2xpc2hfbGV2ZWwnXS52YWx1ZVwiXG4gICAgICBbZGVmYXVsdFRleHRdPVwiJ05pdmVsIGRlIGluZ2zDqXMnXCJcbiAgICAgIFtpc1JlcXVpcmVkXT1cInRydWVcIlxuICAgICAgKGV2ZW50U2VsZWN0KT1cInNlbGVjdExldmVsKCRldmVudClcIlxuICAgICAgW2RhdGFdPVwibGV2ZWxzXCJcbiAgICAgIFtjb250cm9sXT1cImNvZEZvcm1TdGVwT25lLmNvbnRyb2xzWydlbmdsaXNoX2xldmVsJ11cIlxuICAgICAgW2Rpc2FibGVkU2VsXT1cImlzRGlzYWJsZWRTZWxcIlxuICAgID48L2lwdC1zZWxlY3Q+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiY29sLTEyXCI+XG4gICAgPGlwdC1zZWxlY3RcbiAgICAgIFtpbml0aWFsVmFsdWVdPVwiY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2F2YWlsaWJsZV9jb3Vyc2VzJ10udmFsdWVcIlxuICAgICAgW3NlbGVjdENvZGVdPVwiY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2F2YWlsaWJsZV9jb3Vyc2VzJ10udmFsdWUgPT09IG51bGw/ICdHcnVwb3MgZGlzcG9uaWJsZXMnOiBjb2RGb3JtU3RlcE9uZS5jb250cm9sc1snYXZhaWxpYmxlX2NvdXJzZXMnXS52YWx1ZVwiXG4gICAgICBbZGVmYXVsdFRleHRdPVwiJ0dydXBvcyBkaXNwb25pYmxlcydcIlxuICAgICAgW2lzUmVxdWlyZWRdPVwidHJ1ZVwiXG4gICAgICAoZXZlbnRTZWxlY3QpPVwic2VsZWN0QXZhaWxpYmxlQ291cnNlcygkZXZlbnQpXCJcbiAgICAgIFtkYXRhXT1cImF2YWlsaWJsZUNvdXJzZXNcIlxuICAgICAgW2NvbnRyb2xdPVwiY29kRm9ybVN0ZXBPbmUuY29udHJvbHNbJ2F2YWlsaWJsZV9jb3Vyc2VzJ11cIlxuICAgICAgW2Rpc2FibGVkU2VsXT1cImlzRGlzYWJsZWRTZWxcIlxuICAgID48L2lwdC1zZWxlY3Q+XG4gIDwvZGl2PlxuICA8c3BhbiAqbmdJZj1cIiFoYXNBdmFpbGFibGVDb3Vyc2VcIiBjbGFzcz1cIm10LTEgcGwtMiB0ZXh0LXJlZC01MDBcIj5Ub2RhdsOtYSBubyBoYXkgY3Vyc29zIGNvbiBlc3RhcyBjYXJhY3RlcsOtc3RpY2FzLjwvc3Bhbj5cbjwvZm9ybT5cblxuPGRpdiBjbGFzcz1cImZsZXggbXQtMiBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTNcIj5cbiAgPHNwYW4gKm5nSWY9XCJjb2RGb3JtU3RlcE9uZS5pbnZhbGlkICYmIGNvZEZvcm1TdGVwT25lLnRvdWNoZWRcIiBjbGFzcz1cInRleHQtcmVkLTUwMCBmb250LWJvbGQgdGV4dC1jZW50ZXIgbXQtMSBweS0yIGJnLXJlZC0xMDAgdy1mdWxsIGJvcmRlci1yb3VuZC14bFwiPkZhbHRhbiBjYW1wb3MgcG9yIGxsZW5hci48L3NwYW4+XG4gIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIFtjbGFzc109XCJpc0VkaXRDb2QgPyAnbWwtYXV0byB5ZWxsb3ctMzAwIHAtYnV0dG9uLXNtJyA6ICdtbC1hdXRvIHAtYnV0dG9uLXNtJ1wiIChjbGljayk9XCJzZW5kRm9ybSgpXCIgcEJ1dHRvbiBsYWJlbD1cIlNpZ3VpZW50ZVwiIGljb249XCJwaSBwaS1hcnJvdy1yaWdodFwiPjwvYnV0dG9uPlxuPC9kaXY+XG4iXX0=
|