@ukho/admiralty-angular 0.0.9 → 0.0.10

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.
@@ -29,5 +29,5 @@ DesignSystemModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [Commo
29
29
  exports: [...DIRECTIVES],
30
30
  }]
31
31
  }], null, null); })();
32
- (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(DesignSystemModule, { declarations: [i1.AdmiraltyBreadcrumb, i1.AdmiraltyBreadcrumbs, i1.AdmiraltyButton, i1.AdmiraltyCard, i1.AdmiraltyCheckbox, i1.AdmiraltyColourBlock, i1.AdmiraltyDialogue, i1.AdmiraltyExpansion, i1.AdmiraltyFileInput, i1.AdmiraltyFilter, i1.AdmiraltyFilterGroup, i1.AdmiraltyFooter, i1.AdmiraltyHeader, i1.AdmiraltyHeaderMenuItem, i1.AdmiraltyHeaderProfile, i1.AdmiraltyHeaderSubMenuItem, i1.AdmiraltyHint, i1.AdmiraltyHr, i1.AdmiraltyIcon, i1.AdmiraltyInput, i1.AdmiraltyInputError, i1.AdmiraltyLabel, i1.AdmiraltyLink, i1.AdmiraltyPaginator, i1.AdmiraltyPhaseBanner, i1.AdmiraltyProgressBar, i1.AdmiraltyRadio, i1.AdmiraltyRadioGroup, i1.AdmiraltySelect, i1.AdmiraltySideNav, i1.AdmiraltySideNavItem, i1.AdmiraltyTab, i1.AdmiraltyTabGroup, i1.AdmiraltyTable, i1.AdmiraltyTableBody, i1.AdmiraltyTableCell, i1.AdmiraltyTableHeader, i1.AdmiraltyTableHeaderCell, i1.AdmiraltyTableRow, i1.AdmiraltyTextarea, i1.AdmiraltyTypeAhead, i1.AdmiraltyTypeAheadItem], imports: [CommonModule], exports: [i1.AdmiraltyBreadcrumb, i1.AdmiraltyBreadcrumbs, i1.AdmiraltyButton, i1.AdmiraltyCard, i1.AdmiraltyCheckbox, i1.AdmiraltyColourBlock, i1.AdmiraltyDialogue, i1.AdmiraltyExpansion, i1.AdmiraltyFileInput, i1.AdmiraltyFilter, i1.AdmiraltyFilterGroup, i1.AdmiraltyFooter, i1.AdmiraltyHeader, i1.AdmiraltyHeaderMenuItem, i1.AdmiraltyHeaderProfile, i1.AdmiraltyHeaderSubMenuItem, i1.AdmiraltyHint, i1.AdmiraltyHr, i1.AdmiraltyIcon, i1.AdmiraltyInput, i1.AdmiraltyInputError, i1.AdmiraltyLabel, i1.AdmiraltyLink, i1.AdmiraltyPaginator, i1.AdmiraltyPhaseBanner, i1.AdmiraltyProgressBar, i1.AdmiraltyRadio, i1.AdmiraltyRadioGroup, i1.AdmiraltySelect, i1.AdmiraltySideNav, i1.AdmiraltySideNavItem, i1.AdmiraltyTab, i1.AdmiraltyTabGroup, i1.AdmiraltyTable, i1.AdmiraltyTableBody, i1.AdmiraltyTableCell, i1.AdmiraltyTableHeader, i1.AdmiraltyTableHeaderCell, i1.AdmiraltyTableRow, i1.AdmiraltyTextarea, i1.AdmiraltyTypeAhead, i1.AdmiraltyTypeAheadItem] }); })();
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzaWduLXN5c3RlbS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2Rlc2lnbi1zeXN0ZW0ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7O0FBU2pELE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsTUFBTSxDQUFDLE9BQU87UUFDWixPQUFPO1lBQ0wsUUFBUSxFQUFFLGtCQUFrQjtZQUM1QixTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsT0FBTyxFQUFFLGVBQWU7b0JBQ3hCLFVBQVUsRUFBRSxhQUFhO29CQUN6QixLQUFLLEVBQUUsSUFBSTtpQkFDWjthQUNGO1NBQ0YsQ0FBQztJQUNKLENBQUM7O29GQVpVLGtCQUFrQjtvRUFBbEIsa0JBQWtCO3dFQUhuQixZQUFZO3VGQUdYLGtCQUFrQjtjQUw5QixRQUFRO2VBQUM7Z0JBQ1IsWUFBWSxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUM7Z0JBQzdCLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztnQkFDdkIsT0FBTyxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUM7YUFDekI7O3dGQUNZLGtCQUFrQix5OEJBSG5CLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBUFBfSU5JVElBTElaRVIsIE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IGFwcEluaXRpYWxpc2UgfSBmcm9tICcuL2FwcF9pbml0aWFsaXNlJztcclxuaW1wb3J0IHsgRElSRUNUSVZFUyB9IGZyb20gJy4vc3RlbmNpbC1nZW5lcmF0ZWQnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBVa2hvRGVzaWduU3lzdGVtQ29uZmlnIHt9XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogWy4uLkRJUkVDVElWRVNdLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxyXG4gIGV4cG9ydHM6IFsuLi5ESVJFQ1RJVkVTXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIERlc2lnblN5c3RlbU1vZHVsZSB7XHJcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxEZXNpZ25TeXN0ZW1Nb2R1bGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBEZXNpZ25TeXN0ZW1Nb2R1bGUsXHJcbiAgICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUixcclxuICAgICAgICAgIHVzZUZhY3Rvcnk6IGFwcEluaXRpYWxpc2UsXHJcbiAgICAgICAgICBtdWx0aTogdHJ1ZSxcclxuICAgICAgICB9LFxyXG4gICAgICBdLFxyXG4gICAgfTtcclxuICB9XHJcbn1cclxuIl19
32
+ (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(DesignSystemModule, { declarations: [i1.AdmiraltyBreadcrumb, i1.AdmiraltyBreadcrumbs, i1.AdmiraltyButton, i1.AdmiraltyCard, i1.AdmiraltyCheckbox, i1.AdmiraltyColourBlock, i1.AdmiraltyDialogue, i1.AdmiraltyExpansion, i1.AdmiraltyFileInput, i1.AdmiraltyFilter, i1.AdmiraltyFilterGroup, i1.AdmiraltyFooter, i1.AdmiraltyHeader, i1.AdmiraltyHeaderMenuItem, i1.AdmiraltyHeaderProfile, i1.AdmiraltyHeaderSubMenuItem, i1.AdmiraltyHint, i1.AdmiraltyHr, i1.AdmiraltyIcon, i1.AdmiraltyInput, i1.AdmiraltyInputError, i1.AdmiraltyLabel, i1.AdmiraltyLink, i1.AdmiraltyPaginator, i1.AdmiraltyPhaseBanner, i1.AdmiraltyProgressBar, i1.AdmiraltyRadio, i1.AdmiraltyRadioGroup, i1.AdmiraltyReadMore, i1.AdmiraltySelect, i1.AdmiraltySideNav, i1.AdmiraltySideNavItem, i1.AdmiraltyTab, i1.AdmiraltyTabGroup, i1.AdmiraltyTable, i1.AdmiraltyTableBody, i1.AdmiraltyTableCell, i1.AdmiraltyTableHeader, i1.AdmiraltyTableHeaderCell, i1.AdmiraltyTableRow, i1.AdmiraltyTextarea, i1.AdmiraltyTypeAhead, i1.AdmiraltyTypeAheadItem], imports: [CommonModule], exports: [i1.AdmiraltyBreadcrumb, i1.AdmiraltyBreadcrumbs, i1.AdmiraltyButton, i1.AdmiraltyCard, i1.AdmiraltyCheckbox, i1.AdmiraltyColourBlock, i1.AdmiraltyDialogue, i1.AdmiraltyExpansion, i1.AdmiraltyFileInput, i1.AdmiraltyFilter, i1.AdmiraltyFilterGroup, i1.AdmiraltyFooter, i1.AdmiraltyHeader, i1.AdmiraltyHeaderMenuItem, i1.AdmiraltyHeaderProfile, i1.AdmiraltyHeaderSubMenuItem, i1.AdmiraltyHint, i1.AdmiraltyHr, i1.AdmiraltyIcon, i1.AdmiraltyInput, i1.AdmiraltyInputError, i1.AdmiraltyLabel, i1.AdmiraltyLink, i1.AdmiraltyPaginator, i1.AdmiraltyPhaseBanner, i1.AdmiraltyProgressBar, i1.AdmiraltyRadio, i1.AdmiraltyRadioGroup, i1.AdmiraltyReadMore, i1.AdmiraltySelect, i1.AdmiraltySideNav, i1.AdmiraltySideNavItem, i1.AdmiraltyTab, i1.AdmiraltyTabGroup, i1.AdmiraltyTable, i1.AdmiraltyTableBody, i1.AdmiraltyTableCell, i1.AdmiraltyTableHeader, i1.AdmiraltyTableHeaderCell, i1.AdmiraltyTableRow, i1.AdmiraltyTextarea, i1.AdmiraltyTypeAhead, i1.AdmiraltyTypeAheadItem] }); })();
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzaWduLXN5c3RlbS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2Rlc2lnbi1zeXN0ZW0ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7O0FBU2pELE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsTUFBTSxDQUFDLE9BQU87UUFDWixPQUFPO1lBQ0wsUUFBUSxFQUFFLGtCQUFrQjtZQUM1QixTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsT0FBTyxFQUFFLGVBQWU7b0JBQ3hCLFVBQVUsRUFBRSxhQUFhO29CQUN6QixLQUFLLEVBQUUsSUFBSTtpQkFDWjthQUNGO1NBQ0YsQ0FBQztJQUNKLENBQUM7O29GQVpVLGtCQUFrQjtvRUFBbEIsa0JBQWtCO3dFQUhuQixZQUFZO3VGQUdYLGtCQUFrQjtjQUw5QixRQUFRO2VBQUM7Z0JBQ1IsWUFBWSxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUM7Z0JBQzdCLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztnQkFDdkIsT0FBTyxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUM7YUFDekI7O3dGQUNZLGtCQUFrQiwrOUJBSG5CLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBUFBfSU5JVElBTElaRVIsIE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IGFwcEluaXRpYWxpc2UgfSBmcm9tICcuL2FwcF9pbml0aWFsaXNlJztcclxuaW1wb3J0IHsgRElSRUNUSVZFUyB9IGZyb20gJy4vc3RlbmNpbC1nZW5lcmF0ZWQnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBVa2hvRGVzaWduU3lzdGVtQ29uZmlnIHt9XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogWy4uLkRJUkVDVElWRVNdLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxyXG4gIGV4cG9ydHM6IFsuLi5ESVJFQ1RJVkVTXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIERlc2lnblN5c3RlbU1vZHVsZSB7XHJcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxEZXNpZ25TeXN0ZW1Nb2R1bGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBEZXNpZ25TeXN0ZW1Nb2R1bGUsXHJcbiAgICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUixcclxuICAgICAgICAgIHVzZUZhY3Rvcnk6IGFwcEluaXRpYWxpc2UsXHJcbiAgICAgICAgICBtdWx0aTogdHJ1ZSxcclxuICAgICAgICB9LFxyXG4gICAgICBdLFxyXG4gICAgfTtcclxuICB9XHJcbn1cclxuIl19
@@ -795,6 +795,35 @@ export { AdmiraltyRadioGroup };
795
795
  inputs: ['displayVertical', 'name', 'value'],
796
796
  }]
797
797
  }], function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, null); })();
798
+ let AdmiraltyReadMore = class AdmiraltyReadMore {
799
+ constructor(c, r, z) {
800
+ this.z = z;
801
+ c.detach();
802
+ this.el = r.nativeElement;
803
+ proxyOutputs(this, this.el, ['admiraltyToggled']);
804
+ }
805
+ };
806
+ AdmiraltyReadMore.ɵfac = function AdmiraltyReadMore_Factory(t) { return new (t || AdmiraltyReadMore)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i0.NgZone)); };
807
+ AdmiraltyReadMore.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AdmiraltyReadMore, selectors: [["admiralty-read-more"]], inputs: { heading: "heading" }, ngContentSelectors: _c0, decls: 1, vars: 0, template: function AdmiraltyReadMore_Template(rf, ctx) { if (rf & 1) {
808
+ i0.ɵɵprojectionDef();
809
+ i0.ɵɵprojection(0);
810
+ } }, encapsulation: 2, changeDetection: 0 });
811
+ AdmiraltyReadMore = __decorate([
812
+ ProxyCmp({
813
+ inputs: ['heading']
814
+ })
815
+ ], AdmiraltyReadMore);
816
+ export { AdmiraltyReadMore };
817
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AdmiraltyReadMore, [{
818
+ type: Component,
819
+ args: [{
820
+ selector: 'admiralty-read-more',
821
+ changeDetection: ChangeDetectionStrategy.OnPush,
822
+ template: '<ng-content></ng-content>',
823
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
824
+ inputs: ['heading'],
825
+ }]
826
+ }], function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, null); })();
798
827
  let AdmiraltySelect = class AdmiraltySelect {
799
828
  constructor(c, r, z) {
800
829
  this.z = z;
@@ -1182,4 +1211,4 @@ export { AdmiraltyTypeAheadItem };
1182
1211
  inputs: ['value'],
1183
1212
  }]
1184
1213
  }], function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, null); })();
1185
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvc3RlbmNpbC1nZW5lcmF0ZWQvY29tcG9uZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsb0JBQW9CO0FBQ3BCLDhDQUE4QztBQUM5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQXFCLFNBQVMsRUFBb0MsTUFBTSxlQUFlLENBQUM7QUFFeEgsT0FBTyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7O0FBZWhFLElBQU0sbUJBQW1CLEdBQXpCLE1BQU0sbUJBQW1CO0lBRTlCLFlBQVksQ0FBb0IsRUFBRSxDQUFhLEVBQVksQ0FBUztRQUFULE1BQUMsR0FBRCxDQUFDLENBQVE7UUFDbEUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ1gsSUFBSSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7O3NGQUxVLG1CQUFtQjtzRUFBbkIsbUJBQW1COztRQUpuQixrQkFBeUI7O0FBSXpCLG1CQUFtQjtJQVYvQixRQUFRLENBQUM7UUFDUixNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDO0tBQzNCLENBQUM7R0FRVyxtQkFBbUIsQ0FNL0I7U0FOWSxtQkFBbUI7dUZBQW5CLG1CQUFtQjtjQVAvQixTQUFTO2VBQUM7Z0JBQ1QsUUFBUSxFQUFFLHNCQUFzQjtnQkFDaEMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07Z0JBQy9DLFFBQVEsRUFBRSwyQkFBMkI7Z0JBQ3JDLHVFQUF1RTtnQkFDdkUsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQzthQUMzQjs7QUFzQk0sSUFBTSxvQkFBb0IsR0FBMUIsTUFBTSxvQkFBb0I7SUFFL0IsWUFBWSxDQUFvQixFQUFFLENBQWEsRUFBWSxDQUFTO1FBQVQsTUFBQyxHQUFELENBQUMsQ0FBUTtRQUNsRSxDQUFDLENB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QUN2RSxNQUFNLEVBQUUsQ0FBQyxPQUFPLEVBQUUsYUFBYSxFQUFFLG9CQUFvQixFQUFFLE9BQU8sQ0FBQzthQUNoRTs7QUFrQ00sSUFBTSxzQkFBc0IsR0FBNUIsTUFBTSxzQkFBc0I7SUFFakMsWUFBWSxDQUFvQixFQUFFLENBQWEsRUFBWSxDQUFTO1FBQVQsTUFBQyxHQUFELENBQUMsQ0FBUTtRQUNsRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDWCxJQUFJLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQzs7NEZBTFUsc0JBQXNCO3lFQUF0QixzQkFBc0I7O1FBSnRCLGtCQUF5Qjs7QUFJekIsc0JBQXNCO0lBVmxDLFFBQVEsQ0FBQztRQUNSLE1BQU0sRUFBRSxDQUFDLE9BQU8sQ0FBQztLQUNsQixDQUFDO0dBUVcsc0JBQXNCLENBTWxDO1NBTlksc0JBQXNCO3VGQUF0QixzQkFBc0I7Y0FQbEMsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSwyQkFBMkI7Z0JBQ3JDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2dCQUMvQyxRQUFRLEVBQUUsMkJBQTJCO2dCQUNyQyx1RUFBdUU7Z0JBQ3ZFLE1BQU0sRUFBRSxDQUFDLE9BQU8sQ0FBQzthQUNsQiIsInNvdXJjZXNDb250ZW50IjpbIi8qIHRzbGludDpkaXNhYmxlICovXHJcbi8qIGF1dG8tZ2VuZXJhdGVkIGFuZ3VsYXIgZGlyZWN0aXZlIHByb3hpZXMgKi9cclxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgTmdab25lIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBQcm94eUNtcCwgcHJveHlPdXRwdXRzIH0gZnJvbSAnLi9hbmd1bGFyLWNvbXBvbmVudC1saWIvdXRpbHMnO1xyXG5cclxuaW1wb3J0IHsgQ29tcG9uZW50cyB9IGZyb20gJ0B1a2hvL2FkbWlyYWx0eS1jb3JlJztcclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG4gIGlucHV0czogWydhY3RpdmUnLCAnaHJlZiddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LWJyZWFkY3J1bWInLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFsnYWN0aXZlJywgJ2hyZWYnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eUJyZWFkY3J1bWIge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlCcmVhZGNydW1iIGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlCcmVhZGNydW1iIHt9XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktYnJlYWRjcnVtYnMnLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFtdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5QnJlYWRjcnVtYnMge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlCcmVhZGNydW1icyBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5QnJlYWRjcnVtYnMge31cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG4gIGlucHV0czogWydkaXNhYmxlZCcsICdpY29uJywgJ3R5cGUnLCAndmFyaWFudCddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LWJ1dHRvbicsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydkaXNhYmxlZCcsICdpY29uJywgJ3R5cGUnLCAndmFyaWFudCddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5QnV0dG9uIHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQWRtaXJhbHR5QnV0dG9uIGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlCdXR0b24ge31cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG4gIGlucHV0czogWydoZWFkaW5nJ11cclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktY2FyZCcsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydoZWFkaW5nJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlDYXJkIHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQWRtaXJhbHR5Q2FyZCBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5Q2FyZCB7fVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbiAgaW5wdXRzOiBbJ2NoZWNrYm94UmlnaHQnLCAnY2hlY2tlZCcsICdkaXNhYmxlZCcsICdsYWJlbFRleHQnLCAnbmFtZScsICd2YWx1ZSddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LWNoZWNrYm94JyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XHJcbiAgaW5wdXRzOiBbJ2NoZWNrYm94UmlnaHQnLCAnY2hlY2tlZCcsICdkaXNhYmxlZCcsICdsYWJlbFRleHQnLCAnbmFtZScsICd2YWx1ZSddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5Q2hlY2tib3gge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnY2hlY2tib3hDaGFuZ2UnLCAnY2hlY2tib3hGb2N1cycsICdjaGVja2JveEJsdXInXSk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eUNoZWNrYm94IGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlDaGVja2JveCB7XHJcbiAgLyoqXHJcbiAgICogRXZlbnQgaXMgZmlyZWQgd2hlbiB0aGUgZm9ybSBjb250cm9sIGNoYW5nZXMgc3RhdGUgQGV2ZW50IHJhZGlvQ2hhbmdlc1xyXG4gICAqL1xyXG4gIGNoZWNrYm94Q2hhbmdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8YW55Pj47XHJcbiAgLyoqXHJcbiAgICogRXZlbnQgaXMgZmlyZWQgd2hlbiB0aGUgZm9ybSBjb250cm9sIGdhaW5zIGZvY3VzIEBldmVudCBjaGVja2JveEZvY3VzXHJcbiAgICovXHJcbiAgY2hlY2tib3hGb2N1czogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGFueT4+O1xyXG4gIC8qKlxyXG4gICAqIEV2ZW50IGlzIGZpcmVkIHdoZW4gdGhlIGZvcm0gY29udHJvbCBsb3NlcyBmb2N1cyBAZXZlbnQgY2hlY2tib3hCbHVyXHJcbiAgICovXHJcbiAgY2hlY2tib3hCbHVyOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8YW55Pj47XHJcbn1cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG4gIGlucHV0czogWydhY3Rpb25UZXh0JywgJ2NsaWNrQWN0aW9uJywgJ2NvbG91cicsICdoZWFkaW5nJywgJ2hlaWdodCcsICd3aWR0aCddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LWNvbG91ci1ibG9jaycsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydhY3Rpb25UZXh0JywgJ2NsaWNrQWN0aW9uJywgJ2NvbG91cicsICdoZWFkaW5nJywgJ2hlaWdodCcsICd3aWR0aCddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5Q29sb3VyQmxvY2sge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlDb2xvdXJCbG9jayBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5Q29sb3VyQmxvY2sge31cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG4gIGlucHV0czogWydoZWFkaW5nJywgJ3R5cGUnXVxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS1kaWFsb2d1ZScsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydoZWFkaW5nJywgJ3R5cGUnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eURpYWxvZ3VlIHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQWRtaXJhbHR5RGlhbG9ndWUgZXh0ZW5kcyBDb21wb25lbnRzLkFkbWlyYWx0eURpYWxvZ3VlIHt9XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxuICBpbnB1dHM6IFsnYWxpZ25IZWFkaW5nUmlnaHQnLCAnZXhwYW5kZWQnLCAnaGVhZGluZycsICdoaWRlQm9yZGVyJ11cclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktZXhwYW5zaW9uJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XHJcbiAgaW5wdXRzOiBbJ2FsaWduSGVhZGluZ1JpZ2h0JywgJ2V4cGFuZGVkJywgJ2hlYWRpbmcnLCAnaGlkZUJvcmRlciddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5RXhwYW5zaW9uIHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3RvZ2dsZWQnXSk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eUV4cGFuc2lvbiBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5RXhwYW5zaW9uIHtcclxuICAvKipcclxuICAgKiBUaGUgZXZlbnQgdGhhdCBpcyBkaXNwYXRjaGVkIHdoZW4gdGhlIGV4cGFuZGVkIHN0YXR1cyBpcyB0b2dnbGVkLlxyXG4gICAqL1xyXG4gIHRvZ2dsZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxib29sZWFuPj47XHJcbn1cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG4gIGlucHV0czogWydsYWJlbCcsICdtdWx0aXBsZSddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LWZpbGUtaW5wdXQnLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFsnbGFiZWwnLCAnbXVsdGlwbGUnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eUZpbGVJbnB1dCB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydmaWxlSW5wdXRDaGFuZ2UnXSk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eUZpbGVJbnB1dCBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5RmlsZUlucHV0IHtcclxuICAvKipcclxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIGFkZGVkIGZpbGUocykgY2hhbmdlc1xyXG4gICAqL1xyXG4gIGZpbGVJbnB1dENoYW5nZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PEZpbGVbXT4+O1xyXG59XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxuICBpbnB1dHM6IFsnZmlsdGVyVGl0bGUnXVxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS1maWx0ZXInLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFsnZmlsdGVyVGl0bGUnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eUZpbHRlciB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydmaWx0ZXJDbGVhcmVkJywgJ2ZpbHRlckFwcGxpZWQnXSk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eUZpbHRlciBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5RmlsdGVyIHtcclxuICAvKipcclxuICAgKiBFdmVudCB0aGF0IGlzIGVtaXR0ZWQgd2hlbiB0aGUgZmlsdGVycyBhcmUgY2xlYXJlZFxyXG4gICAqL1xyXG4gIGZpbHRlckNsZWFyZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx2b2lkPj47XHJcbiAgLyoqXHJcbiAgICogRXZlbnQgdGhhdCBpcyBlbWl0dGVkIHdoZW4gdGhlIGZpbHRlcnMgYXJlIGFwcGxpZWRcclxuICAgKi9cclxuICBmaWx0ZXJBcHBsaWVkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8dm9pZD4+O1xyXG59XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxuICBpbnB1dHM6IFsnZ3JvdXBUaXRsZSddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LWZpbHRlci1ncm91cCcsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydncm91cFRpdGxlJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlGaWx0ZXJHcm91cCB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eUZpbHRlckdyb3VwIGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlGaWx0ZXJHcm91cCB7fVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbiAgaW5wdXRzOiBbJ2ltYWdlQWx0JywgJ2ltYWdlTGluaycsICdpbWFnZVNyYycsICd0ZXh0J11cclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktZm9vdGVyJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XHJcbiAgaW5wdXRzOiBbJ2ltYWdlQWx0JywgJ2ltYWdlTGluaycsICdpbWFnZVNyYycsICd0ZXh0J10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlGb290ZXIge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlGb290ZXIgZXh0ZW5kcyBDb21wb25lbnRzLkFkbWlyYWx0eUZvb3RlciB7fVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbiAgaW5wdXRzOiBbJ2hlYWRlclRpdGxlJywgJ2hlYWRlclRpdGxlVXJsJywgJ2xvZ29BbHRUZXh0JywgJ2xvZ29JbWdVcmwnLCAnbG9nb0xpbmtVcmwnXVxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS1oZWFkZXInLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFsnaGVhZGVyVGl0bGUnLCAnaGVhZGVyVGl0bGVVcmwnLCAnbG9nb0FsdFRleHQnLCAnbG9nb0ltZ1VybCcsICdsb2dvTGlua1VybCddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5SGVhZGVyIHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3RpdGxlZENsaWNrZWQnXSk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eUhlYWRlciBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5SGVhZGVyIHtcclxuICAvKipcclxuICAgKiBFbWl0cyBhbiBldmVudCB0aGF0IGNhbiBiZSBsaXN0ZW5lZCB0byB3aGVuIHRoZSB0aXRsZSBpbiB0aGUgaGVhZGVyIGlzIGNsaWNrZWRcclxuICAgKi9cclxuICB0aXRsZWRDbGlja2VkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8c3RyaW5nPj47XHJcbn1cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG4gIGlucHV0czogWydhY3RpdmUnLCAnbWVudVRpdGxlJ11cclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktaGVhZGVyLW1lbnUtaXRlbScsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydhY3RpdmUnLCAnbWVudVRpdGxlJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlIZWFkZXJNZW51SXRlbSB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydtZW51SXRlbUNsaWNrJ10pO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlIZWFkZXJNZW51SXRlbSBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5SGVhZGVyTWVudUl0ZW0ge1xyXG4gIC8qKlxyXG4gICAqIFRoZSBldmVudCB0aGF0IGlzIGZpcmVkIHdoZW4gYSB1c2VyIGNsaWNrcyBvbiB0aGUgbWVudVxyXG4gICAqL1xyXG4gIG1lbnVJdGVtQ2xpY2s6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx2b2lkPj47XHJcbn1cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG4gIGlucHV0czogWydpc1NpZ25lZEluJywgJ3NpZ25lZEluVGV4dCddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LWhlYWRlci1wcm9maWxlJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XHJcbiAgaW5wdXRzOiBbJ2lzU2lnbmVkSW4nLCAnc2lnbmVkSW5UZXh0J10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlIZWFkZXJQcm9maWxlIHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3NpZ25JbkNsaWNrZWQnLCAneW91ckFjY291bnRDbGlja2VkJywgJ3NpZ25PdXRDbGlja2VkJ10pO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlIZWFkZXJQcm9maWxlIGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlIZWFkZXJQcm9maWxlIHtcclxuICAvKipcclxuICAgKiBUaGUgZXZlbnQgdGhhdCBpcyBmaXJlZCB3aGVuIHRoZSB1c2VyIGNsaWNrcyBvblxyXG50aGUgc2lnbiBpbiBidXR0b25cclxuICAgKi9cclxuICBzaWduSW5DbGlja2VkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8dm9pZD4+O1xyXG4gIC8qKlxyXG4gICAqIFRoZSBldmVudCB0aGF0IGlzIGZpcmVkIHdoZW4gdGhlIHVzZXIgY2xpY2tzIG9uIHRoZVxyXG4nWW91ciBhY2NvdW50JyBidXR0b25cclxuICAgKi9cclxuICB5b3VyQWNjb3VudENsaWNrZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx2b2lkPj47XHJcbiAgLyoqXHJcbiAgICogVGhlIGV2ZW50IHRoYXQgaXMgZmlyZWQgd2hlbiB0aGUgdXNlciBjbGlja3Mgb24gdGhlXHJcbidzaWduIG91dCcgYnV0dG9uXHJcbiAgICovXHJcbiAgc2lnbk91dENsaWNrZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx2b2lkPj47XHJcbn1cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG4gIGlucHV0czogWydtZW51VGl0bGUnXVxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS1oZWFkZXItc3ViLW1lbnUtaXRlbScsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydtZW51VGl0bGUnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eUhlYWRlclN1Yk1lbnVJdGVtIHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3N1Yk1lbnVJdGVtQ2xpY2snXSk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eUhlYWRlclN1Yk1lbnVJdGVtIGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlIZWFkZXJTdWJNZW51SXRlbSB7XHJcbiAgLyoqXHJcbiAgICogVGhlIGV2ZW50IHRoYXQgaXMgZmlyZWQgd2hlbiBhIHVzZXIgY2xpY2tzIG9uIHRoZSBtZW51XHJcbiAgICovXHJcbiAgc3ViTWVudUl0ZW1DbGljazogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHZvaWQ+PjtcclxufVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJ11cclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktaGludCcsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydkaXNhYmxlZCddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5SGludCB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eUhpbnQgZXh0ZW5kcyBDb21wb25lbnRzLkFkbWlyYWx0eUhpbnQge31cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS1ocicsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogW10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlIciB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eUhyIGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlIciB7fVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbiAgaW5wdXRzOiBbJ2ljb25OYW1lJywgJ2ljb25QcmVmaXgnXVxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS1pY29uJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XHJcbiAgaW5wdXRzOiBbJ2ljb25OYW1lJywgJ2ljb25QcmVmaXgnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eUljb24ge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlJY29uIGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlJY29uIHt9XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxuICBpbnB1dHM6IFsnYXV0b2NvbXBsZXRlJywgJ2Rpc2FibGVkJywgJ2hpbnQnLCAnaW52YWxpZCcsICdpbnZhbGlkTWVzc2FnZScsICdsYWJlbCcsICduYW1lJywgJ3BsYWNlaG9sZGVyJywgJ3JlcXVpcmVkJywgJ3R5cGUnLCAndmFsdWUnLCAnd2lkdGgnXVxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS1pbnB1dCcsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydhdXRvY29tcGxldGUnLCAnZGlzYWJsZWQnLCAnaGludCcsICdpbnZhbGlkJywgJ2ludmFsaWRNZXNzYWdlJywgJ2xhYmVsJywgJ25hbWUnLCAncGxhY2Vob2xkZXInLCAncmVxdWlyZWQnLCAndHlwZScsICd2YWx1ZScsICd3aWR0aCddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5SW5wdXQge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYWRtaXJhbHR5Q2hhbmdlJ10pO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmltcG9ydCB0eXBlIHsgSW5wdXRDaGFuZ2VFdmVudERldGFpbCBhcyBJQWRtaXJhbHR5SW5wdXRJbnB1dENoYW5nZUV2ZW50RGV0YWlsIH0gZnJvbSAnQHVraG8vYWRtaXJhbHR5LWNvcmUnO1xyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eUlucHV0IGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlJbnB1dCB7XHJcbiAgLyoqXHJcbiAgICogRW1pdHRlZCB3aGVuIHRoZSB2YWx1ZSBoYXMgY2hhbmdlZC5cclxuICAgKi9cclxuICBhZG1pcmFsdHlDaGFuZ2U6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJQWRtaXJhbHR5SW5wdXRJbnB1dENoYW5nZUV2ZW50RGV0YWlsPj47XHJcbn1cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS1pbnB1dC1lcnJvcicsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogW10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlJbnB1dEVycm9yIHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQWRtaXJhbHR5SW5wdXRFcnJvciBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5SW5wdXRFcnJvciB7fVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2ZvciddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LWxhYmVsJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XHJcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2ZvciddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5TGFiZWwge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlMYWJlbCBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5TGFiZWwge31cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG4gIGlucHV0czogWydocmVmJywgJ25ld1RhYiddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LWxpbmsnLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFsnaHJlZicsICduZXdUYWInXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eUxpbmsge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlMaW5rIGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlMaW5rIHt9XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxuICBpbnB1dHM6IFsnY3VycmVudFBhZ2UnLCAnbGFiZWwnLCAncGFnZXMnXVxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS1wYWdpbmF0b3InLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFsnY3VycmVudFBhZ2UnLCAnbGFiZWwnLCAncGFnZXMnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eVBhZ2luYXRvciB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydwYWdlQ2hhbmdlJ10pO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlQYWdpbmF0b3IgZXh0ZW5kcyBDb21wb25lbnRzLkFkbWlyYWx0eVBhZ2luYXRvciB7XHJcbiAgLyoqXHJcbiAgICogRGlzcGF0Y2hlZCB3aGVuIHRoZSBwcmV2aW91cyBvciBuZXh0IGJ1dHRvbiBpcyBwcmVzc2VkLiBUaGUgZXZlbnQgZGV0YWlsIGNvbnRhaW5zXHJcbnRoZSByZXF1ZXN0ZWQgcGFnZSBudW1iZXIuXHJcbiAgICovXHJcbiAgcGFnZUNoYW5nZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PG51bWJlcj4+O1xyXG59XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxuICBpbnB1dHM6IFsnbGluaycsICdwaGFzZSddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LXBoYXNlLWJhbm5lcicsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydsaW5rJywgJ3BoYXNlJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlQaGFzZUJhbm5lciB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eVBoYXNlQmFubmVyIGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlQaGFzZUJhbm5lciB7fVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbiAgaW5wdXRzOiBbJ2Vycm9yJywgJ2xhYmVsJywgJ3Byb2dyZXNzaW9uJ11cclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktcHJvZ3Jlc3MtYmFyJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XHJcbiAgaW5wdXRzOiBbJ2Vycm9yJywgJ2xhYmVsJywgJ3Byb2dyZXNzaW9uJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlQcm9ncmVzc0JhciB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eVByb2dyZXNzQmFyIGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlQcm9ncmVzc0JhciB7fVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbiAgaW5wdXRzOiBbJ2NoZWNrZWQnLCAnZGlzYWJsZWQnLCAnbmFtZScsICd2YWx1ZSddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LXJhZGlvJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XHJcbiAgaW5wdXRzOiBbJ2NoZWNrZWQnLCAnZGlzYWJsZWQnLCAnbmFtZScsICd2YWx1ZSddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5UmFkaW8ge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYWRtaXJhbHR5Rm9jdXMnLCAnYWRtaXJhbHR5Qmx1ciddKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQWRtaXJhbHR5UmFkaW8gZXh0ZW5kcyBDb21wb25lbnRzLkFkbWlyYWx0eVJhZGlvIHtcclxuICAvKipcclxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIHJhZGlvIGJ1dHRvbiBnYWlucyBmb2N1cy5cclxuICAgKi9cclxuICBhZG1pcmFsdHlGb2N1czogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHZvaWQ+PjtcclxuICAvKipcclxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIHJhZGlvIGJ1dHRvbiBsb3NlcyBmb2N1cy5cclxuICAgKi9cclxuICBhZG1pcmFsdHlCbHVyOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8dm9pZD4+O1xyXG59XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxuICBpbnB1dHM6IFsnZGlzcGxheVZlcnRpY2FsJywgJ25hbWUnLCAndmFsdWUnXVxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS1yYWRpby1ncm91cCcsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydkaXNwbGF5VmVydGljYWwnLCAnbmFtZScsICd2YWx1ZSddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5UmFkaW9Hcm91cCB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydyYWRpb0NoYW5nZSddKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQWRtaXJhbHR5UmFkaW9Hcm91cCBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5UmFkaW9Hcm91cCB7XHJcbiAgLyoqXHJcbiAgICogRXZlbnQgZmlyZWQgd2hlbiB0aGUgY2hlY2tlZCByYWRpbyBidXR0b24gY2hhbmdlc1xyXG4gICAqL1xyXG4gIHJhZGlvQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8YW55Pj47XHJcbn1cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG4gIGlucHV0czogWydkaXNhYmxlZCcsICdlcnJvcicsICdlcnJvckhpbnQnLCAnaGludCcsICdsYWJlbCcsICd3aWR0aCddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LXNlbGVjdCcsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydkaXNhYmxlZCcsICdlcnJvcicsICdlcnJvckhpbnQnLCAnaGludCcsICdsYWJlbCcsICd3aWR0aCddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5U2VsZWN0IHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2FkbWlyYWx0eUNoYW5nZScsICdhZG1pcmFsdHlCbHVyJ10pO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlTZWxlY3QgZXh0ZW5kcyBDb21wb25lbnRzLkFkbWlyYWx0eVNlbGVjdCB7XHJcbiAgLyoqXHJcbiAgICogRW1pdHRlZCB3aGVuIHRoZSB2YWx1ZSBoYXMgY2hhbmdlZC5cclxuICAgKi9cclxuICBhZG1pcmFsdHlDaGFuZ2U6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxFdmVudFRhcmdldD4+O1xyXG4gIC8qKlxyXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgY29tcG9uZW50IGxvc2VzIGZvY3VzLlxyXG4gICAqL1xyXG4gIGFkbWlyYWx0eUJsdXI6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx2b2lkPj47XHJcbn1cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG4gIGlucHV0czogWydsYWJlbCddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LXNpZGUtbmF2JyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XHJcbiAgaW5wdXRzOiBbJ2xhYmVsJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlTaWRlTmF2IHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQWRtaXJhbHR5U2lkZU5hdiBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5U2lkZU5hdiB7fVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbiAgaW5wdXRzOiBbJ2hlYWRpbmdUaXRsZScsICduYXZBY3RpdmUnLCAnc2lkZU5hdkl0ZW1JZCddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LXNpZGUtbmF2LWl0ZW0nLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFsnaGVhZGluZ1RpdGxlJywgJ25hdkFjdGl2ZScsICdzaWRlTmF2SXRlbUlkJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlTaWRlTmF2SXRlbSB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzaWRlTmF2SXRlbVNlbGVjdGVkJ10pO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlTaWRlTmF2SXRlbSBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5U2lkZU5hdkl0ZW0ge1xyXG4gIC8qKlxyXG4gICAqIEFuIGV2ZW50IGVtaXR0ZWQgd2hlbiB0aGlzIFNpZGUgTmF2IGl0ZW0gaXMgc2VsZWN0ZWQgY29udGFpbmluZyB0aGUgc2lkZU5hdkl0ZW1JZFxyXG4gICAqL1xyXG4gIHNpZGVOYXZJdGVtU2VsZWN0ZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxzdHJpbmc+PjtcclxufVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbiAgaW5wdXRzOiBbJ2xhYmVsJywgJ3RhYkNvbnRlbnRJZCcsICd0YWJMYWJlbElkJ11cclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktdGFiJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XHJcbiAgaW5wdXRzOiBbJ2xhYmVsJywgJ3RhYkNvbnRlbnRJZCcsICd0YWJMYWJlbElkJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlUYWIge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlUYWIgZXh0ZW5kcyBDb21wb25lbnRzLkFkbWlyYWx0eVRhYiB7fVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbiAgaW5wdXRzOiBbJ3NlbGVjdGVkSW5kZXgnXVxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS10YWItZ3JvdXAnLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFsnc2VsZWN0ZWRJbmRleCddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5VGFiR3JvdXAge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYWRtaXJhbHR5VGFiU2VsZWN0ZWQnXSk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eVRhYkdyb3VwIGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlUYWJHcm91cCB7XHJcblxyXG4gIGFkbWlyYWx0eVRhYlNlbGVjdGVkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8bnVtYmVyPj47XHJcbn1cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG4gIGlucHV0czogWydjYXB0aW9uJ11cclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktdGFibGUnLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFsnY2FwdGlvbiddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5VGFibGUge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlUYWJsZSBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5VGFibGUge31cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS10YWJsZS1ib2R5JyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XHJcbiAgaW5wdXRzOiBbXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eVRhYmxlQm9keSB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eVRhYmxlQm9keSBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5VGFibGVCb2R5IHt9XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktdGFibGUtY2VsbCcsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogW10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlUYWJsZUNlbGwge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlUYWJsZUNlbGwgZXh0ZW5kcyBDb21wb25lbnRzLkFkbWlyYWx0eVRhYmxlQ2VsbCB7fVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LXRhYmxlLWhlYWRlcicsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogW10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlUYWJsZUhlYWRlciB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eVRhYmxlSGVhZGVyIGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlUYWJsZUhlYWRlciB7fVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LXRhYmxlLWhlYWRlci1jZWxsJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XHJcbiAgaW5wdXRzOiBbXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eVRhYmxlSGVhZGVyQ2VsbCB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eVRhYmxlSGVhZGVyQ2VsbCBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5VGFibGVIZWFkZXJDZWxsIHt9XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktdGFibGUtcm93JyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XHJcbiAgaW5wdXRzOiBbXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eVRhYmxlUm93IHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQWRtaXJhbHR5VGFibGVSb3cgZXh0ZW5kcyBDb21wb25lbnRzLkFkbWlyYWx0eVRhYmxlUm93IHt9XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnaGludCcsICdpbnZhbGlkJywgJ2ludmFsaWRNZXNzYWdlJywgJ2xhYmVsJywgJ3RleHQnLCAnd2lkdGgnXVxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS10ZXh0YXJlYScsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydkaXNhYmxlZCcsICdoaW50JywgJ2ludmFsaWQnLCAnaW52YWxpZE1lc3NhZ2UnLCAnbGFiZWwnLCAndGV4dCcsICd3aWR0aCddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5VGV4dGFyZWEge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsndGV4dGFyZWFCbHVyJywgJ3RleHRhcmVhQ2hhbmdlZCddKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQWRtaXJhbHR5VGV4dGFyZWEgZXh0ZW5kcyBDb21wb25lbnRzLkFkbWlyYWx0eVRleHRhcmVhIHtcclxuICAvKipcclxuICAgKiBFdmVudCBpcyBmaXJlZCB3aGVuIHRoZSBmb3JtIGNvbnRyb2wgbG9zZXMgZm9jdXMgQGV2ZW50IHRleHRhcmVhQmx1clxyXG4gICAqL1xyXG4gIHRleHRhcmVhQmx1cjogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGFueT4+O1xyXG4gIC8qKlxyXG4gICAqIEV2ZW50IGlzIGZpcmVkIHdoZW4gdGhlIGZvcm0gY29udHJvbCBjaGFuZ2VzIEBldmVudCB0ZXh0YXJlYUNoYW5nZWRcclxuICAgKi9cclxuICB0ZXh0YXJlYUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxzdHJpbmc+PjtcclxufVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbiAgaW5wdXRzOiBbJ2xhYmVsJywgJ3BsYWNlaG9sZGVyJywgJ3Jlc3VsdHNPbkluaXRGb2N1cycsICd2YWx1ZSddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LXR5cGUtYWhlYWQnLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFsnbGFiZWwnLCAncGxhY2Vob2xkZXInLCAncmVzdWx0c09uSW5pdEZvY3VzJywgJ3ZhbHVlJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlUeXBlQWhlYWQge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc2VsZWN0aW9uQ2hhbmdlZCcsICd2YWx1ZUNoYW5nZWQnXSk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eVR5cGVBaGVhZCBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5VHlwZUFoZWFkIHtcclxuICAvKipcclxuICAgKiBPcHRpb25hbCBmdW5jdGlvbiB0aGF0IHdpbGwgYmUgZXhlY3V0ZWQgd2hlbiB0aGUgdXNlciBzZWxlY3RzIGFuIGl0ZW0gZnJvbSB0aGUgdHlwZWFoZWFkXHJcbiAgICovXHJcbiAgc2VsZWN0aW9uQ2hhbmdlZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHN0cmluZz4+O1xyXG4gIC8qKlxyXG4gICAqIEV2ZW50IHRoYXQgaXMgZmlyZWQgd2hlbmV2ZXIgdGhlIHZhbHVlIG9mIHRoZSB0eXBlYWhlYWQgY2hhbmdlc1xyXG5lLmcuIHNlbGVjdGlvbiBmcm9tIHRoZSBkcm9wZG93biBvciBtYW51YWxseSB0eXBlZCBlbnRyeVxyXG4gICAqL1xyXG4gIHZhbHVlQ2hhbmdlZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHN0cmluZz4+O1xyXG59XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxuICBpbnB1dHM6IFsndmFsdWUnXVxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS10eXBlLWFoZWFkLWl0ZW0nLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFsndmFsdWUnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eVR5cGVBaGVhZEl0ZW0ge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlUeXBlQWhlYWRJdGVtIGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlUeXBlQWhlYWRJdGVtIHt9XHJcblxyXG5cclxuIl19
1214
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvc3RlbmNpbC1nZW5lcmF0ZWQvY29tcG9uZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsb0JBQW9CO0FBQ3BCLDhDQUE4QztBQUM5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQXFCLFNBQVMsRUFBb0MsTUFBTSxlQUFlLENBQUM7QUFFeEgsT0FBTyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7O0FBZWhFLElBQU0sbUJBQW1CLEdBQXpCLE1BQU0sbUJBQW1CO0lBRTlCLFlBQVksQ0FBb0IsRUFBRSxDQUFhLEVBQVksQ0FBUztRQUFULE1BQUMsR0FBRCxDQUFDLENBQVE7UUFDbEUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ1gsSUFBSSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7O3NGQUxVLG1CQUFtQjtzRUFBbkIsbUJBQW1COztRQUpuQixrQkFBeUI7O0FBSXpCLG1CQUFtQjtJQVYvQixRQUFRLENBQUM7UUFDUixNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDO0tBQzNCLENBQUM7R0FRVyxtQkFBbUIsQ0FNL0I7U0FOWSxtQkFBbUI7dUZBQW5CLG1CQUFtQjtjQVAvQixTQUFTO2VBQUM7Z0JBQ1QsUUFBUSxFQUFFLHNCQUFzQjtnQkFDaEMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07Z0JBQy9DLFFBQVEsRUFBRSwyQkFBMkI7Z0JBQ3JDLHVFQUF1RTtnQkFDdkUsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQzthQUMzQjs7QUFzQk0sSUFBTSxvQkFBb0IsR0FBMUIsTUFBTSxvQkFBb0I7SUFFL0IsWUFBWSxDQUFvQixFQUFFLENBQWEsRUFBWSxDQUFTO1FBQVQsTUFBQyxHQUFELENBQUMsQ0FBUTtRQUNsRSxDQUFDLENB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LEVBQUUsQ0FBQyxPQUFPLENBQUM7S0FDbEIsQ0FBQztHQVFXLHNCQUFzQixDQU1sQztTQU5ZLHNCQUFzQjt1RkFBdEIsc0JBQXNCO2NBUGxDLFNBQVM7ZUFBQztnQkFDVCxRQUFRLEVBQUUsMkJBQTJCO2dCQUNyQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtnQkFDL0MsUUFBUSxFQUFFLDJCQUEyQjtnQkFDckMsdUVBQXVFO2dCQUN2RSxNQUFNLEVBQUUsQ0FBQyxPQUFPLENBQUM7YUFDbEIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiB0c2xpbnQ6ZGlzYWJsZSAqL1xyXG4vKiBhdXRvLWdlbmVyYXRlZCBhbmd1bGFyIGRpcmVjdGl2ZSBwcm94aWVzICovXHJcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIE5nWm9uZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgUHJveHlDbXAsIHByb3h5T3V0cHV0cyB9IGZyb20gJy4vYW5ndWxhci1jb21wb25lbnQtbGliL3V0aWxzJztcclxuXHJcbmltcG9ydCB7IENvbXBvbmVudHMgfSBmcm9tICdAdWtoby9hZG1pcmFsdHktY29yZSc7XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxuICBpbnB1dHM6IFsnYWN0aXZlJywgJ2hyZWYnXVxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS1icmVhZGNydW1iJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XHJcbiAgaW5wdXRzOiBbJ2FjdGl2ZScsICdocmVmJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlCcmVhZGNydW1iIHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQWRtaXJhbHR5QnJlYWRjcnVtYiBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5QnJlYWRjcnVtYiB7fVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LWJyZWFkY3J1bWJzJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XHJcbiAgaW5wdXRzOiBbXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eUJyZWFkY3J1bWJzIHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQWRtaXJhbHR5QnJlYWRjcnVtYnMgZXh0ZW5kcyBDb21wb25lbnRzLkFkbWlyYWx0eUJyZWFkY3J1bWJzIHt9XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnaWNvbicsICd0eXBlJywgJ3ZhcmlhbnQnXVxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS1idXR0b24nLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnaWNvbicsICd0eXBlJywgJ3ZhcmlhbnQnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eUJ1dHRvbiB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eUJ1dHRvbiBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5QnV0dG9uIHt9XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxuICBpbnB1dHM6IFsnaGVhZGluZyddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LWNhcmQnLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFsnaGVhZGluZyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5Q2FyZCB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eUNhcmQgZXh0ZW5kcyBDb21wb25lbnRzLkFkbWlyYWx0eUNhcmQge31cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG4gIGlucHV0czogWydjaGVja2JveFJpZ2h0JywgJ2NoZWNrZWQnLCAnZGlzYWJsZWQnLCAnbGFiZWxUZXh0JywgJ25hbWUnLCAndmFsdWUnXVxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS1jaGVja2JveCcsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydjaGVja2JveFJpZ2h0JywgJ2NoZWNrZWQnLCAnZGlzYWJsZWQnLCAnbGFiZWxUZXh0JywgJ25hbWUnLCAndmFsdWUnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eUNoZWNrYm94IHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2NoZWNrYm94Q2hhbmdlJywgJ2NoZWNrYm94Rm9jdXMnLCAnY2hlY2tib3hCbHVyJ10pO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlDaGVja2JveCBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5Q2hlY2tib3gge1xyXG4gIC8qKlxyXG4gICAqIEV2ZW50IGlzIGZpcmVkIHdoZW4gdGhlIGZvcm0gY29udHJvbCBjaGFuZ2VzIHN0YXRlIEBldmVudCByYWRpb0NoYW5nZXNcclxuICAgKi9cclxuICBjaGVja2JveENoYW5nZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGFueT4+O1xyXG4gIC8qKlxyXG4gICAqIEV2ZW50IGlzIGZpcmVkIHdoZW4gdGhlIGZvcm0gY29udHJvbCBnYWlucyBmb2N1cyBAZXZlbnQgY2hlY2tib3hGb2N1c1xyXG4gICAqL1xyXG4gIGNoZWNrYm94Rm9jdXM6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxhbnk+PjtcclxuICAvKipcclxuICAgKiBFdmVudCBpcyBmaXJlZCB3aGVuIHRoZSBmb3JtIGNvbnRyb2wgbG9zZXMgZm9jdXMgQGV2ZW50IGNoZWNrYm94Qmx1clxyXG4gICAqL1xyXG4gIGNoZWNrYm94Qmx1cjogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGFueT4+O1xyXG59XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxuICBpbnB1dHM6IFsnYWN0aW9uVGV4dCcsICdjbGlja0FjdGlvbicsICdjb2xvdXInLCAnaGVhZGluZycsICdoZWlnaHQnLCAnd2lkdGgnXVxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS1jb2xvdXItYmxvY2snLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFsnYWN0aW9uVGV4dCcsICdjbGlja0FjdGlvbicsICdjb2xvdXInLCAnaGVhZGluZycsICdoZWlnaHQnLCAnd2lkdGgnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eUNvbG91ckJsb2NrIHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQWRtaXJhbHR5Q29sb3VyQmxvY2sgZXh0ZW5kcyBDb21wb25lbnRzLkFkbWlyYWx0eUNvbG91ckJsb2NrIHt9XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxuICBpbnB1dHM6IFsnaGVhZGluZycsICd0eXBlJ11cclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktZGlhbG9ndWUnLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFsnaGVhZGluZycsICd0eXBlJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlEaWFsb2d1ZSB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eURpYWxvZ3VlIGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlEaWFsb2d1ZSB7fVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbiAgaW5wdXRzOiBbJ2FsaWduSGVhZGluZ1JpZ2h0JywgJ2V4cGFuZGVkJywgJ2hlYWRpbmcnLCAnaGlkZUJvcmRlciddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LWV4cGFuc2lvbicsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydhbGlnbkhlYWRpbmdSaWdodCcsICdleHBhbmRlZCcsICdoZWFkaW5nJywgJ2hpZGVCb3JkZXInXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eUV4cGFuc2lvbiB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWyd0b2dnbGVkJ10pO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlFeHBhbnNpb24gZXh0ZW5kcyBDb21wb25lbnRzLkFkbWlyYWx0eUV4cGFuc2lvbiB7XHJcbiAgLyoqXHJcbiAgICogVGhlIGV2ZW50IHRoYXQgaXMgZGlzcGF0Y2hlZCB3aGVuIHRoZSBleHBhbmRlZCBzdGF0dXMgaXMgdG9nZ2xlZC5cclxuICAgKi9cclxuICB0b2dnbGVkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8Ym9vbGVhbj4+O1xyXG59XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxuICBpbnB1dHM6IFsnbGFiZWwnLCAnbXVsdGlwbGUnXVxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS1maWxlLWlucHV0JyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XHJcbiAgaW5wdXRzOiBbJ2xhYmVsJywgJ211bHRpcGxlJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlGaWxlSW5wdXQge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZmlsZUlucHV0Q2hhbmdlJ10pO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlGaWxlSW5wdXQgZXh0ZW5kcyBDb21wb25lbnRzLkFkbWlyYWx0eUZpbGVJbnB1dCB7XHJcbiAgLyoqXHJcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBhZGRlZCBmaWxlKHMpIGNoYW5nZXNcclxuICAgKi9cclxuICBmaWxlSW5wdXRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxGaWxlW10+PjtcclxufVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbiAgaW5wdXRzOiBbJ2ZpbHRlclRpdGxlJ11cclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktZmlsdGVyJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XHJcbiAgaW5wdXRzOiBbJ2ZpbHRlclRpdGxlJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlGaWx0ZXIge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZmlsdGVyQ2xlYXJlZCcsICdmaWx0ZXJBcHBsaWVkJ10pO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlGaWx0ZXIgZXh0ZW5kcyBDb21wb25lbnRzLkFkbWlyYWx0eUZpbHRlciB7XHJcbiAgLyoqXHJcbiAgICogRXZlbnQgdGhhdCBpcyBlbWl0dGVkIHdoZW4gdGhlIGZpbHRlcnMgYXJlIGNsZWFyZWRcclxuICAgKi9cclxuICBmaWx0ZXJDbGVhcmVkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8dm9pZD4+O1xyXG4gIC8qKlxyXG4gICAqIEV2ZW50IHRoYXQgaXMgZW1pdHRlZCB3aGVuIHRoZSBmaWx0ZXJzIGFyZSBhcHBsaWVkXHJcbiAgICovXHJcbiAgZmlsdGVyQXBwbGllZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHZvaWQ+PjtcclxufVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbiAgaW5wdXRzOiBbJ2dyb3VwVGl0bGUnXVxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS1maWx0ZXItZ3JvdXAnLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFsnZ3JvdXBUaXRsZSddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5RmlsdGVyR3JvdXAge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlGaWx0ZXJHcm91cCBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5RmlsdGVyR3JvdXAge31cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG4gIGlucHV0czogWydpbWFnZUFsdCcsICdpbWFnZUxpbmsnLCAnaW1hZ2VTcmMnLCAndGV4dCddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LWZvb3RlcicsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydpbWFnZUFsdCcsICdpbWFnZUxpbmsnLCAnaW1hZ2VTcmMnLCAndGV4dCddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5Rm9vdGVyIHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQWRtaXJhbHR5Rm9vdGVyIGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlGb290ZXIge31cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG4gIGlucHV0czogWydoZWFkZXJUaXRsZScsICdoZWFkZXJUaXRsZVVybCcsICdsb2dvQWx0VGV4dCcsICdsb2dvSW1nVXJsJywgJ2xvZ29MaW5rVXJsJ11cclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktaGVhZGVyJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XHJcbiAgaW5wdXRzOiBbJ2hlYWRlclRpdGxlJywgJ2hlYWRlclRpdGxlVXJsJywgJ2xvZ29BbHRUZXh0JywgJ2xvZ29JbWdVcmwnLCAnbG9nb0xpbmtVcmwnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eUhlYWRlciB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWyd0aXRsZWRDbGlja2VkJ10pO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlIZWFkZXIgZXh0ZW5kcyBDb21wb25lbnRzLkFkbWlyYWx0eUhlYWRlciB7XHJcbiAgLyoqXHJcbiAgICogRW1pdHMgYW4gZXZlbnQgdGhhdCBjYW4gYmUgbGlzdGVuZWQgdG8gd2hlbiB0aGUgdGl0bGUgaW4gdGhlIGhlYWRlciBpcyBjbGlja2VkXHJcbiAgICovXHJcbiAgdGl0bGVkQ2xpY2tlZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHN0cmluZz4+O1xyXG59XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxuICBpbnB1dHM6IFsnYWN0aXZlJywgJ21lbnVUaXRsZSddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LWhlYWRlci1tZW51LWl0ZW0nLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFsnYWN0aXZlJywgJ21lbnVUaXRsZSddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5SGVhZGVyTWVudUl0ZW0ge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnbWVudUl0ZW1DbGljayddKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQWRtaXJhbHR5SGVhZGVyTWVudUl0ZW0gZXh0ZW5kcyBDb21wb25lbnRzLkFkbWlyYWx0eUhlYWRlck1lbnVJdGVtIHtcclxuICAvKipcclxuICAgKiBUaGUgZXZlbnQgdGhhdCBpcyBmaXJlZCB3aGVuIGEgdXNlciBjbGlja3Mgb24gdGhlIG1lbnVcclxuICAgKi9cclxuICBtZW51SXRlbUNsaWNrOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8dm9pZD4+O1xyXG59XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxuICBpbnB1dHM6IFsnaXNTaWduZWRJbicsICdzaWduZWRJblRleHQnXVxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS1oZWFkZXItcHJvZmlsZScsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydpc1NpZ25lZEluJywgJ3NpZ25lZEluVGV4dCddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5SGVhZGVyUHJvZmlsZSB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzaWduSW5DbGlja2VkJywgJ3lvdXJBY2NvdW50Q2xpY2tlZCcsICdzaWduT3V0Q2xpY2tlZCddKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQWRtaXJhbHR5SGVhZGVyUHJvZmlsZSBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5SGVhZGVyUHJvZmlsZSB7XHJcbiAgLyoqXHJcbiAgICogVGhlIGV2ZW50IHRoYXQgaXMgZmlyZWQgd2hlbiB0aGUgdXNlciBjbGlja3Mgb25cclxudGhlIHNpZ24gaW4gYnV0dG9uXHJcbiAgICovXHJcbiAgc2lnbkluQ2xpY2tlZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHZvaWQ+PjtcclxuICAvKipcclxuICAgKiBUaGUgZXZlbnQgdGhhdCBpcyBmaXJlZCB3aGVuIHRoZSB1c2VyIGNsaWNrcyBvbiB0aGVcclxuJ1lvdXIgYWNjb3VudCcgYnV0dG9uXHJcbiAgICovXHJcbiAgeW91ckFjY291bnRDbGlja2VkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8dm9pZD4+O1xyXG4gIC8qKlxyXG4gICAqIFRoZSBldmVudCB0aGF0IGlzIGZpcmVkIHdoZW4gdGhlIHVzZXIgY2xpY2tzIG9uIHRoZVxyXG4nc2lnbiBvdXQnIGJ1dHRvblxyXG4gICAqL1xyXG4gIHNpZ25PdXRDbGlja2VkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8dm9pZD4+O1xyXG59XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxuICBpbnB1dHM6IFsnbWVudVRpdGxlJ11cclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktaGVhZGVyLXN1Yi1tZW51LWl0ZW0nLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFsnbWVudVRpdGxlJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlIZWFkZXJTdWJNZW51SXRlbSB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzdWJNZW51SXRlbUNsaWNrJ10pO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlIZWFkZXJTdWJNZW51SXRlbSBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5SGVhZGVyU3ViTWVudUl0ZW0ge1xyXG4gIC8qKlxyXG4gICAqIFRoZSBldmVudCB0aGF0IGlzIGZpcmVkIHdoZW4gYSB1c2VyIGNsaWNrcyBvbiB0aGUgbWVudVxyXG4gICAqL1xyXG4gIHN1Yk1lbnVJdGVtQ2xpY2s6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx2b2lkPj47XHJcbn1cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG4gIGlucHV0czogWydkaXNhYmxlZCddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LWhpbnQnLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFsnZGlzYWJsZWQnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eUhpbnQge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlIaW50IGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlIaW50IHt9XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktaHInLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFtdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5SHIge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlIciBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5SHIge31cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG4gIGlucHV0czogWydpY29uTmFtZScsICdpY29uUHJlZml4J11cclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktaWNvbicsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydpY29uTmFtZScsICdpY29uUHJlZml4J10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlJY29uIHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQWRtaXJhbHR5SWNvbiBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5SWNvbiB7fVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbiAgaW5wdXRzOiBbJ2F1dG9jb21wbGV0ZScsICdkaXNhYmxlZCcsICdoaW50JywgJ2ludmFsaWQnLCAnaW52YWxpZE1lc3NhZ2UnLCAnbGFiZWwnLCAnbmFtZScsICdwbGFjZWhvbGRlcicsICdyZXF1aXJlZCcsICd0eXBlJywgJ3ZhbHVlJywgJ3dpZHRoJ11cclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktaW5wdXQnLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFsnYXV0b2NvbXBsZXRlJywgJ2Rpc2FibGVkJywgJ2hpbnQnLCAnaW52YWxpZCcsICdpbnZhbGlkTWVzc2FnZScsICdsYWJlbCcsICduYW1lJywgJ3BsYWNlaG9sZGVyJywgJ3JlcXVpcmVkJywgJ3R5cGUnLCAndmFsdWUnLCAnd2lkdGgnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eUlucHV0IHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2FkbWlyYWx0eUNoYW5nZSddKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG5pbXBvcnQgdHlwZSB7IElucHV0Q2hhbmdlRXZlbnREZXRhaWwgYXMgSUFkbWlyYWx0eUlucHV0SW5wdXRDaGFuZ2VFdmVudERldGFpbCB9IGZyb20gJ0B1a2hvL2FkbWlyYWx0eS1jb3JlJztcclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlJbnB1dCBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5SW5wdXQge1xyXG4gIC8qKlxyXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgdmFsdWUgaGFzIGNoYW5nZWQuXHJcbiAgICovXHJcbiAgYWRtaXJhbHR5Q2hhbmdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUFkbWlyYWx0eUlucHV0SW5wdXRDaGFuZ2VFdmVudERldGFpbD4+O1xyXG59XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktaW5wdXQtZXJyb3InLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFtdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5SW5wdXRFcnJvciB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eUlucHV0RXJyb3IgZXh0ZW5kcyBDb21wb25lbnRzLkFkbWlyYWx0eUlucHV0RXJyb3Ige31cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG4gIGlucHV0czogWydkaXNhYmxlZCcsICdmb3InXVxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS1sYWJlbCcsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydkaXNhYmxlZCcsICdmb3InXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eUxhYmVsIHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQWRtaXJhbHR5TGFiZWwgZXh0ZW5kcyBDb21wb25lbnRzLkFkbWlyYWx0eUxhYmVsIHt9XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxuICBpbnB1dHM6IFsnaHJlZicsICduZXdUYWInXVxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS1saW5rJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XHJcbiAgaW5wdXRzOiBbJ2hyZWYnLCAnbmV3VGFiJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlMaW5rIHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQWRtaXJhbHR5TGluayBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5TGluayB7fVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbiAgaW5wdXRzOiBbJ2N1cnJlbnRQYWdlJywgJ2xhYmVsJywgJ3BhZ2VzJ11cclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktcGFnaW5hdG9yJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XHJcbiAgaW5wdXRzOiBbJ2N1cnJlbnRQYWdlJywgJ2xhYmVsJywgJ3BhZ2VzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlQYWdpbmF0b3Ige1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsncGFnZUNoYW5nZSddKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQWRtaXJhbHR5UGFnaW5hdG9yIGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlQYWdpbmF0b3Ige1xyXG4gIC8qKlxyXG4gICAqIERpc3BhdGNoZWQgd2hlbiB0aGUgcHJldmlvdXMgb3IgbmV4dCBidXR0b24gaXMgcHJlc3NlZC4gVGhlIGV2ZW50IGRldGFpbCBjb250YWluc1xyXG50aGUgcmVxdWVzdGVkIHBhZ2UgbnVtYmVyLlxyXG4gICAqL1xyXG4gIHBhZ2VDaGFuZ2U6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxudW1iZXI+PjtcclxufVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbiAgaW5wdXRzOiBbJ2xpbmsnLCAncGhhc2UnXVxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS1waGFzZS1iYW5uZXInLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFsnbGluaycsICdwaGFzZSddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5UGhhc2VCYW5uZXIge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlQaGFzZUJhbm5lciBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5UGhhc2VCYW5uZXIge31cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG4gIGlucHV0czogWydlcnJvcicsICdsYWJlbCcsICdwcm9ncmVzc2lvbiddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LXByb2dyZXNzLWJhcicsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydlcnJvcicsICdsYWJlbCcsICdwcm9ncmVzc2lvbiddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5UHJvZ3Jlc3NCYXIge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlQcm9ncmVzc0JhciBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5UHJvZ3Jlc3NCYXIge31cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG4gIGlucHV0czogWydjaGVja2VkJywgJ2Rpc2FibGVkJywgJ25hbWUnLCAndmFsdWUnXVxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS1yYWRpbycsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydjaGVja2VkJywgJ2Rpc2FibGVkJywgJ25hbWUnLCAndmFsdWUnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eVJhZGlvIHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2FkbWlyYWx0eUZvY3VzJywgJ2FkbWlyYWx0eUJsdXInXSk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eVJhZGlvIGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlSYWRpbyB7XHJcbiAgLyoqXHJcbiAgICogRW1pdHRlZCB3aGVuIHRoZSByYWRpbyBidXR0b24gZ2FpbnMgZm9jdXMuXHJcbiAgICovXHJcbiAgYWRtaXJhbHR5Rm9jdXM6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx2b2lkPj47XHJcbiAgLyoqXHJcbiAgICogRW1pdHRlZCB3aGVuIHRoZSByYWRpbyBidXR0b24gbG9zZXMgZm9jdXMuXHJcbiAgICovXHJcbiAgYWRtaXJhbHR5Qmx1cjogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHZvaWQ+PjtcclxufVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbiAgaW5wdXRzOiBbJ2Rpc3BsYXlWZXJ0aWNhbCcsICduYW1lJywgJ3ZhbHVlJ11cclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktcmFkaW8tZ3JvdXAnLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFsnZGlzcGxheVZlcnRpY2FsJywgJ25hbWUnLCAndmFsdWUnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eVJhZGlvR3JvdXAge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsncmFkaW9DaGFuZ2UnXSk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eVJhZGlvR3JvdXAgZXh0ZW5kcyBDb21wb25lbnRzLkFkbWlyYWx0eVJhZGlvR3JvdXAge1xyXG4gIC8qKlxyXG4gICAqIEV2ZW50IGZpcmVkIHdoZW4gdGhlIGNoZWNrZWQgcmFkaW8gYnV0dG9uIGNoYW5nZXNcclxuICAgKi9cclxuICByYWRpb0NoYW5nZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGFueT4+O1xyXG59XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxuICBpbnB1dHM6IFsnaGVhZGluZyddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LXJlYWQtbW9yZScsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydoZWFkaW5nJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlSZWFkTW9yZSB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydhZG1pcmFsdHlUb2dnbGVkJ10pO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlSZWFkTW9yZSBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5UmVhZE1vcmUge1xyXG4gIC8qKlxyXG4gICAqIFRoZSBldmVudCB0aGF0IGlzIGRpc3BhdGNoZWQgd2hlbiB0aGUgZXhwYW5kZWQgc3RhdHVzIGlzIHRvZ2dsZWQuXHJcbiAgICovXHJcbiAgYWRtaXJhbHR5VG9nZ2xlZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGJvb2xlYW4+PjtcclxufVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2Vycm9yJywgJ2Vycm9ySGludCcsICdoaW50JywgJ2xhYmVsJywgJ3dpZHRoJ11cclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktc2VsZWN0JyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XHJcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2Vycm9yJywgJ2Vycm9ySGludCcsICdoaW50JywgJ2xhYmVsJywgJ3dpZHRoJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlTZWxlY3Qge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnYWRtaXJhbHR5Q2hhbmdlJywgJ2FkbWlyYWx0eUJsdXInXSk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eVNlbGVjdCBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5U2VsZWN0IHtcclxuICAvKipcclxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIHZhbHVlIGhhcyBjaGFuZ2VkLlxyXG4gICAqL1xyXG4gIGFkbWlyYWx0eUNoYW5nZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PEV2ZW50VGFyZ2V0Pj47XHJcbiAgLyoqXHJcbiAgICogRW1pdHRlZCB3aGVuIHRoZSBjb21wb25lbnQgbG9zZXMgZm9jdXMuXHJcbiAgICovXHJcbiAgYWRtaXJhbHR5Qmx1cjogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHZvaWQ+PjtcclxufVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbiAgaW5wdXRzOiBbJ2xhYmVsJ11cclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktc2lkZS1uYXYnLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFsnbGFiZWwnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eVNpZGVOYXYge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlTaWRlTmF2IGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlTaWRlTmF2IHt9XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxuICBpbnB1dHM6IFsnaGVhZGluZ1RpdGxlJywgJ25hdkFjdGl2ZScsICdzaWRlTmF2SXRlbUlkJ11cclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktc2lkZS1uYXYtaXRlbScsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydoZWFkaW5nVGl0bGUnLCAnbmF2QWN0aXZlJywgJ3NpZGVOYXZJdGVtSWQnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eVNpZGVOYXZJdGVtIHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3NpZGVOYXZJdGVtU2VsZWN0ZWQnXSk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eVNpZGVOYXZJdGVtIGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlTaWRlTmF2SXRlbSB7XHJcbiAgLyoqXHJcbiAgICogQW4gZXZlbnQgZW1pdHRlZCB3aGVuIHRoaXMgU2lkZSBOYXYgaXRlbSBpcyBzZWxlY3RlZCBjb250YWluaW5nIHRoZSBzaWRlTmF2SXRlbUlkXHJcbiAgICovXHJcbiAgc2lkZU5hdkl0ZW1TZWxlY3RlZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHN0cmluZz4+O1xyXG59XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxuICBpbnB1dHM6IFsnbGFiZWwnLCAndGFiQ29udGVudElkJywgJ3RhYkxhYmVsSWQnXVxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS10YWInLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFsnbGFiZWwnLCAndGFiQ29udGVudElkJywgJ3RhYkxhYmVsSWQnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eVRhYiB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eVRhYiBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5VGFiIHt9XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxuICBpbnB1dHM6IFsnc2VsZWN0ZWRJbmRleCddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LXRhYi1ncm91cCcsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydzZWxlY3RlZEluZGV4J10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlUYWJHcm91cCB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydhZG1pcmFsdHlUYWJTZWxlY3RlZCddKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQWRtaXJhbHR5VGFiR3JvdXAgZXh0ZW5kcyBDb21wb25lbnRzLkFkbWlyYWx0eVRhYkdyb3VwIHtcclxuXHJcbiAgYWRtaXJhbHR5VGFiU2VsZWN0ZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxudW1iZXI+PjtcclxufVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbiAgaW5wdXRzOiBbJ2NhcHRpb24nXVxyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS10YWJsZScsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydjYXB0aW9uJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlUYWJsZSB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eVRhYmxlIGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlUYWJsZSB7fVxyXG5cclxuXHJcbkBQcm94eUNtcCh7XHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LXRhYmxlLWJvZHknLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFtdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5VGFibGVCb2R5IHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQWRtaXJhbHR5VGFibGVCb2R5IGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlUYWJsZUJvZHkge31cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS10YWJsZS1jZWxsJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XHJcbiAgaW5wdXRzOiBbXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eVRhYmxlQ2VsbCB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eVRhYmxlQ2VsbCBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5VGFibGVDZWxsIHt9XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktdGFibGUtaGVhZGVyJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XHJcbiAgaW5wdXRzOiBbXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eVRhYmxlSGVhZGVyIHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQWRtaXJhbHR5VGFibGVIZWFkZXIgZXh0ZW5kcyBDb21wb25lbnRzLkFkbWlyYWx0eVRhYmxlSGVhZGVyIHt9XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktdGFibGUtaGVhZGVyLWNlbGwnLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFtdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5VGFibGVIZWFkZXJDZWxsIHtcclxuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xyXG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XHJcbiAgICBjLmRldGFjaCgpO1xyXG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQWRtaXJhbHR5VGFibGVIZWFkZXJDZWxsIGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlUYWJsZUhlYWRlckNlbGwge31cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG59KVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FkbWlyYWx0eS10YWJsZS1yb3cnLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcclxuICBpbnB1dHM6IFtdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5VGFibGVSb3cge1xyXG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XHJcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcclxuICAgIGMuZGV0YWNoKCk7XHJcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlUYWJsZVJvdyBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5VGFibGVSb3cge31cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG4gIGlucHV0czogWydkaXNhYmxlZCcsICdoaW50JywgJ2ludmFsaWQnLCAnaW52YWxpZE1lc3NhZ2UnLCAnbGFiZWwnLCAndGV4dCcsICd3aWR0aCddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LXRleHRhcmVhJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XHJcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2hpbnQnLCAnaW52YWxpZCcsICdpbnZhbGlkTWVzc2FnZScsICdsYWJlbCcsICd0ZXh0JywgJ3dpZHRoJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZG1pcmFsdHlUZXh0YXJlYSB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWyd0ZXh0YXJlYUJsdXInLCAndGV4dGFyZWFDaGFuZ2VkJ10pO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBBZG1pcmFsdHlUZXh0YXJlYSBleHRlbmRzIENvbXBvbmVudHMuQWRtaXJhbHR5VGV4dGFyZWEge1xyXG4gIC8qKlxyXG4gICAqIEV2ZW50IGlzIGZpcmVkIHdoZW4gdGhlIGZvcm0gY29udHJvbCBsb3NlcyBmb2N1cyBAZXZlbnQgdGV4dGFyZWFCbHVyXHJcbiAgICovXHJcbiAgdGV4dGFyZWFCbHVyOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8YW55Pj47XHJcbiAgLyoqXHJcbiAgICogRXZlbnQgaXMgZmlyZWQgd2hlbiB0aGUgZm9ybSBjb250cm9sIGNoYW5nZXMgQGV2ZW50IHRleHRhcmVhQ2hhbmdlZFxyXG4gICAqL1xyXG4gIHRleHRhcmVhQ2hhbmdlZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHN0cmluZz4+O1xyXG59XHJcblxyXG5cclxuQFByb3h5Q21wKHtcclxuICBpbnB1dHM6IFsnbGFiZWwnLCAncGxhY2Vob2xkZXInLCAncmVzdWx0c09uSW5pdEZvY3VzJywgJ3ZhbHVlJ11cclxufSlcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhZG1pcmFsdHktdHlwZS1haGVhZCcsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWydsYWJlbCcsICdwbGFjZWhvbGRlcicsICdyZXN1bHRzT25Jbml0Rm9jdXMnLCAndmFsdWUnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkbWlyYWx0eVR5cGVBaGVhZCB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzZWxlY3Rpb25DaGFuZ2VkJywgJ3ZhbHVlQ2hhbmdlZCddKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgQWRtaXJhbHR5VHlwZUFoZWFkIGV4dGVuZHMgQ29tcG9uZW50cy5BZG1pcmFsdHlUeXBlQWhlYWQge1xyXG4gIC8qKlxyXG4gICAqIE9wdGlvbmFsIGZ1bmN0aW9uIHRoYXQgd2lsbCBiZSBleGVjdXRlZCB3aGVuIHRoZSB1c2VyIHNlbGVjdHMgYW4gaXRlbSBmcm9tIHRoZSB0eXBlYWhlYWRcclxuICAgKi9cclxuICBzZWxlY3Rpb25DaGFuZ2VkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8c3RyaW5nPj47XHJcbiAgLyoqXHJcbiAgICogRXZlbnQgdGhhdCBpcyBmaXJlZCB3aGVuZXZlciB0aGUgdmFsdWUgb2YgdGhlIHR5cGVhaGVhZCBjaGFuZ2VzXHJcbmUuZy4gc2VsZWN0aW9uIGZyb20gdGhlIGRyb3Bkb3duIG9yIG1hbnVhbGx5IHR5cGVkIGVudHJ5XHJcbiAgICovXHJcbiAgdmFsdWVDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8c3RyaW5nPj47XHJcbn1cclxuXHJcblxyXG5AUHJveHlDbXAoe1xyXG4gIGlucHV0czogWyd2YWx1ZSddXHJcbn0pXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWRtaXJhbHR5LXR5cGUtYWhlYWQtaXRlbScsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxyXG4gIGlucHV0czogWyd2YWx1ZSddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRtaXJhbHR5VHlwZUFoZWFkSXRlbSB7XHJcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcclxuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xyXG4gICAgYy5kZXRhY2goKTtcclxuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEFkbWlyYWx0eVR5cGVBaGVhZEl0ZW0gZXh0ZW5kcyBDb21wb25lbnRzLkFkbWlyYWx0eVR5cGVBaGVhZEl0ZW0ge31cclxuXHJcblxyXG4iXX0=
@@ -28,6 +28,7 @@ export const DIRECTIVES = [
28
28
  d.AdmiraltyProgressBar,
29
29
  d.AdmiraltyRadio,
30
30
  d.AdmiraltyRadioGroup,
31
+ d.AdmiraltyReadMore,
31
32
  d.AdmiraltySelect,
32
33
  d.AdmiraltySideNav,
33
34
  d.AdmiraltySideNavItem,
@@ -43,4 +44,4 @@ export const DIRECTIVES = [
43
44
  d.AdmiraltyTypeAhead,
44
45
  d.AdmiraltyTypeAheadItem
45
46
  ];
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3N0ZW5jaWwtZ2VuZXJhdGVkL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxDQUFDLE1BQU0sY0FBYyxDQUFDO0FBRWxDLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRztJQUN4QixDQUFDLENBQUMsbUJBQW1CO0lBQ3JCLENBQUMsQ0FBQyxvQkFBb0I7SUFDdEIsQ0FBQyxDQUFDLGVBQWU7SUFDakIsQ0FBQyxDQUFDLGFBQWE7SUFDZixDQUFDLENBQUMsaUJBQWlCO0lBQ25CLENBQUMsQ0FBQyxvQkFBb0I7SUFDdEIsQ0FBQyxDQUFDLGlCQUFpQjtJQUNuQixDQUFDLENBQUMsa0JBQWtCO0lBQ3BCLENBQUMsQ0FBQyxrQkFBa0I7SUFDcEIsQ0FBQyxDQUFDLGVBQWU7SUFDakIsQ0FBQyxDQUFDLG9CQUFvQjtJQUN0QixDQUFDLENBQUMsZUFBZTtJQUNqQixDQUFDLENBQUMsZUFBZTtJQUNqQixDQUFDLENBQUMsdUJBQXVCO0lBQ3pCLENBQUMsQ0FBQyxzQkFBc0I7SUFDeEIsQ0FBQyxDQUFDLDBCQUEwQjtJQUM1QixDQUFDLENBQUMsYUFBYTtJQUNmLENBQUMsQ0FBQyxXQUFXO0lBQ2IsQ0FBQyxDQUFDLGFBQWE7SUFDZixDQUFDLENBQUMsY0FBYztJQUNoQixDQUFDLENBQUMsbUJBQW1CO0lBQ3JCLENBQUMsQ0FBQyxjQUFjO0lBQ2hCLENBQUMsQ0FBQyxhQUFhO0lBQ2YsQ0FBQyxDQUFDLGtCQUFrQjtJQUNwQixDQUFDLENBQUMsb0JBQW9CO0lBQ3RCLENBQUMsQ0FBQyxvQkFBb0I7SUFDdEIsQ0FBQyxDQUFDLGNBQWM7SUFDaEIsQ0FBQyxDQUFDLG1CQUFtQjtJQUNyQixDQUFDLENBQUMsZUFBZTtJQUNqQixDQUFDLENBQUMsZ0JBQWdCO0lBQ2xCLENBQUMsQ0FBQyxvQkFBb0I7SUFDdEIsQ0FBQyxDQUFDLFlBQVk7SUFDZCxDQUFDLENBQUMsaUJBQWlCO0lBQ25CLENBQUMsQ0FBQyxjQUFjO0lBQ2hCLENBQUMsQ0FBQyxrQkFBa0I7SUFDcEIsQ0FBQyxDQUFDLGtCQUFrQjtJQUNwQixDQUFDLENBQUMsb0JBQW9CO0lBQ3RCLENBQUMsQ0FBQyx3QkFBd0I7SUFDMUIsQ0FBQyxDQUFDLGlCQUFpQjtJQUNuQixDQUFDLENBQUMsaUJBQWlCO0lBQ25CLENBQUMsQ0FBQyxrQkFBa0I7SUFDcEIsQ0FBQyxDQUFDLHNCQUFzQjtDQUN6QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbmltcG9ydCAqIGFzIGQgZnJvbSAnLi9jb21wb25lbnRzJztcclxuXHJcbmV4cG9ydCBjb25zdCBESVJFQ1RJVkVTID0gW1xyXG4gIGQuQWRtaXJhbHR5QnJlYWRjcnVtYixcclxuICBkLkFkbWlyYWx0eUJyZWFkY3J1bWJzLFxyXG4gIGQuQWRtaXJhbHR5QnV0dG9uLFxyXG4gIGQuQWRtaXJhbHR5Q2FyZCxcclxuICBkLkFkbWlyYWx0eUNoZWNrYm94LFxyXG4gIGQuQWRtaXJhbHR5Q29sb3VyQmxvY2ssXHJcbiAgZC5BZG1pcmFsdHlEaWFsb2d1ZSxcclxuICBkLkFkbWlyYWx0eUV4cGFuc2lvbixcclxuICBkLkFkbWlyYWx0eUZpbGVJbnB1dCxcclxuICBkLkFkbWlyYWx0eUZpbHRlcixcclxuICBkLkFkbWlyYWx0eUZpbHRlckdyb3VwLFxyXG4gIGQuQWRtaXJhbHR5Rm9vdGVyLFxyXG4gIGQuQWRtaXJhbHR5SGVhZGVyLFxyXG4gIGQuQWRtaXJhbHR5SGVhZGVyTWVudUl0ZW0sXHJcbiAgZC5BZG1pcmFsdHlIZWFkZXJQcm9maWxlLFxyXG4gIGQuQWRtaXJhbHR5SGVhZGVyU3ViTWVudUl0ZW0sXHJcbiAgZC5BZG1pcmFsdHlIaW50LFxyXG4gIGQuQWRtaXJhbHR5SHIsXHJcbiAgZC5BZG1pcmFsdHlJY29uLFxyXG4gIGQuQWRtaXJhbHR5SW5wdXQsXHJcbiAgZC5BZG1pcmFsdHlJbnB1dEVycm9yLFxyXG4gIGQuQWRtaXJhbHR5TGFiZWwsXHJcbiAgZC5BZG1pcmFsdHlMaW5rLFxyXG4gIGQuQWRtaXJhbHR5UGFnaW5hdG9yLFxyXG4gIGQuQWRtaXJhbHR5UGhhc2VCYW5uZXIsXHJcbiAgZC5BZG1pcmFsdHlQcm9ncmVzc0JhcixcclxuICBkLkFkbWlyYWx0eVJhZGlvLFxyXG4gIGQuQWRtaXJhbHR5UmFkaW9Hcm91cCxcclxuICBkLkFkbWlyYWx0eVNlbGVjdCxcclxuICBkLkFkbWlyYWx0eVNpZGVOYXYsXHJcbiAgZC5BZG1pcmFsdHlTaWRlTmF2SXRlbSxcclxuICBkLkFkbWlyYWx0eVRhYixcclxuICBkLkFkbWlyYWx0eVRhYkdyb3VwLFxyXG4gIGQuQWRtaXJhbHR5VGFibGUsXHJcbiAgZC5BZG1pcmFsdHlUYWJsZUJvZHksXHJcbiAgZC5BZG1pcmFsdHlUYWJsZUNlbGwsXHJcbiAgZC5BZG1pcmFsdHlUYWJsZUhlYWRlcixcclxuICBkLkFkbWlyYWx0eVRhYmxlSGVhZGVyQ2VsbCxcclxuICBkLkFkbWlyYWx0eVRhYmxlUm93LFxyXG4gIGQuQWRtaXJhbHR5VGV4dGFyZWEsXHJcbiAgZC5BZG1pcmFsdHlUeXBlQWhlYWQsXHJcbiAgZC5BZG1pcmFsdHlUeXBlQWhlYWRJdGVtXHJcbl07XHJcbiJdfQ==
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3N0ZW5jaWwtZ2VuZXJhdGVkL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxDQUFDLE1BQU0sY0FBYyxDQUFDO0FBRWxDLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRztJQUN4QixDQUFDLENBQUMsbUJBQW1CO0lBQ3JCLENBQUMsQ0FBQyxvQkFBb0I7SUFDdEIsQ0FBQyxDQUFDLGVBQWU7SUFDakIsQ0FBQyxDQUFDLGFBQWE7SUFDZixDQUFDLENBQUMsaUJBQWlCO0lBQ25CLENBQUMsQ0FBQyxvQkFBb0I7SUFDdEIsQ0FBQyxDQUFDLGlCQUFpQjtJQUNuQixDQUFDLENBQUMsa0JBQWtCO0lBQ3BCLENBQUMsQ0FBQyxrQkFBa0I7SUFDcEIsQ0FBQyxDQUFDLGVBQWU7SUFDakIsQ0FBQyxDQUFDLG9CQUFvQjtJQUN0QixDQUFDLENBQUMsZUFBZTtJQUNqQixDQUFDLENBQUMsZUFBZTtJQUNqQixDQUFDLENBQUMsdUJBQXVCO0lBQ3pCLENBQUMsQ0FBQyxzQkFBc0I7SUFDeEIsQ0FBQyxDQUFDLDBCQUEwQjtJQUM1QixDQUFDLENBQUMsYUFBYTtJQUNmLENBQUMsQ0FBQyxXQUFXO0lBQ2IsQ0FBQyxDQUFDLGFBQWE7SUFDZixDQUFDLENBQUMsY0FBYztJQUNoQixDQUFDLENBQUMsbUJBQW1CO0lBQ3JCLENBQUMsQ0FBQyxjQUFjO0lBQ2hCLENBQUMsQ0FBQyxhQUFhO0lBQ2YsQ0FBQyxDQUFDLGtCQUFrQjtJQUNwQixDQUFDLENBQUMsb0JBQW9CO0lBQ3RCLENBQUMsQ0FBQyxvQkFBb0I7SUFDdEIsQ0FBQyxDQUFDLGNBQWM7SUFDaEIsQ0FBQyxDQUFDLG1CQUFtQjtJQUNyQixDQUFDLENBQUMsaUJBQWlCO0lBQ25CLENBQUMsQ0FBQyxlQUFlO0lBQ2pCLENBQUMsQ0FBQyxnQkFBZ0I7SUFDbEIsQ0FBQyxDQUFDLG9CQUFvQjtJQUN0QixDQUFDLENBQUMsWUFBWTtJQUNkLENBQUMsQ0FBQyxpQkFBaUI7SUFDbkIsQ0FBQyxDQUFDLGNBQWM7SUFDaEIsQ0FBQyxDQUFDLGtCQUFrQjtJQUNwQixDQUFDLENBQUMsa0JBQWtCO0lBQ3BCLENBQUMsQ0FBQyxvQkFBb0I7SUFDdEIsQ0FBQyxDQUFDLHdCQUF3QjtJQUMxQixDQUFDLENBQUMsaUJBQWlCO0lBQ25CLENBQUMsQ0FBQyxpQkFBaUI7SUFDbkIsQ0FBQyxDQUFDLGtCQUFrQjtJQUNwQixDQUFDLENBQUMsc0JBQXNCO0NBQ3pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuaW1wb3J0ICogYXMgZCBmcm9tICcuL2NvbXBvbmVudHMnO1xyXG5cclxuZXhwb3J0IGNvbnN0IERJUkVDVElWRVMgPSBbXHJcbiAgZC5BZG1pcmFsdHlCcmVhZGNydW1iLFxyXG4gIGQuQWRtaXJhbHR5QnJlYWRjcnVtYnMsXHJcbiAgZC5BZG1pcmFsdHlCdXR0b24sXHJcbiAgZC5BZG1pcmFsdHlDYXJkLFxyXG4gIGQuQWRtaXJhbHR5Q2hlY2tib3gsXHJcbiAgZC5BZG1pcmFsdHlDb2xvdXJCbG9jayxcclxuICBkLkFkbWlyYWx0eURpYWxvZ3VlLFxyXG4gIGQuQWRtaXJhbHR5RXhwYW5zaW9uLFxyXG4gIGQuQWRtaXJhbHR5RmlsZUlucHV0LFxyXG4gIGQuQWRtaXJhbHR5RmlsdGVyLFxyXG4gIGQuQWRtaXJhbHR5RmlsdGVyR3JvdXAsXHJcbiAgZC5BZG1pcmFsdHlGb290ZXIsXHJcbiAgZC5BZG1pcmFsdHlIZWFkZXIsXHJcbiAgZC5BZG1pcmFsdHlIZWFkZXJNZW51SXRlbSxcclxuICBkLkFkbWlyYWx0eUhlYWRlclByb2ZpbGUsXHJcbiAgZC5BZG1pcmFsdHlIZWFkZXJTdWJNZW51SXRlbSxcclxuICBkLkFkbWlyYWx0eUhpbnQsXHJcbiAgZC5BZG1pcmFsdHlIcixcclxuICBkLkFkbWlyYWx0eUljb24sXHJcbiAgZC5BZG1pcmFsdHlJbnB1dCxcclxuICBkLkFkbWlyYWx0eUlucHV0RXJyb3IsXHJcbiAgZC5BZG1pcmFsdHlMYWJlbCxcclxuICBkLkFkbWlyYWx0eUxpbmssXHJcbiAgZC5BZG1pcmFsdHlQYWdpbmF0b3IsXHJcbiAgZC5BZG1pcmFsdHlQaGFzZUJhbm5lcixcclxuICBkLkFkbWlyYWx0eVByb2dyZXNzQmFyLFxyXG4gIGQuQWRtaXJhbHR5UmFkaW8sXHJcbiAgZC5BZG1pcmFsdHlSYWRpb0dyb3VwLFxyXG4gIGQuQWRtaXJhbHR5UmVhZE1vcmUsXHJcbiAgZC5BZG1pcmFsdHlTZWxlY3QsXHJcbiAgZC5BZG1pcmFsdHlTaWRlTmF2LFxyXG4gIGQuQWRtaXJhbHR5U2lkZU5hdkl0ZW0sXHJcbiAgZC5BZG1pcmFsdHlUYWIsXHJcbiAgZC5BZG1pcmFsdHlUYWJHcm91cCxcclxuICBkLkFkbWlyYWx0eVRhYmxlLFxyXG4gIGQuQWRtaXJhbHR5VGFibGVCb2R5LFxyXG4gIGQuQWRtaXJhbHR5VGFibGVDZWxsLFxyXG4gIGQuQWRtaXJhbHR5VGFibGVIZWFkZXIsXHJcbiAgZC5BZG1pcmFsdHlUYWJsZUhlYWRlckNlbGwsXHJcbiAgZC5BZG1pcmFsdHlUYWJsZVJvdyxcclxuICBkLkFkbWlyYWx0eVRleHRhcmVhLFxyXG4gIGQuQWRtaXJhbHR5VHlwZUFoZWFkLFxyXG4gIGQuQWRtaXJhbHR5VHlwZUFoZWFkSXRlbVxyXG5dO1xyXG4iXX0=
@@ -938,6 +938,38 @@ AdmiraltyRadioGroup = __decorate([
938
938
  }]
939
939
  }], function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, null);
940
940
  })();
941
+ let AdmiraltyReadMore = class AdmiraltyReadMore {
942
+ constructor(c, r, z) {
943
+ this.z = z;
944
+ c.detach();
945
+ this.el = r.nativeElement;
946
+ proxyOutputs(this, this.el, ['admiraltyToggled']);
947
+ }
948
+ };
949
+ AdmiraltyReadMore.ɵfac = function AdmiraltyReadMore_Factory(t) { return new (t || AdmiraltyReadMore)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i0.NgZone)); };
950
+ AdmiraltyReadMore.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AdmiraltyReadMore, selectors: [["admiralty-read-more"]], inputs: { heading: "heading" }, ngContentSelectors: _c0, decls: 1, vars: 0, template: function AdmiraltyReadMore_Template(rf, ctx) {
951
+ if (rf & 1) {
952
+ i0.ɵɵprojectionDef();
953
+ i0.ɵɵprojection(0);
954
+ }
955
+ }, encapsulation: 2, changeDetection: 0 });
956
+ AdmiraltyReadMore = __decorate([
957
+ ProxyCmp({
958
+ inputs: ['heading']
959
+ })
960
+ ], AdmiraltyReadMore);
961
+ (function () {
962
+ (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AdmiraltyReadMore, [{
963
+ type: Component,
964
+ args: [{
965
+ selector: 'admiralty-read-more',
966
+ changeDetection: ChangeDetectionStrategy.OnPush,
967
+ template: '<ng-content></ng-content>',
968
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
969
+ inputs: ['heading'],
970
+ }]
971
+ }], function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, null);
972
+ })();
941
973
  let AdmiraltySelect = class AdmiraltySelect {
942
974
  constructor(c, r, z) {
943
975
  this.z = z;
@@ -1397,6 +1429,7 @@ const DIRECTIVES = [
1397
1429
  AdmiraltyProgressBar,
1398
1430
  AdmiraltyRadio,
1399
1431
  AdmiraltyRadioGroup,
1432
+ AdmiraltyReadMore,
1400
1433
  AdmiraltySelect,
1401
1434
  AdmiraltySideNav,
1402
1435
  AdmiraltySideNavItem,
@@ -1440,7 +1473,7 @@ DesignSystemModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [Commo
1440
1473
  }]
1441
1474
  }], null, null);
1442
1475
  })();
1443
- (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(DesignSystemModule, { declarations: [AdmiraltyBreadcrumb, AdmiraltyBreadcrumbs, AdmiraltyButton, AdmiraltyCard, AdmiraltyCheckbox, AdmiraltyColourBlock, AdmiraltyDialogue, AdmiraltyExpansion, AdmiraltyFileInput, AdmiraltyFilter, AdmiraltyFilterGroup, AdmiraltyFooter, AdmiraltyHeader, AdmiraltyHeaderMenuItem, AdmiraltyHeaderProfile, AdmiraltyHeaderSubMenuItem, AdmiraltyHint, AdmiraltyHr, AdmiraltyIcon, AdmiraltyInput, AdmiraltyInputError, AdmiraltyLabel, AdmiraltyLink, AdmiraltyPaginator, AdmiraltyPhaseBanner, AdmiraltyProgressBar, AdmiraltyRadio, AdmiraltyRadioGroup, AdmiraltySelect, AdmiraltySideNav, AdmiraltySideNavItem, AdmiraltyTab, AdmiraltyTabGroup, AdmiraltyTable, AdmiraltyTableBody, AdmiraltyTableCell, AdmiraltyTableHeader, AdmiraltyTableHeaderCell, AdmiraltyTableRow, AdmiraltyTextarea, AdmiraltyTypeAhead, AdmiraltyTypeAheadItem], imports: [CommonModule], exports: [AdmiraltyBreadcrumb, AdmiraltyBreadcrumbs, AdmiraltyButton, AdmiraltyCard, AdmiraltyCheckbox, AdmiraltyColourBlock, AdmiraltyDialogue, AdmiraltyExpansion, AdmiraltyFileInput, AdmiraltyFilter, AdmiraltyFilterGroup, AdmiraltyFooter, AdmiraltyHeader, AdmiraltyHeaderMenuItem, AdmiraltyHeaderProfile, AdmiraltyHeaderSubMenuItem, AdmiraltyHint, AdmiraltyHr, AdmiraltyIcon, AdmiraltyInput, AdmiraltyInputError, AdmiraltyLabel, AdmiraltyLink, AdmiraltyPaginator, AdmiraltyPhaseBanner, AdmiraltyProgressBar, AdmiraltyRadio, AdmiraltyRadioGroup, AdmiraltySelect, AdmiraltySideNav, AdmiraltySideNavItem, AdmiraltyTab, AdmiraltyTabGroup, AdmiraltyTable, AdmiraltyTableBody, AdmiraltyTableCell, AdmiraltyTableHeader, AdmiraltyTableHeaderCell, AdmiraltyTableRow, AdmiraltyTextarea, AdmiraltyTypeAhead, AdmiraltyTypeAheadItem] }); })();
1476
+ (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(DesignSystemModule, { declarations: [AdmiraltyBreadcrumb, AdmiraltyBreadcrumbs, AdmiraltyButton, AdmiraltyCard, AdmiraltyCheckbox, AdmiraltyColourBlock, AdmiraltyDialogue, AdmiraltyExpansion, AdmiraltyFileInput, AdmiraltyFilter, AdmiraltyFilterGroup, AdmiraltyFooter, AdmiraltyHeader, AdmiraltyHeaderMenuItem, AdmiraltyHeaderProfile, AdmiraltyHeaderSubMenuItem, AdmiraltyHint, AdmiraltyHr, AdmiraltyIcon, AdmiraltyInput, AdmiraltyInputError, AdmiraltyLabel, AdmiraltyLink, AdmiraltyPaginator, AdmiraltyPhaseBanner, AdmiraltyProgressBar, AdmiraltyRadio, AdmiraltyRadioGroup, AdmiraltyReadMore, AdmiraltySelect, AdmiraltySideNav, AdmiraltySideNavItem, AdmiraltyTab, AdmiraltyTabGroup, AdmiraltyTable, AdmiraltyTableBody, AdmiraltyTableCell, AdmiraltyTableHeader, AdmiraltyTableHeaderCell, AdmiraltyTableRow, AdmiraltyTextarea, AdmiraltyTypeAhead, AdmiraltyTypeAheadItem], imports: [CommonModule], exports: [AdmiraltyBreadcrumb, AdmiraltyBreadcrumbs, AdmiraltyButton, AdmiraltyCard, AdmiraltyCheckbox, AdmiraltyColourBlock, AdmiraltyDialogue, AdmiraltyExpansion, AdmiraltyFileInput, AdmiraltyFilter, AdmiraltyFilterGroup, AdmiraltyFooter, AdmiraltyHeader, AdmiraltyHeaderMenuItem, AdmiraltyHeaderProfile, AdmiraltyHeaderSubMenuItem, AdmiraltyHint, AdmiraltyHr, AdmiraltyIcon, AdmiraltyInput, AdmiraltyInputError, AdmiraltyLabel, AdmiraltyLink, AdmiraltyPaginator, AdmiraltyPhaseBanner, AdmiraltyProgressBar, AdmiraltyRadio, AdmiraltyRadioGroup, AdmiraltyReadMore, AdmiraltySelect, AdmiraltySideNav, AdmiraltySideNavItem, AdmiraltyTab, AdmiraltyTabGroup, AdmiraltyTable, AdmiraltyTableBody, AdmiraltyTableCell, AdmiraltyTableHeader, AdmiraltyTableHeaderCell, AdmiraltyTableRow, AdmiraltyTextarea, AdmiraltyTypeAhead, AdmiraltyTypeAheadItem] }); })();
1444
1477
 
1445
1478
  class ValueAccessor {
1446
1479
  constructor(el) {
@@ -1568,5 +1601,5 @@ RadioValueAccessor.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: RadioVal
1568
1601
  * Generated bundle index. Do not edit.
1569
1602
  */
1570
1603
 
1571
- export { AdmiraltyBreadcrumb, AdmiraltyBreadcrumbs, AdmiraltyButton, AdmiraltyCard, AdmiraltyCheckbox, AdmiraltyColourBlock, AdmiraltyDialogue, AdmiraltyExpansion, AdmiraltyFileInput, AdmiraltyFilter, AdmiraltyFilterGroup, AdmiraltyFooter, AdmiraltyHeader, AdmiraltyHeaderMenuItem, AdmiraltyHeaderProfile, AdmiraltyHeaderSubMenuItem, AdmiraltyHint, AdmiraltyHr, AdmiraltyIcon, AdmiraltyInput, AdmiraltyInputError, AdmiraltyLabel, AdmiraltyLink, AdmiraltyPaginator, AdmiraltyPhaseBanner, AdmiraltyProgressBar, AdmiraltyRadio, AdmiraltyRadioGroup, AdmiraltySelect, AdmiraltySideNav, AdmiraltySideNavItem, AdmiraltyTab, AdmiraltyTabGroup, AdmiraltyTable, AdmiraltyTableBody, AdmiraltyTableCell, AdmiraltyTableHeader, AdmiraltyTableHeaderCell, AdmiraltyTableRow, AdmiraltyTextarea, AdmiraltyTypeAhead, AdmiraltyTypeAheadItem, DIRECTIVES, DesignSystemModule, RadioValueAccessor, TextValueAccessor };
1604
+ export { AdmiraltyBreadcrumb, AdmiraltyBreadcrumbs, AdmiraltyButton, AdmiraltyCard, AdmiraltyCheckbox, AdmiraltyColourBlock, AdmiraltyDialogue, AdmiraltyExpansion, AdmiraltyFileInput, AdmiraltyFilter, AdmiraltyFilterGroup, AdmiraltyFooter, AdmiraltyHeader, AdmiraltyHeaderMenuItem, AdmiraltyHeaderProfile, AdmiraltyHeaderSubMenuItem, AdmiraltyHint, AdmiraltyHr, AdmiraltyIcon, AdmiraltyInput, AdmiraltyInputError, AdmiraltyLabel, AdmiraltyLink, AdmiraltyPaginator, AdmiraltyPhaseBanner, AdmiraltyProgressBar, AdmiraltyRadio, AdmiraltyRadioGroup, AdmiraltyReadMore, AdmiraltySelect, AdmiraltySideNav, AdmiraltySideNavItem, AdmiraltyTab, AdmiraltyTabGroup, AdmiraltyTable, AdmiraltyTableBody, AdmiraltyTableCell, AdmiraltyTableHeader, AdmiraltyTableHeaderCell, AdmiraltyTableRow, AdmiraltyTextarea, AdmiraltyTypeAhead, AdmiraltyTypeAheadItem, DIRECTIVES, DesignSystemModule, RadioValueAccessor, TextValueAccessor };
1572
1605
  //# sourceMappingURL=ukho-admiralty-angular.mjs.map