@six-group/ui-library-angular 4.3.0 → 4.3.1
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.
|
@@ -1113,11 +1113,11 @@ export let SixSpinner = class SixSpinner {
|
|
|
1113
1113
|
this.el = r.nativeElement;
|
|
1114
1114
|
}
|
|
1115
1115
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SixSpinner, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1116
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SixSpinner, selector: "six-spinner", inputs: { six: "six" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1116
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SixSpinner, selector: "six-spinner", inputs: { logo: "logo", six: "six" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1117
1117
|
};
|
|
1118
1118
|
SixSpinner = __decorate([
|
|
1119
1119
|
ProxyCmp({
|
|
1120
|
-
inputs: ['six']
|
|
1120
|
+
inputs: ['logo', 'six']
|
|
1121
1121
|
})
|
|
1122
1122
|
], SixSpinner);
|
|
1123
1123
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SixSpinner, decorators: [{
|
|
@@ -1127,7 +1127,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
1127
1127
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1128
1128
|
template: '<ng-content></ng-content>',
|
|
1129
1129
|
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1130
|
-
inputs: ['six'],
|
|
1130
|
+
inputs: ['logo', 'six'],
|
|
1131
1131
|
}]
|
|
1132
1132
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1133
1133
|
export let SixStageIndicator = class SixStageIndicator {
|
|
@@ -1385,4 +1385,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
1385
1385
|
inputs: ['content', 'disabled', 'distance', 'open', 'placement', 'skidding', 'trigger'],
|
|
1386
1386
|
}]
|
|
1387
1387
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
1388
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc3RlbmNpbC1nZW5lcmF0ZWQvY29tcG9uZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsb0JBQW9CO0FBQ3BCLDhDQUE4QztBQUM5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQXFCLFNBQVMsRUFBb0MsTUFBTSxlQUFlLENBQUM7QUFFeEgsT0FBTyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7QUFnQmhFLFdBQU0sUUFBUSxHQUFkLE1BQU0sUUFBUTtJQUVuQixZQUFZLENBQW9CLEVBQUUsQ0FBYSxFQUFZLENBQVM7UUFBVCxNQUFDLEdBQUQsQ0FBQyxDQUFRO1FBQ2xFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNYLElBQUksQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLGFBQWEsQ0FBQztRQUMxQixZQUFZLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSxzQkFBc0IsRUFBRSxnQkFBZ0IsRUFBRSxzQkFBc0IsQ0FBQyxDQUFDLENBQUM7SUFDcEgsQ0FBQzsrR0FOVSxRQUFRO21HQUFSLFFBQVEscUlBSlQsMkJBQTJCOztBQUkxQixRQUFRO0lBWHBCLFFBQVEsQ0FBQztRQUNSLE1BQU0sRUFBRSxDQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQztRQUNoRCxPQUFPLEVBQUUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQztLQUNuQyxDQUFDO0dBUVcsUUFBUSxDQU9wQjs0RkFQWSxRQUFRO2tCQVBwQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxXQUFXO29CQUNyQixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsUUFBUSxFQUFFLDJCQUEyQjtvQkFDckMsdUVBQXVFO29CQUN2RSxN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LE1BQU0sRUFBRSxDQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLFNBQVMsQ0FBQztpQkFDeEYiLCJzb3VyY2VzQ29udGVudCI6WyIvKiB0c2xpbnQ6ZGlzYWJsZSAqL1xuLyogYXV0by1nZW5lcmF0ZWQgYW5ndWxhciBkaXJlY3RpdmUgcHJveGllcyAqL1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgTmdab25lIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFByb3h5Q21wLCBwcm94eU91dHB1dHMgfSBmcm9tICcuL2FuZ3VsYXItY29tcG9uZW50LWxpYi91dGlscyc7XG5cbmltcG9ydCB7IENvbXBvbmVudHMgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjbG9zYWJsZScsICdkdXJhdGlvbicsICdvcGVuJywgJ3R5cGUnXSxcbiAgbWV0aG9kczogWydzaG93JywgJ2hpZGUnLCAndG9hc3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1hbGVydCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY2xvc2FibGUnLCAnZHVyYXRpb24nLCAnb3BlbicsICd0eXBlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeEFsZXJ0IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2l4LWFsZXJ0LXNob3cnLCAnc2l4LWFsZXJ0LWFmdGVyLXNob3cnLCAnc2l4LWFsZXJ0LWhpZGUnLCAnc2l4LWFsZXJ0LWFmdGVyLWhpZGUnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IEVtcHR5UGF5bG9hZCBhcyBJU2l4QWxlcnRFbXB0eVBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4QWxlcnQgZXh0ZW5kcyBDb21wb25lbnRzLlNpeEFsZXJ0IHtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgYWxlcnQgb3BlbnMuIENhbGxpbmcgYGV2ZW50LnByZXZlbnREZWZhdWx0KClgIHdpbGwgcHJldmVudCBpdCBmcm9tIGJlaW5nIG9wZW5lZC5cbiAgICovXG4gICdzaXgtYWxlcnQtc2hvdyc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4QWxlcnRFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgYWZ0ZXIgdGhlIGFsZXJ0IG9wZW5zIGFuZCBhbGwgdHJhbnNpdGlvbnMgYXJlIGNvbXBsZXRlLlxuICAgKi9cbiAgJ3NpeC1hbGVydC1hZnRlci1zaG93JzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhBbGVydEVtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBhbGVydCBjbG9zZXMuIENhbGxpbmcgYGV2ZW50LnByZXZlbnREZWZhdWx0KClgIHdpbGwgcHJldmVudCBpdCBmcm9tIGJlaW5nIGNsb3NlZC5cbiAgICovXG4gICdzaXgtYWxlcnQtaGlkZSc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4QWxlcnRFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgYWZ0ZXIgdGhlIGFsZXJ0IGNsb3NlcyBhbmQgYWxsIHRyYW5zaXRpb25zIGFyZSBjb21wbGV0ZS5cbiAgICovXG4gICdzaXgtYWxlcnQtYWZ0ZXItaGlkZSc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4QWxlcnRFbXB0eVBheWxvYWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYWx0JywgJ2ltYWdlJywgJ2luaXRpYWxzJywgJ3NoYXBlJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtYXZhdGFyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhbHQnLCAnaW1hZ2UnLCAnaW5pdGlhbHMnLCAnc2hhcGUnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4QXZhdGFyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4QXZhdGFyIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhBdmF0YXIge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsncGlsbCcsICdwdWxzZScsICd0eXBlJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtYmFkZ2UnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ3BpbGwnLCAncHVsc2UnLCAndHlwZSddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhCYWRnZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeEJhZGdlIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhCYWRnZSB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjYXJldCcsICdjaXJjbGUnLCAnZGlzYWJsZWQnLCAnZG93bmxvYWQnLCAnaHJlZicsICdsb2FkaW5nJywgJ25hbWUnLCAncGlsbCcsICdyZXNldCcsICdzaXplJywgJ3N1Ym1pdCcsICd0YXJnZXQnLCAndHlwZScsICd2YWx1ZSddLFxuICBtZXRob2RzOiBbJ3NldEZvY3VzJywgJ3JlbW92ZUZvY3VzJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtYnV0dG9uJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjYXJldCcsICdjaXJjbGUnLCAnZGlzYWJsZWQnLCAnZG93bmxvYWQnLCAnaHJlZicsICdsb2FkaW5nJywgJ25hbWUnLCAncGlsbCcsICdyZXNldCcsICdzaXplJywgJ3N1Ym1pdCcsICd0YXJnZXQnLCAndHlwZScsICd2YWx1ZSddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhCdXR0b24ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzaXgtYnV0dG9uLWJsdXInLCAnc2l4LWJ1dHRvbi1mb2N1cyddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgRW1wdHlQYXlsb2FkIGFzIElTaXhCdXR0b25FbXB0eVBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4QnV0dG9uIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhCdXR0b24ge1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBidXR0b24gbG9zZXMgZm9jdXMuXG4gICAqL1xuICAnc2l4LWJ1dHRvbi1ibHVyJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhCdXR0b25FbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgYnV0dG9uIGdhaW5zIGZvY3VzLlxuICAgKi9cbiAgJ3NpeC1idXR0b24tZm9jdXMnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeEJ1dHRvbkVtcHR5UGF5bG9hZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LWNhcmQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4Q2FyZCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeENhcmQgZXh0ZW5kcyBDb21wb25lbnRzLlNpeENhcmQge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY2hlY2tlZCcsICdkaXNhYmxlZCcsICdlcnJvclRleHQnLCAnZXJyb3JUZXh0Q291bnQnLCAnaW5kZXRlcm1pbmF0ZScsICdpbnZhbGlkJywgJ2xhYmVsJywgJ25hbWUnLCAncmVxdWlyZWQnLCAndmFsdWUnXSxcbiAgbWV0aG9kczogWydzZXRGb2N1cycsICdyZW1vdmVGb2N1cyddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LWNoZWNrYm94JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjaGVja2VkJywgJ2Rpc2FibGVkJywgJ2Vycm9yVGV4dCcsICdlcnJvclRleHRDb3VudCcsICdpbmRldGVybWluYXRlJywgJ2ludmFsaWQnLCAnbGFiZWwnLCAnbmFtZScsICdyZXF1aXJlZCcsICd2YWx1ZSddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhDaGVja2JveCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3NpeC1jaGVja2JveC1ibHVyJywgJ3NpeC1jaGVja2JveC1jaGFuZ2UnLCAnc2l4LWNoZWNrYm94LWZvY3VzJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBFbXB0eVBheWxvYWQgYXMgSVNpeENoZWNrYm94RW1wdHlQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeENoZWNrYm94IGV4dGVuZHMgQ29tcG9uZW50cy5TaXhDaGVja2JveCB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGNvbnRyb2wgbG9zZXMgZm9jdXMuXG4gICAqL1xuICAnc2l4LWNoZWNrYm94LWJsdXInOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeENoZWNrYm94RW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGNvbnRyb2wncyBjaGVja2VkIHN0YXRlIGNoYW5nZXMuXG4gICAqL1xuICAnc2l4LWNoZWNrYm94LWNoYW5nZSc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4Q2hlY2tib3hFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgY29udHJvbCBnYWlucyBmb2N1cy5cbiAgICovXG4gICdzaXgtY2hlY2tib3gtZm9jdXMnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeENoZWNrYm94RW1wdHlQYXlsb2FkPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FsbG93ZWREYXRlcycsICdjbGVhcmFibGUnLCAnY2xvc2VPblNlbGVjdCcsICdjb250YWluaW5nRWxlbWVudCcsICdkYXRlRm9ybWF0JywgJ2RlYm91bmNlJywgJ2RlZmF1bHREYXRlJywgJ2Rpc2FibGVkJywgJ2Vycm9yVGV4dCcsICdlcnJvclRleHRDb3VudCcsICdob2lzdCcsICdpY29uUG9zaXRpb24nLCAnaW5saW5lJywgJ2ludmFsaWQnLCAnbGFiZWwnLCAnbG9jYWxlJywgJ21heCcsICdtaW4nLCAnbmFtZScsICdvcGVuJywgJ3BsYWNlaG9sZGVyJywgJ3BsYWNlbWVudCcsICdyZWFkb25seScsICdyZXF1aXJlZCcsICdzaXplJywgJ3R5cGUnLCAndmFsdWUnXSxcbiAgbWV0aG9kczogWydzZXRGb2N1cycsICdzZWxlY3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1kYXRlcGlja2VyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhbGxvd2VkRGF0ZXMnLCAnY2xlYXJhYmxlJywgJ2Nsb3NlT25TZWxlY3QnLCAnY29udGFpbmluZ0VsZW1lbnQnLCAnZGF0ZUZvcm1hdCcsICdkZWJvdW5jZScsICdkZWZhdWx0RGF0ZScsICdkaXNhYmxlZCcsICdlcnJvclRleHQnLCAnZXJyb3JUZXh0Q291bnQnLCAnaG9pc3QnLCAnaWNvblBvc2l0aW9uJywgJ2lubGluZScsICdpbnZhbGlkJywgJ2xhYmVsJywgJ2xvY2FsZScsICdtYXgnLCAnbWluJywgJ25hbWUnLCAnb3BlbicsICdwbGFjZWhvbGRlcicsICdwbGFjZW1lbnQnLCAncmVhZG9ubHknLCAncmVxdWlyZWQnLCAnc2l6ZScsICd0eXBlJywgJ3ZhbHVlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeERhdGVwaWNrZXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzaXgtZGF0ZXBpY2tlci1zZWxlY3QnLCAnc2l4LWRhdGVwaWNrZXItY2xlYXInLCAnc2l4LWRhdGVwaWNrZXItYmx1ciddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgU2l4RGF0ZXBpY2tlclNlbGVjdFBheWxvYWQgYXMgSVNpeERhdGVwaWNrZXJTaXhEYXRlcGlja2VyU2VsZWN0UGF5bG9hZCB9IGZyb20gJ0BzaXgtZ3JvdXAvdWktbGlicmFyeSc7XG5pbXBvcnQgdHlwZSB7IEVtcHR5UGF5bG9hZCBhcyBJU2l4RGF0ZXBpY2tlckVtcHR5UGF5bG9hZCB9IGZyb20gJ0BzaXgtZ3JvdXAvdWktbGlicmFyeSc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhEYXRlcGlja2VyIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhEYXRlcGlja2VyIHtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiBhIG9wdGlvbiBnb3Qgc2VsZWN0ZWQuXG4gICAqL1xuICAnc2l4LWRhdGVwaWNrZXItc2VsZWN0JzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhEYXRlcGlja2VyU2l4RGF0ZXBpY2tlclNlbGVjdFBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgY2xlYXIgYnV0dG9uIGlzIGFjdGl2YXRlZC5cbiAgICovXG4gICdzaXgtZGF0ZXBpY2tlci1jbGVhcic6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4RGF0ZXBpY2tlckVtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIGEgb3B0aW9uIGdvdCBzZWxlY3RlZC5cbiAgICovXG4gICdzaXgtZGF0ZXBpY2tlci1ibHVyJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhEYXRlcGlja2VyU2l4RGF0ZXBpY2tlclNlbGVjdFBheWxvYWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnaGFzQ29udGVudCcsICdpbmxpbmUnLCAnb3BlbicsICdzZWxlY3RhYmxlRW1wdHknLCAnc3VtbWFyeScsICdzdW1tYXJ5SWNvbicsICdzdW1tYXJ5SWNvblNpemUnXSxcbiAgbWV0aG9kczogWydzaG93JywgJ2hpZGUnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1kZXRhaWxzJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydkaXNhYmxlZCcsICdoYXNDb250ZW50JywgJ2lubGluZScsICdvcGVuJywgJ3NlbGVjdGFibGVFbXB0eScsICdzdW1tYXJ5JywgJ3N1bW1hcnlJY29uJywgJ3N1bW1hcnlJY29uU2l6ZSddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhEZXRhaWxzIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2l4LWRldGFpbHMtc2hvdycsICdzaXgtZGV0YWlscy1hZnRlci1zaG93JywgJ3NpeC1kZXRhaWxzLWhpZGUnLCAnc2l4LWRldGFpbHMtYWZ0ZXItaGlkZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgRW1wdHlQYXlsb2FkIGFzIElTaXhEZXRhaWxzRW1wdHlQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeERldGFpbHMgZXh0ZW5kcyBDb21wb25lbnRzLlNpeERldGFpbHMge1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBkZXRhaWxzIG9wZW5zLiBDYWxsaW5nIGBldmVudC5wcmV2ZW50RGVmYXVsdCgpYCB3aWxsIHByZXZlbnQgaXQgZnJvbSBiZWluZyBvcGVuZWQuXG4gICAqL1xuICAnc2l4LWRldGFpbHMtc2hvdyc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4RGV0YWlsc0VtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCBhZnRlciB0aGUgZGV0YWlscyBvcGVucyBhbmQgYWxsIHRyYW5zaXRpb25zIGFyZSBjb21wbGV0ZS5cbiAgICovXG4gICdzaXgtZGV0YWlscy1hZnRlci1zaG93JzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhEZXRhaWxzRW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGRldGFpbHMgY2xvc2VzLiBDYWxsaW5nIGBldmVudC5wcmV2ZW50RGVmYXVsdCgpYCB3aWxsIHByZXZlbnQgaXQgZnJvbSBiZWluZyBjbG9zZWQuXG4gICAqL1xuICAnc2l4LWRldGFpbHMtaGlkZSc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4RGV0YWlsc0VtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCBhZnRlciB0aGUgZGV0YWlscyBjbG9zZXMgYW5kIGFsbCB0cmFuc2l0aW9ucyBhcmUgY29tcGxldGUuXG4gICAqL1xuICAnc2l4LWRldGFpbHMtYWZ0ZXItaGlkZSc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4RGV0YWlsc0VtcHR5UGF5bG9hZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydsYWJlbCcsICdub0hlYWRlcicsICdvcGVuJ10sXG4gIG1ldGhvZHM6IFsnc2hvdycsICdoaWRlJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtZGlhbG9nJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydsYWJlbCcsICdub0hlYWRlcicsICdvcGVuJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeERpYWxvZyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3NpeC1kaWFsb2ctc2hvdycsICdzaXgtZGlhbG9nLWFmdGVyLXNob3cnLCAnc2l4LWRpYWxvZy1oaWRlJywgJ3NpeC1kaWFsb2ctYWZ0ZXItaGlkZScsICdzaXgtZGlhbG9nLWluaXRpYWwtZm9jdXMnLCAnc2l4LWRpYWxvZy1vdmVybGF5LWRpc21pc3MnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IEVtcHR5UGF5bG9hZCBhcyBJU2l4RGlhbG9nRW1wdHlQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeERpYWxvZyBleHRlbmRzIENvbXBvbmVudHMuU2l4RGlhbG9nIHtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgZGlhbG9nIG9wZW5zLiBDYWxsaW5nIGBldmVudC5wcmV2ZW50RGVmYXVsdCgpYCB3aWxsIHByZXZlbnQgaXQgZnJvbSBiZWluZyBvcGVuZWQuXG4gICAqL1xuICAnc2l4LWRpYWxvZy1zaG93JzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhEaWFsb2dFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgYWZ0ZXIgdGhlIGRpYWxvZyBvcGVucyBhbmQgYWxsIHRyYW5zaXRpb25zIGFyZSBjb21wbGV0ZS5cbiAgICovXG4gICdzaXgtZGlhbG9nLWFmdGVyLXNob3cnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeERpYWxvZ0VtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBkaWFsb2cgY2xvc2VzLiBDYWxsaW5nIGBldmVudC5wcmV2ZW50RGVmYXVsdCgpYCB3aWxsIHByZXZlbnQgaXQgZnJvbSBiZWluZyBjbG9zZWQuXG4gICAqL1xuICAnc2l4LWRpYWxvZy1oaWRlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhEaWFsb2dFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgYWZ0ZXIgdGhlIGRpYWxvZyBjbG9zZXMgYW5kIGFsbCB0cmFuc2l0aW9ucyBhcmUgY29tcGxldGUuXG4gICAqL1xuICAnc2l4LWRpYWxvZy1hZnRlci1oaWRlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhEaWFsb2dFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgZGlhbG9nIG9wZW5zIGFuZCB0aGUgcGFuZWwgZ2FpbnMgZm9jdXMuIENhbGxpbmcgYGV2ZW50LnByZXZlbnREZWZhdWx0KClgIHdpbGwgcHJldmVudCBmb2N1cyBhbmRcbmFsbG93IHlvdSB0byBzZXQgaXQgb24gYSBkaWZmZXJlbnQgZWxlbWVudCBpbiB0aGUgZGlhbG9nLCBzdWNoIGFzIGFuIGlucHV0IG9yIGJ1dHRvbi5cbiAgICovXG4gICdzaXgtZGlhbG9nLWluaXRpYWwtZm9jdXMnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeERpYWxvZ0VtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBvdmVybGF5IGlzIGNsaWNrZWQuIENhbGxpbmcgYGV2ZW50LnByZXZlbnREZWZhdWx0KClgIHdpbGwgcHJldmVudCB0aGUgZGlhbG9nIGZyb20gY2xvc2luZy5cbiAgICovXG4gICdzaXgtZGlhbG9nLW92ZXJsYXktZGlzbWlzcyc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4RGlhbG9nRW1wdHlQYXlsb2FkPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NvbnRhaW5lZCcsICdsYWJlbCcsICdub0hlYWRlcicsICdvcGVuJywgJ3BsYWNlbWVudCddLFxuICBtZXRob2RzOiBbJ3Nob3cnLCAnaGlkZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LWRyYXdlcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY29udGFpbmVkJywgJ2xhYmVsJywgJ25vSGVhZGVyJywgJ29wZW4nLCAncGxhY2VtZW50J10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeERyYXdlciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3NpeC1kcmF3ZXItc2hvdycsICdzaXgtZHJhd2VyLWFmdGVyLXNob3cnLCAnc2l4LWRyYXdlci1oaWRlJywgJ3NpeC1kcmF3ZXItYWZ0ZXItaGlkZScsICdzaXgtZHJhd2VyLWluaXRpYWwtZm9jdXMnLCAnc2l4LWRyYXdlci1vdmVybGF5LWRpc21pc3MnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IEVtcHR5UGF5bG9hZCBhcyBJU2l4RHJhd2VyRW1wdHlQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeERyYXdlciBleHRlbmRzIENvbXBvbmVudHMuU2l4RHJhd2VyIHtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgZHJhd2VyIG9wZW5zLiBDYWxsaW5nIGBldmVudC5wcmV2ZW50RGVmYXVsdCgpYCB3aWxsIHByZXZlbnQgaXQgZnJvbSBiZWluZyBvcGVuZWQuXG4gICAqL1xuICAnc2l4LWRyYXdlci1zaG93JzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhEcmF3ZXJFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgYWZ0ZXIgdGhlIGRyYXdlciBvcGVucyBhbmQgYWxsIHRyYW5zaXRpb25zIGFyZSBjb21wbGV0ZS5cbiAgICovXG4gICdzaXgtZHJhd2VyLWFmdGVyLXNob3cnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeERyYXdlckVtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBkcmF3ZXIgY2xvc2VzLiBDYWxsaW5nIGBldmVudC5wcmV2ZW50RGVmYXVsdCgpYCB3aWxsIHByZXZlbnQgaXQgZnJvbSBiZWluZyBjbG9zZWQuXG4gICAqL1xuICAnc2l4LWRyYXdlci1oaWRlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhEcmF3ZXJFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgYWZ0ZXIgdGhlIGRyYXdlciBjbG9zZXMgYW5kIGFsbCB0cmFuc2l0aW9ucyBhcmUgY29tcGxldGUuXG4gICAqL1xuICAnc2l4LWRyYXdlci1hZnRlci1oaWRlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhEcmF3ZXJFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgZHJhd2VyIG9wZW5zIGFuZCB0aGUgcGFuZWwgZ2FpbnMgZm9jdXMuIENhbGxpbmcgYGV2ZW50LnByZXZlbnREZWZhdWx0KClgIHdpbGwgcHJldmVudCBmb2N1cyBhbmRcbmFsbG93IHlvdSB0byBzZXQgaXQgb24gYSBkaWZmZXJlbnQgZWxlbWVudCBpbiB0aGUgZHJhd2VyLCBzdWNoIGFzIGFuIGlucHV0IG9yIGJ1dHRvbi5cbiAgICovXG4gICdzaXgtZHJhd2VyLWluaXRpYWwtZm9jdXMnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeERyYXdlckVtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBvdmVybGF5IGlzIGNsaWNrZWQuIENhbGxpbmcgYGV2ZW50LnByZXZlbnREZWZhdWx0KClgIHdpbGwgcHJldmVudCB0aGUgZHJhd2VyIGZyb20gY2xvc2luZy5cbiAgICovXG4gICdzaXgtZHJhd2VyLW92ZXJsYXktZGlzbWlzcyc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4RHJhd2VyRW1wdHlQYXlsb2FkPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FzeW5jRmlsdGVyJywgJ2F1dG9mb2N1c0ZpbHRlcicsICdjbG9zZU9uU2VsZWN0JywgJ2NvbnRhaW5pbmdFbGVtZW50JywgJ2Rpc2FibGVIaWRlT25FbnRlckFuZFNwYWNlJywgJ2Rpc3RhbmNlJywgJ2ZpbHRlcicsICdmaWx0ZXJEZWJvdW5jZScsICdmaWx0ZXJQbGFjZWhvbGRlcicsICdob2lzdCcsICdtYXRjaFRyaWdnZXJXaWR0aCcsICdvcGVuJywgJ29wdGlvbnMnLCAncGxhY2VtZW50JywgJ3NraWRkaW5nJywgJ3ZpcnR1YWxTY3JvbGwnXSxcbiAgbWV0aG9kczogWydzaG93JywgJ2hpZGUnLCAncmVwb3NpdGlvbiddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LWRyb3Bkb3duJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhc3luY0ZpbHRlcicsICdhdXRvZm9jdXNGaWx0ZXInLCAnY2xvc2VPblNlbGVjdCcsICdjb250YWluaW5nRWxlbWVudCcsICdkaXNhYmxlSGlkZU9uRW50ZXJBbmRTcGFjZScsICdkaXN0YW5jZScsICdmaWx0ZXInLCAnZmlsdGVyRGVib3VuY2UnLCAnZmlsdGVyUGxhY2Vob2xkZXInLCAnaG9pc3QnLCAnbWF0Y2hUcmlnZ2VyV2lkdGgnLCAnb3BlbicsICdvcHRpb25zJywgJ3BsYWNlbWVudCcsICdza2lkZGluZycsICd2aXJ0dWFsU2Nyb2xsJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeERyb3Bkb3duIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2l4LWRyb3Bkb3duLXNob3cnLCAnc2l4LWRyb3Bkb3duLWFmdGVyLXNob3cnLCAnc2l4LWRyb3Bkb3duLWhpZGUnLCAnc2l4LWRyb3Bkb3duLWFmdGVyLWhpZGUnLCAnc2l4LWRyb3Bkb3duLWF1dG8tZmlsdGVyLWZpcmVkJywgJ3NpeC1hc3luYy1maWx0ZXItZmlyZWQnLCAnc2l4LWRyb3Bkb3duLXNjcm9sbCddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgRW1wdHlQYXlsb2FkIGFzIElTaXhEcm9wZG93bkVtcHR5UGF5bG9hZCB9IGZyb20gJ0BzaXgtZ3JvdXAvdWktbGlicmFyeSc7XG5pbXBvcnQgdHlwZSB7IFNpeERyb3Bkb3duQXV0b0ZpbHRlclBheWxvYWQgYXMgSVNpeERyb3Bkb3duU2l4RHJvcGRvd25BdXRvRmlsdGVyUGF5bG9hZCB9IGZyb20gJ0BzaXgtZ3JvdXAvdWktbGlicmFyeSc7XG5pbXBvcnQgdHlwZSB7IFNpeERyb3Bkb3duQXN5bmNGaWx0ZXJQYXlsb2FkIGFzIElTaXhEcm9wZG93blNpeERyb3Bkb3duQXN5bmNGaWx0ZXJQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcbmltcG9ydCB0eXBlIHsgU2l4RHJvcGRvd25TY3JvbGxQYXlsb2FkIGFzIElTaXhEcm9wZG93blNpeERyb3Bkb3duU2Nyb2xsUGF5bG9hZCB9IGZyb20gJ0BzaXgtZ3JvdXAvdWktbGlicmFyeSc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhEcm9wZG93biBleHRlbmRzIENvbXBvbmVudHMuU2l4RHJvcGRvd24ge1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBkcm9wZG93biBvcGVucy4gQ2FsbGluZyBgZXZlbnQucHJldmVudERlZmF1bHQoKWAgd2lsbCBwcmV2ZW50IGl0IGZyb20gYmVpbmcgb3BlbmVkLlxuICAgKi9cbiAgJ3NpeC1kcm9wZG93bi1zaG93JzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhEcm9wZG93bkVtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCBhZnRlciB0aGUgZHJvcGRvd24gb3BlbnMgYW5kIGFsbCB0cmFuc2l0aW9ucyBhcmUgY29tcGxldGUuXG4gICAqL1xuICAnc2l4LWRyb3Bkb3duLWFmdGVyLXNob3cnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeERyb3Bkb3duRW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGRyb3Bkb3duIGNsb3Nlcy4gQ2FsbGluZyBgZXZlbnQucHJldmVudERlZmF1bHQoKWAgd2lsbCBwcmV2ZW50IGl0IGZyb20gYmVpbmcgY2xvc2VkLlxuICAgKi9cbiAgJ3NpeC1kcm9wZG93bi1oaWRlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhEcm9wZG93bkVtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCBhZnRlciB0aGUgZHJvcGRvd24gY2xvc2VzIGFuZCBhbGwgdHJhbnNpdGlvbnMgYXJlIGNvbXBsZXRlLlxuICAgKi9cbiAgJ3NpeC1kcm9wZG93bi1hZnRlci1oaWRlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhEcm9wZG93bkVtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBhdXRvIGZpbHRlciBpcyB0cmlnZ2VyZWRcbiAgICovXG4gICdzaXgtZHJvcGRvd24tYXV0by1maWx0ZXItZmlyZWQnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeERyb3Bkb3duU2l4RHJvcGRvd25BdXRvRmlsdGVyUGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBhc3luYyBmaWx0ZXIgaXMgdHJpZ2dlcmVkXG4gICAqL1xuICAnc2l4LWFzeW5jLWZpbHRlci1maXJlZCc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4RHJvcGRvd25TaXhEcm9wZG93bkFzeW5jRmlsdGVyUGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSB1c2VyIHNjcm9sbHMgaW5zaWRlIGRyb3Bkb3duIHBhbmVsLlxuICAgKi9cbiAgJ3NpeC1kcm9wZG93bi1zY3JvbGwnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeERyb3Bkb3duU2l4RHJvcGRvd25TY3JvbGxQYXlsb2FkPj47XG59XG5cblxuQFByb3h5Q21wKHtcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtZXJyb3InLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4RXJyb3Ige1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhFcnJvciBleHRlbmRzIENvbXBvbmVudHMuU2l4RXJyb3Ige31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY3VzdG9tRGVzY3JpcHRpb24nLCAnY3VzdG9tSWNvbicsICdjdXN0b21UaXRsZScsICdlcnJvckNvZGUnLCAnbGFuZ3VhZ2UnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1lcnJvci1wYWdlJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjdXN0b21EZXNjcmlwdGlvbicsICdjdXN0b21JY29uJywgJ2N1c3RvbVRpdGxlJywgJ2Vycm9yQ29kZScsICdsYW5ndWFnZSddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhFcnJvclBhZ2Uge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhFcnJvclBhZ2UgZXh0ZW5kcyBDb21wb25lbnRzLlNpeEVycm9yUGFnZSB7fVxuXG5cbkBQcm94eUNtcCh7XG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LWZpbGUtbGlzdCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhGaWxlTGlzdCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeEZpbGVMaXN0IGV4dGVuZHMgQ29tcG9uZW50cy5TaXhGaWxlTGlzdCB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydkYXRlJywgJ2lkZW50aWZpZXInLCAnbmFtZScsICdub2RlbGV0ZScsICdub2Rvd25sb2FkJywgJ3NpemUnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1maWxlLWxpc3QtaXRlbScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnZGF0ZScsICdpZGVudGlmaWVyJywgJ25hbWUnLCAnbm9kZWxldGUnLCAnbm9kb3dubG9hZCcsICdzaXplJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeEZpbGVMaXN0SXRlbSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3NpeC1maWxlLWxpc3QtaXRlbS1kb3dubG9hZCcsICdzaXgtZmlsZS1saXN0LWl0ZW0tcmVtb3ZlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBTaXhGaWxlTGlzdERvd25sb2FkUGF5bG9hZCBhcyBJU2l4RmlsZUxpc3RJdGVtU2l4RmlsZUxpc3REb3dubG9hZFBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuaW1wb3J0IHR5cGUgeyBTaXhGaWxlTGlzdFJlbW92ZVBheWxvYWQgYXMgSVNpeEZpbGVMaXN0SXRlbVNpeEZpbGVMaXN0UmVtb3ZlUGF5bG9hZCB9IGZyb20gJ0BzaXgtZ3JvdXAvdWktbGlicmFyeSc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhGaWxlTGlzdEl0ZW0gZXh0ZW5kcyBDb21wb25lbnRzLlNpeEZpbGVMaXN0SXRlbSB7XG4gIC8qKlxuICAgKiBUcmlnZ2VyZWQgb24gZmlsZSBkb3dubG9hZC5cbiAgICovXG4gICdzaXgtZmlsZS1saXN0LWl0ZW0tZG93bmxvYWQnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeEZpbGVMaXN0SXRlbVNpeEZpbGVMaXN0RG93bmxvYWRQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBUcmlnZ2VyZWQgb24gZmlsZSByZW1vdmUuXG4gICAqL1xuICAnc2l4LWZpbGUtbGlzdC1pdGVtLXJlbW92ZSc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4RmlsZUxpc3RJdGVtU2l4RmlsZUxpc3RSZW1vdmVQYXlsb2FkPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FjY2VwdCcsICdjb21wYWN0JywgJ2Rpc2FibGVkJywgJ2Vycm9yVGV4dCcsICdpbnZhbGlkJywgJ2xhYmVsJywgJ21heEZpbGVTaXplJywgJ211bHRpcGxlJywgJ3VwbG9hZGluZyddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LWZpbGUtdXBsb2FkJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhY2NlcHQnLCAnY29tcGFjdCcsICdkaXNhYmxlZCcsICdlcnJvclRleHQnLCAnaW52YWxpZCcsICdsYWJlbCcsICdtYXhGaWxlU2l6ZScsICdtdWx0aXBsZScsICd1cGxvYWRpbmcnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4RmlsZVVwbG9hZCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3NpeC1maWxlLXVwbG9hZC1zdWNjZXNzJywgJ3NpeC1maWxlLXVwbG9hZC1mYWlsdXJlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBTaXhGaWxlVXBsb2FkU3VjY2Vzc1BheWxvYWQgYXMgSVNpeEZpbGVVcGxvYWRTaXhGaWxlVXBsb2FkU3VjY2Vzc1BheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuaW1wb3J0IHR5cGUgeyBTaXhGaWxlVXBsb2FkRmFpbHVyZVBheWxvYWQgYXMgSVNpeEZpbGVVcGxvYWRTaXhGaWxlVXBsb2FkRmFpbHVyZVBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4RmlsZVVwbG9hZCBleHRlbmRzIENvbXBvbmVudHMuU2l4RmlsZVVwbG9hZCB7XG4gIC8qKlxuICAgKiBUcmlnZ2VycyB3aGVuIGEgZmlsZSBpcyBhZGRlZC5cbiAgICovXG4gICdzaXgtZmlsZS11cGxvYWQtc3VjY2Vzcyc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4RmlsZVVwbG9hZFNpeEZpbGVVcGxvYWRTdWNjZXNzUGF5bG9hZD4+O1xuICAvKipcbiAgICogVHJpZ2dlcnMgd2hlbiBhbiB1cGxvYWRlZCBmaWxlIGRvZXNuJ3QgbWF0Y2ggTUlNRSB0eXBlIG9yIG1heCBmaWxlIHNpemUuXG4gICAqL1xuICAnc2l4LWZpbGUtdXBsb2FkLWZhaWx1cmUnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeEZpbGVVcGxvYWRTaXhGaWxlVXBsb2FkRmFpbHVyZVBheWxvYWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1mb290ZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4Rm9vdGVyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4Rm9vdGVyIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhGb290ZXIge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnaGVscFRleHQnLCAnbGFiZWwnLCAncmVxdWlyZWQnLCAnc2l6ZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LWdyb3VwLWxhYmVsJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydkaXNhYmxlZCcsICdoZWxwVGV4dCcsICdsYWJlbCcsICdyZXF1aXJlZCcsICdzaXplJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeEdyb3VwTGFiZWwge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhHcm91cExhYmVsIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhHcm91cExhYmVsIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NsaWNrYWJsZUxvZ28nLCAnY3VzdG9tJywgJ2hpZGVIYW1idXJnZXJNZW51JywgJ2xvZ28nLCAnb3BlbkhhbWJ1cmdlck1lbnUnLCAnb3BlblNlYXJjaCcsICdzaGlmdENvbnRlbnQnXSxcbiAgbWV0aG9kczogWydzZXRTZWFyY2hPcGVuU3RhdGUnLCAnZ2V0SXNTZWFyY2hPcGVuJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtaGVhZGVyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjbGlja2FibGVMb2dvJywgJ2N1c3RvbScsICdoaWRlSGFtYnVyZ2VyTWVudScsICdsb2dvJywgJ29wZW5IYW1idXJnZXJNZW51JywgJ29wZW5TZWFyY2gnLCAnc2hpZnRDb250ZW50J10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeEhlYWRlciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3NpeC1oZWFkZXItYXBwLW5hbWUtY2xpY2tlZCcsICdzaXgtaGVhZGVyLWFwcC1zd2l0Y2hlci1zZWxlY3QnLCAnc2l4LWhlYWRlci1wcm9maWxlLXNlbGVjdCcsICdzaXgtaGVhZGVyLWhhbWJ1cmdlci1tZW51LWNsaWNrZWQnLCAnc2l4LWhlYWRlci1sb2dvLWNsaWNrZWQnLCAnc2l4LWhlYWRlci1zZWFyY2gtZmllbGQtdG9nZ2xlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBFbXB0eVBheWxvYWQgYXMgSVNpeEhlYWRlckVtcHR5UGF5bG9hZCB9IGZyb20gJ0BzaXgtZ3JvdXAvdWktbGlicmFyeSc7XG5pbXBvcnQgdHlwZSB7IFNpeEhlYWRlckFwcFN3aXRjaGVyU2VsZWN0UGF5bG9hZCBhcyBJU2l4SGVhZGVyU2l4SGVhZGVyQXBwU3dpdGNoZXJTZWxlY3RQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcbmltcG9ydCB0eXBlIHsgU2l4SGVhZGVyUHJvZmlsZVNlbGVjdFBheWxvYWQgYXMgSVNpeEhlYWRlclNpeEhlYWRlclByb2ZpbGVTZWxlY3RQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcbmltcG9ydCB0eXBlIHsgU2l4SGVhZGVyU2VhcmNoRmllbGRUb2dnbGUgYXMgSVNpeEhlYWRlclNpeEhlYWRlclNlYXJjaEZpZWxkVG9nZ2xlIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeEhlYWRlciBleHRlbmRzIENvbXBvbmVudHMuU2l4SGVhZGVyIHtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgbmFtZSBvZiB0aGUgc2VsZWN0ZWQgYXBwIGlzIGNsaWNrZWQuIEBkZXByZWNhdGVkIFVzZSBzaXgtaGVhZGVyIGBjdXN0b21gIHByb3BlcnR5IHdpdGggYHNpeC1oZWFkZXItZHJvcGRvd24taXRlbWAgYW5kIGBzaXgtaGVhZGVyLW1lbnUtYnV0dG9uYCBpbnN0ZWFkXG4gICAqL1xuICAnc2l4LWhlYWRlci1hcHAtbmFtZS1jbGlja2VkJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhIZWFkZXJFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiBhIG1lbnUgaXRlbSBpcyBpbiB0aGUgYXBwIHN3aXRjaGVyIG1lbnUgaXMgc2VsZWN0ZWQuIEBkZXByZWNhdGVkIFVzZSBzaXgtaGVhZGVyIGBjdXN0b21gIHByb3BlcnR5IHdpdGggYHNpeC1oZWFkZXItZHJvcGRvd24taXRlbWAgYW5kIGBzaXgtaGVhZGVyLW1lbnUtYnV0dG9uYCBpbnN0ZWFkXG4gICAqL1xuICAnc2l4LWhlYWRlci1hcHAtc3dpdGNoZXItc2VsZWN0JzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhIZWFkZXJTaXhIZWFkZXJBcHBTd2l0Y2hlclNlbGVjdFBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiBhIG1lbnUgaXRlbSBpcyBpbiB0aGUgcHJvZmlsZSBtZW51IGlzIHNlbGVjdGVkLiBAZGVwcmVjYXRlZCBVc2Ugc2l4LWhlYWRlciBgY3VzdG9tYCBwcm9wZXJ0eSB3aXRoIGBzaXgtaGVhZGVyLWRyb3Bkb3duLWl0ZW1gIGFuZCBgc2l4LWF2YXRhcmAgaW5zdGVhZFxuICAgKi9cbiAgJ3NpeC1oZWFkZXItcHJvZmlsZS1zZWxlY3QnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeEhlYWRlclNpeEhlYWRlclByb2ZpbGVTZWxlY3RQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGhhbWJ1cmdlciBtZW51IGlzIGNsaWNrZWQuIEBkZXByZWNhdGVkIFVzZSBzaXgtaGVhZGVyIGBjdXN0b21gIHByb3BlcnR5IGluc3RlYWRcbiAgICovXG4gICdzaXgtaGVhZGVyLWhhbWJ1cmdlci1tZW51LWNsaWNrZWQnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeEhlYWRlckVtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBoZWFkZXIgbG9nbyBpcyBjbGlja2VkLiBAZGVwcmVjYXRlZCBVc2Ugc2l4LWhlYWRlciBgY3VzdG9tYCBwcm9wZXJ0eSBpbnN0ZWFkXG4gICAqL1xuICAnc2l4LWhlYWRlci1sb2dvLWNsaWNrZWQnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeEhlYWRlckVtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHNlYXJjaCBmaWVsZCBpcyB0b2dnbGVkLiBAZGVwcmVjYXRlZCBVc2Ugc2l4LWhlYWRlciBgY3VzdG9tYCBwcm9wZXJ0eSBpbnN0ZWFkXG4gICAqL1xuICAnc2l4LWhlYWRlci1zZWFyY2gtZmllbGQtdG9nZ2xlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhIZWFkZXJTaXhIZWFkZXJTZWFyY2hGaWVsZFRvZ2dsZT4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LWhlYWRlci1kcm9wZG93bi1pdGVtJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogW10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeEhlYWRlckRyb3Bkb3duSXRlbSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeEhlYWRlckRyb3Bkb3duSXRlbSBleHRlbmRzIENvbXBvbmVudHMuU2l4SGVhZGVyRHJvcGRvd25JdGVtIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2FjdGl2ZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LWhlYWRlci1pdGVtJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhY3RpdmUnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4SGVhZGVySXRlbSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeEhlYWRlckl0ZW0gZXh0ZW5kcyBDb21wb25lbnRzLlNpeEhlYWRlckl0ZW0ge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaWNvbiddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LWhlYWRlci1tZW51LWJ1dHRvbicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnaWNvbiddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhIZWFkZXJNZW51QnV0dG9uIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4SGVhZGVyTWVudUJ1dHRvbiBleHRlbmRzIENvbXBvbmVudHMuU2l4SGVhZGVyTWVudUJ1dHRvbiB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydmaWxsZWQnLCAnc2l6ZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LWljb24nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ZpbGxlZCcsICdzaXplJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeEljb24ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhJY29uIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhJY29uIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2Rvd25sb2FkJywgJ2hyZWYnLCAnaHRtbCcsICdsYWJlbCcsICduYW1lJywgJ3NpemUnLCAndGFyZ2V0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtaWNvbi1idXR0b24nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2Rvd25sb2FkJywgJ2hyZWYnLCAnaHRtbCcsICdsYWJlbCcsICduYW1lJywgJ3NpemUnLCAndGFyZ2V0J10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeEljb25CdXR0b24ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhJY29uQnV0dG9uIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhJY29uQnV0dG9uIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2F1dG9jYXBpdGFsaXplJywgJ2F1dG9jb21wbGV0ZScsICdhdXRvY29ycmVjdCcsICdhdXRvZm9jdXMnLCAnY2xlYXJhYmxlJywgJ2Rpc2FibGVkJywgJ2Ryb3Bkb3duU2VhcmNoJywgJ2Vycm9yVGV4dCcsICdlcnJvclRleHRDb3VudCcsICdoZWxwVGV4dCcsICdpbnB1dG1vZGUnLCAnaW52YWxpZCcsICdsYWJlbCcsICdsaW5lJywgJ21heCcsICdtYXhsZW5ndGgnLCAnbWluJywgJ21pbmxlbmd0aCcsICduYW1lJywgJ3BhdHRlcm4nLCAncGlsbCcsICdwbGFjZWhvbGRlcicsICdyZWFkb25seScsICdyZXF1aXJlZCcsICdzaXplJywgJ3NwZWxsY2hlY2snLCAnc3RlcCcsICd0b2dnbGVQYXNzd29yZCcsICd0eXBlJywgJ3ZhbHVlJ10sXG4gIG1ldGhvZHM6IFsnc2V0Rm9jdXMnLCAncmVtb3ZlRm9jdXMnLCAnc2VsZWN0JywgJ3NldFNlbGVjdGlvblJhbmdlJywgJ2dldFNlbGVjdGlvblJhbmdlJywgJ3NldFJhbmdlVGV4dCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LWlucHV0JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhdXRvY2FwaXRhbGl6ZScsICdhdXRvY29tcGxldGUnLCAnYXV0b2NvcnJlY3QnLCAnYXV0b2ZvY3VzJywgJ2NsZWFyYWJsZScsICdkaXNhYmxlZCcsICdkcm9wZG93blNlYXJjaCcsICdlcnJvclRleHQnLCAnZXJyb3JUZXh0Q291bnQnLCAnaGVscFRleHQnLCAnaW5wdXRtb2RlJywgJ2ludmFsaWQnLCAnbGFiZWwnLCAnbGluZScsICdtYXgnLCAnbWF4bGVuZ3RoJywgJ21pbicsICdtaW5sZW5ndGgnLCAnbmFtZScsICdwYXR0ZXJuJywgJ3BpbGwnLCAncGxhY2Vob2xkZXInLCAncmVhZG9ubHknLCAncmVxdWlyZWQnLCAnc2l6ZScsICdzcGVsbGNoZWNrJywgJ3N0ZXAnLCAndG9nZ2xlUGFzc3dvcmQnLCAndHlwZScsICd2YWx1ZSddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhJbnB1dCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3NpeC1pbnB1dC1jaGFuZ2UnLCAnc2l4LWlucHV0LWNsZWFyJywgJ3NpeC1pbnB1dC1pbnB1dCcsICdzaXgtaW5wdXQtZm9jdXMnLCAnc2l4LWlucHV0LWJsdXInXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IEVtcHR5UGF5bG9hZCBhcyBJU2l4SW5wdXRFbXB0eVBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4SW5wdXQgZXh0ZW5kcyBDb21wb25lbnRzLlNpeElucHV0IHtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgY29udHJvbCdzIHZhbHVlIGNoYW5nZXMuIEFjY2VzcyB0aGUgbmV3IHZhbHVlIHZpYSBldmVudC50YXJnZXQudmFsdWUuXG4gICAqL1xuICAnc2l4LWlucHV0LWNoYW5nZSc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4SW5wdXRFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgY2xlYXIgYnV0dG9uIGlzIGFjdGl2YXRlZC5cbiAgICovXG4gICdzaXgtaW5wdXQtY2xlYXInOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeElucHV0RW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGNvbnRyb2wgcmVjZWl2ZXMgaW5wdXQuIEFjY2VzcyB0aGUgbmV3IHZhbHVlIHZpYSBldmVudC50YXJnZXQudmFsdWUuXG4gICAqL1xuICAnc2l4LWlucHV0LWlucHV0JzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhJbnB1dEVtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBjb250cm9sIGdhaW5zIGZvY3VzLlxuICAgKi9cbiAgJ3NpeC1pbnB1dC1mb2N1cyc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4SW5wdXRFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgY29udHJvbCBsb3NlcyBmb2N1cy4gQWNjZXNzIHRoZSBuZXcgdmFsdWUgdmlhIGV2ZW50LnRhcmdldC52YWx1ZS5cbiAgICovXG4gICdzaXgtaW5wdXQtYmx1cic6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4SW5wdXRFbXB0eVBheWxvYWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZGVib3VuY2UnLCAnaW50ZXJ2YWwnLCAnaXRlbXMnLCAnbWF4JywgJ21pbicsICdwYWRkZWQnLCAncGFkZGluZ0NoYXInLCAncGFkZGluZ0RpcmVjdGlvbicsICdwYWRkaW5nTGVuZ3RoJywgJ3JvdW5kdHJpcCcsICdzdGVwJywgJ3RpbWVvdXQnLCAndHlwZScsICd2YWx1ZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LWl0ZW0tcGlja2VyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydkZWJvdW5jZScsICdpbnRlcnZhbCcsICdpdGVtcycsICdtYXgnLCAnbWluJywgJ3BhZGRlZCcsICdwYWRkaW5nQ2hhcicsICdwYWRkaW5nRGlyZWN0aW9uJywgJ3BhZGRpbmdMZW5ndGgnLCAncm91bmR0cmlwJywgJ3N0ZXAnLCAndGltZW91dCcsICd0eXBlJywgJ3ZhbHVlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeEl0ZW1QaWNrZXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzaXgtaXRlbS1waWNrZXItY2hhbmdlJywgJ3NpeC1pdGVtLXBpY2tlci1jaGFuZ2UtZGVib3VuY2VkJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBTaXhJdGVtUGlja2VyQ2hhbmdlUGF5bG9hZCBhcyBJU2l4SXRlbVBpY2tlclNpeEl0ZW1QaWNrZXJDaGFuZ2VQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeEl0ZW1QaWNrZXIgZXh0ZW5kcyBDb21wb25lbnRzLlNpeEl0ZW1QaWNrZXIge1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBpdGVtIHBpY2tlcidzIHZhbHVlIGNoYW5nZXNcbiAgICovXG4gICdzaXgtaXRlbS1waWNrZXItY2hhbmdlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhJdGVtUGlja2VyU2l4SXRlbVBpY2tlckNoYW5nZVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgaXRlbSBwaWNrZXIncyB2YWx1ZSBjaGFuZ2VzLCBidXQgZGVib3VuY2VkXG4gICAqL1xuICAnc2l4LWl0ZW0tcGlja2VyLWNoYW5nZS1kZWJvdW5jZWQnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeEl0ZW1QaWNrZXJTaXhJdGVtUGlja2VyQ2hhbmdlUGF5bG9hZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydsYW5ndWFnZXMnLCAnc2VsZWN0ZWQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1sYW5ndWFnZS1zd2l0Y2hlcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnbGFuZ3VhZ2VzJywgJ3NlbGVjdGVkJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeExhbmd1YWdlU3dpdGNoZXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzaXgtbGFuZ3VhZ2Utc3dpdGNoZXItY2hhbmdlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBTaXhMYW5ndWFnZVN3aXRjaGVyQ2hhbmdlUGF5bG9hZCBhcyBJU2l4TGFuZ3VhZ2VTd2l0Y2hlclNpeExhbmd1YWdlU3dpdGNoZXJDaGFuZ2VQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeExhbmd1YWdlU3dpdGNoZXIgZXh0ZW5kcyBDb21wb25lbnRzLlNpeExhbmd1YWdlU3dpdGNoZXIge1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBsYW5ndWFnZSBzd2l0Y2hlcnMgdmFsdWUgY2hhbmdlc1xuICAgKi9cbiAgJ3NpeC1sYW5ndWFnZS1zd2l0Y2hlci1jaGFuZ2UnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeExhbmd1YWdlU3dpdGNoZXJTaXhMYW5ndWFnZVN3aXRjaGVyQ2hhbmdlUGF5bG9hZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjb2x1bW5zJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtbGF5b3V0LWdyaWQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NvbHVtbnMnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4TGF5b3V0R3JpZCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeExheW91dEdyaWQgZXh0ZW5kcyBDb21wb25lbnRzLlNpeExheW91dEdyaWQge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYnJhbmQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1sb2dvJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydicmFuZCddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhMb2dvIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4TG9nbyBleHRlbmRzIENvbXBvbmVudHMuU2l4TG9nbyB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydwYWRkZWQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1tYWluLWNvbnRhaW5lcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsncGFkZGVkJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeE1haW5Db250YWluZXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhNYWluQ29udGFpbmVyIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhNYWluQ29udGFpbmVyIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2Rpc2FibGVLZXlib2FyZEhhbmRsaW5nJywgJ2l0ZW1TaXplJywgJ2l0ZW1zJywgJ2l0ZW1zU2hvd24nLCAncmVtb3ZlQm94U2hhZG93JywgJ3Njcm9sbGluZ0RlYm91bmNlJywgJ3ZpcnR1YWxTY3JvbGwnXSxcbiAgbWV0aG9kczogWyd0eXBlVG9TZWxlY3QnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1tZW51JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydkaXNhYmxlS2V5Ym9hcmRIYW5kbGluZycsICdpdGVtU2l6ZScsICdpdGVtcycsICdpdGVtc1Nob3duJywgJ3JlbW92ZUJveFNoYWRvdycsICdzY3JvbGxpbmdEZWJvdW5jZScsICd2aXJ0dWFsU2Nyb2xsJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeE1lbnUge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzaXgtbWVudS1pdGVtLXNlbGVjdGVkJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBTaXhNZW51SXRlbVNlbGVjdGVkUGF5bG9hZCBhcyBJU2l4TWVudVNpeE1lbnVJdGVtU2VsZWN0ZWRQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeE1lbnUgZXh0ZW5kcyBDb21wb25lbnRzLlNpeE1lbnUge1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIGEgbWVudSBpdGVtIGlzIHNlbGVjdGVkLlxuICAgKi9cbiAgJ3NpeC1tZW51LWl0ZW0tc2VsZWN0ZWQnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeE1lbnVTaXhNZW51SXRlbVNlbGVjdGVkUGF5bG9hZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LW1lbnUtZGl2aWRlcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhNZW51RGl2aWRlciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeE1lbnVEaXZpZGVyIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhNZW51RGl2aWRlciB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjaGVja1R5cGUnLCAnY2hlY2tlZCcsICdkaXNhYmxlZCcsICd2YWx1ZSddLFxuICBtZXRob2RzOiBbJ3NldEZvY3VzJywgJ3JlbW92ZUZvY3VzJywgJ2dldFRleHRMYWJlbCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LW1lbnUtaXRlbScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY2hlY2tUeXBlJywgJ2NoZWNrZWQnLCAnZGlzYWJsZWQnLCAndmFsdWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4TWVudUl0ZW0ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhNZW51SXRlbSBleHRlbmRzIENvbXBvbmVudHMuU2l4TWVudUl0ZW0ge31cblxuXG5AUHJveHlDbXAoe1xufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1tZW51LWxhYmVsJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogW10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeE1lbnVMYWJlbCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeE1lbnVMYWJlbCBleHRlbmRzIENvbXBvbmVudHMuU2l4TWVudUxhYmVsIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ3NpemUnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1waWN0bycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnc2l6ZSddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhQaWN0byB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeFBpY3RvIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhQaWN0byB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpbmRldGVybWluYXRlJywgJ3BlcmNlbnRhZ2UnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1wcm9ncmVzcy1iYXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2luZGV0ZXJtaW5hdGUnLCAncGVyY2VudGFnZSddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhQcm9ncmVzc0JhciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeFByb2dyZXNzQmFyIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhQcm9ncmVzc0JhciB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydwZXJjZW50YWdlJywgJ3NpemUnLCAnc3Ryb2tlV2lkdGgnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1wcm9ncmVzcy1yaW5nJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydwZXJjZW50YWdlJywgJ3NpemUnLCAnc3Ryb2tlV2lkdGgnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4UHJvZ3Jlc3NSaW5nIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4UHJvZ3Jlc3NSaW5nIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhQcm9ncmVzc1Jpbmcge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY2hlY2tlZCcsICdkaXNhYmxlZCcsICdpbnZhbGlkJywgJ25hbWUnLCAndmFsdWUnXSxcbiAgbWV0aG9kczogWydzZXRGb2N1cycsICdyZW1vdmVGb2N1cyddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LXJhZGlvJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjaGVja2VkJywgJ2Rpc2FibGVkJywgJ2ludmFsaWQnLCAnbmFtZScsICd2YWx1ZSddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhSYWRpbyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3NpeC1yYWRpby1ibHVyJywgJ3NpeC1yYWRpby1jaGFuZ2UnLCAnc2l4LXJhZGlvLWZvY3VzJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBFbXB0eVBheWxvYWQgYXMgSVNpeFJhZGlvRW1wdHlQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeFJhZGlvIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhSYWRpbyB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGNvbnRyb2wgbG9zZXMgZm9jdXMuXG4gICAqL1xuICAnc2l4LXJhZGlvLWJsdXInOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFJhZGlvRW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGNvbnRyb2wncyBjaGVja2VkIHN0YXRlIGNoYW5nZXMuXG4gICAqL1xuICAnc2l4LXJhZGlvLWNoYW5nZSc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4UmFkaW9FbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgY29udHJvbCBnYWlucyBmb2N1cy5cbiAgICovXG4gICdzaXgtcmFkaW8tZm9jdXMnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFJhZGlvRW1wdHlQYXlsb2FkPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2Vycm9yVGV4dCcsICdlcnJvclRleHRDb3VudCcsICdoZWxwVGV4dCcsICdpbnZhbGlkJywgJ2xhYmVsJywgJ21heCcsICdtaW4nLCAnbmFtZScsICdyZXF1aXJlZCcsICdzdGVwJywgJ3Rvb2x0aXAnLCAndG9vbHRpcEZvcm1hdHRlcicsICd2YWx1ZSddLFxuICBtZXRob2RzOiBbJ3NldEZvY3VzJywgJ3JlbW92ZUZvY3VzJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtcmFuZ2UnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2Vycm9yVGV4dCcsICdlcnJvclRleHRDb3VudCcsICdoZWxwVGV4dCcsICdpbnZhbGlkJywgJ2xhYmVsJywgJ21heCcsICdtaW4nLCAnbmFtZScsICdyZXF1aXJlZCcsICdzdGVwJywgJ3Rvb2x0aXAnLCAndG9vbHRpcEZvcm1hdHRlcicsICd2YWx1ZSddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhSYW5nZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3NpeC1yYW5nZS1jaGFuZ2UnLCAnc2l4LXJhbmdlLWJsdXInLCAnc2l4LXJhbmdlLWZvY3VzJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBFbXB0eVBheWxvYWQgYXMgSVNpeFJhbmdlRW1wdHlQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeFJhbmdlIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhSYW5nZSB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGNvbnRyb2wncyB2YWx1ZSBjaGFuZ2VzLlxuICAgKi9cbiAgJ3NpeC1yYW5nZS1jaGFuZ2UnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFJhbmdlRW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGNvbnRyb2wgbG9zZXMgZm9jdXMuXG4gICAqL1xuICAnc2l4LXJhbmdlLWJsdXInOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFJhbmdlRW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGNvbnRyb2wgZ2FpbnMgZm9jdXMuXG4gICAqL1xuICAnc2l4LXJhbmdlLWZvY3VzJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhSYW5nZUVtcHR5UGF5bG9hZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydwYWRkZWQnLCAnc3RhZ2UnLCAndmVyc2lvbiddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LXJvb3QnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ3BhZGRlZCcsICdzdGFnZScsICd2ZXJzaW9uJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeFJvb3Qge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhSb290IGV4dGVuZHMgQ29tcG9uZW50cy5TaXhSb290IHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NsZWFyYWJsZScsICdkZWJvdW5jZScsICdkaXNhYmxlZCcsICdwbGFjZWhvbGRlcicsICd2YWx1ZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LXNlYXJjaC1maWVsZCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY2xlYXJhYmxlJywgJ2RlYm91bmNlJywgJ2Rpc2FibGVkJywgJ3BsYWNlaG9sZGVyJywgJ3ZhbHVlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeFNlYXJjaEZpZWxkIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2l4LXNlYXJjaC1maWVsZC1jaGFuZ2UnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFNpeFNlYXJjaEZpZWxkQ2hhbmdlUGF5bG9hZCBhcyBJU2l4U2VhcmNoRmllbGRTaXhTZWFyY2hGaWVsZENoYW5nZVBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4U2VhcmNoRmllbGQgZXh0ZW5kcyBDb21wb25lbnRzLlNpeFNlYXJjaEZpZWxkIHtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiBhIHNlYXJjaCBpcyB0cmlnZ2VyZWRcbiAgICovXG4gICdzaXgtc2VhcmNoLWZpZWxkLWNoYW5nZSc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4U2VhcmNoRmllbGRTaXhTZWFyY2hGaWVsZENoYW5nZVBheWxvYWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYXN5bmNGaWx0ZXInLCAnYXV0b2NvbXBsZXRlJywgJ2NsZWFyYWJsZScsICdkaXNhYmxlZCcsICdlcnJvclRleHQnLCAnZXJyb3JUZXh0Q291bnQnLCAnZmlsdGVyJywgJ2ZpbHRlckRlYm91bmNlJywgJ2ZpbHRlclBsYWNlaG9sZGVyJywgJ2hlbHBUZXh0JywgJ2hvaXN0JywgJ2lucHV0RGVib3VuY2UnLCAnaW52YWxpZCcsICdsYWJlbCcsICdsaW5lJywgJ21heFRhZ3NWaXNpYmxlJywgJ211bHRpcGxlJywgJ25hbWUnLCAnb3B0aW9ucycsICdwaWxsJywgJ3BsYWNlaG9sZGVyJywgJ3JlcXVpcmVkJywgJ3NlbGVjdEFsbEJ1dHRvbicsICdzZWxlY3RBbGxUZXh0JywgJ3NpemUnLCAndmFsdWUnLCAndmlydHVhbFNjcm9sbCddLFxuICBtZXRob2RzOiBbJ3NldEZvY3VzJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtc2VsZWN0JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhc3luY0ZpbHRlcicsICdhdXRvY29tcGxldGUnLCAnY2xlYXJhYmxlJywgJ2Rpc2FibGVkJywgJ2Vycm9yVGV4dCcsICdlcnJvclRleHRDb3VudCcsICdmaWx0ZXInLCAnZmlsdGVyRGVib3VuY2UnLCAnZmlsdGVyUGxhY2Vob2xkZXInLCAnaGVscFRleHQnLCAnaG9pc3QnLCAnaW5wdXREZWJvdW5jZScsICdpbnZhbGlkJywgJ2xhYmVsJywgJ2xpbmUnLCAnbWF4VGFnc1Zpc2libGUnLCAnbXVsdGlwbGUnLCAnbmFtZScsICdvcHRpb25zJywgJ3BpbGwnLCAncGxhY2Vob2xkZXInLCAncmVxdWlyZWQnLCAnc2VsZWN0QWxsQnV0dG9uJywgJ3NlbGVjdEFsbFRleHQnLCAnc2l6ZScsICd2YWx1ZScsICd2aXJ0dWFsU2Nyb2xsJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeFNlbGVjdCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3NpeC1zZWxlY3QtY2hhbmdlJywgJ3NpeC1zZWxlY3QtZm9jdXMnLCAnc2l4LXNlbGVjdC1ibHVyJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBTaXhTZWxlY3RDaGFuZ2VQYXlsb2FkIGFzIElTaXhTZWxlY3RTaXhTZWxlY3RDaGFuZ2VQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcbmltcG9ydCB0eXBlIHsgRW1wdHlQYXlsb2FkIGFzIElTaXhTZWxlY3RFbXB0eVBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4U2VsZWN0IGV4dGVuZHMgQ29tcG9uZW50cy5TaXhTZWxlY3Qge1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBjb250cm9sJ3MgdmFsdWUgY2hhbmdlcy5cbiAgICovXG4gICdzaXgtc2VsZWN0LWNoYW5nZSc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4U2VsZWN0U2l4U2VsZWN0Q2hhbmdlUGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBjb250cm9sIGdhaW5zIGZvY3VzLlxuICAgKi9cbiAgJ3NpeC1zZWxlY3QtZm9jdXMnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFNlbGVjdEVtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBjb250cm9sIGxvc2VzIGZvY3VzLlxuICAgKi9cbiAgJ3NpeC1zZWxlY3QtYmx1cic6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4U2VsZWN0RW1wdHlQYXlsb2FkPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ29wZW4nLCAncG9zaXRpb24nLCAndG9nZ2xlZCcsICd3aWR0aCddLFxuICBtZXRob2RzOiBbJ3RvZ2dsZScsICdzaG93JywgJ2hpZGUnLCAnc2VsZWN0SXRlbUJ5SW5kZXgnLCAnc2VsZWN0SXRlbUJ5TmFtZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LXNpZGViYXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ29wZW4nLCAncG9zaXRpb24nLCAndG9nZ2xlZCcsICd3aWR0aCddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhTaWRlYmFyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2l4LXNpZGViYXItc2hvdycsICdzaXgtc2lkZWJhci1hZnRlci1zaG93JywgJ3NpeC1zaWRlYmFyLWhpZGUnLCAnc2l4LXNpZGViYXItYWZ0ZXItaGlkZScsICdzaXgtc2lkZWJhci1pbml0aWFsLWZvY3VzJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBFbXB0eVBheWxvYWQgYXMgSVNpeFNpZGViYXJFbXB0eVBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4U2lkZWJhciBleHRlbmRzIENvbXBvbmVudHMuU2l4U2lkZWJhciB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIHNpZGViYXIgb3BlbnMuIENhbGxpbmcgYGV2ZW50LnByZXZlbnREZWZhdWx0KClgIHdpbGwgcHJldmVudCBpdCBmcm9tIGJlaW5nIG9wZW5lZC5cbiAgICovXG4gICdzaXgtc2lkZWJhci1zaG93JzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhTaWRlYmFyRW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIGFmdGVyIHRoZSBzaWRlYmFyIG9wZW5zIGFuZCBhbGwgdHJhbnNpdGlvbnMgYXJlIGNvbXBsZXRlLlxuICAgKi9cbiAgJ3NpeC1zaWRlYmFyLWFmdGVyLXNob3cnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFNpZGViYXJFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgc2lkZWJhciBjbG9zZXMuIENhbGxpbmcgYGV2ZW50LnByZXZlbnREZWZhdWx0KClgIHdpbGwgcHJldmVudCBpdCBmcm9tIGJlaW5nIGNsb3NlZC5cbiAgICovXG4gICdzaXgtc2lkZWJhci1oaWRlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhTaWRlYmFyRW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIGFmdGVyIHRoZSBzaWRlYmFyIGNsb3NlcyBhbmQgYWxsIHRyYW5zaXRpb25zIGFyZSBjb21wbGV0ZS5cbiAgICovXG4gICdzaXgtc2lkZWJhci1hZnRlci1oaWRlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhTaWRlYmFyRW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIHNpZGViYXIgb3BlbnMgYW5kIHRoZSBwYW5lbCBnYWlucyBmb2N1cy4gQ2FsbGluZyBgZXZlbnQucHJldmVudERlZmF1bHQoKWAgd2lsbCBwcmV2ZW50IGZvY3VzIGFuZFxuYWxsb3cgeW91IHRvIHNldCBpdCBvbiBhIGRpZmZlcmVudCBlbGVtZW50IGluIHRoZSBzaWRlYmFyLCBzdWNoIGFzIGFuIGlucHV0IG9yIGJ1dHRvbi5cbiAgICovXG4gICdzaXgtc2lkZWJhci1pbml0aWFsLWZvY3VzJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhTaWRlYmFyRW1wdHlQYXlsb2FkPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2hyZWYnLCAnc2VsZWN0ZWQnLCAndmFsdWUnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1zaWRlYmFyLWl0ZW0nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2hyZWYnLCAnc2VsZWN0ZWQnLCAndmFsdWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4U2lkZWJhckl0ZW0ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhTaWRlYmFySXRlbSBleHRlbmRzIENvbXBvbmVudHMuU2l4U2lkZWJhckl0ZW0ge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnaHJlZicsICdpY29uJywgJ25hbWUnLCAnb3BlbicsICdzdW1tYXJ5SWNvbicsICd2YWx1ZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LXNpZGViYXItaXRlbS1ncm91cCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnaHJlZicsICdpY29uJywgJ25hbWUnLCAnb3BlbicsICdzdW1tYXJ5SWNvbicsICd2YWx1ZSddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhTaWRlYmFySXRlbUdyb3VwIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4U2lkZWJhckl0ZW1Hcm91cCBleHRlbmRzIENvbXBvbmVudHMuU2l4U2lkZWJhckl0ZW1Hcm91cCB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydzaXgnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1zcGlubmVyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydzaXgnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4U3Bpbm5lciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeFNwaW5uZXIgZXh0ZW5kcyBDb21wb25lbnRzLlNpeFNwaW5uZXIge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnc3RhZ2UnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1zdGFnZS1pbmRpY2F0b3InLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ3N0YWdlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeFN0YWdlSW5kaWNhdG9yIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4U3RhZ2VJbmRpY2F0b3IgZXh0ZW5kcyBDb21wb25lbnRzLlNpeFN0YWdlSW5kaWNhdG9yIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NoZWNrZWQnLCAnZGlzYWJsZWQnLCAnZXJyb3JUZXh0JywgJ2Vycm9yVGV4dENvdW50JywgJ2ludmFsaWQnLCAnbGFiZWwnLCAnbmFtZScsICdyZXF1aXJlZCcsICd2YWx1ZSddLFxuICBtZXRob2RzOiBbJ3NldEZvY3VzJywgJ3JlbW92ZUZvY3VzJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtc3dpdGNoJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjaGVja2VkJywgJ2Rpc2FibGVkJywgJ2Vycm9yVGV4dCcsICdlcnJvclRleHRDb3VudCcsICdpbnZhbGlkJywgJ2xhYmVsJywgJ25hbWUnLCAncmVxdWlyZWQnLCAndmFsdWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4U3dpdGNoIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2l4LXN3aXRjaC1ibHVyJywgJ3NpeC1zd2l0Y2gtY2hhbmdlJywgJ3NpeC1zd2l0Y2gtZm9jdXMnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IEVtcHR5UGF5bG9hZCBhcyBJU2l4U3dpdGNoRW1wdHlQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeFN3aXRjaCBleHRlbmRzIENvbXBvbmVudHMuU2l4U3dpdGNoIHtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgY29udHJvbCBsb3NlcyBmb2N1cy5cbiAgICovXG4gICdzaXgtc3dpdGNoLWJsdXInOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8Ym9vbGVhbj4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBjb250cm9sJ3MgY2hlY2tlZCBzdGF0ZSBjaGFuZ2VzLlxuICAgKi9cbiAgJ3NpeC1zd2l0Y2gtY2hhbmdlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGJvb2xlYW4+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgY29udHJvbCBnYWlucyBmb2N1cy5cbiAgICovXG4gICdzaXgtc3dpdGNoLWZvY3VzJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhTd2l0Y2hFbXB0eVBheWxvYWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYWN0aXZlJywgJ2Nsb3NhYmxlJywgJ2Rpc2FibGVkJywgJ3BhbmVsJ10sXG4gIG1ldGhvZHM6IFsnc2V0Rm9jdXMnLCAncmVtb3ZlRm9jdXMnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC10YWInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FjdGl2ZScsICdjbG9zYWJsZScsICdkaXNhYmxlZCcsICdwYW5lbCddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhUYWIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzaXgtdGFiLWNsb3NlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBFbXB0eVBheWxvYWQgYXMgSVNpeFRhYkVtcHR5UGF5bG9hZCB9IGZyb20gJ0BzaXgtZ3JvdXAvdWktbGlicmFyeSc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhUYWIgZXh0ZW5kcyBDb21wb25lbnRzLlNpeFRhYiB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIHRhYiBpcyBjbG9zYWJsZSBhbmQgdGhlIGNsb3NlIGJ1dHRvbiBpcyBhY3RpdmF0ZWQuXG4gICAqL1xuICAnc2l4LXRhYi1jbG9zZSc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4VGFiRW1wdHlQYXlsb2FkPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ25vU2Nyb2xsQ29udHJvbHMnLCAncGxhY2VtZW50J10sXG4gIG1ldGhvZHM6IFsnc2hvdyddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LXRhYi1ncm91cCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnbm9TY3JvbGxDb250cm9scycsICdwbGFjZW1lbnQnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4VGFiR3JvdXAge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzaXgtdGFiLXNob3cnLCAnc2l4LXRhYi1oaWRlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBTaXhUYWJTaG93UGF5bG9hZCBhcyBJU2l4VGFiR3JvdXBTaXhUYWJTaG93UGF5bG9hZCB9IGZyb20gJ0BzaXgtZ3JvdXAvdWktbGlicmFyeSc7XG5pbXBvcnQgdHlwZSB7IFNpeFRhYkhpZGVQYXlsb2FkIGFzIElTaXhUYWJHcm91cFNpeFRhYkhpZGVQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeFRhYkdyb3VwIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhUYWJHcm91cCB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gYSB0YWIgaXMgc2hvd24uXG4gICAqL1xuICAnc2l4LXRhYi1zaG93JzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhUYWJHcm91cFNpeFRhYlNob3dQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gYSB0YWIgaXMgaGlkZGVuLlxuICAgKi9cbiAgJ3NpeC10YWItaGlkZSc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4VGFiR3JvdXBTaXhUYWJIaWRlUGF5bG9hZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhY3RpdmUnLCAnbmFtZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LXRhYi1wYW5lbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnYWN0aXZlJywgJ25hbWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4VGFiUGFuZWwge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhUYWJQYW5lbCBleHRlbmRzIENvbXBvbmVudHMuU2l4VGFiUGFuZWwge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY2xlYXJhYmxlJywgJ3BpbGwnLCAnc2l6ZScsICd0eXBlJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtdGFnJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjbGVhcmFibGUnLCAncGlsbCcsICdzaXplJywgJ3R5cGUnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4VGFnIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2l4LXRhZy1jbGVhciddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgRW1wdHlQYXlsb2FkIGFzIElTaXhUYWdFbXB0eVBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4VGFnIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhUYWcge1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBjbGVhciBidXR0b24gaXMgYWN0aXZhdGVkLlxuICAgKi9cbiAgJ3NpeC10YWctY2xlYXInOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFRhZ0VtcHR5UGF5bG9hZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhdXRvY2FwaXRhbGl6ZScsICdhdXRvY29tcGxldGUnLCAnYXV0b2NvcnJlY3QnLCAnYXV0b2ZvY3VzJywgJ2Rpc2FibGVkJywgJ2Vycm9yVGV4dCcsICdlcnJvclRleHRDb3VudCcsICdoZWxwVGV4dCcsICdpbnB1dG1vZGUnLCAnaW52YWxpZCcsICdsYWJlbCcsICdtYXhsZW5ndGgnLCAnbWlubGVuZ3RoJywgJ25hbWUnLCAncGxhY2Vob2xkZXInLCAncmVhZG9ubHknLCAncmVxdWlyZWQnLCAncmVzaXplJywgJ3Jvd3MnLCAnc2l6ZScsICdzcGVsbGNoZWNrJywgJ3ZhbHVlJ10sXG4gIG1ldGhvZHM6IFsnc2V0Rm9jdXMnLCAncmVtb3ZlRm9jdXMnLCAnc2VsZWN0JywgJ3NldFNlbGVjdGlvblJhbmdlJywgJ3NldFJhbmdlVGV4dCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LXRleHRhcmVhJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhdXRvY2FwaXRhbGl6ZScsICdhdXRvY29tcGxldGUnLCAnYXV0b2NvcnJlY3QnLCAnYXV0b2ZvY3VzJywgJ2Rpc2FibGVkJywgJ2Vycm9yVGV4dCcsICdlcnJvclRleHRDb3VudCcsICdoZWxwVGV4dCcsICdpbnB1dG1vZGUnLCAnaW52YWxpZCcsICdsYWJlbCcsICdtYXhsZW5ndGgnLCAnbWlubGVuZ3RoJywgJ25hbWUnLCAncGxhY2Vob2xkZXInLCAncmVhZG9ubHknLCAncmVxdWlyZWQnLCAncmVzaXplJywgJ3Jvd3MnLCAnc2l6ZScsICdzcGVsbGNoZWNrJywgJ3ZhbHVlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeFRleHRhcmVhIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2l4LXRleHRhcmVhLWNoYW5nZScsICdzaXgtdGV4dGFyZWEtaW5wdXQnLCAnc2l4LXRleHRhcmVhLWZvY3VzJywgJ3NpeC10ZXh0YXJlYS1ibHVyJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBFbXB0eVBheWxvYWQgYXMgSVNpeFRleHRhcmVhRW1wdHlQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeFRleHRhcmVhIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhUZXh0YXJlYSB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGNvbnRyb2wncyB2YWx1ZSBjaGFuZ2VzLiBBY2Nlc3MgdGhlIG5ldyB2YWx1ZSB2aWEgZXZlbnQudGFyZ2V0LnZhbHVlLlxuICAgKi9cbiAgJ3NpeC10ZXh0YXJlYS1jaGFuZ2UnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFRleHRhcmVhRW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGNvbnRyb2wgcmVjZWl2ZXMgaW5wdXQuIEFjY2VzcyB0aGUgbmV3IHZhbHVlIHZpYSBldmVudC50YXJnZXQudmFsdWUuXG4gICAqL1xuICAnc2l4LXRleHRhcmVhLWlucHV0JzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhUZXh0YXJlYUVtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBjb250cm9sIGdhaW5zIGZvY3VzLlxuICAgKi9cbiAgJ3NpeC10ZXh0YXJlYS1mb2N1cyc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4VGV4dGFyZWFFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgY29udHJvbCBsb3NlcyBmb2N1cy4gQWNjZXNzIHRoZSBuZXcgdmFsdWUgdmlhIGV2ZW50LnRhcmdldC52YWx1ZS5cbiAgICovXG4gICdzaXgtdGV4dGFyZWEtYmx1cic6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4VGV4dGFyZWFFbXB0eVBheWxvYWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY2xvc2VhYmxlJywgJ2Rpc2FibGVUb29sdGlwJywgJ2Rpc2FibGVkJywgJ2VsZXZhdGVkJywgJ2ljb25OYW1lJywgJ2xhYmVsJywgJ3NpemUnXSxcbiAgbWV0aG9kczogWydoaWRlJywgJ3Nob3cnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC10aWxlJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjbG9zZWFibGUnLCAnZGlzYWJsZVRvb2x0aXAnLCAnZGlzYWJsZWQnLCAnZWxldmF0ZWQnLCAnaWNvbk5hbWUnLCAnbGFiZWwnLCAnc2l6ZSddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhUaWxlIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2l4LXRpbGUtY2xvc2VkJywgJ3NpeC10aWxlLXNlbGVjdGVkJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBFbXB0eVBheWxvYWQgYXMgSVNpeFRpbGVFbXB0eVBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4VGlsZSBleHRlbmRzIENvbXBvbmVudHMuU2l4VGlsZSB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIHRpbGUgd2FzIGNsb3NlZC5cbiAgICovXG4gICdzaXgtdGlsZS1jbG9zZWQnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFRpbGVFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgdGlsZSBpcyBzZWxlY3RlZC5cbiAgICovXG4gICdzaXgtdGlsZS1zZWxlY3RlZCc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4VGlsZUVtcHR5UGF5bG9hZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjbGVhcmFibGUnLCAnZGVib3VuY2UnLCAnZGVmYXVsdFRpbWUnLCAnZGlzYWJsZWQnLCAnZXJyb3JUZXh0JywgJ2Vycm9yVGV4dENvdW50JywgJ2Zvcm1hdCcsICdob2lzdCcsICdpY29uUG9zaXRpb24nLCAnaW5saW5lJywgJ2ludGVydmFsJywgJ2ludmFsaWQnLCAnbGFiZWwnLCAnbmFtZScsICdvcGVuJywgJ3BsYWNlaG9sZGVyJywgJ3BsYWNlbWVudCcsICdyZWFkb25seScsICdyZXF1aXJlZCcsICdzZXBhcmF0b3InLCAnc2l6ZScsICd0aW1lb3V0JywgJ3ZhbHVlJ10sXG4gIG1ldGhvZHM6IFsnc2V0Rm9jdXMnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC10aW1lcGlja2VyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjbGVhcmFibGUnLCAnZGVib3VuY2UnLCAnZGVmYXVsdFRpbWUnLCAnZGlzYWJsZWQnLCAnZXJyb3JUZXh0JywgJ2Vycm9yVGV4dENvdW50JywgJ2Zvcm1hdCcsICdob2lzdCcsICdpY29uUG9zaXRpb24nLCAnaW5saW5lJywgJ2ludGVydmFsJywgJ2ludmFsaWQnLCAnbGFiZWwnLCAnbmFtZScsICdvcGVuJywgJ3BsYWNlaG9sZGVyJywgJ3BsYWNlbWVudCcsICdyZWFkb25seScsICdyZXF1aXJlZCcsICdzZXBhcmF0b3InLCAnc2l6ZScsICd0aW1lb3V0JywgJ3ZhbHVlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeFRpbWVwaWNrZXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzaXgtdGltZXBpY2tlci1jaGFuZ2UnLCAnc2l4LXRpbWVwaWNrZXItY2hhbmdlLWRlYm91bmNlZCcsICdzaXgtdGltZXBpY2tlci1jbGVhciddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgU2l4VGltZXBpY2tlckNoYW5nZSBhcyBJU2l4VGltZXBpY2tlclNpeFRpbWVwaWNrZXJDaGFuZ2UgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuaW1wb3J0IHR5cGUgeyBFbXB0eVBheWxvYWQgYXMgSVNpeFRpbWVwaWNrZXJFbXB0eVBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4VGltZXBpY2tlciBleHRlbmRzIENvbXBvbmVudHMuU2l4VGltZXBpY2tlciB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIHRpbWVwaWNrZXIncyB2YWx1ZSBjaGFuZ2VzXG4gICAqL1xuICAnc2l4LXRpbWVwaWNrZXItY2hhbmdlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhUaW1lcGlja2VyU2l4VGltZXBpY2tlckNoYW5nZT4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSB0aW1lcGlja2VyJ3MgdmFsdWUgY2hhbmdlcywgYnV0IGRlYm91bmNlZFxuICAgKi9cbiAgJ3NpeC10aW1lcGlja2VyLWNoYW5nZS1kZWJvdW5jZWQnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFRpbWVwaWNrZXJTaXhUaW1lcGlja2VyQ2hhbmdlPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGNsZWFyIGJ1dHRvbiBpcyBhY3RpdmF0ZWQuXG4gICAqL1xuICAnc2l4LXRpbWVwaWNrZXItY2xlYXInOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFRpbWVwaWNrZXJFbXB0eVBheWxvYWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29udGVudCcsICdkaXNhYmxlZCcsICdkaXN0YW5jZScsICdvcGVuJywgJ3BsYWNlbWVudCcsICdza2lkZGluZycsICd0cmlnZ2VyJ10sXG4gIG1ldGhvZHM6IFsnc2hvdycsICdoaWRlJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtdG9vbHRpcCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY29udGVudCcsICdkaXNhYmxlZCcsICdkaXN0YW5jZScsICdvcGVuJywgJ3BsYWNlbWVudCcsICdza2lkZGluZycsICd0cmlnZ2VyJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeFRvb2x0aXAge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzaXgtdG9vbHRpcC1zaG93JywgJ3NpeC10b29sdGlwLWFmdGVyLXNob3cnLCAnc2l4LXRvb2x0aXAtaGlkZScsICdzaXgtdG9vbHRpcC1hZnRlci1oaWRlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBFbXB0eVBheWxvYWQgYXMgSVNpeFRvb2x0aXBFbXB0eVBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4VG9vbHRpcCBleHRlbmRzIENvbXBvbmVudHMuU2l4VG9vbHRpcCB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIHRvb2x0aXAgYmVnaW5zIHRvIHNob3cuIENhbGxpbmcgYGV2ZW50LnByZXZlbnREZWZhdWx0KClgIHdpbGwgcHJldmVudCBpdCBmcm9tIGJlaW5nIHNob3duLlxuICAgKi9cbiAgJ3NpeC10b29sdGlwLXNob3cnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFRvb2x0aXBFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgYWZ0ZXIgdGhlIHRvb2x0aXAgaGFzIHNob3duIGFuZCBhbGwgdHJhbnNpdGlvbnMgYXJlIGNvbXBsZXRlLlxuICAgKi9cbiAgJ3NpeC10b29sdGlwLWFmdGVyLXNob3cnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFRvb2x0aXBFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgdG9vbHRpcCBiZWdpbnMgdG8gaGlkZS4gQ2FsbGluZyBgZXZlbnQucHJldmVudERlZmF1bHQoKWAgd2lsbCBwcmV2ZW50IGl0IGZyb20gYmVpbmcgaGlkZGVuLlxuICAgKi9cbiAgJ3NpeC10b29sdGlwLWhpZGUnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFRvb2x0aXBFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgYWZ0ZXIgdGhlIHRvb2x0aXAgaGFzIGhpZGRlbiBhbmQgYWxsIHRyYW5zaXRpb25zIGFyZSBjb21wbGV0ZS5cbiAgICovXG4gICdzaXgtdG9vbHRpcC1hZnRlci1oaWRlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhUb29sdGlwRW1wdHlQYXlsb2FkPj47XG59XG5cblxuIl19
|
|
1388
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc3RlbmNpbC1nZW5lcmF0ZWQvY29tcG9uZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsb0JBQW9CO0FBQ3BCLDhDQUE4QztBQUM5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQXFCLFNBQVMsRUFBb0MsTUFBTSxlQUFlLENBQUM7QUFFeEgsT0FBTyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7QUFnQmhFLFdBQU0sUUFBUSxHQUFkLE1BQU0sUUFBUTtJQUVuQixZQUFZLENBQW9CLEVBQUUsQ0FBYSxFQUFZLENBQVM7UUFBVCxNQUFDLEdBQUQsQ0FBQyxDQUFRO1FBQ2xFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNYLElBQUksQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLGFBQWEsQ0FBQztRQUMxQixZQUFZLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSxzQkFBc0IsRUFBRSxnQkFBZ0IsRUFBRSxzQkFBc0IsQ0FBQyxDQUFDLENBQUM7SUFDcEgsQ0FBQzsrR0FOVSxRQUFRO21HQUFSLFFBQVEscUlBSlQsMkJBQTJCOztBQUkxQixRQUFRO0lBWHBCLFFBQVEsQ0FBQztRQUNSLE1BQU0sRUFBRSxDQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQztRQUNoRCxPQUFPLEVBQUUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQztLQUNuQyxDQUFDO0dBUVcsUUFBUSxDQU9wQjs0RkFQWSxRQUFRO2tCQVBwQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxXQUFXO29CQUNyQixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsUUFBUSxFQUFFLDJCQUEyQjtvQkFDckMsdUVBQXVFO29CQUN2RSxN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b0JBQ3JDLHVFQUF1RTtvQkFDdkUsTUFBTSxFQUFFLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsU0FBUyxDQUFDO2lCQUN4RiIsInNvdXJjZXNDb250ZW50IjpbIi8qIHRzbGludDpkaXNhYmxlICovXG4vKiBhdXRvLWdlbmVyYXRlZCBhbmd1bGFyIGRpcmVjdGl2ZSBwcm94aWVzICovXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgUHJveHlDbXAsIHByb3h5T3V0cHV0cyB9IGZyb20gJy4vYW5ndWxhci1jb21wb25lbnQtbGliL3V0aWxzJztcblxuaW1wb3J0IHsgQ29tcG9uZW50cyB9IGZyb20gJ0BzaXgtZ3JvdXAvdWktbGlicmFyeSc7XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2Nsb3NhYmxlJywgJ2R1cmF0aW9uJywgJ29wZW4nLCAndHlwZSddLFxuICBtZXRob2RzOiBbJ3Nob3cnLCAnaGlkZScsICd0b2FzdCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LWFsZXJ0JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjbG9zYWJsZScsICdkdXJhdGlvbicsICdvcGVuJywgJ3R5cGUnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4QWxlcnQge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzaXgtYWxlcnQtc2hvdycsICdzaXgtYWxlcnQtYWZ0ZXItc2hvdycsICdzaXgtYWxlcnQtaGlkZScsICdzaXgtYWxlcnQtYWZ0ZXItaGlkZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgRW1wdHlQYXlsb2FkIGFzIElTaXhBbGVydEVtcHR5UGF5bG9hZCB9IGZyb20gJ0BzaXgtZ3JvdXAvdWktbGlicmFyeSc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhBbGVydCBleHRlbmRzIENvbXBvbmVudHMuU2l4QWxlcnQge1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBhbGVydCBvcGVucy4gQ2FsbGluZyBgZXZlbnQucHJldmVudERlZmF1bHQoKWAgd2lsbCBwcmV2ZW50IGl0IGZyb20gYmVpbmcgb3BlbmVkLlxuICAgKi9cbiAgJ3NpeC1hbGVydC1zaG93JzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhBbGVydEVtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCBhZnRlciB0aGUgYWxlcnQgb3BlbnMgYW5kIGFsbCB0cmFuc2l0aW9ucyBhcmUgY29tcGxldGUuXG4gICAqL1xuICAnc2l4LWFsZXJ0LWFmdGVyLXNob3cnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeEFsZXJ0RW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGFsZXJ0IGNsb3Nlcy4gQ2FsbGluZyBgZXZlbnQucHJldmVudERlZmF1bHQoKWAgd2lsbCBwcmV2ZW50IGl0IGZyb20gYmVpbmcgY2xvc2VkLlxuICAgKi9cbiAgJ3NpeC1hbGVydC1oaWRlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhBbGVydEVtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCBhZnRlciB0aGUgYWxlcnQgY2xvc2VzIGFuZCBhbGwgdHJhbnNpdGlvbnMgYXJlIGNvbXBsZXRlLlxuICAgKi9cbiAgJ3NpeC1hbGVydC1hZnRlci1oaWRlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhBbGVydEVtcHR5UGF5bG9hZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhbHQnLCAnaW1hZ2UnLCAnaW5pdGlhbHMnLCAnc2hhcGUnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1hdmF0YXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FsdCcsICdpbWFnZScsICdpbml0aWFscycsICdzaGFwZSddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhBdmF0YXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhBdmF0YXIgZXh0ZW5kcyBDb21wb25lbnRzLlNpeEF2YXRhciB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydwaWxsJywgJ3B1bHNlJywgJ3R5cGUnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1iYWRnZScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsncGlsbCcsICdwdWxzZScsICd0eXBlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeEJhZGdlIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4QmFkZ2UgZXh0ZW5kcyBDb21wb25lbnRzLlNpeEJhZGdlIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NhcmV0JywgJ2NpcmNsZScsICdkaXNhYmxlZCcsICdkb3dubG9hZCcsICdocmVmJywgJ2xvYWRpbmcnLCAnbmFtZScsICdwaWxsJywgJ3Jlc2V0JywgJ3NpemUnLCAnc3VibWl0JywgJ3RhcmdldCcsICd0eXBlJywgJ3ZhbHVlJ10sXG4gIG1ldGhvZHM6IFsnc2V0Rm9jdXMnLCAncmVtb3ZlRm9jdXMnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1idXR0b24nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NhcmV0JywgJ2NpcmNsZScsICdkaXNhYmxlZCcsICdkb3dubG9hZCcsICdocmVmJywgJ2xvYWRpbmcnLCAnbmFtZScsICdwaWxsJywgJ3Jlc2V0JywgJ3NpemUnLCAnc3VibWl0JywgJ3RhcmdldCcsICd0eXBlJywgJ3ZhbHVlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeEJ1dHRvbiB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3NpeC1idXR0b24tYmx1cicsICdzaXgtYnV0dG9uLWZvY3VzJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBFbXB0eVBheWxvYWQgYXMgSVNpeEJ1dHRvbkVtcHR5UGF5bG9hZCB9IGZyb20gJ0BzaXgtZ3JvdXAvdWktbGlicmFyeSc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhCdXR0b24gZXh0ZW5kcyBDb21wb25lbnRzLlNpeEJ1dHRvbiB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGJ1dHRvbiBsb3NlcyBmb2N1cy5cbiAgICovXG4gICdzaXgtYnV0dG9uLWJsdXInOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeEJ1dHRvbkVtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBidXR0b24gZ2FpbnMgZm9jdXMuXG4gICAqL1xuICAnc2l4LWJ1dHRvbi1mb2N1cyc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4QnV0dG9uRW1wdHlQYXlsb2FkPj47XG59XG5cblxuQFByb3h5Q21wKHtcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtY2FyZCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhDYXJkIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4Q2FyZCBleHRlbmRzIENvbXBvbmVudHMuU2l4Q2FyZCB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjaGVja2VkJywgJ2Rpc2FibGVkJywgJ2Vycm9yVGV4dCcsICdlcnJvclRleHRDb3VudCcsICdpbmRldGVybWluYXRlJywgJ2ludmFsaWQnLCAnbGFiZWwnLCAnbmFtZScsICdyZXF1aXJlZCcsICd2YWx1ZSddLFxuICBtZXRob2RzOiBbJ3NldEZvY3VzJywgJ3JlbW92ZUZvY3VzJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtY2hlY2tib3gnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NoZWNrZWQnLCAnZGlzYWJsZWQnLCAnZXJyb3JUZXh0JywgJ2Vycm9yVGV4dENvdW50JywgJ2luZGV0ZXJtaW5hdGUnLCAnaW52YWxpZCcsICdsYWJlbCcsICduYW1lJywgJ3JlcXVpcmVkJywgJ3ZhbHVlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeENoZWNrYm94IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2l4LWNoZWNrYm94LWJsdXInLCAnc2l4LWNoZWNrYm94LWNoYW5nZScsICdzaXgtY2hlY2tib3gtZm9jdXMnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IEVtcHR5UGF5bG9hZCBhcyBJU2l4Q2hlY2tib3hFbXB0eVBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4Q2hlY2tib3ggZXh0ZW5kcyBDb21wb25lbnRzLlNpeENoZWNrYm94IHtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgY29udHJvbCBsb3NlcyBmb2N1cy5cbiAgICovXG4gICdzaXgtY2hlY2tib3gtYmx1cic6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4Q2hlY2tib3hFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgY29udHJvbCdzIGNoZWNrZWQgc3RhdGUgY2hhbmdlcy5cbiAgICovXG4gICdzaXgtY2hlY2tib3gtY2hhbmdlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhDaGVja2JveEVtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBjb250cm9sIGdhaW5zIGZvY3VzLlxuICAgKi9cbiAgJ3NpeC1jaGVja2JveC1mb2N1cyc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4Q2hlY2tib3hFbXB0eVBheWxvYWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYWxsb3dlZERhdGVzJywgJ2NsZWFyYWJsZScsICdjbG9zZU9uU2VsZWN0JywgJ2NvbnRhaW5pbmdFbGVtZW50JywgJ2RhdGVGb3JtYXQnLCAnZGVib3VuY2UnLCAnZGVmYXVsdERhdGUnLCAnZGlzYWJsZWQnLCAnZXJyb3JUZXh0JywgJ2Vycm9yVGV4dENvdW50JywgJ2hvaXN0JywgJ2ljb25Qb3NpdGlvbicsICdpbmxpbmUnLCAnaW52YWxpZCcsICdsYWJlbCcsICdsb2NhbGUnLCAnbWF4JywgJ21pbicsICduYW1lJywgJ29wZW4nLCAncGxhY2Vob2xkZXInLCAncGxhY2VtZW50JywgJ3JlYWRvbmx5JywgJ3JlcXVpcmVkJywgJ3NpemUnLCAndHlwZScsICd2YWx1ZSddLFxuICBtZXRob2RzOiBbJ3NldEZvY3VzJywgJ3NlbGVjdCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LWRhdGVwaWNrZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FsbG93ZWREYXRlcycsICdjbGVhcmFibGUnLCAnY2xvc2VPblNlbGVjdCcsICdjb250YWluaW5nRWxlbWVudCcsICdkYXRlRm9ybWF0JywgJ2RlYm91bmNlJywgJ2RlZmF1bHREYXRlJywgJ2Rpc2FibGVkJywgJ2Vycm9yVGV4dCcsICdlcnJvclRleHRDb3VudCcsICdob2lzdCcsICdpY29uUG9zaXRpb24nLCAnaW5saW5lJywgJ2ludmFsaWQnLCAnbGFiZWwnLCAnbG9jYWxlJywgJ21heCcsICdtaW4nLCAnbmFtZScsICdvcGVuJywgJ3BsYWNlaG9sZGVyJywgJ3BsYWNlbWVudCcsICdyZWFkb25seScsICdyZXF1aXJlZCcsICdzaXplJywgJ3R5cGUnLCAndmFsdWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4RGF0ZXBpY2tlciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3NpeC1kYXRlcGlja2VyLXNlbGVjdCcsICdzaXgtZGF0ZXBpY2tlci1jbGVhcicsICdzaXgtZGF0ZXBpY2tlci1ibHVyJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBTaXhEYXRlcGlja2VyU2VsZWN0UGF5bG9hZCBhcyBJU2l4RGF0ZXBpY2tlclNpeERhdGVwaWNrZXJTZWxlY3RQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcbmltcG9ydCB0eXBlIHsgRW1wdHlQYXlsb2FkIGFzIElTaXhEYXRlcGlja2VyRW1wdHlQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeERhdGVwaWNrZXIgZXh0ZW5kcyBDb21wb25lbnRzLlNpeERhdGVwaWNrZXIge1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIGEgb3B0aW9uIGdvdCBzZWxlY3RlZC5cbiAgICovXG4gICdzaXgtZGF0ZXBpY2tlci1zZWxlY3QnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeERhdGVwaWNrZXJTaXhEYXRlcGlja2VyU2VsZWN0UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBjbGVhciBidXR0b24gaXMgYWN0aXZhdGVkLlxuICAgKi9cbiAgJ3NpeC1kYXRlcGlja2VyLWNsZWFyJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhEYXRlcGlja2VyRW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gYSBvcHRpb24gZ290IHNlbGVjdGVkLlxuICAgKi9cbiAgJ3NpeC1kYXRlcGlja2VyLWJsdXInOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeERhdGVwaWNrZXJTaXhEYXRlcGlja2VyU2VsZWN0UGF5bG9hZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydkaXNhYmxlZCcsICdoYXNDb250ZW50JywgJ2lubGluZScsICdvcGVuJywgJ3NlbGVjdGFibGVFbXB0eScsICdzdW1tYXJ5JywgJ3N1bW1hcnlJY29uJywgJ3N1bW1hcnlJY29uU2l6ZSddLFxuICBtZXRob2RzOiBbJ3Nob3cnLCAnaGlkZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LWRldGFpbHMnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2hhc0NvbnRlbnQnLCAnaW5saW5lJywgJ29wZW4nLCAnc2VsZWN0YWJsZUVtcHR5JywgJ3N1bW1hcnknLCAnc3VtbWFyeUljb24nLCAnc3VtbWFyeUljb25TaXplJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeERldGFpbHMge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzaXgtZGV0YWlscy1zaG93JywgJ3NpeC1kZXRhaWxzLWFmdGVyLXNob3cnLCAnc2l4LWRldGFpbHMtaGlkZScsICdzaXgtZGV0YWlscy1hZnRlci1oaWRlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBFbXB0eVBheWxvYWQgYXMgSVNpeERldGFpbHNFbXB0eVBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4RGV0YWlscyBleHRlbmRzIENvbXBvbmVudHMuU2l4RGV0YWlscyB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGRldGFpbHMgb3BlbnMuIENhbGxpbmcgYGV2ZW50LnByZXZlbnREZWZhdWx0KClgIHdpbGwgcHJldmVudCBpdCBmcm9tIGJlaW5nIG9wZW5lZC5cbiAgICovXG4gICdzaXgtZGV0YWlscy1zaG93JzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhEZXRhaWxzRW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIGFmdGVyIHRoZSBkZXRhaWxzIG9wZW5zIGFuZCBhbGwgdHJhbnNpdGlvbnMgYXJlIGNvbXBsZXRlLlxuICAgKi9cbiAgJ3NpeC1kZXRhaWxzLWFmdGVyLXNob3cnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeERldGFpbHNFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgZGV0YWlscyBjbG9zZXMuIENhbGxpbmcgYGV2ZW50LnByZXZlbnREZWZhdWx0KClgIHdpbGwgcHJldmVudCBpdCBmcm9tIGJlaW5nIGNsb3NlZC5cbiAgICovXG4gICdzaXgtZGV0YWlscy1oaWRlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhEZXRhaWxzRW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIGFmdGVyIHRoZSBkZXRhaWxzIGNsb3NlcyBhbmQgYWxsIHRyYW5zaXRpb25zIGFyZSBjb21wbGV0ZS5cbiAgICovXG4gICdzaXgtZGV0YWlscy1hZnRlci1oaWRlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhEZXRhaWxzRW1wdHlQYXlsb2FkPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2xhYmVsJywgJ25vSGVhZGVyJywgJ29wZW4nXSxcbiAgbWV0aG9kczogWydzaG93JywgJ2hpZGUnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1kaWFsb2cnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2xhYmVsJywgJ25vSGVhZGVyJywgJ29wZW4nXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4RGlhbG9nIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2l4LWRpYWxvZy1zaG93JywgJ3NpeC1kaWFsb2ctYWZ0ZXItc2hvdycsICdzaXgtZGlhbG9nLWhpZGUnLCAnc2l4LWRpYWxvZy1hZnRlci1oaWRlJywgJ3NpeC1kaWFsb2ctaW5pdGlhbC1mb2N1cycsICdzaXgtZGlhbG9nLW92ZXJsYXktZGlzbWlzcyddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgRW1wdHlQYXlsb2FkIGFzIElTaXhEaWFsb2dFbXB0eVBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4RGlhbG9nIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhEaWFsb2cge1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBkaWFsb2cgb3BlbnMuIENhbGxpbmcgYGV2ZW50LnByZXZlbnREZWZhdWx0KClgIHdpbGwgcHJldmVudCBpdCBmcm9tIGJlaW5nIG9wZW5lZC5cbiAgICovXG4gICdzaXgtZGlhbG9nLXNob3cnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeERpYWxvZ0VtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCBhZnRlciB0aGUgZGlhbG9nIG9wZW5zIGFuZCBhbGwgdHJhbnNpdGlvbnMgYXJlIGNvbXBsZXRlLlxuICAgKi9cbiAgJ3NpeC1kaWFsb2ctYWZ0ZXItc2hvdyc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4RGlhbG9nRW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGRpYWxvZyBjbG9zZXMuIENhbGxpbmcgYGV2ZW50LnByZXZlbnREZWZhdWx0KClgIHdpbGwgcHJldmVudCBpdCBmcm9tIGJlaW5nIGNsb3NlZC5cbiAgICovXG4gICdzaXgtZGlhbG9nLWhpZGUnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeERpYWxvZ0VtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCBhZnRlciB0aGUgZGlhbG9nIGNsb3NlcyBhbmQgYWxsIHRyYW5zaXRpb25zIGFyZSBjb21wbGV0ZS5cbiAgICovXG4gICdzaXgtZGlhbG9nLWFmdGVyLWhpZGUnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeERpYWxvZ0VtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBkaWFsb2cgb3BlbnMgYW5kIHRoZSBwYW5lbCBnYWlucyBmb2N1cy4gQ2FsbGluZyBgZXZlbnQucHJldmVudERlZmF1bHQoKWAgd2lsbCBwcmV2ZW50IGZvY3VzIGFuZFxuYWxsb3cgeW91IHRvIHNldCBpdCBvbiBhIGRpZmZlcmVudCBlbGVtZW50IGluIHRoZSBkaWFsb2csIHN1Y2ggYXMgYW4gaW5wdXQgb3IgYnV0dG9uLlxuICAgKi9cbiAgJ3NpeC1kaWFsb2ctaW5pdGlhbC1mb2N1cyc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4RGlhbG9nRW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIG92ZXJsYXkgaXMgY2xpY2tlZC4gQ2FsbGluZyBgZXZlbnQucHJldmVudERlZmF1bHQoKWAgd2lsbCBwcmV2ZW50IHRoZSBkaWFsb2cgZnJvbSBjbG9zaW5nLlxuICAgKi9cbiAgJ3NpeC1kaWFsb2ctb3ZlcmxheS1kaXNtaXNzJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhEaWFsb2dFbXB0eVBheWxvYWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29udGFpbmVkJywgJ2xhYmVsJywgJ25vSGVhZGVyJywgJ29wZW4nLCAncGxhY2VtZW50J10sXG4gIG1ldGhvZHM6IFsnc2hvdycsICdoaWRlJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtZHJhd2VyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjb250YWluZWQnLCAnbGFiZWwnLCAnbm9IZWFkZXInLCAnb3BlbicsICdwbGFjZW1lbnQnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4RHJhd2VyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2l4LWRyYXdlci1zaG93JywgJ3NpeC1kcmF3ZXItYWZ0ZXItc2hvdycsICdzaXgtZHJhd2VyLWhpZGUnLCAnc2l4LWRyYXdlci1hZnRlci1oaWRlJywgJ3NpeC1kcmF3ZXItaW5pdGlhbC1mb2N1cycsICdzaXgtZHJhd2VyLW92ZXJsYXktZGlzbWlzcyddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgRW1wdHlQYXlsb2FkIGFzIElTaXhEcmF3ZXJFbXB0eVBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4RHJhd2VyIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhEcmF3ZXIge1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBkcmF3ZXIgb3BlbnMuIENhbGxpbmcgYGV2ZW50LnByZXZlbnREZWZhdWx0KClgIHdpbGwgcHJldmVudCBpdCBmcm9tIGJlaW5nIG9wZW5lZC5cbiAgICovXG4gICdzaXgtZHJhd2VyLXNob3cnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeERyYXdlckVtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCBhZnRlciB0aGUgZHJhd2VyIG9wZW5zIGFuZCBhbGwgdHJhbnNpdGlvbnMgYXJlIGNvbXBsZXRlLlxuICAgKi9cbiAgJ3NpeC1kcmF3ZXItYWZ0ZXItc2hvdyc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4RHJhd2VyRW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGRyYXdlciBjbG9zZXMuIENhbGxpbmcgYGV2ZW50LnByZXZlbnREZWZhdWx0KClgIHdpbGwgcHJldmVudCBpdCBmcm9tIGJlaW5nIGNsb3NlZC5cbiAgICovXG4gICdzaXgtZHJhd2VyLWhpZGUnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeERyYXdlckVtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCBhZnRlciB0aGUgZHJhd2VyIGNsb3NlcyBhbmQgYWxsIHRyYW5zaXRpb25zIGFyZSBjb21wbGV0ZS5cbiAgICovXG4gICdzaXgtZHJhd2VyLWFmdGVyLWhpZGUnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeERyYXdlckVtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBkcmF3ZXIgb3BlbnMgYW5kIHRoZSBwYW5lbCBnYWlucyBmb2N1cy4gQ2FsbGluZyBgZXZlbnQucHJldmVudERlZmF1bHQoKWAgd2lsbCBwcmV2ZW50IGZvY3VzIGFuZFxuYWxsb3cgeW91IHRvIHNldCBpdCBvbiBhIGRpZmZlcmVudCBlbGVtZW50IGluIHRoZSBkcmF3ZXIsIHN1Y2ggYXMgYW4gaW5wdXQgb3IgYnV0dG9uLlxuICAgKi9cbiAgJ3NpeC1kcmF3ZXItaW5pdGlhbC1mb2N1cyc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4RHJhd2VyRW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIG92ZXJsYXkgaXMgY2xpY2tlZC4gQ2FsbGluZyBgZXZlbnQucHJldmVudERlZmF1bHQoKWAgd2lsbCBwcmV2ZW50IHRoZSBkcmF3ZXIgZnJvbSBjbG9zaW5nLlxuICAgKi9cbiAgJ3NpeC1kcmF3ZXItb3ZlcmxheS1kaXNtaXNzJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhEcmF3ZXJFbXB0eVBheWxvYWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYXN5bmNGaWx0ZXInLCAnYXV0b2ZvY3VzRmlsdGVyJywgJ2Nsb3NlT25TZWxlY3QnLCAnY29udGFpbmluZ0VsZW1lbnQnLCAnZGlzYWJsZUhpZGVPbkVudGVyQW5kU3BhY2UnLCAnZGlzdGFuY2UnLCAnZmlsdGVyJywgJ2ZpbHRlckRlYm91bmNlJywgJ2ZpbHRlclBsYWNlaG9sZGVyJywgJ2hvaXN0JywgJ21hdGNoVHJpZ2dlcldpZHRoJywgJ29wZW4nLCAnb3B0aW9ucycsICdwbGFjZW1lbnQnLCAnc2tpZGRpbmcnLCAndmlydHVhbFNjcm9sbCddLFxuICBtZXRob2RzOiBbJ3Nob3cnLCAnaGlkZScsICdyZXBvc2l0aW9uJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtZHJvcGRvd24nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FzeW5jRmlsdGVyJywgJ2F1dG9mb2N1c0ZpbHRlcicsICdjbG9zZU9uU2VsZWN0JywgJ2NvbnRhaW5pbmdFbGVtZW50JywgJ2Rpc2FibGVIaWRlT25FbnRlckFuZFNwYWNlJywgJ2Rpc3RhbmNlJywgJ2ZpbHRlcicsICdmaWx0ZXJEZWJvdW5jZScsICdmaWx0ZXJQbGFjZWhvbGRlcicsICdob2lzdCcsICdtYXRjaFRyaWdnZXJXaWR0aCcsICdvcGVuJywgJ29wdGlvbnMnLCAncGxhY2VtZW50JywgJ3NraWRkaW5nJywgJ3ZpcnR1YWxTY3JvbGwnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4RHJvcGRvd24ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzaXgtZHJvcGRvd24tc2hvdycsICdzaXgtZHJvcGRvd24tYWZ0ZXItc2hvdycsICdzaXgtZHJvcGRvd24taGlkZScsICdzaXgtZHJvcGRvd24tYWZ0ZXItaGlkZScsICdzaXgtZHJvcGRvd24tYXV0by1maWx0ZXItZmlyZWQnLCAnc2l4LWFzeW5jLWZpbHRlci1maXJlZCcsICdzaXgtZHJvcGRvd24tc2Nyb2xsJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBFbXB0eVBheWxvYWQgYXMgSVNpeERyb3Bkb3duRW1wdHlQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcbmltcG9ydCB0eXBlIHsgU2l4RHJvcGRvd25BdXRvRmlsdGVyUGF5bG9hZCBhcyBJU2l4RHJvcGRvd25TaXhEcm9wZG93bkF1dG9GaWx0ZXJQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcbmltcG9ydCB0eXBlIHsgU2l4RHJvcGRvd25Bc3luY0ZpbHRlclBheWxvYWQgYXMgSVNpeERyb3Bkb3duU2l4RHJvcGRvd25Bc3luY0ZpbHRlclBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuaW1wb3J0IHR5cGUgeyBTaXhEcm9wZG93blNjcm9sbFBheWxvYWQgYXMgSVNpeERyb3Bkb3duU2l4RHJvcGRvd25TY3JvbGxQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeERyb3Bkb3duIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhEcm9wZG93biB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGRyb3Bkb3duIG9wZW5zLiBDYWxsaW5nIGBldmVudC5wcmV2ZW50RGVmYXVsdCgpYCB3aWxsIHByZXZlbnQgaXQgZnJvbSBiZWluZyBvcGVuZWQuXG4gICAqL1xuICAnc2l4LWRyb3Bkb3duLXNob3cnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeERyb3Bkb3duRW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIGFmdGVyIHRoZSBkcm9wZG93biBvcGVucyBhbmQgYWxsIHRyYW5zaXRpb25zIGFyZSBjb21wbGV0ZS5cbiAgICovXG4gICdzaXgtZHJvcGRvd24tYWZ0ZXItc2hvdyc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4RHJvcGRvd25FbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgZHJvcGRvd24gY2xvc2VzLiBDYWxsaW5nIGBldmVudC5wcmV2ZW50RGVmYXVsdCgpYCB3aWxsIHByZXZlbnQgaXQgZnJvbSBiZWluZyBjbG9zZWQuXG4gICAqL1xuICAnc2l4LWRyb3Bkb3duLWhpZGUnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeERyb3Bkb3duRW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIGFmdGVyIHRoZSBkcm9wZG93biBjbG9zZXMgYW5kIGFsbCB0cmFuc2l0aW9ucyBhcmUgY29tcGxldGUuXG4gICAqL1xuICAnc2l4LWRyb3Bkb3duLWFmdGVyLWhpZGUnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeERyb3Bkb3duRW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGF1dG8gZmlsdGVyIGlzIHRyaWdnZXJlZFxuICAgKi9cbiAgJ3NpeC1kcm9wZG93bi1hdXRvLWZpbHRlci1maXJlZCc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4RHJvcGRvd25TaXhEcm9wZG93bkF1dG9GaWx0ZXJQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGFzeW5jIGZpbHRlciBpcyB0cmlnZ2VyZWRcbiAgICovXG4gICdzaXgtYXN5bmMtZmlsdGVyLWZpcmVkJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhEcm9wZG93blNpeERyb3Bkb3duQXN5bmNGaWx0ZXJQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIHVzZXIgc2Nyb2xscyBpbnNpZGUgZHJvcGRvd24gcGFuZWwuXG4gICAqL1xuICAnc2l4LWRyb3Bkb3duLXNjcm9sbCc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4RHJvcGRvd25TaXhEcm9wZG93blNjcm9sbFBheWxvYWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1lcnJvcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhFcnJvciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeEVycm9yIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhFcnJvciB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjdXN0b21EZXNjcmlwdGlvbicsICdjdXN0b21JY29uJywgJ2N1c3RvbVRpdGxlJywgJ2Vycm9yQ29kZScsICdsYW5ndWFnZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LWVycm9yLXBhZ2UnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2N1c3RvbURlc2NyaXB0aW9uJywgJ2N1c3RvbUljb24nLCAnY3VzdG9tVGl0bGUnLCAnZXJyb3JDb2RlJywgJ2xhbmd1YWdlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeEVycm9yUGFnZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeEVycm9yUGFnZSBleHRlbmRzIENvbXBvbmVudHMuU2l4RXJyb3JQYWdlIHt9XG5cblxuQFByb3h5Q21wKHtcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtZmlsZS1saXN0JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogW10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeEZpbGVMaXN0IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4RmlsZUxpc3QgZXh0ZW5kcyBDb21wb25lbnRzLlNpeEZpbGVMaXN0IHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2RhdGUnLCAnaWRlbnRpZmllcicsICduYW1lJywgJ25vZGVsZXRlJywgJ25vZG93bmxvYWQnLCAnc2l6ZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LWZpbGUtbGlzdC1pdGVtJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydkYXRlJywgJ2lkZW50aWZpZXInLCAnbmFtZScsICdub2RlbGV0ZScsICdub2Rvd25sb2FkJywgJ3NpemUnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4RmlsZUxpc3RJdGVtIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2l4LWZpbGUtbGlzdC1pdGVtLWRvd25sb2FkJywgJ3NpeC1maWxlLWxpc3QtaXRlbS1yZW1vdmUnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFNpeEZpbGVMaXN0RG93bmxvYWRQYXlsb2FkIGFzIElTaXhGaWxlTGlzdEl0ZW1TaXhGaWxlTGlzdERvd25sb2FkUGF5bG9hZCB9IGZyb20gJ0BzaXgtZ3JvdXAvdWktbGlicmFyeSc7XG5pbXBvcnQgdHlwZSB7IFNpeEZpbGVMaXN0UmVtb3ZlUGF5bG9hZCBhcyBJU2l4RmlsZUxpc3RJdGVtU2l4RmlsZUxpc3RSZW1vdmVQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeEZpbGVMaXN0SXRlbSBleHRlbmRzIENvbXBvbmVudHMuU2l4RmlsZUxpc3RJdGVtIHtcbiAgLyoqXG4gICAqIFRyaWdnZXJlZCBvbiBmaWxlIGRvd25sb2FkLlxuICAgKi9cbiAgJ3NpeC1maWxlLWxpc3QtaXRlbS1kb3dubG9hZCc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4RmlsZUxpc3RJdGVtU2l4RmlsZUxpc3REb3dubG9hZFBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIFRyaWdnZXJlZCBvbiBmaWxlIHJlbW92ZS5cbiAgICovXG4gICdzaXgtZmlsZS1saXN0LWl0ZW0tcmVtb3ZlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhGaWxlTGlzdEl0ZW1TaXhGaWxlTGlzdFJlbW92ZVBheWxvYWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYWNjZXB0JywgJ2NvbXBhY3QnLCAnZGlzYWJsZWQnLCAnZXJyb3JUZXh0JywgJ2ludmFsaWQnLCAnbGFiZWwnLCAnbWF4RmlsZVNpemUnLCAnbXVsdGlwbGUnLCAndXBsb2FkaW5nJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtZmlsZS11cGxvYWQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FjY2VwdCcsICdjb21wYWN0JywgJ2Rpc2FibGVkJywgJ2Vycm9yVGV4dCcsICdpbnZhbGlkJywgJ2xhYmVsJywgJ21heEZpbGVTaXplJywgJ211bHRpcGxlJywgJ3VwbG9hZGluZyddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhGaWxlVXBsb2FkIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2l4LWZpbGUtdXBsb2FkLXN1Y2Nlc3MnLCAnc2l4LWZpbGUtdXBsb2FkLWZhaWx1cmUnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFNpeEZpbGVVcGxvYWRTdWNjZXNzUGF5bG9hZCBhcyBJU2l4RmlsZVVwbG9hZFNpeEZpbGVVcGxvYWRTdWNjZXNzUGF5bG9hZCB9IGZyb20gJ0BzaXgtZ3JvdXAvdWktbGlicmFyeSc7XG5pbXBvcnQgdHlwZSB7IFNpeEZpbGVVcGxvYWRGYWlsdXJlUGF5bG9hZCBhcyBJU2l4RmlsZVVwbG9hZFNpeEZpbGVVcGxvYWRGYWlsdXJlUGF5bG9hZCB9IGZyb20gJ0BzaXgtZ3JvdXAvdWktbGlicmFyeSc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhGaWxlVXBsb2FkIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhGaWxlVXBsb2FkIHtcbiAgLyoqXG4gICAqIFRyaWdnZXJzIHdoZW4gYSBmaWxlIGlzIGFkZGVkLlxuICAgKi9cbiAgJ3NpeC1maWxlLXVwbG9hZC1zdWNjZXNzJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhGaWxlVXBsb2FkU2l4RmlsZVVwbG9hZFN1Y2Nlc3NQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBUcmlnZ2VycyB3aGVuIGFuIHVwbG9hZGVkIGZpbGUgZG9lc24ndCBtYXRjaCBNSU1FIHR5cGUgb3IgbWF4IGZpbGUgc2l6ZS5cbiAgICovXG4gICdzaXgtZmlsZS11cGxvYWQtZmFpbHVyZSc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4RmlsZVVwbG9hZFNpeEZpbGVVcGxvYWRGYWlsdXJlUGF5bG9hZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LWZvb3RlcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhGb290ZXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhGb290ZXIgZXh0ZW5kcyBDb21wb25lbnRzLlNpeEZvb3RlciB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydkaXNhYmxlZCcsICdoZWxwVGV4dCcsICdsYWJlbCcsICdyZXF1aXJlZCcsICdzaXplJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtZ3JvdXAtbGFiZWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2hlbHBUZXh0JywgJ2xhYmVsJywgJ3JlcXVpcmVkJywgJ3NpemUnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4R3JvdXBMYWJlbCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeEdyb3VwTGFiZWwgZXh0ZW5kcyBDb21wb25lbnRzLlNpeEdyb3VwTGFiZWwge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY2xpY2thYmxlTG9nbycsICdjdXN0b20nLCAnaGlkZUhhbWJ1cmdlck1lbnUnLCAnbG9nbycsICdvcGVuSGFtYnVyZ2VyTWVudScsICdvcGVuU2VhcmNoJywgJ3NoaWZ0Q29udGVudCddLFxuICBtZXRob2RzOiBbJ3NldFNlYXJjaE9wZW5TdGF0ZScsICdnZXRJc1NlYXJjaE9wZW4nXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1oZWFkZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NsaWNrYWJsZUxvZ28nLCAnY3VzdG9tJywgJ2hpZGVIYW1idXJnZXJNZW51JywgJ2xvZ28nLCAnb3BlbkhhbWJ1cmdlck1lbnUnLCAnb3BlblNlYXJjaCcsICdzaGlmdENvbnRlbnQnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4SGVhZGVyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2l4LWhlYWRlci1hcHAtbmFtZS1jbGlja2VkJywgJ3NpeC1oZWFkZXItYXBwLXN3aXRjaGVyLXNlbGVjdCcsICdzaXgtaGVhZGVyLXByb2ZpbGUtc2VsZWN0JywgJ3NpeC1oZWFkZXItaGFtYnVyZ2VyLW1lbnUtY2xpY2tlZCcsICdzaXgtaGVhZGVyLWxvZ28tY2xpY2tlZCcsICdzaXgtaGVhZGVyLXNlYXJjaC1maWVsZC10b2dnbGUnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IEVtcHR5UGF5bG9hZCBhcyBJU2l4SGVhZGVyRW1wdHlQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcbmltcG9ydCB0eXBlIHsgU2l4SGVhZGVyQXBwU3dpdGNoZXJTZWxlY3RQYXlsb2FkIGFzIElTaXhIZWFkZXJTaXhIZWFkZXJBcHBTd2l0Y2hlclNlbGVjdFBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuaW1wb3J0IHR5cGUgeyBTaXhIZWFkZXJQcm9maWxlU2VsZWN0UGF5bG9hZCBhcyBJU2l4SGVhZGVyU2l4SGVhZGVyUHJvZmlsZVNlbGVjdFBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuaW1wb3J0IHR5cGUgeyBTaXhIZWFkZXJTZWFyY2hGaWVsZFRvZ2dsZSBhcyBJU2l4SGVhZGVyU2l4SGVhZGVyU2VhcmNoRmllbGRUb2dnbGUgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4SGVhZGVyIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhIZWFkZXIge1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBuYW1lIG9mIHRoZSBzZWxlY3RlZCBhcHAgaXMgY2xpY2tlZC4gQGRlcHJlY2F0ZWQgVXNlIHNpeC1oZWFkZXIgYGN1c3RvbWAgcHJvcGVydHkgd2l0aCBgc2l4LWhlYWRlci1kcm9wZG93bi1pdGVtYCBhbmQgYHNpeC1oZWFkZXItbWVudS1idXR0b25gIGluc3RlYWRcbiAgICovXG4gICdzaXgtaGVhZGVyLWFwcC1uYW1lLWNsaWNrZWQnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeEhlYWRlckVtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIGEgbWVudSBpdGVtIGlzIGluIHRoZSBhcHAgc3dpdGNoZXIgbWVudSBpcyBzZWxlY3RlZC4gQGRlcHJlY2F0ZWQgVXNlIHNpeC1oZWFkZXIgYGN1c3RvbWAgcHJvcGVydHkgd2l0aCBgc2l4LWhlYWRlci1kcm9wZG93bi1pdGVtYCBhbmQgYHNpeC1oZWFkZXItbWVudS1idXR0b25gIGluc3RlYWRcbiAgICovXG4gICdzaXgtaGVhZGVyLWFwcC1zd2l0Y2hlci1zZWxlY3QnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeEhlYWRlclNpeEhlYWRlckFwcFN3aXRjaGVyU2VsZWN0UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIGEgbWVudSBpdGVtIGlzIGluIHRoZSBwcm9maWxlIG1lbnUgaXMgc2VsZWN0ZWQuIEBkZXByZWNhdGVkIFVzZSBzaXgtaGVhZGVyIGBjdXN0b21gIHByb3BlcnR5IHdpdGggYHNpeC1oZWFkZXItZHJvcGRvd24taXRlbWAgYW5kIGBzaXgtYXZhdGFyYCBpbnN0ZWFkXG4gICAqL1xuICAnc2l4LWhlYWRlci1wcm9maWxlLXNlbGVjdCc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4SGVhZGVyU2l4SGVhZGVyUHJvZmlsZVNlbGVjdFBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgaGFtYnVyZ2VyIG1lbnUgaXMgY2xpY2tlZC4gQGRlcHJlY2F0ZWQgVXNlIHNpeC1oZWFkZXIgYGN1c3RvbWAgcHJvcGVydHkgaW5zdGVhZFxuICAgKi9cbiAgJ3NpeC1oZWFkZXItaGFtYnVyZ2VyLW1lbnUtY2xpY2tlZCc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4SGVhZGVyRW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGhlYWRlciBsb2dvIGlzIGNsaWNrZWQuIEBkZXByZWNhdGVkIFVzZSBzaXgtaGVhZGVyIGBjdXN0b21gIHByb3BlcnR5IGluc3RlYWRcbiAgICovXG4gICdzaXgtaGVhZGVyLWxvZ28tY2xpY2tlZCc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4SGVhZGVyRW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gc2VhcmNoIGZpZWxkIGlzIHRvZ2dsZWQuIEBkZXByZWNhdGVkIFVzZSBzaXgtaGVhZGVyIGBjdXN0b21gIHByb3BlcnR5IGluc3RlYWRcbiAgICovXG4gICdzaXgtaGVhZGVyLXNlYXJjaC1maWVsZC10b2dnbGUnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeEhlYWRlclNpeEhlYWRlclNlYXJjaEZpZWxkVG9nZ2xlPj47XG59XG5cblxuQFByb3h5Q21wKHtcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtaGVhZGVyLWRyb3Bkb3duLWl0ZW0nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4SGVhZGVyRHJvcGRvd25JdGVtIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4SGVhZGVyRHJvcGRvd25JdGVtIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhIZWFkZXJEcm9wZG93bkl0ZW0ge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYWN0aXZlJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtaGVhZGVyLWl0ZW0nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FjdGl2ZSddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhIZWFkZXJJdGVtIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4SGVhZGVySXRlbSBleHRlbmRzIENvbXBvbmVudHMuU2l4SGVhZGVySXRlbSB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydpY29uJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtaGVhZGVyLW1lbnUtYnV0dG9uJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeEhlYWRlck1lbnVCdXR0b24ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhIZWFkZXJNZW51QnV0dG9uIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhIZWFkZXJNZW51QnV0dG9uIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2ZpbGxlZCcsICdzaXplJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtaWNvbicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnZmlsbGVkJywgJ3NpemUnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4SWNvbiB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeEljb24gZXh0ZW5kcyBDb21wb25lbnRzLlNpeEljb24ge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnZG93bmxvYWQnLCAnaHJlZicsICdodG1sJywgJ2xhYmVsJywgJ25hbWUnLCAnc2l6ZScsICd0YXJnZXQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1pY29uLWJ1dHRvbicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnZG93bmxvYWQnLCAnaHJlZicsICdodG1sJywgJ2xhYmVsJywgJ25hbWUnLCAnc2l6ZScsICd0YXJnZXQnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4SWNvbkJ1dHRvbiB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeEljb25CdXR0b24gZXh0ZW5kcyBDb21wb25lbnRzLlNpeEljb25CdXR0b24ge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYXV0b2NhcGl0YWxpemUnLCAnYXV0b2NvbXBsZXRlJywgJ2F1dG9jb3JyZWN0JywgJ2F1dG9mb2N1cycsICdjbGVhcmFibGUnLCAnZGlzYWJsZWQnLCAnZHJvcGRvd25TZWFyY2gnLCAnZXJyb3JUZXh0JywgJ2Vycm9yVGV4dENvdW50JywgJ2hlbHBUZXh0JywgJ2lucHV0bW9kZScsICdpbnZhbGlkJywgJ2xhYmVsJywgJ2xpbmUnLCAnbWF4JywgJ21heGxlbmd0aCcsICdtaW4nLCAnbWlubGVuZ3RoJywgJ25hbWUnLCAncGF0dGVybicsICdwaWxsJywgJ3BsYWNlaG9sZGVyJywgJ3JlYWRvbmx5JywgJ3JlcXVpcmVkJywgJ3NpemUnLCAnc3BlbGxjaGVjaycsICdzdGVwJywgJ3RvZ2dsZVBhc3N3b3JkJywgJ3R5cGUnLCAndmFsdWUnXSxcbiAgbWV0aG9kczogWydzZXRGb2N1cycsICdyZW1vdmVGb2N1cycsICdzZWxlY3QnLCAnc2V0U2VsZWN0aW9uUmFuZ2UnLCAnZ2V0U2VsZWN0aW9uUmFuZ2UnLCAnc2V0UmFuZ2VUZXh0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtaW5wdXQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2F1dG9jYXBpdGFsaXplJywgJ2F1dG9jb21wbGV0ZScsICdhdXRvY29ycmVjdCcsICdhdXRvZm9jdXMnLCAnY2xlYXJhYmxlJywgJ2Rpc2FibGVkJywgJ2Ryb3Bkb3duU2VhcmNoJywgJ2Vycm9yVGV4dCcsICdlcnJvclRleHRDb3VudCcsICdoZWxwVGV4dCcsICdpbnB1dG1vZGUnLCAnaW52YWxpZCcsICdsYWJlbCcsICdsaW5lJywgJ21heCcsICdtYXhsZW5ndGgnLCAnbWluJywgJ21pbmxlbmd0aCcsICduYW1lJywgJ3BhdHRlcm4nLCAncGlsbCcsICdwbGFjZWhvbGRlcicsICdyZWFkb25seScsICdyZXF1aXJlZCcsICdzaXplJywgJ3NwZWxsY2hlY2snLCAnc3RlcCcsICd0b2dnbGVQYXNzd29yZCcsICd0eXBlJywgJ3ZhbHVlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeElucHV0IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2l4LWlucHV0LWNoYW5nZScsICdzaXgtaW5wdXQtY2xlYXInLCAnc2l4LWlucHV0LWlucHV0JywgJ3NpeC1pbnB1dC1mb2N1cycsICdzaXgtaW5wdXQtYmx1ciddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgRW1wdHlQYXlsb2FkIGFzIElTaXhJbnB1dEVtcHR5UGF5bG9hZCB9IGZyb20gJ0BzaXgtZ3JvdXAvdWktbGlicmFyeSc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhJbnB1dCBleHRlbmRzIENvbXBvbmVudHMuU2l4SW5wdXQge1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBjb250cm9sJ3MgdmFsdWUgY2hhbmdlcy4gQWNjZXNzIHRoZSBuZXcgdmFsdWUgdmlhIGV2ZW50LnRhcmdldC52YWx1ZS5cbiAgICovXG4gICdzaXgtaW5wdXQtY2hhbmdlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhJbnB1dEVtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBjbGVhciBidXR0b24gaXMgYWN0aXZhdGVkLlxuICAgKi9cbiAgJ3NpeC1pbnB1dC1jbGVhcic6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4SW5wdXRFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgY29udHJvbCByZWNlaXZlcyBpbnB1dC4gQWNjZXNzIHRoZSBuZXcgdmFsdWUgdmlhIGV2ZW50LnRhcmdldC52YWx1ZS5cbiAgICovXG4gICdzaXgtaW5wdXQtaW5wdXQnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeElucHV0RW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGNvbnRyb2wgZ2FpbnMgZm9jdXMuXG4gICAqL1xuICAnc2l4LWlucHV0LWZvY3VzJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhJbnB1dEVtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBjb250cm9sIGxvc2VzIGZvY3VzLiBBY2Nlc3MgdGhlIG5ldyB2YWx1ZSB2aWEgZXZlbnQudGFyZ2V0LnZhbHVlLlxuICAgKi9cbiAgJ3NpeC1pbnB1dC1ibHVyJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhJbnB1dEVtcHR5UGF5bG9hZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydkZWJvdW5jZScsICdpbnRlcnZhbCcsICdpdGVtcycsICdtYXgnLCAnbWluJywgJ3BhZGRlZCcsICdwYWRkaW5nQ2hhcicsICdwYWRkaW5nRGlyZWN0aW9uJywgJ3BhZGRpbmdMZW5ndGgnLCAncm91bmR0cmlwJywgJ3N0ZXAnLCAndGltZW91dCcsICd0eXBlJywgJ3ZhbHVlJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtaXRlbS1waWNrZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2RlYm91bmNlJywgJ2ludGVydmFsJywgJ2l0ZW1zJywgJ21heCcsICdtaW4nLCAncGFkZGVkJywgJ3BhZGRpbmdDaGFyJywgJ3BhZGRpbmdEaXJlY3Rpb24nLCAncGFkZGluZ0xlbmd0aCcsICdyb3VuZHRyaXAnLCAnc3RlcCcsICd0aW1lb3V0JywgJ3R5cGUnLCAndmFsdWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4SXRlbVBpY2tlciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3NpeC1pdGVtLXBpY2tlci1jaGFuZ2UnLCAnc2l4LWl0ZW0tcGlja2VyLWNoYW5nZS1kZWJvdW5jZWQnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFNpeEl0ZW1QaWNrZXJDaGFuZ2VQYXlsb2FkIGFzIElTaXhJdGVtUGlja2VyU2l4SXRlbVBpY2tlckNoYW5nZVBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4SXRlbVBpY2tlciBleHRlbmRzIENvbXBvbmVudHMuU2l4SXRlbVBpY2tlciB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGl0ZW0gcGlja2VyJ3MgdmFsdWUgY2hhbmdlc1xuICAgKi9cbiAgJ3NpeC1pdGVtLXBpY2tlci1jaGFuZ2UnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeEl0ZW1QaWNrZXJTaXhJdGVtUGlja2VyQ2hhbmdlUGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBpdGVtIHBpY2tlcidzIHZhbHVlIGNoYW5nZXMsIGJ1dCBkZWJvdW5jZWRcbiAgICovXG4gICdzaXgtaXRlbS1waWNrZXItY2hhbmdlLWRlYm91bmNlZCc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4SXRlbVBpY2tlclNpeEl0ZW1QaWNrZXJDaGFuZ2VQYXlsb2FkPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2xhbmd1YWdlcycsICdzZWxlY3RlZCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LWxhbmd1YWdlLXN3aXRjaGVyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydsYW5ndWFnZXMnLCAnc2VsZWN0ZWQnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4TGFuZ3VhZ2VTd2l0Y2hlciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3NpeC1sYW5ndWFnZS1zd2l0Y2hlci1jaGFuZ2UnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFNpeExhbmd1YWdlU3dpdGNoZXJDaGFuZ2VQYXlsb2FkIGFzIElTaXhMYW5ndWFnZVN3aXRjaGVyU2l4TGFuZ3VhZ2VTd2l0Y2hlckNoYW5nZVBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4TGFuZ3VhZ2VTd2l0Y2hlciBleHRlbmRzIENvbXBvbmVudHMuU2l4TGFuZ3VhZ2VTd2l0Y2hlciB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGxhbmd1YWdlIHN3aXRjaGVycyB2YWx1ZSBjaGFuZ2VzXG4gICAqL1xuICAnc2l4LWxhbmd1YWdlLXN3aXRjaGVyLWNoYW5nZSc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4TGFuZ3VhZ2VTd2l0Y2hlclNpeExhbmd1YWdlU3dpdGNoZXJDaGFuZ2VQYXlsb2FkPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NvbHVtbnMnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1sYXlvdXQtZ3JpZCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY29sdW1ucyddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhMYXlvdXRHcmlkIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4TGF5b3V0R3JpZCBleHRlbmRzIENvbXBvbmVudHMuU2l4TGF5b3V0R3JpZCB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydicmFuZCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LWxvZ28nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2JyYW5kJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeExvZ28ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhMb2dvIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhMb2dvIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ3BhZGRlZCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LW1haW4tY29udGFpbmVyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydwYWRkZWQnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4TWFpbkNvbnRhaW5lciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeE1haW5Db250YWluZXIgZXh0ZW5kcyBDb21wb25lbnRzLlNpeE1haW5Db250YWluZXIge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZGlzYWJsZUtleWJvYXJkSGFuZGxpbmcnLCAnaXRlbVNpemUnLCAnaXRlbXMnLCAnaXRlbXNTaG93bicsICdyZW1vdmVCb3hTaGFkb3cnLCAnc2Nyb2xsaW5nRGVib3VuY2UnLCAndmlydHVhbFNjcm9sbCddLFxuICBtZXRob2RzOiBbJ3R5cGVUb1NlbGVjdCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LW1lbnUnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2Rpc2FibGVLZXlib2FyZEhhbmRsaW5nJywgJ2l0ZW1TaXplJywgJ2l0ZW1zJywgJ2l0ZW1zU2hvd24nLCAncmVtb3ZlQm94U2hhZG93JywgJ3Njcm9sbGluZ0RlYm91bmNlJywgJ3ZpcnR1YWxTY3JvbGwnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4TWVudSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3NpeC1tZW51LWl0ZW0tc2VsZWN0ZWQnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFNpeE1lbnVJdGVtU2VsZWN0ZWRQYXlsb2FkIGFzIElTaXhNZW51U2l4TWVudUl0ZW1TZWxlY3RlZFBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4TWVudSBleHRlbmRzIENvbXBvbmVudHMuU2l4TWVudSB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gYSBtZW51IGl0ZW0gaXMgc2VsZWN0ZWQuXG4gICAqL1xuICAnc2l4LW1lbnUtaXRlbS1zZWxlY3RlZCc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4TWVudVNpeE1lbnVJdGVtU2VsZWN0ZWRQYXlsb2FkPj47XG59XG5cblxuQFByb3h5Q21wKHtcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtbWVudS1kaXZpZGVyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogW10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeE1lbnVEaXZpZGVyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4TWVudURpdmlkZXIgZXh0ZW5kcyBDb21wb25lbnRzLlNpeE1lbnVEaXZpZGVyIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NoZWNrVHlwZScsICdjaGVja2VkJywgJ2Rpc2FibGVkJywgJ3ZhbHVlJ10sXG4gIG1ldGhvZHM6IFsnc2V0Rm9jdXMnLCAncmVtb3ZlRm9jdXMnLCAnZ2V0VGV4dExhYmVsJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtbWVudS1pdGVtJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjaGVja1R5cGUnLCAnY2hlY2tlZCcsICdkaXNhYmxlZCcsICd2YWx1ZSddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhNZW51SXRlbSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeE1lbnVJdGVtIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhNZW51SXRlbSB7fVxuXG5cbkBQcm94eUNtcCh7XG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LW1lbnUtbGFiZWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4TWVudUxhYmVsIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4TWVudUxhYmVsIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhNZW51TGFiZWwge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnc2l6ZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LXBpY3RvJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydzaXplJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeFBpY3RvIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4UGljdG8gZXh0ZW5kcyBDb21wb25lbnRzLlNpeFBpY3RvIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2luZGV0ZXJtaW5hdGUnLCAncGVyY2VudGFnZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LXByb2dyZXNzLWJhcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnaW5kZXRlcm1pbmF0ZScsICdwZXJjZW50YWdlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeFByb2dyZXNzQmFyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4UHJvZ3Jlc3NCYXIgZXh0ZW5kcyBDb21wb25lbnRzLlNpeFByb2dyZXNzQmFyIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ3BlcmNlbnRhZ2UnLCAnc2l6ZScsICdzdHJva2VXaWR0aCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LXByb2dyZXNzLXJpbmcnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ3BlcmNlbnRhZ2UnLCAnc2l6ZScsICdzdHJva2VXaWR0aCddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhQcm9ncmVzc1Jpbmcge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhQcm9ncmVzc1JpbmcgZXh0ZW5kcyBDb21wb25lbnRzLlNpeFByb2dyZXNzUmluZyB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjaGVja2VkJywgJ2Rpc2FibGVkJywgJ2ludmFsaWQnLCAnbmFtZScsICd2YWx1ZSddLFxuICBtZXRob2RzOiBbJ3NldEZvY3VzJywgJ3JlbW92ZUZvY3VzJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtcmFkaW8nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NoZWNrZWQnLCAnZGlzYWJsZWQnLCAnaW52YWxpZCcsICduYW1lJywgJ3ZhbHVlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeFJhZGlvIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2l4LXJhZGlvLWJsdXInLCAnc2l4LXJhZGlvLWNoYW5nZScsICdzaXgtcmFkaW8tZm9jdXMnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IEVtcHR5UGF5bG9hZCBhcyBJU2l4UmFkaW9FbXB0eVBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4UmFkaW8gZXh0ZW5kcyBDb21wb25lbnRzLlNpeFJhZGlvIHtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgY29udHJvbCBsb3NlcyBmb2N1cy5cbiAgICovXG4gICdzaXgtcmFkaW8tYmx1cic6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4UmFkaW9FbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgY29udHJvbCdzIGNoZWNrZWQgc3RhdGUgY2hhbmdlcy5cbiAgICovXG4gICdzaXgtcmFkaW8tY2hhbmdlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhSYWRpb0VtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBjb250cm9sIGdhaW5zIGZvY3VzLlxuICAgKi9cbiAgJ3NpeC1yYWRpby1mb2N1cyc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4UmFkaW9FbXB0eVBheWxvYWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnZXJyb3JUZXh0JywgJ2Vycm9yVGV4dENvdW50JywgJ2hlbHBUZXh0JywgJ2ludmFsaWQnLCAnbGFiZWwnLCAnbWF4JywgJ21pbicsICduYW1lJywgJ3JlcXVpcmVkJywgJ3N0ZXAnLCAndG9vbHRpcCcsICd0b29sdGlwRm9ybWF0dGVyJywgJ3ZhbHVlJ10sXG4gIG1ldGhvZHM6IFsnc2V0Rm9jdXMnLCAncmVtb3ZlRm9jdXMnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1yYW5nZScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnZXJyb3JUZXh0JywgJ2Vycm9yVGV4dENvdW50JywgJ2hlbHBUZXh0JywgJ2ludmFsaWQnLCAnbGFiZWwnLCAnbWF4JywgJ21pbicsICduYW1lJywgJ3JlcXVpcmVkJywgJ3N0ZXAnLCAndG9vbHRpcCcsICd0b29sdGlwRm9ybWF0dGVyJywgJ3ZhbHVlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeFJhbmdlIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2l4LXJhbmdlLWNoYW5nZScsICdzaXgtcmFuZ2UtYmx1cicsICdzaXgtcmFuZ2UtZm9jdXMnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IEVtcHR5UGF5bG9hZCBhcyBJU2l4UmFuZ2VFbXB0eVBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4UmFuZ2UgZXh0ZW5kcyBDb21wb25lbnRzLlNpeFJhbmdlIHtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgY29udHJvbCdzIHZhbHVlIGNoYW5nZXMuXG4gICAqL1xuICAnc2l4LXJhbmdlLWNoYW5nZSc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4UmFuZ2VFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgY29udHJvbCBsb3NlcyBmb2N1cy5cbiAgICovXG4gICdzaXgtcmFuZ2UtYmx1cic6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4UmFuZ2VFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgY29udHJvbCBnYWlucyBmb2N1cy5cbiAgICovXG4gICdzaXgtcmFuZ2UtZm9jdXMnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFJhbmdlRW1wdHlQYXlsb2FkPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ3BhZGRlZCcsICdzdGFnZScsICd2ZXJzaW9uJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtcm9vdCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsncGFkZGVkJywgJ3N0YWdlJywgJ3ZlcnNpb24nXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4Um9vdCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeFJvb3QgZXh0ZW5kcyBDb21wb25lbnRzLlNpeFJvb3Qge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY2xlYXJhYmxlJywgJ2RlYm91bmNlJywgJ2Rpc2FibGVkJywgJ3BsYWNlaG9sZGVyJywgJ3ZhbHVlJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtc2VhcmNoLWZpZWxkJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjbGVhcmFibGUnLCAnZGVib3VuY2UnLCAnZGlzYWJsZWQnLCAncGxhY2Vob2xkZXInLCAndmFsdWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4U2VhcmNoRmllbGQge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzaXgtc2VhcmNoLWZpZWxkLWNoYW5nZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgU2l4U2VhcmNoRmllbGRDaGFuZ2VQYXlsb2FkIGFzIElTaXhTZWFyY2hGaWVsZFNpeFNlYXJjaEZpZWxkQ2hhbmdlUGF5bG9hZCB9IGZyb20gJ0BzaXgtZ3JvdXAvdWktbGlicmFyeSc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhTZWFyY2hGaWVsZCBleHRlbmRzIENvbXBvbmVudHMuU2l4U2VhcmNoRmllbGQge1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIGEgc2VhcmNoIGlzIHRyaWdnZXJlZFxuICAgKi9cbiAgJ3NpeC1zZWFyY2gtZmllbGQtY2hhbmdlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhTZWFyY2hGaWVsZFNpeFNlYXJjaEZpZWxkQ2hhbmdlUGF5bG9hZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhc3luY0ZpbHRlcicsICdhdXRvY29tcGxldGUnLCAnY2xlYXJhYmxlJywgJ2Rpc2FibGVkJywgJ2Vycm9yVGV4dCcsICdlcnJvclRleHRDb3VudCcsICdmaWx0ZXInLCAnZmlsdGVyRGVib3VuY2UnLCAnZmlsdGVyUGxhY2Vob2xkZXInLCAnaGVscFRleHQnLCAnaG9pc3QnLCAnaW5wdXREZWJvdW5jZScsICdpbnZhbGlkJywgJ2xhYmVsJywgJ2xpbmUnLCAnbWF4VGFnc1Zpc2libGUnLCAnbXVsdGlwbGUnLCAnbmFtZScsICdvcHRpb25zJywgJ3BpbGwnLCAncGxhY2Vob2xkZXInLCAncmVxdWlyZWQnLCAnc2VsZWN0QWxsQnV0dG9uJywgJ3NlbGVjdEFsbFRleHQnLCAnc2l6ZScsICd2YWx1ZScsICd2aXJ0dWFsU2Nyb2xsJ10sXG4gIG1ldGhvZHM6IFsnc2V0Rm9jdXMnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1zZWxlY3QnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FzeW5jRmlsdGVyJywgJ2F1dG9jb21wbGV0ZScsICdjbGVhcmFibGUnLCAnZGlzYWJsZWQnLCAnZXJyb3JUZXh0JywgJ2Vycm9yVGV4dENvdW50JywgJ2ZpbHRlcicsICdmaWx0ZXJEZWJvdW5jZScsICdmaWx0ZXJQbGFjZWhvbGRlcicsICdoZWxwVGV4dCcsICdob2lzdCcsICdpbnB1dERlYm91bmNlJywgJ2ludmFsaWQnLCAnbGFiZWwnLCAnbGluZScsICdtYXhUYWdzVmlzaWJsZScsICdtdWx0aXBsZScsICduYW1lJywgJ29wdGlvbnMnLCAncGlsbCcsICdwbGFjZWhvbGRlcicsICdyZXF1aXJlZCcsICdzZWxlY3RBbGxCdXR0b24nLCAnc2VsZWN0QWxsVGV4dCcsICdzaXplJywgJ3ZhbHVlJywgJ3ZpcnR1YWxTY3JvbGwnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4U2VsZWN0IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2l4LXNlbGVjdC1jaGFuZ2UnLCAnc2l4LXNlbGVjdC1mb2N1cycsICdzaXgtc2VsZWN0LWJsdXInXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IFNpeFNlbGVjdENoYW5nZVBheWxvYWQgYXMgSVNpeFNlbGVjdFNpeFNlbGVjdENoYW5nZVBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuaW1wb3J0IHR5cGUgeyBFbXB0eVBheWxvYWQgYXMgSVNpeFNlbGVjdEVtcHR5UGF5bG9hZCB9IGZyb20gJ0BzaXgtZ3JvdXAvdWktbGlicmFyeSc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhTZWxlY3QgZXh0ZW5kcyBDb21wb25lbnRzLlNpeFNlbGVjdCB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGNvbnRyb2wncyB2YWx1ZSBjaGFuZ2VzLlxuICAgKi9cbiAgJ3NpeC1zZWxlY3QtY2hhbmdlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhTZWxlY3RTaXhTZWxlY3RDaGFuZ2VQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGNvbnRyb2wgZ2FpbnMgZm9jdXMuXG4gICAqL1xuICAnc2l4LXNlbGVjdC1mb2N1cyc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4U2VsZWN0RW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGNvbnRyb2wgbG9zZXMgZm9jdXMuXG4gICAqL1xuICAnc2l4LXNlbGVjdC1ibHVyJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhTZWxlY3RFbXB0eVBheWxvYWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnb3BlbicsICdwb3NpdGlvbicsICd0b2dnbGVkJywgJ3dpZHRoJ10sXG4gIG1ldGhvZHM6IFsndG9nZ2xlJywgJ3Nob3cnLCAnaGlkZScsICdzZWxlY3RJdGVtQnlJbmRleCcsICdzZWxlY3RJdGVtQnlOYW1lJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtc2lkZWJhcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnb3BlbicsICdwb3NpdGlvbicsICd0b2dnbGVkJywgJ3dpZHRoJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeFNpZGViYXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzaXgtc2lkZWJhci1zaG93JywgJ3NpeC1zaWRlYmFyLWFmdGVyLXNob3cnLCAnc2l4LXNpZGViYXItaGlkZScsICdzaXgtc2lkZWJhci1hZnRlci1oaWRlJywgJ3NpeC1zaWRlYmFyLWluaXRpYWwtZm9jdXMnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IEVtcHR5UGF5bG9hZCBhcyBJU2l4U2lkZWJhckVtcHR5UGF5bG9hZCB9IGZyb20gJ0BzaXgtZ3JvdXAvdWktbGlicmFyeSc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhTaWRlYmFyIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhTaWRlYmFyIHtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgc2lkZWJhciBvcGVucy4gQ2FsbGluZyBgZXZlbnQucHJldmVudERlZmF1bHQoKWAgd2lsbCBwcmV2ZW50IGl0IGZyb20gYmVpbmcgb3BlbmVkLlxuICAgKi9cbiAgJ3NpeC1zaWRlYmFyLXNob3cnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFNpZGViYXJFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgYWZ0ZXIgdGhlIHNpZGViYXIgb3BlbnMgYW5kIGFsbCB0cmFuc2l0aW9ucyBhcmUgY29tcGxldGUuXG4gICAqL1xuICAnc2l4LXNpZGViYXItYWZ0ZXItc2hvdyc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4U2lkZWJhckVtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBzaWRlYmFyIGNsb3Nlcy4gQ2FsbGluZyBgZXZlbnQucHJldmVudERlZmF1bHQoKWAgd2lsbCBwcmV2ZW50IGl0IGZyb20gYmVpbmcgY2xvc2VkLlxuICAgKi9cbiAgJ3NpeC1zaWRlYmFyLWhpZGUnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFNpZGViYXJFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgYWZ0ZXIgdGhlIHNpZGViYXIgY2xvc2VzIGFuZCBhbGwgdHJhbnNpdGlvbnMgYXJlIGNvbXBsZXRlLlxuICAgKi9cbiAgJ3NpeC1zaWRlYmFyLWFmdGVyLWhpZGUnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFNpZGViYXJFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgc2lkZWJhciBvcGVucyBhbmQgdGhlIHBhbmVsIGdhaW5zIGZvY3VzLiBDYWxsaW5nIGBldmVudC5wcmV2ZW50RGVmYXVsdCgpYCB3aWxsIHByZXZlbnQgZm9jdXMgYW5kXG5hbGxvdyB5b3UgdG8gc2V0IGl0IG9uIGEgZGlmZmVyZW50IGVsZW1lbnQgaW4gdGhlIHNpZGViYXIsIHN1Y2ggYXMgYW4gaW5wdXQgb3IgYnV0dG9uLlxuICAgKi9cbiAgJ3NpeC1zaWRlYmFyLWluaXRpYWwtZm9jdXMnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFNpZGViYXJFbXB0eVBheWxvYWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnaHJlZicsICdzZWxlY3RlZCcsICd2YWx1ZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LXNpZGViYXItaXRlbScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnaHJlZicsICdzZWxlY3RlZCcsICd2YWx1ZSddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhTaWRlYmFySXRlbSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeFNpZGViYXJJdGVtIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhTaWRlYmFySXRlbSB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydocmVmJywgJ2ljb24nLCAnbmFtZScsICdvcGVuJywgJ3N1bW1hcnlJY29uJywgJ3ZhbHVlJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtc2lkZWJhci1pdGVtLWdyb3VwJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydocmVmJywgJ2ljb24nLCAnbmFtZScsICdvcGVuJywgJ3N1bW1hcnlJY29uJywgJ3ZhbHVlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeFNpZGViYXJJdGVtR3JvdXAge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhTaWRlYmFySXRlbUdyb3VwIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhTaWRlYmFySXRlbUdyb3VwIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2xvZ28nLCAnc2l4J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtc3Bpbm5lcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnbG9nbycsICdzaXgnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4U3Bpbm5lciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeFNwaW5uZXIgZXh0ZW5kcyBDb21wb25lbnRzLlNpeFNwaW5uZXIge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnc3RhZ2UnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC1zdGFnZS1pbmRpY2F0b3InLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ3N0YWdlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeFN0YWdlSW5kaWNhdG9yIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4U3RhZ2VJbmRpY2F0b3IgZXh0ZW5kcyBDb21wb25lbnRzLlNpeFN0YWdlSW5kaWNhdG9yIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ2NoZWNrZWQnLCAnZGlzYWJsZWQnLCAnZXJyb3JUZXh0JywgJ2Vycm9yVGV4dENvdW50JywgJ2ludmFsaWQnLCAnbGFiZWwnLCAnbmFtZScsICdyZXF1aXJlZCcsICd2YWx1ZSddLFxuICBtZXRob2RzOiBbJ3NldEZvY3VzJywgJ3JlbW92ZUZvY3VzJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtc3dpdGNoJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjaGVja2VkJywgJ2Rpc2FibGVkJywgJ2Vycm9yVGV4dCcsICdlcnJvclRleHRDb3VudCcsICdpbnZhbGlkJywgJ2xhYmVsJywgJ25hbWUnLCAncmVxdWlyZWQnLCAndmFsdWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4U3dpdGNoIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2l4LXN3aXRjaC1ibHVyJywgJ3NpeC1zd2l0Y2gtY2hhbmdlJywgJ3NpeC1zd2l0Y2gtZm9jdXMnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IEVtcHR5UGF5bG9hZCBhcyBJU2l4U3dpdGNoRW1wdHlQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeFN3aXRjaCBleHRlbmRzIENvbXBvbmVudHMuU2l4U3dpdGNoIHtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgY29udHJvbCBsb3NlcyBmb2N1cy5cbiAgICovXG4gICdzaXgtc3dpdGNoLWJsdXInOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8Ym9vbGVhbj4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBjb250cm9sJ3MgY2hlY2tlZCBzdGF0ZSBjaGFuZ2VzLlxuICAgKi9cbiAgJ3NpeC1zd2l0Y2gtY2hhbmdlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGJvb2xlYW4+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgY29udHJvbCBnYWlucyBmb2N1cy5cbiAgICovXG4gICdzaXgtc3dpdGNoLWZvY3VzJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhTd2l0Y2hFbXB0eVBheWxvYWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnYWN0aXZlJywgJ2Nsb3NhYmxlJywgJ2Rpc2FibGVkJywgJ3BhbmVsJ10sXG4gIG1ldGhvZHM6IFsnc2V0Rm9jdXMnLCAncmVtb3ZlRm9jdXMnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC10YWInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FjdGl2ZScsICdjbG9zYWJsZScsICdkaXNhYmxlZCcsICdwYW5lbCddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhUYWIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzaXgtdGFiLWNsb3NlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBFbXB0eVBheWxvYWQgYXMgSVNpeFRhYkVtcHR5UGF5bG9hZCB9IGZyb20gJ0BzaXgtZ3JvdXAvdWktbGlicmFyeSc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhUYWIgZXh0ZW5kcyBDb21wb25lbnRzLlNpeFRhYiB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIHRhYiBpcyBjbG9zYWJsZSBhbmQgdGhlIGNsb3NlIGJ1dHRvbiBpcyBhY3RpdmF0ZWQuXG4gICAqL1xuICAnc2l4LXRhYi1jbG9zZSc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4VGFiRW1wdHlQYXlsb2FkPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgaW5wdXRzOiBbJ25vU2Nyb2xsQ29udHJvbHMnLCAncGxhY2VtZW50J10sXG4gIG1ldGhvZHM6IFsnc2hvdyddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LXRhYi1ncm91cCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnbm9TY3JvbGxDb250cm9scycsICdwbGFjZW1lbnQnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4VGFiR3JvdXAge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzaXgtdGFiLXNob3cnLCAnc2l4LXRhYi1oaWRlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBTaXhUYWJTaG93UGF5bG9hZCBhcyBJU2l4VGFiR3JvdXBTaXhUYWJTaG93UGF5bG9hZCB9IGZyb20gJ0BzaXgtZ3JvdXAvdWktbGlicmFyeSc7XG5pbXBvcnQgdHlwZSB7IFNpeFRhYkhpZGVQYXlsb2FkIGFzIElTaXhUYWJHcm91cFNpeFRhYkhpZGVQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeFRhYkdyb3VwIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhUYWJHcm91cCB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gYSB0YWIgaXMgc2hvd24uXG4gICAqL1xuICAnc2l4LXRhYi1zaG93JzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhUYWJHcm91cFNpeFRhYlNob3dQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gYSB0YWIgaXMgaGlkZGVuLlxuICAgKi9cbiAgJ3NpeC10YWItaGlkZSc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4VGFiR3JvdXBTaXhUYWJIaWRlUGF5bG9hZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhY3RpdmUnLCAnbmFtZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LXRhYi1wYW5lbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnYWN0aXZlJywgJ25hbWUnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4VGFiUGFuZWwge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTaXhUYWJQYW5lbCBleHRlbmRzIENvbXBvbmVudHMuU2l4VGFiUGFuZWwge31cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY2xlYXJhYmxlJywgJ3BpbGwnLCAnc2l6ZScsICd0eXBlJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtdGFnJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjbGVhcmFibGUnLCAncGlsbCcsICdzaXplJywgJ3R5cGUnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2l4VGFnIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2l4LXRhZy1jbGVhciddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgRW1wdHlQYXlsb2FkIGFzIElTaXhUYWdFbXB0eVBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4VGFnIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhUYWcge1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBjbGVhciBidXR0b24gaXMgYWN0aXZhdGVkLlxuICAgKi9cbiAgJ3NpeC10YWctY2xlYXInOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFRhZ0VtcHR5UGF5bG9hZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydhdXRvY2FwaXRhbGl6ZScsICdhdXRvY29tcGxldGUnLCAnYXV0b2NvcnJlY3QnLCAnYXV0b2ZvY3VzJywgJ2Rpc2FibGVkJywgJ2Vycm9yVGV4dCcsICdlcnJvclRleHRDb3VudCcsICdoZWxwVGV4dCcsICdpbnB1dG1vZGUnLCAnaW52YWxpZCcsICdsYWJlbCcsICdtYXhsZW5ndGgnLCAnbWlubGVuZ3RoJywgJ25hbWUnLCAncGxhY2Vob2xkZXInLCAncmVhZG9ubHknLCAncmVxdWlyZWQnLCAncmVzaXplJywgJ3Jvd3MnLCAnc2l6ZScsICdzcGVsbGNoZWNrJywgJ3ZhbHVlJ10sXG4gIG1ldGhvZHM6IFsnc2V0Rm9jdXMnLCAncmVtb3ZlRm9jdXMnLCAnc2VsZWN0JywgJ3NldFNlbGVjdGlvblJhbmdlJywgJ3NldFJhbmdlVGV4dCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2l4LXRleHRhcmVhJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhdXRvY2FwaXRhbGl6ZScsICdhdXRvY29tcGxldGUnLCAnYXV0b2NvcnJlY3QnLCAnYXV0b2ZvY3VzJywgJ2Rpc2FibGVkJywgJ2Vycm9yVGV4dCcsICdlcnJvclRleHRDb3VudCcsICdoZWxwVGV4dCcsICdpbnB1dG1vZGUnLCAnaW52YWxpZCcsICdsYWJlbCcsICdtYXhsZW5ndGgnLCAnbWlubGVuZ3RoJywgJ25hbWUnLCAncGxhY2Vob2xkZXInLCAncmVhZG9ubHknLCAncmVxdWlyZWQnLCAncmVzaXplJywgJ3Jvd3MnLCAnc2l6ZScsICdzcGVsbGNoZWNrJywgJ3ZhbHVlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeFRleHRhcmVhIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2l4LXRleHRhcmVhLWNoYW5nZScsICdzaXgtdGV4dGFyZWEtaW5wdXQnLCAnc2l4LXRleHRhcmVhLWZvY3VzJywgJ3NpeC10ZXh0YXJlYS1ibHVyJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBFbXB0eVBheWxvYWQgYXMgSVNpeFRleHRhcmVhRW1wdHlQYXlsb2FkIH0gZnJvbSAnQHNpeC1ncm91cC91aS1saWJyYXJ5JztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFNpeFRleHRhcmVhIGV4dGVuZHMgQ29tcG9uZW50cy5TaXhUZXh0YXJlYSB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGNvbnRyb2wncyB2YWx1ZSBjaGFuZ2VzLiBBY2Nlc3MgdGhlIG5ldyB2YWx1ZSB2aWEgZXZlbnQudGFyZ2V0LnZhbHVlLlxuICAgKi9cbiAgJ3NpeC10ZXh0YXJlYS1jaGFuZ2UnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFRleHRhcmVhRW1wdHlQYXlsb2FkPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGNvbnRyb2wgcmVjZWl2ZXMgaW5wdXQuIEFjY2VzcyB0aGUgbmV3IHZhbHVlIHZpYSBldmVudC50YXJnZXQudmFsdWUuXG4gICAqL1xuICAnc2l4LXRleHRhcmVhLWlucHV0JzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhUZXh0YXJlYUVtcHR5UGF5bG9hZD4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBjb250cm9sIGdhaW5zIGZvY3VzLlxuICAgKi9cbiAgJ3NpeC10ZXh0YXJlYS1mb2N1cyc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4VGV4dGFyZWFFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgY29udHJvbCBsb3NlcyBmb2N1cy4gQWNjZXNzIHRoZSBuZXcgdmFsdWUgdmlhIGV2ZW50LnRhcmdldC52YWx1ZS5cbiAgICovXG4gICdzaXgtdGV4dGFyZWEtYmx1cic6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4VGV4dGFyZWFFbXB0eVBheWxvYWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY2xvc2VhYmxlJywgJ2Rpc2FibGVUb29sdGlwJywgJ2Rpc2FibGVkJywgJ2VsZXZhdGVkJywgJ2ljb25OYW1lJywgJ2xhYmVsJywgJ3NpemUnXSxcbiAgbWV0aG9kczogWydoaWRlJywgJ3Nob3cnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC10aWxlJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjbG9zZWFibGUnLCAnZGlzYWJsZVRvb2x0aXAnLCAnZGlzYWJsZWQnLCAnZWxldmF0ZWQnLCAnaWNvbk5hbWUnLCAnbGFiZWwnLCAnc2l6ZSddLFxufSlcbmV4cG9ydCBjbGFzcyBTaXhUaWxlIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2l4LXRpbGUtY2xvc2VkJywgJ3NpeC10aWxlLXNlbGVjdGVkJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBFbXB0eVBheWxvYWQgYXMgSVNpeFRpbGVFbXB0eVBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4VGlsZSBleHRlbmRzIENvbXBvbmVudHMuU2l4VGlsZSB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIHRpbGUgd2FzIGNsb3NlZC5cbiAgICovXG4gICdzaXgtdGlsZS1jbG9zZWQnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFRpbGVFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgdGlsZSBpcyBzZWxlY3RlZC5cbiAgICovXG4gICdzaXgtdGlsZS1zZWxlY3RlZCc6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJU2l4VGlsZUVtcHR5UGF5bG9hZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGlucHV0czogWydjbGVhcmFibGUnLCAnZGVib3VuY2UnLCAnZGVmYXVsdFRpbWUnLCAnZGlzYWJsZWQnLCAnZXJyb3JUZXh0JywgJ2Vycm9yVGV4dENvdW50JywgJ2Zvcm1hdCcsICdob2lzdCcsICdpY29uUG9zaXRpb24nLCAnaW5saW5lJywgJ2ludGVydmFsJywgJ2ludmFsaWQnLCAnbGFiZWwnLCAnbmFtZScsICdvcGVuJywgJ3BsYWNlaG9sZGVyJywgJ3BsYWNlbWVudCcsICdyZWFkb25seScsICdyZXF1aXJlZCcsICdzZXBhcmF0b3InLCAnc2l6ZScsICd0aW1lb3V0JywgJ3ZhbHVlJ10sXG4gIG1ldGhvZHM6IFsnc2V0Rm9jdXMnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpeC10aW1lcGlja2VyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjbGVhcmFibGUnLCAnZGVib3VuY2UnLCAnZGVmYXVsdFRpbWUnLCAnZGlzYWJsZWQnLCAnZXJyb3JUZXh0JywgJ2Vycm9yVGV4dENvdW50JywgJ2Zvcm1hdCcsICdob2lzdCcsICdpY29uUG9zaXRpb24nLCAnaW5saW5lJywgJ2ludGVydmFsJywgJ2ludmFsaWQnLCAnbGFiZWwnLCAnbmFtZScsICdvcGVuJywgJ3BsYWNlaG9sZGVyJywgJ3BsYWNlbWVudCcsICdyZWFkb25seScsICdyZXF1aXJlZCcsICdzZXBhcmF0b3InLCAnc2l6ZScsICd0aW1lb3V0JywgJ3ZhbHVlJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeFRpbWVwaWNrZXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzaXgtdGltZXBpY2tlci1jaGFuZ2UnLCAnc2l4LXRpbWVwaWNrZXItY2hhbmdlLWRlYm91bmNlZCcsICdzaXgtdGltZXBpY2tlci1jbGVhciddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgU2l4VGltZXBpY2tlckNoYW5nZSBhcyBJU2l4VGltZXBpY2tlclNpeFRpbWVwaWNrZXJDaGFuZ2UgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuaW1wb3J0IHR5cGUgeyBFbXB0eVBheWxvYWQgYXMgSVNpeFRpbWVwaWNrZXJFbXB0eVBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4VGltZXBpY2tlciBleHRlbmRzIENvbXBvbmVudHMuU2l4VGltZXBpY2tlciB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIHRpbWVwaWNrZXIncyB2YWx1ZSBjaGFuZ2VzXG4gICAqL1xuICAnc2l4LXRpbWVwaWNrZXItY2hhbmdlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhUaW1lcGlja2VyU2l4VGltZXBpY2tlckNoYW5nZT4+O1xuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHRoZSB0aW1lcGlja2VyJ3MgdmFsdWUgY2hhbmdlcywgYnV0IGRlYm91bmNlZFxuICAgKi9cbiAgJ3NpeC10aW1lcGlja2VyLWNoYW5nZS1kZWJvdW5jZWQnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFRpbWVwaWNrZXJTaXhUaW1lcGlja2VyQ2hhbmdlPj47XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGNsZWFyIGJ1dHRvbiBpcyBhY3RpdmF0ZWQuXG4gICAqL1xuICAnc2l4LXRpbWVwaWNrZXItY2xlYXInOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFRpbWVwaWNrZXJFbXB0eVBheWxvYWQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBpbnB1dHM6IFsnY29udGVudCcsICdkaXNhYmxlZCcsICdkaXN0YW5jZScsICdvcGVuJywgJ3BsYWNlbWVudCcsICdza2lkZGluZycsICd0cmlnZ2VyJ10sXG4gIG1ldGhvZHM6IFsnc2hvdycsICdoaWRlJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaXgtdG9vbHRpcCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY29udGVudCcsICdkaXNhYmxlZCcsICdkaXN0YW5jZScsICdvcGVuJywgJ3BsYWNlbWVudCcsICdza2lkZGluZycsICd0cmlnZ2VyJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNpeFRvb2x0aXAge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzaXgtdG9vbHRpcC1zaG93JywgJ3NpeC10b29sdGlwLWFmdGVyLXNob3cnLCAnc2l4LXRvb2x0aXAtaGlkZScsICdzaXgtdG9vbHRpcC1hZnRlci1oaWRlJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBFbXB0eVBheWxvYWQgYXMgSVNpeFRvb2x0aXBFbXB0eVBheWxvYWQgfSBmcm9tICdAc2l4LWdyb3VwL3VpLWxpYnJhcnknO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgU2l4VG9vbHRpcCBleHRlbmRzIENvbXBvbmVudHMuU2l4VG9vbHRpcCB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIHRvb2x0aXAgYmVnaW5zIHRvIHNob3cuIENhbGxpbmcgYGV2ZW50LnByZXZlbnREZWZhdWx0KClgIHdpbGwgcHJldmVudCBpdCBmcm9tIGJlaW5nIHNob3duLlxuICAgKi9cbiAgJ3NpeC10b29sdGlwLXNob3cnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFRvb2x0aXBFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgYWZ0ZXIgdGhlIHRvb2x0aXAgaGFzIHNob3duIGFuZCBhbGwgdHJhbnNpdGlvbnMgYXJlIGNvbXBsZXRlLlxuICAgKi9cbiAgJ3NpeC10b29sdGlwLWFmdGVyLXNob3cnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFRvb2x0aXBFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgdG9vbHRpcCBiZWdpbnMgdG8gaGlkZS4gQ2FsbGluZyBgZXZlbnQucHJldmVudERlZmF1bHQoKWAgd2lsbCBwcmV2ZW50IGl0IGZyb20gYmVpbmcgaGlkZGVuLlxuICAgKi9cbiAgJ3NpeC10b29sdGlwLWhpZGUnOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SVNpeFRvb2x0aXBFbXB0eVBheWxvYWQ+PjtcbiAgLyoqXG4gICAqIEVtaXR0ZWQgYWZ0ZXIgdGhlIHRvb2x0aXAgaGFzIGhpZGRlbiBhbmQgYWxsIHRyYW5zaXRpb25zIGFyZSBjb21wbGV0ZS5cbiAgICovXG4gICdzaXgtdG9vbHRpcC1hZnRlci1oaWRlJzogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElTaXhUb29sdGlwRW1wdHlQYXlsb2FkPj47XG59XG5cblxuIl19
|