master-control 0.3.72 → 0.3.74

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.
@@ -201,7 +201,7 @@ export class AnnuityPremiumCalculatorComponent {
201
201
  isMasterControl: false,
202
202
  controlType: 'amountTextbox',
203
203
  };
204
- minimumAnnuityPayout = {
204
+ minimumAnnuityPayoutObj = {
205
205
  controlStyle: {
206
206
  controlType: 'amountTextbox',
207
207
  borderColor: '#DADADA',
@@ -602,31 +602,29 @@ export class AnnuityPremiumCalculatorComponent {
602
602
  ngOnChanges(changes) {
603
603
  if ((changes['premiumDetails']) && !this.masterService.checkIfValueIsEmpty(changes['premiumDetails'].currentValue)) {
604
604
  if (!this.masterService.checkIfValueIsEmpty(this.premiumDetails()?.Premium)) {
605
- if (!this.masterService.checkIfValueIsEmpty(this.premiumDetails()?.Premium['textValue'])) {
606
- this.annuityPremium['textValue'] = this.premiumDetails()?.Premium['textValue'];
607
- }
605
+ // Create new object to trigger change detection
606
+ this.annuityPremium = {
607
+ textValue: this.premiumDetails()?.Premium['textValue'] || this.annuityPremium.textValue,
608
+ selectValue: this.premiumDetails()?.Premium['selectValue'] || this.annuityPremium.selectValue
609
+ };
608
610
  if (Object.hasOwn(this.premiumDetails()?.Premium, 'isDisable')) {
609
611
  this.annuityPremiumObj['isDisable'] = this.premiumDetails()?.Premium['isDisable'];
610
612
  }
611
613
  if (Object.hasOwn(this.premiumDetails()?.Premium, 'isDisableDropdown')) {
612
614
  this.annuityPremiumObj['configData']['isDisableDropdown'] = this.premiumDetails()?.Premium['isDisableDropdown'];
613
615
  }
614
- if (!this.masterService.checkIfValueIsEmpty(this.premiumDetails()?.Premium['selectValue'])) {
615
- this.annuityPremium['selectValue'] = this.premiumDetails()?.Premium['selectValue'];
616
- }
617
616
  }
618
617
  if (!this.masterService.checkIfValueIsEmpty(this.premiumDetails()?.annuity)) {
619
- if (!this.masterService.checkIfValueIsEmpty(this.premiumDetails()?.annuity['textValue'])) {
620
- this.minumumAnnuityPayout['textValue'] = this.premiumDetails()?.annuity['textValue'];
621
- }
622
- if (Object.hasOwn(this.premiumDetails()?.Premium, 'isDisable')) {
623
- this.minimumAnnuityPayout['isDisable'] = this.premiumDetails()?.annuity['isDisable'];
624
- }
625
- if (Object.hasOwn(this.premiumDetails()?.Premium, 'isDisableDropdown')) {
626
- this.minimumAnnuityPayout['configData']['isDisableDropdown'] = this.premiumDetails()?.annuity['isDisableDropdown'];
618
+ // Create new object to trigger change detection
619
+ this.minumumAnnuityPayout = {
620
+ textValue: this.premiumDetails()?.annuity['textValue'] || this.minumumAnnuityPayout.textValue,
621
+ selectValue: this.premiumDetails()?.annuity['selectValue'] || this.minumumAnnuityPayout.selectValue
622
+ };
623
+ if (Object.hasOwn(this.premiumDetails()?.annuity, 'isDisable')) {
624
+ this.minimumAnnuityPayoutObj['isDisable'] = this.premiumDetails()?.annuity['isDisable'];
627
625
  }
628
- if (!this.masterService.checkIfValueIsEmpty(this.premiumDetails()?.annuity['selectValue'])) {
629
- this.minumumAnnuityPayout['selectValue'] = this.premiumDetails()?.annuity['selectValue'];
626
+ if (Object.hasOwn(this.premiumDetails()?.annuity, 'isDisableDropdown')) {
627
+ this.minimumAnnuityPayoutObj['configData']['isDisableDropdown'] = this.premiumDetails()?.annuity['isDisableDropdown'];
630
628
  }
631
629
  }
632
630
  if (!this.masterService.checkIfValueIsEmpty(this.premiumDetails()?.calculateAnnuity)) {
@@ -678,7 +676,7 @@ export class AnnuityPremiumCalculatorComponent {
678
676
  }
679
677
  }
680
678
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AnnuityPremiumCalculatorComponent, deps: [{ token: i1.MasterControlService }], target: i0.ɵɵFactoryTarget.Component });
681
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: AnnuityPremiumCalculatorComponent, isStandalone: true, selector: "lib-annuity-premium-calculator", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, premiumDetails: { classPropertyName: "premiumDetails", publicName: "premiumDetails", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onCalcualteButtonClick: "onCalcualteButtonClick", onGenerateSummaryClick: "onGenerateSummaryClick", onAnnuityPremiumChange: "onAnnuityPremiumChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"card px-3\" style=\"padding: 16px;\">\r\n <div class=\"row\">\r\n <h4 class=\"card-main-title\"><span style=\"margin-right: 12px;\"><img src=\"https://cdn.godigit.com/retail-life/calculator.svg\" alt=\"annuity calculator\"></span>Here's your Premium to Annuity Calculator</h4>\r\n </div>\r\n <!-- <div class=\"row\"> -->\r\n <div class=\"card pb-4 px-4\" style=\"border-bottom-left-radius: 0px; border-bottom-right-radius: 0px;\">\r\n <!-- <div class=\"custom-grid-template\">\r\n\r\n </div> -->\r\n\r\n <div class=\"row mx-auto\" style=\"transform: translate(0px, -58%);\">\r\n <lib-toggle class=\"col-auto\" [field]=\"annuityPremiumToggleObj\" />\r\n </div>\r\n <!-- </div> -->\r\n <div class=\"custom-grid-template\">\r\n <div class=\"d-flex flex-column\">\r\n <lib-select-textbox [field]=\"annuityPremiumObj\" [(ngModel)]=\"annuityPremium\" (ngModelChange)=\"onAnnuityPremiumValueChange($event)\" />\r\n <div class=\"error-message\" *ngIf=\"validations.ispremiumEntry\">\r\n Enter Premium\r\n </div>\r\n </div>\r\n <div class=\"mt-3 d-flex justify-content-center align-items-center\" style=\"display: flex; align-items: flex-end; transform: translate(0px, 6px);\">\r\n <lib-icon-button [field]=\"interchangeButtonObj\" />\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <lib-select-textbox [field]=\"minimumAnnuityPayout\" [(ngModel)]=\"minumumAnnuityPayout\" />\r\n </div>\r\n </div>\r\n <!-- <div class=\"vertical-line\"></div> -->\r\n <div class=\"custom-grid-template\">\r\n <div>\r\n <lib-toggle [field]=\"enableAutoDebitObj\" />\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n\r\n <div class=\"card py-3 mb-4 border-top-0\" style=\"border-top-left-radius: 0px; border-top-right-radius: 0px;\">\r\n <div class=\"mx-4\">\r\n <lib-button [field]=\"recalculateButton\" (click)=\"calculateButtonClicked()\" />\r\n </div>\r\n </div>\r\n\r\n <div>\r\n <lib-button [field]=\"generateSummaryObj\" (click)=\"generateSummaryClicked()\" />\r\n </div>\r\n</div>\r\n", styles: [".card-main-title{font-size:16px;font-family:Mulish!important;letter-spacing:0px!important;font-weight:800;line-height:24px;padding-bottom:16px}.col-5-5{flex:0 0 auto;max-width:44.16666667%}.custom-grid-template{display:grid;grid-template-columns:4fr .5fr 4fr}.vertical-line{border-left:2px solid #ccc;height:100px;margin:0 10px}.error-message{font-size:12px;font-weight:500;color:#e00;letter-spacing:0px}\n"], dependencies: [{ kind: "component", type: ToggleComponent, selector: "lib-toggle", inputs: ["field", "reactiveFormControlobject"], outputs: ["change"] }, { kind: "component", type: SelectTextboxComponent, selector: "lib-select-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: ButtonComponent, selector: "lib-button", inputs: ["field"] }, { kind: "component", type: IconButtonComponent, selector: "lib-icon-button", inputs: ["field"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
679
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: AnnuityPremiumCalculatorComponent, isStandalone: true, selector: "lib-annuity-premium-calculator", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, premiumDetails: { classPropertyName: "premiumDetails", publicName: "premiumDetails", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onCalcualteButtonClick: "onCalcualteButtonClick", onGenerateSummaryClick: "onGenerateSummaryClick", onAnnuityPremiumChange: "onAnnuityPremiumChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"card px-3\" style=\"padding: 16px;\">\r\n <div class=\"row\">\r\n <h4 class=\"card-main-title\"><span style=\"margin-right: 12px;\"><img src=\"https://cdn.godigit.com/retail-life/calculator.svg\" alt=\"annuity calculator\"></span>Here's your Premium to Annuity Calculator</h4>\r\n </div>\r\n <!-- <div class=\"row\"> -->\r\n <div class=\"card pb-4 px-4\" style=\"border-bottom-left-radius: 0px; border-bottom-right-radius: 0px;\">\r\n <!-- <div class=\"custom-grid-template\">\r\n\r\n </div> -->\r\n\r\n <div class=\"row mx-auto\" style=\"transform: translate(0px, -58%);\">\r\n <lib-toggle class=\"col-auto\" [field]=\"annuityPremiumToggleObj\" />\r\n </div>\r\n <!-- </div> -->\r\n <div class=\"custom-grid-template\">\r\n <div class=\"d-flex flex-column\">\r\n <lib-select-textbox [field]=\"annuityPremiumObj\" [(ngModel)]=\"annuityPremium\" (ngModelChange)=\"onAnnuityPremiumValueChange($event)\" />\r\n <div class=\"error-message\" *ngIf=\"validations.ispremiumEntry\">\r\n Enter Premium\r\n </div>\r\n </div>\r\n <div class=\"mt-3 d-flex justify-content-center align-items-center\" style=\"display: flex; align-items: flex-end; transform: translate(0px, 6px);\">\r\n <lib-icon-button [field]=\"interchangeButtonObj\" />\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <lib-select-textbox [field]=\"minimumAnnuityPayoutObj\" [(ngModel)]=\"minumumAnnuityPayout\" />\r\n </div>\r\n </div>\r\n <!-- <div class=\"vertical-line\"></div> -->\r\n <div class=\"custom-grid-template\">\r\n <div>\r\n <lib-toggle [field]=\"enableAutoDebitObj\" />\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n\r\n <div class=\"card py-3 mb-4 border-top-0\" style=\"border-top-left-radius: 0px; border-top-right-radius: 0px;\">\r\n <div class=\"mx-4\">\r\n <lib-button [field]=\"recalculateButton\" (click)=\"calculateButtonClicked()\" />\r\n </div>\r\n </div>\r\n\r\n <div>\r\n <lib-button [field]=\"generateSummaryObj\" (click)=\"generateSummaryClicked()\" />\r\n </div>\r\n</div>\r\n", styles: [".card-main-title{font-size:16px;font-family:Mulish!important;letter-spacing:0px!important;font-weight:800;line-height:24px;padding-bottom:16px}.col-5-5{flex:0 0 auto;max-width:44.16666667%}.custom-grid-template{display:grid;grid-template-columns:4fr .5fr 4fr}.vertical-line{border-left:2px solid #ccc;height:100px;margin:0 10px}.error-message{font-size:12px;font-weight:500;color:#e00;letter-spacing:0px}\n"], dependencies: [{ kind: "component", type: ToggleComponent, selector: "lib-toggle", inputs: ["field", "reactiveFormControlobject"], outputs: ["change"] }, { kind: "component", type: SelectTextboxComponent, selector: "lib-select-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: ButtonComponent, selector: "lib-button", inputs: ["field"] }, { kind: "component", type: IconButtonComponent, selector: "lib-icon-button", inputs: ["field"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
682
680
  }
683
681
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AnnuityPremiumCalculatorComponent, decorators: [{
684
682
  type: Component,
@@ -689,7 +687,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
689
687
  IconButtonComponent,
690
688
  CommonModule,
691
689
  FormsModule
692
- ], template: "<div class=\"card px-3\" style=\"padding: 16px;\">\r\n <div class=\"row\">\r\n <h4 class=\"card-main-title\"><span style=\"margin-right: 12px;\"><img src=\"https://cdn.godigit.com/retail-life/calculator.svg\" alt=\"annuity calculator\"></span>Here's your Premium to Annuity Calculator</h4>\r\n </div>\r\n <!-- <div class=\"row\"> -->\r\n <div class=\"card pb-4 px-4\" style=\"border-bottom-left-radius: 0px; border-bottom-right-radius: 0px;\">\r\n <!-- <div class=\"custom-grid-template\">\r\n\r\n </div> -->\r\n\r\n <div class=\"row mx-auto\" style=\"transform: translate(0px, -58%);\">\r\n <lib-toggle class=\"col-auto\" [field]=\"annuityPremiumToggleObj\" />\r\n </div>\r\n <!-- </div> -->\r\n <div class=\"custom-grid-template\">\r\n <div class=\"d-flex flex-column\">\r\n <lib-select-textbox [field]=\"annuityPremiumObj\" [(ngModel)]=\"annuityPremium\" (ngModelChange)=\"onAnnuityPremiumValueChange($event)\" />\r\n <div class=\"error-message\" *ngIf=\"validations.ispremiumEntry\">\r\n Enter Premium\r\n </div>\r\n </div>\r\n <div class=\"mt-3 d-flex justify-content-center align-items-center\" style=\"display: flex; align-items: flex-end; transform: translate(0px, 6px);\">\r\n <lib-icon-button [field]=\"interchangeButtonObj\" />\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <lib-select-textbox [field]=\"minimumAnnuityPayout\" [(ngModel)]=\"minumumAnnuityPayout\" />\r\n </div>\r\n </div>\r\n <!-- <div class=\"vertical-line\"></div> -->\r\n <div class=\"custom-grid-template\">\r\n <div>\r\n <lib-toggle [field]=\"enableAutoDebitObj\" />\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n\r\n <div class=\"card py-3 mb-4 border-top-0\" style=\"border-top-left-radius: 0px; border-top-right-radius: 0px;\">\r\n <div class=\"mx-4\">\r\n <lib-button [field]=\"recalculateButton\" (click)=\"calculateButtonClicked()\" />\r\n </div>\r\n </div>\r\n\r\n <div>\r\n <lib-button [field]=\"generateSummaryObj\" (click)=\"generateSummaryClicked()\" />\r\n </div>\r\n</div>\r\n", styles: [".card-main-title{font-size:16px;font-family:Mulish!important;letter-spacing:0px!important;font-weight:800;line-height:24px;padding-bottom:16px}.col-5-5{flex:0 0 auto;max-width:44.16666667%}.custom-grid-template{display:grid;grid-template-columns:4fr .5fr 4fr}.vertical-line{border-left:2px solid #ccc;height:100px;margin:0 10px}.error-message{font-size:12px;font-weight:500;color:#e00;letter-spacing:0px}\n"] }]
690
+ ], template: "<div class=\"card px-3\" style=\"padding: 16px;\">\r\n <div class=\"row\">\r\n <h4 class=\"card-main-title\"><span style=\"margin-right: 12px;\"><img src=\"https://cdn.godigit.com/retail-life/calculator.svg\" alt=\"annuity calculator\"></span>Here's your Premium to Annuity Calculator</h4>\r\n </div>\r\n <!-- <div class=\"row\"> -->\r\n <div class=\"card pb-4 px-4\" style=\"border-bottom-left-radius: 0px; border-bottom-right-radius: 0px;\">\r\n <!-- <div class=\"custom-grid-template\">\r\n\r\n </div> -->\r\n\r\n <div class=\"row mx-auto\" style=\"transform: translate(0px, -58%);\">\r\n <lib-toggle class=\"col-auto\" [field]=\"annuityPremiumToggleObj\" />\r\n </div>\r\n <!-- </div> -->\r\n <div class=\"custom-grid-template\">\r\n <div class=\"d-flex flex-column\">\r\n <lib-select-textbox [field]=\"annuityPremiumObj\" [(ngModel)]=\"annuityPremium\" (ngModelChange)=\"onAnnuityPremiumValueChange($event)\" />\r\n <div class=\"error-message\" *ngIf=\"validations.ispremiumEntry\">\r\n Enter Premium\r\n </div>\r\n </div>\r\n <div class=\"mt-3 d-flex justify-content-center align-items-center\" style=\"display: flex; align-items: flex-end; transform: translate(0px, 6px);\">\r\n <lib-icon-button [field]=\"interchangeButtonObj\" />\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <lib-select-textbox [field]=\"minimumAnnuityPayoutObj\" [(ngModel)]=\"minumumAnnuityPayout\" />\r\n </div>\r\n </div>\r\n <!-- <div class=\"vertical-line\"></div> -->\r\n <div class=\"custom-grid-template\">\r\n <div>\r\n <lib-toggle [field]=\"enableAutoDebitObj\" />\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n\r\n <div class=\"card py-3 mb-4 border-top-0\" style=\"border-top-left-radius: 0px; border-top-right-radius: 0px;\">\r\n <div class=\"mx-4\">\r\n <lib-button [field]=\"recalculateButton\" (click)=\"calculateButtonClicked()\" />\r\n </div>\r\n </div>\r\n\r\n <div>\r\n <lib-button [field]=\"generateSummaryObj\" (click)=\"generateSummaryClicked()\" />\r\n </div>\r\n</div>\r\n", styles: [".card-main-title{font-size:16px;font-family:Mulish!important;letter-spacing:0px!important;font-weight:800;line-height:24px;padding-bottom:16px}.col-5-5{flex:0 0 auto;max-width:44.16666667%}.custom-grid-template{display:grid;grid-template-columns:4fr .5fr 4fr}.vertical-line{border-left:2px solid #ccc;height:100px;margin:0 10px}.error-message{font-size:12px;font-weight:500;color:#e00;letter-spacing:0px}\n"] }]
693
691
  }], ctorParameters: () => [{ type: i1.MasterControlService }], propDecorators: { onCalcualteButtonClick: [{
694
692
  type: Output
695
693
  }], onGenerateSummaryClick: [{
@@ -697,4 +695,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
697
695
  }], onAnnuityPremiumChange: [{
698
696
  type: Output
699
697
  }] } });
700
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5udWl0eS1wcmVtaXVtLWNhbGN1bGF0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFzdGVyLWNvbnRyb2wvc3JjL2xpYi9hbm51aXR5LXByZW1pdW0tY2FsY3VsYXRvci9hbm51aXR5LXByZW1pdW0tY2FsY3VsYXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL2FubnVpdHktcHJlbWl1bS1jYWxjdWxhdG9yL2FubnVpdHktcHJlbWl1bS1jYWxjdWxhdG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNwRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDM0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFpQjdDLE1BQU0sT0FBTyxpQ0FBaUM7SUFxbEJ6QjtJQXBsQm5CLEtBQUssR0FBUSxLQUFLLENBQUMsUUFBUSxFQUFPLENBQUM7SUFDbkMsY0FBYyxHQUFRLEtBQUssQ0FBTSxFQUFFLENBQUMsQ0FBQztJQUNyQyxjQUFjLEdBQVM7UUFDckIsU0FBUyxFQUFHLEVBQUU7UUFDZCxXQUFXLEVBQUUsRUFBRTtLQUNoQixDQUFDO0lBQ0Ysb0JBQW9CLEdBQVM7UUFDM0IsU0FBUyxFQUFH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d0JBQ25CLFlBQVk7d0JBQ1osV0FBVztxQkFDWjt5RkFlUyxzQkFBc0I7c0JBQS9CLE1BQU07Z0JBQ0csc0JBQXNCO3NCQUEvQixNQUFNO2dCQUNHLHNCQUFzQjtzQkFBL0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBpbnB1dCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRvZ2dsZUNvbXBvbmVudCB9IGZyb20gJy4uL3RvZ2dsZS90b2dnbGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2VsZWN0VGV4dGJveENvbXBvbmVudCB9IGZyb20gJy4uL3NlbGVjdC10ZXh0Ym94L3NlbGVjdC10ZXh0Ym94LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgSWNvbkJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uL2ljb24tYnV0dG9uL2ljb24tYnV0dG9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNYXN0ZXJDb250cm9sU2VydmljZSB9IGZyb20gJy4uL21hc3Rlci1jb250cm9sLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItYW5udWl0eS1wcmVtaXVtLWNhbGN1bGF0b3InLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgVG9nZ2xlQ29tcG9uZW50LFxyXG4gICAgU2VsZWN0VGV4dGJveENvbXBvbmVudCxcclxuICAgIEJ1dHRvbkNvbXBvbmVudCxcclxuICAgIEljb25CdXR0b25Db21wb25lbnQsXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZVxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2FubnVpdHktcHJlbWl1bS1jYWxjdWxhdG9yLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vYW5udWl0eS1wcmVtaXVtLWNhbGN1bGF0b3IuY29tcG9uZW50LmNzcycsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBbm51aXR5UHJlbWl1bUNhbGN1bGF0b3JDb21wb25lbnQge1xyXG4gIGZpZWxkOiBhbnkgPSBpbnB1dC5yZXF1aXJlZDxhbnk+KCk7XHJcbiAgcHJlbWl1bURldGFpbHM6IGFueSA9IGlucHV0PGFueT4oe30pO1xyXG4gIGFubnVpdHlQcmVtaXVtIDogYW55ID0ge1xyXG4gICAgdGV4dFZhbHVlIDogJycsXHJcbiAgICBzZWxlY3RWYWx1ZTogJydcclxuICB9O1xyXG4gIG1pbnVtdW1Bbm51aXR5UGF5b3V0IDogYW55ID0ge1xyXG4gICAgdGV4dFZhbHVlIDogJycsXHJcbiAgICBzZWxlY3RWYWx1ZTogJydcclxuICB9O1xyXG4gIEBPdXRwdXQoKSBvbkNhbGN1YWx0ZUJ1dHRvbkNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQE91dHB1dCgpIG9uR2VuZXJhdGVTdW1tYXJ5Q2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAT3V0cHV0KCkgb25Bbm51aXR5UHJlbWl1bUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIHZhbGlkYXRpb25zIDogYW55ID0ge1xyXG4gICAgaXNwcmVtaXVtRW50cnkgOiBmYWxzZVxyXG4gIH1cclxuICBhbm51aXR5UHJlbWl1bVRvZ2dsZU9iajogYW55ID0ge1xyXG4gICAgY29udHJvbFR5cGU6ICd0b2dnbGUnLFxyXG4gICAgZmllbGROYW1lOiAnYW5udWl0eVByZW1pdW1Ub2dnbGUnLFxyXG4gICAgbGFiZWw6ICdFbnRlciBBbm51aXR5JyxcclxuICAgIHBsYWNlSG9sZGVyOiBudWxsLFxyXG4gICAgbWV0YUlkOiAnTElfRFBfR0VOX0NUUkxfdG9nZ2xlX2FubnVpdHlQcmVtaXVtVG9nZ2xlX1YxJyxcclxuICAgIGlzVmlzaWJsZTogdHJ1ZSxcclxuICAgIGlzRGlzYWJsZTogZmFsc2UsXHJcbiAgICB2YWxpZGF0b3JzOiB7XHJcbiAgICAgIGlzUmVxdWlyZWQ6IGZhbHNlLFxyXG4gICAgICByZXF1aXJlZE1lc3NhZ2U6ICdUaGlzIGZpZWxkIGNhbm5vdCBiZSBlbXB0eScsXHJcbiAgICAgIG1pbkxlbmd0aDogbnVsbCxcclxuICAgICAgbWluTGVuZ3RoTWVzc2FnZTogbnVsbCxcclxuICAgICAgbWF4TGVuZ3RoOiAxNTAsXHJcbiAgICAgIG1heExlbmd0aE1lc3NhZ2U6IG51bGwsXHJcbiAgICAgIHBhdHRlcm46IG51bGwsXHJcbiAgICAgIHBhdHRlcm5NZXNzYWdlOiAnJyxcclxuICAgIH0sXHJcbiAgICBvcHRpb25zOiBudWxsLFxyXG4gICAgY3NzQ2xhc3M6XHJcbiAgICAgICcgY29sLXNtLTEyIGNvbC1tZC0xMiBjb2wtbGctMTIgY29sLXhsLTEyIG14LWF1dG8gZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyJyxcclxuICAgIHZhbHVlOiBudWxsLFxyXG4gICAgc3R5bGU6IG51bGwsXHJcbiAgICBpbWFnZVVybDogbnVsbCxcclxuICAgIGlzU2hvd0xhYmVsOiB0cnVlLFxyXG4gICAgY29udHJvbFN0eWxlOiB7XHJcbiAgICAgIGNvbnRyb2xUeXBlOiAndG9nZ2xlJyxcclxuICAgICAgYm9yZGVyQ29sb3I6ICcjREFEQURBJyxcclxuICAgICAgYm9yZGVyV2lkdGg6ICcxcHgnLFxyXG4gICAgICBib3JkZXJSYWRpdXM6ICc5OTlweCcsXHJcbiAgICAgIGZvbnRTaXplOiAnMTJweCcsXHJcbiAgICAgIGZvbnRXZWlnaHQ6ICc0MDAnLFxyXG4gICAgICBmb250RmFtaWx5OiAnTXVsaXNoJyxcclxuICAgICAgY29sb3I6ICcjNDQ0NDQ0JyxcclxuICAgICAgYmFja2dyb3VuZDogJyNGRkZGRkYnLFxyXG4gICAgICBjYXJldENvbG9yOiBudWxsLFxyXG4gICAgICBudWRnZURpc3BsYXlJbWFnZTogbnVsbCxcclxuICAgICAgZHJvcGRvd25PcHRpb25CZ0NvbG9yOiBudWxsLFxyXG4gICAgICBkcm9wZG93bk9wdGlvbkNvbG9yOiBudWxsLFxyXG4gICAgICBkcm9wZG93bk9wdGlvbkZvbnRXZWlnaHQ6IG51bGwsXHJcbiAgICAgIHdpZHRoOiAnZml0LWNvbnRlbnQnLFxyXG4gICAgICBmb2N1c0JvcmRlcldpZHRoOiAnMC4wOTRyZW0nLFxyXG4gICAgICBmb2N1c0JvcmRlckNvbG9yOiBudWxsLFxyXG4gICAgICBmb2N1c0JhY2tncm91bmQ6IG51bGwsXHJcbiAgICAgIGZvY3VzQ29sb3I6IG51bGwsXHJcbiAgICAgIGZvY3VzRHJvcGRvd25PcHRpb25CZ0NvbG9yOiBudWxsLFxyXG4gICAgICBmb2N1c0Ryb3Bkb3duT3B0aW9uQ29sb3I6IG51bGwsXHJcbiAgICAgIGZvY3VzRHJvcGRvd25PcHRpb25Gb250V2VpZ2h0OiBudWxsLFxyXG4gICAgICBmb2N1c0Ryb3Bkb3duT3B0aW9uQm9yZGVyTGVmdDogbnVsbCxcclxuICAgICAgZm9jdXNEcm9wZG93bk9wdGlvbkJvcmRlclJhZGl1czogbnVsbCxcclxuICAgICAgaG92ZXJCb3JkZXJDb2xvcjogbnVsbCxcclxuICAgICAgaG92ZXJCb3JkZXJXaWR0aDogJzAuMDk0cmVtJyxcclxuICAgICAgaG92ZXJDb2xvcjogbnVsbCxcclxuICAgICAgZGlzYWJsZUNvbG9yOiAnI0VDRUNFQycsXHJcbiAgICAgIGRpc2FibGVCYWNrZ3JvdW5kOiAnI0VDRUNFQycsXHJcbiAgICAgIGVycm9yQm9yZGVyQ29sb3I6IG51bGwsXHJcbiAgICAgIGVycm9yQm9yZGVyV2lkdGg6ICcwLjA5NHJlbScsXHJcbiAgICAgIGVycm9yQ29sb3I6IG51bGwsXHJcbiAgICAgIGNyZWF0ZWREYXRlOiBudWxsLFxyXG4gICAgICBwYWRkaW5nOiBudWxsLFxyXG4gICAgICBtYXJnaW46IG51bGwsXHJcbiAgICAgIGlzTWFzdGVyQ3NzOiBudWxsLFxyXG4gICAgICBjb250cm9sTWV0YUlkOiAnTElfRFBfR0VOX0NUUkxfdG9nZ2xlX2FubnVpdHlQcmVtaXVtVG9nZ2xlX1YxJyxcclxuICAgICAgYm9yZGVyU3R5bGU6IG51bGwsXHJcbiAgICAgIGhlaWdodDogbnVsbCxcclxuICAgICAgbWluSGVpZ2h0OiBudWxsLFxyXG4gICAgICBtYXhIZWlnaHQ6IG51bGwsXHJcbiAgICAgIG1pbldpZHRoOiBudWxsLFxyXG4gICAgICBtYXhXaWR0aDogbnVsbCxcclxuICAgICAgY3NzQ2xhc3M6IG51bGwsXHJcbiAgICB9LFxyXG4gICAgY29sdW1uSW5kZXg6IDAsXHJcbiAgICBjb25maWdEYXRhOiB7XHJcbiAgICAgIGxlZnRMYWJlbDogJ0VudGVyIFByZW1pdW0nLFxyXG4gICAgfSxcclxuICAgIGNvbnRyb2xTdHlsZXM6IG51bGwsXHJcbiAgfTtcclxuXHJcbiAgYW5udWl0eVByZW1pdW1PYmo6IGFueSA9IHtcclxuICAgIGNvbnRyb2xTdHlsZToge1xyXG4gICAgICBjb250cm9sVHlwZTogJ2Ftb3VudFRleHRib3gnLFxyXG4gICAgICBib3JkZXJDb2xvcjogJyNEQURBREEnLFxyXG4gICAgICBib3JkZXJXaWR0aDogJzAuMDk0cmVtJyxcclxuICAgICAgYm9yZGVyUmFkaXVzOiBudWxsLFxyXG4gICAgICBmb250U2l6ZTogJzE2cHgnLFxyXG4gICAgICBmb250V2VpZ2h0OiAnNDAwJyxcclxuICAgICAgZm9udEZhbWlseTogJ011bGlzaCcsXHJcbiAgICAgIGNvbG9yOiAnIzQ0NDQ0NCcsXHJcbiAgICAgIGJhY2tncm91bmQ6ICcjRkZGRkZGJyxcclxuICAgICAgY2FyZXRDb2xvcjogJyNmZmJiMDAnLFxyXG4gICAgICBudWRnZURpc3BsYXlJbWFnZTogbnVsbCxcclxuICAgICAgZHJvcGRvd25PcHRpb25CZ0NvbG9yOiBudWxsLFxyXG4gICAgICBkcm9wZG93bk9wdGlvbkNvbG9yOiBudWxsLFxyXG4gICAgICBkcm9wZG93bk9wdGlvbkZvbnRXZWlnaHQ6IG51bGwsXHJcbiAgICAgIHdpZHRoOiBudWxsLFxyXG4gICAgICBmb2N1c0JvcmRlcldpZHRoOiAnMC4wOTRyZW0nLFxyXG4gICAgICBmb2N1c0JvcmRlckNvbG9yOiAnI2ZmYmIwMCcsXHJcbiAgICAgIGZvY3VzQmFja2dyb3VuZDogbnVsbCxcclxuICAgICAgZm9jdXNDb2xvcjogJyM0NDQ0NDQnLFxyXG4gICAgICBmb2N1c0Ryb3Bkb3duT3B0aW9uQmdDb2xvcjogbnVsbCxcclxuICAgICAgZm9jdXNEcm9wZG93bk9wdGlvbkNvbG9yOiBudWxsLFxyXG4gICAgICBmb2N1c0Ryb3Bkb3duT3B0aW9uRm9udFdlaWdodDogbnVsbCxcclxuICAgICAgZm9jdXNEcm9wZG93bk9wdGlvbkJvcmRlckxlZnQ6IG51bGwsXHJcbiAgICAgIGZvY3VzRHJvcGRvd25PcHRpb25Cb3JkZXJSYWRpdXM6IG51bGwsXHJcbiAgICAgIGhvdmVyQm9yZGVyQ29sb3I6ICcjRkZCQjAwJyxcclxuICAgICAgaG92ZXJCb3JkZXJXaWR0aDogJzAuMDk0cmVtJyxcclxuICAgICAgaG92ZXJDb2xvcjogJyM0NDQ0NDQnLFxyXG4gICAgICBkaXNhYmxlQ29sb3I6ICcjRUNFQ0VDJyxcclxuICAgICAgZGlzYWJsZUJhY2tncm91bmQ6ICcjRUNFQ0VDJyxcclxuICAgICAgZXJyb3JCb3JkZXJDb2xvcjogJyNFRTAwMDAnLFxyXG4gICAgICBlcnJvckJvcmRlcldpZHRoOiAnMC4wOTRyZW0nLFxyXG4gICAgICBlcnJvckNvbG9yOiAnIzQ0NDQ0NCcsXHJcbiAgICAgIGNyZWF0ZWREYXRlOiBudWxsLFxyXG4gICAgICBwYWRkaW5nOiBudWxsLFxyXG4gICAgICBtYXJnaW46IG51bGwsXHJcbiAgICAgIGlzTWFzdGVyQ3NzOiBudWxsLFxyXG4gICAgICBjb250cm9sTWV0YUlkOiAnQUxMX0RQX0RQX0NUUkxfYW1vdW50VGV4dGJveF9hbm51aXR5UHJlbWl1bV9WMScsXHJcbiAgICAgIGJvcmRlclN0eWxlOiBudWxsLFxyXG4gICAgICBoZWlnaHQ6IG51bGwsXHJcbiAgICAgIG1pbkhlaWdodDogbnVsbCxcclxuICAgICAgbWF4SGVpZ2h0OiBudWxsLFxyXG4gICAgICBtaW5XaWR0aDogbnVsbCxcclxuICAgICAgbWF4V2lkdGg6IG51bGwsXHJcbiAgICAgIGNzc0NsYXNzOiBudWxsLFxyXG4gICAgfSxcclxuICAgIGZpZWxkTmFtZTogJ2FubnVpdHlQcmVtaXVtJyxcclxuICAgIGxhYmVsOiAnUHJlbWl1bScsXHJcbiAgICBwbGFjZUhvbGRlcjogJ0VudGVyIFByZW1pdW0nLFxyXG4gICAgbWV0YUlkOiAnQUxMX0RQX0RQX0NUUkxfYW1vdW50VGV4dGJveF9hbm51aXR5UHJlbWl1bV9WMScsXHJcbiAgICBpc1Zpc2libGU6IHRydWUsXHJcbiAgICBpc0Rpc2FibGU6IGZhbHNlLFxyXG4gICAgZGVmYXVsdFZhbHVlOiBudWxsLFxyXG4gICAgdmFsaWRhdG9yczoge1xyXG4gICAgICBpc1JlcXVpcmVkOiBmYWxzZSxcclxuICAgICAgcmVxdWlyZWRNZXNzYWdlOiAnRW50ZXIgUHJlbWl1bScsXHJcbiAgICAgIG1pbkxlbmd0aDogNCxcclxuICAgICAgbWluTGVuZ3RoTWVzc2FnZTogbnVsbCxcclxuICAgICAgbWF4TGVuZ3RoOiAxMCxcclxuICAgICAgbWF4TGVuZ3RoTWVzc2FnZTogbnVsbCxcclxuICAgICAgcGF0dGVybjogbnVsbCxcclxuICAgICAgcGF0dGVybk1lc3NhZ2U6IG51bGwsXHJcbiAgICB9LFxyXG4gICAgb3B0aW9uczogW1xyXG4gICAgICB7XHJcbiAgICAgICAgdmFsdWU6ICdNb250aGx5JyxcclxuICAgICAgICBsYWJlbDogJ01vbnRobHknLFxyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgdmFsdWU6ICdPbmUgVGltZScsXHJcbiAgICAgICAgbGFiZWw6ICdPbmUgVGltZScsXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICB2YWx1ZTogJ1F1YXJ0ZXJseScsXHJcbiAgICAgICAgbGFiZWw6ICdRdWFydGVybHknLFxyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgdmFsdWU6ICdIYWxmIFllYXJseScsXHJcbiAgICAgICAgbGFiZWw6ICdIYWxmIFllYXJseScsXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICB2YWx1ZTogJ1llYXJseScsXHJcbiAgICAgICAgbGFiZWw6ICdZZWFybHknLFxyXG4gICAgICB9LFxyXG4gICAgXSxcclxuICAgIGNzc0NsYXNzOiAnIGNvbC1zbS0xMiBjb2wtbWQtMyBjb2wtbGctMyBjb2wteGwtMyBweS0wIHBsLTMgcHItMCBtdC01IHB0LTInLFxyXG4gICAgdmFsdWU6IG51bGwsXHJcbiAgICBzdHlsZTogbnVsbCxcclxuICAgIGltYWdlVXJsOiBudWxsLFxyXG4gICAgY29uZmlnRGF0YToge1xyXG4gICAgICBpc0NvbW1hQWxsb3dlZDogdHJ1ZSxcclxuICAgIH0sXHJcbiAgICBtZXRhRGF0YU9iajogbnVsbCxcclxuICAgIGlzU2hvd0xhYmVsOiB0cnVlLFxyXG4gICAgaXNNYXN0ZXJDb250cm9sOiBmYWxzZSxcclxuICAgIGNvbnRyb2xUeXBlOiAnYW1vdW50VGV4dGJveCcsXHJcbiAgfTtcclxuXHJcbiAgbWluaW11bUFubnVpdHlQYXlvdXQ6IGFueSA9IHtcclxuICAgIGNvbnRyb2xTdHlsZToge1xyXG4gICAgICBjb250cm9sVHlwZTogJ2Ftb3VudFRleHRib3gnLFxyXG4gICAgICBib3JkZXJDb2xvcjogJyNEQURBREEnLFxyXG4gICAgICBib3JkZXJXaWR0aDogJzAuMDk0cmVtJyxcclxuICAgICAgYm9yZGVyUmFkaXVzOiBudWxsLFxyXG4gICAgICBmb250U2l6ZTogJzE2cHgnLFxyXG4gICAgICBmb250V2VpZ2h0OiAnNDAwJyxcclxuICAgICAgZm9udEZhbWlseTogJ011bGlzaCcsXHJcbiAgICAgIGNvbG9yOiAnIzQ0NDQ0NCcsXHJcbiAgICAgIGJhY2tncm91bmQ6ICcjRkZGRkZGJyxcclxuICAgICAgY2FyZXRDb2xvcjogJyNmZmJiMDAnLFxyXG4gICAgICBudWRnZURpc3BsYXlJbWFnZTogbnVsbCxcclxuICAgICAgZHJvcGRvd25PcHRpb25CZ0NvbG9yOiBudWxsLFxyXG4gICAgICBkcm9wZG93bk9wdGlvbkNvbG9yOiBudWxsLFxyXG4gICAgICBkcm9wZG93bk9wdGlvbkZvbnRXZWlnaHQ6IG51bGwsXHJcbiAgICAgIHdpZHRoOiBudWxsLFxyXG4gICAgICBmb2N1c0JvcmRlcldpZHRoOiAnMC4wOTRyZW0nLFxyXG4gICAgICBmb2N1c0JvcmRlckNvbG9yOiAnI2ZmYmIwMCcsXHJcbiAgICAgIGZvY3VzQmFja2dyb3VuZDogbnVsbCxcclxuICAgICAgZm9jdXNDb2xvcjogJyM0NDQ0NDQnLFxyXG4gICAgICBmb2N1c0Ryb3Bkb3duT3B0aW9uQmdDb2xvcjogbnVsbCxcclxuICAgICAgZm9jdXNEcm9wZG93bk9wdGlvbkNvbG9yOiBudWxsLFxyXG4gICAgICBmb2N1c0Ryb3Bkb3duT3B0aW9uRm9udFdlaWdodDogbnVsbCxcclxuICAgICAgZm9jdXNEcm9wZG93bk9wdGlvbkJvcmRlckxlZnQ6IG51bGwsXHJcbiAgICAgIGZvY3VzRHJvcGRvd25PcHRpb25Cb3JkZXJSYWRpdXM6IG51bGwsXHJcbiAgICAgIGhvdmVyQm9yZGVyQ29sb3I6ICcjRkZCQjAwJyxcclxuICAgICAgaG92ZXJCb3JkZXJXaWR0aDogJzAuMDk0cmVtJyxcclxuICAgICAgaG92ZXJDb2xvcjogJyM0NDQ0NDQnLFxyXG4gICAgICBkaXNhYmxlQ29sb3I6ICcjOTk5OTk5JyxcclxuICAgICAgZGlzYWJsZUJhY2tncm91bmQ6ICcjRUNFQ0VDJyxcclxuICAgICAgZXJyb3JCb3JkZXJDb2xvcjogJyNFRTAwMDAnLFxyXG4gICAgICBlcnJvckJvcmRlcldpZHRoOiAnMC4wOTRyZW0nLFxyXG4gICAgICBlcnJvckNvbG9yOiAnIzQ0NDQ0NCcsXHJcbiAgICAgIGNyZWF0ZWREYXRlOiBudWxsLFxyXG4gICAgICBwYWRkaW5nOiBudWxsLFxyXG4gICAgICBtYXJnaW46IG51bGwsXHJcbiAgICAgIGlzTWFzdGVyQ3NzOiBudWxsLFxyXG4gICAgICBjb250cm9sTWV0YUlkOlxyXG4gICAgICAgICdBTExfRFBfRFBfQ1RSTF9hbW91bnRUZXh0Ym94X21pbmltdW1HdWFyYW50ZWVkQW5udWl0eVBheW91dF9WMScsXHJcbiAgICAgIGJvcmRlclN0eWxlOiBudWxsLFxyXG4gICAgICBoZWlnaHQ6IG51bGwsXHJcbiAgICAgIG1pbkhlaWdodDogbnVsbCxcclxuICAgICAgbWF4SGVpZ2h0OiBudWxsLFxyXG4gICAgICBtaW5XaWR0aDogbnVsbCxcclxuICAgICAgbWF4V2lkdGg6IG51bGwsXHJcbiAgICAgIGNzc0NsYXNzOiBudWxsLFxyXG4gICAgfSxcclxuICAgIGZpZWxkTmFtZTogJ21pbmltdW1HdWFyYW50ZWVkQW5udWl0eVBheW91dCcsXHJcbiAgICBsYWJlbDogJ01pbmltdW0gR3VhcmFudGVlZCBBbm51aXR5IFBheW91dCcsXHJcbiAgICBwbGFjZUhvbGRlcjogJ0VudGVyIEFubnVpdHkgUGF5b3V0JyxcclxuICAgIG1ldGFJZDogJ0FMTF9EUF9EUF9DVFJMX2Ftb3VudFRleHRib3hfbWluaW11bUd1YXJhbnRlZWRBbm51aXR5UGF5b3V0X1YxJyxcclxuICAgIGlzVmlzaWJsZTogdHJ1ZSxcclxuICAgIGlzRGlzYWJsZTogdHJ1ZSxcclxuICAgIGRlZmF1bHRWYWx1ZTogbnVsbCxcclxuICAgIHZhbGlkYXRvcnM6IHtcclxuICAgICAgaXNSZXF1aXJlZDogZmFsc2UsXHJcbiAgICAgIHJlcXVpcmVkTWVzc2FnZTogJ0VudGVyIEFubnVpdHkgUGF5b3V0JyxcclxuICAgICAgbWluTGVuZ3RoOiA0LFxyXG4gICAgICBtaW5MZW5ndGhNZXNzYWdlOiBudWxsLFxyXG4gICAgICBtYXhMZW5ndGg6IDEwLFxyXG4gICAgICBtYXhMZW5ndGhNZXNzYWdlOiBudWxsLFxyXG4gICAgICBwYXR0ZXJuOiBudWxsLFxyXG4gICAgICBwYXR0ZXJuTWVzc2FnZTogbnVsbCxcclxuICAgIH0sXHJcbiAgICBvcHRpb25zOiBbXHJcbiAgICAgIHtcclxuICAgICAgICB2YWx1ZTogJ01vbnRobHknLFxyXG4gICAgICAgIGxhYmVsOiAnTW9udGhseScsXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICB2YWx1ZTogJ09uZSBUaW1lJyxcclxuICAgICAgICBsYWJlbDogJ09uZSBUaW1lJyxcclxuICAgICAgfSxcclxuICAgICAge1xyXG4gICAgICAgIHZhbHVlOiAnUXVhcnRlcmx5JyxcclxuICAgICAgICBsYWJlbDogJ1F1YXJ0ZXJseScsXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICB2YWx1ZTogJ0hhbGYgWWVhcmx5JyxcclxuICAgICAgICBsYWJlbDogJ0hhbGYgWWVhcmx5JyxcclxuICAgICAgfSxcclxuICAgICAge1xyXG4gICAgICAgIHZhbHVlOiAnWWVhcmx5JyxcclxuICAgICAgICBsYWJlbDogJ1llYXJseScsXHJcbiAgICAgIH0sXHJcbiAgICBdLFxyXG4gICAgY3NzQ2xhc3M6XHJcbiAgICAgICcgY29sLXNtLTEyIGNvbC1tZC0zIGNvbC1sZy0zIGNvbC14bC0zIHB5LTAgcGwtMyBtdC0xIHByLTAgbWluaW11bUd1YXJhbnRlZWRBbm51aXR5UGF5b3V0JyxcclxuICAgIHZhbHVlOiBudWxsLFxyXG4gICAgc3R5bGU6IG51bGwsXHJcbiAgICBpbWFnZVVybDogbnVsbCxcclxuICAgIGNvbmZpZ0RhdGE6IHtcclxuICAgICAgaXNDb21tYUFsbG93ZWQ6IHRydWUsXHJcbiAgICB9LFxyXG4gICAgbWV0YURhdGFPYmo6IG51bGwsXHJcbiAgICBpc1Nob3dMYWJlbDogdHJ1ZSxcclxuICAgIGlzTWFzdGVyQ29udHJvbDogZmFsc2UsXHJcbiAgICBjb250cm9sVHlwZTogJ2Ftb3VudFRleHRib3gnLFxyXG4gIH07XHJcblxyXG4gIGVuYWJsZUF1dG9EZWJpdE9iajogYW55ID0ge1xyXG4gICAgY29udHJvbFR5cGU6ICd0b2dnbGUnLFxyXG4gICAgZmllbGROYW1lOiAnYXV0b0RlYml0JyxcclxuICAgIGxhYmVsOiAnRW5hYmxlIEF1dG8gUGF5IHRvIGdldCBoaWdoZXIgYW5udWl0eSByYXRlJyxcclxuICAgIHBsYWNlSG9sZGVyOiAnJyxcclxuICAgIG1ldGFJZDogJ0FMTF9DT01fR0VOX0NUUkxfdG9nZ2xlX2F1dG9EZWJpdF9WMScsXHJcbiAgICBpc1Zpc2libGU6IHRydWUsXHJcbiAgICBpc0Rpc2FibGU6IGZhbHNlLFxyXG4gICAgdmFsaWRhdG9yczoge1xyXG4gICAgICBpc1JlcXVpcmVkOiBmYWxzZSxcclxuICAgICAgcmVxdWlyZWRNZXNzYWdlOiAnVGhpcyBmaWVsZCBjYW5ub3QgYmUgZW1wdHknLFxyXG4gICAgICBtaW5MZW5ndGg6IG51bGwsXHJcbiAgICAgIG1pbkxlbmd0aE1lc3NhZ2U6IG51bGwsXHJcbiAgICAgIG1heExlbmd0aDogbnVsbCxcclxuICAgICAgbWF4TGVuZ3RoTWVzc2FnZTogbnVsbCxcclxuICAgICAgcGF0dGVybjogbnVsbCxcclxuICAgICAgcGF0dGVybk1lc3NhZ2U6ICcnLFxyXG4gICAgfSxcclxuICAgIG9wdGlvbnM6IG51bGwsXHJcbiAgICBjc3NDbGFzczogJ2NvbC1zbS0xMiBjb2wtbWQtNSBjb2wtbGctNSBjb2wteGwtNSBtdC00IGF1dG9QYXknLFxyXG4gICAgdmFsdWU6IGZhbHNlLFxyXG4gICAgc3R5bGU6IG51bGwsXHJcbiAgICBpbWFnZVVybDogbnVsbCxcclxuICAgIGlzU2hvd0xhYmVsOiB0cnVlLFxyXG4gICAgY29udHJvbFN0eWxlOiB7XHJcbiAgICAgIGNvbnRyb2xUeXBlOiAndG9nZ2xlJyxcclxuICAgICAgYm9yZGVyQ29sb3I6IG51bGwsXHJcbiAgICAgIGJvcmRlcldpZHRoOiAnMC4wOTRyZW0nLFxyXG4gICAgICBib3JkZXJSYWRpdXM6IG51bGwsXHJcbiAgICAgIGZvbnRTaXplOiAnMTJweCcsXHJcbiAgICAgIGZvbnRXZWlnaHQ6ICc0MDAnLFxyXG4gICAgICBmb250RmFtaWx5OiAnTXVsaXNoJyxcclxuICAgICAgY29sb3I6ICcjNDQ0NDQ0JyxcclxuICAgICAgYmFja2dyb3VuZDogJyNFNkY3RjMnLFxyXG4gICAgICBjYXJldENvbG9yOiBudWxsLFxyXG4gICAgICBudWRnZURpc3BsYXlJbWFnZTogbnVsbCxcclxuICAgICAgZHJvcGRvd25PcHRpb25CZ0NvbG9yOiBudWxsLFxyXG4gICAgICBkcm9wZG93bk9wdGlvbkNvbG9yOiBudWxsLFxyXG4gICAgICBkcm9wZG93bk9wdGlvbkZvbnRXZWlnaHQ6IG51bGwsXHJcbiAgICAgIHdpZHRoOiBudWxsLFxyXG4gICAgICBmb2N1c0JvcmRlcldpZHRoOiAnMC4wOTRyZW0nLFxyXG4gICAgICBmb2N1c0JvcmRlckNvbG9yOiBudWxsLFxyXG4gICAgICBmb2N1c0JhY2tncm91bmQ6IG51bGwsXHJcbiAgICAgIGZvY3VzQ29sb3I6IG51bGwsXHJcbiAgICAgIGZvY3VzRHJvcGRvd25PcHRpb25CZ0NvbG9yOiBudWxsLFxyXG4gICAgICBmb2N1c0Ryb3Bkb3duT3B0aW9uQ29sb3I6IG51bGwsXHJcbiAgICAgIGZvY3VzRHJvcGRvd25PcHRpb25Gb250V2VpZ2h0OiBudWxsLFxyXG4gICAgICBmb2N1c0Ryb3Bkb3duT3B0aW9uQm9yZGVyTGVmdDogbnVsbCxcclxuICAgICAgZm9jdXNEcm9wZG93bk9wdGlvbkJvcmRlclJhZGl1czogbnVsbCxcclxuICAgICAgaG92ZXJCb3JkZXJDb2xvcjogbnVsbCxcclxuICAgICAgaG92ZXJCb3JkZXJXaWR0aDogJzAuMDk0cmVtJyxcclxuICAgICAgaG92ZXJDb2xvcjogbnVsbCxcclxuICAgICAgZGlzYWJsZUNvbG9yOiAnI0VDRUNFQycsXHJcbiAgICAgIGRpc2FibGVCYWNrZ3JvdW5kOiAnI0VDRUNFQycsXHJcbiAgICAgIGVycm9yQm9yZGVyQ29sb3I6IG51bGwsXHJcbiAgICAgIGVycm9yQm9yZGVyV2lkdGg6ICcwLjA5NHJlbScsXHJcbiAgICAgIGVycm9yQ29sb3I6IG51bGwsXHJcbiAgICAgIGNyZWF0ZWREYXRlOiBudWxsLFxyXG4gICAgICBwYWRkaW5nOiBudWxsLFxyXG4gICAgICBtYXJnaW46IG51bGwsXHJcbiAgICAgIGlzTWFzdGVyQ3NzOiBudWxsLFxyXG4gICAgICBjb250cm9sTWV0YUlkOiAnQUxMX0NPTV9HRU5fQ1RSTF90b2dnbGVfbWFpbGluZ0FkZHJlc3NUb2dnbGVfVjEnLFxyXG4gICAgICBib3JkZXJTdHlsZTogbnVsbCxcclxuICAgICAgaGVpZ2h0OiBudWxsLFxyXG4gICAgICBtaW5IZWlnaHQ6IG51bGwsXHJcbiAgICAgIG1heEhlaWdodDogbnVsbCxcclxuICAgICAgbWluV2lkdGg6IG51bGwsXHJcbiAgICAgIG1heFdpZHRoOiBudWxsLFxyXG4gICAgICBjc3NDbGFzczogbnVsbCxcclxuICAgIH0sXHJcbiAgICBjb2x1bW5JbmRleDogMCxcclxuICAgIGNvbmZpZ0RhdGE6IHt9LFxyXG4gICAgY29udHJvbFN0eWxlczogbnVsbCxcclxuICB9O1xyXG5cclxuICByZWNhbGN1bGF0ZUJ1dHRvbjogYW55ID0ge1xyXG4gICAgY29udHJvbFR5cGU6ICdidXR0b24nLFxyXG4gICAgZmllbGROYW1lOiAnY2FsY3VsYXRlQW5udWl0eVBheW91dCcsXHJcbiAgICBsYWJlbDogJ0NhbGN1bGF0ZSBBbm51aXR5IFBheW91dCcsXHJcbiAgICBwbGFjZUhvbGRlcjogbnVsbCxcclxuICAgIG1ldGFJZDogJ0xJX0RQX0dFTl9DVFJMX2J1dHRvbl9jYWxjdWxhdGVBbm51aXR5UGF5b3V0X1YxJyxcclxuICAgIGlzVmlzaWJsZTogdHJ1ZSxcclxuICAgIGlzRGlzYWJsZTogZmFsc2UsXHJcbiAgICB2YWxpZGF0b3JzOiB7XHJcbiAgICAgIGlzUmVxdWlyZWQ6IGZhbHNlLFxyXG4gICAgICByZXF1aXJlZE1lc3NhZ2U6ICdUaGlzIGZpZWxkIGNhbm5vdCBiZSBlbXB0eScsXHJcbiAgICAgIG1pbkxlbmd0aDogbnVsbCxcclxuICAgICAgbWluTGVuZ3RoTWVzc2FnZTogbnVsbCxcclxuICAgICAgbWF4TGVuZ3RoOiBudWxsLFxyXG4gICAgICBtYXhMZW5ndGhNZXNzYWdlOiBudWxsLFxyXG4gICAgICBwYXR0ZXJuOiBudWxsLFxyXG4gICAgICBwYXR0ZXJuTWVzc2FnZTogJycsXHJcbiAgICB9LFxyXG4gICAgb3B0aW9uczogbnVsbCxcclxuICAgIGNzc0NsYXNzOiAnIGNvbC1zbS0xMiBjb2wtbWQtMTIgY29sLWxnLTEyIGNvbC14bC0xMiBtdC0zJyxcclxuICAgIHZhbHVlOiBudWxsLFxyXG4gICAgc3R5bGU6IG51bGwsXHJcbiAgICBpbWFnZVVybDogbnVsbCxcclxuICAgIGlzU2hvd0xhYmVsOiB0cnVlLFxyXG4gICAgY29udHJvbFN0eWxlOiB7XHJcbiAgICAgIGNvbnRyb2xUeXBlOiBudWxsLFxyXG4gICAgICBib3JkZXJDb2xvcjogbnVsbCxcclxuICAgICAgYm9yZGVyV2lkdGg6IG51bGwsXHJcbiAgICAgIGJvcmRlclJhZGl1czogJzRweCcsXHJcbiAgICAgIGZvbnRTaXplOiAnMTJweCcsXHJcbiAgICAgIGZvbnRXZWlnaHQ6IG51bGwsXHJcbiAgICAgIGZvbnRGYW1pbHk6IG51bGwsXHJcbiAgICAgIGNvbG9yOiBudWxsLFxyXG4gICAgICBiYWNrZ3JvdW5kOiAnI0ZGQkIwMCcsXHJcbiAgICAgIGNhcmV0Q29sb3I6IG51bGwsXHJcbiAgICAgIG51ZGdlRGlzcGxheUltYWdlOiBudWxsLFxyXG4gICAgICBkcm9wZG93bk9wdGlvbkJnQ29sb3I6IG51bGwsXHJcbiAgICAgIGRyb3Bkb3duT3B0aW9uQ29sb3I6IG51bGwsXHJcbiAgICAgIGRyb3Bkb3duT3B0aW9uRm9udFdlaWdodDogbnVsbCxcclxuICAgICAgd2lkdGg6ICcxMDAlJyxcclxuICAgICAgZm9jdXNCb3JkZXJXaWR0aDogbnVsbCxcclxuICAgICAgZm9jdXNCb3JkZXJDb2xvcjogbnVsbCxcclxuICAgICAgZm9jdXNCYWNrZ3JvdW5kOiBudWxsLFxyXG4gICAgICBmb2N1c0NvbG9yOiBudWxsLFxyXG4gICAgICBmb2N1c0Ryb3Bkb3duT3B0aW9uQmdDb2xvcjogbnVsbCxcclxuICAgICAgZm9jdXNEcm9wZG93bk9wdGlvbkNvbG9yOiBudWxsLFxyXG4gICAgICBmb2N1c0Ryb3Bkb3duT3B0aW9uRm9udFdlaWdodDogbnVsbCxcclxuICAgICAgZm9jdXNEcm9wZG93bk9wdGlvbkJvcmRlckxlZnQ6IG51bGwsXHJcbiAgICAgIGZvY3VzRHJvcGRvd25PcHRpb25Cb3JkZXJSYWRpdXM6IG51bGwsXHJcbiAgICAgIGhvdmVyQm9yZGVyQ29sb3I6IG51bGwsXHJcbiAgICAgIGhvdmVyQm9yZGVyV2lkdGg6IG51bGwsXHJcbiAgICAgIGhvdmVyQ29sb3I6IG51bGwsXHJcbiAgICAgIGRpc2FibGVDb2xvcjogbnVsbCxcclxuICAgICAgZGlzYWJsZUJhY2tncm91bmQ6IG51bGwsXHJcbiAgICAgIGVycm9yQm9yZGVyQ29sb3I6IG51bGwsXHJcbiAgICAgIGVycm9yQm9yZGVyV2lkdGg6IG51bGwsXHJcbiAgICAgIGVycm9yQ29sb3I6IG51bGwsXHJcbiAgICAgIGNyZWF0ZWREYXRlOiBudWxsLFxyXG4gICAgICBwYWRkaW5nOiBudWxsLFxyXG4gICAgICBtYXJnaW46IG51bGwsXHJcbiAgICAgIGlzTWFzdGVyQ3NzOiBudWxsLFxyXG4gICAgICBjb250cm9sTWV0YUlkOiAnTElfRFBfR0VOX0NUUkxfYnV0dG9uX2NhbGN1bGF0ZUFubnVpdHlQYXlvdXRfVjEnLFxyXG4gICAgICBib3JkZXJTdHlsZTogbnVsbCxcclxuICAgICAgaGVpZ2h0OiBudWxsLFxyXG4gICAgICBtaW5IZWlnaHQ6IG51bGwsXHJcbiAgICAgIG1heEhlaWdodDogbnVsbCxcclxuICAgICAgbWluV2lkdGg6IG51bGwsXHJcbiAgICAgIG1heFdpZHRoOiBudWxsLFxyXG4gICAgICBjc3NDbGFzczogbnVsbCxcclxuICAgIH0sXHJcbiAgICBjb2x1bW5JbmRleDogMCxcclxuICAgIGNvbmZpZ0RhdGE6IHt9LFxyXG4gICAgY29udHJvbFN0eWxlczogbnVsbCxcclxuICB9O1xyXG5cclxuICBpbnRlcmNoYW5nZUJ1dHRvbk9iajogYW55ID0ge1xyXG4gICAgY29udHJvbFN0eWxlOiB7XHJcbiAgICAgIGNvbnRyb2xUeXBlOiBudWxsLFxyXG4gICAgICBib3JkZXJDb2xvcjogJyNEREREREQnLFxyXG4gICAgICBib3JkZXJXaWR0aDogJzBweCcsXHJcbiAgICAgIGJvcmRlclJhZGl1czogJzUwJScsXHJcbiAgICAgIGZvbnRTaXplOiBudWxsLFxyXG4gICAgICBmb250V2VpZ2h0OiBudWxsLFxyXG4gICAgICBmb250RmFtaWx5OiBudWxsLFxyXG4gICAgICBjb2xvcjogbnVsbCxcclxuICAgICAgYmFja2dyb3VuZDogbnVsbCxcclxuICAgICAgY2FyZXRDb2xvcjogbnVsbCxcclxuICAgICAgbnVkZ2VEaXNwbGF5SW1hZ2U6IG51bGwsXHJcbiAgICAgIGRyb3Bkb3duT3B0aW9uQmdDb2xvcjogbnVsbCxcclxuICAgICAgZHJvcGRvd25PcHRpb25Db2xvcjogbnVsbCxcclxuICAgICAgZHJvcGRvd25PcHRpb25Gb250V2VpZ2h0OiBudWxsLFxyXG4gICAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgICBmb2N1c0JvcmRlcldpZHRoOiBudWxsLFxyXG4gICAgICBmb2N1c0JvcmRlckNvbG9yOiBudWxsLFxyXG4gICAgICBmb2N1c0JhY2tncm91bmQ6IG51bGwsXHJcbiAgICAgIGZvY3VzQ29sb3I6IG51bGwsXHJcbiAgICAgIGZvY3VzRHJvcGRvd25PcHRpb25CZ0NvbG9yOiBudWxsLFxyXG4gICAgICBmb2N1c0Ryb3Bkb3duT3B0aW9uQ29sb3I6IG51bGwsXHJcbiAgICAgIGZvY3VzRHJvcGRvd25PcHRpb25Gb250V2VpZ2h0OiBudWxsLFxyXG4gICAgICBmb2N1c0Ryb3Bkb3duT3B0aW9uQm9yZGVyTGVmdDogbnVsbCxcclxuICAgICAgZm9jdXNEcm9wZG93bk9wdGlvbkJvcmRlclJhZGl1czogbnVsbCxcclxuICAgICAgaG92ZXJCb3JkZXJDb2xvcjogbnVsbCxcclxuICAgICAgaG92ZXJCb3JkZXJXaWR0aDogbnVsbCxcclxuICAgICAgaG92ZXJDb2xvcjogbnVsbCxcclxuICAgICAgZGlzYWJsZUNvbG9yOiBudWxsLFxyXG4gICAgICBkaXNhYmxlQmFja2dyb3VuZDogbnVsbCxcclxuICAgICAgZXJyb3JCb3JkZXJDb2xvcjogbnVsbCxcclxuICAgICAgZXJyb3JCb3JkZXJXaWR0aDogbnVsbCxcclxuICAgICAgZXJyb3JDb2xvcjogbnVsbCxcclxuICAgICAgY3JlYXRlZERhdGU6IG51bGwsXHJcbiAgICAgIHBhZGRpbmc6IG51bGwsXHJcbiAgICAgIG1hcmdpbjogbnVsbCxcclxuICAgICAgaXNNYXN0ZXJDc3M6IG51bGwsXHJcbiAgICAgIGNvbnRyb2xNZXRhSWQ6IG51bGwsXHJcbiAgICAgIGJvcmRlclN0eWxlOiBudWxsLFxyXG4gICAgICBoZWlnaHQ6ICcyMHB4JyxcclxuICAgICAgbWluSGVpZ2h0OiBudWxsLFxyXG4gICAgICBtYXhIZWlnaHQ6IG51bGwsXHJcbiAgICAgIG1pbldpZHRoOiBudWxsLFxyXG4gICAgICBtYXhXaWR0aDogbnVsbCxcclxuICAgICAgY3NzQ2xhc3M6IG51bGwsXHJcbiAgICB9LFxyXG4gICAgZmllbGROYW1lOiAnYW5udWl0eUludGVyQ2hhbmdlJyxcclxuICAgIGxhYmVsOiAnQW5udWl0eSBJbnRlcmNoYW5nZSBCdXR0b24nLFxyXG4gICAgcGxhY2VIb2xkZXI6IG51bGwsXHJcbiAgICBtZXRhSWQ6ICdBTExfQ09NX0dFTl9NQ1RSTF9kb3dubG9hZEljb25CdXR0b25fYW5udWl0eUludGVyQ2hhbmdlX1YxJyxcclxuICAgIGlzVmlzaWJsZTogdHJ1ZSxcclxuICAgIGlzRGlzYWJsZTogZmFsc2UsXHJcbiAgICBkZWZhdWx0VmFsdWU6IG51bGwsXHJcbiAgICB2YWxpZGF0b3JzOiB7XHJcbiAgICAgIGlzUmVxdWlyZWQ6IGZhbHNlLFxyXG4gICAgICByZXF1aXJlZE1lc3NhZ2U6ICdUaGlzIGZpZWxkIGNhbm5vdCBiZSBlbXB0eScsXHJcbiAgICAgIG1pbkxlbmd0aDogbnVsbCxcclxuICAgICAgbWluTGVuZ3RoTWVzc2FnZTogbnVsbCxcclxuICAgICAgbWF4TGVuZ3RoOiBudWxsLFxyXG4gICAgICBtYXhMZW5ndGhNZXNzYWdlOiBudWxsLFxyXG4gICAgICBwYXR0ZXJuOiBudWxsLFxyXG4gICAgICBwYXR0ZXJuTWVzc2FnZTogJycsXHJcbiAgICB9LFxyXG4gICAgb3B0aW9uczogW10sXHJcbiAgICBjc3NDbGFzczogbnVsbCxcclxuICAgIHZhbHVlOiBudWxsLFxyXG4gICAgc3R5bGU6IG51bGwsXHJcbiAgICBpbWFnZVVybDpcclxuICAgICAgJ2h0dHBzOi8vY2RuLmdvZGlnaXQuY29tL2RpZ2l0UGx1c0Fzc2V0cy9UcmFuc2l0aW9uLXdpdGgtYm9yZGVyLWljb24uc3ZnJyxcclxuICAgIGNvbmZpZ0RhdGE6IHt9LFxyXG4gICAgbWV0YURhdGFPYmo6IG51bGwsXHJcbiAgICBpc1Nob3dMYWJlbDogdHJ1ZSxcclxuICAgIGlzTWFzdGVyQ29udHJvbDogdHJ1ZSxcclxuICAgIGNvbnRyb2xUeXBlOiAnZG93bmxvYWRJY29uQnV0dG9uJyxcclxuICB9O1xyXG5cclxuICBnZW5lcmF0ZVN1bW1hcnlPYmo6IGFueSA9IHtcclxuICAgIGNvbnRyb2xUeXBlOiAnYnV0dG9uJyxcclxuICAgIGZpZWxkTmFtZTogJ2dlbmVyYXRlU3VtbWFyeScsXHJcbiAgICBsYWJlbDogJ0dlbmVyYXRlIFN1bW1hcnknLFxyXG4gICAgcGxhY2VIb2xkZXI6IG51bGwsXHJcbiAgICBtZXRhSWQ6ICdMSV9EUF9HRU5fQ1RSTF9idXR0b25fZ2VuZXJhdGVTdW1tYXJ5X1YxJyxcclxuICAgIGlzVmlzaWJsZTogdHJ1ZSxcclxuICAgIGlzRGlzYWJsZTogdHJ1ZSxcclxuICAgIHZhbGlkYXRvcnM6IHtcclxuICAgICAgaXNSZXF1aXJlZDogZmFsc2UsXHJcbiAgICAgIHJlcXVpcmVkTWVzc2FnZTogJ1RoaXMgZmllbGQgY2Fubm90IGJlIGVtcHR5JyxcclxuICAgICAgbWluTGVuZ3RoOiBudWxsLFxyXG4gICAgICBtaW5MZW5ndGhNZXNzYWdlOiBudWxsLFxyXG4gICAgICBtYXhMZW5ndGg6IG51bGwsXHJcbiAgICAgIG1heExlbmd0aE1lc3NhZ2U6IG51bGwsXHJcbiAgICAgIHBhdHRlcm46IG51bGwsXHJcbiAgICAgIHBhdHRlcm5NZXNzYWdlOiAnJyxcclxuICAgIH0sXHJcbiAgICBvcHRpb25zOiBudWxsLFxyXG4gICAgY3NzQ2xhc3M6ICcgY29sLXNtLTEyIGNvbC1tZC0xMiBjb2wtbGctMTIgY29sLXhsLTEyIG15LTEgbXQtMycsXHJcbiAgICB2YWx1ZTogbnVsbCxcclxuICAgIHN0eWxlOiBudWxsLFxyXG4gICAgaW1hZ2VVcmw6IG51bGwsXHJcbiAgICBpc1Nob3dMYWJlbDogdHJ1ZSxcclxuICAgIGNvbnRyb2xTdHlsZToge1xyXG4gICAgICBjb250cm9sVHlwZTogbnVsbCxcclxuICAgICAgYm9yZGVyQ29sb3I6IG51bGwsXHJcbiAgICAgIGJvcmRlcldpZHRoOiBudWxsLFxyXG4gICAgICBib3JkZXJSYWRpdXM6ICc0cHgnLFxyXG4gICAgICBmb250U2l6ZTogJzEycHgnLFxyXG4gICAgICBmb250V2VpZ2h0OiBudWxsLFxyXG4gICAgICBmb250RmFtaWx5OiBudWxsLFxyXG4gICAgICBjb2xvcjogbnVsbCxcclxuICAgICAgYmFja2dyb3VuZDogJyNGRkJCMDAnLFxyXG4gICAgICBjYXJldENvbG9yOiBudWxsLFxyXG4gICAgICBudWRnZURpc3BsYXlJbWFnZTogbnVsbCxcclxuICAgICAgZHJvcGRvd25PcHRpb25CZ0NvbG9yOiBudWxsLFxyXG4gICAgICBkcm9wZG93bk9wdGlvbkNvbG9yOiBudWxsLFxyXG4gICAgICBkcm9wZG93bk9wdGlvbkZvbnRXZWlnaHQ6IG51bGwsXHJcbiAgICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICAgIGZvY3VzQm9yZGVyV2lkdGg6IG51bGwsXHJcbiAgICAgIGZvY3VzQm9yZGVyQ29sb3I6IG51bGwsXHJcbiAgICAgIGZvY3VzQmFja2dyb3VuZDogbnVsbCxcclxuICAgICAgZm9jdXNDb2xvcjogbnVsbCxcclxuICAgICAgZm9jdXNEcm9wZG93bk9wdGlvbkJnQ29sb3I6IG51bGwsXHJcbiAgICAgIGZvY3VzRHJvcGRvd25PcHRpb25Db2xvcjogbnVsbCxcclxuICAgICAgZm9jdXNEcm9wZG93bk9wdGlvbkZvbnRXZWlnaHQ6IG51bGwsXHJcbiAgICAgIGZvY3VzRHJvcGRvd25PcHRpb25Cb3JkZXJMZWZ0OiBudWxsLFxyXG4gICAgICBmb2N1c0Ryb3Bkb3duT3B0aW9uQm9yZGVyUmFkaXVzOiBudWxsLFxyXG4gICAgICBob3ZlckJvcmRlckNvbG9yOiBudWxsLFxyXG4gICAgICBob3ZlckJvcmRlcldpZHRoOiBudWxsLFxyXG4gICAgICBob3ZlckNvbG9yOiBudWxsLFxyXG4gICAgICBkaXNhYmxlQ29sb3I6IG51bGwsXHJcbiAgICAgIGRpc2FibGVCYWNrZ3JvdW5kOiBudWxsLFxyXG4gICAgICBlcnJvckJvcmRlckNvbG9yOiBudWxsLFxyXG4gICAgICBlcnJvckJvcmRlcldpZHRoOiBudWxsLFxyXG4gICAgICBlcnJvckNvbG9yOiBudWxsLFxyXG4gICAgICBjcmVhdGVkRGF0ZTogbnVsbCxcclxuICAgICAgcGFkZGluZzogbnVsbCxcclxuICAgICAgbWFyZ2luOiBudWxsLFxyXG4gICAgICBpc01hc3RlckNzczogbnVsbCxcclxuICAgICAgY29udHJvbE1ldGFJZDogJ0xJX0RQX0dFTl9DVFJMX2J1dHRvbl9nZW5lcmF0ZVN1bW1hcnlfVjEnLFxyXG4gICAgICBib3JkZXJTdHlsZTogbnVsbCxcclxuICAgICAgaGVpZ2h0OiBudWxsLFxyXG4gICAgICBtaW5IZWlnaHQ6IG51bGwsXHJcbiAgICAgIG1heEhlaWdodDogbnVsbCxcclxuICAgICAgbWluV2lkdGg6IG51bGwsXHJcbiAgICAgIG1heFdpZHRoOiBudWxsLFxyXG4gICAgICBjc3NDbGFzczogbnVsbCxcclxuICAgIH0sXHJcbiAgICBjb2x1bW5JbmRleDogMCxcclxuICAgIGNvbmZpZ0RhdGE6IHt9LFxyXG4gICAgY29udHJvbFN0eWxlczogbnVsbCxcclxuICB9O1xyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgbWFzdGVyU2VydmljZSA6IE1hc3RlckNvbnRyb2xTZXJ2aWNlKSB7fVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICBpZiAoIChjaGFuZ2VzWydwcmVtaXVtRGV0YWlscyddKSAmJiAhdGhpcy5tYXN0ZXJTZXJ2aWNlLmNoZWNrSWZWYWx1ZUlzRW1wdHkoY2hhbmdlc1sncHJlbWl1bURldGFpbHMnXS5jdXJyZW50VmFsdWUpICkge1xyXG4gICAgICBpZighdGhpcy5tYXN0ZXJTZXJ2aWNlLmNoZWNrSWZWYWx1ZUlzRW1wdHkodGhpcy5wcmVtaXVtRGV0YWlscygpPy5QcmVtaXVtKSkge1xyXG4gICAgICAgIGlmKCF0aGlzLm1hc3RlclNlcnZpY2UuY2hlY2tJZlZhbHVlSXNFbXB0eSh0aGlzLnByZW1pdW1EZXRhaWxzKCk/LlByZW1pdW1bJ3RleHRWYWx1ZSddKSkge1xyXG4gICAgICAgICAgdGhpcy5hbm51aXR5UHJlbWl1bVsndGV4dFZhbHVlJ10gPSB0aGlzLnByZW1pdW1EZXRhaWxzKCk/LlByZW1pdW1bJ3RleHRWYWx1ZSddXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmKE9iamVjdC5oYXNPd24odGhpcy5wcmVtaXVtRGV0YWlscygpPy5QcmVtaXVtLCAnaXNEaXNhYmxlJykpIHtcclxuICAgICAgICAgIHRoaXMuYW5udWl0eVByZW1pdW1PYmpbJ2lzRGlzYWJsZSddID0gdGhpcy5wcmVtaXVtRGV0YWlscygpPy5QcmVtaXVtWydpc0Rpc2FibGUnXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYoT2JqZWN0Lmhhc093bih0aGlzLnByZW1pdW1EZXRhaWxzKCk/LlByZW1pdW0sICdpc0Rpc2FibGVEcm9wZG93bicpKSB7XHJcbiAgICAgICAgICB0aGlzLmFubnVpdHlQcmVtaXVtT2JqWydjb25maWdEYXRhJ11bJ2lzRGlzYWJsZURyb3Bkb3duJ10gPSB0aGlzLnByZW1pdW1EZXRhaWxzKCk/LlByZW1pdW1bJ2lzRGlzYWJsZURyb3Bkb3duJ107XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmKCF0aGlzLm1hc3RlclNlcnZpY2UuY2hlY2tJZlZhbHVlSXNFbXB0eSh0aGlzLnByZW1pdW1EZXRhaWxzKCk/LlByZW1pdW1bJ3NlbGVjdFZhbHVlJ10pKSB7XHJcbiAgICAgICAgICB0aGlzLmFubnVpdHlQcmVtaXVtWydzZWxlY3RWYWx1ZSddID0gdGhpcy5wcmVtaXVtRGV0YWlscygpPy5QcmVtaXVtWydzZWxlY3RWYWx1ZSddXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBpZighdGhpcy5tYXN0ZXJTZXJ2aWNlLmNoZWNrSWZWYWx1ZUlzRW1wdHkodGhpcy5wcmVtaXVtRGV0YWlscygpPy5hbm51aXR5KSkge1xyXG4gICAgICAgIGlmKCF0aGlzLm1hc3RlclNlcnZpY2UuY2hlY2tJZlZhbHVlSXNFbXB0eSh0aGlzLnByZW1pdW1EZXRhaWxzKCk/LmFubnVpdHlbJ3RleHRWYWx1ZSddKSkge1xyXG4gICAgICAgICAgdGhpcy5taW51bXVtQW5udWl0eVBheW91dFsndGV4dFZhbHVlJ10gPSB0aGlzLnByZW1pdW1EZXRhaWxzKCk/LmFubnVpdHlbJ3RleHRWYWx1ZSddXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmKE9iamVjdC5oYXNPd24odGhpcy5wcmVtaXVtRGV0YWlscygpPy5QcmVtaXVtLCAnaXNEaXNhYmxlJykpIHtcclxuICAgICAgICAgIHRoaXMubWluaW11bUFubnVpdHlQYXlvdXRbJ2lzRGlzYWJsZSddID0gdGhpcy5wcmVtaXVtRGV0YWlscygpPy5hbm51aXR5Wydpc0Rpc2FibGUnXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYoT2JqZWN0Lmhhc093bih0aGlzLnByZW1pdW1EZXRhaWxzKCk/LlByZW1pdW0sICdpc0Rpc2FibGVEcm9wZG93bicpKSB7XHJcbiAgICAgICAgICB0aGlzLm1pbmltdW1Bbm51aXR5UGF5b3V0Wydjb25maWdEYXRhJ11bJ2lzRGlzYWJsZURyb3Bkb3duJ10gPSB0aGlzLnByZW1pdW1EZXRhaWxzKCk/LmFubnVpdHlbJ2lzRGlzYWJsZURyb3Bkb3duJ107XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmKCF0aGlzLm1hc3RlclNlcnZpY2UuY2hlY2tJZlZhbHVlSXNFbXB0eSh0aGlzLnByZW1pdW1EZXRhaWxzKCk/LmFubnVpdHlbJ3NlbGVjdFZhbHVlJ10pKSB7XHJcbiAgICAgICAgICB0aGlzLm1pbnVtdW1Bbm51aXR5UGF5b3V0WydzZWxlY3RWYWx1ZSddID0gdGhpcy5wcmVtaXVtRGV0YWlscygpPy5hbm51aXR5WydzZWxlY3RWYWx1ZSddXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBpZighdGhpcy5tYXN0ZXJTZXJ2aWNlLmNoZWNrSWZWYWx1ZUlzRW1wdHkodGhpcy5wcmVtaXVtRGV0YWlscygpPy5jYWxjdWxhdGVBbm51aXR5KSkge1xyXG5cclxuICAgICAgICBpZighdGhpcy5tYXN0ZXJTZXJ2aWNlLmNoZWNrSWZWYWx1ZUlzRW1wdHkodGhpcy5wcmVtaXVtRGV0YWlscygpPy5jYWxjdWxhdGVBbm51aXR5Wydjb250cm9sU3R5bGUnXSkpIHtcclxuICAgICAgICAgIHRoaXMucmVjYWxjdWxhdGVCdXR0b25bJ2NvbnRyb2xTdHlsZSddID0gdGhpcy5wcmVtaXVtRGV0YWlscygpPy5jYWxjdWxhdGVBbm51aXR5Wydjb250cm9sU3R5bGUnXVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYoIXRoaXMubWFzdGVyU2VydmljZS5jaGVja0lmVmFsdWVJc0VtcHR5KHRoaXMucHJlbWl1bURldGFpbHMoKT8uY2FsY3VsYXRlQW5udWl0eVsnbGFiZWwnXSkpIHtcclxuICAgICAgICAgIHRoaXMucmVjYWxjdWxhdGVCdXR0b25bJ2xhYmVsJ10gPSB0aGlzLnByZW1pdW1EZXRhaWxzKCk/LmNhbGN1bGF0ZUFubnVpdHlbJ2xhYmVsJ11cclxuICAgICAgICB9XHJcbiAgICAgICAgaWYoIXRoaXMubWFzdGVyU2VydmljZS5jaGVja0lmVmFsdWVJc0VtcHR5KHRoaXMucHJlbWl1bURldGFpbHMoKT8uY2FsY3VsYXRlQW5udWl0eVsnaXNEaXNhYmxlJ10pKSB7XHJcbiAgICAgICAgICB0aGlzLnJlY2FsY3VsYXRlQnV0dG9uWydpc0Rpc2FibGUnXSA9IHRoaXMucHJlbWl1bURldGFpbHMoKT8uY2FsY3VsYXRlQW5udWl0eVsnaXNEaXNhYmxlJ11cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmKCF0aGlzLm1hc3RlclNlcnZpY2UuY2hlY2tJZlZhbHVlSXNFbXB0eSh0aGlzLnByZW1pdW1EZXRhaWxzKCk/LmdlbmVyYXRlU3VtbWFyeSkpIHtcclxuXHJcbiAgICAgICAgaWYoIXRoaXMubWFzdGVyU2VydmljZS5jaGVja0lmVmFsdWVJc0VtcHR5KHRoaXMucHJlbWl1bURldGFpbHMoKT8uZ2VuZXJhdGVTdW1tYXJ5Wydjb250cm9sU3R5bGUnXSkpIHtcclxuICAgICAgICAgIHRoaXMuZ2VuZXJhdGVTdW1tYXJ5T2JqWydjb250cm9sU3R5bGUnXSA9IHRoaXMucHJlbWl1bURldGFpbHMoKT8uZ2VuZXJhdGVTdW1tYXJ5Wydjb250cm9sU3R5bGUnXTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmKCF0aGlzLm1hc3RlclNlcnZpY2UuY2hlY2tJZlZhbHVlSXNFbXB0eSh0aGlzLnByZW1pdW1EZXRhaWxzKCk/LmdlbmVyYXRlU3VtbWFyeVsnbGFiZWwnXSkpIHtcclxuICAgICAgICAgIHRoaXMuZ2VuZXJhdGVTdW1tYXJ5T2JqWydsYWJlbCddID0gdGhpcy5wcmVtaXVtRGV0YWlscygpPy5nZW5lcmF0ZVN1bW1hcnlbJ2xhYmVsJ107XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmKCF0aGlzLm1hc3RlclNlcnZpY2UuY2hlY2tJZlZhbHVlSXNFbXB0eSh0aGlzLnByZW1pdW1EZXRhaWxzKCk/LmdlbmVyYXRlU3VtbWFyeVsnaXNEaXNhYmxlJ10pKSB7XHJcbiAgICAgICAgICB0aGlzLmdlbmVyYXRlU3VtbWFyeU9ialsnaXNEaXNhYmxlJ10gPSB0aGlzLnByZW1pdW1EZXRhaWxzKCk/LmdlbmVyYXRlU3VtbWFyeVsnaXNEaXNhYmxlJ11cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjYWxjdWxhdGVCdXR0b25DbGlja2VkKCkge1xyXG4gICAgdGhpcy52YWxpZGF0aW9ucy5pc3ByZW1pdW1FbnRyeSA9IGZhbHNlO1xyXG4gICAgaWYodGhpcy5tYXN0ZXJTZXJ2aWNlLmNoZWNrSWZWYWx1ZUlzRW1wdHkodGhpcy5hbm51aXR5UHJlbWl1bVsndGV4dFZhbHVlJ10pKSB7XHJcbiAgICAgIHRoaXMudmFsaWRhdGlvbnMuaXNwcmVtaXVtRW50cnkgPSB0cnVlO1xyXG4gICAgfVxyXG4gICAgdGhpcy5vbkNhbGN1YWx0ZUJ1dHRvbkNsaWNrLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIGdlbmVyYXRlU3VtbWFyeUNsaWNrZWQoKSB7XHJcbiAgICB0aGlzLm9uR2VuZXJhdGVTdW1tYXJ5Q2xpY2suZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgb25Bbm51aXR5UHJlbWl1bVZhbHVlQ2hhbmdlKHZhbHVlOiBhbnkpIHtcclxuICAgIHRoaXMuYW5udWl0eVByZW1pdW0gPSB2YWx1ZTtcclxuICAgIHRoaXMudmFsaWRhdGlvbnMuaXNwcmVtaXVtRW50cnkgPSBmYWxzZTtcclxuICAgIGlmKHRoaXMubWFzdGVyU2VydmljZS5jaGVja0lmVmFsdWVJc0VtcHR5KHRoaXMuYW5udWl0eVByZW1pdW1bJ3RleHRWYWx1ZSddKSkge1xyXG4gICAgICB0aGlzLnZhbGlkYXRpb25zLmlzcHJlbWl1bUVudHJ5ID0gdHJ1ZTtcclxuICAgIH1cclxuICAgIHRoaXMub25Bbm51aXR5UHJlbWl1bUNoYW5nZS5lbWl0KHZhbHVlKTtcclxuICB9XHJcblxyXG4gIGFubnVhbEluY29tZWZvY3VzT3V0KCkge1xyXG4gICAgdGhpcy52YWxpZGF0aW9ucy5pc3ByZW1pdW1FbnRyeSA9IGZhbHNlO1xyXG4gICAgaWYodGhpcy5tYXN0ZXJTZXJ2aWNlLmNoZWNrSWZWYWx1ZUlzRW1wdHkodGhpcy5hbm51aXR5UHJlbWl1bVsndGV4dFZhbHVlJ10pKSB7XHJcbiAgICAgIHRoaXMudmFsaWRhdGlvbnMuaXNwcmVtaXVtRW50cnkgPSB0cnVlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiY2FyZCBweC0zXCIgc3R5bGU9XCJwYWRkaW5nOiAxNnB4O1wiPlxyXG4gIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgIDxoNCBjbGFzcz1cImNhcmQtbWFpbi10aXRsZVwiPjxzcGFuIHN0eWxlPVwibWFyZ2luLXJpZ2h0OiAxMnB4O1wiPjxpbWcgc3JjPVwiaHR0cHM6Ly9jZG4uZ29kaWdpdC5jb20vcmV0YWlsLWxpZmUvY2FsY3VsYXRvci5zdmdcIiBhbHQ9XCJhbm51aXR5IGNhbGN1bGF0b3JcIj48L3NwYW4+SGVyZSdzIHlvdXIgUHJlbWl1bSB0byBBbm51aXR5IENhbGN1bGF0b3I8L2g0PlxyXG4gIDwvZGl2PlxyXG4gIDwhLS0gPGRpdiBjbGFzcz1cInJvd1wiPiAtLT5cclxuICA8ZGl2IGNsYXNzPVwiY2FyZCBwYi00IHB4LTRcIiBzdHlsZT1cImJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDBweDsgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDBweDtcIj5cclxuICAgIDwhLS0gPGRpdiBjbGFzcz1cImN1c3RvbS1ncmlkLXRlbXBsYXRlXCI+XHJcblxyXG4gICAgPC9kaXY+IC0tPlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJyb3cgbXgtYXV0b1wiIHN0eWxlPVwidHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCAtNTglKTtcIj5cclxuICAgICAgPGxpYi10b2dnbGUgY2xhc3M9XCJjb2wtYXV0b1wiIFtmaWVsZF09XCJhbm51aXR5UHJlbWl1bVRvZ2dsZU9ialwiIC8+XHJcbiAgICA8L2Rpdj5cclxuICAgIDwhLS0gPC9kaXY+IC0tPlxyXG4gICAgPGRpdiBjbGFzcz1cImN1c3RvbS1ncmlkLXRlbXBsYXRlXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW5cIj5cclxuICAgICAgICA8bGliLXNlbGVjdC10ZXh0Ym94IFtmaWVsZF09XCJhbm51aXR5UHJlbWl1bU9ialwiIFsobmdNb2RlbCldPVwiYW5udWl0eVByZW1pdW1cIiAobmdNb2RlbENoYW5nZSk9XCJvbkFubnVpdHlQcmVtaXVtVmFsdWVDaGFuZ2UoJGV2ZW50KVwiIC8+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImVycm9yLW1lc3NhZ2VcIiAqbmdJZj1cInZhbGlkYXRpb25zLmlzcHJlbWl1bUVudHJ5XCI+XHJcbiAgICAgICAgICBFbnRlciBQcmVtaXVtXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibXQtMyBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIiBzdHlsZT1cImRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCA2cHgpO1wiPlxyXG4gICAgICAgIDxsaWItaWNvbi1idXR0b24gW2ZpZWxkXT1cImludGVyY2hhbmdlQnV0dG9uT2JqXCIgLz5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW5cIj5cclxuICAgICAgICA8bGliLXNlbGVjdC10ZXh0Ym94IFtmaWVsZF09XCJtaW5pbXVtQW5udWl0eVBheW91dFwiIFsobmdNb2RlbCldPVwibWludW11bUFubnVpdHlQYXlvdXRcIiAvPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPCEtLSA8ZGl2IGNsYXNzPVwidmVydGljYWwtbGluZVwiPjwvZGl2PiAtLT5cclxuICAgIDxkaXYgY2xhc3M9XCJjdXN0b20tZ3JpZC10ZW1wbGF0ZVwiPlxyXG4gICAgICA8ZGl2PlxyXG4gICAgICAgIDxsaWItdG9nZ2xlIFtmaWVsZF09XCJlbmFibGVBdXRvRGViaXRPYmpcIiAvPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICA8L2Rpdj5cclxuXHJcblxyXG4gIDxkaXYgY2xhc3M9XCJjYXJkIHB5LTMgbWItNCBib3JkZXItdG9wLTBcIiBzdHlsZT1cImJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDBweDsgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDBweDtcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJteC00XCI+XHJcbiAgICAgIDxsaWItYnV0dG9uIFtmaWVsZF09XCJyZWNhbGN1bGF0ZUJ1dHRvblwiIChjbGljayk9XCJjYWxjdWxhdGVCdXR0b25DbGlja2VkKClcIiAvPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXY+XHJcbiAgICA8bGliLWJ1dHRvbiBbZmllbGRdPVwiZ2VuZXJhdGVTdW1tYXJ5T2JqXCIgKGNsaWNrKT1cImdlbmVyYXRlU3VtbWFyeUNsaWNrZWQoKVwiIC8+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
698
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5udWl0eS1wcmVtaXVtLWNhbGN1bGF0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFzdGVyLWNvbnRyb2wvc3JjL2xpYi9hbm51aXR5LXByZW1pdW0tY2FsY3VsYXRvci9hbm51aXR5LXByZW1pdW0tY2FsY3VsYXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL2FubnVpdHktcHJlbWl1bS1jYWxjdWxhdG9yL2FubnVpdHktcHJlbWl1bS1jYWxjdWxhdG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNwRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDM0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFpQjdDLE1BQU0sT0FBTyxpQ0FBaUM7SUFxbEJ6QjtJQXBsQm5CLEtBQUssR0FBUSxLQUFLLENBQUMsUUFBUSxFQUFPLENBQUM7SUFDbkMsY0FBYyxHQUFRLEtBQUssQ0FBTSxFQUFFLENBQUMsQ0FBQztJQUNyQyxjQUFjLEdBQVM7UUFDckIsU0FBUyxFQUFHLEVBQUU7UUFDZCxXQUFXLEVBQUUsRUFBRTtLQUNoQixDQUFDO0lBQ0Ysb0JBQW9CLEdBQVM7UUFDM0IsU0FBUyxFQUFH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LEdBQUcsSUFBSSxDQUFDO1FBQ3pDLENBQUM7UUFDRCxJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO1FBQ3hDLElBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUM1RSxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7UUFDekMsQ0FBQztJQUNILENBQUM7d0dBaHJCVSxpQ0FBaUM7NEZBQWpDLGlDQUFpQyx3aUJDdkI5Qyx1bEVBZ0RBLGdkRG5DSSxlQUFlLDRIQUNmLHNCQUFzQiwrR0FDdEIsZUFBZSwwRUFDZixtQkFBbUIsOEVBQ25CLFlBQVksa0lBQ1osV0FBVzs7NEZBS0YsaUNBQWlDO2tCQWQ3QyxTQUFTOytCQUNFLGdDQUFnQyxjQUM5QixJQUFJLFdBQ1A7d0JBQ1AsZUFBZTt3QkFDZixzQkFBc0I7d0JBQ3RCLGVBQWU7d0JBQ2YsbUJBQW1CO3dCQUNuQixZQUFZO3dCQUNaLFdBQVc7cUJBQ1o7eUZBZVMsc0JBQXNCO3NCQUEvQixNQUFNO2dCQUNHLHNCQUFzQjtzQkFBL0IsTUFBTTtnQkFDRyxzQkFBc0I7c0JBQS9CLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgaW5wdXQsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBUb2dnbGVDb21wb25lbnQgfSBmcm9tICcuLi90b2dnbGUvdG9nZ2xlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNlbGVjdFRleHRib3hDb21wb25lbnQgfSBmcm9tICcuLi9zZWxlY3QtdGV4dGJveC9zZWxlY3QtdGV4dGJveC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEljb25CdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi9pY29uLWJ1dHRvbi9pY29uLWJ1dHRvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWFzdGVyQ29udHJvbFNlcnZpY2UgfSBmcm9tICcuLi9tYXN0ZXItY29udHJvbC5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWFubnVpdHktcHJlbWl1bS1jYWxjdWxhdG9yJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIFRvZ2dsZUNvbXBvbmVudCxcclxuICAgIFNlbGVjdFRleHRib3hDb21wb25lbnQsXHJcbiAgICBCdXR0b25Db21wb25lbnQsXHJcbiAgICBJY29uQnV0dG9uQ29tcG9uZW50LFxyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGVcclxuICBdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hbm51aXR5LXByZW1pdW0tY2FsY3VsYXRvci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL2FubnVpdHktcHJlbWl1bS1jYWxjdWxhdG9yLmNvbXBvbmVudC5jc3MnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQW5udWl0eVByZW1pdW1DYWxjdWxhdG9yQ29tcG9uZW50IHtcclxuICBmaWVsZDogYW55ID0gaW5wdXQucmVxdWlyZWQ8YW55PigpO1xyXG4gIHByZW1pdW1EZXRhaWxzOiBhbnkgPSBpbnB1dDxhbnk+KHt9KTtcclxuICBhbm51aXR5UHJlbWl1bSA6IGFueSA9IHtcclxuICAgIHRleHRWYWx1ZSA6ICcnLFxyXG4gICAgc2VsZWN0VmFsdWU6ICcnXHJcbiAgfTtcclxuICBtaW51bXVtQW5udWl0eVBheW91dCA6IGFueSA9IHtcclxuICAgIHRleHRWYWx1ZSA6ICcnLFxyXG4gICAgc2VsZWN0VmFsdWU6ICcnXHJcbiAgfTtcclxuICBAT3V0cHV0KCkgb25DYWxjdWFsdGVCdXR0b25DbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKSBvbkdlbmVyYXRlU3VtbWFyeUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQE91dHB1dCgpIG9uQW5udWl0eVByZW1pdW1DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICB2YWxpZGF0aW9ucyA6IGFueSA9IHtcclxuICAgIGlzcHJlbWl1bUVudHJ5IDogZmFsc2VcclxuICB9XHJcbiAgYW5udWl0eVByZW1pdW1Ub2dnbGVPYmo6IGFueSA9IHtcclxuICAgIGNvbnRyb2xUeXBlOiAndG9nZ2xlJyxcclxuICAgIGZpZWxkTmFtZTogJ2FubnVpdHlQcmVtaXVtVG9nZ2xlJyxcclxuICAgIGxhYmVsOiAnRW50ZXIgQW5udWl0eScsXHJcbiAgICBwbGFjZUhvbGRlcjogbnVsbCxcclxuICAgIG1ldGFJZDogJ0xJX0RQX0dFTl9DVFJMX3RvZ2dsZV9hbm51aXR5UHJlbWl1bVRvZ2dsZV9WMScsXHJcbiAgICBpc1Zpc2libGU6IHRydWUsXHJcbiAgICBpc0Rpc2FibGU6IGZhbHNlLFxyXG4gICAgdmFsaWRhdG9yczoge1xyXG4gICAgICBpc1JlcXVpcmVkOiBmYWxzZSxcclxuICAgICAgcmVxdWlyZWRNZXNzYWdlOiAnVGhpcyBmaWVsZCBjYW5ub3QgYmUgZW1wdHknLFxyXG4gICAgICBtaW5MZW5ndGg6IG51bGwsXHJcbiAgICAgIG1pbkxlbmd0aE1lc3NhZ2U6IG51bGwsXHJcbiAgICAgIG1heExlbmd0aDogMTUwLFxyXG4gICAgICBtYXhMZW5ndGhNZXNzYWdlOiBudWxsLFxyXG4gICAgICBwYXR0ZXJuOiBudWxsLFxyXG4gICAgICBwYXR0ZXJuTWVzc2FnZTogJycsXHJcbiAgICB9LFxyXG4gICAgb3B0aW9uczogbnVsbCxcclxuICAgIGNzc0NsYXNzOlxyXG4gICAgICAnIGNvbC1zbS0xMiBjb2wtbWQtMTIgY29sLWxnLTEyIGNvbC14bC0xMiBteC1hdXRvIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlcicsXHJcbiAgICB2YWx1ZTogbnVsbCxcclxuICAgIHN0eWxlOiBudWxsLFxyXG4gICAgaW1hZ2VVcmw6IG51bGwsXHJcbiAgICBpc1Nob3dMYWJlbDogdHJ1ZSxcclxuICAgIGNvbnRyb2xTdHlsZToge1xyXG4gICAgICBjb250cm9sVHlwZTogJ3RvZ2dsZScsXHJcbiAgICAgIGJvcmRlckNvbG9yOiAnI0RBREFEQScsXHJcbiAgICAgIGJvcmRlcldpZHRoOiAnMXB4JyxcclxuICAgICAgYm9yZGVyUmFkaXVzOiAnOTk5cHgnLFxyXG4gICAgICBmb250U2l6ZTogJzEycHgnLFxyXG4gICAgICBmb250V2VpZ2h0OiAnNDAwJyxcclxuICAgICAgZm9udEZhbWlseTogJ011bGlzaCcsXHJcbiAgICAgIGNvbG9yOiAnIzQ0NDQ0NCcsXHJcbiAgICAgIGJhY2tncm91bmQ6ICcjRkZGRkZGJyxcclxuICAgICAgY2FyZXRDb2xvcjogbnVsbCxcclxuICAgICAgbnVkZ2VEaXNwbGF5SW1hZ2U6IG51bGwsXHJcbiAgICAgIGRyb3Bkb3duT3B0aW9uQmdDb2xvcjogbnVsbCxcclxuICAgICAgZHJvcGRvd25PcHRpb25Db2xvcjogbnVsbCxcclxuICAgICAgZHJvcGRvd25PcHRpb25Gb250V2VpZ2h0OiBudWxsLFxyXG4gICAgICB3aWR0aDogJ2ZpdC1jb250ZW50JyxcclxuICAgICAgZm9jdXNCb3JkZXJXaWR0aDogJzAuMDk0cmVtJyxcclxuICAgICAgZm9jdXNCb3JkZXJDb2xvcjogbnVsbCxcclxuICAgICAgZm9jdXNCYWNrZ3JvdW5kOiBudWxsLFxyXG4gICAgICBmb2N1c0NvbG9yOiBudWxsLFxyXG4gICAgICBmb2N1c0Ryb3Bkb3duT3B0aW9uQmdDb2xvcjogbnVsbCxcclxuICAgICAgZm9jdXNEcm9wZG93bk9wdGlvbkNvbG9yOiBudWxsLFxyXG4gICAgICBmb2N1c0Ryb3Bkb3duT3B0aW9uRm9udFdlaWdodDogbnVsbCxcclxuICAgICAgZm9jdXNEcm9wZG93bk9wdGlvbkJvcmRlckxlZnQ6IG51bGwsXHJcbiAgICAgIGZvY3VzRHJvcGRvd25PcHRpb25Cb3JkZXJSYWRpdXM6IG51bGwsXHJcbiAgICAgIGhvdmVyQm9yZGVyQ29sb3I6IG51bGwsXHJcbiAgICAgIGhvdmVyQm9yZGVyV2lkdGg6ICcwLjA5NHJlbScsXHJcbiAgICAgIGhvdmVyQ29sb3I6IG51bGwsXHJcbiAgICAgIGRpc2FibGVDb2xvcjogJyNFQ0VDRUMnLFxyXG4gICAgICBkaXNhYmxlQmFja2dyb3VuZDogJyNFQ0VDRUMnLFxyXG4gICAgICBlcnJvckJvcmRlckNvbG9yOiBudWxsLFxyXG4gICAgICBlcnJvckJvcmRlcldpZHRoOiAnMC4wOTRyZW0nLFxyXG4gICAgICBlcnJvckNvbG9yOiBudWxsLFxyXG4gICAgICBjcmVhdGVkRGF0ZTogbnVsbCxcclxuICAgICAgcGFkZGluZzogbnVsbCxcclxuICAgICAgbWFyZ2luOiBudWxsLFxyXG4gICAgICBpc01hc3RlckNzczogbnVsbCxcclxuICAgICAgY29udHJvbE1ldGFJZDogJ0xJX0RQX0dFTl9DVFJMX3RvZ2dsZV9hbm51aXR5UHJlbWl1bVRvZ2dsZV9WMScsXHJcbiAgICAgIGJvcmRlclN0eWxlOiBudWxsLFxyXG4gICAgICBoZWlnaHQ6IG51bGwsXHJcbiAgICAgIG1pbkhlaWdodDogbnVsbCxcclxuICAgICAgbWF4SGVpZ2h0OiBudWxsLFxyXG4gICAgICBtaW5XaWR0aDogbnVsbCxcclxuICAgICAgbWF4V2lkdGg6IG51bGwsXHJcbiAgICAgIGNzc0NsYXNzOiBudWxsLFxyXG4gICAgfSxcclxuICAgIGNvbHVtbkluZGV4OiAwLFxyXG4gICAgY29uZmlnRGF0YToge1xyXG4gICAgICBsZWZ0TGFiZWw6ICdFbnRlciBQcmVtaXVtJyxcclxuICAgIH0sXHJcbiAgICBjb250cm9sU3R5bGVzOiBudWxsLFxyXG4gIH07XHJcblxyXG4gIGFubnVpdHlQcmVtaXVtT2JqOiBhbnkgPSB7XHJcbiAgICBjb250cm9sU3R5bGU6IHtcclxuICAgICAgY29udHJvbFR5cGU6ICdhbW91bnRUZXh0Ym94JyxcclxuICAgICAgYm9yZGVyQ29sb3I6ICcjREFEQURBJyxcclxuICAgICAgYm9yZGVyV2lkdGg6ICcwLjA5NHJlbScsXHJcbiAgICAgIGJvcmRlclJhZGl1czogbnVsbCxcclxuICAgICAgZm9udFNpemU6ICcxNnB4JyxcclxuICAgICAgZm9udFdlaWdodDogJzQwMCcsXHJcbiAgICAgIGZvbnRGYW1pbHk6ICdNdWxpc2gnLFxyXG4gICAgICBjb2xvcjogJyM0NDQ0NDQnLFxyXG4gICAgICBiYWNrZ3JvdW5kOiAnI0ZGRkZGRicsXHJcbiAgICAgIGNhcmV0Q29sb3I6ICcjZmZiYjAwJyxcclxuICAgICAgbnVkZ2VEaXNwbGF5SW1hZ2U6IG51bGwsXHJcbiAgICAgIGRyb3Bkb3duT3B0aW9uQmdDb2xvcjogbnVsbCxcclxuICAgICAgZHJvcGRvd25PcHRpb25Db2xvcjogbnVsbCxcclxuICAgICAgZHJvcGRvd25PcHRpb25Gb250V2VpZ2h0OiBudWxsLFxyXG4gICAgICB3aWR0aDogbnVsbCxcclxuICAgICAgZm9jdXNCb3JkZXJXaWR0aDogJzAuMDk0cmVtJyxcclxuICAgICAgZm9jdXNCb3JkZXJDb2xvcjogJyNmZmJiMDAnLFxyXG4gICAgICBmb2N1c0JhY2tncm91bmQ6IG51bGwsXHJcbiAgICAgIGZvY3VzQ29sb3I6ICcjNDQ0NDQ0JyxcclxuICAgICAgZm9jdXNEcm9wZG93bk9wdGlvbkJnQ29sb3I6IG51bGwsXHJcbiAgICAgIGZvY3VzRHJvcGRvd25PcHRpb25Db2xvcjogbnVsbCxcclxuICAgICAgZm9jdXNEcm9wZG93bk9wdGlvbkZvbnRXZWlnaHQ6IG51bGwsXHJcbiAgICAgIGZvY3VzRHJvcGRvd25PcHRpb25Cb3JkZXJMZWZ0OiBudWxsLFxyXG4gICAgICBmb2N1c0Ryb3Bkb3duT3B0aW9uQm9yZGVyUmFkaXVzOiBudWxsLFxyXG4gICAgICBob3ZlckJvcmRlckNvbG9yOiAnI0ZGQkIwMCcsXHJcbiAgICAgIGhvdmVyQm9yZGVyV2lkdGg6ICcwLjA5NHJlbScsXHJcbiAgICAgIGhvdmVyQ29sb3I6ICcjNDQ0NDQ0JyxcclxuICAgICAgZGlzYWJsZUNvbG9yOiAnI0VDRUNFQycsXHJcbiAgICAgIGRpc2FibGVCYWNrZ3JvdW5kOiAnI0VDRUNFQycsXHJcbiAgICAgIGVycm9yQm9yZGVyQ29sb3I6ICcjRUUwMDAwJyxcclxuICAgICAgZXJyb3JCb3JkZXJXaWR0aDogJzAuMDk0cmVtJyxcclxuICAgICAgZXJyb3JDb2xvcjogJyM0NDQ0NDQnLFxyXG4gICAgICBjcmVhdGVkRGF0ZTogbnVsbCxcclxuICAgICAgcGFkZGluZzogbnVsbCxcclxuICAgICAgbWFyZ2luOiBudWxsLFxyXG4gICAgICBpc01hc3RlckNzczogbnVsbCxcclxuICAgICAgY29udHJvbE1ldGFJZDogJ0FMTF9EUF9EUF9DVFJMX2Ftb3VudFRleHRib3hfYW5udWl0eVByZW1pdW1fVjEnLFxyXG4gICAgICBib3JkZXJTdHlsZTogbnVsbCxcclxuICAgICAgaGVpZ2h0OiBudWxsLFxyXG4gICAgICBtaW5IZWlnaHQ6IG51bGwsXHJcbiAgICAgIG1heEhlaWdodDogbnVsbCxcclxuICAgICAgbWluV2lkdGg6IG51bGwsXHJcbiAgICAgIG1heFdpZHRoOiBudWxsLFxyXG4gICAgICBjc3NDbGFzczogbnVsbCxcclxuICAgIH0sXHJcbiAgICBmaWVsZE5hbWU6ICdhbm51aXR5UHJlbWl1bScsXHJcbiAgICBsYWJlbDogJ1ByZW1pdW0nLFxyXG4gICAgcGxhY2VIb2xkZXI6ICdFbnRlciBQcmVtaXVtJyxcclxuICAgIG1ldGFJZDogJ0FMTF9EUF9EUF9DVFJMX2Ftb3VudFRleHRib3hfYW5udWl0eVByZW1pdW1fVjEnLFxyXG4gICAgaXNWaXNpYmxlOiB0cnVlLFxyXG4gICAgaXNEaXNhYmxlOiBmYWxzZSxcclxuICAgIGRlZmF1bHRWYWx1ZTogbnVsbCxcclxuICAgIHZhbGlkYXRvcnM6IHtcclxuICAgICAgaXNSZXF1aXJlZDogZmFsc2UsXHJcbiAgICAgIHJlcXVpcmVkTWVzc2FnZTogJ0VudGVyIFByZW1pdW0nLFxyXG4gICAgICBtaW5MZW5ndGg6IDQsXHJcbiAgICAgIG1pbkxlbmd0aE1lc3NhZ2U6IG51bGwsXHJcbiAgICAgIG1heExlbmd0aDogMTAsXHJcbiAgICAgIG1heExlbmd0aE1lc3NhZ2U6IG51bGwsXHJcbiAgICAgIHBhdHRlcm46IG51bGwsXHJcbiAgICAgIHBhdHRlcm5NZXNzYWdlOiBudWxsLFxyXG4gICAgfSxcclxuICAgIG9wdGlvbnM6IFtcclxuICAgICAge1xyXG4gICAgICAgIHZhbHVlOiAnTW9udGhseScsXHJcbiAgICAgICAgbGFiZWw6ICdNb250aGx5JyxcclxuICAgICAgfSxcclxuICAgICAge1xyXG4gICAgICAgIHZhbHVlOiAnT25lIFRpbWUnLFxyXG4gICAgICAgIGxhYmVsOiAnT25lIFRpbWUnLFxyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgdmFsdWU6ICdRdWFydGVybHknLFxyXG4gICAgICAgIGxhYmVsOiAnUXVhcnRlcmx5JyxcclxuICAgICAgfSxcclxuICAgICAge1xyXG4gICAgICAgIHZhbHVlOiAnSGFsZiBZZWFybHknLFxyXG4gICAgICAgIGxhYmVsOiAnSGFsZiBZZWFybHknLFxyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgdmFsdWU6ICdZZWFybHknLFxyXG4gICAgICAgIGxhYmVsOiAnWWVhcmx5JyxcclxuICAgICAgfSxcclxuICAgIF0sXHJcbiAgICBjc3NDbGFzczogJyBjb2wtc20tMTIgY29sLW1kLTMgY29sLWxnLTMgY29sLXhsLTMgcHktMCBwbC0zIHByLTAgbXQtNSBwdC0yJyxcclxuICAgIHZhbHVlOiBudWxsLFxyXG4gICAgc3R5bGU6IG51bGwsXHJcbiAgICBpbWFnZVVybDogbnVsbCxcclxuICAgIGNvbmZpZ0RhdGE6IHtcclxuICAgICAgaXNDb21tYUFsbG93ZWQ6IHRydWUsXHJcbiAgICB9LFxyXG4gICAgbWV0YURhdGFPYmo6IG51bGwsXHJcbiAgICBpc1Nob3dMYWJlbDogdHJ1ZSxcclxuICAgIGlzTWFzdGVyQ29udHJvbDogZmFsc2UsXHJcbiAgICBjb250cm9sVHlwZTogJ2Ftb3VudFRleHRib3gnLFxyXG4gIH07XHJcblxyXG4gIG1pbmltdW1Bbm51aXR5UGF5b3V0T2JqOiBhbnkgPSB7XHJcbiAgICBjb250cm9sU3R5bGU6IHtcclxuICAgICAgY29udHJvbFR5cGU6ICdhbW91bnRUZXh0Ym94JyxcclxuICAgICAgYm9yZGVyQ29sb3I6ICcjREFEQURBJyxcclxuICAgICAgYm9yZGVyV2lkdGg6ICcwLjA5NHJlbScsXHJcbiAgICAgIGJvcmRlclJhZGl1czogbnVsbCxcclxuICAgICAgZm9udFNpemU6ICcxNnB4JyxcclxuICAgICAgZm9udFdlaWdodDogJzQwMCcsXHJcbiAgICAgIGZvbnRGYW1pbHk6ICdNdWxpc2gnLFxyXG4gICAgICBjb2xvcjogJyM0NDQ0NDQnLFxyXG4gICAgICBiYWNrZ3JvdW5kOiAnI0ZGRkZGRicsXHJcbiAgICAgIGNhcmV0Q29sb3I6ICcjZmZiYjAwJyxcclxuICAgICAgbnVkZ2VEaXNwbGF5SW1hZ2U6IG51bGwsXHJcbiAgICAgIGRyb3Bkb3duT3B0aW9uQmdDb2xvcjogbnVsbCxcclxuICAgICAgZHJvcGRvd25PcHRpb25Db2xvcjogbnVsbCxcclxuICAgICAgZHJvcGRvd25PcHRpb25Gb250V2VpZ2h0OiBudWxsLFxyXG4gICAgICB3aWR0aDogbnVsbCxcclxuICAgICAgZm9jdXNCb3JkZXJXaWR0aDogJzAuMDk0cmVtJyxcclxuICAgICAgZm9jdXNCb3JkZXJDb2xvcjogJyNmZmJiMDAnLFxyXG4gICAgICBmb2N1c0JhY2tncm91bmQ6IG51bGwsXHJcbiAgICAgIGZvY3VzQ29sb3I6ICcjNDQ0NDQ0JyxcclxuICAgICAgZm9jdXNEcm9wZG93bk9wdGlvbkJnQ29sb3I6IG51bGwsXHJcbiAgICAgIGZvY3VzRHJvcGRvd25PcHRpb25Db2xvcjogbnVsbCxcclxuICAgICAgZm9jdXNEcm9wZG93bk9wdGlvbkZvbnRXZWlnaHQ6IG51bGwsXHJcbiAgICAgIGZvY3VzRHJvcGRvd25PcHRpb25Cb3JkZXJMZWZ0OiBudWxsLFxyXG4gICAgICBmb2N1c0Ryb3Bkb3duT3B0aW9uQm9yZGVyUmFkaXVzOiBudWxsLFxyXG4gICAgICBob3ZlckJvcmRlckNvbG9yOiAnI0ZGQkIwMCcsXHJcbiAgICAgIGhvdmVyQm9yZGVyV2lkdGg6ICcwLjA5NHJlbScsXHJcbiAgICAgIGhvdmVyQ29sb3I6ICcjNDQ0NDQ0JyxcclxuICAgICAgZGlzYWJsZUNvbG9yOiAnIzk5OTk5OScsXHJcbiAgICAgIGRpc2FibGVCYWNrZ3JvdW5kOiAnI0VDRUNFQycsXHJcbiAgICAgIGVycm9yQm9yZGVyQ29sb3I6ICcjRUUwMDAwJyxcclxuICAgICAgZXJyb3JCb3JkZXJXaWR0aDogJzAuMDk0cmVtJyxcclxuICAgICAgZXJyb3JDb2xvcjogJyM0NDQ0NDQnLFxyXG4gICAgICBjcmVhdGVkRGF0ZTogbnVsbCxcclxuICAgICAgcGFkZGluZzogbnVsbCxcclxuICAgICAgbWFyZ2luOiBudWxsLFxyXG4gICAgICBpc01hc3RlckNzczogbnVsbCxcclxuICAgICAgY29udHJvbE1ldGFJZDpcclxuICAgICAgICAnQUxMX0RQX0RQX0NUUkxfYW1vdW50VGV4dGJveF9taW5pbXVtR3VhcmFudGVlZEFubnVpdHlQYXlvdXRfVjEnLFxyXG4gICAgICBib3JkZXJTdHlsZTogbnVsbCxcclxuICAgICAgaGVpZ2h0OiBudWxsLFxyXG4gICAgICBtaW5IZWlnaHQ6IG51bGwsXHJcbiAgICAgIG1heEhlaWdodDogbnVsbCxcclxuICAgICAgbWluV2lkdGg6IG51bGwsXHJcbiAgICAgIG1heFdpZHRoOiBudWxsLFxyXG4gICAgICBjc3NDbGFzczogbnVsbCxcclxuICAgIH0sXHJcbiAgICBmaWVsZE5hbWU6ICdtaW5pbXVtR3VhcmFudGVlZEFubnVpdHlQYXlvdXQnLFxyXG4gICAgbGFiZWw6ICdNaW5pbXVtIEd1YXJhbnRlZWQgQW5udWl0eSBQYXlvdXQnLFxyXG4gICAgcGxhY2VIb2xkZXI6ICdFbnRlciBBbm51aXR5IFBheW91dCcsXHJcbiAgICBtZXRhSWQ6ICdBTExfRFBfRFBfQ1RSTF9hbW91bnRUZXh0Ym94X21pbmltdW1HdWFyYW50ZWVkQW5udWl0eVBheW91dF9WMScsXHJcbiAgICBpc1Zpc2libGU6IHRydWUsXHJcbiAgICBpc0Rpc2FibGU6IHRydWUsXHJcbiAgICBkZWZhdWx0VmFsdWU6IG51bGwsXHJcbiAgICB2YWxpZGF0b3JzOiB7XHJcbiAgICAgIGlzUmVxdWlyZWQ6IGZhbHNlLFxyXG4gICAgICByZXF1aXJlZE1lc3NhZ2U6ICdFbnRlciBBbm51aXR5IFBheW91dCcsXHJcbiAgICAgIG1pbkxlbmd0aDogNCxcclxuICAgICAgbWluTGVuZ3RoTWVzc2FnZTogbnVsbCxcclxuICAgICAgbWF4TGVuZ3RoOiAxMCxcclxuICAgICAgbWF4TGVuZ3RoTWVzc2FnZTogbnVsbCxcclxuICAgICAgcGF0dGVybjogbnVsbCxcclxuICAgICAgcGF0dGVybk1lc3NhZ2U6IG51bGwsXHJcbiAgICB9LFxyXG4gICAgb3B0aW9uczogW1xyXG4gICAgICB7XHJcbiAgICAgICAgdmFsdWU6ICdNb250aGx5JyxcclxuICAgICAgICBsYWJlbDogJ01vbnRobHknLFxyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgdmFsdWU6ICdPbmUgVGltZScsXHJcbiAgICAgICAgbGFiZWw6ICdPbmUgVGltZScsXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICB2YWx1ZTogJ1F1YXJ0ZXJseScsXHJcbiAgICAgICAgbGFiZWw6ICdRdWFydGVybHknLFxyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgdmFsdWU6ICdIYWxmIFllYXJseScsXHJcbiAgICAgICAgbGFiZWw6ICdIYWxmIFllYXJseScsXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICB2YWx1ZTogJ1llYXJseScsXHJcbiAgICAgICAgbGFiZWw6ICdZZWFybHknLFxyXG4gICAgICB9LFxyXG4gICAgXSxcclxuICAgIGNzc0NsYXNzOlxyXG4gICAgICAnIGNvbC1zbS0xMiBjb2wtbWQtMyBjb2wtbGctMyBjb2wteGwtMyBweS0wIHBsLTMgbXQtMSBwci0wIG1pbmltdW1HdWFyYW50ZWVkQW5udWl0eVBheW91dCcsXHJcbiAgICB2YWx1ZTogbnVsbCxcclxuICAgIHN0eWxlOiBudWxsLFxyXG4gICAgaW1hZ2VVcmw6IG51bGwsXHJcbiAgICBjb25maWdEYXRhOiB7XHJcbiAgICAgIGlzQ29tbWFBbGxvd2VkOiB0cnVlLFxyXG4gICAgfSxcclxuICAgIG1ldGFEYXRhT2JqOiBudWxsLFxyXG4gICAgaXNTaG93TGFiZWw6IHRydWUsXHJcbiAgICBpc01hc3RlckNvbnRyb2w6IGZhbHNlLFxyXG4gICAgY29udHJvbFR5cGU6ICdhbW91bnRUZXh0Ym94JyxcclxuICB9O1xyXG5cclxuICBlbmFibGVBdXRvRGViaXRPYmo6IGFueSA9IHtcclxuICAgIGNvbnRyb2xUeXBlOiAndG9nZ2xlJyxcclxuICAgIGZpZWxkTmFtZTogJ2F1dG9EZWJpdCcsXHJcbiAgICBsYWJlbDogJ0VuYWJsZSBBdXRvIFBheSB0byBnZXQgaGlnaGVyIGFubnVpdHkgcmF0ZScsXHJcbiAgICBwbGFjZUhvbGRlcjogJycsXHJcbiAgICBtZXRhSWQ6ICdBTExfQ09NX0dFTl9DVFJMX3RvZ2dsZV9hdXRvRGViaXRfVjEnLFxyXG4gICAgaXNWaXNpYmxlOiB0cnVlLFxyXG4gICAgaXNEaXNhYmxlOiBmYWxzZSxcclxuICAgIHZhbGlkYXRvcnM6IHtcclxuICAgICAgaXNSZXF1aXJlZDogZmFsc2UsXHJcbiAgICAgIHJlcXVpcmVkTWVzc2FnZTogJ1RoaXMgZmllbGQgY2Fubm90IGJlIGVtcHR5JyxcclxuICAgICAgbWluTGVuZ3RoOiBudWxsLFxyXG4gICAgICBtaW5MZW5ndGhNZXNzYWdlOiBudWxsLFxyXG4gICAgICBtYXhMZW5ndGg6IG51bGwsXHJcbiAgICAgIG1heExlbmd0aE1lc3NhZ2U6IG51bGwsXHJcbiAgICAgIHBhdHRlcm46IG51bGwsXHJcbiAgICAgIHBhdHRlcm5NZXNzYWdlOiAnJyxcclxuICAgIH0sXHJcbiAgICBvcHRpb25zOiBudWxsLFxyXG4gICAgY3NzQ2xhc3M6ICdjb2wtc20tMTIgY29sLW1kLTUgY29sLWxnLTUgY29sLXhsLTUgbXQtNCBhdXRvUGF5JyxcclxuICAgIHZhbHVlOiBmYWxzZSxcclxuICAgIHN0eWxlOiBudWxsLFxyXG4gICAgaW1hZ2VVcmw6IG51bGwsXHJcbiAgICBpc1Nob3dMYWJlbDogdHJ1ZSxcclxuICAgIGNvbnRyb2xTdHlsZToge1xyXG4gICAgICBjb250cm9sVHlwZTogJ3RvZ2dsZScsXHJcbiAgICAgIGJvcmRlckNvbG9yOiBudWxsLFxyXG4gICAgICBib3JkZXJXaWR0aDogJzAuMDk0cmVtJyxcclxuICAgICAgYm9yZGVyUmFkaXVzOiBudWxsLFxyXG4gICAgICBmb250U2l6ZTogJzEycHgnLFxyXG4gICAgICBmb250V2VpZ2h0OiAnNDAwJyxcclxuICAgICAgZm9udEZhbWlseTogJ011bGlzaCcsXHJcbiAgICAgIGNvbG9yOiAnIzQ0NDQ0NCcsXHJcbiAgICAgIGJhY2tncm91bmQ6ICcjRTZGN0YzJyxcclxuICAgICAgY2FyZXRDb2xvcjogbnVsbCxcclxuICAgICAgbnVkZ2VEaXNwbGF5SW1hZ2U6IG51bGwsXHJcbiAgICAgIGRyb3Bkb3duT3B0aW9uQmdDb2xvcjogbnVsbCxcclxuICAgICAgZHJvcGRvd25PcHRpb25Db2xvcjogbnVsbCxcclxuICAgICAgZHJvcGRvd25PcHRpb25Gb250V2VpZ2h0OiBudWxsLFxyXG4gICAgICB3aWR0aDogbnVsbCxcclxuICAgICAgZm9jdXNCb3JkZXJXaWR0aDogJzAuMDk0cmVtJyxcclxuICAgICAgZm9jdXNCb3JkZXJDb2xvcjogbnVsbCxcclxuICAgICAgZm9jdXNCYWNrZ3JvdW5kOiBudWxsLFxyXG4gICAgICBmb2N1c0NvbG9yOiBudWxsLFxyXG4gICAgICBmb2N1c0Ryb3Bkb3duT3B0aW9uQmdDb2xvcjogbnVsbCxcclxuICAgICAgZm9jdXNEcm9wZG93bk9wdGlvbkNvbG9yOiBudWxsLFxyXG4gICAgICBmb2N1c0Ryb3Bkb3duT3B0aW9uRm9udFdlaWdodDogbnVsbCxcclxuICAgICAgZm9jdXNEcm9wZG93bk9wdGlvbkJvcmRlckxlZnQ6IG51bGwsXHJcbiAgICAgIGZvY3VzRHJvcGRvd25PcHRpb25Cb3JkZXJSYWRpdXM6IG51bGwsXHJcbiAgICAgIGhvdmVyQm9yZGVyQ29sb3I6IG51bGwsXHJcbiAgICAgIGhvdmVyQm9yZGVyV2lkdGg6ICcwLjA5NHJlbScsXHJcbiAgICAgIGhvdmVyQ29sb3I6IG51bGwsXHJcbiAgICAgIGRpc2FibGVDb2xvcjogJyNFQ0VDRUMnLFxyXG4gICAgICBkaXNhYmxlQmFja2dyb3VuZDogJyNFQ0VDRUMnLFxyXG4gICAgICBlcnJvckJvcmRlckNvbG9yOiBudWxsLFxyXG4gICAgICBlcnJvckJvcmRlcldpZHRoOiAnMC4wOTRyZW0nLFxyXG4gICAgICBlcnJvckNvbG9yOiBudWxsLFxyXG4gICAgICBjcmVhdGVkRGF0ZTogbnVsbCxcclxuICAgICAgcGFkZGluZzogbnVsbCxcclxuICAgICAgbWFyZ2luOiBudWxsLFxyXG4gICAgICBpc01hc3RlckNzczogbnVsbCxcclxuICAgICAgY29udHJvbE1ldGFJZDogJ0FMTF9DT01fR0VOX0NUUkxfdG9nZ2xlX21haWxpbmdBZGRyZXNzVG9nZ2xlX1YxJyxcclxuICAgICAgYm9yZGVyU3R5bGU6IG51bGwsXHJcbiAgICAgIGhlaWdodDogbnVsbCxcclxuICAgICAgbWluSGVpZ2h0OiBudWxsLFxyXG4gICAgICBtYXhIZWlnaHQ6IG51bGwsXHJcbiAgICAgIG1pbldpZHRoOiBudWxsLFxyXG4gICAgICBtYXhXaWR0aDogbnVsbCxcclxuICAgICAgY3NzQ2xhc3M6IG51bGwsXHJcbiAgICB9LFxyXG4gICAgY29sdW1uSW5kZXg6IDAsXHJcbiAgICBjb25maWdEYXRhOiB7fSxcclxuICAgIGNvbnRyb2xTdHlsZXM6IG51bGwsXHJcbiAgfTtcclxuXHJcbiAgcmVjYWxjdWxhdGVCdXR0b246IGFueSA9IHtcclxuICAgIGNvbnRyb2xUeXBlOiAnYnV0dG9uJyxcclxuICAgIGZpZWxkTmFtZTogJ2NhbGN1bGF0ZUFubnVpdHlQYXlvdXQnLFxyXG4gICAgbGFiZWw6ICdDYWxjdWxhdGUgQW5udWl0eSBQYXlvdXQnLFxyXG4gICAgcGxhY2VIb2xkZXI6IG51bGwsXHJcbiAgICBtZXRhSWQ6ICdMSV9EUF9HRU5fQ1RSTF9idXR0b25fY2FsY3VsYXRlQW5udWl0eVBheW91dF9WMScsXHJcbiAgICBpc1Zpc2libGU6IHRydWUsXHJcbiAgICBpc0Rpc2FibGU6IGZhbHNlLFxyXG4gICAgdmFsaWRhdG9yczoge1xyXG4gICAgICBpc1JlcXVpcmVkOiBmYWxzZSxcclxuICAgICAgcmVxdWlyZWRNZXNzYWdlOiAnVGhpcyBmaWVsZCBjYW5ub3QgYmUgZW1wdHknLFxyXG4gICAgICBtaW5MZW5ndGg6IG51bGwsXHJcbiAgICAgIG1pbkxlbmd0aE1lc3NhZ2U6IG51bGwsXHJcbiAgICAgIG1heExlbmd0aDogbnVsbCxcclxuICAgICAgbWF4TGVuZ3RoTWVzc2FnZTogbnVsbCxcclxuICAgICAgcGF0dGVybjogbnVsbCxcclxuICAgICAgcGF0dGVybk1lc3NhZ2U6ICcnLFxyXG4gICAgfSxcclxuICAgIG9wdGlvbnM6IG51bGwsXHJcbiAgICBjc3NDbGFzczogJyBjb2wtc20tMTIgY29sLW1kLTEyIGNvbC1sZy0xMiBjb2wteGwtMTIgbXQtMycsXHJcbiAgICB2YWx1ZTogbnVsbCxcclxuICAgIHN0eWxlOiBudWxsLFxyXG4gICAgaW1hZ2VVcmw6IG51bGwsXHJcbiAgICBpc1Nob3dMYWJlbDogdHJ1ZSxcclxuICAgIGNvbnRyb2xTdHlsZToge1xyXG4gICAgICBjb250cm9sVHlwZTogbnVsbCxcclxuICAgICAgYm9yZGVyQ29sb3I6IG51bGwsXHJcbiAgICAgIGJvcmRlcldpZHRoOiBudWxsLFxyXG4gICAgICBib3JkZXJSYWRpdXM6ICc0cHgnLFxyXG4gICAgICBmb250U2l6ZTogJzEycHgnLFxyXG4gICAgICBmb250V2VpZ2h0OiBudWxsLFxyXG4gICAgICBmb250RmFtaWx5OiBudWxsLFxyXG4gICAgICBjb2xvcjogbnVsbCxcclxuICAgICAgYmFja2dyb3VuZDogJyNGRkJCMDAnLFxyXG4gICAgICBjYXJldENvbG9yOiBudWxsLFxyXG4gICAgICBudWRnZURpc3BsYXlJbWFnZTogbnVsbCxcclxuICAgICAgZHJvcGRvd25PcHRpb25CZ0NvbG9yOiBudWxsLFxyXG4gICAgICBkcm9wZG93bk9wdGlvbkNvbG9yOiBudWxsLFxyXG4gICAgICBkcm9wZG93bk9wdGlvbkZvbnRXZWlnaHQ6IG51bGwsXHJcbiAgICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICAgIGZvY3VzQm9yZGVyV2lkdGg6IG51bGwsXHJcbiAgICAgIGZvY3VzQm9yZGVyQ29sb3I6IG51bGwsXHJcbiAgICAgIGZvY3VzQmFja2dyb3VuZDogbnVsbCxcclxuICAgICAgZm9jdXNDb2xvcjogbnVsbCxcclxuICAgICAgZm9jdXNEcm9wZG93bk9wdGlvbkJnQ29sb3I6IG51bGwsXHJcbiAgICAgIGZvY3VzRHJvcGRvd25PcHRpb25Db2xvcjogbnVsbCxcclxuICAgICAgZm9jdXNEcm9wZG93bk9wdGlvbkZvbnRXZWlnaHQ6IG51bGwsXHJcbiAgICAgIGZvY3VzRHJvcGRvd25PcHRpb25Cb3JkZXJMZWZ0OiBudWxsLFxyXG4gICAgICBmb2N1c0Ryb3Bkb3duT3B0aW9uQm9yZGVyUmFkaXVzOiBudWxsLFxyXG4gICAgICBob3ZlckJvcmRlckNvbG9yOiBudWxsLFxyXG4gICAgICBob3ZlckJvcmRlcldpZHRoOiBudWxsLFxyXG4gICAgICBob3ZlckNvbG9yOiBudWxsLFxyXG4gICAgICBkaXNhYmxlQ29sb3I6IG51bGwsXHJcbiAgICAgIGRpc2FibGVCYWNrZ3JvdW5kOiBudWxsLFxyXG4gICAgICBlcnJvckJvcmRlckNvbG9yOiBudWxsLFxyXG4gICAgICBlcnJvckJvcmRlcldpZHRoOiBudWxsLFxyXG4gICAgICBlcnJvckNvbG9yOiBudWxsLFxyXG4gICAgICBjcmVhdGVkRGF0ZTogbnVsbCxcclxuICAgICAgcGFkZGluZzogbnVsbCxcclxuICAgICAgbWFyZ2luOiBudWxsLFxyXG4gICAgICBpc01hc3RlckNzczogbnVsbCxcclxuICAgICAgY29udHJvbE1ldGFJZDogJ0xJX0RQX0dFTl9DVFJMX2J1dHRvbl9jYWxjdWxhdGVBbm51aXR5UGF5b3V0X1YxJyxcclxuICAgICAgYm9yZGVyU3R5bGU6IG51bGwsXHJcbiAgICAgIGhlaWdodDogbnVsbCxcclxuICAgICAgbWluSGVpZ2h0OiBudWxsLFxyXG4gICAgICBtYXhIZWlnaHQ6IG51bGwsXHJcbiAgICAgIG1pbldpZHRoOiBudWxsLFxyXG4gICAgICBtYXhXaWR0aDogbnVsbCxcclxuICAgICAgY3NzQ2xhc3M6IG51bGwsXHJcbiAgICB9LFxyXG4gICAgY29sdW1uSW5kZXg6IDAsXHJcbiAgICBjb25maWdEYXRhOiB7fSxcclxuICAgIGNvbnRyb2xTdHlsZXM6IG51bGwsXHJcbiAgfTtcclxuXHJcbiAgaW50ZXJjaGFuZ2VCdXR0b25PYmo6IGFueSA9IHtcclxuICAgIGNvbnRyb2xTdHlsZToge1xyXG4gICAgICBjb250cm9sVHlwZTogbnVsbCxcclxuICAgICAgYm9yZGVyQ29sb3I6ICcjREREREREJyxcclxuICAgICAgYm9yZGVyV2lkdGg6ICcwcHgnLFxyXG4gICAgICBib3JkZXJSYWRpdXM6ICc1MCUnLFxyXG4gICAgICBmb250U2l6ZTogbnVsbCxcclxuICAgICAgZm9udFdlaWdodDogbnVsbCxcclxuICAgICAgZm9udEZhbWlseTogbnVsbCxcclxuICAgICAgY29sb3I6IG51bGwsXHJcbiAgICAgIGJhY2tncm91bmQ6IG51bGwsXHJcbiAgICAgIGNhcmV0Q29sb3I6IG51bGwsXHJcbiAgICAgIG51ZGdlRGlzcGxheUltYWdlOiBudWxsLFxyXG4gICAgICBkcm9wZG93bk9wdGlvbkJnQ29sb3I6IG51bGwsXHJcbiAgICAgIGRyb3Bkb3duT3B0aW9uQ29sb3I6IG51bGwsXHJcbiAgICAgIGRyb3Bkb3duT3B0aW9uRm9udFdlaWdodDogbnVsbCxcclxuICAgICAgd2lkdGg6ICcxMDAlJyxcclxuICAgICAgZm9jdXNCb3JkZXJXaWR0aDogbnVsbCxcclxuICAgICAgZm9jdXNCb3JkZXJDb2xvcjogbnVsbCxcclxuICAgICAgZm9jdXNCYWNrZ3JvdW5kOiBudWxsLFxyXG4gICAgICBmb2N1c0NvbG9yOiBudWxsLFxyXG4gICAgICBmb2N1c0Ryb3Bkb3duT3B0aW9uQmdDb2xvcjogbnVsbCxcclxuICAgICAgZm9jdXNEcm9wZG93bk9wdGlvbkNvbG9yOiBudWxsLFxyXG4gICAgICBmb2N1c0Ryb3Bkb3duT3B0aW9uRm9udFdlaWdodDogbnVsbCxcclxuICAgICAgZm9jdXNEcm9wZG93bk9wdGlvbkJvcmRlckxlZnQ6IG51bGwsXHJcbiAgICAgIGZvY3VzRHJvcGRvd25PcHRpb25Cb3JkZXJSYWRpdXM6IG51bGwsXHJcbiAgICAgIGhvdmVyQm9yZGVyQ29sb3I6IG51bGwsXHJcbiAgICAgIGhvdmVyQm9yZGVyV2lkdGg6IG51bGwsXHJcbiAgICAgIGhvdmVyQ29sb3I6IG51bGwsXHJcbiAgICAgIGRpc2FibGVDb2xvcjogbnVsbCxcclxuICAgICAgZGlzYWJsZUJhY2tncm91bmQ6IG51bGwsXHJcbiAgICAgIGVycm9yQm9yZGVyQ29sb3I6IG51bGwsXHJcbiAgICAgIGVycm9yQm9yZGVyV2lkdGg6IG51bGwsXHJcbiAgICAgIGVycm9yQ29sb3I6IG51bGwsXHJcbiAgICAgIGNyZWF0ZWREYXRlOiBudWxsLFxyXG4gICAgICBwYWRkaW5nOiBudWxsLFxyXG4gICAgICBtYXJnaW46IG51bGwsXHJcbiAgICAgIGlzTWFzdGVyQ3NzOiBudWxsLFxyXG4gICAgICBjb250cm9sTWV0YUlkOiBudWxsLFxyXG4gICAgICBib3JkZXJTdHlsZTogbnVsbCxcclxuICAgICAgaGVpZ2h0OiAnMjBweCcsXHJcbiAgICAgIG1pbkhlaWdodDogbnVsbCxcclxuICAgICAgbWF4SGVpZ2h0OiBudWxsLFxyXG4gICAgICBtaW5XaWR0aDogbnVsbCxcclxuICAgICAgbWF4V2lkdGg6IG51bGwsXHJcbiAgICAgIGNzc0NsYXNzOiBudWxsLFxyXG4gICAgfSxcclxuICAgIGZpZWxkTmFtZTogJ2FubnVpdHlJbnRlckNoYW5nZScsXHJcbiAgICBsYWJlbDogJ0FubnVpdHkgSW50ZXJjaGFuZ2UgQnV0dG9uJyxcclxuICAgIHBsYWNlSG9sZGVyOiBudWxsLFxyXG4gICAgbWV0YUlkOiAnQUxMX0NPTV9HRU5fTUNUUkxfZG93bmxvYWRJY29uQnV0dG9uX2FubnVpdHlJbnRlckNoYW5nZV9WMScsXHJcbiAgICBpc1Zpc2libGU6IHRydWUsXHJcbiAgICBpc0Rpc2FibGU6IGZhbHNlLFxyXG4gICAgZGVmYXVsdFZhbHVlOiBudWxsLFxyXG4gICAgdmFsaWRhdG9yczoge1xyXG4gICAgICBpc1JlcXVpcmVkOiBmYWxzZSxcclxuICAgICAgcmVxdWlyZWRNZXNzYWdlOiAnVGhpcyBmaWVsZCBjYW5ub3QgYmUgZW1wdHknLFxyXG4gICAgICBtaW5MZW5ndGg6IG51bGwsXHJcbiAgICAgIG1pbkxlbmd0aE1lc3NhZ2U6IG51bGwsXHJcbiAgICAgIG1heExlbmd0aDogbnVsbCxcclxuICAgICAgbWF4TGVuZ3RoTWVzc2FnZTogbnVsbCxcclxuICAgICAgcGF0dGVybjogbnVsbCxcclxuICAgICAgcGF0dGVybk1lc3NhZ2U6ICcnLFxyXG4gICAgfSxcclxuICAgIG9wdGlvbnM6IFtdLFxyXG4gICAgY3NzQ2xhc3M6IG51bGwsXHJcbiAgICB2YWx1ZTogbnVsbCxcclxuICAgIHN0eWxlOiBudWxsLFxyXG4gICAgaW1hZ2VVcmw6XHJcbiAgICAgICdodHRwczovL2Nkbi5nb2RpZ2l0LmNvbS9kaWdpdFBsdXNBc3NldHMvVHJhbnNpdGlvbi13aXRoLWJvcmRlci1pY29uLnN2ZycsXHJcbiAgICBjb25maWdEYXRhOiB7fSxcclxuICAgIG1ldGFEYXRhT2JqOiBudWxsLFxyXG4gICAgaXNTaG93TGFiZWw6IHRydWUsXHJcbiAgICBpc01hc3RlckNvbnRyb2w6IHRydWUsXHJcbiAgICBjb250cm9sVHlwZTogJ2Rvd25sb2FkSWNvbkJ1dHRvbicsXHJcbiAgfTtcclxuXHJcbiAgZ2VuZXJhdGVTdW1tYXJ5T2JqOiBhbnkgPSB7XHJcbiAgICBjb250cm9sVHlwZTogJ2J1dHRvbicsXHJcbiAgICBmaWVsZE5hbWU6ICdnZW5lcmF0ZVN1bW1hcnknLFxyXG4gICAgbGFiZWw6ICdHZW5lcmF0ZSBTdW1tYXJ5JyxcclxuICAgIHBsYWNlSG9sZGVyOiBudWxsLFxyXG4gICAgbWV0YUlkOiAnTElfRFBfR0VOX0NUUkxfYnV0dG9uX2dlbmVyYXRlU3VtbWFyeV9WMScsXHJcbiAgICBpc1Zpc2libGU6IHRydWUsXHJcbiAgICBpc0Rpc2FibGU6IHRydWUsXHJcbiAgICB2YWxpZGF0b3JzOiB7XHJcbiAgICAgIGlzUmVxdWlyZWQ6IGZhbHNlLFxyXG4gICAgICByZXF1aXJlZE1lc3NhZ2U6ICdUaGlzIGZpZWxkIGNhbm5vdCBiZSBlbXB0eScsXHJcbiAgICAgIG1pbkxlbmd0aDogbnVsbCxcclxuICAgICAgbWluTGVuZ3RoTWVzc2FnZTogbnVsbCxcclxuICAgICAgbWF4TGVuZ3RoOiBudWxsLFxyXG4gICAgICBtYXhMZW5ndGhNZXNzYWdlOiBudWxsLFxyXG4gICAgICBwYXR0ZXJuOiBudWxsLFxyXG4gICAgICBwYXR0ZXJuTWVzc2FnZTogJycsXHJcbiAgICB9LFxyXG4gICAgb3B0aW9uczogbnVsbCxcclxuICAgIGNzc0NsYXNzOiAnIGNvbC1zbS0xMiBjb2wtbWQtMTIgY29sLWxnLTEyIGNvbC14bC0xMiBteS0xIG10LTMnLFxyXG4gICAgdmFsdWU6IG51bGwsXHJcbiAgICBzdHlsZTogbnVsbCxcclxuICAgIGltYWdlVXJsOiBudWxsLFxyXG4gICAgaXNTaG93TGFiZWw6IHRydWUsXHJcbiAgICBjb250cm9sU3R5bGU6IHtcclxuICAgICAgY29udHJvbFR5cGU6IG51bGwsXHJcbiAgICAgIGJvcmRlckNvbG9yOiBudWxsLFxyXG4gICAgICBib3JkZXJXaWR0aDogbnVsbCxcclxuICAgICAgYm9yZGVyUmFkaXVzOiAnNHB4JyxcclxuICAgICAgZm9udFNpemU6ICcxMnB4JyxcclxuICAgICAgZm9udFdlaWdodDogbnVsbCxcclxuICAgICAgZm9udEZhbWlseTogbnVsbCxcclxuICAgICAgY29sb3I6IG51bGwsXHJcbiAgICAgIGJhY2tncm91bmQ6ICcjRkZCQjAwJyxcclxuICAgICAgY2FyZXRDb2xvcjogbnVsbCxcclxuICAgICAgbnVkZ2VEaXNwbGF5SW1hZ2U6IG51bGwsXHJcbiAgICAgIGRyb3Bkb3duT3B0aW9uQmdDb2xvcjogbnVsbCxcclxuICAgICAgZHJvcGRvd25PcHRpb25Db2xvcjogbnVsbCxcclxuICAgICAgZHJvcGRvd25PcHRpb25Gb250V2VpZ2h0OiBudWxsLFxyXG4gICAgICB3aWR0aDogJzEwMCUnLFxyXG4gICAgICBmb2N1c0JvcmRlcldpZHRoOiBudWxsLFxyXG4gICAgICBmb2N1c0JvcmRlckNvbG9yOiBudWxsLFxyXG4gICAgICBmb2N1c0JhY2tncm91bmQ6IG51bGwsXHJcbiAgICAgIGZvY3VzQ29sb3I6IG51bGwsXHJcbiAgICAgIGZvY3VzRHJvcGRvd25PcHRpb25CZ0NvbG9yOiBudWxsLFxyXG4gICAgICBmb2N1c0Ryb3Bkb3duT3B0aW9uQ29sb3I6IG51bGwsXHJcbiAgICAgIGZvY3VzRHJvcGRvd25PcHRpb25Gb250V2VpZ2h0OiBudWxsLFxyXG4gICAgICBmb2N1c0Ryb3Bkb3duT3B0aW9uQm9yZGVyTGVmdDogbnVsbCxcclxuICAgICAgZm9jdXNEcm9wZG93bk9wdGlvbkJvcmRlclJhZGl1czogbnVsbCxcclxuICAgICAgaG92ZXJCb3JkZXJDb2xvcjogbnVsbCxcclxuICAgICAgaG92ZXJCb3JkZXJXaWR0aDogbnVsbCxcclxuICAgICAgaG92ZXJDb2xvcjogbnVsbCxcclxuICAgICAgZGlzYWJsZUNvbG9yOiBudWxsLFxyXG4gICAgICBkaXNhYmxlQmFja2dyb3VuZDogbnVsbCxcclxuICAgICAgZXJyb3JCb3JkZXJDb2xvcjogbnVsbCxcclxuICAgICAgZXJyb3JCb3JkZXJXaWR0aDogbnVsbCxcclxuICAgICAgZXJyb3JDb2xvcjogbnVsbCxcclxuICAgICAgY3JlYXRlZERhdGU6IG51bGwsXHJcbiAgICAgIHBhZGRpbmc6IG51bGwsXHJcbiAgICAgIG1hcmdpbjogbnVsbCxcclxuICAgICAgaXNNYXN0ZXJDc3M6IG51bGwsXHJcbiAgICAgIGNvbnRyb2xNZXRhSWQ6ICdMSV9EUF9HRU5fQ1RSTF9idXR0b25fZ2VuZXJhdGVTdW1tYXJ5X1YxJyxcclxuICAgICAgYm9yZGVyU3R5bGU6IG51bGwsXHJcbiAgICAgIGhlaWdodDogbnVsbCxcclxuICAgICAgbWluSGVpZ2h0OiBudWxsLFxyXG4gICAgICBtYXhIZWlnaHQ6IG51bGwsXHJcbiAgICAgIG1pbldpZHRoOiBudWxsLFxyXG4gICAgICBtYXhXaWR0aDogbnVsbCxcclxuICAgICAgY3NzQ2xhc3M6IG51bGwsXHJcbiAgICB9LFxyXG4gICAgY29sdW1uSW5kZXg6IDAsXHJcbiAgICBjb25maWdEYXRhOiB7fSxcclxuICAgIGNvbnRyb2xTdHlsZXM6IG51bGwsXHJcbiAgfTtcclxuXHJcbiAgY29uc3RydWN0b3IocHVibGljIG1hc3RlclNlcnZpY2UgOiBNYXN0ZXJDb250cm9sU2VydmljZSkge31cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xyXG4gICAgaWYgKCAoY2hhbmdlc1sncHJlbWl1bURldGFpbHMnXSkgJiYgIXRoaXMubWFzdGVyU2VydmljZS5jaGVja0lmVmFsdWVJc0VtcHR5KGNoYW5nZXNbJ3ByZW1pdW1EZXRhaWxzJ10uY3VycmVudFZhbHVlKSApIHtcclxuICAgICAgaWYoIXRoaXMubWFzdGVyU2VydmljZS5jaGVja0lmVmFsdWVJc0VtcHR5KHRoaXMucHJlbWl1bURldGFpbHMoKT8uUHJlbWl1bSkpIHtcclxuICAgICAgICAvLyBDcmVhdGUgbmV3IG9iamVjdCB0byB0cmlnZ2VyIGNoYW5nZSBkZXRlY3Rpb25cclxuICAgICAgICB0aGlzLmFubnVpdHlQcmVtaXVtID0ge1xyXG4gICAgICAgICAgdGV4dFZhbHVlOiB0aGlzLnByZW1pdW1EZXRhaWxzKCk/LlByZW1pdW1bJ3RleHRWYWx1ZSddIHx8IHRoaXMuYW5udWl0eVByZW1pdW0udGV4dFZhbHVlLFxyXG4gICAgICAgICAgc2VsZWN0VmFsdWU6IHRoaXMucHJlbWl1bURldGFpbHMoKT8uUHJlbWl1bVsnc2VsZWN0VmFsdWUnXSB8fCB0aGlzLmFubnVpdHlQcmVtaXVtLnNlbGVjdFZhbHVlXHJcbiAgICAgICAgfTtcclxuXHJcbiAgICAgICAgaWYoT2JqZWN0Lmhhc093bih0aGlzLnByZW1pdW1EZXRhaWxzKCk/LlByZW1pdW0sICdpc0Rpc2FibGUnKSkge1xyXG4gICAgICAgICAgdGhpcy5hbm51aXR5UHJlbWl1bU9ialsnaXNEaXNhYmxlJ10gPSB0aGlzLnByZW1pdW1EZXRhaWxzKCk/LlByZW1pdW1bJ2lzRGlzYWJsZSddO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZihPYmplY3QuaGFzT3duKHRoaXMucHJlbWl1bURldGFpbHMoKT8uUHJlbWl1bSwgJ2lzRGlzYWJsZURyb3Bkb3duJykpIHtcclxuICAgICAgICAgIHRoaXMuYW5udWl0eVByZW1pdW1PYmpbJ2NvbmZpZ0RhdGEnXVsnaXNEaXNhYmxlRHJvcGRvd24nXSA9IHRoaXMucHJlbWl1bURldGFpbHMoKT8uUHJlbWl1bVsnaXNEaXNhYmxlRHJvcGRvd24nXTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmKCF0aGlzLm1hc3RlclNlcnZpY2UuY2hlY2tJZlZhbHVlSXNFbXB0eSh0aGlzLnByZW1pdW1EZXRhaWxzKCk/LmFubnVpdHkpKSB7XHJcbiAgICAgICAgLy8gQ3JlYXRlIG5ldyBvYmplY3QgdG8gdHJpZ2dlciBjaGFuZ2UgZGV0ZWN0aW9uXHJcbiAgICAgICAgdGhpcy5taW51bXVtQW5udWl0eVBheW91dCA9IHtcclxuICAgICAgICAgIHRleHRWYWx1ZTogdGhpcy5wcmVtaXVtRGV0YWlscygpPy5hbm51aXR5Wyd0ZXh0VmFsdWUnXSB8fCB0aGlzLm1pbnVtdW1Bbm51aXR5UGF5b3V0LnRleHRWYWx1ZSxcclxuICAgICAgICAgIHNlbGVjdFZhbHVlOiB0aGlzLnByZW1pdW1EZXRhaWxzKCk/LmFubnVpdHlbJ3NlbGVjdFZhbHVlJ10gfHwgdGhpcy5taW51bXVtQW5udWl0eVBheW91dC5zZWxlY3RWYWx1ZVxyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIGlmKE9iamVjdC5oYXNPd24odGhpcy5wcmVtaXVtRGV0YWlscygpPy5hbm51aXR5LCAnaXNEaXNhYmxlJykpIHtcclxuICAgICAgICAgIHRoaXMubWluaW11bUFubnVpdHlQYXlvdXRPYmpbJ2lzRGlzYWJsZSddID0gdGhpcy5wcmVtaXVtRGV0YWlscygpPy5hbm51aXR5Wydpc0Rpc2FibGUnXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYoT2JqZWN0Lmhhc093bih0aGlzLnByZW1pdW1EZXRhaWxzKCk/LmFubnVpdHksICdpc0Rpc2FibGVEcm9wZG93bicpKSB7XHJcbiAgICAgICAgICB0aGlzLm1pbmltdW1Bbm51aXR5UGF5b3V0T2JqWydjb25maWdEYXRhJ11bJ2lzRGlzYWJsZURyb3Bkb3duJ10gPSB0aGlzLnByZW1pdW1EZXRhaWxzKCk/LmFubnVpdHlbJ2lzRGlzYWJsZURyb3Bkb3duJ107XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBpZighdGhpcy5tYXN0ZXJTZXJ2aWNlLmNoZWNrSWZWYWx1ZUlzRW1wdHkodGhpcy5wcmVtaXVtRGV0YWlscygpPy5jYWxjdWxhdGVBbm51aXR5KSkge1xyXG5cclxuICAgICAgICBpZighdGhpcy5tYXN0ZXJTZXJ2aWNlLmNoZWNrSWZWYWx1ZUlzRW1wdHkodGhpcy5wcmVtaXVtRGV0YWlscygpPy5jYWxjdWxhdGVBbm51aXR5Wydjb250cm9sU3R5bGUnXSkpIHtcclxuICAgICAgICAgIHRoaXMucmVjYWxjdWxhdGVCdXR0b25bJ2NvbnRyb2xTdHlsZSddID0gdGhpcy5wcmVtaXVtRGV0YWlscygpPy5jYWxjdWxhdGVBbm51aXR5Wydjb250cm9sU3R5bGUnXVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYoIXRoaXMubWFzdGVyU2VydmljZS5jaGVja0lmVmFsdWVJc0VtcHR5KHRoaXMucHJlbWl1bURldGFpbHMoKT8uY2FsY3VsYXRlQW5udWl0eVsnbGFiZWwnXSkpIHtcclxuICAgICAgICAgIHRoaXMucmVjYWxjdWxhdGVCdXR0b25bJ2xhYmVsJ10gPSB0aGlzLnByZW1pdW1EZXRhaWxzKCk/LmNhbGN1bGF0ZUFubnVpdHlbJ2xhYmVsJ11cclxuICAgICAgICB9XHJcbiAgICAgICAgaWYoIXRoaXMubWFzdGVyU2VydmljZS5jaGVja0lmVmFsdWVJc0VtcHR5KHRoaXMucHJlbWl1bURldGFpbHMoKT8uY2FsY3VsYXRlQW5udWl0eVsnaXNEaXNhYmxlJ10pKSB7XHJcbiAgICAgICAgICB0aGlzLnJlY2FsY3VsYXRlQnV0dG9uWydpc0Rpc2FibGUnXSA9IHRoaXMucHJlbWl1bURldGFpbHMoKT8uY2FsY3VsYXRlQW5udWl0eVsnaXNEaXNhYmxlJ11cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmKCF0aGlzLm1hc3RlclNlcnZpY2UuY2hlY2tJZlZhbHVlSXNFbXB0eSh0aGlzLnByZW1pdW1EZXRhaWxzKCk/LmdlbmVyYXRlU3VtbWFyeSkpIHtcclxuXHJcbiAgICAgICAgaWYoIXRoaXMubWFzdGVyU2VydmljZS5jaGVja0lmVmFsdWVJc0VtcHR5KHRoaXMucHJlbWl1bURldGFpbHMoKT8uZ2VuZXJhdGVTdW1tYXJ5Wydjb250cm9sU3R5bGUnXSkpIHtcclxuICAgICAgICAgIHRoaXMuZ2VuZXJhdGVTdW1tYXJ5T2JqWydjb250cm9sU3R5bGUnXSA9IHRoaXMucHJlbWl1bURldGFpbHMoKT8uZ2VuZXJhdGVTdW1tYXJ5Wydjb250cm9sU3R5bGUnXTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmKCF0aGlzLm1hc3RlclNlcnZpY2UuY2hlY2tJZlZhbHVlSXNFbXB0eSh0aGlzLnByZW1pdW1EZXRhaWxzKCk/LmdlbmVyYXRlU3VtbWFyeVsnbGFiZWwnXSkpIHtcclxuICAgICAgICAgIHRoaXMuZ2VuZXJhdGVTdW1tYXJ5T2JqWydsYWJlbCddID0gdGhpcy5wcmVtaXVtRGV0YWlscygpPy5nZW5lcmF0ZVN1bW1hcnlbJ2xhYmVsJ107XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmKCF0aGlzLm1hc3RlclNlcnZpY2UuY2hlY2tJZlZhbHVlSXNFbXB0eSh0aGlzLnByZW1pdW1EZXRhaWxzKCk/LmdlbmVyYXRlU3VtbWFyeVsnaXNEaXNhYmxlJ10pKSB7XHJcbiAgICAgICAgICB0aGlzLmdlbmVyYXRlU3VtbWFyeU9ialsnaXNEaXNhYmxlJ10gPSB0aGlzLnByZW1pdW1EZXRhaWxzKCk/LmdlbmVyYXRlU3VtbWFyeVsnaXNEaXNhYmxlJ11cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjYWxjdWxhdGVCdXR0b25DbGlja2VkKCkge1xyXG4gICAgdGhpcy52YWxpZGF0aW9ucy5pc3ByZW1pdW1FbnRyeSA9IGZhbHNlO1xyXG4gICAgaWYodGhpcy5tYXN0ZXJTZXJ2aWNlLmNoZWNrSWZWYWx1ZUlzRW1wdHkodGhpcy5hbm51aXR5UHJlbWl1bVsndGV4dFZhbHVlJ10pKSB7XHJcbiAgICAgIHRoaXMudmFsaWRhdGlvbnMuaXNwcmVtaXVtRW50cnkgPSB0cnVlO1xyXG4gICAgfVxyXG4gICAgdGhpcy5vbkNhbGN1YWx0ZUJ1dHRvbkNsaWNrLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIGdlbmVyYXRlU3VtbWFyeUNsaWNrZWQoKSB7XHJcbiAgICB0aGlzLm9uR2VuZXJhdGVTdW1tYXJ5Q2xpY2suZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgb25Bbm51aXR5UHJlbWl1bVZhbHVlQ2hhbmdlKHZhbHVlOiBhbnkpIHtcclxuICAgIHRoaXMuYW5udWl0eVByZW1pdW0gPSB2YWx1ZTtcclxuICAgIHRoaXMudmFsaWRhdGlvbnMuaXNwcmVtaXVtRW50cnkgPSBmYWxzZTtcclxuICAgIGlmKHRoaXMubWFzdGVyU2VydmljZS5jaGVja0lmVmFsdWVJc0VtcHR5KHRoaXMuYW5udWl0eVByZW1pdW1bJ3RleHRWYWx1ZSddKSkge1xyXG4gICAgICB0aGlzLnZhbGlkYXRpb25zLmlzcHJlbWl1bUVudHJ5ID0gdHJ1ZTtcclxuICAgIH1cclxuICAgIHRoaXMub25Bbm51aXR5UHJlbWl1bUNoYW5nZS5lbWl0KHZhbHVlKTtcclxuICB9XHJcblxyXG4gIGFubnVhbEluY29tZWZvY3VzT3V0KCkge1xyXG4gICAgdGhpcy52YWxpZGF0aW9ucy5pc3ByZW1pdW1FbnRyeSA9IGZhbHNlO1xyXG4gICAgaWYodGhpcy5tYXN0ZXJTZXJ2aWNlLmNoZWNrSWZWYWx1ZUlzRW1wdHkodGhpcy5hbm51aXR5UHJlbWl1bVsndGV4dFZhbHVlJ10pKSB7XHJcbiAgICAgIHRoaXMudmFsaWRhdGlvbnMuaXNwcmVtaXVtRW50cnkgPSB0cnVlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiY2FyZCBweC0zXCIgc3R5bGU9XCJwYWRkaW5nOiAxNnB4O1wiPlxyXG4gIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgIDxoNCBjbGFzcz1cImNhcmQtbWFpbi10aXRsZVwiPjxzcGFuIHN0eWxlPVwibWFyZ2luLXJpZ2h0OiAxMnB4O1wiPjxpbWcgc3JjPVwiaHR0cHM6Ly9jZG4uZ29kaWdpdC5jb20vcmV0YWlsLWxpZmUvY2FsY3VsYXRvci5zdmdcIiBhbHQ9XCJhbm51aXR5IGNhbGN1bGF0b3JcIj48L3NwYW4+SGVyZSdzIHlvdXIgUHJlbWl1bSB0byBBbm51aXR5IENhbGN1bGF0b3I8L2g0PlxyXG4gIDwvZGl2PlxyXG4gIDwhLS0gPGRpdiBjbGFzcz1cInJvd1wiPiAtLT5cclxuICA8ZGl2IGNsYXNzPVwiY2FyZCBwYi00IHB4LTRcIiBzdHlsZT1cImJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDBweDsgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDBweDtcIj5cclxuICAgIDwhLS0gPGRpdiBjbGFzcz1cImN1c3RvbS1ncmlkLXRlbXBsYXRlXCI+XHJcblxyXG4gICAgPC9kaXY+IC0tPlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJyb3cgbXgtYXV0b1wiIHN0eWxlPVwidHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCAtNTglKTtcIj5cclxuICAgICAgPGxpYi10b2dnbGUgY2xhc3M9XCJjb2wtYXV0b1wiIFtmaWVsZF09XCJhbm51aXR5UHJlbWl1bVRvZ2dsZU9ialwiIC8+XHJcbiAgICA8L2Rpdj5cclxuICAgIDwhLS0gPC9kaXY+IC0tPlxyXG4gICAgPGRpdiBjbGFzcz1cImN1c3RvbS1ncmlkLXRlbXBsYXRlXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW5cIj5cclxuICAgICAgICA8bGliLXNlbGVjdC10ZXh0Ym94IFtmaWVsZF09XCJhbm51aXR5UHJlbWl1bU9ialwiIFsobmdNb2RlbCldPVwiYW5udWl0eVByZW1pdW1cIiAobmdNb2RlbENoYW5nZSk9XCJvbkFubnVpdHlQcmVtaXVtVmFsdWVDaGFuZ2UoJGV2ZW50KVwiIC8+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImVycm9yLW1lc3NhZ2VcIiAqbmdJZj1cInZhbGlkYXRpb25zLmlzcHJlbWl1bUVudHJ5XCI+XHJcbiAgICAgICAgICBFbnRlciBQcmVtaXVtXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibXQtMyBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIiBzdHlsZT1cImRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCA2cHgpO1wiPlxyXG4gICAgICAgIDxsaWItaWNvbi1idXR0b24gW2ZpZWxkXT1cImludGVyY2hhbmdlQnV0dG9uT2JqXCIgLz5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW5cIj5cclxuICAgICAgICA8bGliLXNlbGVjdC10ZXh0Ym94IFtmaWVsZF09XCJtaW5pbXVtQW5udWl0eVBheW91dE9ialwiIFsobmdNb2RlbCldPVwibWludW11bUFubnVpdHlQYXlvdXRcIiAvPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPCEtLSA8ZGl2IGNsYXNzPVwidmVydGljYWwtbGluZVwiPjwvZGl2PiAtLT5cclxuICAgIDxkaXYgY2xhc3M9XCJjdXN0b20tZ3JpZC10ZW1wbGF0ZVwiPlxyXG4gICAgICA8ZGl2PlxyXG4gICAgICAgIDxsaWItdG9nZ2xlIFtmaWVsZF09XCJlbmFibGVBdXRvRGViaXRPYmpcIiAvPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICA8L2Rpdj5cclxuXHJcblxyXG4gIDxkaXYgY2xhc3M9XCJjYXJkIHB5LTMgbWItNCBib3JkZXItdG9wLTBcIiBzdHlsZT1cImJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDBweDsgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDBweDtcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJteC00XCI+XHJcbiAgICAgIDxsaWItYnV0dG9uIFtmaWVsZF09XCJyZWNhbGN1bGF0ZUJ1dHRvblwiIChjbGljayk9XCJjYWxjdWxhdGVCdXR0b25DbGlja2VkKClcIiAvPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXY+XHJcbiAgICA8bGliLWJ1dHRvbiBbZmllbGRdPVwiZ2VuZXJhdGVTdW1tYXJ5T2JqXCIgKGNsaWNrKT1cImdlbmVyYXRlU3VtbWFyeUNsaWNrZWQoKVwiIC8+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -9,10 +9,10 @@ export class FooterDesignComponent {
9
9
  this.progress = Math.min(100, Math.max(0, value));
10
10
  }
11
11
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FooterDesignComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: FooterDesignComponent, isStandalone: true, selector: "lib-footer-design", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<div class=\"progress-container\" *ngIf=\"field() && field()?.isVisible\">\r\n <div class=\"circular-progress-wrapper\">\r\n <div class=\"circular-progress\"\r\n [style.--progress]=\"field()?.configData?.Progressbar\"\r\n [class.medium-progress]=\"field()?.configData?.Progressbar >= 25 && field()?.configData?.Progressbar < 50\"\r\n [class.high-progress]=\"field()?.configData?.Progressbar >= 50\">\r\n <div class=\"progress-value\">{{ field()?.configData?.Progressbar }}%</div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"text-content\">\r\n <p class=\"sub-heading\" [innerHTML]=\"field()?.configData?.Progressbarmsg\"></p>\r\n <h2 class=\"main-heading\">{{ field()?.configData?.QuoteNumber }}</h2>\r\n <h2 class=\"main-heading1\">{{ field()?.configData?.GrossPremium }}</h2>\r\n </div>\r\n</div>\r\n", styles: [".progress-container{display:flex;align-items:center;padding:20px}.circular-progress-wrapper{position:relative;width:80px;height:80px}.circular-progress{width:70px;height:70px;border-radius:50%;background:conic-gradient(#ff5252 0% calc(var(--progress) * 1%),#e0e0e0 calc(var(--progress) * 1%) 100%);display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 4px 10px #0000001a}.circular-progress.medium-progress{background:conic-gradient(#ffc107 0% calc(var(--progress) * 1%),#e0e0e0 calc(var(--progress) * 1%) 100%)}.circular-progress.high-progress{background:conic-gradient(#4caf50 0% calc(var(--progress) * 1%),#e0e0e0 calc(var(--progress) * 1%) 100%)}.circular-progress:before{content:\"\";position:absolute;width:60px;height:60px;border-radius:50%;background:#fff}.progress-value{position:relative;z-index:1;font-size:18px;font-weight:700;color:#333}.text-content{display:flex;flex-direction:column;gap:4px;height:60px;justify-content:center}.sub-heading{margin:0;font-size:8px;color:#666;font-weight:400;letter-spacing:.5px;line-height:1.2}.sub-heading strong{font-weight:700;color:#333}.main-heading,.main-heading1{margin:0;font-size:12px;color:#333;font-weight:600;line-height:1.3}.quote-value{font-weight:400}@media (max-width: 768px){.progress-container{flex-direction:column;align-items:flex-start;gap:20px}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
12
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: FooterDesignComponent, isStandalone: true, selector: "lib-footer-design", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<div class=\"progress-container\" *ngIf=\"field() && field()?.isVisible\">\r\n <div class=\"circular-progress-wrapper\">\r\n <div class=\"circular-progress\"\r\n [style.--progress]=\"field()?.configData?.Progressbar\"\r\n [class.medium-progress]=\"field()?.configData?.Progressbar >= 25 && field()?.configData?.Progressbar < 50\"\r\n [class.high-progress]=\"field()?.configData?.Progressbar >= 50\">\r\n <div class=\"progress-value\">{{ field()?.configData?.Progressbar }}%</div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"text-content\">\r\n <h2 class=\"main-heading\" [innerHTML]=\"field()?.configData?.Progressbarmsg\"></h2>\r\n <h2 class=\"main-heading1\">{{ field()?.configData?.GrossPremium }}</h2>\r\n </div>\r\n</div>\r\n", styles: [".progress-container{display:flex;align-items:center;gap:12px;height:48px;width:auto;box-sizing:border-box}.circular-progress-wrapper{position:relative;width:48px;height:48px;flex-shrink:0}.circular-progress{width:55px;height:55px;border-radius:50%;background:conic-gradient(#ff5252 0% calc(var(--progress) * 1%),#ececec calc(var(--progress) * 1%) 100%);display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 4px 10px #0000001a}.circular-progress.medium-progress{background:conic-gradient(#fb0 0% calc(var(--progress) * 1%),#e0e0e0 calc(var(--progress) * 1%) 100%)}.circular-progress.high-progress{background:conic-gradient(#4caf50 0% calc(var(--progress) * 1%),#e0e0e0 calc(var(--progress) * 1%) 100%)}.circular-progress:before{content:\"\";position:absolute;width:48px;height:48px;border-radius:50%;background:#ececec}.progress-value{position:relative;z-index:1;font-size:10px;font-weight:700;color:#444}.text-content{display:flex;flex-direction:column;height:48px;justify-content:center;margin-left:7px;row-gap:5px}.main-heading,.main-heading1{margin:0;font-size:10px;color:#222;font-weight:400;line-height:14px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
13
13
  }
14
14
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FooterDesignComponent, decorators: [{
15
15
  type: Component,
16
- args: [{ selector: 'lib-footer-design', standalone: true, imports: [CommonModule], template: "<div class=\"progress-container\" *ngIf=\"field() && field()?.isVisible\">\r\n <div class=\"circular-progress-wrapper\">\r\n <div class=\"circular-progress\"\r\n [style.--progress]=\"field()?.configData?.Progressbar\"\r\n [class.medium-progress]=\"field()?.configData?.Progressbar >= 25 && field()?.configData?.Progressbar < 50\"\r\n [class.high-progress]=\"field()?.configData?.Progressbar >= 50\">\r\n <div class=\"progress-value\">{{ field()?.configData?.Progressbar }}%</div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"text-content\">\r\n <p class=\"sub-heading\" [innerHTML]=\"field()?.configData?.Progressbarmsg\"></p>\r\n <h2 class=\"main-heading\">{{ field()?.configData?.QuoteNumber }}</h2>\r\n <h2 class=\"main-heading1\">{{ field()?.configData?.GrossPremium }}</h2>\r\n </div>\r\n</div>\r\n", styles: [".progress-container{display:flex;align-items:center;padding:20px}.circular-progress-wrapper{position:relative;width:80px;height:80px}.circular-progress{width:70px;height:70px;border-radius:50%;background:conic-gradient(#ff5252 0% calc(var(--progress) * 1%),#e0e0e0 calc(var(--progress) * 1%) 100%);display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 4px 10px #0000001a}.circular-progress.medium-progress{background:conic-gradient(#ffc107 0% calc(var(--progress) * 1%),#e0e0e0 calc(var(--progress) * 1%) 100%)}.circular-progress.high-progress{background:conic-gradient(#4caf50 0% calc(var(--progress) * 1%),#e0e0e0 calc(var(--progress) * 1%) 100%)}.circular-progress:before{content:\"\";position:absolute;width:60px;height:60px;border-radius:50%;background:#fff}.progress-value{position:relative;z-index:1;font-size:18px;font-weight:700;color:#333}.text-content{display:flex;flex-direction:column;gap:4px;height:60px;justify-content:center}.sub-heading{margin:0;font-size:8px;color:#666;font-weight:400;letter-spacing:.5px;line-height:1.2}.sub-heading strong{font-weight:700;color:#333}.main-heading,.main-heading1{margin:0;font-size:12px;color:#333;font-weight:600;line-height:1.3}.quote-value{font-weight:400}@media (max-width: 768px){.progress-container{flex-direction:column;align-items:flex-start;gap:20px}}\n"] }]
16
+ args: [{ selector: 'lib-footer-design', standalone: true, imports: [CommonModule], template: "<div class=\"progress-container\" *ngIf=\"field() && field()?.isVisible\">\r\n <div class=\"circular-progress-wrapper\">\r\n <div class=\"circular-progress\"\r\n [style.--progress]=\"field()?.configData?.Progressbar\"\r\n [class.medium-progress]=\"field()?.configData?.Progressbar >= 25 && field()?.configData?.Progressbar < 50\"\r\n [class.high-progress]=\"field()?.configData?.Progressbar >= 50\">\r\n <div class=\"progress-value\">{{ field()?.configData?.Progressbar }}%</div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"text-content\">\r\n <h2 class=\"main-heading\" [innerHTML]=\"field()?.configData?.Progressbarmsg\"></h2>\r\n <h2 class=\"main-heading1\">{{ field()?.configData?.GrossPremium }}</h2>\r\n </div>\r\n</div>\r\n", styles: [".progress-container{display:flex;align-items:center;gap:12px;height:48px;width:auto;box-sizing:border-box}.circular-progress-wrapper{position:relative;width:48px;height:48px;flex-shrink:0}.circular-progress{width:55px;height:55px;border-radius:50%;background:conic-gradient(#ff5252 0% calc(var(--progress) * 1%),#ececec calc(var(--progress) * 1%) 100%);display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 4px 10px #0000001a}.circular-progress.medium-progress{background:conic-gradient(#fb0 0% calc(var(--progress) * 1%),#e0e0e0 calc(var(--progress) * 1%) 100%)}.circular-progress.high-progress{background:conic-gradient(#4caf50 0% calc(var(--progress) * 1%),#e0e0e0 calc(var(--progress) * 1%) 100%)}.circular-progress:before{content:\"\";position:absolute;width:48px;height:48px;border-radius:50%;background:#ececec}.progress-value{position:relative;z-index:1;font-size:10px;font-weight:700;color:#444}.text-content{display:flex;flex-direction:column;height:48px;justify-content:center;margin-left:7px;row-gap:5px}.main-heading,.main-heading1{margin:0;font-size:10px;color:#222;font-weight:400;line-height:14px}\n"] }]
17
17
  }] });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLWRlc2lnbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL2Zvb3Rlci1kZXNpZ24vZm9vdGVyLWRlc2lnbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL2Zvb3Rlci1kZXNpZ24vZm9vdGVyLWRlc2lnbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQVNqRCxNQUFNLE9BQU8scUJBQXFCO0lBQ2hDLEtBQUssR0FBUyxLQUFLLENBQUMsUUFBUSxFQUFPLENBQUM7SUFDcEMsUUFBUSxHQUFXLEVBQUUsQ0FBQztJQUN0QixjQUFjLENBQUMsS0FBYTtRQUMxQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDcEQsQ0FBQzt3R0FMVSxxQkFBcUI7NEZBQXJCLHFCQUFxQixnTkNWbEMsbTFCQWdCQSw0M0NEVlksWUFBWTs7NEZBSVgscUJBQXFCO2tCQVBqQyxTQUFTOytCQUNFLG1CQUFtQixjQUNqQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1mb290ZXItZGVzaWduJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9mb290ZXItZGVzaWduLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vZm9vdGVyLWRlc2lnbi5jb21wb25lbnQuY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgRm9vdGVyRGVzaWduQ29tcG9uZW50IHtcclxuICBmaWVsZCA6IGFueSA9IGlucHV0LnJlcXVpcmVkPGFueT4oKTtcclxuICBwcm9ncmVzczogbnVtYmVyID0gOTU7XHJcbiAgdXBkYXRlUHJvZ3Jlc3ModmFsdWU6IG51bWJlcikge1xyXG4gICAgdGhpcy5wcm9ncmVzcyA9IE1hdGgubWluKDEwMCwgTWF0aC5tYXgoMCwgdmFsdWUpKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInByb2dyZXNzLWNvbnRhaW5lclwiICpuZ0lmPVwiZmllbGQoKSAmJiBmaWVsZCgpPy5pc1Zpc2libGVcIj5cclxuICA8ZGl2IGNsYXNzPVwiY2lyY3VsYXItcHJvZ3Jlc3Mtd3JhcHBlclwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNpcmN1bGFyLXByb2dyZXNzXCJcclxuICAgICAgICAgW3N0eWxlLi0tcHJvZ3Jlc3NdPVwiZmllbGQoKT8uY29uZmlnRGF0YT8uUHJvZ3Jlc3NiYXJcIlxyXG4gICAgICAgICBbY2xhc3MubWVkaXVtLXByb2dyZXNzXT1cImZpZWxkKCk/LmNvbmZpZ0RhdGE/LlByb2dyZXNzYmFyID49IDI1ICYmIGZpZWxkKCk/LmNvbmZpZ0RhdGE/LlByb2dyZXNzYmFyIDwgNTBcIlxyXG4gICAgICAgICBbY2xhc3MuaGlnaC1wcm9ncmVzc109XCJmaWVsZCgpPy5jb25maWdEYXRhPy5Qcm9ncmVzc2JhciA+PSA1MFwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwicHJvZ3Jlc3MtdmFsdWVcIj57eyBmaWVsZCgpPy5jb25maWdEYXRhPy5Qcm9ncmVzc2JhciB9fSU8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2IGNsYXNzPVwidGV4dC1jb250ZW50XCI+XHJcbiAgICA8cCBjbGFzcz1cInN1Yi1oZWFkaW5nXCIgW2lubmVySFRNTF09XCJmaWVsZCgpPy5jb25maWdEYXRhPy5Qcm9ncmVzc2Jhcm1zZ1wiPjwvcD5cclxuICAgIDxoMiBjbGFzcz1cIm1haW4taGVhZGluZ1wiPnt7IGZpZWxkKCk/LmNvbmZpZ0RhdGE/LlF1b3RlTnVtYmVyIH19PC9oMj5cclxuICAgIDxoMiBjbGFzcz1cIm1haW4taGVhZGluZzFcIj57eyBmaWVsZCgpPy5jb25maWdEYXRhPy5Hcm9zc1ByZW1pdW0gfX08L2gyPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLWRlc2lnbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL2Zvb3Rlci1kZXNpZ24vZm9vdGVyLWRlc2lnbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL2Zvb3Rlci1kZXNpZ24vZm9vdGVyLWRlc2lnbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQVNqRCxNQUFNLE9BQU8scUJBQXFCO0lBQ2hDLEtBQUssR0FBUyxLQUFLLENBQUMsUUFBUSxFQUFPLENBQUM7SUFDcEMsUUFBUSxHQUFXLEVBQUUsQ0FBQztJQUN0QixjQUFjLENBQUMsS0FBYTtRQUMxQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDcEQsQ0FBQzt3R0FMVSxxQkFBcUI7NEZBQXJCLHFCQUFxQixnTkNWbEMsd3dCQWVBLG9yQ0RUWSxZQUFZOzs0RkFJWCxxQkFBcUI7a0JBUGpDLFNBQVM7K0JBQ0UsbUJBQW1CLGNBQ2pCLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWZvb3Rlci1kZXNpZ24nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvb3Rlci1kZXNpZ24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9mb290ZXItZGVzaWduLmNvbXBvbmVudC5jc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGb290ZXJEZXNpZ25Db21wb25lbnQge1xyXG4gIGZpZWxkIDogYW55ID0gaW5wdXQucmVxdWlyZWQ8YW55PigpO1xyXG4gIHByb2dyZXNzOiBudW1iZXIgPSA5NTtcclxuICB1cGRhdGVQcm9ncmVzcyh2YWx1ZTogbnVtYmVyKSB7XHJcbiAgICB0aGlzLnByb2dyZXNzID0gTWF0aC5taW4oMTAwLCBNYXRoLm1heCgwLCB2YWx1ZSkpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwicHJvZ3Jlc3MtY29udGFpbmVyXCIgKm5nSWY9XCJmaWVsZCgpICYmIGZpZWxkKCk/LmlzVmlzaWJsZVwiPlxyXG4gIDxkaXYgY2xhc3M9XCJjaXJjdWxhci1wcm9ncmVzcy13cmFwcGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY2lyY3VsYXItcHJvZ3Jlc3NcIlxyXG4gICAgICAgICBbc3R5bGUuLS1wcm9ncmVzc109XCJmaWVsZCgpPy5jb25maWdEYXRhPy5Qcm9ncmVzc2JhclwiXHJcbiAgICAgICAgIFtjbGFzcy5tZWRpdW0tcHJvZ3Jlc3NdPVwiZmllbGQoKT8uY29uZmlnRGF0YT8uUHJvZ3Jlc3NiYXIgPj0gMjUgJiYgZmllbGQoKT8uY29uZmlnRGF0YT8uUHJvZ3Jlc3NiYXIgPCA1MFwiXHJcbiAgICAgICAgIFtjbGFzcy5oaWdoLXByb2dyZXNzXT1cImZpZWxkKCk/LmNvbmZpZ0RhdGE/LlByb2dyZXNzYmFyID49IDUwXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJwcm9ncmVzcy12YWx1ZVwiPnt7IGZpZWxkKCk/LmNvbmZpZ0RhdGE/LlByb2dyZXNzYmFyIH19JTwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXYgY2xhc3M9XCJ0ZXh0LWNvbnRlbnRcIj5cclxuICAgIDxoMiBjbGFzcz1cIm1haW4taGVhZGluZ1wiIFtpbm5lckhUTUxdPVwiZmllbGQoKT8uY29uZmlnRGF0YT8uUHJvZ3Jlc3NiYXJtc2dcIj48L2gyPlxyXG4gICAgPGgyIGNsYXNzPVwibWFpbi1oZWFkaW5nMVwiPnt7IGZpZWxkKCk/LmNvbmZpZ0RhdGE/Lkdyb3NzUHJlbWl1bSB9fTwvaDI+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -6395,7 +6395,7 @@ class AnnuityPremiumCalculatorComponent {
6395
6395
  isMasterControl: false,
6396
6396
  controlType: 'amountTextbox',
6397
6397
  };
6398
- minimumAnnuityPayout = {
6398
+ minimumAnnuityPayoutObj = {
6399
6399
  controlStyle: {
6400
6400
  controlType: 'amountTextbox',
6401
6401
  borderColor: '#DADADA',
@@ -6796,31 +6796,29 @@ class AnnuityPremiumCalculatorComponent {
6796
6796
  ngOnChanges(changes) {
6797
6797
  if ((changes['premiumDetails']) && !this.masterService.checkIfValueIsEmpty(changes['premiumDetails'].currentValue)) {
6798
6798
  if (!this.masterService.checkIfValueIsEmpty(this.premiumDetails()?.Premium)) {
6799
- if (!this.masterService.checkIfValueIsEmpty(this.premiumDetails()?.Premium['textValue'])) {
6800
- this.annuityPremium['textValue'] = this.premiumDetails()?.Premium['textValue'];
6801
- }
6799
+ // Create new object to trigger change detection
6800
+ this.annuityPremium = {
6801
+ textValue: this.premiumDetails()?.Premium['textValue'] || this.annuityPremium.textValue,
6802
+ selectValue: this.premiumDetails()?.Premium['selectValue'] || this.annuityPremium.selectValue
6803
+ };
6802
6804
  if (Object.hasOwn(this.premiumDetails()?.Premium, 'isDisable')) {
6803
6805
  this.annuityPremiumObj['isDisable'] = this.premiumDetails()?.Premium['isDisable'];
6804
6806
  }
6805
6807
  if (Object.hasOwn(this.premiumDetails()?.Premium, 'isDisableDropdown')) {
6806
6808
  this.annuityPremiumObj['configData']['isDisableDropdown'] = this.premiumDetails()?.Premium['isDisableDropdown'];
6807
6809
  }
6808
- if (!this.masterService.checkIfValueIsEmpty(this.premiumDetails()?.Premium['selectValue'])) {
6809
- this.annuityPremium['selectValue'] = this.premiumDetails()?.Premium['selectValue'];
6810
- }
6811
6810
  }
6812
6811
  if (!this.masterService.checkIfValueIsEmpty(this.premiumDetails()?.annuity)) {
6813
- if (!this.masterService.checkIfValueIsEmpty(this.premiumDetails()?.annuity['textValue'])) {
6814
- this.minumumAnnuityPayout['textValue'] = this.premiumDetails()?.annuity['textValue'];
6815
- }
6816
- if (Object.hasOwn(this.premiumDetails()?.Premium, 'isDisable')) {
6817
- this.minimumAnnuityPayout['isDisable'] = this.premiumDetails()?.annuity['isDisable'];
6818
- }
6819
- if (Object.hasOwn(this.premiumDetails()?.Premium, 'isDisableDropdown')) {
6820
- this.minimumAnnuityPayout['configData']['isDisableDropdown'] = this.premiumDetails()?.annuity['isDisableDropdown'];
6812
+ // Create new object to trigger change detection
6813
+ this.minumumAnnuityPayout = {
6814
+ textValue: this.premiumDetails()?.annuity['textValue'] || this.minumumAnnuityPayout.textValue,
6815
+ selectValue: this.premiumDetails()?.annuity['selectValue'] || this.minumumAnnuityPayout.selectValue
6816
+ };
6817
+ if (Object.hasOwn(this.premiumDetails()?.annuity, 'isDisable')) {
6818
+ this.minimumAnnuityPayoutObj['isDisable'] = this.premiumDetails()?.annuity['isDisable'];
6821
6819
  }
6822
- if (!this.masterService.checkIfValueIsEmpty(this.premiumDetails()?.annuity['selectValue'])) {
6823
- this.minumumAnnuityPayout['selectValue'] = this.premiumDetails()?.annuity['selectValue'];
6820
+ if (Object.hasOwn(this.premiumDetails()?.annuity, 'isDisableDropdown')) {
6821
+ this.minimumAnnuityPayoutObj['configData']['isDisableDropdown'] = this.premiumDetails()?.annuity['isDisableDropdown'];
6824
6822
  }
6825
6823
  }
6826
6824
  if (!this.masterService.checkIfValueIsEmpty(this.premiumDetails()?.calculateAnnuity)) {
@@ -6872,7 +6870,7 @@ class AnnuityPremiumCalculatorComponent {
6872
6870
  }
6873
6871
  }
6874
6872
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AnnuityPremiumCalculatorComponent, deps: [{ token: MasterControlService }], target: i0.ɵɵFactoryTarget.Component });
6875
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: AnnuityPremiumCalculatorComponent, isStandalone: true, selector: "lib-annuity-premium-calculator", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, premiumDetails: { classPropertyName: "premiumDetails", publicName: "premiumDetails", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onCalcualteButtonClick: "onCalcualteButtonClick", onGenerateSummaryClick: "onGenerateSummaryClick", onAnnuityPremiumChange: "onAnnuityPremiumChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"card px-3\" style=\"padding: 16px;\">\r\n <div class=\"row\">\r\n <h4 class=\"card-main-title\"><span style=\"margin-right: 12px;\"><img src=\"https://cdn.godigit.com/retail-life/calculator.svg\" alt=\"annuity calculator\"></span>Here's your Premium to Annuity Calculator</h4>\r\n </div>\r\n <!-- <div class=\"row\"> -->\r\n <div class=\"card pb-4 px-4\" style=\"border-bottom-left-radius: 0px; border-bottom-right-radius: 0px;\">\r\n <!-- <div class=\"custom-grid-template\">\r\n\r\n </div> -->\r\n\r\n <div class=\"row mx-auto\" style=\"transform: translate(0px, -58%);\">\r\n <lib-toggle class=\"col-auto\" [field]=\"annuityPremiumToggleObj\" />\r\n </div>\r\n <!-- </div> -->\r\n <div class=\"custom-grid-template\">\r\n <div class=\"d-flex flex-column\">\r\n <lib-select-textbox [field]=\"annuityPremiumObj\" [(ngModel)]=\"annuityPremium\" (ngModelChange)=\"onAnnuityPremiumValueChange($event)\" />\r\n <div class=\"error-message\" *ngIf=\"validations.ispremiumEntry\">\r\n Enter Premium\r\n </div>\r\n </div>\r\n <div class=\"mt-3 d-flex justify-content-center align-items-center\" style=\"display: flex; align-items: flex-end; transform: translate(0px, 6px);\">\r\n <lib-icon-button [field]=\"interchangeButtonObj\" />\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <lib-select-textbox [field]=\"minimumAnnuityPayout\" [(ngModel)]=\"minumumAnnuityPayout\" />\r\n </div>\r\n </div>\r\n <!-- <div class=\"vertical-line\"></div> -->\r\n <div class=\"custom-grid-template\">\r\n <div>\r\n <lib-toggle [field]=\"enableAutoDebitObj\" />\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n\r\n <div class=\"card py-3 mb-4 border-top-0\" style=\"border-top-left-radius: 0px; border-top-right-radius: 0px;\">\r\n <div class=\"mx-4\">\r\n <lib-button [field]=\"recalculateButton\" (click)=\"calculateButtonClicked()\" />\r\n </div>\r\n </div>\r\n\r\n <div>\r\n <lib-button [field]=\"generateSummaryObj\" (click)=\"generateSummaryClicked()\" />\r\n </div>\r\n</div>\r\n", styles: [".card-main-title{font-size:16px;font-family:Mulish!important;letter-spacing:0px!important;font-weight:800;line-height:24px;padding-bottom:16px}.col-5-5{flex:0 0 auto;max-width:44.16666667%}.custom-grid-template{display:grid;grid-template-columns:4fr .5fr 4fr}.vertical-line{border-left:2px solid #ccc;height:100px;margin:0 10px}.error-message{font-size:12px;font-weight:500;color:#e00;letter-spacing:0px}\n"], dependencies: [{ kind: "component", type: ToggleComponent, selector: "lib-toggle", inputs: ["field", "reactiveFormControlobject"], outputs: ["change"] }, { kind: "component", type: SelectTextboxComponent, selector: "lib-select-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: ButtonComponent, selector: "lib-button", inputs: ["field"] }, { kind: "component", type: IconButtonComponent, selector: "lib-icon-button", inputs: ["field"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
6873
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: AnnuityPremiumCalculatorComponent, isStandalone: true, selector: "lib-annuity-premium-calculator", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, premiumDetails: { classPropertyName: "premiumDetails", publicName: "premiumDetails", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onCalcualteButtonClick: "onCalcualteButtonClick", onGenerateSummaryClick: "onGenerateSummaryClick", onAnnuityPremiumChange: "onAnnuityPremiumChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"card px-3\" style=\"padding: 16px;\">\r\n <div class=\"row\">\r\n <h4 class=\"card-main-title\"><span style=\"margin-right: 12px;\"><img src=\"https://cdn.godigit.com/retail-life/calculator.svg\" alt=\"annuity calculator\"></span>Here's your Premium to Annuity Calculator</h4>\r\n </div>\r\n <!-- <div class=\"row\"> -->\r\n <div class=\"card pb-4 px-4\" style=\"border-bottom-left-radius: 0px; border-bottom-right-radius: 0px;\">\r\n <!-- <div class=\"custom-grid-template\">\r\n\r\n </div> -->\r\n\r\n <div class=\"row mx-auto\" style=\"transform: translate(0px, -58%);\">\r\n <lib-toggle class=\"col-auto\" [field]=\"annuityPremiumToggleObj\" />\r\n </div>\r\n <!-- </div> -->\r\n <div class=\"custom-grid-template\">\r\n <div class=\"d-flex flex-column\">\r\n <lib-select-textbox [field]=\"annuityPremiumObj\" [(ngModel)]=\"annuityPremium\" (ngModelChange)=\"onAnnuityPremiumValueChange($event)\" />\r\n <div class=\"error-message\" *ngIf=\"validations.ispremiumEntry\">\r\n Enter Premium\r\n </div>\r\n </div>\r\n <div class=\"mt-3 d-flex justify-content-center align-items-center\" style=\"display: flex; align-items: flex-end; transform: translate(0px, 6px);\">\r\n <lib-icon-button [field]=\"interchangeButtonObj\" />\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <lib-select-textbox [field]=\"minimumAnnuityPayoutObj\" [(ngModel)]=\"minumumAnnuityPayout\" />\r\n </div>\r\n </div>\r\n <!-- <div class=\"vertical-line\"></div> -->\r\n <div class=\"custom-grid-template\">\r\n <div>\r\n <lib-toggle [field]=\"enableAutoDebitObj\" />\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n\r\n <div class=\"card py-3 mb-4 border-top-0\" style=\"border-top-left-radius: 0px; border-top-right-radius: 0px;\">\r\n <div class=\"mx-4\">\r\n <lib-button [field]=\"recalculateButton\" (click)=\"calculateButtonClicked()\" />\r\n </div>\r\n </div>\r\n\r\n <div>\r\n <lib-button [field]=\"generateSummaryObj\" (click)=\"generateSummaryClicked()\" />\r\n </div>\r\n</div>\r\n", styles: [".card-main-title{font-size:16px;font-family:Mulish!important;letter-spacing:0px!important;font-weight:800;line-height:24px;padding-bottom:16px}.col-5-5{flex:0 0 auto;max-width:44.16666667%}.custom-grid-template{display:grid;grid-template-columns:4fr .5fr 4fr}.vertical-line{border-left:2px solid #ccc;height:100px;margin:0 10px}.error-message{font-size:12px;font-weight:500;color:#e00;letter-spacing:0px}\n"], dependencies: [{ kind: "component", type: ToggleComponent, selector: "lib-toggle", inputs: ["field", "reactiveFormControlobject"], outputs: ["change"] }, { kind: "component", type: SelectTextboxComponent, selector: "lib-select-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: ButtonComponent, selector: "lib-button", inputs: ["field"] }, { kind: "component", type: IconButtonComponent, selector: "lib-icon-button", inputs: ["field"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
6876
6874
  }
6877
6875
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AnnuityPremiumCalculatorComponent, decorators: [{
6878
6876
  type: Component,
@@ -6883,7 +6881,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
6883
6881
  IconButtonComponent,
6884
6882
  CommonModule,
6885
6883
  FormsModule
6886
- ], template: "<div class=\"card px-3\" style=\"padding: 16px;\">\r\n <div class=\"row\">\r\n <h4 class=\"card-main-title\"><span style=\"margin-right: 12px;\"><img src=\"https://cdn.godigit.com/retail-life/calculator.svg\" alt=\"annuity calculator\"></span>Here's your Premium to Annuity Calculator</h4>\r\n </div>\r\n <!-- <div class=\"row\"> -->\r\n <div class=\"card pb-4 px-4\" style=\"border-bottom-left-radius: 0px; border-bottom-right-radius: 0px;\">\r\n <!-- <div class=\"custom-grid-template\">\r\n\r\n </div> -->\r\n\r\n <div class=\"row mx-auto\" style=\"transform: translate(0px, -58%);\">\r\n <lib-toggle class=\"col-auto\" [field]=\"annuityPremiumToggleObj\" />\r\n </div>\r\n <!-- </div> -->\r\n <div class=\"custom-grid-template\">\r\n <div class=\"d-flex flex-column\">\r\n <lib-select-textbox [field]=\"annuityPremiumObj\" [(ngModel)]=\"annuityPremium\" (ngModelChange)=\"onAnnuityPremiumValueChange($event)\" />\r\n <div class=\"error-message\" *ngIf=\"validations.ispremiumEntry\">\r\n Enter Premium\r\n </div>\r\n </div>\r\n <div class=\"mt-3 d-flex justify-content-center align-items-center\" style=\"display: flex; align-items: flex-end; transform: translate(0px, 6px);\">\r\n <lib-icon-button [field]=\"interchangeButtonObj\" />\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <lib-select-textbox [field]=\"minimumAnnuityPayout\" [(ngModel)]=\"minumumAnnuityPayout\" />\r\n </div>\r\n </div>\r\n <!-- <div class=\"vertical-line\"></div> -->\r\n <div class=\"custom-grid-template\">\r\n <div>\r\n <lib-toggle [field]=\"enableAutoDebitObj\" />\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n\r\n <div class=\"card py-3 mb-4 border-top-0\" style=\"border-top-left-radius: 0px; border-top-right-radius: 0px;\">\r\n <div class=\"mx-4\">\r\n <lib-button [field]=\"recalculateButton\" (click)=\"calculateButtonClicked()\" />\r\n </div>\r\n </div>\r\n\r\n <div>\r\n <lib-button [field]=\"generateSummaryObj\" (click)=\"generateSummaryClicked()\" />\r\n </div>\r\n</div>\r\n", styles: [".card-main-title{font-size:16px;font-family:Mulish!important;letter-spacing:0px!important;font-weight:800;line-height:24px;padding-bottom:16px}.col-5-5{flex:0 0 auto;max-width:44.16666667%}.custom-grid-template{display:grid;grid-template-columns:4fr .5fr 4fr}.vertical-line{border-left:2px solid #ccc;height:100px;margin:0 10px}.error-message{font-size:12px;font-weight:500;color:#e00;letter-spacing:0px}\n"] }]
6884
+ ], template: "<div class=\"card px-3\" style=\"padding: 16px;\">\r\n <div class=\"row\">\r\n <h4 class=\"card-main-title\"><span style=\"margin-right: 12px;\"><img src=\"https://cdn.godigit.com/retail-life/calculator.svg\" alt=\"annuity calculator\"></span>Here's your Premium to Annuity Calculator</h4>\r\n </div>\r\n <!-- <div class=\"row\"> -->\r\n <div class=\"card pb-4 px-4\" style=\"border-bottom-left-radius: 0px; border-bottom-right-radius: 0px;\">\r\n <!-- <div class=\"custom-grid-template\">\r\n\r\n </div> -->\r\n\r\n <div class=\"row mx-auto\" style=\"transform: translate(0px, -58%);\">\r\n <lib-toggle class=\"col-auto\" [field]=\"annuityPremiumToggleObj\" />\r\n </div>\r\n <!-- </div> -->\r\n <div class=\"custom-grid-template\">\r\n <div class=\"d-flex flex-column\">\r\n <lib-select-textbox [field]=\"annuityPremiumObj\" [(ngModel)]=\"annuityPremium\" (ngModelChange)=\"onAnnuityPremiumValueChange($event)\" />\r\n <div class=\"error-message\" *ngIf=\"validations.ispremiumEntry\">\r\n Enter Premium\r\n </div>\r\n </div>\r\n <div class=\"mt-3 d-flex justify-content-center align-items-center\" style=\"display: flex; align-items: flex-end; transform: translate(0px, 6px);\">\r\n <lib-icon-button [field]=\"interchangeButtonObj\" />\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <lib-select-textbox [field]=\"minimumAnnuityPayoutObj\" [(ngModel)]=\"minumumAnnuityPayout\" />\r\n </div>\r\n </div>\r\n <!-- <div class=\"vertical-line\"></div> -->\r\n <div class=\"custom-grid-template\">\r\n <div>\r\n <lib-toggle [field]=\"enableAutoDebitObj\" />\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n\r\n <div class=\"card py-3 mb-4 border-top-0\" style=\"border-top-left-radius: 0px; border-top-right-radius: 0px;\">\r\n <div class=\"mx-4\">\r\n <lib-button [field]=\"recalculateButton\" (click)=\"calculateButtonClicked()\" />\r\n </div>\r\n </div>\r\n\r\n <div>\r\n <lib-button [field]=\"generateSummaryObj\" (click)=\"generateSummaryClicked()\" />\r\n </div>\r\n</div>\r\n", styles: [".card-main-title{font-size:16px;font-family:Mulish!important;letter-spacing:0px!important;font-weight:800;line-height:24px;padding-bottom:16px}.col-5-5{flex:0 0 auto;max-width:44.16666667%}.custom-grid-template{display:grid;grid-template-columns:4fr .5fr 4fr}.vertical-line{border-left:2px solid #ccc;height:100px;margin:0 10px}.error-message{font-size:12px;font-weight:500;color:#e00;letter-spacing:0px}\n"] }]
6887
6885
  }], ctorParameters: () => [{ type: MasterControlService }], propDecorators: { onCalcualteButtonClick: [{
6888
6886
  type: Output
6889
6887
  }], onGenerateSummaryClick: [{
@@ -6899,11 +6897,11 @@ class FooterDesignComponent {
6899
6897
  this.progress = Math.min(100, Math.max(0, value));
6900
6898
  }
6901
6899
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FooterDesignComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6902
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: FooterDesignComponent, isStandalone: true, selector: "lib-footer-design", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<div class=\"progress-container\" *ngIf=\"field() && field()?.isVisible\">\r\n <div class=\"circular-progress-wrapper\">\r\n <div class=\"circular-progress\"\r\n [style.--progress]=\"field()?.configData?.Progressbar\"\r\n [class.medium-progress]=\"field()?.configData?.Progressbar >= 25 && field()?.configData?.Progressbar < 50\"\r\n [class.high-progress]=\"field()?.configData?.Progressbar >= 50\">\r\n <div class=\"progress-value\">{{ field()?.configData?.Progressbar }}%</div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"text-content\">\r\n <p class=\"sub-heading\" [innerHTML]=\"field()?.configData?.Progressbarmsg\"></p>\r\n <h2 class=\"main-heading\">{{ field()?.configData?.QuoteNumber }}</h2>\r\n <h2 class=\"main-heading1\">{{ field()?.configData?.GrossPremium }}</h2>\r\n </div>\r\n</div>\r\n", styles: [".progress-container{display:flex;align-items:center;padding:20px}.circular-progress-wrapper{position:relative;width:80px;height:80px}.circular-progress{width:70px;height:70px;border-radius:50%;background:conic-gradient(#ff5252 0% calc(var(--progress) * 1%),#e0e0e0 calc(var(--progress) * 1%) 100%);display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 4px 10px #0000001a}.circular-progress.medium-progress{background:conic-gradient(#ffc107 0% calc(var(--progress) * 1%),#e0e0e0 calc(var(--progress) * 1%) 100%)}.circular-progress.high-progress{background:conic-gradient(#4caf50 0% calc(var(--progress) * 1%),#e0e0e0 calc(var(--progress) * 1%) 100%)}.circular-progress:before{content:\"\";position:absolute;width:60px;height:60px;border-radius:50%;background:#fff}.progress-value{position:relative;z-index:1;font-size:18px;font-weight:700;color:#333}.text-content{display:flex;flex-direction:column;gap:4px;height:60px;justify-content:center}.sub-heading{margin:0;font-size:8px;color:#666;font-weight:400;letter-spacing:.5px;line-height:1.2}.sub-heading strong{font-weight:700;color:#333}.main-heading,.main-heading1{margin:0;font-size:12px;color:#333;font-weight:600;line-height:1.3}.quote-value{font-weight:400}@media (max-width: 768px){.progress-container{flex-direction:column;align-items:flex-start;gap:20px}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
6900
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: FooterDesignComponent, isStandalone: true, selector: "lib-footer-design", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<div class=\"progress-container\" *ngIf=\"field() && field()?.isVisible\">\r\n <div class=\"circular-progress-wrapper\">\r\n <div class=\"circular-progress\"\r\n [style.--progress]=\"field()?.configData?.Progressbar\"\r\n [class.medium-progress]=\"field()?.configData?.Progressbar >= 25 && field()?.configData?.Progressbar < 50\"\r\n [class.high-progress]=\"field()?.configData?.Progressbar >= 50\">\r\n <div class=\"progress-value\">{{ field()?.configData?.Progressbar }}%</div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"text-content\">\r\n <h2 class=\"main-heading\" [innerHTML]=\"field()?.configData?.Progressbarmsg\"></h2>\r\n <h2 class=\"main-heading1\">{{ field()?.configData?.GrossPremium }}</h2>\r\n </div>\r\n</div>\r\n", styles: [".progress-container{display:flex;align-items:center;gap:12px;height:48px;width:auto;box-sizing:border-box}.circular-progress-wrapper{position:relative;width:48px;height:48px;flex-shrink:0}.circular-progress{width:55px;height:55px;border-radius:50%;background:conic-gradient(#ff5252 0% calc(var(--progress) * 1%),#ececec calc(var(--progress) * 1%) 100%);display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 4px 10px #0000001a}.circular-progress.medium-progress{background:conic-gradient(#fb0 0% calc(var(--progress) * 1%),#e0e0e0 calc(var(--progress) * 1%) 100%)}.circular-progress.high-progress{background:conic-gradient(#4caf50 0% calc(var(--progress) * 1%),#e0e0e0 calc(var(--progress) * 1%) 100%)}.circular-progress:before{content:\"\";position:absolute;width:48px;height:48px;border-radius:50%;background:#ececec}.progress-value{position:relative;z-index:1;font-size:10px;font-weight:700;color:#444}.text-content{display:flex;flex-direction:column;height:48px;justify-content:center;margin-left:7px;row-gap:5px}.main-heading,.main-heading1{margin:0;font-size:10px;color:#222;font-weight:400;line-height:14px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
6903
6901
  }
6904
6902
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FooterDesignComponent, decorators: [{
6905
6903
  type: Component,
6906
- args: [{ selector: 'lib-footer-design', standalone: true, imports: [CommonModule], template: "<div class=\"progress-container\" *ngIf=\"field() && field()?.isVisible\">\r\n <div class=\"circular-progress-wrapper\">\r\n <div class=\"circular-progress\"\r\n [style.--progress]=\"field()?.configData?.Progressbar\"\r\n [class.medium-progress]=\"field()?.configData?.Progressbar >= 25 && field()?.configData?.Progressbar < 50\"\r\n [class.high-progress]=\"field()?.configData?.Progressbar >= 50\">\r\n <div class=\"progress-value\">{{ field()?.configData?.Progressbar }}%</div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"text-content\">\r\n <p class=\"sub-heading\" [innerHTML]=\"field()?.configData?.Progressbarmsg\"></p>\r\n <h2 class=\"main-heading\">{{ field()?.configData?.QuoteNumber }}</h2>\r\n <h2 class=\"main-heading1\">{{ field()?.configData?.GrossPremium }}</h2>\r\n </div>\r\n</div>\r\n", styles: [".progress-container{display:flex;align-items:center;padding:20px}.circular-progress-wrapper{position:relative;width:80px;height:80px}.circular-progress{width:70px;height:70px;border-radius:50%;background:conic-gradient(#ff5252 0% calc(var(--progress) * 1%),#e0e0e0 calc(var(--progress) * 1%) 100%);display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 4px 10px #0000001a}.circular-progress.medium-progress{background:conic-gradient(#ffc107 0% calc(var(--progress) * 1%),#e0e0e0 calc(var(--progress) * 1%) 100%)}.circular-progress.high-progress{background:conic-gradient(#4caf50 0% calc(var(--progress) * 1%),#e0e0e0 calc(var(--progress) * 1%) 100%)}.circular-progress:before{content:\"\";position:absolute;width:60px;height:60px;border-radius:50%;background:#fff}.progress-value{position:relative;z-index:1;font-size:18px;font-weight:700;color:#333}.text-content{display:flex;flex-direction:column;gap:4px;height:60px;justify-content:center}.sub-heading{margin:0;font-size:8px;color:#666;font-weight:400;letter-spacing:.5px;line-height:1.2}.sub-heading strong{font-weight:700;color:#333}.main-heading,.main-heading1{margin:0;font-size:12px;color:#333;font-weight:600;line-height:1.3}.quote-value{font-weight:400}@media (max-width: 768px){.progress-container{flex-direction:column;align-items:flex-start;gap:20px}}\n"] }]
6904
+ args: [{ selector: 'lib-footer-design', standalone: true, imports: [CommonModule], template: "<div class=\"progress-container\" *ngIf=\"field() && field()?.isVisible\">\r\n <div class=\"circular-progress-wrapper\">\r\n <div class=\"circular-progress\"\r\n [style.--progress]=\"field()?.configData?.Progressbar\"\r\n [class.medium-progress]=\"field()?.configData?.Progressbar >= 25 && field()?.configData?.Progressbar < 50\"\r\n [class.high-progress]=\"field()?.configData?.Progressbar >= 50\">\r\n <div class=\"progress-value\">{{ field()?.configData?.Progressbar }}%</div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"text-content\">\r\n <h2 class=\"main-heading\" [innerHTML]=\"field()?.configData?.Progressbarmsg\"></h2>\r\n <h2 class=\"main-heading1\">{{ field()?.configData?.GrossPremium }}</h2>\r\n </div>\r\n</div>\r\n", styles: [".progress-container{display:flex;align-items:center;gap:12px;height:48px;width:auto;box-sizing:border-box}.circular-progress-wrapper{position:relative;width:48px;height:48px;flex-shrink:0}.circular-progress{width:55px;height:55px;border-radius:50%;background:conic-gradient(#ff5252 0% calc(var(--progress) * 1%),#ececec calc(var(--progress) * 1%) 100%);display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 4px 10px #0000001a}.circular-progress.medium-progress{background:conic-gradient(#fb0 0% calc(var(--progress) * 1%),#e0e0e0 calc(var(--progress) * 1%) 100%)}.circular-progress.high-progress{background:conic-gradient(#4caf50 0% calc(var(--progress) * 1%),#e0e0e0 calc(var(--progress) * 1%) 100%)}.circular-progress:before{content:\"\";position:absolute;width:48px;height:48px;border-radius:50%;background:#ececec}.progress-value{position:relative;z-index:1;font-size:10px;font-weight:700;color:#444}.text-content{display:flex;flex-direction:column;height:48px;justify-content:center;margin-left:7px;row-gap:5px}.main-heading,.main-heading1{margin:0;font-size:10px;color:#222;font-weight:400;line-height:14px}\n"] }]
6907
6905
  }] });
6908
6906
 
6909
6907
  class MasterControlComponent {