@baloise/ds-angular 19.10.0 → 19.10.2
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.
|
@@ -968,11 +968,11 @@ let BalFooter = class BalFooter {
|
|
|
968
968
|
this.el = r.nativeElement;
|
|
969
969
|
}
|
|
970
970
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.7", ngImport: i0, type: BalFooter, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
971
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.7", type: BalFooter, isStandalone: true, selector: "bal-footer", inputs: { hideLanguageSelection: "hideLanguageSelection", hideLinks: "hideLinks", logoHref: "logoHref", logoSvg: "logoSvg", overrideLinks: "overrideLinks", showSocialMedia: "showSocialMedia" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
971
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.7", type: BalFooter, isStandalone: true, selector: "bal-footer", inputs: { hideLanguageSelection: "hideLanguageSelection", hideLinks: "hideLinks", logoBrand: "logoBrand", logoHref: "logoHref", logoSvg: "logoSvg", overrideLinks: "overrideLinks", showSocialMedia: "showSocialMedia" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
972
972
|
};
|
|
973
973
|
BalFooter = __decorate([
|
|
974
974
|
ProxyCmp({
|
|
975
|
-
inputs: ['hideLanguageSelection', 'hideLinks', 'logoHref', 'logoSvg', 'overrideLinks', 'showSocialMedia'],
|
|
975
|
+
inputs: ['hideLanguageSelection', 'hideLinks', 'logoBrand', 'logoHref', 'logoSvg', 'overrideLinks', 'showSocialMedia'],
|
|
976
976
|
defineCustomElementFn: defineBalFooter
|
|
977
977
|
}),
|
|
978
978
|
__metadata("design:paramtypes", [ChangeDetectorRef, ElementRef, NgZone])
|
|
@@ -985,7 +985,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.7", ngImpor
|
|
|
985
985
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
986
986
|
template: '<ng-content></ng-content>',
|
|
987
987
|
standalone: true,
|
|
988
|
-
inputs: ['hideLanguageSelection', 'hideLinks', 'logoHref', 'logoSvg', 'overrideLinks', 'showSocialMedia']
|
|
988
|
+
inputs: ['hideLanguageSelection', 'hideLinks', 'logoBrand', 'logoHref', 'logoSvg', 'overrideLinks', 'showSocialMedia']
|
|
989
989
|
}]
|
|
990
990
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
991
991
|
let BalForm = class BalForm {
|
|
@@ -1834,11 +1834,11 @@ let BalNavbarBrand = class BalNavbarBrand {
|
|
|
1834
1834
|
proxyOutputs(this, this.el, ['balNavigate', 'balWillAnimate', 'balDidAnimate']);
|
|
1835
1835
|
}
|
|
1836
1836
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.7", ngImport: i0, type: BalNavbarBrand, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1837
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.7", type: BalNavbarBrand, isStandalone: true, selector: "bal-navbar-brand", inputs: { animated: "animated", href: "href", logo: "logo", logoClickable: "logoClickable", logoLabel: "logoLabel", logoSize: "logoSize", rel: "rel", simple: "simple", target: "target" }, outputs: { balNavigate: "balNavigate", balWillAnimate: "balWillAnimate", balDidAnimate: "balDidAnimate" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1837
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.7", type: BalNavbarBrand, isStandalone: true, selector: "bal-navbar-brand", inputs: { animated: "animated", href: "href", logo: "logo", logoBrand: "logoBrand", logoClickable: "logoClickable", logoLabel: "logoLabel", logoSize: "logoSize", rel: "rel", simple: "simple", target: "target" }, outputs: { balNavigate: "balNavigate", balWillAnimate: "balWillAnimate", balDidAnimate: "balDidAnimate" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1838
1838
|
};
|
|
1839
1839
|
BalNavbarBrand = __decorate([
|
|
1840
1840
|
ProxyCmp({
|
|
1841
|
-
inputs: ['animated', 'href', 'logo', 'logoClickable', 'logoLabel', 'logoSize', 'rel', 'simple', 'target'],
|
|
1841
|
+
inputs: ['animated', 'href', 'logo', 'logoBrand', 'logoClickable', 'logoLabel', 'logoSize', 'rel', 'simple', 'target'],
|
|
1842
1842
|
defineCustomElementFn: defineBalNavbarBrand
|
|
1843
1843
|
}),
|
|
1844
1844
|
__metadata("design:paramtypes", [ChangeDetectorRef, ElementRef, NgZone])
|
|
@@ -1851,7 +1851,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.7", ngImpor
|
|
|
1851
1851
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1852
1852
|
template: '<ng-content></ng-content>',
|
|
1853
1853
|
standalone: true,
|
|
1854
|
-
inputs: ['animated', 'href', 'logo', 'logoClickable', 'logoLabel', 'logoSize', 'rel', 'simple', 'target'],
|
|
1854
|
+
inputs: ['animated', 'href', 'logo', 'logoBrand', 'logoClickable', 'logoLabel', 'logoSize', 'rel', 'simple', 'target'],
|
|
1855
1855
|
outputs: ['balNavigate', 'balWillAnimate', 'balDidAnimate']
|
|
1856
1856
|
}]
|
|
1857
1857
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
@@ -2904,4 +2904,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.7", ngImpor
|
|
|
2904
2904
|
outputs: ['balWillAnimate', 'balDidAnimate']
|
|
2905
2905
|
}]
|
|
2906
2906
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2907
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJveGllcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9nZW5lcmF0ZWQvcHJveGllcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsb0JBQW9CO0FBQ3BCLDhDQUE4QztBQUM5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQWtELE1BQU0sZUFBZSxDQUFDO0FBQzFKLE9BQU8sRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDdkUsT0FBTyxFQUFFLG1CQUFtQixJQUFJLGtCQUFrQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDdEcsT0FBTyxFQUFFLG1CQUFtQixJQUFJLHlCQUF5QixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDckgsT0FBTyxFQUFFLG1CQUFtQixJQUFJLHlCQUF5QixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDckgsT0FBTyxFQUFFLG1CQUFtQixJQUFJLHlCQUF5QixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDckgsT0FBTyxFQUFFLG1CQUFtQixJQUFJLFlBQVksRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFGLE9BQU8sRUFBRSxtQkFBbUIsSUFBSSxjQUFjLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM5RixPQUFPLEVBQUUsbUJBQW1CLElBQUksZUFBZSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDaEcsT0FBTyxFQUFFLG1CQUFtQixJQUFJLG9CQUFvQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDM0csT0FBTyxFQUFFLG1CQUFtQixJQUFJLGFBQWEsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzVGLE9BQU8sRUFBRSxtQkFBbUIsSUFBSSxvQkFBb0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzNHLE9BQU8sRUFBRSxtQkFBbUIsSUFBSSxtQkFBbUIsRUFBRSxNQUFNLDZDQUE2QyxD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QUFFLDJCQUEyQjtvQkFDckMsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE1BQU0sRUFBRSxDQUFDLGNBQWMsRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLFdBQVcsQ0FBQztvQkFDNUQsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLEVBQUUsZUFBZSxDQUFDO2lCQUM3QyIsInNvdXJjZXNDb250ZW50IjpbIi8qIHRzbGludDpkaXNhYmxlICovXG4vKiBhdXRvLWdlbmVyYXRlZCBhbmd1bGFyIGRpcmVjdGl2ZSBwcm94aWVzICovXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgTmdab25lLCBFdmVudEVtaXR0ZXIsIE5nTW9kdWxlLCBDVVNUT01fRUxFTUVOVFNfU0NIRU1BIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQcm94eUNtcCwgcHJveHlPdXRwdXRzIH0gZnJvbSAnLi9hbmd1bGFyLWNvbXBvbmVudC1saWIvdXRpbHMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxBY2NvcmRpb24gfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWFjY29yZGlvbic7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbEFjY29yZGlvbkRldGFpbHMgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWFjY29yZGlvbi1kZXRhaWxzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsQWNjb3JkaW9uU3VtbWFyeSB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtYWNjb3JkaW9uLXN1bW1hcnknO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxBY2NvcmRpb25UcmlnZ2VyIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1hY2NvcmRpb24tdHJpZ2dlcic7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbEFwcCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtYXBwJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsQmFkZ2UgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWJhZGdlJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsQnV0dG9uIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1idXR0b24nO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxCdXR0b25Hcm91cCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtYnV0dG9uLWdyb3VwJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsQ2FyZCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtY2FyZCc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbENhcmRBY3Rpb25zIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1jYXJkLWFjdGlvbnMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxDYXJkQnV0dG9uIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1jYXJkLWJ1dHRvbic7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbENhcmRDb250ZW50IH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1jYXJkLWNvbnRlbnQnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxDYXJkU3VidGl0bGUgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWNhcmQtc3VidGl0bGUnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxDYXJkVGl0bGUgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWNhcmQtdGl0bGUnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxDYXJvdXNlbCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtY2Fyb3VzZWwnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxDYXJvdXNlbEl0ZW0gfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWNhcm91c2VsLWl0ZW0nO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxDaGVjayB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtY2hlY2snO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxDbG9zZSB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtY2xvc2UnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxDb250ZW50IH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1jb250ZW50JztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsRGF0YSB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtZGF0YSc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbERhdGFJdGVtIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1kYXRhLWl0ZW0nO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxEYXRhTGFiZWwgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWRhdGEtbGFiZWwnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxEYXRhVmFsdWUgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWRhdGEtdmFsdWUnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxEYXRlQ2FsZW5kYXIgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWRhdGUtY2FsZW5kYXInO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxEYXRlQ2FsZW5kYXJDZWxsIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1kYXRlLWNhbGVuZGFyLWNlbGwnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxEaXZpZGVyIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1kaXZpZGVyJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsRmllbGQgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWZpZWxkJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsRmllbGRDb250cm9sIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1maWVsZC1jb250cm9sJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsRmllbGRIaW50IH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1maWVsZC1oaW50JztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsRmllbGRMYWJlbCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtZmllbGQtbGFiZWwnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxGaWVsZE1lc3NhZ2UgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWZpZWxkLW1lc3NhZ2UnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxGb290ZXIgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWZvb3Rlcic7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbEZvcm0gfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWZvcm0nO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxGb3JtQ29sIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1mb3JtLWNvbCc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbEZvcm1HcmlkIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1mb3JtLWdyaWQnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxIZWFkaW5nIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1oZWFkaW5nJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsSGludCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtaGludCc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbEhpbnRUZXh0IH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1oaW50LXRleHQnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxIaW50VGl0bGUgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWhpbnQtdGl0bGUnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxJY29uIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1pY29uJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsSW5wdXRHcm91cCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtaW5wdXQtZ3JvdXAnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxMYWJlbCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtbGFiZWwnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxMaXN0IH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1saXN0JztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsTGlzdEl0ZW0gfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWxpc3QtaXRlbSc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbExpc3RJdGVtQWNjb3JkaW9uQm9keSB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtbGlzdC1pdGVtLWFjY29yZGlvbi1ib2R5JztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsTGlzdEl0ZW1BY2NvcmRpb25IZWFkIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1saXN0LWl0ZW0tYWNjb3JkaW9uLWhlYWQnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxMaXN0SXRlbUNvbnRlbnQgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWxpc3QtaXRlbS1jb250ZW50JztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsTGlzdEl0ZW1JY29uIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1saXN0LWl0ZW0taWNvbic7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbExpc3RJdGVtU3VidGl0bGUgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWxpc3QtaXRlbS1zdWJ0aXRsZSc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbExpc3RJdGVtVGl0bGUgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWxpc3QtaXRlbS10aXRsZSc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbExvZ28gfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWxvZ28nO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxNb2RhbCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtbW9kYWwnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxNb2RhbEJvZHkgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLW1vZGFsLWJvZHknO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxNb2RhbEhlYWRlciB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtbW9kYWwtaGVhZGVyJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsTmF2IH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1uYXYnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxOYXZMaW5rIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1uYXYtbGluayc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbE5hdkxpbmtHcmlkIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1uYXYtbGluay1ncmlkJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsTmF2TGlua0dyaWRDb2wgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLW5hdi1saW5rLWdyaWQtY29sJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsTmF2TGlua0dyb3VwIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1uYXYtbGluay1ncm91cCc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbE5hdk1lbnVCYXIgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLW5hdi1tZW51LWJhcic7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbE5hdk1lbnVGbHlvdXQgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLW5hdi1tZW51LWZseW91dCc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbE5hdk1ldGFCYXIgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLW5hdi1tZXRhLWJhcic7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbE5hdmJhciB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtbmF2YmFyJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsTmF2YmFyQnJhbmQgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLW5hdmJhci1icmFuZCc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbE5hdmJhck1lbnUgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLW5hdmJhci1tZW51JztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsTmF2YmFyTWVudUVuZCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtbmF2YmFyLW1lbnUtZW5kJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsTmF2YmFyTWVudVN0YXJ0IH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1uYXZiYXItbWVudS1zdGFydCc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbE5vdGljZXMgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLW5vdGljZXMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxOb3RpZmljYXRpb24gfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLW5vdGlmaWNhdGlvbic7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbE9wdGlvbiB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtb3B0aW9uJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsT3B0aW9uTGlzdCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtb3B0aW9uLWxpc3QnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxQYWdpbmF0aW9uIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1wYWdpbmF0aW9uJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsUG9wb3ZlciB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtcG9wb3Zlcic7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbFBvcG92ZXJDb250ZW50IH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1wb3BvdmVyLWNvbnRlbnQnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxQb3B1cCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtcG9wdXAnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxQcm9ncmVzc0JhciB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtcHJvZ3Jlc3MtYmFyJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsUmFkaW8gfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLXJhZGlvJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsUmFkaW9JY29uIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1yYWRpby1pY29uJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsU2VnbWVudEl0ZW0gfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLXNlZ21lbnQtaXRlbSc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbFNlbGVjdE9wdGlvbiB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtc2VsZWN0LW9wdGlvbic7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbFNoYXBlIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1zaGFwZSc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbFNoZWV0IH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1zaGVldCc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbFNuYWNrYmFyIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1zbmFja2Jhcic7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbFNwaW5uZXIgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLXNwaW5uZXInO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxTdGFjayB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtc3RhY2snO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxTdGFnZSB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtc3RhZ2UnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxTdGFnZUJhY2tMaW5rIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1zdGFnZS1iYWNrLWxpbmsnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxTdGFnZUJvZHkgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLXN0YWdlLWJvZHknO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxTdGFnZUZvb3QgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLXN0YWdlLWZvb3QnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxTdGFnZUhlYWQgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLXN0YWdlLWhlYWQnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxTdGFnZUltYWdlIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1zdGFnZS1pbWFnZSc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbFN0ZXBJdGVtIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1zdGVwLWl0ZW0nO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxTdGVwcyB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtc3RlcHMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxTd2l0Y2ggfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLXN3aXRjaCc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbFRhYkl0ZW0gfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLXRhYi1pdGVtJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsVGFibGUgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLXRhYmxlJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsVGFicyB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtdGFicyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbFRhZyB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtdGFnJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsVGFnR3JvdXAgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLXRhZy1ncm91cCc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbFRleHQgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLXRleHQnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxUb2FzdCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtdG9hc3QnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxUb29sdGlwIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC10b29sdGlwJztcblxuaW1wb3J0IHR5cGUgeyBDb21wb25lbnRzLCBGaWxlVXBsb2FkUmVqZWN0ZWRGaWxlIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzJztcblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsQWNjb3JkaW9uIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxBY2NvcmRpb24ge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhY3RpdmUnLCAnY2FyZCcsICdjbG9zZUljb24nLCAnY2xvc2VMYWJlbCcsICdkZWJvdW5jZScsICdvcGVuSWNvbicsICdvcGVuTGFiZWwnLCAndmVyc2lvbiddLFxuICBtZXRob2RzOiBbJ3ByZXNlbnQnLCAnZGlzbWlzcycsICd0b2dnbGUnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxBY2NvcmRpb25cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtYWNjb3JkaW9uJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydhY3RpdmUnLCAnY2FyZCcsICdjbG9zZUljb24nLCAnY2xvc2VMYWJlbCcsICdkZWJvdW5jZScsICdvcGVuSWNvbicsICdvcGVuTGFiZWwnLCAndmVyc2lvbiddLFxuICBvdXRwdXRzOiBbJ2JhbENoYW5nZScsICdiYWxXaWxsQW5pbWF0ZScsICdiYWxEaWRBbmltYXRlJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsQWNjb3JkaW9uIHtcbiAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgYWNjb3JkaW9uIGhhcyBvcGVuZWQgb3IgY2xvc2VkICovXG4gIGJhbENoYW5nZSE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsQWNjb3JkaW9uQ3VzdG9tRXZlbnQ8Ym9vbGVhbj4+O1xuICAvKiogRW1pdHRlZCBiZWZvcmUgdGhlIGFuaW1hdGlvbiBzdGFydHMgKi9cbiAgYmFsV2lsbEFuaW1hdGUhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbEFjY29yZGlvbkN1c3RvbUV2ZW50PGJvb2xlYW4+PjtcbiAgLyoqIEVtaXR0ZWQgYWZ0ZXIgdGhlIGFuaW1hdGlvbiBoYXMgZmluaXNoZWQgKi9cbiAgYmFsRGlkQW5pbWF0ZSE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsQWNjb3JkaW9uQ3VzdG9tRXZlbnQ8Ym9vbGVhbj4+O1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydiYWxDaGFuZ2UnLCAnYmFsV2lsbEFuaW1hdGUnLCAnYmFsRGlkQW5pbWF0ZSddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxBY2NvcmRpb25EZXRhaWxzIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxBY2NvcmRpb25EZXRhaWxzIHt9XG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbEFjY29yZGlvbkRldGFpbHNcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtYWNjb3JkaW9uLWRldGFpbHMnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBCYWxBY2NvcmRpb25EZXRhaWxzIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsQWNjb3JkaW9uU3VtbWFyeSBleHRlbmRzIENvbXBvbmVudHMuQmFsQWNjb3JkaW9uU3VtbWFyeSB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ3RyaWdnZXInXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxBY2NvcmRpb25TdW1tYXJ5XG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWFjY29yZGlvbi1zdW1tYXJ5JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWyd0cmlnZ2VyJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsQWNjb3JkaW9uU3VtbWFyeSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbEFjY29yZGlvblRyaWdnZXIgZXh0ZW5kcyBDb21wb25lbnRzLkJhbEFjY29yZGlvblRyaWdnZXIge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydidXR0b24nLCAnY2xvc2VJY29uJywgJ2Nsb3NlTGFiZWwnLCAnY29sb3InLCAnZXhwYW5kZWQnLCAnb3Blbkljb24nLCAnb3BlbkxhYmVsJywgJ3NpemUnLCAndmFyaWFudCddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbEFjY29yZGlvblRyaWdnZXJcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtYWNjb3JkaW9uLXRyaWdnZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2J1dHRvbicsICdjbG9zZUljb24nLCAnY2xvc2VMYWJlbCcsICdjb2xvcicsICdleHBhbmRlZCcsICdvcGVuSWNvbicsICdvcGVuTGFiZWwnLCAnc2l6ZScsICd2YXJpYW50J11cbn0pXG5leHBvcnQgY2xhc3MgQmFsQWNjb3JkaW9uVHJpZ2dlciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbEFwcCBleHRlbmRzIENvbXBvbmVudHMuQmFsQXBwIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYW5pbWF0ZWQnXSxcbiAgbWV0aG9kczogWydzZXRGb2N1cyddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbEFwcFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1hcHAnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2FuaW1hdGVkJ10sXG4gIG91dHB1dHM6IFsnYmFsQXBwUmVhZHknXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxBcHAge1xuICAvKiogRW1pdHRlZCB3aGVuIGFwcCBpcyByZWFkeSBhbmQgcGFpbnRlZC4gKi9cbiAgYmFsQXBwUmVhZHkhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbEFwcEN1c3RvbUV2ZW50PHZvaWQ+PjtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYmFsQXBwUmVhZHknXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsQmFkZ2UgZXh0ZW5kcyBDb21wb25lbnRzLkJhbEJhZGdlIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29sb3InLCAnaWNvbicsICdwb3NpdGlvbicsICdzaXplJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsQmFkZ2Vcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtYmFkZ2UnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2NvbG9yJywgJ2ljb24nLCAncG9zaXRpb24nLCAnc2l6ZSddXG59KVxuZXhwb3J0IGNsYXNzIEJhbEJhZGdlIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsQnV0dG9uIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxCdXR0b24ge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhMTF5Q29udHJvbHMnLCAnYTExeUhhc3BvcHVwJywgJ2ExMXlMYWJlbCcsICdhMTF5VGl0bGUnLCAnYmFsUG9wdXAnLCAnY29sb3InLCAnZGlzYWJsZWQnLCAnZG93bmxvYWQnLCAnZWxlbWVudFR5cGUnLCAnZXhwYW5kZWQnLCAnZmxhdCcsICdocmVmJywgJ2ljb24nLCAnaWNvblJpZ2h0JywgJ2ljb25UdXJuJywgJ2ludmVydGVkJywgJ2lzQWN0aXZlJywgJ2xvYWRpbmcnLCAnbmFtZScsICdub1dyYXAnLCAnb3V0bGluZWQnLCAncmVsJywgJ3JvdW5kZWQnLCAnc2hhZG93JywgJ3NpemUnLCAnc3F1YXJlJywgJ3RhcmdldCcsICd2YWx1ZSddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbEJ1dHRvblxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1idXR0b24nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2ExMXlDb250cm9scycsICdhMTF5SGFzcG9wdXAnLCAnYTExeUxhYmVsJywgJ2ExMXlUaXRsZScsICdiYWxQb3B1cCcsICdjb2xvcicsICdkaXNhYmxlZCcsICdkb3dubG9hZCcsICdlbGVtZW50VHlwZScsICdleHBhbmRlZCcsICdmbGF0JywgJ2hyZWYnLCAnaWNvbicsICdpY29uUmlnaHQnLCAnaWNvblR1cm4nLCAnaW52ZXJ0ZWQnLCAnaXNBY3RpdmUnLCAnbG9hZGluZycsICduYW1lJywgJ25vV3JhcCcsICdvdXRsaW5lZCcsICdyZWwnLCAncm91bmRlZCcsICdzaGFkb3cnLCAnc2l6ZScsICdzcXVhcmUnLCAndGFyZ2V0JywgJ3ZhbHVlJ10sXG4gIG91dHB1dHM6IFsnYmFsQ2xpY2snLCAnYmFsTmF2aWdhdGUnLCAnYmFsRm9jdXMnLCAnYmFsQmx1cicsICdiYWxEaWRSZW5kZXInXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxCdXR0b24ge1xuICAvKiogRW1pdHRlZCB3aGVuIHRoZSBsaW5rIGVsZW1lbnQgaGFzIGNsaWNrZWQuICovXG4gIGJhbENsaWNrITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxCdXR0b25DdXN0b21FdmVudDxNb3VzZUV2ZW50Pj47XG4gIC8qKiBFbWl0dGVkIHdoZW4gdGhlIGxpbmsgZWxlbWVudCBoYXMgY2xpY2tlZC4gKi9cbiAgYmFsTmF2aWdhdGUhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbEJ1dHRvbkN1c3RvbUV2ZW50PE1vdXNlRXZlbnQ+PjtcbiAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgYnV0dG9uIGhhcyBmb2N1cy4gKi9cbiAgYmFsRm9jdXMhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbEJ1dHRvbkN1c3RvbUV2ZW50PHZvaWQ+PjtcbiAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgYnV0dG9uIGxvc2VzIGZvY3VzLiAqL1xuICBiYWxCbHVyITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxCdXR0b25DdXN0b21FdmVudDx2b2lkPj47XG4gIC8qKiBFbWl0dGVkIHdoZW4gdGhlIGJ1dHRvbiBoYXMgYmVlbiAgcmVuZGVyZWQuICovXG4gIGJhbERpZFJlbmRlciE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsQnV0dG9uQ3VzdG9tRXZlbnQ8dm9pZD4+O1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydiYWxDbGljaycsICdiYWxOYXZpZ2F0ZScsICdiYWxGb2N1cycsICdiYWxCbHVyJywgJ2JhbERpZFJlbmRlciddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxCdXR0b25Hcm91cCBleHRlbmRzIENvbXBvbmVudHMuQmFsQnV0dG9uR3JvdXAge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydkaXJlY3Rpb24nLCAncG9zaXRpb24nLCAncmV2ZXJzZSddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbEJ1dHRvbkdyb3VwXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWJ1dHRvbi1ncm91cCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnZGlyZWN0aW9uJywgJ3Bvc2l0aW9uJywgJ3JldmVyc2UnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxCdXR0b25Hcm91cCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbENhcmQgZXh0ZW5kcyBDb21wb25lbnRzLkJhbENhcmQge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydib3JkZXInLCAnY2xpY2thYmxlJywgJ2NvbG9yJywgJ2ZsYXQnLCAnZnVsbGhlaWdodCcsICdpbnZlcnRlZCcsICdzZWxlY3RlZCcsICdzcGFjZScsICdzcXVhcmUnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxDYXJkXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWNhcmQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2JvcmRlcicsICdjbGlja2FibGUnLCAnY29sb3InLCAnZmxhdCcsICdmdWxsaGVpZ2h0JywgJ2ludmVydGVkJywgJ3NlbGVjdGVkJywgJ3NwYWNlJywgJ3NxdWFyZSddXG59KVxuZXhwb3J0IGNsYXNzIEJhbENhcmQge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxDYXJkQWN0aW9ucyBleHRlbmRzIENvbXBvbmVudHMuQmFsQ2FyZEFjdGlvbnMge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydwb3NpdGlvbiddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbENhcmRBY3Rpb25zXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWNhcmQtYWN0aW9ucycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsncG9zaXRpb24nXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxDYXJkQWN0aW9ucyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbENhcmRCdXR0b24gZXh0ZW5kcyBDb21wb25lbnRzLkJhbENhcmRCdXR0b24ge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydkaXNhYmxlZCcsICdlbGVtZW50VHlwZScsICdocmVmJywgJ2ljb24nLCAnaWNvblJpZ2h0JywgJ2xvYWRpbmcnLCAncmVsJywgJ3RhcmdldCddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbENhcmRCdXR0b25cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtY2FyZC1idXR0b24nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2VsZW1lbnRUeXBlJywgJ2hyZWYnLCAnaWNvbicsICdpY29uUmlnaHQnLCAnbG9hZGluZycsICdyZWwnLCAndGFyZ2V0J11cbn0pXG5leHBvcnQgY2xhc3MgQmFsQ2FyZEJ1dHRvbiB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbENhcmRDb250ZW50IGV4dGVuZHMgQ29tcG9uZW50cy5CYWxDYXJkQ29udGVudCB7fVxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxDYXJkQ29udGVudFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1jYXJkLWNvbnRlbnQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBCYWxDYXJkQ29udGVudCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbENhcmRTdWJ0aXRsZSBleHRlbmRzIENvbXBvbmVudHMuQmFsQ2FyZFN1YnRpdGxlIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYm9sZCcsICdjb2xvcicsICdpbnZlcnRlZCddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbENhcmRTdWJ0aXRsZVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1jYXJkLXN1YnRpdGxlJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydib2xkJywgJ2NvbG9yJywgJ2ludmVydGVkJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsQ2FyZFN1YnRpdGxlIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsQ2FyZFRpdGxlIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxDYXJkVGl0bGUge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpbnZlcnRlZCddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbENhcmRUaXRsZVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1jYXJkLXRpdGxlJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydpbnZlcnRlZCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbENhcmRUaXRsZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbENhcm91c2VsIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxDYXJvdXNlbCB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FzcGVjdFJhdGlvJywgJ2JvcmRlcicsICdjb250cm9scycsICdjb250cm9sc092ZXJmbG93JywgJ2NvbnRyb2xzU3RpY2t5JywgJ2Z1bGxIZWlnaHQnLCAnaHRtbFJvbGUnLCAnaW50ZXJmYWNlJywgJ2ludmVydGVkJywgJ2l0ZW1zUGVyVmlldycsICdzY3JvbGxZJywgJ3NwYWNlJywgJ3N0ZXBzJywgJ3ZhbHVlJ10sXG4gIG1ldGhvZHM6IFsncHJldmlvdXMnLCAnbmV4dCddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbENhcm91c2VsXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWNhcm91c2VsJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydhc3BlY3RSYXRpbycsICdib3JkZXInLCAnY29udHJvbHMnLCAnY29udHJvbHNPdmVyZmxvdycsICdjb250cm9sc1N0aWNreScsICdmdWxsSGVpZ2h0JywgJ2h0bWxSb2xlJywgJ2ludGVyZmFjZScsICdpbnZlcnRlZCcsICdpdGVtc1BlclZpZXcnLCAnc2Nyb2xsWScsICdzcGFjZScsICdzdGVwcycsICd2YWx1ZSddLFxuICBvdXRwdXRzOiBbJ2JhbENoYW5nZSddXG59KVxuZXhwb3J0IGNsYXNzIEJhbENhcm91c2VsIHtcbiAgLyoqIEVtaXR0ZWQgd2hlbiBhIG9wdGlvbiBnb3Qgc2VsZWN0ZWQuICovXG4gIGJhbENoYW5nZSE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsQ2Fyb3VzZWxDdXN0b21FdmVudDxudW1iZXI+PjtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYmFsQ2hhbmdlJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbENhcm91c2VsSXRlbSBleHRlbmRzIENvbXBvbmVudHMuQmFsQ2Fyb3VzZWxJdGVtIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29sb3InLCAnZG93bmxvYWQnLCAnZWxlbWVudFR5cGUnLCAnaHJlZicsICdodG1sUm9sZScsICdsYWJlbCcsICduYW1lJywgJ3JlbCcsICdzcmMnLCAnc3ZnJywgJ3RhcmdldCcsICd2YWx1ZSddLFxuICBtZXRob2RzOiBbJ3NldEZvY3VzJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsQ2Fyb3VzZWxJdGVtXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWNhcm91c2VsLWl0ZW0nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2NvbG9yJywgJ2Rvd25sb2FkJywgJ2VsZW1lbnRUeXBlJywgJ2hyZWYnLCAnaHRtbFJvbGUnLCAnbGFiZWwnLCAnbmFtZScsICdyZWwnLCAnc3JjJywgJ3N2ZycsICd0YXJnZXQnLCAndmFsdWUnXSxcbiAgb3V0cHV0czogWydiYWxOYXZpZ2F0ZScsICdiYWxGb2N1cycsICdiYWxCbHVyJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsQ2Fyb3VzZWxJdGVtIHtcbiAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgbGluayBlbGVtZW50IGhhcyBjbGlja2VkLiAqL1xuICBiYWxOYXZpZ2F0ZSE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsQ2Fyb3VzZWxJdGVtQ3VzdG9tRXZlbnQ8TW91c2VFdmVudD4+O1xuICAvKiogRW1pdHRlZCB3aGVuIHRoZSBidXR0b24gaGFzIGZvY3VzLiAqL1xuICBiYWxGb2N1cyE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsQ2Fyb3VzZWxJdGVtQ3VzdG9tRXZlbnQ8dm9pZD4+O1xuICAvKiogRW1pdHRlZCB3aGVuIHRoZSBidXR0b24gbG9zZXMgZm9jdXMuICovXG4gIGJhbEJsdXIhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbENhcm91c2VsSXRlbUN1c3RvbUV2ZW50PHZvaWQ+PjtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYmFsTmF2aWdhdGUnLCAnYmFsRm9jdXMnLCAnYmFsQmx1ciddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxDaGVjayBleHRlbmRzIENvbXBvbmVudHMuQmFsQ2hlY2sge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjaGVja2VkJywgJ2Rpc2FibGVkJywgJ2ludmFsaWQnLCAnaW52ZXJ0ZWQnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxDaGVja1xufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1jaGVjaycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnY2hlY2tlZCcsICdkaXNhYmxlZCcsICdpbnZhbGlkJywgJ2ludmVydGVkJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsQ2hlY2sge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxDbG9zZSBleHRlbmRzIENvbXBvbmVudHMuQmFsQ2xvc2Uge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpbnZlcnRlZCcsICdzaXplJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsQ2xvc2Vcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtY2xvc2UnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2ludmVydGVkJywgJ3NpemUnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxDbG9zZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbENvbnRlbnQgZXh0ZW5kcyBDb21wb25lbnRzLkJhbENvbnRlbnQge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhbGlnbicsICdsYXlvdXQnLCAnc3BhY2UnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxDb250ZW50XG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWNvbnRlbnQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2FsaWduJywgJ2xheW91dCcsICdzcGFjZSddXG59KVxuZXhwb3J0IGNsYXNzIEJhbENvbnRlbnQge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxEYXRhIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxEYXRhIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYm9yZGVyJywgJ2hvcml6b250YWwnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxEYXRhXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWRhdGEnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2JvcmRlcicsICdob3Jpem9udGFsJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsRGF0YSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbERhdGFJdGVtIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxEYXRhSXRlbSB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2JvcmRlcicsICdkaXNhYmxlZCddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbERhdGFJdGVtXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWRhdGEtaXRlbScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnYm9yZGVyJywgJ2Rpc2FibGVkJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsRGF0YUl0ZW0ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxEYXRhTGFiZWwgZXh0ZW5kcyBDb21wb25lbnRzLkJhbERhdGFMYWJlbCB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ3JlcXVpcmVkJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsRGF0YUxhYmVsXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWRhdGEtbGFiZWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ3JlcXVpcmVkJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsRGF0YUxhYmVsIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsRGF0YVZhbHVlIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxEYXRhVmFsdWUge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydkaXNhYmxlZCcsICdlZGl0YWJsZScsICdtdWx0aWxpbmUnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxEYXRhVmFsdWVcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtZGF0YS12YWx1ZScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnZWRpdGFibGUnLCAnbXVsdGlsaW5lJ10sXG4gIG91dHB1dHM6IFsnYmFsQ2xpY2snLCAnYmFsRm9jdXMnLCAnYmFsQmx1ciddXG59KVxuZXhwb3J0IGNsYXNzIEJhbERhdGFWYWx1ZSB7XG4gIC8qKiBFbWl0dGVkIHdoZW4gdGhlIGVkaXQgYnV0dG9uIGhhcyBmb2N1cy4gKi9cbiAgYmFsQ2xpY2shOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbERhdGFWYWx1ZUN1c3RvbUV2ZW50PE1vdXNlRXZlbnQ+PjtcbiAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgZWRpdCBidXR0b24gaGFzIGZvY3VzLiAqL1xuICBiYWxGb2N1cyE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsRGF0YVZhbHVlQ3VzdG9tRXZlbnQ8dm9pZD4+O1xuICAvKiogRW1pdHRlZCB3aGVuIHRoZSBlZGl0IGJ1dHRvbiBsb3NlcyBmb2N1cy4gKi9cbiAgYmFsQmx1ciE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsRGF0YVZhbHVlQ3VzdG9tRXZlbnQ8dm9pZD4+O1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydiYWxDbGljaycsICdiYWxGb2N1cycsICdiYWxCbHVyJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbERhdGVDYWxlbmRhciBleHRlbmRzIENvbXBvbmVudHMuQmFsRGF0ZUNhbGVuZGFyIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYWxsb3dlZERhdGVzJywgJ2RlZmF1bHREYXRlJywgJ21heCcsICdtYXhZZWFyUHJvcCcsICdtaW4nLCAnbWluWWVhclByb3AnLCAndmFsdWUnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxEYXRlQ2FsZW5kYXJcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtZGF0ZS1jYWxlbmRhcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnYWxsb3dlZERhdGVzJywgJ2RlZmF1bHREYXRlJywgJ21heCcsICdtYXhZZWFyUHJvcCcsICdtaW4nLCAnbWluWWVhclByb3AnLCAndmFsdWUnXSxcbiAgb3V0cHV0czogWydiYWxDaGFuZ2UnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxEYXRlQ2FsZW5kYXIge1xuICAvKiogRW1pdHRlZCB3aGVuIGEgb3B0aW9uIGdvdCBzZWxlY3RlZC4gKi9cbiAgYmFsQ2hhbmdlITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxEYXRlQ2FsZW5kYXJDdXN0b21FdmVudDxzdHJpbmc+PjtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYmFsQ2hhbmdlJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbERhdGVDYWxlbmRhckNlbGwgZXh0ZW5kcyBDb21wb25lbnRzLkJhbERhdGVDYWxlbmRhckNlbGwge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydkYXknLCAnZGlzYWJsZWQnLCAnZnVsbERhdGUnLCAnaXNvRGF0ZScsICdtb250aCcsICdzZWxlY3RlZCcsICd0b2RheScsICd5ZWFyJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsRGF0ZUNhbGVuZGFyQ2VsbFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1kYXRlLWNhbGVuZGFyLWNlbGwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2RheScsICdkaXNhYmxlZCcsICdmdWxsRGF0ZScsICdpc29EYXRlJywgJ21vbnRoJywgJ3NlbGVjdGVkJywgJ3RvZGF5JywgJ3llYXInXSxcbiAgb3V0cHV0czogWydiYWxTZWxlY3REYXknXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxEYXRlQ2FsZW5kYXJDZWxsIHtcbiAgLyoqIEVtaXR0ZWQgd2hlbiBhIG9wdGlvbiBnb3Qgc2VsZWN0ZWQuICovXG4gIGJhbFNlbGVjdERheSE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsRGF0ZUNhbGVuZGFyQ2VsbEN1c3RvbUV2ZW50PHN0cmluZz4+O1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydiYWxTZWxlY3REYXknXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsRGl2aWRlciBleHRlbmRzIENvbXBvbmVudHMuQmFsRGl2aWRlciB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2JvcmRlclN0eWxlJywgJ2NvbG9yJywgJ2xheW91dCcsICdzcGFjZSddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbERpdmlkZXJcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtZGl2aWRlcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnYm9yZGVyU3R5bGUnLCAnY29sb3InLCAnbGF5b3V0JywgJ3NwYWNlJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsRGl2aWRlciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbEZpZWxkIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxGaWVsZCB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2hvcml6b250YWwnLCAnaW52YWxpZCcsICdsb2FkaW5nJywgJ3JlYWRvbmx5JywgJ3JlcXVpcmVkJywgJ3ZhbGlkJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsRmllbGRcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtZmllbGQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2hvcml6b250YWwnLCAnaW52YWxpZCcsICdsb2FkaW5nJywgJ3JlYWRvbmx5JywgJ3JlcXVpcmVkJywgJ3ZhbGlkJ10sXG4gIG91dHB1dHM6IFsnYmFsRm9ybUNvbnRyb2xEaWRMb2FkJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsRmllbGQge1xuICAvKiogRW1pdHRlZCBhZnRlciByZW5kZXIgd2hlbiBlbGVtZW50IGlzIGxhYmVsbGVkICovXG4gIGJhbEZvcm1Db250cm9sRGlkTG9hZCE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsRmllbGRDdXN0b21FdmVudDxIVE1MRWxlbWVudD4+O1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydiYWxGb3JtQ29udHJvbERpZExvYWQnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsRmllbGRDb250cm9sIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxGaWVsZENvbnRyb2wge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydleHBhbmRlZE9uTW9iaWxlJywgJ2ljb25MZWZ0JywgJ2ljb25SaWdodCcsICdsb2FkaW5nJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsRmllbGRDb250cm9sXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWZpZWxkLWNvbnRyb2wnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2V4cGFuZGVkT25Nb2JpbGUnLCAnaWNvbkxlZnQnLCAnaWNvblJpZ2h0JywgJ2xvYWRpbmcnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxGaWVsZENvbnRyb2wge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxGaWVsZEhpbnQgZXh0ZW5kcyBDb21wb25lbnRzLkJhbEZpZWxkSGludCB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2Nsb3NlTGFiZWwnLCAnaGlkZVRpdGxlT25EZXNrdG9wJywgJ3NtYWxsJywgJ3N1YmplY3QnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxGaWVsZEhpbnRcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtZmllbGQtaGludCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnY2xvc2VMYWJlbCcsICdoaWRlVGl0bGVPbkRlc2t0b3AnLCAnc21hbGwnLCAnc3ViamVjdCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbEZpZWxkSGludCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbEZpZWxkTGFiZWwgZXh0ZW5kcyBDb21wb25lbnRzLkJhbEZpZWxkTGFiZWwge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydkaXNhYmxlZCcsICdodG1sRm9yJywgJ2ludmFsaWQnLCAncmVhZG9ubHknLCAncmVxdWlyZWQnLCAnc2l6ZScsICd2YWxpZCcsICd3ZWlnaHQnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxGaWVsZExhYmVsXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWZpZWxkLWxhYmVsJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydkaXNhYmxlZCcsICdodG1sRm9yJywgJ2ludmFsaWQnLCAncmVhZG9ubHknLCAncmVxdWlyZWQnLCAnc2l6ZScsICd2YWxpZCcsICd3ZWlnaHQnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxGaWVsZExhYmVsIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsRmllbGRNZXNzYWdlIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxGaWVsZE1lc3NhZ2Uge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjb2xvcicsICdkaXNhYmxlZCcsICdpbnZhbGlkJywgJ25vUmVzZXJ2ZWRTcGFjZScsICdyZWFkb25seScsICd2YWxpZCddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbEZpZWxkTWVzc2FnZVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1maWVsZC1tZXNzYWdlJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydjb2xvcicsICdkaXNhYmxlZCcsICdpbnZhbGlkJywgJ25vUmVzZXJ2ZWRTcGFjZScsICdyZWFkb25seScsICd2YWxpZCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbEZpZWxkTWVzc2FnZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbEZvb3RlciBleHRlbmRzIENvbXBvbmVudHMuQmFsRm9vdGVyIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaGlkZUxhbmd1YWdlU2VsZWN0aW9uJywgJ2hpZGVMaW5rcycsICdsb2dvSHJlZicsICdsb2dvU3ZnJywgJ292ZXJyaWRlTGlua3MnLCAnc2hvd1NvY2lhbE1lZGlhJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsRm9vdGVyXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWZvb3RlcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnaGlkZUxhbmd1YWdlU2VsZWN0aW9uJywgJ2hpZGVMaW5rcycsICdsb2dvSHJlZicsICdsb2dvU3ZnJywgJ292ZXJyaWRlTGlua3MnLCAnc2hvd1NvY2lhbE1lZGlhJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsRm9vdGVyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsRm9ybSBleHRlbmRzIENvbXBvbmVudHMuQmFsRm9ybSB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2Zvcm1DbGFzcycsICduYXRpdmUnLCAnbm92YWxpZGF0ZSddLFxuICBtZXRob2RzOiBbJ3Njcm9sbFRvRmlyc3RJbnZhbGlkRmllbGQnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxGb3JtXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWZvcm0nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2Zvcm1DbGFzcycsICduYXRpdmUnLCAnbm92YWxpZGF0ZSddXG59KVxuZXhwb3J0IGNsYXNzIEJhbEZvcm0ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxGb3JtQ29sIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxGb3JtQ29sIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnc2l6ZSddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbEZvcm1Db2xcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtZm9ybS1jb2wnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ3NpemUnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxGb3JtQ29sIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsRm9ybUdyaWQgZXh0ZW5kcyBDb21wb25lbnRzLkJhbEZvcm1HcmlkIHt9XG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbEZvcm1HcmlkXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWZvcm0tZ3JpZCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEJhbEZvcm1HcmlkIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsSGVhZGluZyBleHRlbmRzIENvbXBvbmVudHMuQmFsSGVhZGluZyB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2F1dG9MZXZlbCcsICdjb2xvcicsICdpbnZlcnRlZCcsICdsZXZlbCcsICdub1dyYXAnLCAnc2hhZG93JywgJ3NwYWNlJywgJ3N1YnRpdGxlJywgJ3Zpc3VhbExldmVsJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsSGVhZGluZ1xufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1oZWFkaW5nJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydhdXRvTGV2ZWwnLCAnY29sb3InLCAnaW52ZXJ0ZWQnLCAnbGV2ZWwnLCAnbm9XcmFwJywgJ3NoYWRvdycsICdzcGFjZScsICdzdWJ0aXRsZScsICd2aXN1YWxMZXZlbCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbEhlYWRpbmcge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxIaW50IGV4dGVuZHMgQ29tcG9uZW50cy5CYWxIaW50IHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY2xvc2VMYWJlbCcsICdzbWFsbCddLFxuICBtZXRob2RzOiBbJ3RvZ2dsZScsICdwcmVzZW50JywgJ2Rpc21pc3MnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxIaW50XG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWhpbnQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2Nsb3NlTGFiZWwnLCAnc21hbGwnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxIaW50IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsSGludFRleHQgZXh0ZW5kcyBDb21wb25lbnRzLkJhbEhpbnRUZXh0IHt9XG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbEhpbnRUZXh0XG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWhpbnQtdGV4dCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEJhbEhpbnRUZXh0IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsSGludFRpdGxlIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxIaW50VGl0bGUge31cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsSGludFRpdGxlXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWhpbnQtdGl0bGUnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBCYWxIaW50VGl0bGUge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxJY29uIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxJY29uIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29sb3InLCAnY29sb3JIb3ZlcmVkJywgJ2NvbG9yUHJlc3NlZCcsICdkaXNhYmxlZCcsICdpbmxpbmUnLCAnaW52YWxpZCcsICdpbnZlcnRlZCcsICduYW1lJywgJ3NoYWRvdycsICdzaXplJywgJ3N2ZycsICd0aWxlJywgJ3RpbGVDb2xvcicsICd0dXJuJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsSWNvblxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1pY29uJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydjb2xvcicsICdjb2xvckhvdmVyZWQnLCAnY29sb3JQcmVzc2VkJywgJ2Rpc2FibGVkJywgJ2lubGluZScsICdpbnZhbGlkJywgJ2ludmVydGVkJywgJ25hbWUnLCAnc2hhZG93JywgJ3NpemUnLCAnc3ZnJywgJ3RpbGUnLCAndGlsZUNvbG9yJywgJ3R1cm4nXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxJY29uIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsSW5wdXRHcm91cCBleHRlbmRzIENvbXBvbmVudHMuQmFsSW5wdXRHcm91cCB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2ludmFsaWQnLCAncmVhZG9ubHknXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxJbnB1dEdyb3VwXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWlucHV0LWdyb3VwJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydkaXNhYmxlZCcsICdpbnZhbGlkJywgJ3JlYWRvbmx5J11cbn0pXG5leHBvcnQgY2xhc3MgQmFsSW5wdXRHcm91cCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbExhYmVsIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxMYWJlbCB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2h0bWxGb3InLCAnaHRtbElkJywgJ2ludmFsaWQnLCAnbXVsdGlsaW5lJywgJ25vV3JhcCcsICdyZWFkb25seScsICdyZXF1aXJlZCcsICdzaXplJywgJ3ZhbGlkJywgJ3dlaWdodCddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbExhYmVsXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWxhYmVsJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydkaXNhYmxlZCcsICdodG1sRm9yJywgJ2h0bWxJZCcsICdpbnZhbGlkJywgJ211bHRpbGluZScsICdub1dyYXAnLCAncmVhZG9ubHknLCAncmVxdWlyZWQnLCAnc2l6ZScsICd2YWxpZCcsICd3ZWlnaHQnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxMYWJlbCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbExpc3QgZXh0ZW5kcyBDb21wb25lbnRzLkJhbExpc3Qge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhY2NvcmRpb25PbmVMZXZlbCcsICdiYWNrZ3JvdW5kJywgJ2JvcmRlcicsICdkaXNhYmxlZCcsICdzaXplJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsTGlzdFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1saXN0JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydhY2NvcmRpb25PbmVMZXZlbCcsICdiYWNrZ3JvdW5kJywgJ2JvcmRlcicsICdkaXNhYmxlZCcsICdzaXplJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsTGlzdCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbExpc3RJdGVtIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxMaXN0SXRlbSB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FjY29yZGlvbicsICdjbGlja2FibGUnLCAnZGlzYWJsZWQnLCAnZG93bmxvYWQnLCAnaHJlZicsICdyZWwnLCAnc2VsZWN0ZWQnLCAnc3ViQWNjb3JkaW9uSXRlbScsICd0YXJnZXQnXSxcbiAgbWV0aG9kczogWydwcmVzZW50JywgJ2Rpc21pc3MnLCAndG9nZ2xlJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsTGlzdEl0ZW1cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbGlzdC1pdGVtJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydhY2NvcmRpb24nLCAnY2xpY2thYmxlJywgJ2Rpc2FibGVkJywgJ2Rvd25sb2FkJywgJ2hyZWYnLCAncmVsJywgJ3NlbGVjdGVkJywgJ3N1YkFjY29yZGlvbkl0ZW0nLCAndGFyZ2V0J10sXG4gIG91dHB1dHM6IFsnYmFsTmF2aWdhdGUnLCAnYmFsR3JvdXBTdGF0ZUNoYW5nZWQnLCAnYmFsV2lsbEFuaW1hdGUnLCAnYmFsRGlkQW5pbWF0ZSddXG59KVxuZXhwb3J0IGNsYXNzIEJhbExpc3RJdGVtIHtcbiAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgbGluayBlbGVtZW50IGhhcyBjbGlja2VkICovXG4gIGJhbE5hdmlnYXRlITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxMaXN0SXRlbUN1c3RvbUV2ZW50PE1vdXNlRXZlbnQ+PjtcbiAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgc3RhdGUgb2YgdGhlIGdyb3VwIGlzIGNoYW5naW5nICovXG4gIGJhbEdyb3VwU3RhdGVDaGFuZ2VkITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxMaXN0SXRlbUN1c3RvbUV2ZW50PE1vdXNlRXZlbnQ+PjtcbiAgLyoqIEVtaXR0ZWQgYmVmb3JlIHRoZSBhbmltYXRpb24gc3RhcnRzICovXG4gIGJhbFdpbGxBbmltYXRlITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxMaXN0SXRlbUN1c3RvbUV2ZW50PGJvb2xlYW4+PjtcbiAgLyoqIEVtaXR0ZWQgYWZ0ZXIgdGhlIGFuaW1hdGlvbiBoYXMgZmluaXNoZWQgKi9cbiAgYmFsRGlkQW5pbWF0ZSE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsTGlzdEl0ZW1DdXN0b21FdmVudDxib29sZWFuPj47XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2JhbE5hdmlnYXRlJywgJ2JhbEdyb3VwU3RhdGVDaGFuZ2VkJywgJ2JhbFdpbGxBbmltYXRlJywgJ2JhbERpZEFuaW1hdGUnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsTGlzdEl0ZW1BY2NvcmRpb25Cb2R5IGV4dGVuZHMgQ29tcG9uZW50cy5CYWxMaXN0SXRlbUFjY29yZGlvbkJvZHkge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhY2NvcmRpb25Hcm91cCcsICdjb250ZW50QWxpZ25tZW50JywgJ2NvbnRlbnRTcGFjZSddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbExpc3RJdGVtQWNjb3JkaW9uQm9keVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1saXN0LWl0ZW0tYWNjb3JkaW9uLWJvZHknLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2FjY29yZGlvbkdyb3VwJywgJ2NvbnRlbnRBbGlnbm1lbnQnLCAnY29udGVudFNwYWNlJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsTGlzdEl0ZW1BY2NvcmRpb25Cb2R5IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsTGlzdEl0ZW1BY2NvcmRpb25IZWFkIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxMaXN0SXRlbUFjY29yZGlvbkhlYWQge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhY2NvcmRpb25PcGVuJywgJ2ljb24nXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxMaXN0SXRlbUFjY29yZGlvbkhlYWRcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbGlzdC1pdGVtLWFjY29yZGlvbi1oZWFkJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydhY2NvcmRpb25PcGVuJywgJ2ljb24nXSxcbiAgb3V0cHV0czogWydiYWxBY2NvcmRpb25DaGFuZ2UnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxMaXN0SXRlbUFjY29yZGlvbkhlYWQge1xuICAvKiogRW1pdHRlZCB3aGVuIHRoZSBhY2NvcmRpb24gc3RhdGUgaXMgY2hhbmdlZCAqL1xuICBiYWxBY2NvcmRpb25DaGFuZ2UhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbExpc3RJdGVtQWNjb3JkaW9uSGVhZEN1c3RvbUV2ZW50PGJvb2xlYW4+PjtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYmFsQWNjb3JkaW9uQ2hhbmdlJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbExpc3RJdGVtQ29udGVudCBleHRlbmRzIENvbXBvbmVudHMuQmFsTGlzdEl0ZW1Db250ZW50IHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29udGVudEFsaWdubWVudCddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbExpc3RJdGVtQ29udGVudFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1saXN0LWl0ZW0tY29udGVudCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnY29udGVudEFsaWdubWVudCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbExpc3RJdGVtQ29udGVudCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbExpc3RJdGVtSWNvbiBleHRlbmRzIENvbXBvbmVudHMuQmFsTGlzdEl0ZW1JY29uIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsncmlnaHQnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxMaXN0SXRlbUljb25cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbGlzdC1pdGVtLWljb24nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ3JpZ2h0J11cbn0pXG5leHBvcnQgY2xhc3MgQmFsTGlzdEl0ZW1JY29uIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsTGlzdEl0ZW1TdWJ0aXRsZSBleHRlbmRzIENvbXBvbmVudHMuQmFsTGlzdEl0ZW1TdWJ0aXRsZSB7fVxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxMaXN0SXRlbVN1YnRpdGxlXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWxpc3QtaXRlbS1zdWJ0aXRsZScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEJhbExpc3RJdGVtU3VidGl0bGUge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxMaXN0SXRlbVRpdGxlIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxMaXN0SXRlbVRpdGxlIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnbGV2ZWwnLCAndmlzdWFsTGV2ZWwnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxMaXN0SXRlbVRpdGxlXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWxpc3QtaXRlbS10aXRsZScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnbGV2ZWwnLCAndmlzdWFsTGV2ZWwnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxMaXN0SXRlbVRpdGxlIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsTG9nbyBleHRlbmRzIENvbXBvbmVudHMuQmFsTG9nbyB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FuaW1hdGVkJywgJ2JyYW5kJywgJ2NvbG9yJywgJ3NpemUnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxMb2dvXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWxvZ28nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2FuaW1hdGVkJywgJ2JyYW5kJywgJ2NvbG9yJywgJ3NpemUnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxMb2dvIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsTW9kYWwgZXh0ZW5kcyBDb21wb25lbnRzLkJhbE1vZGFsIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYmFja2Ryb3BEaXNtaXNzJywgJ2NvbXBvbmVudCcsICdjb21wb25lbnRQcm9wcycsICdjc3NDbGFzcycsICdmb2N1c1RyYXAnLCAnaGFzQmFja2Ryb3AnLCAnaXNDbG9zYWJsZScsICdtb2RhbFdpZHRoJywgJ3NwYWNlJ10sXG4gIG1ldGhvZHM6IFsncHJlc2VudCcsICdkaXNtaXNzJywgJ29uRGlkRGlzbWlzcycsICdvbldpbGxEaXNtaXNzJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsTW9kYWxcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbW9kYWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2JhY2tkcm9wRGlzbWlzcycsICdjb21wb25lbnQnLCAnY29tcG9uZW50UHJvcHMnLCAnY3NzQ2xhc3MnLCAnZm9jdXNUcmFwJywgJ2hhc0JhY2tkcm9wJywgJ2lzQ2xvc2FibGUnLCAnbW9kYWxXaWR0aCcsICdzcGFjZSddLFxuICBvdXRwdXRzOiBbJ2JhbE1vZGFsRGlkUHJlc2VudCcsICdiYWxNb2RhbFdpbGxQcmVzZW50JywgJ2JhbE1vZGFsV2lsbERpc21pc3MnLCAnYmFsTW9kYWxEaWREaXNtaXNzJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsTW9kYWwge1xuICAvKiogRW1pdHRlZCBhZnRlciB0aGUgbW9kYWwgaGFzIHByZXNlbnRlZC4gKi9cbiAgYmFsTW9kYWxEaWRQcmVzZW50ITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxNb2RhbEN1c3RvbUV2ZW50PHZvaWQ+PjtcbiAgLyoqIEVtaXR0ZWQgYmVmb3JlIHRoZSBtb2RhbCBoYXMgcHJlc2VudGVkLiAqL1xuICBiYWxNb2RhbFdpbGxQcmVzZW50ITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxNb2RhbEN1c3RvbUV2ZW50PHZvaWQ+PjtcbiAgLyoqIEVtaXR0ZWQgYmVmb3JlIHRoZSBtb2RhbCBoYXMgZGlzbWlzc2VkLiAqL1xuICBiYWxNb2RhbFdpbGxEaXNtaXNzITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxNb2RhbEN1c3RvbUV2ZW50PGFueT4+O1xuICAvKiogRW1pdHRlZCBhZnRlciB0aGUgbW9kYWwgaGFzIGRpc21pc3NlZC4gKi9cbiAgYmFsTW9kYWxEaWREaXNtaXNzITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxNb2RhbEN1c3RvbUV2ZW50PGFueT4+O1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydiYWxNb2RhbERpZFByZXNlbnQnLCAnYmFsTW9kYWxXaWxsUHJlc2VudCcsICdiYWxNb2RhbFdpbGxEaXNtaXNzJywgJ2JhbE1vZGFsRGlkRGlzbWlzcyddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxNb2RhbEJvZHkgZXh0ZW5kcyBDb21wb25lbnRzLkJhbE1vZGFsQm9keSB7fVxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxNb2RhbEJvZHlcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbW9kYWwtYm9keScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEJhbE1vZGFsQm9keSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbE1vZGFsSGVhZGVyIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxNb2RhbEhlYWRlciB7fVxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxNb2RhbEhlYWRlclxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1tb2RhbC1oZWFkZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBCYWxNb2RhbEhlYWRlciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbE5hdiBleHRlbmRzIENvbXBvbmVudHMuQmFsTmF2IHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYnV0dG9ucycsICdsb2dvJywgJ29wdGlvbnMnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxOYXZcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbmF2JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydidXR0b25zJywgJ2xvZ28nLCAnb3B0aW9ucyddLFxuICBvdXRwdXRzOiBbJ2JhbE5hdkl0ZW1DbGljayddXG59KVxuZXhwb3J0IGNsYXNzIEJhbE5hdiB7XG4gIC8qKiBFbWl0dGVkIHdoZW4gYSBuYXYgbGluayBpdGVtIGlzIGNsaWNrZWQuIFRoaXMgZXZlbnQgY2FuIGJlIHVzZWQgdG9cbmFkZCBkYXRhIHRyYWNraW5nICovXG4gIGJhbE5hdkl0ZW1DbGljayE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsTmF2Q3VzdG9tRXZlbnQ8QmFsRXZlbnRzLkJhbE5hdkl0ZW1DbGlja0RldGFpbD4+O1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydiYWxOYXZJdGVtQ2xpY2snXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsTmF2TGluayBleHRlbmRzIENvbXBvbmVudHMuQmFsTmF2TGluayB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NsaWNrYWJsZScsICdocmVmJywgJ3JlbCcsICdzZWxlY3RlZCcsICd0YXJnZXQnLCAndmFyaWFudCddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbE5hdkxpbmtcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbmF2LWxpbmsnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2NsaWNrYWJsZScsICdocmVmJywgJ3JlbCcsICdzZWxlY3RlZCcsICd0YXJnZXQnLCAndmFyaWFudCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbE5hdkxpbmsge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxOYXZMaW5rR3JpZCBleHRlbmRzIENvbXBvbmVudHMuQmFsTmF2TGlua0dyaWQge31cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsTmF2TGlua0dyaWRcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbmF2LWxpbmstZ3JpZCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEJhbE5hdkxpbmtHcmlkIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsTmF2TGlua0dyaWRDb2wgZXh0ZW5kcyBDb21wb25lbnRzLkJhbE5hdkxpbmtHcmlkQ29sIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnc3RhdGljQ29sJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsTmF2TGlua0dyaWRDb2xcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbmF2LWxpbmstZ3JpZC1jb2wnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ3N0YXRpY0NvbCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbE5hdkxpbmtHcmlkQ29sIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsTmF2TGlua0dyb3VwIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxOYXZMaW5rR3JvdXAge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjb2xvciddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbE5hdkxpbmtHcm91cFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1uYXYtbGluay1ncm91cCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnY29sb3InXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxOYXZMaW5rR3JvdXAge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxOYXZNZW51QmFyIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxOYXZNZW51QmFyIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaW52aXNpYmxlJywgJ3Bvc2l0aW9uJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsTmF2TWVudUJhclxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1uYXYtbWVudS1iYXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2ludmlzaWJsZScsICdwb3NpdGlvbiddXG59KVxuZXhwb3J0IGNsYXNzIEJhbE5hdk1lbnVCYXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxOYXZNZW51Rmx5b3V0IGV4dGVuZHMgQ29tcG9uZW50cy5CYWxOYXZNZW51Rmx5b3V0IHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnbmF2SWQnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxOYXZNZW51Rmx5b3V0XG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLW5hdi1tZW51LWZseW91dCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnbmF2SWQnXSxcbiAgb3V0cHV0czogWydiYWxGb2N1c091dCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbE5hdk1lbnVGbHlvdXQge1xuICAvKiogRW1pdHRlZCB3aGVuIHRoZSBmbHlvdXQgbG9zZXMgZm9jdXMgKi9cbiAgYmFsRm9jdXNPdXQhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbE5hdk1lbnVGbHlvdXRDdXN0b21FdmVudDxGb2N1c0V2ZW50Pj47XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2JhbEZvY3VzT3V0J10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbE5hdk1ldGFCYXIgZXh0ZW5kcyBDb21wb25lbnRzLkJhbE5hdk1ldGFCYXIge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpbnZpc2libGUnLCAncG9zaXRpb24nLCAnc2l6ZScsICdzdGF5T25Ub3BPZkJhY2tkcm9wJywgJ3ZhcmlhbnQnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxOYXZNZXRhQmFyXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLW5hdi1tZXRhLWJhcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnaW52aXNpYmxlJywgJ3Bvc2l0aW9uJywgJ3NpemUnLCAnc3RheU9uVG9wT2ZCYWNrZHJvcCcsICd2YXJpYW50J11cbn0pXG5leHBvcnQgY2xhc3MgQmFsTmF2TWV0YUJhciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbE5hdmJhciBleHRlbmRzIENvbXBvbmVudHMuQmFsTmF2YmFyIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29udGFpbmVyJywgJ2ludGVyZmFjZScsICdsaWdodCddLFxuICBtZXRob2RzOiBbJ3RvZ2dsZU1lbnUnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxOYXZiYXJcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbmF2YmFyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydjb250YWluZXInLCAnaW50ZXJmYWNlJywgJ2xpZ2h0J11cbn0pXG5leHBvcnQgY2xhc3MgQmFsTmF2YmFyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsTmF2YmFyQnJhbmQgZXh0ZW5kcyBDb21wb25lbnRzLkJhbE5hdmJhckJyYW5kIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYW5pbWF0ZWQnLCAnaHJlZicsICdsb2dvJywgJ2xvZ29DbGlja2FibGUnLCAnbG9nb0xhYmVsJywgJ2xvZ29TaXplJywgJ3JlbCcsICdzaW1wbGUnLCAndGFyZ2V0J10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsTmF2YmFyQnJhbmRcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbmF2YmFyLWJyYW5kJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydhbmltYXRlZCcsICdocmVmJywgJ2xvZ28nLCAnbG9nb0NsaWNrYWJsZScsICdsb2dvTGFiZWwnLCAnbG9nb1NpemUnLCAncmVsJywgJ3NpbXBsZScsICd0YXJnZXQnXSxcbiAgb3V0cHV0czogWydiYWxOYXZpZ2F0ZScsICdiYWxXaWxsQW5pbWF0ZScsICdiYWxEaWRBbmltYXRlJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsTmF2YmFyQnJhbmQge1xuICAvKiogRW1pdHRlZCB3aGVuIHRoZSBsaW5rIGVsZW1lbnQgaGFzIGNsaWNrZWQgKi9cbiAgYmFsTmF2aWdhdGUhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbE5hdmJhckJyYW5kQ3VzdG9tRXZlbnQ8TW91c2VFdmVudD4+O1xuICAvKiogRW1pdHRlZCBiZWZvcmUgdGhlIGFuaW1hdGlvbiBzdGFydHMgKi9cbiAgYmFsV2lsbEFuaW1hdGUhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbE5hdmJhckJyYW5kQ3VzdG9tRXZlbnQ8Ym9vbGVhbj4+O1xuICAvKiogRW1pdHRlZCBhZnRlciB0aGUgYW5pbWF0aW9uIGhhcyBmaW5pc2hlZCAqL1xuICBiYWxEaWRBbmltYXRlITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxOYXZiYXJCcmFuZEN1c3RvbUV2ZW50PGJvb2xlYW4+PjtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYmFsTmF2aWdhdGUnLCAnYmFsV2lsbEFuaW1hdGUnLCAnYmFsRGlkQW5pbWF0ZSddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxOYXZiYXJNZW51IGV4dGVuZHMgQ29tcG9uZW50cy5CYWxOYXZiYXJNZW51IHt9XG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbE5hdmJhck1lbnVcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbmF2YmFyLW1lbnUnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBCYWxOYXZiYXJNZW51IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsTmF2YmFyTWVudUVuZCBleHRlbmRzIENvbXBvbmVudHMuQmFsTmF2YmFyTWVudUVuZCB7fVxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxOYXZiYXJNZW51RW5kXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLW5hdmJhci1tZW51LWVuZCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEJhbE5hdmJhck1lbnVFbmQge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxOYXZiYXJNZW51U3RhcnQgZXh0ZW5kcyBDb21wb25lbnRzLkJhbE5hdmJhck1lbnVTdGFydCB7fVxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxOYXZiYXJNZW51U3RhcnRcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbmF2YmFyLW1lbnUtc3RhcnQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBCYWxOYXZiYXJNZW51U3RhcnQge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxOb3RpY2VzIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxOb3RpY2VzIHt9XG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbE5vdGljZXNcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbm90aWNlcycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEJhbE5vdGljZXMge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxOb3RpZmljYXRpb24gZXh0ZW5kcyBDb21wb25lbnRzLkJhbE5vdGlmaWNhdGlvbiB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NvbG9yJywgJ2xpZ2h0JywgJ25vSWNvbiddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbE5vdGlmaWNhdGlvblxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1ub3RpZmljYXRpb24nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2NvbG9yJywgJ2xpZ2h0JywgJ25vSWNvbiddXG59KVxuZXhwb3J0IGNsYXNzIEJhbE5vdGlmaWNhdGlvbiB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbE9wdGlvbiBleHRlbmRzIENvbXBvbmVudHMuQmFsT3B0aW9uIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnZm9jdXNlZCcsICdoaWRkZW4nLCAnaW52YWxpZCcsICdsYWJlbCcsICdtdWx0aWxpbmUnLCAnc2VsZWN0ZWQnLCAndmFsdWUnXSxcbiAgbWV0aG9kczogWydzZWxlY3QnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxPcHRpb25cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtb3B0aW9uJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydkaXNhYmxlZCcsICdmb2N1c2VkJywgJ2hpZGRlbicsICdpbnZhbGlkJywgJ2xhYmVsJywgJ211bHRpbGluZScsICdzZWxlY3RlZCcsICd2YWx1ZSddLFxuICBvdXRwdXRzOiBbJ2JhbE9wdGlvbkNoYW5nZSddXG59KVxuZXhwb3J0IGNsYXNzIEJhbE9wdGlvbiB7XG4gIC8qKiBFbWl0dGVkIHdoZW4gdGhlIG9wdGlvbiBnZXRzIHNlbGVjdGVkIG9yIHVuc2VsZWN0ZWQgKi9cbiAgYmFsT3B0aW9uQ2hhbmdlITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxPcHRpb25DdXN0b21FdmVudDxCYWxFdmVudHMuQmFsT3B0aW9uQ2hhbmdlRGV0YWlsPj47XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2JhbE9wdGlvbkNoYW5nZSddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxPcHRpb25MaXN0IGV4dGVuZHMgQ29tcG9uZW50cy5CYWxPcHRpb25MaXN0IHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29udGVudEhlaWdodCcsICdkaXNhYmxlZCcsICdmaWx0ZXInLCAnZm9jdXNJbmRleCcsICdsYWJlbGxlZGJ5JywgJ211bHRpcGxlJywgJ3JlcXVpcmVkJ10sXG4gIG1ldGhvZHM6IFsnZm9jdXNTZWxlY3RlZCcsICdmb2N1c0ZpcnN0JywgJ2ZvY3VzTGFzdCcsICdmb2N1c05leHQnLCAnZm9jdXNQcmV2aW91cycsICdmb2N1c0J5TGFiZWwnLCAnZmlsdGVyQnlDb250ZW50JywgJ3Jlc2V0SGlkZGVuJywgJ3Jlc2V0U2VsZWN0ZWQnLCAndXBkYXRlU2VsZWN0ZWQnLCAncmVzZXRGb2N1cycsICdnZXRTZWxlY3RlZFZhbHVlcycsICdnZXRTZWxlY3RlZE9wdGlvbnMnLCAnZ2V0VmFsdWVzJywgJ2dldExhYmVscycsICdnZXRPcHRpb25zJywgJ3NlbGVjdEJ5Rm9jdXMnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxPcHRpb25MaXN0XG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLW9wdGlvbi1saXN0JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydjb250ZW50SGVpZ2h0JywgJ2Rpc2FibGVkJywgJ2ZpbHRlcicsICdmb2N1c0luZGV4JywgJ2xhYmVsbGVkYnknLCAnbXVsdGlwbGUnLCAncmVxdWlyZWQnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxPcHRpb25MaXN0IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsUGFnaW5hdGlvbiBleHRlbmRzIENvbXBvbmVudHMuQmFsUGFnaW5hdGlvbiB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FsaWduJywgJ2Rpc2FibGVkJywgJ2ludGVyZmFjZScsICdwYWdlUmFuZ2UnLCAnc2l6ZScsICdzdGlja3knLCAndG9wJywgJ3RvdGFsUGFnZXMnLCAndmFsdWUnXSxcbiAgbWV0aG9kczogWyduZXh0JywgJ3ByZXZpb3VzJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsUGFnaW5hdGlvblxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1wYWdpbmF0aW9uJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydhbGlnbicsICdkaXNhYmxlZCcsICdpbnRlcmZhY2UnLCAncGFnZVJhbmdlJywgJ3NpemUnLCAnc3RpY2t5JywgJ3RvcCcsICd0b3RhbFBhZ2VzJywgJ3ZhbHVlJ10sXG4gIG91dHB1dHM6IFsnYmFsQ2hhbmdlJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsUGFnaW5hdGlvbiB7XG4gIC8qKiBUcmlnZ2VycyB3aGVuIGEgcGFnZSBjaGFuZ2UgaGFwcGVucyAqL1xuICBiYWxDaGFuZ2UhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbFBhZ2luYXRpb25DdXN0b21FdmVudDxudW1iZXI+PjtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYmFsQ2hhbmdlJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbFBvcG92ZXIgZXh0ZW5kcyBDb21wb25lbnRzLkJhbFBvcG92ZXIge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhY3RpdmUnLCAnYXJyb3cnLCAnYXV0b1RyaWdnZXInLCAnYmFja2Ryb3AnLCAnaGludCcsICdob3ZlcicsICdtb2JpbGVUb3AnLCAnb2Zmc2V0WCcsICdvZmZzZXRZJywgJ3BhZGRpbmcnLCAncG9zaXRpb24nLCAndG9vbHRpcCddLFxuICBtZXRob2RzOiBbJ3ByZXNlbnQnLCAnZGlzbWlzcycsICd0b2dnbGUnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxQb3BvdmVyXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLXBvcG92ZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2FjdGl2ZScsICdhcnJvdycsICdhdXRvVHJpZ2dlcicsICdiYWNrZHJvcCcsICdoaW50JywgJ2hvdmVyJywgJ21vYmlsZVRvcCcsICdvZmZzZXRYJywgJ29mZnNldFknLCAncGFkZGluZycsICdwb3NpdGlvbicsICd0b29sdGlwJ10sXG4gIG91dHB1dHM6IFsnYmFsQ2hhbmdlJywgJ2JhbFdpbGxBbmltYXRlJywgJ2JhbERpZEFuaW1hdGUnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxQb3BvdmVyIHtcbiAgLyoqIExpc3RlbiB3aGVuIHRoZSBwb3BvdmVyIG9wZW5zIG9yIGNsb3Nlcy4gUmV0dXJucyB0aGUgY3VycmVudCB2YWx1ZS4gKi9cbiAgYmFsQ2hhbmdlITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxQb3BvdmVyQ3VzdG9tRXZlbnQ8Ym9vbGVhbj4+O1xuICAvKiogRW1pdHRlZCBiZWZvcmUgdGhlIGFuaW1hdGlvbiBzdGFydHMgKi9cbiAgYmFsV2lsbEFuaW1hdGUhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbFBvcG92ZXJDdXN0b21FdmVudDxib29sZWFuPj47XG4gIC8qKiBFbWl0dGVkIGFmdGVyIHRoZSBhbmltYXRpb24gaGFzIGZpbmlzaGVkICovXG4gIGJhbERpZEFuaW1hdGUhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbFBvcG92ZXJDdXN0b21FdmVudDxib29sZWFuPj47XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2JhbENoYW5nZScsICdiYWxXaWxsQW5pbWF0ZScsICdiYWxEaWRBbmltYXRlJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbFBvcG92ZXJDb250ZW50IGV4dGVuZHMgQ29tcG9uZW50cy5CYWxQb3BvdmVyQ29udGVudCB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NvbG9yJywgJ2NvbnRlbnRNaW5XaWR0aCcsICdjb250ZW50V2lkdGgnLCAnZXhwYW5kZWQnLCAnbW9iaWxlVG9wJywgJ25vU2hhZG93JywgJ3JhZGl1cycsICdzY3JvbGxhYmxlJywgJ3NwYWNlbGVzcyddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbFBvcG92ZXJDb250ZW50XG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLXBvcG92ZXItY29udGVudCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnY29sb3InLCAnY29udGVudE1pbldpZHRoJywgJ2NvbnRlbnRXaWR0aCcsICdleHBhbmRlZCcsICdtb2JpbGVUb3AnLCAnbm9TaGFkb3cnLCAncmFkaXVzJywgJ3Njcm9sbGFibGUnLCAnc3BhY2VsZXNzJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsUG9wb3ZlckNvbnRlbnQge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxQb3B1cCBleHRlbmRzIENvbXBvbmVudHMuQmFsUG9wdXAge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhY3RpdmUnLCAnYXJyb3cnLCAnYmFja2Ryb3AnLCAnYmFja2Ryb3BEaXNtaXNzJywgJ2Nsb3NhYmxlJywgJ2NvbnRlbnRXaWR0aCcsICdsYWJlbCcsICdvZmZzZXQnLCAncGxhY2VtZW50JywgJ3JlZmVyZW5jZScsICd2YXJpYW50J10sXG4gIG1ldGhvZHM6IFsncHJlc2VudCcsICdkaXNtaXNzJywgJ3RvZ2dsZSddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbFBvcHVwXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLXBvcHVwJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydhY3RpdmUnLCAnYXJyb3cnLCAnYmFja2Ryb3AnLCAnYmFja2Ryb3BEaXNtaXNzJywgJ2Nsb3NhYmxlJywgJ2NvbnRlbnRXaWR0aCcsICdsYWJlbCcsICdvZmZzZXQnLCAncGxhY2VtZW50JywgJ3JlZmVyZW5jZScsICd2YXJpYW50J10sXG4gIG91dHB1dHM6IFsnYmFsQ2hhbmdlJywgJ2JhbFdpbGxBbmltYXRlJywgJ2JhbERpZEFuaW1hdGUnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxQb3B1cCB7XG4gIC8qKiBFbWl0dGVkIHdoZW4gdGhlIGFjY29yZGlvbiBoYXMgb3BlbmVkIG9yIGNsb3NlZCAqL1xuICBiYWxDaGFuZ2UhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbFBvcHVwQ3VzdG9tRXZlbnQ8Ym9vbGVhbj4+O1xuICAvKiogRW1pdHRlZCBiZWZvcmUgdGhlIGFuaW1hdGlvbiBzdGFydHMgKi9cbiAgYmFsV2lsbEFuaW1hdGUhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbFBvcHVwQ3VzdG9tRXZlbnQ8Ym9vbGVhbj4+O1xuICAvKiogRW1pdHRlZCBhZnRlciB0aGUgYW5pbWF0aW9uIGhhcyBmaW5pc2hlZCAqL1xuICBiYWxEaWRBbmltYXRlITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxQb3B1cEN1c3RvbUV2ZW50PGJvb2xlYW4+PjtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYmFsQ2hhbmdlJywgJ2JhbFdpbGxBbmltYXRlJywgJ2JhbERpZEFuaW1hdGUnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsUHJvZ3Jlc3NCYXIgZXh0ZW5kcyBDb21wb25lbnRzLkJhbFByb2dyZXNzQmFyIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYmFja2dyb3VuZCcsICdjb2xvcicsICd2YWx1ZSddLFxuICBtZXRob2RzOiBbJ2NvbmZpZ0NoYW5nZWQnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxQcm9ncmVzc0JhclxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1wcm9ncmVzcy1iYXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2JhY2tncm91bmQnLCAnY29sb3InLCAndmFsdWUnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxQcm9ncmVzc0JhciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbFJhZGlvIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxSYWRpbyB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NvbG9yJywgJ2Rpc2FibGVkJywgJ2ZsYXQnLCAnaW50ZXJmYWNlJywgJ2ludmFsaWQnLCAnbGFiZWwnLCAnbGFiZWxIaWRkZW4nLCAnbmFtZScsICdub25TdWJtaXQnLCAncmVhZG9ubHknLCAncmVxdWlyZWQnLCAndmFsdWUnXSxcbiAgbWV0aG9kczogWydzZXRGb2N1cycsICdnZXRJbnB1dEVsZW1lbnQnLCAnZ2V0T3B0aW9uJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsUmFkaW9cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtcmFkaW8nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2NvbG9yJywgJ2Rpc2FibGVkJywgJ2ZsYXQnLCAnaW50ZXJmYWNlJywgJ2ludmFsaWQnLCAnbGFiZWwnLCAnbGFiZWxIaWRkZW4nLCAnbmFtZScsICdub25TdWJtaXQnLCAncmVhZG9ubHknLCAncmVxdWlyZWQnLCAndmFsdWUnXSxcbiAgb3V0cHV0czogWydiYWxGb2N1cycsICdiYWxCbHVyJywgJ2JhbENoYW5nZSddXG59KVxuZXhwb3J0IGNsYXNzIEJhbFJhZGlvIHtcbiAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgdG9nZ2xlIGhhcyBmb2N1cy4gKi9cbiAgYmFsRm9jdXMhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbFJhZGlvQ3VzdG9tRXZlbnQ8Rm9jdXNFdmVudD4+O1xuICAvKiogRW1pdHRlZCB3aGVuIHRoZSB0b2dnbGUgbG9zZXMgZm9jdXMuICovXG4gIGJhbEJsdXIhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbFJhZGlvQ3VzdG9tRXZlbnQ8Rm9jdXNFdmVudD4+O1xuICAvKiogRW1pdHRlZCB3aGVuIHRoZSBjaGVja2VkIHByb3BlcnR5IGhhcyBjaGFuZ2VkLiAqL1xuICBiYWxDaGFuZ2UhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbFJhZGlvQ3VzdG9tRXZlbnQ8Ym9vbGVhbj4+O1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydiYWxGb2N1cycsICdiYWxCbHVyJywgJ2JhbENoYW5nZSddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxSYWRpb0ljb24gZXh0ZW5kcyBDb21wb25lbnRzLkJhbFJhZGlvSWNvbiB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NoZWNrZWQnLCAnZGlzYWJsZWQnLCAnaW52YWxpZCcsICdpbnZlcnRlZCddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbFJhZGlvSWNvblxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1yYWRpby1pY29uJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydjaGVja2VkJywgJ2Rpc2FibGVkJywgJ2ludmFsaWQnLCAnaW52ZXJ0ZWQnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxSYWRpb0ljb24ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxTZWdtZW50SXRlbSBleHRlbmRzIENvbXBvbmVudHMuQmFsU2VnbWVudEl0ZW0ge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydkaXNhYmxlZCcsICdpbnZhbGlkJywgJ2xhYmVsJywgJ3ZhbHVlJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsU2VnbWVudEl0ZW1cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtc2VnbWVudC1pdGVtJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydkaXNhYmxlZCcsICdpbnZhbGlkJywgJ2xhYmVsJywgJ3ZhbHVlJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsU2VnbWVudEl0ZW0ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxTZWxlY3RPcHRpb24gZXh0ZW5kcyBDb21wb25lbnRzLkJhbFNlbGVjdE9wdGlvbiB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2xhYmVsJywgJ3ZhbHVlJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsU2VsZWN0T3B0aW9uXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLXNlbGVjdC1vcHRpb24nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2xhYmVsJywgJ3ZhbHVlJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsU2VsZWN0T3B0aW9uIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsU2hhcGUgZXh0ZW5kcyBDb21wb25lbnRzLkJhbFNoYXBlIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29sb3InLCAncm90YXRpb24nLCAndmFyaWF0aW9uJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsU2hhcGVcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtc2hhcGUnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2NvbG9yJywgJ3JvdGF0aW9uJywgJ3ZhcmlhdGlvbiddXG59KVxuZXhwb3J0IGNsYXNzIEJhbFNoYXBlIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsU2hlZXQgZXh0ZW5kcyBDb21wb25lbnRzLkJhbFNoZWV0IHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29udGFpbmVyU2l6ZSddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbFNoZWV0XG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLXNoZWV0JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydjb250YWluZXJTaXplJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsU2hlZXQge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxTbmFja2JhciBleHRlbmRzIENvbXBvbmVudHMuQmFsU25hY2tiYXIge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhY3Rpb24nLCAnY29sb3InLCAnZHVyYXRpb24nLCAnaHJlZicsICdpY29uJywgJ21lc3NhZ2UnLCAnc3ViamVjdCcsICd0YXJnZXQnXSxcbiAgbWV0aG9kczogWydjbG9zZUluJywgJ2Nsb3NlJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsU25hY2tiYXJcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtc25hY2tiYXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2FjdGlvbicsICdjb2xvcicsICdkdXJhdGlvbicsICdocmVmJywgJ2ljb24nLCAnbWVzc2FnZScsICdzdWJqZWN0JywgJ3RhcmdldCddLFxuICBvdXRwdXRzOiBbJ2JhbENsb3NlJywgJ2JhbEFjdGlvbiddXG59KVxuZXhwb3J0IGNsYXNzIEJhbFNuYWNrYmFyIHtcbiAgLyoqIEVtaXR0ZWQgd2hlbiBzbmFja2JhciBpcyBjbG9zZWQgKi9cbiAgYmFsQ2xvc2UhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbFNuYWNrYmFyQ3VzdG9tRXZlbnQ8c3RyaW5nPj47XG4gIC8qKiBFbWl0dGVkIHdoZW4gdGhlIGFjdGlvbiBidXR0b24gaXMgY2xpY2tlZCAqL1xuICBiYWxBY3Rpb24hOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbFNuYWNrYmFyQ3VzdG9tRXZlbnQ8c3RyaW5nPj47XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2JhbENsb3NlJywgJ2JhbEFjdGlvbiddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxTcGlubmVyIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxTcGlubmVyIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29sb3InLCAnZGVhY3RpdmF0ZWQnLCAnaW52ZXJ0ZWQnLCAnc21hbGwnLCAndmFyaWF0aW9uJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsU3Bpbm5lclxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1zcGlubmVyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydjb2xvcicsICdkZWFjdGl2YXRlZCcsICdpbnZlcnRlZCcsICdzbWFsbCcsICd2YXJpYXRpb24nXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxTcGlubmVyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsU3RhY2sgZXh0ZW5kcyBDb21wb25lbnRzLkJhbFN0YWNrIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYWxpZ24nLCAnZml0Q29udGVudCcsICdsYXlvdXQnLCAncHgnLCAncHknLCAnc3BhY2UnLCAnc3BhY2VDb2x1bW4nLCAnc3BhY2VSb3cnLCAndXNlV3JhcCddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbFN0YWNrXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLXN0YWNrJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydhbGlnbicsICdmaXRDb250ZW50JywgJ2xheW91dCcsICdweCcsICdweScsICdzcGFjZScsICdzcGFjZUNvbHVtbicsICdzcGFjZVJvdycsICd1c2VXcmFwJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsU3RhY2sge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxTdGFnZSBleHRlbmRzIENvbXBvbmVudHMuQmFsU3RhZ2Uge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjb2xvcicsICdjb250YWluZXJTaXplJywgJ3NoYXBlJywgJ3NoYXBlUm90YXRpb24nLCAnc2hhcGVWYXJpYXRpb24nLCAnc2l6ZSddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbFN0YWdlXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLXN0YWdlJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydjb2xvcicsICdjb250YWluZXJTaXplJywgJ3NoYXBlJywgJ3NoYXBlUm90YXRpb24nLCAnc2hhcGVWYXJpYXRpb24nLCAnc2l6ZSddXG59KVxuZXhwb3J0IGNsYXNzIEJhbFN0YWdlIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsU3RhZ2VCYWNrTGluayBleHRlbmRzIENvbXBvbmVudHMuQmFsU3RhZ2VCYWNrTGluayB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2hyZWYnLCAnaW52ZXJ0ZWQnLCAncmVsJywgJ3NoYWRvdyddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbFN0YWdlQmFja0xpbmtcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtc3RhZ2UtYmFjay1saW5rJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydocmVmJywgJ2ludmVydGVkJywgJ3JlbCcsICdzaGFkb3cnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxTdGFnZUJhY2tMaW5rIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsU3RhZ2VCb2R5IGV4dGVuZHMgQ29tcG9uZW50cy5CYWxTdGFnZUJvZHkge31cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsU3RhZ2VCb2R5XG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLXN0YWdlLWJvZHknLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBCYWxTdGFnZUJvZHkge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxTdGFnZUZvb3QgZXh0ZW5kcyBDb21wb25lbnRzLkJhbFN0YWdlRm9vdCB7fVxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxTdGFnZUZvb3Rcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtc3RhZ2UtZm9vdCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEJhbFN0YWdlRm9vdCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbFN0YWdlSGVhZCBleHRlbmRzIENvbXBvbmVudHMuQmFsU3RhZ2VIZWFkIHt9XG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbFN0YWdlSGVhZFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1zdGFnZS1oZWFkJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgQmFsU3RhZ2VIZWFkIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsU3RhZ2VJbWFnZSBleHRlbmRzIENvbXBvbmVudHMuQmFsU3RhZ2VJbWFnZSB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ZhbGxiYWNrJywgJ3NyY1NldCddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbFN0YWdlSW1hZ2Vcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtc3RhZ2UtaW1hZ2UnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2ZhbGxiYWNrJywgJ3NyY1NldCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbFN0YWdlSW1hZ2Uge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxTdGVwSXRlbSBleHRlbmRzIENvbXBvbmVudHMuQmFsU3RlcEl0ZW0ge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhY3RpdmUnLCAnZGlzYWJsZWQnLCAnZG9uZScsICdmYWlsZWQnLCAnaHJlZicsICdpbnZpc2libGUnLCAnbGFiZWwnLCAncHJldmVudCcsICdyZWwnLCAndGFyZ2V0JywgJ3ZhbHVlJ10sXG4gIG1ldGhvZHM6IFsnZ2V0T3B0aW9ucycsICdzZXRBY3RpdmUnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxTdGVwSXRlbVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1zdGVwLWl0ZW0nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2FjdGl2ZScsICdkaXNhYmxlZCcsICdkb25lJywgJ2ZhaWxlZCcsICdocmVmJywgJ2ludmlzaWJsZScsICdsYWJlbCcsICdwcmV2ZW50JywgJ3JlbCcsICd0YXJnZXQnLCAndmFsdWUnXSxcbiAgb3V0cHV0czogWydiYWxOYXZpZ2F0ZSddXG59KVxuZXhwb3J0IGNsYXNzIEJhbFN0ZXBJdGVtIHtcbiAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgbGluayBlbGVtZW50IGhhcyBjbGlja2VkICovXG4gIGJhbE5hdmlnYXRlITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxTdGVwSXRlbUN1c3RvbUV2ZW50PE1vdXNlRXZlbnQ+PjtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYmFsTmF2aWdhdGUnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsU3RlcHMgZXh0ZW5kcyBDb21wb25lbnRzLkJhbFN0ZXBzIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY2xpY2thYmxlJywgJ2NvbG9yJywgJ2RlYm91bmNlJywgJ29wdGlvbnMnLCAndmFsdWUnXSxcbiAgbWV0aG9kczogWydzZWxlY3QnLCAnZ2V0T3B0aW9uQnlWYWx1ZSddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbFN0ZXBzXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLXN0ZXBzJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydjbGlja2FibGUnLCAnY29sb3InLCAnZGVib3VuY2UnLCAnb3B0aW9ucycsICd2YWx1ZSddLFxuICBvdXRwdXRzOiBbJ2JhbENoYW5nZSddXG59KVxuZXhwb3J0IGNsYXNzIEJhbFN0ZXBzIHtcbiAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgY2hhbmdlcyBoYXMgZmluaXNoZWQuICovXG4gIGJhbENoYW5nZSE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsU3RlcHNDdXN0b21FdmVudDxzdHJpbmc+PjtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYmFsQ2hhbmdlJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbFN3aXRjaCBleHRlbmRzIENvbXBvbmVudHMuQmFsU3dpdGNoIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY2hlY2tlZCcsICdkaXNhYmxlZCcsICdpbnZhbGlkJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsU3dpdGNoXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLXN3aXRjaCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnY2hlY2tlZCcsICdkaXNhYmxlZCcsICdpbnZhbGlkJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsU3dpdGNoIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsVGFiSXRlbSBleHRlbmRzIENvbXBvbmVudHMuQmFsVGFiSXRlbSB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ExMXlDb250cm9scycsICdhY3RpdmUnLCAnYnViYmxlJywgJ2Rpc2FibGVkJywgJ2hyZWYnLCAnaWNvbicsICdpbnZpc2libGUnLCAnbGFiZWwnLCAnbm9QYW5lbCcsICdwcmV2ZW50JywgJ3JlbCcsICdzdWJMYWJlbCcsICdzdmcnLCAndGFyZ2V0JywgJ3ZhbHVlJ10sXG4gIG1ldGhvZHM6IFsnZ2V0T3B0aW9ucycsICdzZXRBY3RpdmUnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxUYWJJdGVtXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLXRhYi1pdGVtJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydhMTF5Q29udHJvbHMnLCAnYWN0aXZlJywgJ2J1YmJsZScsICdkaXNhYmxlZCcsICdocmVmJywgJ2ljb24nLCAnaW52aXNpYmxlJywgJ2xhYmVsJywgJ25vUGFuZWwnLCAncHJldmVudCcsICdyZWwnLCAnc3ViTGFiZWwnLCAnc3ZnJywgJ3RhcmdldCcsICd2YWx1ZSddLFxuICBvdXRwdXRzOiBbJ2JhbE5hdmlnYXRlJywgJ2JhbEtleURvd24nXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxUYWJJdGVtIHtcbiAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgbGluayBlbGVtZW50IGhhcyBjbGlja2VkICovXG4gIGJhbE5hdmlnYXRlITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxUYWJJdGVtQ3VzdG9tRXZlbnQ8TW91c2VFdmVudD4+O1xuICAvKiogRW1pdHRlZCB3aGVuIHRoZSBsaW5rIGVsZW1lbnQgaGFzIGNsaWNrZWQgKi9cbiAgYmFsS2V5RG93biE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsVGFiSXRlbUN1c3RvbUV2ZW50PEtleWJvYXJkRXZlbnQ+PjtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYmFsTmF2aWdhdGUnLCAnYmFsS2V5RG93biddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxUYWJsZSBleHRlbmRzIENvbXBvbmVudHMuQmFsVGFibGUge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydleHBhbmRlZCddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbFRhYmxlXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLXRhYmxlJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydleHBhbmRlZCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbFRhYmxlIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsVGFicyBleHRlbmRzIENvbXBvbmVudHMuQmFsVGFicyB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FjY29yZGlvbicsICdib3JkZXInLCAnY2xpY2thYmxlJywgJ2NvbnRleHQnLCAnZGVib3VuY2UnLCAnZGltSW5hY3RpdmVFbGVtZW50cycsICdleHBhbmRlZCcsICdmbG9hdCcsICdmdWxsd2lkdGgnLCAnaGFuZGxlQXNUYWJMaXN0JywgJ2ljb25Qb3NpdGlvbicsICdpbnZlcnRlZCcsICdvcHRpb25hbFRhYlNlbGVjdGlvbicsICdvcHRpb25zJywgJ292ZXJmbG93JywgJ3NlbGVjdE9uTW9iaWxlJywgJ3NwYWNlbGVzcycsICd2YWx1ZScsICd2ZXJ0aWNhbCcsICd2ZXJ0aWNhbENvbFNpemUnXSxcbiAgbWV0aG9kczogWydzZWxlY3QnLCAnZ2V0T3B0aW9uQnlWYWx1ZSddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbFRhYnNcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtdGFicycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnYWNjb3JkaW9uJywgJ2JvcmRlcicsICdjbGlja2FibGUnLCAnY29udGV4dCcsICdkZWJvdW5jZScsICdkaW1JbmFjdGl2ZUVsZW1lbnRzJywgJ2V4cGFuZGVkJywgJ2Zsb2F0JywgJ2Z1bGx3aWR0aCcsICdoYW5kbGVBc1RhYkxpc3QnLCAnaWNvblBvc2l0aW9uJywgJ2ludmVydGVkJywgJ29wdGlvbmFsVGFiU2VsZWN0aW9uJywgJ29wdGlvbnMnLCAnb3ZlcmZsb3cnLCAnc2VsZWN0T25Nb2JpbGUnLCAnc3BhY2VsZXNzJywgJ3ZhbHVlJywgJ3ZlcnRpY2FsJywgJ3ZlcnRpY2FsQ29sU2l6ZSddLFxuICBvdXRwdXRzOiBbJ2JhbENoYW5nZScsICdiYWxXaWxsQW5pbWF0ZScsICdiYWxEaWRBbmltYXRlJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsVGFicyB7XG4gIC8qKiBFbWl0dGVkIHdoZW4gdGhlIGNoYW5nZXMgaGFzIGZpbmlzaGVkLiAqL1xuICBiYWxDaGFuZ2UhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbFRhYnNDdXN0b21FdmVudDxzdHJpbmc+PjtcbiAgLyoqIEVtaXR0ZWQgYmVmb3JlIHRoZSBhbmltYXRpb24gc3RhcnRzICovXG4gIGJhbFdpbGxBbmltYXRlITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxUYWJzQ3VzdG9tRXZlbnQ8c3RyaW5nPj47XG4gIC8qKiBFbWl0dGVkIGFmdGVyIHRoZSBhbmltYXRpb24gaGFzIGZpbmlzaGVkICovXG4gIGJhbERpZEFuaW1hdGUhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbFRhYnNDdXN0b21FdmVudDxzdHJpbmc+PjtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYmFsQ2hhbmdlJywgJ2JhbFdpbGxBbmltYXRlJywgJ2JhbERpZEFuaW1hdGUnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsVGFnIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxUYWcge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjbG9zYWJsZScsICdjb2xvcicsICdkaXNhYmxlZCcsICdpbnZhbGlkJywgJ2xpZ2h0JywgJ3Bvc2l0aW9uJywgJ3NpemUnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxUYWdcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtdGFnJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydjbG9zYWJsZScsICdjb2xvcicsICdkaXNhYmxlZCcsICdpbnZhbGlkJywgJ2xpZ2h0JywgJ3Bvc2l0aW9uJywgJ3NpemUnXSxcbiAgb3V0cHV0czogWydiYWxDbG9zZUNsaWNrJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsVGFnIHtcbiAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgaW5wdXQgZ290IGNsaWNrZWQuICovXG4gIGJhbENsb3NlQ2xpY2shOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbFRhZ0N1c3RvbUV2ZW50PE1vdXNlRXZlbnQ+PjtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYmFsQ2xvc2VDbGljayddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxUYWdHcm91cCBleHRlbmRzIENvbXBvbmVudHMuQmFsVGFnR3JvdXAge31cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsVGFnR3JvdXBcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtdGFnLWdyb3VwJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgQmFsVGFnR3JvdXAge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxUZXh0IGV4dGVuZHMgQ29tcG9uZW50cy5CYWxUZXh0IHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYm9sZCcsICdjb2xvcicsICdkaXNhYmxlZCcsICdoZWFkaW5nJywgJ2lubGluZScsICdpbnZhbGlkJywgJ2ludmVydGVkJywgJ25vV3JhcCcsICdzaGFkb3cnLCAnc2l6ZScsICdzcGFjZSddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbFRleHRcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtdGV4dCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnYm9sZCcsICdjb2xvcicsICdkaXNhYmxlZCcsICdoZWFkaW5nJywgJ2lubGluZScsICdpbnZhbGlkJywgJ2ludmVydGVkJywgJ25vV3JhcCcsICdzaGFkb3cnLCAnc2l6ZScsICdzcGFjZSddXG59KVxuZXhwb3J0IGNsYXNzIEJhbFRleHQge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxUb2FzdCBleHRlbmRzIENvbXBvbmVudHMuQmFsVG9hc3Qge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjbG9zYWJsZScsICdjb2xvcicsICdkdXJhdGlvbicsICdtZXNzYWdlJ10sXG4gIG1ldGhvZHM6IFsnY2xvc2VJbicsICdjbG9zZSddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbFRvYXN0XG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLXRvYXN0JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydjbG9zYWJsZScsICdjb2xvcicsICdkdXJhdGlvbicsICdtZXNzYWdlJ10sXG4gIG91dHB1dHM6IFsnYmFsQ2xvc2UnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxUb2FzdCB7XG4gIC8qKiBFbWl0dGVkIHdoZW4gdG9hc3QgaXMgY2xvc2VkICovXG4gIGJhbENsb3NlITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxUb2FzdEN1c3RvbUV2ZW50PHN0cmluZz4+O1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydiYWxDbG9zZSddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxUb29sdGlwIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxUb29sdGlwIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29udGVudFdpZHRoJywgJ29mZnNldCcsICdwbGFjZW1lbnQnLCAncmVmZXJlbmNlJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsVG9vbHRpcFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC10b29sdGlwJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydjb250ZW50V2lkdGgnLCAnb2Zmc2V0JywgJ3BsYWNlbWVudCcsICdyZWZlcmVuY2UnXSxcbiAgb3V0cHV0czogWydiYWxXaWxsQW5pbWF0ZScsICdiYWxEaWRBbmltYXRlJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsVG9vbHRpcCB7XG4gIC8qKiBFbWl0dGVkIGJlZm9yZSB0aGUgYW5pbWF0aW9uIHN0YXJ0cyAqL1xuICBiYWxXaWxsQW5pbWF0ZSE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsVG9vbHRpcEN1c3RvbUV2ZW50PGJvb2xlYW4+PjtcbiAgLyoqIEVtaXR0ZWQgYWZ0ZXIgdGhlIGFuaW1hdGlvbiBoYXMgZmluaXNoZWQgKi9cbiAgYmFsRGlkQW5pbWF0ZSE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsVG9vbHRpcEN1c3RvbUV2ZW50PGJvb2xlYW4+PjtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYmFsV2lsbEFuaW1hdGUnLCAnYmFsRGlkQW5pbWF0ZSddKTtcbiAgfVxufVxuIl19
|
|
2907
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJveGllcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9nZW5lcmF0ZWQvcHJveGllcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsb0JBQW9CO0FBQ3BCLDhDQUE4QztBQUM5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQWtELE1BQU0sZUFBZSxDQUFDO0FBQzFKLE9BQU8sRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDdkUsT0FBTyxFQUFFLG1CQUFtQixJQUFJLGtCQUFrQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDdEcsT0FBTyxFQUFFLG1CQUFtQixJQUFJLHlCQUF5QixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDckgsT0FBTyxFQUFFLG1CQUFtQixJQUFJLHlCQUF5QixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDckgsT0FBTyxFQUFFLG1CQUFtQixJQUFJLHlCQUF5QixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDckgsT0FBTyxFQUFFLG1CQUFtQixJQUFJLFlBQVksRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFGLE9BQU8sRUFBRSxtQkFBbUIsSUFBSSxjQUFjLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM5RixPQUFPLEVBQUUsbUJBQW1CLElBQUksZUFBZSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDaEcsT0FBTyxFQUFFLG1CQUFtQixJQUFJLG9CQUFvQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDM0csT0FBTyxFQUFFLG1CQUFtQixJQUFJLGFBQWEsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzVGLE9BQU8sRUFBRSxtQkFBbUIsSUFBSSxvQkFBb0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzNHLE9BQU8sRUFBRSxtQkFBbUIsSUFBSSxtQkFBbUIsRUFBRSxNQUFNLDZDQUE2QyxD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ZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLFVBQVUsRUFBRSxJQUFJO29CQUNoQixNQUFNLEVBQUUsQ0FBQyxjQUFjLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxXQUFXLENBQUM7b0JBQzVELE9BQU8sRUFBRSxDQUFDLGdCQUFnQixFQUFFLGVBQWUsQ0FBQztpQkFDN0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiB0c2xpbnQ6ZGlzYWJsZSAqL1xuLyogYXV0by1nZW5lcmF0ZWQgYW5ndWxhciBkaXJlY3RpdmUgcHJveGllcyAqL1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIE5nWm9uZSwgRXZlbnRFbWl0dGVyLCBOZ01vZHVsZSwgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUHJveHlDbXAsIHByb3h5T3V0cHV0cyB9IGZyb20gJy4vYW5ndWxhci1jb21wb25lbnQtbGliL3V0aWxzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsQWNjb3JkaW9uIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1hY2NvcmRpb24nO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxBY2NvcmRpb25EZXRhaWxzIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1hY2NvcmRpb24tZGV0YWlscyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbEFjY29yZGlvblN1bW1hcnkgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWFjY29yZGlvbi1zdW1tYXJ5JztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsQWNjb3JkaW9uVHJpZ2dlciB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtYWNjb3JkaW9uLXRyaWdnZXInO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxBcHAgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWFwcCc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbEJhZGdlIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1iYWRnZSc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbEJ1dHRvbiB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtYnV0dG9uJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsQnV0dG9uR3JvdXAgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWJ1dHRvbi1ncm91cCc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbENhcmQgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWNhcmQnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxDYXJkQWN0aW9ucyB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtY2FyZC1hY3Rpb25zJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsQ2FyZEJ1dHRvbiB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtY2FyZC1idXR0b24nO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxDYXJkQ29udGVudCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtY2FyZC1jb250ZW50JztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsQ2FyZFN1YnRpdGxlIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1jYXJkLXN1YnRpdGxlJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsQ2FyZFRpdGxlIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1jYXJkLXRpdGxlJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsQ2Fyb3VzZWwgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWNhcm91c2VsJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsQ2Fyb3VzZWxJdGVtIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1jYXJvdXNlbC1pdGVtJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsQ2hlY2sgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWNoZWNrJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsQ2xvc2UgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWNsb3NlJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsQ29udGVudCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtY29udGVudCc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbERhdGEgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWRhdGEnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxEYXRhSXRlbSB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtZGF0YS1pdGVtJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsRGF0YUxhYmVsIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1kYXRhLWxhYmVsJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsRGF0YVZhbHVlIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1kYXRhLXZhbHVlJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsRGF0ZUNhbGVuZGFyIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1kYXRlLWNhbGVuZGFyJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsRGF0ZUNhbGVuZGFyQ2VsbCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtZGF0ZS1jYWxlbmRhci1jZWxsJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsRGl2aWRlciB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtZGl2aWRlcic7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbEZpZWxkIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1maWVsZCc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbEZpZWxkQ29udHJvbCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtZmllbGQtY29udHJvbCc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbEZpZWxkSGludCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtZmllbGQtaGludCc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbEZpZWxkTGFiZWwgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWZpZWxkLWxhYmVsJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsRmllbGRNZXNzYWdlIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1maWVsZC1tZXNzYWdlJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsRm9vdGVyIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1mb290ZXInO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxGb3JtIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1mb3JtJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsRm9ybUNvbCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtZm9ybS1jb2wnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxGb3JtR3JpZCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtZm9ybS1ncmlkJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsSGVhZGluZyB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtaGVhZGluZyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbEhpbnQgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWhpbnQnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxIaW50VGV4dCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtaGludC10ZXh0JztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsSGludFRpdGxlIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1oaW50LXRpdGxlJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsSWNvbiB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtaWNvbic7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbElucHV0R3JvdXAgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWlucHV0LWdyb3VwJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsTGFiZWwgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWxhYmVsJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsTGlzdCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtbGlzdCc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbExpc3RJdGVtIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1saXN0LWl0ZW0nO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxMaXN0SXRlbUFjY29yZGlvbkJvZHkgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLWxpc3QtaXRlbS1hY2NvcmRpb24tYm9keSc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbExpc3RJdGVtQWNjb3JkaW9uSGVhZCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtbGlzdC1pdGVtLWFjY29yZGlvbi1oZWFkJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsTGlzdEl0ZW1Db250ZW50IH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1saXN0LWl0ZW0tY29udGVudCc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbExpc3RJdGVtSWNvbiB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtbGlzdC1pdGVtLWljb24nO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxMaXN0SXRlbVN1YnRpdGxlIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1saXN0LWl0ZW0tc3VidGl0bGUnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxMaXN0SXRlbVRpdGxlIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1saXN0LWl0ZW0tdGl0bGUnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxMb2dvIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1sb2dvJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsTW9kYWwgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLW1vZGFsJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsTW9kYWxCb2R5IH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1tb2RhbC1ib2R5JztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsTW9kYWxIZWFkZXIgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLW1vZGFsLWhlYWRlcic7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbE5hdiB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtbmF2JztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsTmF2TGluayB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtbmF2LWxpbmsnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxOYXZMaW5rR3JpZCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtbmF2LWxpbmstZ3JpZCc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbE5hdkxpbmtHcmlkQ29sIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1uYXYtbGluay1ncmlkLWNvbCc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbE5hdkxpbmtHcm91cCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtbmF2LWxpbmstZ3JvdXAnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxOYXZNZW51QmFyIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1uYXYtbWVudS1iYXInO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxOYXZNZW51Rmx5b3V0IH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1uYXYtbWVudS1mbHlvdXQnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxOYXZNZXRhQmFyIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1uYXYtbWV0YS1iYXInO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxOYXZiYXIgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLW5hdmJhcic7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbE5hdmJhckJyYW5kIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1uYXZiYXItYnJhbmQnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxOYXZiYXJNZW51IH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1uYXZiYXItbWVudSc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbE5hdmJhck1lbnVFbmQgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLW5hdmJhci1tZW51LWVuZCc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbE5hdmJhck1lbnVTdGFydCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtbmF2YmFyLW1lbnUtc3RhcnQnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxOb3RpY2VzIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1ub3RpY2VzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsTm90aWZpY2F0aW9uIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1ub3RpZmljYXRpb24nO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxPcHRpb24gfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLW9wdGlvbic7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbE9wdGlvbkxpc3QgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLW9wdGlvbi1saXN0JztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsUGFnaW5hdGlvbiB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtcGFnaW5hdGlvbic7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbFBvcG92ZXIgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLXBvcG92ZXInO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxQb3BvdmVyQ29udGVudCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtcG9wb3Zlci1jb250ZW50JztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsUG9wdXAgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLXBvcHVwJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsUHJvZ3Jlc3NCYXIgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLXByb2dyZXNzLWJhcic7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbFJhZGlvIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1yYWRpbyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbFJhZGlvSWNvbiB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtcmFkaW8taWNvbic7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbFNlZ21lbnRJdGVtIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1zZWdtZW50LWl0ZW0nO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxTZWxlY3RPcHRpb24gfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLXNlbGVjdC1vcHRpb24nO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxTaGFwZSB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtc2hhcGUnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxTaGVldCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtc2hlZXQnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxTbmFja2JhciB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtc25hY2tiYXInO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxTcGlubmVyIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1zcGlubmVyJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsU3RhY2sgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLXN0YWNrJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsU3RhZ2UgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLXN0YWdlJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsU3RhZ2VCYWNrTGluayB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtc3RhZ2UtYmFjay1saW5rJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsU3RhZ2VCb2R5IH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1zdGFnZS1ib2R5JztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsU3RhZ2VGb290IH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1zdGFnZS1mb290JztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsU3RhZ2VIZWFkIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1zdGFnZS1oZWFkJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsU3RhZ2VJbWFnZSB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtc3RhZ2UtaW1hZ2UnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxTdGVwSXRlbSB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtc3RlcC1pdGVtJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsU3RlcHMgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLXN0ZXBzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsU3dpdGNoIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC1zd2l0Y2gnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxUYWJJdGVtIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC10YWItaXRlbSc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbFRhYmxlIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC10YWJsZSc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbFRhYnMgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLXRhYnMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxUYWcgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLXRhZyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUJhbFRhZ0dyb3VwIH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC10YWctZ3JvdXAnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVCYWxUZXh0IH0gZnJvbSAnQGJhbG9pc2UvZHMtY29yZS9jb21wb25lbnRzL2JhbC10ZXh0JztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsVG9hc3QgfSBmcm9tICdAYmFsb2lzZS9kcy1jb3JlL2NvbXBvbmVudHMvYmFsLXRvYXN0JztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lQmFsVG9vbHRpcCB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cy9iYWwtdG9vbHRpcCc7XG5cbmltcG9ydCB0eXBlIHsgQ29tcG9uZW50cywgRmlsZVVwbG9hZFJlamVjdGVkRmlsZSB9IGZyb20gJ0BiYWxvaXNlL2RzLWNvcmUvY29tcG9uZW50cyc7XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbEFjY29yZGlvbiBleHRlbmRzIENvbXBvbmVudHMuQmFsQWNjb3JkaW9uIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYWN0aXZlJywgJ2NhcmQnLCAnY2xvc2VJY29uJywgJ2Nsb3NlTGFiZWwnLCAnZGVib3VuY2UnLCAnb3Blbkljb24nLCAnb3BlbkxhYmVsJywgJ3ZlcnNpb24nXSxcbiAgbWV0aG9kczogWydwcmVzZW50JywgJ2Rpc21pc3MnLCAndG9nZ2xlJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsQWNjb3JkaW9uXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWFjY29yZGlvbicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnYWN0aXZlJywgJ2NhcmQnLCAnY2xvc2VJY29uJywgJ2Nsb3NlTGFiZWwnLCAnZGVib3VuY2UnLCAnb3Blbkljb24nLCAnb3BlbkxhYmVsJywgJ3ZlcnNpb24nXSxcbiAgb3V0cHV0czogWydiYWxDaGFuZ2UnLCAnYmFsV2lsbEFuaW1hdGUnLCAnYmFsRGlkQW5pbWF0ZSddXG59KVxuZXhwb3J0IGNsYXNzIEJhbEFjY29yZGlvbiB7XG4gIC8qKiBFbWl0dGVkIHdoZW4gdGhlIGFjY29yZGlvbiBoYXMgb3BlbmVkIG9yIGNsb3NlZCAqL1xuICBiYWxDaGFuZ2UhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbEFjY29yZGlvbkN1c3RvbUV2ZW50PGJvb2xlYW4+PjtcbiAgLyoqIEVtaXR0ZWQgYmVmb3JlIHRoZSBhbmltYXRpb24gc3RhcnRzICovXG4gIGJhbFdpbGxBbmltYXRlITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxBY2NvcmRpb25DdXN0b21FdmVudDxib29sZWFuPj47XG4gIC8qKiBFbWl0dGVkIGFmdGVyIHRoZSBhbmltYXRpb24gaGFzIGZpbmlzaGVkICovXG4gIGJhbERpZEFuaW1hdGUhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbEFjY29yZGlvbkN1c3RvbUV2ZW50PGJvb2xlYW4+PjtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYmFsQ2hhbmdlJywgJ2JhbFdpbGxBbmltYXRlJywgJ2JhbERpZEFuaW1hdGUnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsQWNjb3JkaW9uRGV0YWlscyBleHRlbmRzIENvbXBvbmVudHMuQmFsQWNjb3JkaW9uRGV0YWlscyB7fVxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxBY2NvcmRpb25EZXRhaWxzXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWFjY29yZGlvbi1kZXRhaWxzJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgQmFsQWNjb3JkaW9uRGV0YWlscyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbEFjY29yZGlvblN1bW1hcnkgZXh0ZW5kcyBDb21wb25lbnRzLkJhbEFjY29yZGlvblN1bW1hcnkge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWyd0cmlnZ2VyJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsQWNjb3JkaW9uU3VtbWFyeVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1hY2NvcmRpb24tc3VtbWFyeScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsndHJpZ2dlciddXG59KVxuZXhwb3J0IGNsYXNzIEJhbEFjY29yZGlvblN1bW1hcnkge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxBY2NvcmRpb25UcmlnZ2VyIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxBY2NvcmRpb25UcmlnZ2VyIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYnV0dG9uJywgJ2Nsb3NlSWNvbicsICdjbG9zZUxhYmVsJywgJ2NvbG9yJywgJ2V4cGFuZGVkJywgJ29wZW5JY29uJywgJ29wZW5MYWJlbCcsICdzaXplJywgJ3ZhcmlhbnQnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxBY2NvcmRpb25UcmlnZ2VyXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWFjY29yZGlvbi10cmlnZ2VyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydidXR0b24nLCAnY2xvc2VJY29uJywgJ2Nsb3NlTGFiZWwnLCAnY29sb3InLCAnZXhwYW5kZWQnLCAnb3Blbkljb24nLCAnb3BlbkxhYmVsJywgJ3NpemUnLCAndmFyaWFudCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbEFjY29yZGlvblRyaWdnZXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxBcHAgZXh0ZW5kcyBDb21wb25lbnRzLkJhbEFwcCB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FuaW1hdGVkJ10sXG4gIG1ldGhvZHM6IFsnc2V0Rm9jdXMnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxBcHBcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtYXBwJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydhbmltYXRlZCddLFxuICBvdXRwdXRzOiBbJ2JhbEFwcFJlYWR5J11cbn0pXG5leHBvcnQgY2xhc3MgQmFsQXBwIHtcbiAgLyoqIEVtaXR0ZWQgd2hlbiBhcHAgaXMgcmVhZHkgYW5kIHBhaW50ZWQuICovXG4gIGJhbEFwcFJlYWR5ITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxBcHBDdXN0b21FdmVudDx2b2lkPj47XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2JhbEFwcFJlYWR5J10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbEJhZGdlIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxCYWRnZSB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NvbG9yJywgJ2ljb24nLCAncG9zaXRpb24nLCAnc2l6ZSddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbEJhZGdlXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWJhZGdlJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydjb2xvcicsICdpY29uJywgJ3Bvc2l0aW9uJywgJ3NpemUnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxCYWRnZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbEJ1dHRvbiBleHRlbmRzIENvbXBvbmVudHMuQmFsQnV0dG9uIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYTExeUNvbnRyb2xzJywgJ2ExMXlIYXNwb3B1cCcsICdhMTF5TGFiZWwnLCAnYTExeVRpdGxlJywgJ2JhbFBvcHVwJywgJ2NvbG9yJywgJ2Rpc2FibGVkJywgJ2Rvd25sb2FkJywgJ2VsZW1lbnRUeXBlJywgJ2V4cGFuZGVkJywgJ2ZsYXQnLCAnaHJlZicsICdpY29uJywgJ2ljb25SaWdodCcsICdpY29uVHVybicsICdpbnZlcnRlZCcsICdpc0FjdGl2ZScsICdsb2FkaW5nJywgJ25hbWUnLCAnbm9XcmFwJywgJ291dGxpbmVkJywgJ3JlbCcsICdyb3VuZGVkJywgJ3NoYWRvdycsICdzaXplJywgJ3NxdWFyZScsICd0YXJnZXQnLCAndmFsdWUnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxCdXR0b25cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtYnV0dG9uJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydhMTF5Q29udHJvbHMnLCAnYTExeUhhc3BvcHVwJywgJ2ExMXlMYWJlbCcsICdhMTF5VGl0bGUnLCAnYmFsUG9wdXAnLCAnY29sb3InLCAnZGlzYWJsZWQnLCAnZG93bmxvYWQnLCAnZWxlbWVudFR5cGUnLCAnZXhwYW5kZWQnLCAnZmxhdCcsICdocmVmJywgJ2ljb24nLCAnaWNvblJpZ2h0JywgJ2ljb25UdXJuJywgJ2ludmVydGVkJywgJ2lzQWN0aXZlJywgJ2xvYWRpbmcnLCAnbmFtZScsICdub1dyYXAnLCAnb3V0bGluZWQnLCAncmVsJywgJ3JvdW5kZWQnLCAnc2hhZG93JywgJ3NpemUnLCAnc3F1YXJlJywgJ3RhcmdldCcsICd2YWx1ZSddLFxuICBvdXRwdXRzOiBbJ2JhbENsaWNrJywgJ2JhbE5hdmlnYXRlJywgJ2JhbEZvY3VzJywgJ2JhbEJsdXInLCAnYmFsRGlkUmVuZGVyJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsQnV0dG9uIHtcbiAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgbGluayBlbGVtZW50IGhhcyBjbGlja2VkLiAqL1xuICBiYWxDbGljayE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsQnV0dG9uQ3VzdG9tRXZlbnQ8TW91c2VFdmVudD4+O1xuICAvKiogRW1pdHRlZCB3aGVuIHRoZSBsaW5rIGVsZW1lbnQgaGFzIGNsaWNrZWQuICovXG4gIGJhbE5hdmlnYXRlITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxCdXR0b25DdXN0b21FdmVudDxNb3VzZUV2ZW50Pj47XG4gIC8qKiBFbWl0dGVkIHdoZW4gdGhlIGJ1dHRvbiBoYXMgZm9jdXMuICovXG4gIGJhbEZvY3VzITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxCdXR0b25DdXN0b21FdmVudDx2b2lkPj47XG4gIC8qKiBFbWl0dGVkIHdoZW4gdGhlIGJ1dHRvbiBsb3NlcyBmb2N1cy4gKi9cbiAgYmFsQmx1ciE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsQnV0dG9uQ3VzdG9tRXZlbnQ8dm9pZD4+O1xuICAvKiogRW1pdHRlZCB3aGVuIHRoZSBidXR0b24gaGFzIGJlZW4gIHJlbmRlcmVkLiAqL1xuICBiYWxEaWRSZW5kZXIhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbEJ1dHRvbkN1c3RvbUV2ZW50PHZvaWQ+PjtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYmFsQ2xpY2snLCAnYmFsTmF2aWdhdGUnLCAnYmFsRm9jdXMnLCAnYmFsQmx1cicsICdiYWxEaWRSZW5kZXInXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsQnV0dG9uR3JvdXAgZXh0ZW5kcyBDb21wb25lbnRzLkJhbEJ1dHRvbkdyb3VwIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZGlyZWN0aW9uJywgJ3Bvc2l0aW9uJywgJ3JldmVyc2UnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxCdXR0b25Hcm91cFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1idXR0b24tZ3JvdXAnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2RpcmVjdGlvbicsICdwb3NpdGlvbicsICdyZXZlcnNlJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsQnV0dG9uR3JvdXAge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxDYXJkIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxDYXJkIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYm9yZGVyJywgJ2NsaWNrYWJsZScsICdjb2xvcicsICdmbGF0JywgJ2Z1bGxoZWlnaHQnLCAnaW52ZXJ0ZWQnLCAnc2VsZWN0ZWQnLCAnc3BhY2UnLCAnc3F1YXJlJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsQ2FyZFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1jYXJkJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydib3JkZXInLCAnY2xpY2thYmxlJywgJ2NvbG9yJywgJ2ZsYXQnLCAnZnVsbGhlaWdodCcsICdpbnZlcnRlZCcsICdzZWxlY3RlZCcsICdzcGFjZScsICdzcXVhcmUnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxDYXJkIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsQ2FyZEFjdGlvbnMgZXh0ZW5kcyBDb21wb25lbnRzLkJhbENhcmRBY3Rpb25zIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsncG9zaXRpb24nXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxDYXJkQWN0aW9uc1xufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1jYXJkLWFjdGlvbnMnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ3Bvc2l0aW9uJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsQ2FyZEFjdGlvbnMge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxDYXJkQnV0dG9uIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxDYXJkQnV0dG9uIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnZWxlbWVudFR5cGUnLCAnaHJlZicsICdpY29uJywgJ2ljb25SaWdodCcsICdsb2FkaW5nJywgJ3JlbCcsICd0YXJnZXQnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxDYXJkQnV0dG9uXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWNhcmQtYnV0dG9uJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydkaXNhYmxlZCcsICdlbGVtZW50VHlwZScsICdocmVmJywgJ2ljb24nLCAnaWNvblJpZ2h0JywgJ2xvYWRpbmcnLCAncmVsJywgJ3RhcmdldCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbENhcmRCdXR0b24ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxDYXJkQ29udGVudCBleHRlbmRzIENvbXBvbmVudHMuQmFsQ2FyZENvbnRlbnQge31cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsQ2FyZENvbnRlbnRcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtY2FyZC1jb250ZW50JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgQmFsQ2FyZENvbnRlbnQge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxDYXJkU3VidGl0bGUgZXh0ZW5kcyBDb21wb25lbnRzLkJhbENhcmRTdWJ0aXRsZSB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2JvbGQnLCAnY29sb3InLCAnaW52ZXJ0ZWQnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxDYXJkU3VidGl0bGVcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtY2FyZC1zdWJ0aXRsZScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnYm9sZCcsICdjb2xvcicsICdpbnZlcnRlZCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbENhcmRTdWJ0aXRsZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbENhcmRUaXRsZSBleHRlbmRzIENvbXBvbmVudHMuQmFsQ2FyZFRpdGxlIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaW52ZXJ0ZWQnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxDYXJkVGl0bGVcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtY2FyZC10aXRsZScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnaW52ZXJ0ZWQnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxDYXJkVGl0bGUge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxDYXJvdXNlbCBleHRlbmRzIENvbXBvbmVudHMuQmFsQ2Fyb3VzZWwge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhc3BlY3RSYXRpbycsICdib3JkZXInLCAnY29udHJvbHMnLCAnY29udHJvbHNPdmVyZmxvdycsICdjb250cm9sc1N0aWNreScsICdmdWxsSGVpZ2h0JywgJ2h0bWxSb2xlJywgJ2ludGVyZmFjZScsICdpbnZlcnRlZCcsICdpdGVtc1BlclZpZXcnLCAnc2Nyb2xsWScsICdzcGFjZScsICdzdGVwcycsICd2YWx1ZSddLFxuICBtZXRob2RzOiBbJ3ByZXZpb3VzJywgJ25leHQnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxDYXJvdXNlbFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1jYXJvdXNlbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnYXNwZWN0UmF0aW8nLCAnYm9yZGVyJywgJ2NvbnRyb2xzJywgJ2NvbnRyb2xzT3ZlcmZsb3cnLCAnY29udHJvbHNTdGlja3knLCAnZnVsbEhlaWdodCcsICdodG1sUm9sZScsICdpbnRlcmZhY2UnLCAnaW52ZXJ0ZWQnLCAnaXRlbXNQZXJWaWV3JywgJ3Njcm9sbFknLCAnc3BhY2UnLCAnc3RlcHMnLCAndmFsdWUnXSxcbiAgb3V0cHV0czogWydiYWxDaGFuZ2UnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxDYXJvdXNlbCB7XG4gIC8qKiBFbWl0dGVkIHdoZW4gYSBvcHRpb24gZ290IHNlbGVjdGVkLiAqL1xuICBiYWxDaGFuZ2UhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbENhcm91c2VsQ3VzdG9tRXZlbnQ8bnVtYmVyPj47XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2JhbENoYW5nZSddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxDYXJvdXNlbEl0ZW0gZXh0ZW5kcyBDb21wb25lbnRzLkJhbENhcm91c2VsSXRlbSB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NvbG9yJywgJ2Rvd25sb2FkJywgJ2VsZW1lbnRUeXBlJywgJ2hyZWYnLCAnaHRtbFJvbGUnLCAnbGFiZWwnLCAnbmFtZScsICdyZWwnLCAnc3JjJywgJ3N2ZycsICd0YXJnZXQnLCAndmFsdWUnXSxcbiAgbWV0aG9kczogWydzZXRGb2N1cyddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbENhcm91c2VsSXRlbVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1jYXJvdXNlbC1pdGVtJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydjb2xvcicsICdkb3dubG9hZCcsICdlbGVtZW50VHlwZScsICdocmVmJywgJ2h0bWxSb2xlJywgJ2xhYmVsJywgJ25hbWUnLCAncmVsJywgJ3NyYycsICdzdmcnLCAndGFyZ2V0JywgJ3ZhbHVlJ10sXG4gIG91dHB1dHM6IFsnYmFsTmF2aWdhdGUnLCAnYmFsRm9jdXMnLCAnYmFsQmx1ciddXG59KVxuZXhwb3J0IGNsYXNzIEJhbENhcm91c2VsSXRlbSB7XG4gIC8qKiBFbWl0dGVkIHdoZW4gdGhlIGxpbmsgZWxlbWVudCBoYXMgY2xpY2tlZC4gKi9cbiAgYmFsTmF2aWdhdGUhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbENhcm91c2VsSXRlbUN1c3RvbUV2ZW50PE1vdXNlRXZlbnQ+PjtcbiAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgYnV0dG9uIGhhcyBmb2N1cy4gKi9cbiAgYmFsRm9jdXMhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbENhcm91c2VsSXRlbUN1c3RvbUV2ZW50PHZvaWQ+PjtcbiAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgYnV0dG9uIGxvc2VzIGZvY3VzLiAqL1xuICBiYWxCbHVyITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxDYXJvdXNlbEl0ZW1DdXN0b21FdmVudDx2b2lkPj47XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2JhbE5hdmlnYXRlJywgJ2JhbEZvY3VzJywgJ2JhbEJsdXInXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsQ2hlY2sgZXh0ZW5kcyBDb21wb25lbnRzLkJhbENoZWNrIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY2hlY2tlZCcsICdkaXNhYmxlZCcsICdpbnZhbGlkJywgJ2ludmVydGVkJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsQ2hlY2tcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtY2hlY2snLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2NoZWNrZWQnLCAnZGlzYWJsZWQnLCAnaW52YWxpZCcsICdpbnZlcnRlZCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbENoZWNrIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsQ2xvc2UgZXh0ZW5kcyBDb21wb25lbnRzLkJhbENsb3NlIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaW52ZXJ0ZWQnLCAnc2l6ZSddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbENsb3NlXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWNsb3NlJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydpbnZlcnRlZCcsICdzaXplJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsQ2xvc2Uge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxDb250ZW50IGV4dGVuZHMgQ29tcG9uZW50cy5CYWxDb250ZW50IHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYWxpZ24nLCAnbGF5b3V0JywgJ3NwYWNlJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsQ29udGVudFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1jb250ZW50JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydhbGlnbicsICdsYXlvdXQnLCAnc3BhY2UnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxDb250ZW50IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsRGF0YSBleHRlbmRzIENvbXBvbmVudHMuQmFsRGF0YSB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2JvcmRlcicsICdob3Jpem9udGFsJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsRGF0YVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1kYXRhJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydib3JkZXInLCAnaG9yaXpvbnRhbCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbERhdGEge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxEYXRhSXRlbSBleHRlbmRzIENvbXBvbmVudHMuQmFsRGF0YUl0ZW0ge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydib3JkZXInLCAnZGlzYWJsZWQnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxEYXRhSXRlbVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1kYXRhLWl0ZW0nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2JvcmRlcicsICdkaXNhYmxlZCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbERhdGFJdGVtIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsRGF0YUxhYmVsIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxEYXRhTGFiZWwge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydyZXF1aXJlZCddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbERhdGFMYWJlbFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1kYXRhLWxhYmVsJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydyZXF1aXJlZCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbERhdGFMYWJlbCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbERhdGFWYWx1ZSBleHRlbmRzIENvbXBvbmVudHMuQmFsRGF0YVZhbHVlIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnZWRpdGFibGUnLCAnbXVsdGlsaW5lJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsRGF0YVZhbHVlXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWRhdGEtdmFsdWUnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2VkaXRhYmxlJywgJ211bHRpbGluZSddLFxuICBvdXRwdXRzOiBbJ2JhbENsaWNrJywgJ2JhbEZvY3VzJywgJ2JhbEJsdXInXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxEYXRhVmFsdWUge1xuICAvKiogRW1pdHRlZCB3aGVuIHRoZSBlZGl0IGJ1dHRvbiBoYXMgZm9jdXMuICovXG4gIGJhbENsaWNrITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxEYXRhVmFsdWVDdXN0b21FdmVudDxNb3VzZUV2ZW50Pj47XG4gIC8qKiBFbWl0dGVkIHdoZW4gdGhlIGVkaXQgYnV0dG9uIGhhcyBmb2N1cy4gKi9cbiAgYmFsRm9jdXMhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbERhdGFWYWx1ZUN1c3RvbUV2ZW50PHZvaWQ+PjtcbiAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgZWRpdCBidXR0b24gbG9zZXMgZm9jdXMuICovXG4gIGJhbEJsdXIhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbERhdGFWYWx1ZUN1c3RvbUV2ZW50PHZvaWQ+PjtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYmFsQ2xpY2snLCAnYmFsRm9jdXMnLCAnYmFsQmx1ciddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxEYXRlQ2FsZW5kYXIgZXh0ZW5kcyBDb21wb25lbnRzLkJhbERhdGVDYWxlbmRhciB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FsbG93ZWREYXRlcycsICdkZWZhdWx0RGF0ZScsICdtYXgnLCAnbWF4WWVhclByb3AnLCAnbWluJywgJ21pblllYXJQcm9wJywgJ3ZhbHVlJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsRGF0ZUNhbGVuZGFyXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWRhdGUtY2FsZW5kYXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2FsbG93ZWREYXRlcycsICdkZWZhdWx0RGF0ZScsICdtYXgnLCAnbWF4WWVhclByb3AnLCAnbWluJywgJ21pblllYXJQcm9wJywgJ3ZhbHVlJ10sXG4gIG91dHB1dHM6IFsnYmFsQ2hhbmdlJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsRGF0ZUNhbGVuZGFyIHtcbiAgLyoqIEVtaXR0ZWQgd2hlbiBhIG9wdGlvbiBnb3Qgc2VsZWN0ZWQuICovXG4gIGJhbENoYW5nZSE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsRGF0ZUNhbGVuZGFyQ3VzdG9tRXZlbnQ8c3RyaW5nPj47XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2JhbENoYW5nZSddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxEYXRlQ2FsZW5kYXJDZWxsIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxEYXRlQ2FsZW5kYXJDZWxsIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZGF5JywgJ2Rpc2FibGVkJywgJ2Z1bGxEYXRlJywgJ2lzb0RhdGUnLCAnbW9udGgnLCAnc2VsZWN0ZWQnLCAndG9kYXknLCAneWVhciddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbERhdGVDYWxlbmRhckNlbGxcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtZGF0ZS1jYWxlbmRhci1jZWxsJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydkYXknLCAnZGlzYWJsZWQnLCAnZnVsbERhdGUnLCAnaXNvRGF0ZScsICdtb250aCcsICdzZWxlY3RlZCcsICd0b2RheScsICd5ZWFyJ10sXG4gIG91dHB1dHM6IFsnYmFsU2VsZWN0RGF5J11cbn0pXG5leHBvcnQgY2xhc3MgQmFsRGF0ZUNhbGVuZGFyQ2VsbCB7XG4gIC8qKiBFbWl0dGVkIHdoZW4gYSBvcHRpb24gZ290IHNlbGVjdGVkLiAqL1xuICBiYWxTZWxlY3REYXkhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbERhdGVDYWxlbmRhckNlbGxDdXN0b21FdmVudDxzdHJpbmc+PjtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYmFsU2VsZWN0RGF5J10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbERpdmlkZXIgZXh0ZW5kcyBDb21wb25lbnRzLkJhbERpdmlkZXIge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydib3JkZXJTdHlsZScsICdjb2xvcicsICdsYXlvdXQnLCAnc3BhY2UnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxEaXZpZGVyXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWRpdmlkZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2JvcmRlclN0eWxlJywgJ2NvbG9yJywgJ2xheW91dCcsICdzcGFjZSddXG59KVxuZXhwb3J0IGNsYXNzIEJhbERpdmlkZXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxGaWVsZCBleHRlbmRzIENvbXBvbmVudHMuQmFsRmllbGQge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydkaXNhYmxlZCcsICdob3Jpem9udGFsJywgJ2ludmFsaWQnLCAnbG9hZGluZycsICdyZWFkb25seScsICdyZXF1aXJlZCcsICd2YWxpZCddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbEZpZWxkXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWZpZWxkJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydkaXNhYmxlZCcsICdob3Jpem9udGFsJywgJ2ludmFsaWQnLCAnbG9hZGluZycsICdyZWFkb25seScsICdyZXF1aXJlZCcsICd2YWxpZCddLFxuICBvdXRwdXRzOiBbJ2JhbEZvcm1Db250cm9sRGlkTG9hZCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbEZpZWxkIHtcbiAgLyoqIEVtaXR0ZWQgYWZ0ZXIgcmVuZGVyIHdoZW4gZWxlbWVudCBpcyBsYWJlbGxlZCAqL1xuICBiYWxGb3JtQ29udHJvbERpZExvYWQhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbEZpZWxkQ3VzdG9tRXZlbnQ8SFRNTEVsZW1lbnQ+PjtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYmFsRm9ybUNvbnRyb2xEaWRMb2FkJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbEZpZWxkQ29udHJvbCBleHRlbmRzIENvbXBvbmVudHMuQmFsRmllbGRDb250cm9sIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZXhwYW5kZWRPbk1vYmlsZScsICdpY29uTGVmdCcsICdpY29uUmlnaHQnLCAnbG9hZGluZyddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbEZpZWxkQ29udHJvbFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1maWVsZC1jb250cm9sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydleHBhbmRlZE9uTW9iaWxlJywgJ2ljb25MZWZ0JywgJ2ljb25SaWdodCcsICdsb2FkaW5nJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsRmllbGRDb250cm9sIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsRmllbGRIaW50IGV4dGVuZHMgQ29tcG9uZW50cy5CYWxGaWVsZEhpbnQge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjbG9zZUxhYmVsJywgJ2hpZGVUaXRsZU9uRGVza3RvcCcsICdzbWFsbCcsICdzdWJqZWN0J10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsRmllbGRIaW50XG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWZpZWxkLWhpbnQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2Nsb3NlTGFiZWwnLCAnaGlkZVRpdGxlT25EZXNrdG9wJywgJ3NtYWxsJywgJ3N1YmplY3QnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxGaWVsZEhpbnQge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxGaWVsZExhYmVsIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxGaWVsZExhYmVsIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnaHRtbEZvcicsICdpbnZhbGlkJywgJ3JlYWRvbmx5JywgJ3JlcXVpcmVkJywgJ3NpemUnLCAndmFsaWQnLCAnd2VpZ2h0J10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsRmllbGRMYWJlbFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1maWVsZC1sYWJlbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnaHRtbEZvcicsICdpbnZhbGlkJywgJ3JlYWRvbmx5JywgJ3JlcXVpcmVkJywgJ3NpemUnLCAndmFsaWQnLCAnd2VpZ2h0J11cbn0pXG5leHBvcnQgY2xhc3MgQmFsRmllbGRMYWJlbCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbEZpZWxkTWVzc2FnZSBleHRlbmRzIENvbXBvbmVudHMuQmFsRmllbGRNZXNzYWdlIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29sb3InLCAnZGlzYWJsZWQnLCAnaW52YWxpZCcsICdub1Jlc2VydmVkU3BhY2UnLCAncmVhZG9ubHknLCAndmFsaWQnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxGaWVsZE1lc3NhZ2Vcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtZmllbGQtbWVzc2FnZScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnY29sb3InLCAnZGlzYWJsZWQnLCAnaW52YWxpZCcsICdub1Jlc2VydmVkU3BhY2UnLCAncmVhZG9ubHknLCAndmFsaWQnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxGaWVsZE1lc3NhZ2Uge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxGb290ZXIgZXh0ZW5kcyBDb21wb25lbnRzLkJhbEZvb3RlciB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2hpZGVMYW5ndWFnZVNlbGVjdGlvbicsICdoaWRlTGlua3MnLCAnbG9nb0JyYW5kJywgJ2xvZ29IcmVmJywgJ2xvZ29TdmcnLCAnb3ZlcnJpZGVMaW5rcycsICdzaG93U29jaWFsTWVkaWEnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxGb290ZXJcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtZm9vdGVyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydoaWRlTGFuZ3VhZ2VTZWxlY3Rpb24nLCAnaGlkZUxpbmtzJywgJ2xvZ29CcmFuZCcsICdsb2dvSHJlZicsICdsb2dvU3ZnJywgJ292ZXJyaWRlTGlua3MnLCAnc2hvd1NvY2lhbE1lZGlhJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsRm9vdGVyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsRm9ybSBleHRlbmRzIENvbXBvbmVudHMuQmFsRm9ybSB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2Zvcm1DbGFzcycsICduYXRpdmUnLCAnbm92YWxpZGF0ZSddLFxuICBtZXRob2RzOiBbJ3Njcm9sbFRvRmlyc3RJbnZhbGlkRmllbGQnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxGb3JtXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWZvcm0nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2Zvcm1DbGFzcycsICduYXRpdmUnLCAnbm92YWxpZGF0ZSddXG59KVxuZXhwb3J0IGNsYXNzIEJhbEZvcm0ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxGb3JtQ29sIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxGb3JtQ29sIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnc2l6ZSddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbEZvcm1Db2xcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtZm9ybS1jb2wnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ3NpemUnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxGb3JtQ29sIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsRm9ybUdyaWQgZXh0ZW5kcyBDb21wb25lbnRzLkJhbEZvcm1HcmlkIHt9XG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbEZvcm1HcmlkXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWZvcm0tZ3JpZCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEJhbEZvcm1HcmlkIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsSGVhZGluZyBleHRlbmRzIENvbXBvbmVudHMuQmFsSGVhZGluZyB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2F1dG9MZXZlbCcsICdjb2xvcicsICdpbnZlcnRlZCcsICdsZXZlbCcsICdub1dyYXAnLCAnc2hhZG93JywgJ3NwYWNlJywgJ3N1YnRpdGxlJywgJ3Zpc3VhbExldmVsJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsSGVhZGluZ1xufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1oZWFkaW5nJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydhdXRvTGV2ZWwnLCAnY29sb3InLCAnaW52ZXJ0ZWQnLCAnbGV2ZWwnLCAnbm9XcmFwJywgJ3NoYWRvdycsICdzcGFjZScsICdzdWJ0aXRsZScsICd2aXN1YWxMZXZlbCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbEhlYWRpbmcge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxIaW50IGV4dGVuZHMgQ29tcG9uZW50cy5CYWxIaW50IHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY2xvc2VMYWJlbCcsICdzbWFsbCddLFxuICBtZXRob2RzOiBbJ3RvZ2dsZScsICdwcmVzZW50JywgJ2Rpc21pc3MnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxIaW50XG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWhpbnQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2Nsb3NlTGFiZWwnLCAnc21hbGwnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxIaW50IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsSGludFRleHQgZXh0ZW5kcyBDb21wb25lbnRzLkJhbEhpbnRUZXh0IHt9XG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbEhpbnRUZXh0XG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWhpbnQtdGV4dCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEJhbEhpbnRUZXh0IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsSGludFRpdGxlIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxIaW50VGl0bGUge31cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsSGludFRpdGxlXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWhpbnQtdGl0bGUnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBCYWxIaW50VGl0bGUge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxJY29uIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxJY29uIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29sb3InLCAnY29sb3JIb3ZlcmVkJywgJ2NvbG9yUHJlc3NlZCcsICdkaXNhYmxlZCcsICdpbmxpbmUnLCAnaW52YWxpZCcsICdpbnZlcnRlZCcsICduYW1lJywgJ3NoYWRvdycsICdzaXplJywgJ3N2ZycsICd0aWxlJywgJ3RpbGVDb2xvcicsICd0dXJuJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsSWNvblxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1pY29uJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydjb2xvcicsICdjb2xvckhvdmVyZWQnLCAnY29sb3JQcmVzc2VkJywgJ2Rpc2FibGVkJywgJ2lubGluZScsICdpbnZhbGlkJywgJ2ludmVydGVkJywgJ25hbWUnLCAnc2hhZG93JywgJ3NpemUnLCAnc3ZnJywgJ3RpbGUnLCAndGlsZUNvbG9yJywgJ3R1cm4nXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxJY29uIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsSW5wdXRHcm91cCBleHRlbmRzIENvbXBvbmVudHMuQmFsSW5wdXRHcm91cCB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2ludmFsaWQnLCAncmVhZG9ubHknXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxJbnB1dEdyb3VwXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWlucHV0LWdyb3VwJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydkaXNhYmxlZCcsICdpbnZhbGlkJywgJ3JlYWRvbmx5J11cbn0pXG5leHBvcnQgY2xhc3MgQmFsSW5wdXRHcm91cCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbExhYmVsIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxMYWJlbCB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2h0bWxGb3InLCAnaHRtbElkJywgJ2ludmFsaWQnLCAnbXVsdGlsaW5lJywgJ25vV3JhcCcsICdyZWFkb25seScsICdyZXF1aXJlZCcsICdzaXplJywgJ3ZhbGlkJywgJ3dlaWdodCddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbExhYmVsXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWxhYmVsJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydkaXNhYmxlZCcsICdodG1sRm9yJywgJ2h0bWxJZCcsICdpbnZhbGlkJywgJ211bHRpbGluZScsICdub1dyYXAnLCAncmVhZG9ubHknLCAncmVxdWlyZWQnLCAnc2l6ZScsICd2YWxpZCcsICd3ZWlnaHQnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxMYWJlbCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbExpc3QgZXh0ZW5kcyBDb21wb25lbnRzLkJhbExpc3Qge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhY2NvcmRpb25PbmVMZXZlbCcsICdiYWNrZ3JvdW5kJywgJ2JvcmRlcicsICdkaXNhYmxlZCcsICdzaXplJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsTGlzdFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1saXN0JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydhY2NvcmRpb25PbmVMZXZlbCcsICdiYWNrZ3JvdW5kJywgJ2JvcmRlcicsICdkaXNhYmxlZCcsICdzaXplJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsTGlzdCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbExpc3RJdGVtIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxMaXN0SXRlbSB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FjY29yZGlvbicsICdjbGlja2FibGUnLCAnZGlzYWJsZWQnLCAnZG93bmxvYWQnLCAnaHJlZicsICdyZWwnLCAnc2VsZWN0ZWQnLCAnc3ViQWNjb3JkaW9uSXRlbScsICd0YXJnZXQnXSxcbiAgbWV0aG9kczogWydwcmVzZW50JywgJ2Rpc21pc3MnLCAndG9nZ2xlJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsTGlzdEl0ZW1cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbGlzdC1pdGVtJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydhY2NvcmRpb24nLCAnY2xpY2thYmxlJywgJ2Rpc2FibGVkJywgJ2Rvd25sb2FkJywgJ2hyZWYnLCAncmVsJywgJ3NlbGVjdGVkJywgJ3N1YkFjY29yZGlvbkl0ZW0nLCAndGFyZ2V0J10sXG4gIG91dHB1dHM6IFsnYmFsTmF2aWdhdGUnLCAnYmFsR3JvdXBTdGF0ZUNoYW5nZWQnLCAnYmFsV2lsbEFuaW1hdGUnLCAnYmFsRGlkQW5pbWF0ZSddXG59KVxuZXhwb3J0IGNsYXNzIEJhbExpc3RJdGVtIHtcbiAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgbGluayBlbGVtZW50IGhhcyBjbGlja2VkICovXG4gIGJhbE5hdmlnYXRlITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxMaXN0SXRlbUN1c3RvbUV2ZW50PE1vdXNlRXZlbnQ+PjtcbiAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgc3RhdGUgb2YgdGhlIGdyb3VwIGlzIGNoYW5naW5nICovXG4gIGJhbEdyb3VwU3RhdGVDaGFuZ2VkITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxMaXN0SXRlbUN1c3RvbUV2ZW50PE1vdXNlRXZlbnQ+PjtcbiAgLyoqIEVtaXR0ZWQgYmVmb3JlIHRoZSBhbmltYXRpb24gc3RhcnRzICovXG4gIGJhbFdpbGxBbmltYXRlITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxMaXN0SXRlbUN1c3RvbUV2ZW50PGJvb2xlYW4+PjtcbiAgLyoqIEVtaXR0ZWQgYWZ0ZXIgdGhlIGFuaW1hdGlvbiBoYXMgZmluaXNoZWQgKi9cbiAgYmFsRGlkQW5pbWF0ZSE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsTGlzdEl0ZW1DdXN0b21FdmVudDxib29sZWFuPj47XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2JhbE5hdmlnYXRlJywgJ2JhbEdyb3VwU3RhdGVDaGFuZ2VkJywgJ2JhbFdpbGxBbmltYXRlJywgJ2JhbERpZEFuaW1hdGUnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsTGlzdEl0ZW1BY2NvcmRpb25Cb2R5IGV4dGVuZHMgQ29tcG9uZW50cy5CYWxMaXN0SXRlbUFjY29yZGlvbkJvZHkge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhY2NvcmRpb25Hcm91cCcsICdjb250ZW50QWxpZ25tZW50JywgJ2NvbnRlbnRTcGFjZSddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbExpc3RJdGVtQWNjb3JkaW9uQm9keVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1saXN0LWl0ZW0tYWNjb3JkaW9uLWJvZHknLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2FjY29yZGlvbkdyb3VwJywgJ2NvbnRlbnRBbGlnbm1lbnQnLCAnY29udGVudFNwYWNlJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsTGlzdEl0ZW1BY2NvcmRpb25Cb2R5IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsTGlzdEl0ZW1BY2NvcmRpb25IZWFkIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxMaXN0SXRlbUFjY29yZGlvbkhlYWQge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhY2NvcmRpb25PcGVuJywgJ2ljb24nXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxMaXN0SXRlbUFjY29yZGlvbkhlYWRcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbGlzdC1pdGVtLWFjY29yZGlvbi1oZWFkJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydhY2NvcmRpb25PcGVuJywgJ2ljb24nXSxcbiAgb3V0cHV0czogWydiYWxBY2NvcmRpb25DaGFuZ2UnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxMaXN0SXRlbUFjY29yZGlvbkhlYWQge1xuICAvKiogRW1pdHRlZCB3aGVuIHRoZSBhY2NvcmRpb24gc3RhdGUgaXMgY2hhbmdlZCAqL1xuICBiYWxBY2NvcmRpb25DaGFuZ2UhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbExpc3RJdGVtQWNjb3JkaW9uSGVhZEN1c3RvbUV2ZW50PGJvb2xlYW4+PjtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYmFsQWNjb3JkaW9uQ2hhbmdlJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbExpc3RJdGVtQ29udGVudCBleHRlbmRzIENvbXBvbmVudHMuQmFsTGlzdEl0ZW1Db250ZW50IHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29udGVudEFsaWdubWVudCddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbExpc3RJdGVtQ29udGVudFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1saXN0LWl0ZW0tY29udGVudCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnY29udGVudEFsaWdubWVudCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbExpc3RJdGVtQ29udGVudCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbExpc3RJdGVtSWNvbiBleHRlbmRzIENvbXBvbmVudHMuQmFsTGlzdEl0ZW1JY29uIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsncmlnaHQnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxMaXN0SXRlbUljb25cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbGlzdC1pdGVtLWljb24nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ3JpZ2h0J11cbn0pXG5leHBvcnQgY2xhc3MgQmFsTGlzdEl0ZW1JY29uIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsTGlzdEl0ZW1TdWJ0aXRsZSBleHRlbmRzIENvbXBvbmVudHMuQmFsTGlzdEl0ZW1TdWJ0aXRsZSB7fVxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxMaXN0SXRlbVN1YnRpdGxlXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWxpc3QtaXRlbS1zdWJ0aXRsZScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEJhbExpc3RJdGVtU3VidGl0bGUge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxMaXN0SXRlbVRpdGxlIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxMaXN0SXRlbVRpdGxlIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnbGV2ZWwnLCAndmlzdWFsTGV2ZWwnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxMaXN0SXRlbVRpdGxlXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWxpc3QtaXRlbS10aXRsZScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnbGV2ZWwnLCAndmlzdWFsTGV2ZWwnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxMaXN0SXRlbVRpdGxlIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsTG9nbyBleHRlbmRzIENvbXBvbmVudHMuQmFsTG9nbyB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FuaW1hdGVkJywgJ2JyYW5kJywgJ2NvbG9yJywgJ3NpemUnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxMb2dvXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLWxvZ28nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2FuaW1hdGVkJywgJ2JyYW5kJywgJ2NvbG9yJywgJ3NpemUnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxMb2dvIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsTW9kYWwgZXh0ZW5kcyBDb21wb25lbnRzLkJhbE1vZGFsIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYmFja2Ryb3BEaXNtaXNzJywgJ2NvbXBvbmVudCcsICdjb21wb25lbnRQcm9wcycsICdjc3NDbGFzcycsICdmb2N1c1RyYXAnLCAnaGFzQmFja2Ryb3AnLCAnaXNDbG9zYWJsZScsICdtb2RhbFdpZHRoJywgJ3NwYWNlJ10sXG4gIG1ldGhvZHM6IFsncHJlc2VudCcsICdkaXNtaXNzJywgJ29uRGlkRGlzbWlzcycsICdvbldpbGxEaXNtaXNzJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsTW9kYWxcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbW9kYWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2JhY2tkcm9wRGlzbWlzcycsICdjb21wb25lbnQnLCAnY29tcG9uZW50UHJvcHMnLCAnY3NzQ2xhc3MnLCAnZm9jdXNUcmFwJywgJ2hhc0JhY2tkcm9wJywgJ2lzQ2xvc2FibGUnLCAnbW9kYWxXaWR0aCcsICdzcGFjZSddLFxuICBvdXRwdXRzOiBbJ2JhbE1vZGFsRGlkUHJlc2VudCcsICdiYWxNb2RhbFdpbGxQcmVzZW50JywgJ2JhbE1vZGFsV2lsbERpc21pc3MnLCAnYmFsTW9kYWxEaWREaXNtaXNzJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsTW9kYWwge1xuICAvKiogRW1pdHRlZCBhZnRlciB0aGUgbW9kYWwgaGFzIHByZXNlbnRlZC4gKi9cbiAgYmFsTW9kYWxEaWRQcmVzZW50ITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxNb2RhbEN1c3RvbUV2ZW50PHZvaWQ+PjtcbiAgLyoqIEVtaXR0ZWQgYmVmb3JlIHRoZSBtb2RhbCBoYXMgcHJlc2VudGVkLiAqL1xuICBiYWxNb2RhbFdpbGxQcmVzZW50ITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxNb2RhbEN1c3RvbUV2ZW50PHZvaWQ+PjtcbiAgLyoqIEVtaXR0ZWQgYmVmb3JlIHRoZSBtb2RhbCBoYXMgZGlzbWlzc2VkLiAqL1xuICBiYWxNb2RhbFdpbGxEaXNtaXNzITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxNb2RhbEN1c3RvbUV2ZW50PGFueT4+O1xuICAvKiogRW1pdHRlZCBhZnRlciB0aGUgbW9kYWwgaGFzIGRpc21pc3NlZC4gKi9cbiAgYmFsTW9kYWxEaWREaXNtaXNzITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxNb2RhbEN1c3RvbUV2ZW50PGFueT4+O1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydiYWxNb2RhbERpZFByZXNlbnQnLCAnYmFsTW9kYWxXaWxsUHJlc2VudCcsICdiYWxNb2RhbFdpbGxEaXNtaXNzJywgJ2JhbE1vZGFsRGlkRGlzbWlzcyddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxNb2RhbEJvZHkgZXh0ZW5kcyBDb21wb25lbnRzLkJhbE1vZGFsQm9keSB7fVxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxNb2RhbEJvZHlcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbW9kYWwtYm9keScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEJhbE1vZGFsQm9keSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbE1vZGFsSGVhZGVyIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxNb2RhbEhlYWRlciB7fVxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxNb2RhbEhlYWRlclxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1tb2RhbC1oZWFkZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBCYWxNb2RhbEhlYWRlciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbE5hdiBleHRlbmRzIENvbXBvbmVudHMuQmFsTmF2IHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYnV0dG9ucycsICdsb2dvJywgJ29wdGlvbnMnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxOYXZcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbmF2JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydidXR0b25zJywgJ2xvZ28nLCAnb3B0aW9ucyddLFxuICBvdXRwdXRzOiBbJ2JhbE5hdkl0ZW1DbGljayddXG59KVxuZXhwb3J0IGNsYXNzIEJhbE5hdiB7XG4gIC8qKiBFbWl0dGVkIHdoZW4gYSBuYXYgbGluayBpdGVtIGlzIGNsaWNrZWQuIFRoaXMgZXZlbnQgY2FuIGJlIHVzZWQgdG9cbmFkZCBkYXRhIHRyYWNraW5nICovXG4gIGJhbE5hdkl0ZW1DbGljayE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsTmF2Q3VzdG9tRXZlbnQ8QmFsRXZlbnRzLkJhbE5hdkl0ZW1DbGlja0RldGFpbD4+O1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydiYWxOYXZJdGVtQ2xpY2snXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsTmF2TGluayBleHRlbmRzIENvbXBvbmVudHMuQmFsTmF2TGluayB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NsaWNrYWJsZScsICdocmVmJywgJ3JlbCcsICdzZWxlY3RlZCcsICd0YXJnZXQnLCAndmFyaWFudCddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbE5hdkxpbmtcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbmF2LWxpbmsnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2NsaWNrYWJsZScsICdocmVmJywgJ3JlbCcsICdzZWxlY3RlZCcsICd0YXJnZXQnLCAndmFyaWFudCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbE5hdkxpbmsge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxOYXZMaW5rR3JpZCBleHRlbmRzIENvbXBvbmVudHMuQmFsTmF2TGlua0dyaWQge31cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsTmF2TGlua0dyaWRcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbmF2LWxpbmstZ3JpZCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEJhbE5hdkxpbmtHcmlkIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsTmF2TGlua0dyaWRDb2wgZXh0ZW5kcyBDb21wb25lbnRzLkJhbE5hdkxpbmtHcmlkQ29sIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnc3RhdGljQ29sJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsTmF2TGlua0dyaWRDb2xcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbmF2LWxpbmstZ3JpZC1jb2wnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ3N0YXRpY0NvbCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbE5hdkxpbmtHcmlkQ29sIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsTmF2TGlua0dyb3VwIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxOYXZMaW5rR3JvdXAge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjb2xvciddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbE5hdkxpbmtHcm91cFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1uYXYtbGluay1ncm91cCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnY29sb3InXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxOYXZMaW5rR3JvdXAge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxOYXZNZW51QmFyIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxOYXZNZW51QmFyIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaW52aXNpYmxlJywgJ3Bvc2l0aW9uJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsTmF2TWVudUJhclxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1uYXYtbWVudS1iYXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2ludmlzaWJsZScsICdwb3NpdGlvbiddXG59KVxuZXhwb3J0IGNsYXNzIEJhbE5hdk1lbnVCYXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxOYXZNZW51Rmx5b3V0IGV4dGVuZHMgQ29tcG9uZW50cy5CYWxOYXZNZW51Rmx5b3V0IHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnbmF2SWQnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxOYXZNZW51Rmx5b3V0XG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLW5hdi1tZW51LWZseW91dCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnbmF2SWQnXSxcbiAgb3V0cHV0czogWydiYWxGb2N1c091dCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbE5hdk1lbnVGbHlvdXQge1xuICAvKiogRW1pdHRlZCB3aGVuIHRoZSBmbHlvdXQgbG9zZXMgZm9jdXMgKi9cbiAgYmFsRm9jdXNPdXQhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbE5hdk1lbnVGbHlvdXRDdXN0b21FdmVudDxGb2N1c0V2ZW50Pj47XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2JhbEZvY3VzT3V0J10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbE5hdk1ldGFCYXIgZXh0ZW5kcyBDb21wb25lbnRzLkJhbE5hdk1ldGFCYXIge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpbnZpc2libGUnLCAncG9zaXRpb24nLCAnc2l6ZScsICdzdGF5T25Ub3BPZkJhY2tkcm9wJywgJ3ZhcmlhbnQnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxOYXZNZXRhQmFyXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLW5hdi1tZXRhLWJhcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnaW52aXNpYmxlJywgJ3Bvc2l0aW9uJywgJ3NpemUnLCAnc3RheU9uVG9wT2ZCYWNrZHJvcCcsICd2YXJpYW50J11cbn0pXG5leHBvcnQgY2xhc3MgQmFsTmF2TWV0YUJhciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbE5hdmJhciBleHRlbmRzIENvbXBvbmVudHMuQmFsTmF2YmFyIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29udGFpbmVyJywgJ2ludGVyZmFjZScsICdsaWdodCddLFxuICBtZXRob2RzOiBbJ3RvZ2dsZU1lbnUnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxOYXZiYXJcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbmF2YmFyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydjb250YWluZXInLCAnaW50ZXJmYWNlJywgJ2xpZ2h0J11cbn0pXG5leHBvcnQgY2xhc3MgQmFsTmF2YmFyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsTmF2YmFyQnJhbmQgZXh0ZW5kcyBDb21wb25lbnRzLkJhbE5hdmJhckJyYW5kIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYW5pbWF0ZWQnLCAnaHJlZicsICdsb2dvJywgJ2xvZ29CcmFuZCcsICdsb2dvQ2xpY2thYmxlJywgJ2xvZ29MYWJlbCcsICdsb2dvU2l6ZScsICdyZWwnLCAnc2ltcGxlJywgJ3RhcmdldCddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbE5hdmJhckJyYW5kXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLW5hdmJhci1icmFuZCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnYW5pbWF0ZWQnLCAnaHJlZicsICdsb2dvJywgJ2xvZ29CcmFuZCcsICdsb2dvQ2xpY2thYmxlJywgJ2xvZ29MYWJlbCcsICdsb2dvU2l6ZScsICdyZWwnLCAnc2ltcGxlJywgJ3RhcmdldCddLFxuICBvdXRwdXRzOiBbJ2JhbE5hdmlnYXRlJywgJ2JhbFdpbGxBbmltYXRlJywgJ2JhbERpZEFuaW1hdGUnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxOYXZiYXJCcmFuZCB7XG4gIC8qKiBFbWl0dGVkIHdoZW4gdGhlIGxpbmsgZWxlbWVudCBoYXMgY2xpY2tlZCAqL1xuICBiYWxOYXZpZ2F0ZSE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsTmF2YmFyQnJhbmRDdXN0b21FdmVudDxNb3VzZUV2ZW50Pj47XG4gIC8qKiBFbWl0dGVkIGJlZm9yZSB0aGUgYW5pbWF0aW9uIHN0YXJ0cyAqL1xuICBiYWxXaWxsQW5pbWF0ZSE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsTmF2YmFyQnJhbmRDdXN0b21FdmVudDxib29sZWFuPj47XG4gIC8qKiBFbWl0dGVkIGFmdGVyIHRoZSBhbmltYXRpb24gaGFzIGZpbmlzaGVkICovXG4gIGJhbERpZEFuaW1hdGUhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbE5hdmJhckJyYW5kQ3VzdG9tRXZlbnQ8Ym9vbGVhbj4+O1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydiYWxOYXZpZ2F0ZScsICdiYWxXaWxsQW5pbWF0ZScsICdiYWxEaWRBbmltYXRlJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbE5hdmJhck1lbnUgZXh0ZW5kcyBDb21wb25lbnRzLkJhbE5hdmJhck1lbnUge31cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsTmF2YmFyTWVudVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1uYXZiYXItbWVudScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEJhbE5hdmJhck1lbnUge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxOYXZiYXJNZW51RW5kIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxOYXZiYXJNZW51RW5kIHt9XG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbE5hdmJhck1lbnVFbmRcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtbmF2YmFyLW1lbnUtZW5kJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgQmFsTmF2YmFyTWVudUVuZCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbE5hdmJhck1lbnVTdGFydCBleHRlbmRzIENvbXBvbmVudHMuQmFsTmF2YmFyTWVudVN0YXJ0IHt9XG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbE5hdmJhck1lbnVTdGFydFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1uYXZiYXItbWVudS1zdGFydCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEJhbE5hdmJhck1lbnVTdGFydCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbE5vdGljZXMgZXh0ZW5kcyBDb21wb25lbnRzLkJhbE5vdGljZXMge31cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsTm90aWNlc1xufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1ub3RpY2VzJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgQmFsTm90aWNlcyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbE5vdGlmaWNhdGlvbiBleHRlbmRzIENvbXBvbmVudHMuQmFsTm90aWZpY2F0aW9uIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29sb3InLCAnbGlnaHQnLCAnbm9JY29uJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsTm90aWZpY2F0aW9uXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLW5vdGlmaWNhdGlvbicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnY29sb3InLCAnbGlnaHQnLCAnbm9JY29uJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsTm90aWZpY2F0aW9uIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsT3B0aW9uIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxPcHRpb24ge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydkaXNhYmxlZCcsICdmb2N1c2VkJywgJ2hpZGRlbicsICdpbnZhbGlkJywgJ2xhYmVsJywgJ211bHRpbGluZScsICdzZWxlY3RlZCcsICd2YWx1ZSddLFxuICBtZXRob2RzOiBbJ3NlbGVjdCddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbE9wdGlvblxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1vcHRpb24nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2ZvY3VzZWQnLCAnaGlkZGVuJywgJ2ludmFsaWQnLCAnbGFiZWwnLCAnbXVsdGlsaW5lJywgJ3NlbGVjdGVkJywgJ3ZhbHVlJ10sXG4gIG91dHB1dHM6IFsnYmFsT3B0aW9uQ2hhbmdlJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsT3B0aW9uIHtcbiAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgb3B0aW9uIGdldHMgc2VsZWN0ZWQgb3IgdW5zZWxlY3RlZCAqL1xuICBiYWxPcHRpb25DaGFuZ2UhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbE9wdGlvbkN1c3RvbUV2ZW50PEJhbEV2ZW50cy5CYWxPcHRpb25DaGFuZ2VEZXRhaWw+PjtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYmFsT3B0aW9uQ2hhbmdlJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbE9wdGlvbkxpc3QgZXh0ZW5kcyBDb21wb25lbnRzLkJhbE9wdGlvbkxpc3Qge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjb250ZW50SGVpZ2h0JywgJ2Rpc2FibGVkJywgJ2ZpbHRlcicsICdmb2N1c0luZGV4JywgJ2xhYmVsbGVkYnknLCAnbXVsdGlwbGUnLCAncmVxdWlyZWQnXSxcbiAgbWV0aG9kczogWydmb2N1c1NlbGVjdGVkJywgJ2ZvY3VzRmlyc3QnLCAnZm9jdXNMYXN0JywgJ2ZvY3VzTmV4dCcsICdmb2N1c1ByZXZpb3VzJywgJ2ZvY3VzQnlMYWJlbCcsICdmaWx0ZXJCeUNvbnRlbnQnLCAncmVzZXRIaWRkZW4nLCAncmVzZXRTZWxlY3RlZCcsICd1cGRhdGVTZWxlY3RlZCcsICdyZXNldEZvY3VzJywgJ2dldFNlbGVjdGVkVmFsdWVzJywgJ2dldFNlbGVjdGVkT3B0aW9ucycsICdnZXRWYWx1ZXMnLCAnZ2V0TGFiZWxzJywgJ2dldE9wdGlvbnMnLCAnc2VsZWN0QnlGb2N1cyddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbE9wdGlvbkxpc3Rcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtb3B0aW9uLWxpc3QnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2NvbnRlbnRIZWlnaHQnLCAnZGlzYWJsZWQnLCAnZmlsdGVyJywgJ2ZvY3VzSW5kZXgnLCAnbGFiZWxsZWRieScsICdtdWx0aXBsZScsICdyZXF1aXJlZCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbE9wdGlvbkxpc3Qge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxQYWdpbmF0aW9uIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxQYWdpbmF0aW9uIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYWxpZ24nLCAnZGlzYWJsZWQnLCAnaW50ZXJmYWNlJywgJ3BhZ2VSYW5nZScsICdzaXplJywgJ3N0aWNreScsICd0b3AnLCAndG90YWxQYWdlcycsICd2YWx1ZSddLFxuICBtZXRob2RzOiBbJ25leHQnLCAncHJldmlvdXMnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxQYWdpbmF0aW9uXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLXBhZ2luYXRpb24nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2FsaWduJywgJ2Rpc2FibGVkJywgJ2ludGVyZmFjZScsICdwYWdlUmFuZ2UnLCAnc2l6ZScsICdzdGlja3knLCAndG9wJywgJ3RvdGFsUGFnZXMnLCAndmFsdWUnXSxcbiAgb3V0cHV0czogWydiYWxDaGFuZ2UnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxQYWdpbmF0aW9uIHtcbiAgLyoqIFRyaWdnZXJzIHdoZW4gYSBwYWdlIGNoYW5nZSBoYXBwZW5zICovXG4gIGJhbENoYW5nZSE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsUGFnaW5hdGlvbkN1c3RvbUV2ZW50PG51bWJlcj4+O1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydiYWxDaGFuZ2UnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsUG9wb3ZlciBleHRlbmRzIENvbXBvbmVudHMuQmFsUG9wb3ZlciB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FjdGl2ZScsICdhcnJvdycsICdhdXRvVHJpZ2dlcicsICdiYWNrZHJvcCcsICdoaW50JywgJ2hvdmVyJywgJ21vYmlsZVRvcCcsICdvZmZzZXRYJywgJ29mZnNldFknLCAncGFkZGluZycsICdwb3NpdGlvbicsICd0b29sdGlwJ10sXG4gIG1ldGhvZHM6IFsncHJlc2VudCcsICdkaXNtaXNzJywgJ3RvZ2dsZSddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbFBvcG92ZXJcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtcG9wb3ZlcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnYWN0aXZlJywgJ2Fycm93JywgJ2F1dG9UcmlnZ2VyJywgJ2JhY2tkcm9wJywgJ2hpbnQnLCAnaG92ZXInLCAnbW9iaWxlVG9wJywgJ29mZnNldFgnLCAnb2Zmc2V0WScsICdwYWRkaW5nJywgJ3Bvc2l0aW9uJywgJ3Rvb2x0aXAnXSxcbiAgb3V0cHV0czogWydiYWxDaGFuZ2UnLCAnYmFsV2lsbEFuaW1hdGUnLCAnYmFsRGlkQW5pbWF0ZSddXG59KVxuZXhwb3J0IGNsYXNzIEJhbFBvcG92ZXIge1xuICAvKiogTGlzdGVuIHdoZW4gdGhlIHBvcG92ZXIgb3BlbnMgb3IgY2xvc2VzLiBSZXR1cm5zIHRoZSBjdXJyZW50IHZhbHVlLiAqL1xuICBiYWxDaGFuZ2UhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbFBvcG92ZXJDdXN0b21FdmVudDxib29sZWFuPj47XG4gIC8qKiBFbWl0dGVkIGJlZm9yZSB0aGUgYW5pbWF0aW9uIHN0YXJ0cyAqL1xuICBiYWxXaWxsQW5pbWF0ZSE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsUG9wb3ZlckN1c3RvbUV2ZW50PGJvb2xlYW4+PjtcbiAgLyoqIEVtaXR0ZWQgYWZ0ZXIgdGhlIGFuaW1hdGlvbiBoYXMgZmluaXNoZWQgKi9cbiAgYmFsRGlkQW5pbWF0ZSE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsUG9wb3ZlckN1c3RvbUV2ZW50PGJvb2xlYW4+PjtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYmFsQ2hhbmdlJywgJ2JhbFdpbGxBbmltYXRlJywgJ2JhbERpZEFuaW1hdGUnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsUG9wb3ZlckNvbnRlbnQgZXh0ZW5kcyBDb21wb25lbnRzLkJhbFBvcG92ZXJDb250ZW50IHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29sb3InLCAnY29udGVudE1pbldpZHRoJywgJ2NvbnRlbnRXaWR0aCcsICdleHBhbmRlZCcsICdtb2JpbGVUb3AnLCAnbm9TaGFkb3cnLCAncmFkaXVzJywgJ3Njcm9sbGFibGUnLCAnc3BhY2VsZXNzJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsUG9wb3ZlckNvbnRlbnRcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtcG9wb3Zlci1jb250ZW50JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydjb2xvcicsICdjb250ZW50TWluV2lkdGgnLCAnY29udGVudFdpZHRoJywgJ2V4cGFuZGVkJywgJ21vYmlsZVRvcCcsICdub1NoYWRvdycsICdyYWRpdXMnLCAnc2Nyb2xsYWJsZScsICdzcGFjZWxlc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxQb3BvdmVyQ29udGVudCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbFBvcHVwIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxQb3B1cCB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FjdGl2ZScsICdhcnJvdycsICdiYWNrZHJvcCcsICdiYWNrZHJvcERpc21pc3MnLCAnY2xvc2FibGUnLCAnY29udGVudFdpZHRoJywgJ2xhYmVsJywgJ29mZnNldCcsICdwbGFjZW1lbnQnLCAncmVmZXJlbmNlJywgJ3ZhcmlhbnQnXSxcbiAgbWV0aG9kczogWydwcmVzZW50JywgJ2Rpc21pc3MnLCAndG9nZ2xlJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsUG9wdXBcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtcG9wdXAnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2FjdGl2ZScsICdhcnJvdycsICdiYWNrZHJvcCcsICdiYWNrZHJvcERpc21pc3MnLCAnY2xvc2FibGUnLCAnY29udGVudFdpZHRoJywgJ2xhYmVsJywgJ29mZnNldCcsICdwbGFjZW1lbnQnLCAncmVmZXJlbmNlJywgJ3ZhcmlhbnQnXSxcbiAgb3V0cHV0czogWydiYWxDaGFuZ2UnLCAnYmFsV2lsbEFuaW1hdGUnLCAnYmFsRGlkQW5pbWF0ZSddXG59KVxuZXhwb3J0IGNsYXNzIEJhbFBvcHVwIHtcbiAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgYWNjb3JkaW9uIGhhcyBvcGVuZWQgb3IgY2xvc2VkICovXG4gIGJhbENoYW5nZSE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsUG9wdXBDdXN0b21FdmVudDxib29sZWFuPj47XG4gIC8qKiBFbWl0dGVkIGJlZm9yZSB0aGUgYW5pbWF0aW9uIHN0YXJ0cyAqL1xuICBiYWxXaWxsQW5pbWF0ZSE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsUG9wdXBDdXN0b21FdmVudDxib29sZWFuPj47XG4gIC8qKiBFbWl0dGVkIGFmdGVyIHRoZSBhbmltYXRpb24gaGFzIGZpbmlzaGVkICovXG4gIGJhbERpZEFuaW1hdGUhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbFBvcHVwQ3VzdG9tRXZlbnQ8Ym9vbGVhbj4+O1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydiYWxDaGFuZ2UnLCAnYmFsV2lsbEFuaW1hdGUnLCAnYmFsRGlkQW5pbWF0ZSddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxQcm9ncmVzc0JhciBleHRlbmRzIENvbXBvbmVudHMuQmFsUHJvZ3Jlc3NCYXIge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydiYWNrZ3JvdW5kJywgJ2NvbG9yJywgJ3ZhbHVlJ10sXG4gIG1ldGhvZHM6IFsnY29uZmlnQ2hhbmdlZCddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbFByb2dyZXNzQmFyXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLXByb2dyZXNzLWJhcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnYmFja2dyb3VuZCcsICdjb2xvcicsICd2YWx1ZSddXG59KVxuZXhwb3J0IGNsYXNzIEJhbFByb2dyZXNzQmFyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsUmFkaW8gZXh0ZW5kcyBDb21wb25lbnRzLkJhbFJhZGlvIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29sb3InLCAnZGlzYWJsZWQnLCAnZmxhdCcsICdpbnRlcmZhY2UnLCAnaW52YWxpZCcsICdsYWJlbCcsICdsYWJlbEhpZGRlbicsICduYW1lJywgJ25vblN1Ym1pdCcsICdyZWFkb25seScsICdyZXF1aXJlZCcsICd2YWx1ZSddLFxuICBtZXRob2RzOiBbJ3NldEZvY3VzJywgJ2dldElucHV0RWxlbWVudCcsICdnZXRPcHRpb24nXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxSYWRpb1xufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1yYWRpbycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnY29sb3InLCAnZGlzYWJsZWQnLCAnZmxhdCcsICdpbnRlcmZhY2UnLCAnaW52YWxpZCcsICdsYWJlbCcsICdsYWJlbEhpZGRlbicsICduYW1lJywgJ25vblN1Ym1pdCcsICdyZWFkb25seScsICdyZXF1aXJlZCcsICd2YWx1ZSddLFxuICBvdXRwdXRzOiBbJ2JhbEZvY3VzJywgJ2JhbEJsdXInLCAnYmFsQ2hhbmdlJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsUmFkaW8ge1xuICAvKiogRW1pdHRlZCB3aGVuIHRoZSB0b2dnbGUgaGFzIGZvY3VzLiAqL1xuICBiYWxGb2N1cyE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsUmFkaW9DdXN0b21FdmVudDxGb2N1c0V2ZW50Pj47XG4gIC8qKiBFbWl0dGVkIHdoZW4gdGhlIHRvZ2dsZSBsb3NlcyBmb2N1cy4gKi9cbiAgYmFsQmx1ciE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsUmFkaW9DdXN0b21FdmVudDxGb2N1c0V2ZW50Pj47XG4gIC8qKiBFbWl0dGVkIHdoZW4gdGhlIGNoZWNrZWQgcHJvcGVydHkgaGFzIGNoYW5nZWQuICovXG4gIGJhbENoYW5nZSE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsUmFkaW9DdXN0b21FdmVudDxib29sZWFuPj47XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2JhbEZvY3VzJywgJ2JhbEJsdXInLCAnYmFsQ2hhbmdlJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbFJhZGlvSWNvbiBleHRlbmRzIENvbXBvbmVudHMuQmFsUmFkaW9JY29uIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY2hlY2tlZCcsICdkaXNhYmxlZCcsICdpbnZhbGlkJywgJ2ludmVydGVkJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsUmFkaW9JY29uXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLXJhZGlvLWljb24nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2NoZWNrZWQnLCAnZGlzYWJsZWQnLCAnaW52YWxpZCcsICdpbnZlcnRlZCddXG59KVxuZXhwb3J0IGNsYXNzIEJhbFJhZGlvSWNvbiB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbFNlZ21lbnRJdGVtIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxTZWdtZW50SXRlbSB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2ludmFsaWQnLCAnbGFiZWwnLCAndmFsdWUnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxTZWdtZW50SXRlbVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1zZWdtZW50LWl0ZW0nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2ludmFsaWQnLCAnbGFiZWwnLCAndmFsdWUnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxTZWdtZW50SXRlbSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbFNlbGVjdE9wdGlvbiBleHRlbmRzIENvbXBvbmVudHMuQmFsU2VsZWN0T3B0aW9uIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnbGFiZWwnLCAndmFsdWUnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxTZWxlY3RPcHRpb25cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtc2VsZWN0LW9wdGlvbicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnbGFiZWwnLCAndmFsdWUnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxTZWxlY3RPcHRpb24ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxTaGFwZSBleHRlbmRzIENvbXBvbmVudHMuQmFsU2hhcGUge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjb2xvcicsICdyb3RhdGlvbicsICd2YXJpYXRpb24nXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxTaGFwZVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1zaGFwZScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnY29sb3InLCAncm90YXRpb24nLCAndmFyaWF0aW9uJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsU2hhcGUge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxTaGVldCBleHRlbmRzIENvbXBvbmVudHMuQmFsU2hlZXQge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjb250YWluZXJTaXplJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsU2hlZXRcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtc2hlZXQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2NvbnRhaW5lclNpemUnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxTaGVldCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbFNuYWNrYmFyIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxTbmFja2JhciB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FjdGlvbicsICdjb2xvcicsICdkdXJhdGlvbicsICdocmVmJywgJ2ljb24nLCAnbWVzc2FnZScsICdzdWJqZWN0JywgJ3RhcmdldCddLFxuICBtZXRob2RzOiBbJ2Nsb3NlSW4nLCAnY2xvc2UnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxTbmFja2JhclxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1zbmFja2JhcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnYWN0aW9uJywgJ2NvbG9yJywgJ2R1cmF0aW9uJywgJ2hyZWYnLCAnaWNvbicsICdtZXNzYWdlJywgJ3N1YmplY3QnLCAndGFyZ2V0J10sXG4gIG91dHB1dHM6IFsnYmFsQ2xvc2UnLCAnYmFsQWN0aW9uJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsU25hY2tiYXIge1xuICAvKiogRW1pdHRlZCB3aGVuIHNuYWNrYmFyIGlzIGNsb3NlZCAqL1xuICBiYWxDbG9zZSE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsU25hY2tiYXJDdXN0b21FdmVudDxzdHJpbmc+PjtcbiAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgYWN0aW9uIGJ1dHRvbiBpcyBjbGlja2VkICovXG4gIGJhbEFjdGlvbiE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsU25hY2tiYXJDdXN0b21FdmVudDxzdHJpbmc+PjtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYmFsQ2xvc2UnLCAnYmFsQWN0aW9uJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbFNwaW5uZXIgZXh0ZW5kcyBDb21wb25lbnRzLkJhbFNwaW5uZXIge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjb2xvcicsICdkZWFjdGl2YXRlZCcsICdpbnZlcnRlZCcsICdzbWFsbCcsICd2YXJpYXRpb24nXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxTcGlubmVyXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLXNwaW5uZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2NvbG9yJywgJ2RlYWN0aXZhdGVkJywgJ2ludmVydGVkJywgJ3NtYWxsJywgJ3ZhcmlhdGlvbiddXG59KVxuZXhwb3J0IGNsYXNzIEJhbFNwaW5uZXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxTdGFjayBleHRlbmRzIENvbXBvbmVudHMuQmFsU3RhY2sge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhbGlnbicsICdmaXRDb250ZW50JywgJ2xheW91dCcsICdweCcsICdweScsICdzcGFjZScsICdzcGFjZUNvbHVtbicsICdzcGFjZVJvdycsICd1c2VXcmFwJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsU3RhY2tcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtc3RhY2snLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2FsaWduJywgJ2ZpdENvbnRlbnQnLCAnbGF5b3V0JywgJ3B4JywgJ3B5JywgJ3NwYWNlJywgJ3NwYWNlQ29sdW1uJywgJ3NwYWNlUm93JywgJ3VzZVdyYXAnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxTdGFjayB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbFN0YWdlIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxTdGFnZSB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NvbG9yJywgJ2NvbnRhaW5lclNpemUnLCAnc2hhcGUnLCAnc2hhcGVSb3RhdGlvbicsICdzaGFwZVZhcmlhdGlvbicsICdzaXplJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsU3RhZ2Vcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtc3RhZ2UnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2NvbG9yJywgJ2NvbnRhaW5lclNpemUnLCAnc2hhcGUnLCAnc2hhcGVSb3RhdGlvbicsICdzaGFwZVZhcmlhdGlvbicsICdzaXplJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsU3RhZ2Uge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxTdGFnZUJhY2tMaW5rIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxTdGFnZUJhY2tMaW5rIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaHJlZicsICdpbnZlcnRlZCcsICdyZWwnLCAnc2hhZG93J10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsU3RhZ2VCYWNrTGlua1xufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1zdGFnZS1iYWNrLWxpbmsnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2hyZWYnLCAnaW52ZXJ0ZWQnLCAncmVsJywgJ3NoYWRvdyddXG59KVxuZXhwb3J0IGNsYXNzIEJhbFN0YWdlQmFja0xpbmsge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxTdGFnZUJvZHkgZXh0ZW5kcyBDb21wb25lbnRzLkJhbFN0YWdlQm9keSB7fVxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxTdGFnZUJvZHlcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtc3RhZ2UtYm9keScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEJhbFN0YWdlQm9keSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbFN0YWdlRm9vdCBleHRlbmRzIENvbXBvbmVudHMuQmFsU3RhZ2VGb290IHt9XG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbFN0YWdlRm9vdFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1zdGFnZS1mb290JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgQmFsU3RhZ2VGb290IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsU3RhZ2VIZWFkIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxTdGFnZUhlYWQge31cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsU3RhZ2VIZWFkXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLXN0YWdlLWhlYWQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBCYWxTdGFnZUhlYWQge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxTdGFnZUltYWdlIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxTdGFnZUltYWdlIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZmFsbGJhY2snLCAnc3JjU2V0J10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsU3RhZ2VJbWFnZVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC1zdGFnZS1pbWFnZScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnZmFsbGJhY2snLCAnc3JjU2V0J11cbn0pXG5leHBvcnQgY2xhc3MgQmFsU3RhZ2VJbWFnZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbFN0ZXBJdGVtIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxTdGVwSXRlbSB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FjdGl2ZScsICdkaXNhYmxlZCcsICdkb25lJywgJ2ZhaWxlZCcsICdocmVmJywgJ2ludmlzaWJsZScsICdsYWJlbCcsICdwcmV2ZW50JywgJ3JlbCcsICd0YXJnZXQnLCAndmFsdWUnXSxcbiAgbWV0aG9kczogWydnZXRPcHRpb25zJywgJ3NldEFjdGl2ZSddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbFN0ZXBJdGVtXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLXN0ZXAtaXRlbScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbnB1dHM6IFsnYWN0aXZlJywgJ2Rpc2FibGVkJywgJ2RvbmUnLCAnZmFpbGVkJywgJ2hyZWYnLCAnaW52aXNpYmxlJywgJ2xhYmVsJywgJ3ByZXZlbnQnLCAncmVsJywgJ3RhcmdldCcsICd2YWx1ZSddLFxuICBvdXRwdXRzOiBbJ2JhbE5hdmlnYXRlJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsU3RlcEl0ZW0ge1xuICAvKiogRW1pdHRlZCB3aGVuIHRoZSBsaW5rIGVsZW1lbnQgaGFzIGNsaWNrZWQgKi9cbiAgYmFsTmF2aWdhdGUhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbFN0ZXBJdGVtQ3VzdG9tRXZlbnQ8TW91c2VFdmVudD4+O1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydiYWxOYXZpZ2F0ZSddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxTdGVwcyBleHRlbmRzIENvbXBvbmVudHMuQmFsU3RlcHMge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjbGlja2FibGUnLCAnY29sb3InLCAnZGVib3VuY2UnLCAnb3B0aW9ucycsICd2YWx1ZSddLFxuICBtZXRob2RzOiBbJ3NlbGVjdCcsICdnZXRPcHRpb25CeVZhbHVlJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsU3RlcHNcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtc3RlcHMnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2NsaWNrYWJsZScsICdjb2xvcicsICdkZWJvdW5jZScsICdvcHRpb25zJywgJ3ZhbHVlJ10sXG4gIG91dHB1dHM6IFsnYmFsQ2hhbmdlJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsU3RlcHMge1xuICAvKiogRW1pdHRlZCB3aGVuIHRoZSBjaGFuZ2VzIGhhcyBmaW5pc2hlZC4gKi9cbiAgYmFsQ2hhbmdlITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxTdGVwc0N1c3RvbUV2ZW50PHN0cmluZz4+O1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydiYWxDaGFuZ2UnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQmFsU3dpdGNoIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxTd2l0Y2gge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjaGVja2VkJywgJ2Rpc2FibGVkJywgJ2ludmFsaWQnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxTd2l0Y2hcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtc3dpdGNoJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydjaGVja2VkJywgJ2Rpc2FibGVkJywgJ2ludmFsaWQnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxTd2l0Y2gge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxUYWJJdGVtIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxUYWJJdGVtIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYTExeUNvbnRyb2xzJywgJ2FjdGl2ZScsICdidWJibGUnLCAnZGlzYWJsZWQnLCAnaHJlZicsICdpY29uJywgJ2ludmlzaWJsZScsICdsYWJlbCcsICdub1BhbmVsJywgJ3ByZXZlbnQnLCAncmVsJywgJ3N1YkxhYmVsJywgJ3N2ZycsICd0YXJnZXQnLCAndmFsdWUnXSxcbiAgbWV0aG9kczogWydnZXRPcHRpb25zJywgJ3NldEFjdGl2ZSddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbFRhYkl0ZW1cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtdGFiLWl0ZW0nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2ExMXlDb250cm9scycsICdhY3RpdmUnLCAnYnViYmxlJywgJ2Rpc2FibGVkJywgJ2hyZWYnLCAnaWNvbicsICdpbnZpc2libGUnLCAnbGFiZWwnLCAnbm9QYW5lbCcsICdwcmV2ZW50JywgJ3JlbCcsICdzdWJMYWJlbCcsICdzdmcnLCAndGFyZ2V0JywgJ3ZhbHVlJ10sXG4gIG91dHB1dHM6IFsnYmFsTmF2aWdhdGUnLCAnYmFsS2V5RG93biddXG59KVxuZXhwb3J0IGNsYXNzIEJhbFRhYkl0ZW0ge1xuICAvKiogRW1pdHRlZCB3aGVuIHRoZSBsaW5rIGVsZW1lbnQgaGFzIGNsaWNrZWQgKi9cbiAgYmFsTmF2aWdhdGUhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbFRhYkl0ZW1DdXN0b21FdmVudDxNb3VzZUV2ZW50Pj47XG4gIC8qKiBFbWl0dGVkIHdoZW4gdGhlIGxpbmsgZWxlbWVudCBoYXMgY2xpY2tlZCAqL1xuICBiYWxLZXlEb3duITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxUYWJJdGVtQ3VzdG9tRXZlbnQ8S2V5Ym9hcmRFdmVudD4+O1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydiYWxOYXZpZ2F0ZScsICdiYWxLZXlEb3duJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbFRhYmxlIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxUYWJsZSB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2V4cGFuZGVkJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsVGFibGVcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtdGFibGUnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2V4cGFuZGVkJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsVGFibGUge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxUYWJzIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxUYWJzIHt9XG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYWNjb3JkaW9uJywgJ2JvcmRlcicsICdjbGlja2FibGUnLCAnY29udGV4dCcsICdkZWJvdW5jZScsICdkaW1JbmFjdGl2ZUVsZW1lbnRzJywgJ2V4cGFuZGVkJywgJ2Zsb2F0JywgJ2Z1bGx3aWR0aCcsICdoYW5kbGVBc1RhYkxpc3QnLCAnaWNvblBvc2l0aW9uJywgJ2ludmVydGVkJywgJ29wdGlvbmFsVGFiU2VsZWN0aW9uJywgJ29wdGlvbnMnLCAnb3ZlcmZsb3cnLCAnc2VsZWN0T25Nb2JpbGUnLCAnc3BhY2VsZXNzJywgJ3ZhbHVlJywgJ3ZlcnRpY2FsJywgJ3ZlcnRpY2FsQ29sU2l6ZSddLFxuICBtZXRob2RzOiBbJ3NlbGVjdCcsICdnZXRPcHRpb25CeVZhbHVlJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsVGFic1xufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC10YWJzJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydhY2NvcmRpb24nLCAnYm9yZGVyJywgJ2NsaWNrYWJsZScsICdjb250ZXh0JywgJ2RlYm91bmNlJywgJ2RpbUluYWN0aXZlRWxlbWVudHMnLCAnZXhwYW5kZWQnLCAnZmxvYXQnLCAnZnVsbHdpZHRoJywgJ2hhbmRsZUFzVGFiTGlzdCcsICdpY29uUG9zaXRpb24nLCAnaW52ZXJ0ZWQnLCAnb3B0aW9uYWxUYWJTZWxlY3Rpb24nLCAnb3B0aW9ucycsICdvdmVyZmxvdycsICdzZWxlY3RPbk1vYmlsZScsICdzcGFjZWxlc3MnLCAndmFsdWUnLCAndmVydGljYWwnLCAndmVydGljYWxDb2xTaXplJ10sXG4gIG91dHB1dHM6IFsnYmFsQ2hhbmdlJywgJ2JhbFdpbGxBbmltYXRlJywgJ2JhbERpZEFuaW1hdGUnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxUYWJzIHtcbiAgLyoqIEVtaXR0ZWQgd2hlbiB0aGUgY2hhbmdlcyBoYXMgZmluaXNoZWQuICovXG4gIGJhbENoYW5nZSE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsVGFic0N1c3RvbUV2ZW50PHN0cmluZz4+O1xuICAvKiogRW1pdHRlZCBiZWZvcmUgdGhlIGFuaW1hdGlvbiBzdGFydHMgKi9cbiAgYmFsV2lsbEFuaW1hdGUhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbFRhYnNDdXN0b21FdmVudDxzdHJpbmc+PjtcbiAgLyoqIEVtaXR0ZWQgYWZ0ZXIgdGhlIGFuaW1hdGlvbiBoYXMgZmluaXNoZWQgKi9cbiAgYmFsRGlkQW5pbWF0ZSE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsVGFic0N1c3RvbUV2ZW50PHN0cmluZz4+O1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydiYWxDaGFuZ2UnLCAnYmFsV2lsbEFuaW1hdGUnLCAnYmFsRGlkQW5pbWF0ZSddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBCYWxUYWcgZXh0ZW5kcyBDb21wb25lbnRzLkJhbFRhZyB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2Nsb3NhYmxlJywgJ2NvbG9yJywgJ2Rpc2FibGVkJywgJ2ludmFsaWQnLCAnbGlnaHQnLCAncG9zaXRpb24nLCAnc2l6ZSddLFxuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUJhbFRhZ1xufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC10YWcnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2Nsb3NhYmxlJywgJ2NvbG9yJywgJ2Rpc2FibGVkJywgJ2ludmFsaWQnLCAnbGlnaHQnLCAncG9zaXRpb24nLCAnc2l6ZSddLFxuICBvdXRwdXRzOiBbJ2JhbENsb3NlQ2xpY2snXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxUYWcge1xuICAvKiogRW1pdHRlZCB3aGVuIHRoZSBpbnB1dCBnb3QgY2xpY2tlZC4gKi9cbiAgYmFsQ2xvc2VDbGljayE6IEV2ZW50RW1pdHRlcjxCYWxFdmVudHMuQmFsVGFnQ3VzdG9tRXZlbnQ8TW91c2VFdmVudD4+O1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydiYWxDbG9zZUNsaWNrJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbFRhZ0dyb3VwIGV4dGVuZHMgQ29tcG9uZW50cy5CYWxUYWdHcm91cCB7fVxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxUYWdHcm91cFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC10YWctZ3JvdXAnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBCYWxUYWdHcm91cCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbFRleHQgZXh0ZW5kcyBDb21wb25lbnRzLkJhbFRleHQge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydib2xkJywgJ2NvbG9yJywgJ2Rpc2FibGVkJywgJ2hlYWRpbmcnLCAnaW5saW5lJywgJ2ludmFsaWQnLCAnaW52ZXJ0ZWQnLCAnbm9XcmFwJywgJ3NoYWRvdycsICdzaXplJywgJ3NwYWNlJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsVGV4dFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JhbC10ZXh0JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGlucHV0czogWydib2xkJywgJ2NvbG9yJywgJ2Rpc2FibGVkJywgJ2hlYWRpbmcnLCAnaW5saW5lJywgJ2ludmFsaWQnLCAnaW52ZXJ0ZWQnLCAnbm9XcmFwJywgJ3NoYWRvdycsICdzaXplJywgJ3NwYWNlJ11cbn0pXG5leHBvcnQgY2xhc3MgQmFsVGV4dCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbFRvYXN0IGV4dGVuZHMgQ29tcG9uZW50cy5CYWxUb2FzdCB7fVxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2Nsb3NhYmxlJywgJ2NvbG9yJywgJ2R1cmF0aW9uJywgJ21lc3NhZ2UnXSxcbiAgbWV0aG9kczogWydjbG9zZUluJywgJ2Nsb3NlJ10sXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lQmFsVG9hc3Rcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYWwtdG9hc3QnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2Nsb3NhYmxlJywgJ2NvbG9yJywgJ2R1cmF0aW9uJywgJ21lc3NhZ2UnXSxcbiAgb3V0cHV0czogWydiYWxDbG9zZSddXG59KVxuZXhwb3J0IGNsYXNzIEJhbFRvYXN0IHtcbiAgLyoqIEVtaXR0ZWQgd2hlbiB0b2FzdCBpcyBjbG9zZWQgKi9cbiAgYmFsQ2xvc2UhOiBFdmVudEVtaXR0ZXI8QmFsRXZlbnRzLkJhbFRvYXN0Q3VzdG9tRXZlbnQ8c3RyaW5nPj47XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2JhbENsb3NlJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEJhbFRvb2x0aXAgZXh0ZW5kcyBDb21wb25lbnRzLkJhbFRvb2x0aXAge31cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjb250ZW50V2lkdGgnLCAnb2Zmc2V0JywgJ3BsYWNlbWVudCcsICdyZWZlcmVuY2UnXSxcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVCYWxUb29sdGlwXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFsLXRvb2x0aXAnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW5wdXRzOiBbJ2NvbnRlbnRXaWR0aCcsICdvZmZzZXQnLCAncGxhY2VtZW50JywgJ3JlZmVyZW5jZSddLFxuICBvdXRwdXRzOiBbJ2JhbFdpbGxBbmltYXRlJywgJ2JhbERpZEFuaW1hdGUnXVxufSlcbmV4cG9ydCBjbGFzcyBCYWxUb29sdGlwIHtcbiAgLyoqIEVtaXR0ZWQgYmVmb3JlIHRoZSBhbmltYXRpb24gc3RhcnRzICovXG4gIGJhbFdpbGxBbmltYXRlITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxUb29sdGlwQ3VzdG9tRXZlbnQ8Ym9vbGVhbj4+O1xuICAvKiogRW1pdHRlZCBhZnRlciB0aGUgYW5pbWF0aW9uIGhhcyBmaW5pc2hlZCAqL1xuICBiYWxEaWRBbmltYXRlITogRXZlbnRFbWl0dGVyPEJhbEV2ZW50cy5CYWxUb29sdGlwQ3VzdG9tRXZlbnQ8Ym9vbGVhbj4+O1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydiYWxXaWxsQW5pbWF0ZScsICdiYWxEaWRBbmltYXRlJ10pO1xuICB9XG59XG4iXX0=
|