simpo-component-library 3.0.33 → 3.0.35

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.
Files changed (26) hide show
  1. package/esm2022/lib/elements/payment-confirmation/payment-confirmation.component.mjs +14 -6
  2. package/esm2022/lib/elements/portfolio/portfolio.component.mjs +8 -3
  3. package/esm2022/lib/elements/properties/properties.component.mjs +4 -3
  4. package/esm2022/lib/elements/property-view/property-view.component.mjs +3 -3
  5. package/esm2022/lib/pipes/amount.pipe.mjs +2 -2
  6. package/esm2022/lib/sections/kyc-details/kyc-details.component.mjs +2 -2
  7. package/esm2022/lib/sections/profile-section/profile-section.component.mjs +10 -4
  8. package/esm2022/lib/sections/property-detail/property-detail.component.mjs +30 -12
  9. package/esm2022/lib/sections/signup-signin/signup-signin.component.mjs +10 -9
  10. package/fesm2022/simpo-component-library.mjs +102 -67
  11. package/fesm2022/simpo-component-library.mjs.map +1 -1
  12. package/lib/directive/background-directive.d.ts +1 -1
  13. package/lib/directive/button-directive.directive.d.ts +1 -1
  14. package/lib/directive/color.directive.d.ts +1 -1
  15. package/lib/elements/payment-confirmation/payment-confirmation.component.d.ts +1 -0
  16. package/lib/elements/portfolio/portfolio.component.d.ts +2 -0
  17. package/lib/sections/banner-carousel/banner-carousel.component.d.ts +2 -2
  18. package/lib/sections/carousel-banner/carousel-banner.component.d.ts +1 -1
  19. package/lib/sections/image-section/image-section.component.d.ts +2 -2
  20. package/lib/sections/logo-showcase/logo-showcase.component.d.ts +1 -1
  21. package/lib/sections/pricing-section/pricing-section.component.d.ts +1 -1
  22. package/lib/sections/profile-section/profile-section.component.d.ts +2 -0
  23. package/lib/sections/property-detail/property-detail.component.d.ts +2 -0
  24. package/package.json +1 -1
  25. package/simpo-component-library-3.0.35.tgz +0 -0
  26. package/simpo-component-library-3.0.33.tgz +0 -0
@@ -50,7 +50,7 @@ export class KycDetailsComponent {
50
50
  if (res.message) {
51
51
  this.isPanVerified = res.message.panVerified === 'VALID';
52
52
  this.isAadharverified = res.message.aadhaarVerified === 'VALID';
53
- this.aadharRequest.aadhaarNumber = res.message.aadharNo;
53
+ this.aadharRequest.aadhaarNumber = res.message.aadhaarNumber;
54
54
  this.panRequest.panNumber = res.message.panNo;
55
55
  }
56
56
  }, (err) => {
@@ -160,4 +160,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImpor
160
160
  }], ctorParameters: () => [{ type: i1.RestService }, { type: i2.MessageService }, { type: i3.Router }, { type: i4.MatDialogRef, decorators: [{
161
161
  type: Optional
162
162
  }] }] });
163
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3ljLWRldGFpbHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9zZWN0aW9ucy9reWMtZGV0YWlscy9reWMtZGV0YWlscy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2t5Yy1kZXRhaWxzL2t5Yy1kZXRhaWxzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFHN0MsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDOUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7Ozs7QUFXNUMsTUFBTSxPQUFPLG1CQUFtQjtJQUM5QixZQUFvQixXQUF3QixFQUN6QixjQUE4QixFQUN2QyxNQUFjLEVBQ08sU0FBNEM7UUFIdkQsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDekIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQ3ZDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDTyxjQUFTLEdBQVQsU0FBUyxDQUFtQztRQUczRSxlQUFVLEdBQVE7WUFDaEIsU0FBUyxFQUFFLEVBQUU7U0FDZCxDQUFBO1FBRUQsa0JBQWEsR0FBUTtZQUNuQixhQUFhLEVBQUUsRUFBRTtTQUNsQixDQUFBO1FBRUQsd0JBQW1CLEdBQVE7WUFDekIs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O0lBRUQsb0JBQW9CO1FBQ2xCLElBQUcsSUFBSSxDQUFDLGdCQUFnQixJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUMvQyxRQUFRLENBQUMsY0FBYyxDQUFDLGdCQUFnQixDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUE7WUFDbEQsSUFBSSxDQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQztRQUMxQixDQUFDO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxxQkFBcUI7UUFDbkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFBO0lBQ3pDLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLE1BQU0sQ0FBQyxVQUFVLElBQUksR0FBRyxDQUFDO0lBQ2xDLENBQUM7OEdBM0pVLG1CQUFtQjtrR0FBbkIsbUJBQW1CLGdFQUpuQixDQUFDLGNBQWMsQ0FBQywwQkNoQjdCLGt4SkFzR0EsMGtGRHZGWSxhQUFhLG1MQUFFLFlBQVksK1BBQUUsV0FBVywyOEJBQUUsd0JBQXdCLGtPQUFFLFdBQVc7OzJGQUs5RSxtQkFBbUI7a0JBUi9CLFNBQVM7K0JBQ0UsbUJBQW1CLGNBQ2pCLElBQUksV0FDUCxDQUFDLGFBQWEsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLHdCQUF3QixFQUFFLFdBQVcsQ0FBQyxhQUMvRSxDQUFDLGNBQWMsQ0FBQzs7MEJBUXhCLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IFJlc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcmVzdC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdwcmltZW5nL2FwaSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcclxuaW1wb3J0IHsgVG9hc3RNb2R1bGUgfSBmcm9tICdwcmltZW5nL3RvYXN0JztcclxuaW1wb3J0IHsgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2ltcG8ta3ljLWRldGFpbHMnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW01hdEljb25Nb2R1bGUsIENvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGUsIE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSwgVG9hc3RNb2R1bGVdLFxyXG4gIHByb3ZpZGVyczogW01lc3NhZ2VTZXJ2aWNlXSxcclxuICB0ZW1wbGF0ZVVybDogJy4va3ljLWRldGFpbHMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9reWMtZGV0YWlscy5jb21wb25lbnQuY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgS3ljRGV0YWlsc0NvbXBvbmVudCB7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZXN0U2VydmljZTogUmVzdFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBAT3B0aW9uYWwoKSBwcml2YXRlIHJlYWRvbmx5IGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPEt5Y0RldGFpbHNDb21wb25lbnQ+XHJcbiAgKSB7fVxyXG5cclxuICBwYW5SZXF1ZXN0OiBhbnkgPSB7XHJcbiAgICBwYW5OdW1iZXI6ICcnXHJcbiAgfVxyXG5cclxuICBhYWRoYXJSZXF1ZXN0OiBhbnkgPSB7XHJcbiAgICBhYWRoYWFyTnVtYmVyOiAnJ1xyXG4gIH1cclxuXHJcbiAgdmVyaWZ5QWFkaGFyUmVxdWVzdDogYW55ID0ge1xyXG4gICAgb3RwOiAnJyxcclxuICAgIHJlZklkOiAnJyxcclxuICAgIGFhZGhhYXJOdW1iZXI6ICcnXHJcbiAgfVxyXG4gIGFhZGhhck90cEFycmF5ID0gbmV3IEFycmF5KDYpLmZpbGwoJycpXHJcbiAgaXNQYW5WZXJpZmllZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGlzQWFkaGFydmVyaWZpZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBhYWRoYXJPdHBTZW50OiBib29sZWFuID0gZmFsc2U7XHJcbiAgcGFuVmVyaWZ5TG9hZGVyOiBib29sZWFuID0gZmFsc2U7XHJcbiAgYWFkaGFyVmVyaWZ5TG9hZGVyOiBib29sZWFuID0gZmFsc2U7XHJcbiAga3ljRGV0YWlsc1N1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmdldEt5Y0RldGFpbHMoKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5reWNEZXRhaWxzU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgZ2V0S3ljRGV0YWlscygpIHtcclxuICAgIHRoaXMua3ljRGV0YWlsc1N1YnNjcmlwdGlvbiA9IHRoaXMucmVzdFNlcnZpY2UuZ2V0S3ljRGV0YWlscygpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgaWYocmVzLm1lc3NhZ2UpIHtcclxuICAgICAgICB0aGlzLmlzUGFuVmVyaWZpZWQgPSByZXMubWVzc2FnZS5wYW5WZXJpZmllZCA9PT0gJ1ZBTElEJztcclxuICAgICAgICB0aGlzLmlzQWFkaGFydmVyaWZpZWQgPSByZXMubWVzc2FnZS5hYWRoYWFyVmVyaWZpZWQgPT09ICdWQUxJRCc7XHJcbiAgICAgICAgdGhpcy5hYWRoYXJSZXF1ZXN0LmFhZGhhYXJOdW1iZXIgPSByZXMubWVzc2FnZS5hYWRoYXJOb1xyXG4gICAgICAgIHRoaXMucGFuUmVxdWVzdC5wYW5OdW1iZXIgPSByZXMubWVzc2FnZS5wYW5ObztcclxuICAgICAgfVxyXG4gICAgfSwgKGVycikgPT4ge1xyXG5cclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICB2ZXJpZnlQYW5OdW1iZXIoKSB7XHJcbiAgICB0aGlzLnBhblZlcmlmeUxvYWRlciA9IHRydWU7XHJcbiAgICBpZighdGhpcy52YWxpZGF0ZVBhbigpKSB7XHJcbiAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuYWRkKHtcclxuICAgICAgICBzZXZlcml0eTogJ2Vycm9yJyxcclxuICAgICAgICBzdW1tYXJ5OiAnUGFuIE51bWJlcicsXHJcbiAgICAgICAgZGV0YWlsOiAnRW50ZXIgdmFsaWQgUEFOIG51bWJlcidcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMucGFuVmVyaWZ5TG9hZGVyID0gZmFsc2U7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMucmVzdFNlcnZpY2UudmVyaWZ5UGFuKHRoaXMucGFuUmVxdWVzdCkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICB0aGlzLmlzUGFuVmVyaWZpZWQgPSB0cnVlO1xyXG4gICAgICB0aGlzLnJlc3RTZXJ2aWNlLmt5Y0RldGFpbHMgPSBudWxsO1xyXG4gICAgICB0aGlzLnBhblZlcmlmeUxvYWRlciA9IGZhbHNlOztcclxuICAgICAgdGhpcy5jaGVja0t5Y1ZlcmlmaWNhdGlvbigpO1xyXG4gICAgfSwgKCkgPT4ge1xyXG4gICAgICB0aGlzLnBhblZlcmlmeUxvYWRlciA9IGZhbHNlO1xyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHZhbGlkYXRlUGFuKCk6IGJvb2xlYW4ge1xyXG4gICAgY29uc3QgcGFuUmVnZXggPSAvXltBLVpdezV9WzAtOV17NH1bQS1aXSQvO1xyXG4gICAgcmV0dXJuIHBhblJlZ2V4LnRlc3QodGhpcy5wYW5SZXF1ZXN0LnBhbk51bWJlcik7XHJcbiAgfVxyXG5cclxuICBzZW5kQWFkaGFyT3RwKCkge1xyXG4gICAgdGhpcy5hYWRoYXJWZXJpZnlMb2FkZXIgPSB0cnVlO1xyXG4gICAgaWYoIXRoaXMudmFsaWRhdGVBYWRoYWFyKCkpIHtcclxuICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS5hZGQoe1xyXG4gICAgICAgIHNldmVyaXR5OiAnZXJyb3InLFxyXG4gICAgICAgIHN1bW1hcnk6ICdBYWRoYXIgTnVtYmVyJyxcclxuICAgICAgICBkZXRhaWw6ICdFbnRlciB2YWxpZCBBYWRoYXIgbnVtYmVyJ1xyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy5hYWRoYXJWZXJpZnlMb2FkZXIgPSBmYWxzZTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMucmVzdFNlcnZpY2Uuc2VuZEFhZGhhck90cCh0aGlzLmFhZGhhclJlcXVlc3QpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgdGhpcy5hYWRoYXJPdHBTZW50ID0gdHJ1ZTtcclxuICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS5hZGQoe1xyXG4gICAgICAgIHNldmVyaXR5OiAnc3VjY2VzcycsXHJcbiAgICAgICAgc3VtbWFyeTogJ09UUCBTZW50JyxcclxuICAgICAgICBkZXRhaWw6ICdBQWRoYXIgT1RQIFNlbnQgaW4gcmVnaXN0ZXJlZCBtb2JpbGUgbnVtYmVyJ1xyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy5hYWRoYXJWZXJpZnlMb2FkZXIgPSBmYWxzZTtcclxuICAgICAgdGhpcy52ZXJpZnlBYWRoYXJSZXF1ZXN0LnJlZklkID0gcmVzLm1lc3NhZ2U/LnJlZl9pZDtcclxuICAgIH0sKCkgPT4ge1xyXG4gICAgICB0aGlzLmFhZGhhclZlcmlmeUxvYWRlciA9IGZhbHNlO1xyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHZlcmlmeUFhZGhhck90cCgpIHtcclxuICAgIHRoaXMuYWFkaGFyVmVyaWZ5TG9hZGVyID0gdHJ1ZTtcclxuICAgIHRoaXMudmVyaWZ5QWFkaGFyUmVxdWVzdC5vdHAgPSBcIlwiO1xyXG4gICAgdGhpcy5hYWRoYXJPdHBBcnJheS5mb3JFYWNoKChvdHApID0+IHtcclxuICAgICAgdGhpcy52ZXJpZnlBYWRoYXJSZXF1ZXN0Lm90cCArPSBvdHBcclxuICAgIH0pXHJcbiAgICB0aGlzLnZlcmlmeUFhZGhhclJlcXVlc3QuYWFkaGFhck51bWJlciA9IHRoaXMuYWFkaGFyUmVxdWVzdC5hYWRoYWFyTnVtYmVyO1xyXG5cclxuICAgIHRoaXMucmVzdFNlcnZpY2UudmVyaWZ5QWFkaGFyT3RwKHRoaXMudmVyaWZ5QWFkaGFyUmVxdWVzdCkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICB0aGlzLmlzQWFkaGFydmVyaWZpZWQgPSB0cnVlO1xyXG4gICAgICB0aGlzLnJlc3RTZXJ2aWNlLmt5Y0RldGFpbHMgPSBudWxsO1xyXG4gICAgICB0aGlzLmFhZGhhclZlcmlmeUxvYWRlciA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmNoZWNrS3ljVmVyaWZpY2F0aW9uKCk7XHJcbiAgICB9LCAoKSA9PiB7XHJcbiAgICAgIHRoaXMuYWFkaGFyVmVyaWZ5TG9hZGVyID0gZmFsc2U7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgdmFsaWRhdGVBYWRoYWFyKCk6IGJvb2xlYW4ge1xyXG4gICAgY29uc3QgYWFkaGFhclJlZ2V4ID0gL15bMi05XXsxfVswLTldezExfSQvO1xyXG4gICAgcmV0dXJuIGFhZGhhYXJSZWdleC50ZXN0KHRoaXMuYWFkaGFyUmVxdWVzdC5hYWRoYWFyTnVtYmVyKTtcclxuICB9XHJcblxyXG4gIG1vdmVBYWRoYXJPdHBDdXJzb3IoZXZlbnQ6IGFueSwgaWR4OiBudW1iZXIpIHtcclxuXHJcbiAgICBpZiAoaXNOYU4oTnVtYmVyKGV2ZW50LmtleSkpICYmIGV2ZW50LmNvZGUgIT0gXCJCYWNrc3BhY2VcIilcclxuICAgICAgcmV0dXJuO1xyXG5cclxuICAgIGlmIChldmVudC5jb2RlICE9IFwiQmFja3NwYWNlXCIpIHtcclxuICAgICAgdGhpcy5hYWRoYXJPdHBBcnJheVtpZHhdID0gZXZlbnQua2V5O1xyXG4gICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImFhZGhhck90cF9cIiArIChpZHggKyAxKSk/LmZvY3VzKCk7XHJcbiAgICB9XHJcbiAgICBpZiAoZXZlbnQuY29kZSA9PSBcIkJhY2tzcGFjZVwiICYmICF0aGlzLmFhZGhhck90cEFycmF5W2lkeF0pIHtcclxuICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJhYWRoYXJPdHBfXCIgKyAoaWR4IC0gMSkpPy5mb2N1cygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY2hlY2tLeWNWZXJpZmljYXRpb24oKSB7XHJcbiAgICBpZih0aGlzLmlzQWFkaGFydmVyaWZpZWQgJiYgdGhpcy5pc1BhblZlcmlmaWVkKSB7XHJcbiAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjbG9zZUt5Y0NhbnZhcycpPy5jbGljaygpXHJcbiAgICAgIHRoaXMuZGlhbG9nUmVmPy5jbG9zZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY2xvc2VEaWFsb2coKSB7XHJcbiAgICB0aGlzLmRpYWxvZ1JlZj8uY2xvc2UoKTtcclxuICB9XHJcblxyXG4gIHJlZGlyZWN0VG9Qcm9kdWN0TGlzdCgpIHtcclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsncHJvcGVydHktbGlzdCddKVxyXG4gIH1cclxuXHJcbiAgZ2V0IGlzTW9iaWxlKCkge1xyXG4gICAgcmV0dXJuIHdpbmRvdy5pbm5lcldpZHRoIDw9IDQ3NTtcclxuICB9XHJcbn1cclxuIiwiPHAtdG9hc3QgcG9zaXRpb249XCJib3R0b20tcmlnaHRcIiBbYmFzZVpJbmRleF09XCIxMDAwMDAwMDAwMFwiIFthdXRvWkluZGV4XT1cInRydWVcIlxyXG4gICAgW3Nob3dUcmFuc2Zvcm1PcHRpb25zXT1cImlzTW9iaWxlID8gJ3RyYW5zbGF0ZVkoLTEwMCUpJyA6ICcnXCI+PC9wLXRvYXN0PlxyXG5cclxuPHNlY3Rpb24gY2xhc3M9XCJtYWluLXNlY3Rpb25cIj5cclxuICA8ZGl2IGNsYXNzPVwiZGlzcGxheS1jZW50ZXJcIiAqbmdJZj1cIiEoaXNQYW5WZXJpZmllZCAmJiBpc0FhZGhhcnZlcmlmaWVkKVwiPlxyXG4gICAgPGltZyBjbGFzcz1cImltZ1wiIHNyYz1cImh0dHBzOi8vcHJvZC1zaW1wby5zMy5hcC1zb3V0aC0xLmFtYXpvbmF3cy5jb20vcHJvZC1pbWFnZXMvOTcwMzMyYzE3NDAwMzAxODc3MjZreWMucG5nXCJcclxuICAgICAgYWx0PVwiXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwidGV4dC1ncm91cFwiPlxyXG4gICAgICA8cCBjbGFzcz1cImhlYWRpbmdcIj5Db21wbGV0ZSBZb3VyIEtZQyB0byBzdGFydCBJbnZlc3Rpbmc8L3A+XHJcbiAgICAgIDxwIGNsYXNzPVwiZGVzY1wiPkJlZm9yZSB5b3UgY2FuIGludmVzdCwgd2UgbmVlZCB0byB2ZXJpZnkgeW91ciBpZGVudGl0eSwgc2ltcGx5IHVwbG9hZCB5b3VyIGRvY3VtZW50cyxcclxuICAgICAgICA8YnI+IHN1Ym1pdCB5b3VyIEtZQywgYW5kIGxldCB1cyBoYW5kbGUgdGhlIHJlc3RcclxuICAgICAgPC9wPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8YnV0dG9uIGNsYXNzPVwic3VibWl0LWJ0blwiIHR5cGU9XCJidXR0b25cIiBkYXRhLWJzLXRvZ2dsZT1cIm9mZmNhbnZhc1wiIGRhdGEtYnMtdGFyZ2V0PVwiI29mZmNhbnZhc1JpZ2h0XCJcclxuICAgICAgYXJpYS1jb250cm9scz1cIm9mZmNhbnZhc1JpZ2h0XCI+U3VibWl0IEtZQyBOb3c8L2J1dHRvbj5cclxuICA8L2Rpdj5cclxuICA8ZGl2ICpuZ0lmPVwiaXNQYW5WZXJpZmllZCAmJiBpc0FhZGhhcnZlcmlmaWVkXCIgY2xhc3M9XCJkaXNwbGF5LWNlbnRlclwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInctNTBcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cInNlY3VyZWRcIj5cclxuICAgICAgICA8bWF0LWljb24+c2VjdXJpdHk8L21hdC1pY29uPlxyXG4gICAgICAgIDxwPllvdXIgRGF0YSBpcyBTYWZlICYgU2VjdXJlPC9wPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtdC0yXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LXNwYWNlXCI+XHJcbiAgICAgICAgICA8bGFiZWwgZm9yPVwiXCI+UEFOIE51bWJlcjwvbGFiZWw+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0LWJveFwiPlxyXG4gICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgWyhuZ01vZGVsKV09XCJwYW5SZXF1ZXN0LnBhbk51bWJlclwiIGRpc2FibGVkPlxyXG4gICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwidmVyaWZpZWRcIiB0aXRsZT1cIk9UUCBWZXJpZmllZFwiPmNoZWNrX2NpcmNsZTwvbWF0LWljb24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibXQtMVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1zcGFjZVwiPlxyXG4gICAgICAgICAgPGxhYmVsIGZvcj1cIlwiPkFhZGhhciBOdW1iZXI8L2xhYmVsPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1ib3hcIj5cclxuICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIFsobmdNb2RlbCldPVwiYWFkaGFyUmVxdWVzdC5hYWRoYWFyTnVtYmVyXCIgZGlzYWJsZWQ+XHJcbiAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJ2ZXJpZmllZFwiIHRpdGxlPVwiT1RQIFZlcmlmaWVkXCI+Y2hlY2tfY2lyY2xlPC9tYXQtaWNvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwibXQtMTUgdGV4dC1jZW50ZXJcIj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwic3VibWl0LWJ0blwiIChjbGljayk9XCJyZWRpcmVjdFRvUHJvZHVjdExpc3QoKVwiPkxldCdzIEdyb3cgV2VhbHRoPC9idXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvc2VjdGlvbj5cclxuXHJcbjxkaXYgY2xhc3M9XCJvZmZjYW52YXMgb2ZmY2FudmFzLWVuZFwiIHRhYmluZGV4PVwiLTFcIiBpZD1cIm9mZmNhbnZhc1JpZ2h0XCIgYXJpYS1sYWJlbGxlZGJ5PVwib2ZmY2FudmFzUmlnaHRMYWJlbFwiPlxyXG4gIDxkaXYgY2xhc3M9XCJoZWFkZXJcIj5cclxuICAgIDxwPktZQyBEZXRhaWxzPC9wPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJtaWRkbGUtc2VjdGlvblwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImJvZHlcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cInNlY3VyZWRcIj5cclxuICAgICAgICA8bWF0LWljb24+c2VjdXJpdHk8L21hdC1pY29uPlxyXG4gICAgICAgIDxwPllvdXIgRGF0YSBpcyBTYWZlICYgU2VjdXJlPC9wPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtdC0yXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LXNwYWNlXCI+XHJcbiAgICAgICAgICA8bGFiZWwgZm9yPVwiXCI+UEFOIE51bWJlcjwvbGFiZWw+XHJcbiAgICAgICAgICA8cCBjbGFzcz1cInZlcmlmeS10ZXh0XCIgKGNsaWNrKT1cInZlcmlmeVBhbk51bWJlcigpXCIgKm5nSWY9XCIhaXNQYW5WZXJpZmllZCAmJiAhcGFuVmVyaWZ5TG9hZGVyXCI+VmVyaWZ5PC9wPlxyXG4gICAgICAgICAgPGRpdiAqbmdJZj1cInBhblZlcmlmeUxvYWRlclwiIGNsYXNzPVwia3ljLWRldGFpbFwiPjxtYXQtc3Bpbm5lcj48L21hdC1zcGlubmVyPjwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1ib3hcIj5cclxuICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIFsobmdNb2RlbCldPVwicGFuUmVxdWVzdC5wYW5OdW1iZXJcIiBbZGlzYWJsZWRdPVwiaXNQYW5WZXJpZmllZFwiPlxyXG4gICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwidmVyaWZpZWRcIiB0aXRsZT1cIk9UUCBWZXJpZmllZFwiICpuZ0lmPVwiaXNQYW5WZXJpZmllZFwiPmNoZWNrX2NpcmNsZTwvbWF0LWljb24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibXQtMVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1zcGFjZVwiPlxyXG4gICAgICAgICAgPGxhYmVsIGZvcj1cIlwiPkFhZGhhciBOdW1iZXI8L2xhYmVsPlxyXG4gICAgICAgICAgPHAgY2xhc3M9XCJ2ZXJpZnktdGV4dFwiIChjbGljayk9XCJzZW5kQWFkaGFyT3RwKClcIiAqbmdJZj1cIiFhYWRoYXJPdHBTZW50ICYmICFhYWRoYXJWZXJpZnlMb2FkZXJcIj5TZW5kIE9UUDwvcD5cclxuICAgICAgICAgIDxkaXYgKm5nSWY9XCJhYWRoYXJWZXJpZnlMb2FkZXIgJiYgIWFhZGhhck90cFNlbnRcIiBjbGFzcz1cImt5Yy1kZXRhaWxcIj48bWF0LXNwaW5uZXI+PC9tYXQtc3Bpbm5lcj48L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtYm94XCI+XHJcbiAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBbKG5nTW9kZWwpXT1cImFhZGhhclJlcXVlc3QuYWFkaGFhck51bWJlclwiIFtkaXNhYmxlZF09XCJpc0FhZGhhcnZlcmlmaWVkXCI+XHJcbiAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJ2ZXJpZmllZFwiIHRpdGxlPVwiT1RQIFZlcmlmaWVkXCIgKm5nSWY9XCJhYWRoYXJPdHBTZW50XCI+Y2hlY2tfY2lyY2xlPC9tYXQtaWNvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtdC0xXCIgKm5nSWY9XCJhYWRoYXJPdHBTZW50XCI+XHJcbiAgICAgICAgPGxhYmVsIGZvcj1cIlwiPkVudGVyIE9UUDwvbGFiZWw+XHJcblxyXG4gICAgICAgIDxkaXYgaWQ9XCJvdHBcIiBjbGFzcz1cIm90cC1pbnB1dFwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgb3RwIG9mIFsxLDIsMyw0LDUsNl07IGxldCBpZHggPSBpbmRleFwiPlxyXG4gICAgICAgICAgICA8aW5wdXQgdHlwZT1cIm51bWJlclwiIG1heD1cIjlcIiBjbGFzcz1cIm90cC1pbnB1dFwiIFsobmdNb2RlbCldPVwiYWFkaGFyT3RwQXJyYXlbaWR4XVwiXHJcbiAgICAgICAgICAgICAgKGtleXVwKT1cIm1vdmVBYWRoYXJPdHBDdXJzb3IoJGV2ZW50LCBpZHgpXCIgW2lkXT1cIidhYWRoYXJPdHBfJytpZHhcIiAvPlxyXG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cImZvb3RlclwiPlxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cImNhbmNlbC1idG5cIiBkYXRhLWJzLWRpc21pc3M9XCJvZmZjYW52YXNcIiBpZD1cImNsb3NlS3ljQ2FudmFzXCIgKGNsaWNrKT1cImNsb3NlRGlhbG9nKClcIj5DYW5jZWw8L2J1dHRvbj5cclxuICAgIDxidXR0b24gY2xhc3M9XCJzdWJtaXQtYnRuXCIgKm5nSWY9XCJhYWRoYXJPdHBTZW50ICYmICFhYWRoYXJWZXJpZnlMb2FkZXJcIiAoY2xpY2spPVwidmVyaWZ5QWFkaGFyT3RwKClcIj5WZXJpZnk8L2J1dHRvbj5cclxuICAgIDxidXR0b24gY2xhc3M9XCJkLWZsZXggc3VibWl0LWJ0blwiICpuZ0lmPVwiYWFkaGFyVmVyaWZ5TG9hZGVyICYmIGFhZGhhck90cFNlbnRcIj5cclxuICAgICAgPG1hdC1zcGlubmVyPjwvbWF0LXNwaW5uZXI+IFZlcmlmeWluZ1xyXG4gICAgPC9idXR0b24+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
163
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3ljLWRldGFpbHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9zZWN0aW9ucy9reWMtZGV0YWlscy9reWMtZGV0YWlscy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL2t5Yy1kZXRhaWxzL2t5Yy1kZXRhaWxzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFHN0MsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDOUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7Ozs7QUFXNUMsTUFBTSxPQUFPLG1CQUFtQjtJQUM5QixZQUFvQixXQUF3QixFQUN6QixjQUE4QixFQUN2QyxNQUFjLEVBQ08sU0FBNEM7UUFIdkQsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDekIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQ3ZDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDTyxjQUFTLEdBQVQsU0FBUyxDQUFtQztRQUczRSxlQUFVLEdBQVE7WUFDaEIsU0FBUyxFQUFFLEVBQUU7U0FDZCxDQUFBO1FBRUQsa0JBQWEsR0FBUTtZQUNuQixhQUFhLEVBQUUsRUFBRTtTQUNsQixDQUFBO1FBRUQsd0JBQW1CLEdBQVE7WUFDekIs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O0lBRUQsb0JBQW9CO1FBQ2xCLElBQUcsSUFBSSxDQUFDLGdCQUFnQixJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUMvQyxRQUFRLENBQUMsY0FBYyxDQUFDLGdCQUFnQixDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUE7WUFDbEQsSUFBSSxDQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQztRQUMxQixDQUFDO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxxQkFBcUI7UUFDbkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFBO0lBQ3pDLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLE1BQU0sQ0FBQyxVQUFVLElBQUksR0FBRyxDQUFDO0lBQ2xDLENBQUM7OEdBM0pVLG1CQUFtQjtrR0FBbkIsbUJBQW1CLGdFQUpuQixDQUFDLGNBQWMsQ0FBQywwQkNoQjdCLGt4SkFzR0EsMGtGRHZGWSxhQUFhLG1MQUFFLFlBQVksK1BBQUUsV0FBVywyOEJBQUUsd0JBQXdCLGtPQUFFLFdBQVc7OzJGQUs5RSxtQkFBbUI7a0JBUi9CLFNBQVM7K0JBQ0UsbUJBQW1CLGNBQ2pCLElBQUksV0FDUCxDQUFDLGFBQWEsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLHdCQUF3QixFQUFFLFdBQVcsQ0FBQyxhQUMvRSxDQUFDLGNBQWMsQ0FBQzs7MEJBUXhCLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IFJlc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcmVzdC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdwcmltZW5nL2FwaSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcclxuaW1wb3J0IHsgVG9hc3RNb2R1bGUgfSBmcm9tICdwcmltZW5nL3RvYXN0JztcclxuaW1wb3J0IHsgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2ltcG8ta3ljLWRldGFpbHMnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW01hdEljb25Nb2R1bGUsIENvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGUsIE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSwgVG9hc3RNb2R1bGVdLFxyXG4gIHByb3ZpZGVyczogW01lc3NhZ2VTZXJ2aWNlXSxcclxuICB0ZW1wbGF0ZVVybDogJy4va3ljLWRldGFpbHMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9reWMtZGV0YWlscy5jb21wb25lbnQuY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgS3ljRGV0YWlsc0NvbXBvbmVudCB7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZXN0U2VydmljZTogUmVzdFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBAT3B0aW9uYWwoKSBwcml2YXRlIHJlYWRvbmx5IGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPEt5Y0RldGFpbHNDb21wb25lbnQ+XHJcbiAgKSB7fVxyXG5cclxuICBwYW5SZXF1ZXN0OiBhbnkgPSB7XHJcbiAgICBwYW5OdW1iZXI6ICcnXHJcbiAgfVxyXG5cclxuICBhYWRoYXJSZXF1ZXN0OiBhbnkgPSB7XHJcbiAgICBhYWRoYWFyTnVtYmVyOiAnJ1xyXG4gIH1cclxuXHJcbiAgdmVyaWZ5QWFkaGFyUmVxdWVzdDogYW55ID0ge1xyXG4gICAgb3RwOiAnJyxcclxuICAgIHJlZklkOiAnJyxcclxuICAgIGFhZGhhYXJOdW1iZXI6ICcnXHJcbiAgfVxyXG4gIGFhZGhhck90cEFycmF5ID0gbmV3IEFycmF5KDYpLmZpbGwoJycpXHJcbiAgaXNQYW5WZXJpZmllZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGlzQWFkaGFydmVyaWZpZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBhYWRoYXJPdHBTZW50OiBib29sZWFuID0gZmFsc2U7XHJcbiAgcGFuVmVyaWZ5TG9hZGVyOiBib29sZWFuID0gZmFsc2U7XHJcbiAgYWFkaGFyVmVyaWZ5TG9hZGVyOiBib29sZWFuID0gZmFsc2U7XHJcbiAga3ljRGV0YWlsc1N1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmdldEt5Y0RldGFpbHMoKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5reWNEZXRhaWxzU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgZ2V0S3ljRGV0YWlscygpIHtcclxuICAgIHRoaXMua3ljRGV0YWlsc1N1YnNjcmlwdGlvbiA9IHRoaXMucmVzdFNlcnZpY2UuZ2V0S3ljRGV0YWlscygpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgaWYocmVzLm1lc3NhZ2UpIHtcclxuICAgICAgICB0aGlzLmlzUGFuVmVyaWZpZWQgPSByZXMubWVzc2FnZS5wYW5WZXJpZmllZCA9PT0gJ1ZBTElEJztcclxuICAgICAgICB0aGlzLmlzQWFkaGFydmVyaWZpZWQgPSByZXMubWVzc2FnZS5hYWRoYWFyVmVyaWZpZWQgPT09ICdWQUxJRCc7XHJcbiAgICAgICAgdGhpcy5hYWRoYXJSZXF1ZXN0LmFhZGhhYXJOdW1iZXIgPSByZXMubWVzc2FnZS5hYWRoYWFyTnVtYmVyXHJcbiAgICAgICAgdGhpcy5wYW5SZXF1ZXN0LnBhbk51bWJlciA9IHJlcy5tZXNzYWdlLnBhbk5vO1xyXG4gICAgICB9XHJcbiAgICB9LCAoZXJyKSA9PiB7XHJcblxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHZlcmlmeVBhbk51bWJlcigpIHtcclxuICAgIHRoaXMucGFuVmVyaWZ5TG9hZGVyID0gdHJ1ZTtcclxuICAgIGlmKCF0aGlzLnZhbGlkYXRlUGFuKCkpIHtcclxuICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS5hZGQoe1xyXG4gICAgICAgIHNldmVyaXR5OiAnZXJyb3InLFxyXG4gICAgICAgIHN1bW1hcnk6ICdQYW4gTnVtYmVyJyxcclxuICAgICAgICBkZXRhaWw6ICdFbnRlciB2YWxpZCBQQU4gbnVtYmVyJ1xyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy5wYW5WZXJpZnlMb2FkZXIgPSBmYWxzZTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5yZXN0U2VydmljZS52ZXJpZnlQYW4odGhpcy5wYW5SZXF1ZXN0KS5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XHJcbiAgICAgIHRoaXMuaXNQYW5WZXJpZmllZCA9IHRydWU7XHJcbiAgICAgIHRoaXMucmVzdFNlcnZpY2Uua3ljRGV0YWlscyA9IG51bGw7XHJcbiAgICAgIHRoaXMucGFuVmVyaWZ5TG9hZGVyID0gZmFsc2U7O1xyXG4gICAgICB0aGlzLmNoZWNrS3ljVmVyaWZpY2F0aW9uKCk7XHJcbiAgICB9LCAoKSA9PiB7XHJcbiAgICAgIHRoaXMucGFuVmVyaWZ5TG9hZGVyID0gZmFsc2U7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgdmFsaWRhdGVQYW4oKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCBwYW5SZWdleCA9IC9eW0EtWl17NX1bMC05XXs0fVtBLVpdJC87XHJcbiAgICByZXR1cm4gcGFuUmVnZXgudGVzdCh0aGlzLnBhblJlcXVlc3QucGFuTnVtYmVyKTtcclxuICB9XHJcblxyXG4gIHNlbmRBYWRoYXJPdHAoKSB7XHJcbiAgICB0aGlzLmFhZGhhclZlcmlmeUxvYWRlciA9IHRydWU7XHJcbiAgICBpZighdGhpcy52YWxpZGF0ZUFhZGhhYXIoKSkge1xyXG4gICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZCh7XHJcbiAgICAgICAgc2V2ZXJpdHk6ICdlcnJvcicsXHJcbiAgICAgICAgc3VtbWFyeTogJ0FhZGhhciBOdW1iZXInLFxyXG4gICAgICAgIGRldGFpbDogJ0VudGVyIHZhbGlkIEFhZGhhciBudW1iZXInXHJcbiAgICAgIH0pO1xyXG4gICAgICB0aGlzLmFhZGhhclZlcmlmeUxvYWRlciA9IGZhbHNlO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5yZXN0U2VydmljZS5zZW5kQWFkaGFyT3RwKHRoaXMuYWFkaGFyUmVxdWVzdCkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICB0aGlzLmFhZGhhck90cFNlbnQgPSB0cnVlO1xyXG4gICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZCh7XHJcbiAgICAgICAgc2V2ZXJpdHk6ICdzdWNjZXNzJyxcclxuICAgICAgICBzdW1tYXJ5OiAnT1RQIFNlbnQnLFxyXG4gICAgICAgIGRldGFpbDogJ0FBZGhhciBPVFAgU2VudCBpbiByZWdpc3RlcmVkIG1vYmlsZSBudW1iZXInXHJcbiAgICAgIH0pO1xyXG4gICAgICB0aGlzLmFhZGhhclZlcmlmeUxvYWRlciA9IGZhbHNlO1xyXG4gICAgICB0aGlzLnZlcmlmeUFhZGhhclJlcXVlc3QucmVmSWQgPSByZXMubWVzc2FnZT8ucmVmX2lkO1xyXG4gICAgfSwoKSA9PiB7XHJcbiAgICAgIHRoaXMuYWFkaGFyVmVyaWZ5TG9hZGVyID0gZmFsc2U7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgdmVyaWZ5QWFkaGFyT3RwKCkge1xyXG4gICAgdGhpcy5hYWRoYXJWZXJpZnlMb2FkZXIgPSB0cnVlO1xyXG4gICAgdGhpcy52ZXJpZnlBYWRoYXJSZXF1ZXN0Lm90cCA9IFwiXCI7XHJcbiAgICB0aGlzLmFhZGhhck90cEFycmF5LmZvckVhY2goKG90cCkgPT4ge1xyXG4gICAgICB0aGlzLnZlcmlmeUFhZGhhclJlcXVlc3Qub3RwICs9IG90cFxyXG4gICAgfSlcclxuICAgIHRoaXMudmVyaWZ5QWFkaGFyUmVxdWVzdC5hYWRoYWFyTnVtYmVyID0gdGhpcy5hYWRoYXJSZXF1ZXN0LmFhZGhhYXJOdW1iZXI7XHJcblxyXG4gICAgdGhpcy5yZXN0U2VydmljZS52ZXJpZnlBYWRoYXJPdHAodGhpcy52ZXJpZnlBYWRoYXJSZXF1ZXN0KS5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XHJcbiAgICAgIHRoaXMuaXNBYWRoYXJ2ZXJpZmllZCA9IHRydWU7XHJcbiAgICAgIHRoaXMucmVzdFNlcnZpY2Uua3ljRGV0YWlscyA9IG51bGw7XHJcbiAgICAgIHRoaXMuYWFkaGFyVmVyaWZ5TG9hZGVyID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuY2hlY2tLeWNWZXJpZmljYXRpb24oKTtcclxuICAgIH0sICgpID0+IHtcclxuICAgICAgdGhpcy5hYWRoYXJWZXJpZnlMb2FkZXIgPSBmYWxzZTtcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICB2YWxpZGF0ZUFhZGhhYXIoKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCBhYWRoYWFyUmVnZXggPSAvXlsyLTldezF9WzAtOV17MTF9JC87XHJcbiAgICByZXR1cm4gYWFkaGFhclJlZ2V4LnRlc3QodGhpcy5hYWRoYXJSZXF1ZXN0LmFhZGhhYXJOdW1iZXIpO1xyXG4gIH1cclxuXHJcbiAgbW92ZUFhZGhhck90cEN1cnNvcihldmVudDogYW55LCBpZHg6IG51bWJlcikge1xyXG5cclxuICAgIGlmIChpc05hTihOdW1iZXIoZXZlbnQua2V5KSkgJiYgZXZlbnQuY29kZSAhPSBcIkJhY2tzcGFjZVwiKVxyXG4gICAgICByZXR1cm47XHJcblxyXG4gICAgaWYgKGV2ZW50LmNvZGUgIT0gXCJCYWNrc3BhY2VcIikge1xyXG4gICAgICB0aGlzLmFhZGhhck90cEFycmF5W2lkeF0gPSBldmVudC5rZXk7XHJcbiAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiYWFkaGFyT3RwX1wiICsgKGlkeCArIDEpKT8uZm9jdXMoKTtcclxuICAgIH1cclxuICAgIGlmIChldmVudC5jb2RlID09IFwiQmFja3NwYWNlXCIgJiYgIXRoaXMuYWFkaGFyT3RwQXJyYXlbaWR4XSkge1xyXG4gICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImFhZGhhck90cF9cIiArIChpZHggLSAxKSk/LmZvY3VzKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjaGVja0t5Y1ZlcmlmaWNhdGlvbigpIHtcclxuICAgIGlmKHRoaXMuaXNBYWRoYXJ2ZXJpZmllZCAmJiB0aGlzLmlzUGFuVmVyaWZpZWQpIHtcclxuICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Nsb3NlS3ljQ2FudmFzJyk/LmNsaWNrKClcclxuICAgICAgdGhpcy5kaWFsb2dSZWY/LmNsb3NlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjbG9zZURpYWxvZygpIHtcclxuICAgIHRoaXMuZGlhbG9nUmVmPy5jbG9zZSgpO1xyXG4gIH1cclxuXHJcbiAgcmVkaXJlY3RUb1Byb2R1Y3RMaXN0KCkge1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWydwcm9wZXJ0eS1saXN0J10pXHJcbiAgfVxyXG5cclxuICBnZXQgaXNNb2JpbGUoKSB7XHJcbiAgICByZXR1cm4gd2luZG93LmlubmVyV2lkdGggPD0gNDc1O1xyXG4gIH1cclxufVxyXG4iLCI8cC10b2FzdCBwb3NpdGlvbj1cImJvdHRvbS1yaWdodFwiIFtiYXNlWkluZGV4XT1cIjEwMDAwMDAwMDAwXCIgW2F1dG9aSW5kZXhdPVwidHJ1ZVwiXHJcbiAgICBbc2hvd1RyYW5zZm9ybU9wdGlvbnNdPVwiaXNNb2JpbGUgPyAndHJhbnNsYXRlWSgtMTAwJSknIDogJydcIj48L3AtdG9hc3Q+XHJcblxyXG48c2VjdGlvbiBjbGFzcz1cIm1haW4tc2VjdGlvblwiPlxyXG4gIDxkaXYgY2xhc3M9XCJkaXNwbGF5LWNlbnRlclwiICpuZ0lmPVwiIShpc1BhblZlcmlmaWVkICYmIGlzQWFkaGFydmVyaWZpZWQpXCI+XHJcbiAgICA8aW1nIGNsYXNzPVwiaW1nXCIgc3JjPVwiaHR0cHM6Ly9wcm9kLXNpbXBvLnMzLmFwLXNvdXRoLTEuYW1hem9uYXdzLmNvbS9wcm9kLWltYWdlcy85NzAzMzJjMTc0MDAzMDE4NzcyNmt5Yy5wbmdcIlxyXG4gICAgICBhbHQ9XCJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWdyb3VwXCI+XHJcbiAgICAgIDxwIGNsYXNzPVwiaGVhZGluZ1wiPkNvbXBsZXRlIFlvdXIgS1lDIHRvIHN0YXJ0IEludmVzdGluZzwvcD5cclxuICAgICAgPHAgY2xhc3M9XCJkZXNjXCI+QmVmb3JlIHlvdSBjYW4gaW52ZXN0LCB3ZSBuZWVkIHRvIHZlcmlmeSB5b3VyIGlkZW50aXR5LCBzaW1wbHkgdXBsb2FkIHlvdXIgZG9jdW1lbnRzLFxyXG4gICAgICAgIDxicj4gc3VibWl0IHlvdXIgS1lDLCBhbmQgbGV0IHVzIGhhbmRsZSB0aGUgcmVzdFxyXG4gICAgICA8L3A+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxidXR0b24gY2xhc3M9XCJzdWJtaXQtYnRuXCIgdHlwZT1cImJ1dHRvblwiIGRhdGEtYnMtdG9nZ2xlPVwib2ZmY2FudmFzXCIgZGF0YS1icy10YXJnZXQ9XCIjb2ZmY2FudmFzUmlnaHRcIlxyXG4gICAgICBhcmlhLWNvbnRyb2xzPVwib2ZmY2FudmFzUmlnaHRcIj5TdWJtaXQgS1lDIE5vdzwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgKm5nSWY9XCJpc1BhblZlcmlmaWVkICYmIGlzQWFkaGFydmVyaWZpZWRcIiBjbGFzcz1cImRpc3BsYXktY2VudGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwidy01MFwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwic2VjdXJlZFwiPlxyXG4gICAgICAgIDxtYXQtaWNvbj5zZWN1cml0eTwvbWF0LWljb24+XHJcbiAgICAgICAgPHA+WW91ciBEYXRhIGlzIFNhZmUgJiBTZWN1cmU8L3A+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cIm10LTJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktc3BhY2VcIj5cclxuICAgICAgICAgIDxsYWJlbCBmb3I9XCJcIj5QQU4gTnVtYmVyPC9sYWJlbD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtYm94XCI+XHJcbiAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBbKG5nTW9kZWwpXT1cInBhblJlcXVlc3QucGFuTnVtYmVyXCIgZGlzYWJsZWQ+XHJcbiAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJ2ZXJpZmllZFwiIHRpdGxlPVwiT1RQIFZlcmlmaWVkXCI+Y2hlY2tfY2lyY2xlPC9tYXQtaWNvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtdC0xXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LXNwYWNlXCI+XHJcbiAgICAgICAgICA8bGFiZWwgZm9yPVwiXCI+QWFkaGFyIE51bWJlcjwvbGFiZWw+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0LWJveFwiPlxyXG4gICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgWyhuZ01vZGVsKV09XCJhYWRoYXJSZXF1ZXN0LmFhZGhhYXJOdW1iZXJcIiBkaXNhYmxlZD5cclxuICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cInZlcmlmaWVkXCIgdGl0bGU9XCJPVFAgVmVyaWZpZWRcIj5jaGVja19jaXJjbGU8L21hdC1pY29uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtdC0xNSB0ZXh0LWNlbnRlclwiPlxyXG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJzdWJtaXQtYnRuXCIgKGNsaWNrKT1cInJlZGlyZWN0VG9Qcm9kdWN0TGlzdCgpXCI+TGV0J3MgR3JvdyBXZWFsdGg8L2J1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9zZWN0aW9uPlxyXG5cclxuPGRpdiBjbGFzcz1cIm9mZmNhbnZhcyBvZmZjYW52YXMtZW5kXCIgdGFiaW5kZXg9XCItMVwiIGlkPVwib2ZmY2FudmFzUmlnaHRcIiBhcmlhLWxhYmVsbGVkYnk9XCJvZmZjYW52YXNSaWdodExhYmVsXCI+XHJcbiAgPGRpdiBjbGFzcz1cImhlYWRlclwiPlxyXG4gICAgPHA+S1lDIERldGFpbHM8L3A+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cIm1pZGRsZS1zZWN0aW9uXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiYm9keVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwic2VjdXJlZFwiPlxyXG4gICAgICAgIDxtYXQtaWNvbj5zZWN1cml0eTwvbWF0LWljb24+XHJcbiAgICAgICAgPHA+WW91ciBEYXRhIGlzIFNhZmUgJiBTZWN1cmU8L3A+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cIm10LTJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktc3BhY2VcIj5cclxuICAgICAgICAgIDxsYWJlbCBmb3I9XCJcIj5QQU4gTnVtYmVyPC9sYWJlbD5cclxuICAgICAgICAgIDxwIGNsYXNzPVwidmVyaWZ5LXRleHRcIiAoY2xpY2spPVwidmVyaWZ5UGFuTnVtYmVyKClcIiAqbmdJZj1cIiFpc1BhblZlcmlmaWVkICYmICFwYW5WZXJpZnlMb2FkZXJcIj5WZXJpZnk8L3A+XHJcbiAgICAgICAgICA8ZGl2ICpuZ0lmPVwicGFuVmVyaWZ5TG9hZGVyXCIgY2xhc3M9XCJreWMtZGV0YWlsXCI+PG1hdC1zcGlubmVyPjwvbWF0LXNwaW5uZXI+PC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0LWJveFwiPlxyXG4gICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgWyhuZ01vZGVsKV09XCJwYW5SZXF1ZXN0LnBhbk51bWJlclwiIFtkaXNhYmxlZF09XCJpc1BhblZlcmlmaWVkXCI+XHJcbiAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJ2ZXJpZmllZFwiIHRpdGxlPVwiT1RQIFZlcmlmaWVkXCIgKm5nSWY9XCJpc1BhblZlcmlmaWVkXCI+Y2hlY2tfY2lyY2xlPC9tYXQtaWNvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtdC0xXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LXNwYWNlXCI+XHJcbiAgICAgICAgICA8bGFiZWwgZm9yPVwiXCI+QWFkaGFyIE51bWJlcjwvbGFiZWw+XHJcbiAgICAgICAgICA8cCBjbGFzcz1cInZlcmlmeS10ZXh0XCIgKGNsaWNrKT1cInNlbmRBYWRoYXJPdHAoKVwiICpuZ0lmPVwiIWFhZGhhck90cFNlbnQgJiYgIWFhZGhhclZlcmlmeUxvYWRlclwiPlNlbmQgT1RQPC9wPlxyXG4gICAgICAgICAgPGRpdiAqbmdJZj1cImFhZGhhclZlcmlmeUxvYWRlciAmJiAhYWFkaGFyT3RwU2VudFwiIGNsYXNzPVwia3ljLWRldGFpbFwiPjxtYXQtc3Bpbm5lcj48L21hdC1zcGlubmVyPjwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1ib3hcIj5cclxuICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIFsobmdNb2RlbCldPVwiYWFkaGFyUmVxdWVzdC5hYWRoYWFyTnVtYmVyXCIgW2Rpc2FibGVkXT1cImlzQWFkaGFydmVyaWZpZWRcIj5cclxuICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cInZlcmlmaWVkXCIgdGl0bGU9XCJPVFAgVmVyaWZpZWRcIiAqbmdJZj1cImFhZGhhck90cFNlbnRcIj5jaGVja19jaXJjbGU8L21hdC1pY29uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm10LTFcIiAqbmdJZj1cImFhZGhhck90cFNlbnRcIj5cclxuICAgICAgICA8bGFiZWwgZm9yPVwiXCI+RW50ZXIgT1RQPC9sYWJlbD5cclxuXHJcbiAgICAgICAgPGRpdiBpZD1cIm90cFwiIGNsYXNzPVwib3RwLWlucHV0XCI+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBvdHAgb2YgWzEsMiwzLDQsNSw2XTsgbGV0IGlkeCA9IGluZGV4XCI+XHJcbiAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwibnVtYmVyXCIgbWF4PVwiOVwiIGNsYXNzPVwib3RwLWlucHV0XCIgWyhuZ01vZGVsKV09XCJhYWRoYXJPdHBBcnJheVtpZHhdXCJcclxuICAgICAgICAgICAgICAoa2V5dXApPVwibW92ZUFhZGhhck90cEN1cnNvcigkZXZlbnQsIGlkeClcIiBbaWRdPVwiJ2FhZGhhck90cF8nK2lkeFwiIC8+XHJcbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwiZm9vdGVyXCI+XHJcbiAgICA8YnV0dG9uIGNsYXNzPVwiY2FuY2VsLWJ0blwiIGRhdGEtYnMtZGlzbWlzcz1cIm9mZmNhbnZhc1wiIGlkPVwiY2xvc2VLeWNDYW52YXNcIiAoY2xpY2spPVwiY2xvc2VEaWFsb2coKVwiPkNhbmNlbDwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cInN1Ym1pdC1idG5cIiAqbmdJZj1cImFhZGhhck90cFNlbnQgJiYgIWFhZGhhclZlcmlmeUxvYWRlclwiIChjbGljayk9XCJ2ZXJpZnlBYWRoYXJPdHAoKVwiPlZlcmlmeTwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cImQtZmxleCBzdWJtaXQtYnRuXCIgKm5nSWY9XCJhYWRoYXJWZXJpZnlMb2FkZXIgJiYgYWFkaGFyT3RwU2VudFwiPlxyXG4gICAgICA8bWF0LXNwaW5uZXI+PC9tYXQtc3Bpbm5lcj4gVmVyaWZ5aW5nXHJcbiAgICA8L2J1dHRvbj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -8,13 +8,17 @@ import { NeedHelpComponent } from '../../elements/need-help/need-help.component'
8
8
  import { MatIcon } from '@angular/material/icon';
9
9
  import { CommonModule } from '@angular/common';
10
10
  import { KycDetailsComponent } from '../kyc-details/kyc-details.component';
11
+ import { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader';
11
12
  import * as i0 from "@angular/core";
12
13
  import * as i1 from "../../services/rest.service";
13
14
  import * as i2 from "@angular/common";
15
+ import * as i3 from "ngx-skeleton-loader";
14
16
  export class ProfileSectionComponent {
15
17
  constructor(restService) {
16
18
  this.restService = restService;
17
19
  this.selectedPanel = "PORTFOLIO";
20
+ this.skelLoader = true;
21
+ this.skelArray = Array(2);
18
22
  this.sidePanelTabs = [
19
23
  { value: "PORTFOLIO", viewValue: "My Portfolio" },
20
24
  { value: "PROPERTIES", viewValue: "My Properties" },
@@ -29,8 +33,10 @@ export class ProfileSectionComponent {
29
33
  this.getInvestorDetails();
30
34
  }
31
35
  getInvestorDetails() {
36
+ this.skelLoader = true;
32
37
  this.restService.getInvesterById().subscribe((res) => {
33
38
  this.investorDetails = res.message;
39
+ this.skelLoader = false;
34
40
  });
35
41
  }
36
42
  getInitials() {
@@ -39,14 +45,14 @@ export class ProfileSectionComponent {
39
45
  return initials;
40
46
  }
41
47
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ProfileSectionComponent, deps: [{ token: i1.RestService }], target: i0.ɵɵFactoryTarget.Component }); }
42
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.4", type: ProfileSectionComponent, isStandalone: true, selector: "simpo-profile-section", inputs: { data: "data" }, ngImport: i0, template: "<section class=\"main-container d-flex justify-content-center\">\r\n <div class=\"side-panel\">\r\n <div class=\"details\">\r\n <div class=\"left-right d-flex align-items-center gap-10\">\r\n <div class=\"logo left w-15\">{{ getInitials() }}</div><div class=\"right name w-85\">{{investorDetails?.fullName || 'N/A'}}</div>\r\n </div>\r\n <div class=\"left-right d-flex align-items-center gap-10\">\r\n <div class=\"left w-15\"><mat-icon class=\"d-flex align-items-center justify-content-center f-18\"> phone</mat-icon>\r\n </div><div class=\"right w-80\">{{investorDetails?.phoneNumber || 'N/A'}}</div>\r\n </div>\r\n <div class=\"left-right d-flex align-items-center gap-10\">\r\n <div class=\"left w-15\"><mat-icon class=\" d-flex align-items-center justify-content-center f-18\"> email</mat-icon>\r\n </div><div class=\"right w-80\">{{investorDetails?.emailId || 'N/A'}}</div>\r\n </div>\r\n </div>\r\n <div class=\"tab-section\">\r\n <div class=\"tabs cursor-pointer\" *ngFor=\"let ele of sidePanelTabs\" (click)=\"selectedPanel = ele.value\" [class.activeTab]=\"selectedPanel == ele.value\">\r\n {{ele.viewValue}}\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"display-section\">\r\n <ng-container *ngIf=\"selectedPanel == 'KYC'\">\r\n <simpo-kyc-details></simpo-kyc-details>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedPanel == 'PORTFOLIO'\">\r\n <simpo-portfolio></simpo-portfolio>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedPanel == 'PROPERTIES'\">\r\n <simpo-properties></simpo-properties>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedPanel == 'ORDERS'\">\r\n <simpo-my-orders></simpo-my-orders>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedPanel == 'DOCUMENTS'\">\r\n <simpo-my-documents></simpo-my-documents>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedPanel == 'STATEMENT'\">\r\n <simpo-my-statement></simpo-my-statement>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedPanel == 'HELP'\">\r\n <simpo-need-help></simpo-need-help>\r\n </ng-container>\r\n </div>\r\n</section>\r\n", styles: ["*{font-family:DM Sans}mat-icon{font-family:Material Icons!important}.main-container{height:100vh;width:100%;padding:10px 0;gap:15px;background:#f9fbff}.side-panel{width:18%;background:#fff;border:2px solid rgba(241,246,255,1);border-radius:10px}.display-section{width:60%}.w-15{width:15%}.w-85{width:85%}.cursor-pointer{cursor:pointer}.details{background:#19a6c6;border-radius:10px;padding:10px;margin:15px}.left-right{gap:10px;margin-bottom:10px}.logo{background:#e6f0ff;border-radius:50%;font-size:14px;text-align:center;font-weight:600;line-height:24px;padding:3px;color:#405071!important}.name{font-size:14px;font-weight:600;line-height:24px;color:#fff!important}.f-18{font-size:18px}.gap-10{gap:10px}.left{color:#fffc}.right{font-weight:500;font-size:14px;line-height:24px;color:#fffc}.tab-section{margin-top:15px}.tabs{margin-bottom:25px;font-weight:500;font-size:16px;line-height:24px;color:#01161e;margin-left:8px}.activeTab{border-left:8px solid rgba(248,169,56,1);font-weight:700!important;color:#219ebc;margin-right:15px;background:#f1f3f7;padding:10px;border-radius:0 6px 6px 0;margin-left:unset}@media only screen and (max-width: 475px){.display-section{width:95%}}\n"], dependencies: [{ kind: "component", type: PortfolioComponent, selector: "simpo-portfolio" }, { kind: "component", type: PropertiesComponent, selector: "simpo-properties" }, { kind: "component", type: MyDocumentsComponent, selector: "simpo-my-documents" }, { kind: "component", type: MyOrdersComponent, selector: "simpo-my-orders" }, { kind: "component", type: MyStatementComponent, selector: "simpo-my-statement" }, { kind: "component", type: NeedHelpComponent, selector: "simpo-need-help" }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: KycDetailsComponent, selector: "simpo-kyc-details" }] }); }
48
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.4", type: ProfileSectionComponent, isStandalone: true, selector: "simpo-profile-section", inputs: { data: "data" }, ngImport: i0, template: "<section class=\"main-container d-flex justify-content-center\">\r\n <div class=\"side-panel\">\r\n <div class=\"details\">\r\n <div class=\"left-right d-flex align-items-center gap-10\" *ngIf=\"!skelLoader\">\r\n <div class=\"logo left w-15\">{{ getInitials() }}</div><div class=\"right name w-85\">{{investorDetails?.fullName || 'N/A'}}</div>\r\n </div>\r\n <div class=\"left-right d-flex align-items-center gap-10\" *ngIf=\"!skelLoader\">\r\n <div class=\"left w-15\"><mat-icon class=\"d-flex align-items-center justify-content-center f-18\"> phone</mat-icon>\r\n </div><div class=\"right w-80\">{{investorDetails?.phoneNumber || 'N/A'}}</div>\r\n </div>\r\n <div class=\"left-right d-flex align-items-center gap-10\" *ngIf=\"!skelLoader\">\r\n <div class=\"left w-15\"><mat-icon class=\" d-flex align-items-center justify-content-center f-18\"> email</mat-icon>\r\n </div><div class=\"right w-80\">{{investorDetails?.emailId || 'N/A'}}</div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"skelLoader\">\r\n <div class=\"col-12\" >\r\n <ng-container *ngTemplateOutlet=\"skeleton\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n \r\n <div class=\"tab-section\">\r\n <div class=\"tabs cursor-pointer\" *ngFor=\"let ele of sidePanelTabs\" (click)=\"selectedPanel = ele.value\" [class.activeTab]=\"selectedPanel == ele.value\">\r\n {{ele.viewValue}}\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"display-section\">\r\n <ng-container *ngIf=\"selectedPanel == 'KYC'\">\r\n <simpo-kyc-details></simpo-kyc-details>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedPanel == 'PORTFOLIO'\">\r\n <simpo-portfolio></simpo-portfolio>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedPanel == 'PROPERTIES'\">\r\n <simpo-properties></simpo-properties>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedPanel == 'ORDERS'\">\r\n <simpo-my-orders></simpo-my-orders>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedPanel == 'DOCUMENTS'\">\r\n <simpo-my-documents></simpo-my-documents>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedPanel == 'STATEMENT'\">\r\n <simpo-my-statement></simpo-my-statement>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedPanel == 'HELP'\">\r\n <simpo-need-help></simpo-need-help>\r\n </ng-container>\r\n </div>\r\n</section>\r\n<ng-template #skeleton>\r\n <div class=\"wrapper-1\" >\r\n <ngx-skeleton-loader [theme]=\"{\r\n width: '15%',\r\n 'border-radius': '50%',\r\n height: '4vh',\r\n 'margin-bottom': '5px',\r\n 'margin-right': '5px'\r\n }\">\r\n </ngx-skeleton-loader>\r\n <ngx-skeleton-loader [theme]=\"{\r\n width: '80%',\r\n 'border-radius': '5px',\r\n height: '3vh',\r\n 'margin-bottom': '5px'\r\n }\">\r\n </ngx-skeleton-loader>\r\n \r\n </div> \r\n <div class=\"wrapper\" *ngFor=\"let item of skelArray\">\r\n <ngx-skeleton-loader [theme]=\"{\r\n width: '100%',\r\n 'border-radius': '5px',\r\n height: '3vh',\r\n 'margin-bottom': '5px'\r\n }\">\r\n </ngx-skeleton-loader>\r\n </div> \r\n</ng-template>\r\n", styles: ["*{font-family:DM Sans}mat-icon{font-family:Material Icons!important}.main-container{height:100vh;width:100%;padding:10px 0;gap:15px;background:#f9fbff}.side-panel{width:18%;background:#fff;border:2px solid rgba(241,246,255,1);border-radius:10px}.display-section{width:60%}.w-15{width:15%}.w-85{width:85%}.cursor-pointer{cursor:pointer}.details{background:#19a6c6;border-radius:10px;padding:10px;margin:15px}.left-right{gap:10px;margin-bottom:10px}.logo{background:#e6f0ff;border-radius:50%;font-size:14px;text-align:center;font-weight:600;line-height:24px;padding:3px;color:#405071!important}.name{font-size:14px;font-weight:600;line-height:24px;color:#fff!important}.f-18{font-size:18px}.gap-10{gap:10px}.left{color:#fffc}.right{font-weight:500;font-size:14px;line-height:24px;color:#fffc}.tab-section{margin-top:15px}.tabs{margin-bottom:25px;font-weight:500;font-size:16px;line-height:24px;color:#01161e;margin-left:8px}.activeTab{border-left:8px solid rgba(248,169,56,1);font-weight:700!important;color:#219ebc;margin-right:15px;background:#f1f3f7;padding:10px;border-radius:0 6px 6px 0;margin-left:unset}@media only screen and (max-width: 475px){.display-section{width:95%}}\n"], dependencies: [{ kind: "component", type: PortfolioComponent, selector: "simpo-portfolio" }, { kind: "component", type: PropertiesComponent, selector: "simpo-properties" }, { kind: "component", type: MyDocumentsComponent, selector: "simpo-my-documents" }, { kind: "component", type: MyOrdersComponent, selector: "simpo-my-orders" }, { kind: "component", type: MyStatementComponent, selector: "simpo-my-statement" }, { kind: "component", type: NeedHelpComponent, selector: "simpo-need-help" }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: KycDetailsComponent, selector: "simpo-kyc-details" }, { kind: "ngmodule", type: NgxSkeletonLoaderModule }, { kind: "component", type: i3.NgxSkeletonLoaderComponent, selector: "ngx-skeleton-loader", inputs: ["count", "loadingText", "appearance", "animation", "ariaLabel", "theme"] }] }); }
43
49
  }
44
50
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ProfileSectionComponent, decorators: [{
45
51
  type: Component,
46
52
  args: [{ selector: 'simpo-profile-section', standalone: true, imports: [PortfolioComponent, PropertiesComponent, MyDocumentsComponent, MyOrdersComponent, MyStatementComponent, NeedHelpComponent, MatIcon, CommonModule,
47
- KycDetailsComponent
48
- ], template: "<section class=\"main-container d-flex justify-content-center\">\r\n <div class=\"side-panel\">\r\n <div class=\"details\">\r\n <div class=\"left-right d-flex align-items-center gap-10\">\r\n <div class=\"logo left w-15\">{{ getInitials() }}</div><div class=\"right name w-85\">{{investorDetails?.fullName || 'N/A'}}</div>\r\n </div>\r\n <div class=\"left-right d-flex align-items-center gap-10\">\r\n <div class=\"left w-15\"><mat-icon class=\"d-flex align-items-center justify-content-center f-18\"> phone</mat-icon>\r\n </div><div class=\"right w-80\">{{investorDetails?.phoneNumber || 'N/A'}}</div>\r\n </div>\r\n <div class=\"left-right d-flex align-items-center gap-10\">\r\n <div class=\"left w-15\"><mat-icon class=\" d-flex align-items-center justify-content-center f-18\"> email</mat-icon>\r\n </div><div class=\"right w-80\">{{investorDetails?.emailId || 'N/A'}}</div>\r\n </div>\r\n </div>\r\n <div class=\"tab-section\">\r\n <div class=\"tabs cursor-pointer\" *ngFor=\"let ele of sidePanelTabs\" (click)=\"selectedPanel = ele.value\" [class.activeTab]=\"selectedPanel == ele.value\">\r\n {{ele.viewValue}}\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"display-section\">\r\n <ng-container *ngIf=\"selectedPanel == 'KYC'\">\r\n <simpo-kyc-details></simpo-kyc-details>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedPanel == 'PORTFOLIO'\">\r\n <simpo-portfolio></simpo-portfolio>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedPanel == 'PROPERTIES'\">\r\n <simpo-properties></simpo-properties>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedPanel == 'ORDERS'\">\r\n <simpo-my-orders></simpo-my-orders>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedPanel == 'DOCUMENTS'\">\r\n <simpo-my-documents></simpo-my-documents>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedPanel == 'STATEMENT'\">\r\n <simpo-my-statement></simpo-my-statement>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedPanel == 'HELP'\">\r\n <simpo-need-help></simpo-need-help>\r\n </ng-container>\r\n </div>\r\n</section>\r\n", styles: ["*{font-family:DM Sans}mat-icon{font-family:Material Icons!important}.main-container{height:100vh;width:100%;padding:10px 0;gap:15px;background:#f9fbff}.side-panel{width:18%;background:#fff;border:2px solid rgba(241,246,255,1);border-radius:10px}.display-section{width:60%}.w-15{width:15%}.w-85{width:85%}.cursor-pointer{cursor:pointer}.details{background:#19a6c6;border-radius:10px;padding:10px;margin:15px}.left-right{gap:10px;margin-bottom:10px}.logo{background:#e6f0ff;border-radius:50%;font-size:14px;text-align:center;font-weight:600;line-height:24px;padding:3px;color:#405071!important}.name{font-size:14px;font-weight:600;line-height:24px;color:#fff!important}.f-18{font-size:18px}.gap-10{gap:10px}.left{color:#fffc}.right{font-weight:500;font-size:14px;line-height:24px;color:#fffc}.tab-section{margin-top:15px}.tabs{margin-bottom:25px;font-weight:500;font-size:16px;line-height:24px;color:#01161e;margin-left:8px}.activeTab{border-left:8px solid rgba(248,169,56,1);font-weight:700!important;color:#219ebc;margin-right:15px;background:#f1f3f7;padding:10px;border-radius:0 6px 6px 0;margin-left:unset}@media only screen and (max-width: 475px){.display-section{width:95%}}\n"] }]
53
+ KycDetailsComponent, NgxSkeletonLoaderModule
54
+ ], template: "<section class=\"main-container d-flex justify-content-center\">\r\n <div class=\"side-panel\">\r\n <div class=\"details\">\r\n <div class=\"left-right d-flex align-items-center gap-10\" *ngIf=\"!skelLoader\">\r\n <div class=\"logo left w-15\">{{ getInitials() }}</div><div class=\"right name w-85\">{{investorDetails?.fullName || 'N/A'}}</div>\r\n </div>\r\n <div class=\"left-right d-flex align-items-center gap-10\" *ngIf=\"!skelLoader\">\r\n <div class=\"left w-15\"><mat-icon class=\"d-flex align-items-center justify-content-center f-18\"> phone</mat-icon>\r\n </div><div class=\"right w-80\">{{investorDetails?.phoneNumber || 'N/A'}}</div>\r\n </div>\r\n <div class=\"left-right d-flex align-items-center gap-10\" *ngIf=\"!skelLoader\">\r\n <div class=\"left w-15\"><mat-icon class=\" d-flex align-items-center justify-content-center f-18\"> email</mat-icon>\r\n </div><div class=\"right w-80\">{{investorDetails?.emailId || 'N/A'}}</div>\r\n </div>\r\n <div class=\"row\" *ngIf=\"skelLoader\">\r\n <div class=\"col-12\" >\r\n <ng-container *ngTemplateOutlet=\"skeleton\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n \r\n <div class=\"tab-section\">\r\n <div class=\"tabs cursor-pointer\" *ngFor=\"let ele of sidePanelTabs\" (click)=\"selectedPanel = ele.value\" [class.activeTab]=\"selectedPanel == ele.value\">\r\n {{ele.viewValue}}\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"display-section\">\r\n <ng-container *ngIf=\"selectedPanel == 'KYC'\">\r\n <simpo-kyc-details></simpo-kyc-details>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedPanel == 'PORTFOLIO'\">\r\n <simpo-portfolio></simpo-portfolio>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedPanel == 'PROPERTIES'\">\r\n <simpo-properties></simpo-properties>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedPanel == 'ORDERS'\">\r\n <simpo-my-orders></simpo-my-orders>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedPanel == 'DOCUMENTS'\">\r\n <simpo-my-documents></simpo-my-documents>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedPanel == 'STATEMENT'\">\r\n <simpo-my-statement></simpo-my-statement>\r\n </ng-container>\r\n <ng-container *ngIf=\"selectedPanel == 'HELP'\">\r\n <simpo-need-help></simpo-need-help>\r\n </ng-container>\r\n </div>\r\n</section>\r\n<ng-template #skeleton>\r\n <div class=\"wrapper-1\" >\r\n <ngx-skeleton-loader [theme]=\"{\r\n width: '15%',\r\n 'border-radius': '50%',\r\n height: '4vh',\r\n 'margin-bottom': '5px',\r\n 'margin-right': '5px'\r\n }\">\r\n </ngx-skeleton-loader>\r\n <ngx-skeleton-loader [theme]=\"{\r\n width: '80%',\r\n 'border-radius': '5px',\r\n height: '3vh',\r\n 'margin-bottom': '5px'\r\n }\">\r\n </ngx-skeleton-loader>\r\n \r\n </div> \r\n <div class=\"wrapper\" *ngFor=\"let item of skelArray\">\r\n <ngx-skeleton-loader [theme]=\"{\r\n width: '100%',\r\n 'border-radius': '5px',\r\n height: '3vh',\r\n 'margin-bottom': '5px'\r\n }\">\r\n </ngx-skeleton-loader>\r\n </div> \r\n</ng-template>\r\n", styles: ["*{font-family:DM Sans}mat-icon{font-family:Material Icons!important}.main-container{height:100vh;width:100%;padding:10px 0;gap:15px;background:#f9fbff}.side-panel{width:18%;background:#fff;border:2px solid rgba(241,246,255,1);border-radius:10px}.display-section{width:60%}.w-15{width:15%}.w-85{width:85%}.cursor-pointer{cursor:pointer}.details{background:#19a6c6;border-radius:10px;padding:10px;margin:15px}.left-right{gap:10px;margin-bottom:10px}.logo{background:#e6f0ff;border-radius:50%;font-size:14px;text-align:center;font-weight:600;line-height:24px;padding:3px;color:#405071!important}.name{font-size:14px;font-weight:600;line-height:24px;color:#fff!important}.f-18{font-size:18px}.gap-10{gap:10px}.left{color:#fffc}.right{font-weight:500;font-size:14px;line-height:24px;color:#fffc}.tab-section{margin-top:15px}.tabs{margin-bottom:25px;font-weight:500;font-size:16px;line-height:24px;color:#01161e;margin-left:8px}.activeTab{border-left:8px solid rgba(248,169,56,1);font-weight:700!important;color:#219ebc;margin-right:15px;background:#f1f3f7;padding:10px;border-radius:0 6px 6px 0;margin-left:unset}@media only screen and (max-width: 475px){.display-section{width:95%}}\n"] }]
49
55
  }], ctorParameters: () => [{ type: i1.RestService }], propDecorators: { data: [{
50
56
  type: Input
51
57
  }] } });
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS1zZWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvc2VjdGlvbnMvcHJvZmlsZS1zZWN0aW9uL3Byb2ZpbGUtc2VjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL3Byb2ZpbGUtc2VjdGlvbi9wcm9maWxlLXNlY3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDbEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDckYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDMUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDakYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDMUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFFakYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQzs7OztBQWEzRSxNQUFNLE9BQU8sdUJBQXVCO0lBR2hDLFlBQW9CLFdBQXdCO1FBQXhCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBUTVDLGtCQUFhLEdBQVksV0FBVyxDQUFBO1FBRXBDLGtCQUFhLEdBQVc7WUFDdEIsRUFBQyxLQUFLLEVBQUcsV0FBVyxFQUFHLFNBQVMsRUFBRyxjQUFjLEVBQUM7WUFDbEQsRUFBQyxLQUFLLEVBQUcsWUFBWSxFQUFHLFNBQVMsRUFBRyxlQUFlLEVBQUM7WUFDcEQsZ0RBQWdEO1lBQ2hELHNEQUFzRDtZQUN0RCx1REFBdUQ7WUFDdkQsRUFBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUM7WUFDaEMsOENBQThDO1NBQy9DLENBQUE7SUFoQkQsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBZUQsa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBUSxFQUFFLEVBQUU7WUFDeEQsSUFBSSxDQUFDLGVBQWUsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDO1FBQ3JDLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELFdBQVc7UUFDVCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLFFBQVEsRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDN0QsTUFBTSxRQUFRLEdBQUcsU0FBUyxFQUFFLEdBQUcsQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN0RixPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDOzhHQWxDUSx1QkFBdUI7a0dBQXZCLHVCQUF1QiwyR0N2QnBDLGcxRUE2Q0Esc3RDRDVCWSxrQkFBa0IsNERBQUMsbUJBQW1CLDZEQUFDLG9CQUFvQiwrREFBQyxpQkFBaUIsNERBQUMsb0JBQW9CLCtEQUFDLGlCQUFpQiw0REFBQyxPQUFPLDBJQUFDLFlBQVksZ1FBQ2pKLG1CQUFtQjs7MkZBS1YsdUJBQXVCO2tCQVRuQyxTQUFTOytCQUNFLHVCQUF1QixjQUNyQixJQUFJLFdBQ1AsQ0FBQyxrQkFBa0IsRUFBQyxtQkFBbUIsRUFBQyxvQkFBb0IsRUFBQyxpQkFBaUIsRUFBQyxvQkFBb0IsRUFBQyxpQkFBaUIsRUFBQyxPQUFPLEVBQUMsWUFBWTt3QkFDakosbUJBQW1CO3FCQUNwQjtnRkFLVSxJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFBvcnRmb2xpb0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL2VsZW1lbnRzL3BvcnRmb2xpby9wb3J0Zm9saW8uY29tcG9uZW50JztcclxuaW1wb3J0IHsgUHJvcGVydGllc0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL2VsZW1lbnRzL3Byb3BlcnRpZXMvcHJvcGVydGllcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNeURvY3VtZW50c0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL2VsZW1lbnRzL215LWRvY3VtZW50cy9teS1kb2N1bWVudHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTXlPcmRlcnNDb21wb25lbnQgfSBmcm9tICcuLi8uLi9lbGVtZW50cy9teS1vcmRlcnMvbXktb3JkZXJzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE15U3RhdGVtZW50Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZWxlbWVudHMvbXktc3RhdGVtZW50L215LXN0YXRlbWVudC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBOZWVkSGVscENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2VsZW1lbnRzL25lZWQtaGVscC9uZWVkLWhlbHAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUHJvZmlsZVNlY3Rpb25Nb2RlbCB9IGZyb20gJy4vcHJvZmlsZS1zZWN0aW9uLm1vZGFsJztcclxuaW1wb3J0IHsgTWF0SWNvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBLeWNEZXRhaWxzQ29tcG9uZW50IH0gZnJvbSAnLi4va3ljLWRldGFpbHMva3ljLWRldGFpbHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUmVzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9yZXN0LnNlcnZpY2UnO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2ltcG8tcHJvZmlsZS1zZWN0aW9uJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtQb3J0Zm9saW9Db21wb25lbnQsUHJvcGVydGllc0NvbXBvbmVudCxNeURvY3VtZW50c0NvbXBvbmVudCxNeU9yZGVyc0NvbXBvbmVudCxNeVN0YXRlbWVudENvbXBvbmVudCxOZWVkSGVscENvbXBvbmVudCxNYXRJY29uLENvbW1vbk1vZHVsZSxcclxuICAgIEt5Y0RldGFpbHNDb21wb25lbnRcclxuICBdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9maWxlLXNlY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9wcm9maWxlLXNlY3Rpb24uY29tcG9uZW50LmNzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIFByb2ZpbGVTZWN0aW9uQ29tcG9uZW50IHtcclxuICAgIEBJbnB1dCgpIGRhdGE/OlByb2ZpbGVTZWN0aW9uTW9kZWw7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZXN0U2VydmljZTogUmVzdFNlcnZpY2Upe1xyXG5cclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpe1xyXG4gICAgICB0aGlzLmdldEludmVzdG9yRGV0YWlscygpO1xyXG4gICAgfVxyXG5cclxuICAgIHNlbGVjdGVkUGFuZWwgOiBzdHJpbmcgPSBcIlBPUlRGT0xJT1wiXHJcblxyXG4gICAgc2lkZVBhbmVsVGFicyA6IGFueVtdID0gW1xyXG4gICAgICB7dmFsdWUgOiBcIlBPUlRGT0xJT1wiICwgdmlld1ZhbHVlIDogXCJNeSBQb3J0Zm9saW9cIn0sXHJcbiAgICAgIHt2YWx1ZSA6IFwiUFJPUEVSVElFU1wiICwgdmlld1ZhbHVlIDogXCJNeSBQcm9wZXJ0aWVzXCJ9LFxyXG4gICAgICAvLyB7dmFsdWUgOiBcIk9SREVSU1wiICwgdmlld1ZhbHVlIDogXCJNeSBPcmRlcnNcIn0sXHJcbiAgICAgIC8vIHt2YWx1ZSA6IFwiRE9DVU1FTlRTXCIgLCB2aWV3VmFsdWUgOiBcIk15IERvY3VtZW50c1wifSxcclxuICAgICAgLy8ge3ZhbHVlIDogXCJTVEFURU1FTlRcIiAsIHZpZXdWYWx1ZSA6IFwiTXkgU3RhdGVtZW50c1wifSxcclxuICAgICAge3ZhbHVlOiBcIktZQ1wiLCB2aWV3VmFsdWU6IFwiS1lDXCJ9LFxyXG4gICAgICAvLyB7dmFsdWUgOiBcIkhFTFBcIiAsIHZpZXdWYWx1ZSA6IFwiTmVlZCBIZWxwXCJ9LFxyXG4gICAgXVxyXG4gICAgaW52ZXN0b3JEZXRhaWxzOiBhbnk7XHJcblxyXG4gICAgZ2V0SW52ZXN0b3JEZXRhaWxzKCkge1xyXG4gICAgICB0aGlzLnJlc3RTZXJ2aWNlLmdldEludmVzdGVyQnlJZCgpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgICB0aGlzLmludmVzdG9yRGV0YWlscyA9IHJlcy5tZXNzYWdlO1xyXG4gICAgICB9KVxyXG4gICAgfVxyXG5cclxuICAgIGdldEluaXRpYWxzKCk6IHN0cmluZyB7XHJcbiAgICAgIGNvbnN0IG5hbWVQYXJ0cyA9IHRoaXMuaW52ZXN0b3JEZXRhaWxzPy5mdWxsTmFtZT8uc3BsaXQoJyAnKTtcclxuICAgICAgY29uc3QgaW5pdGlhbHMgPSBuYW1lUGFydHM/Lm1hcCgocGFydDogYW55KSA9PiBwYXJ0LmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpKS5qb2luKCcnKTtcclxuICAgICAgcmV0dXJuIGluaXRpYWxzO1xyXG4gICAgfVxyXG5cclxufVxyXG4iLCI8c2VjdGlvbiBjbGFzcz1cIm1haW4tY29udGFpbmVyIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwic2lkZS1wYW5lbFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkZXRhaWxzXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LXJpZ2h0IGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTEwXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibG9nbyBsZWZ0IHctMTVcIj57eyBnZXRJbml0aWFscygpIH19PC9kaXY+PGRpdiBjbGFzcz1cInJpZ2h0IG5hbWUgdy04NVwiPnt7aW52ZXN0b3JEZXRhaWxzPy5mdWxsTmFtZSB8fCAnTi9BJ319PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1yaWdodCBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGdhcC0xMFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQgdy0xNVwiPjxtYXQtaWNvbiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlciBmLTE4XCI+IHBob25lPC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PjxkaXYgY2xhc3M9XCJyaWdodCB3LTgwXCI+e3tpbnZlc3RvckRldGFpbHM/LnBob25lTnVtYmVyIHx8ICdOL0EnfX08L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LXJpZ2h0IGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTEwXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdCB3LTE1XCI+PG1hdC1pY29uIGNsYXNzPVwiIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlciBmLTE4XCI+IGVtYWlsPC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PjxkaXYgY2xhc3M9XCJyaWdodCB3LTgwXCI+e3tpbnZlc3RvckRldGFpbHM/LmVtYWlsSWQgfHwgJ04vQSd9fTwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidGFiLXNlY3Rpb25cIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRhYnMgY3Vyc29yLXBvaW50ZXJcIiAqbmdGb3I9XCJsZXQgZWxlIG9mIHNpZGVQYW5lbFRhYnNcIiAoY2xpY2spPVwic2VsZWN0ZWRQYW5lbCA9IGVsZS52YWx1ZVwiIFtjbGFzcy5hY3RpdmVUYWJdPVwic2VsZWN0ZWRQYW5lbCA9PSBlbGUudmFsdWVcIj5cclxuICAgICAgICAgICAgICB7e2VsZS52aWV3VmFsdWV9fVxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImRpc3BsYXktc2VjdGlvblwiPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0ZWRQYW5lbCA9PSAnS1lDJ1wiPlxyXG4gICAgICAgIDxzaW1wby1reWMtZGV0YWlscz48L3NpbXBvLWt5Yy1kZXRhaWxzPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNlbGVjdGVkUGFuZWwgPT0gJ1BPUlRGT0xJTydcIj5cclxuICAgICAgICA8c2ltcG8tcG9ydGZvbGlvPjwvc2ltcG8tcG9ydGZvbGlvPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNlbGVjdGVkUGFuZWwgPT0gJ1BST1BFUlRJRVMnXCI+XHJcbiAgICAgICAgPHNpbXBvLXByb3BlcnRpZXM+PC9zaW1wby1wcm9wZXJ0aWVzPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNlbGVjdGVkUGFuZWwgPT0gJ09SREVSUydcIj5cclxuICAgICAgICA8c2ltcG8tbXktb3JkZXJzPjwvc2ltcG8tbXktb3JkZXJzPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNlbGVjdGVkUGFuZWwgPT0gJ0RPQ1VNRU5UUydcIj5cclxuICAgICAgICA8c2ltcG8tbXktZG9jdW1lbnRzPjwvc2ltcG8tbXktZG9jdW1lbnRzPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNlbGVjdGVkUGFuZWwgPT0gJ1NUQVRFTUVOVCdcIj5cclxuICAgICAgICA8c2ltcG8tbXktc3RhdGVtZW50Pjwvc2ltcG8tbXktc3RhdGVtZW50PlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNlbGVjdGVkUGFuZWwgPT0gJ0hFTFAnXCI+XHJcbiAgICAgICAgPHNpbXBvLW5lZWQtaGVscD48L3NpbXBvLW5lZWQtaGVscD5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5cclxuPC9zZWN0aW9uPlxyXG4iXX0=
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS1zZWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvc2VjdGlvbnMvcHJvZmlsZS1zZWN0aW9uL3Byb2ZpbGUtc2VjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL3Byb2ZpbGUtc2VjdGlvbi9wcm9maWxlLXNlY3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDbEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDckYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDMUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDakYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDMUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFFakYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUUzRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7QUFZOUQsTUFBTSxPQUFPLHVCQUF1QjtJQUdoQyxZQUFvQixXQUF3QjtRQUF4QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQVE1QyxrQkFBYSxHQUFZLFdBQVcsQ0FBQTtRQUNwQyxlQUFVLEdBQVMsSUFBSSxDQUFDO1FBQ3hCLGNBQVMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFckIsa0JBQWEsR0FBVztZQUN0QixFQUFDLEtBQUssRUFBRyxXQUFXLEVBQUcsU0FBUyxFQUFHLGNBQWMsRUFBQztZQUNsRCxFQUFDLEtBQUssRUFBRyxZQUFZLEVBQUcsU0FBUyxFQUFHLGVBQWUsRUFBQztZQUNwRCxnREFBZ0Q7WUFDaEQsc0RBQXNEO1lBQ3RELHVEQUF1RDtZQUN2RCxFQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBQztZQUNoQyw4Q0FBOEM7U0FDL0MsQ0FBQTtJQWxCRCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFpQkQsa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxVQUFVLEdBQUUsSUFBSSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBUSxFQUFFLEVBQUU7WUFDeEQsSUFBSSxDQUFDLGVBQWUsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDO1lBQ25DLElBQUksQ0FBQyxVQUFVLEdBQUUsS0FBSyxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELFdBQVc7UUFDVCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLFFBQVEsRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDN0QsTUFBTSxRQUFRLEdBQUcsU0FBUyxFQUFFLEdBQUcsQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN0RixPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDOzhHQXRDUSx1QkFBdUI7a0dBQXZCLHVCQUF1QiwyR0N4QnBDLHc1R0FnRkEsc3RDRDlEWSxrQkFBa0IsNERBQUMsbUJBQW1CLDZEQUFDLG9CQUFvQiwrREFBQyxpQkFBaUIsNERBQUMsb0JBQW9CLCtEQUFDLGlCQUFpQiw0REFBQyxPQUFPLDBJQUFDLFlBQVksdWFBQ2pKLG1CQUFtQiw2REFBQyx1QkFBdUI7OzJGQUtsQyx1QkFBdUI7a0JBVG5DLFNBQVM7K0JBQ0UsdUJBQXVCLGNBQ3JCLElBQUksV0FDUCxDQUFDLGtCQUFrQixFQUFDLG1CQUFtQixFQUFDLG9CQUFvQixFQUFDLGlCQUFpQixFQUFDLG9CQUFvQixFQUFDLGlCQUFpQixFQUFDLE9BQU8sRUFBQyxZQUFZO3dCQUNqSixtQkFBbUIsRUFBQyx1QkFBdUI7cUJBQzVDO2dGQUtVLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUG9ydGZvbGlvQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZWxlbWVudHMvcG9ydGZvbGlvL3BvcnRmb2xpby5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQcm9wZXJ0aWVzQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZWxlbWVudHMvcHJvcGVydGllcy9wcm9wZXJ0aWVzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE15RG9jdW1lbnRzQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZWxlbWVudHMvbXktZG9jdW1lbnRzL215LWRvY3VtZW50cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNeU9yZGVyc0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL2VsZW1lbnRzL215LW9yZGVycy9teS1vcmRlcnMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTXlTdGF0ZW1lbnRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9lbGVtZW50cy9teS1zdGF0ZW1lbnQvbXktc3RhdGVtZW50LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE5lZWRIZWxwQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZWxlbWVudHMvbmVlZC1oZWxwL25lZWQtaGVscC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQcm9maWxlU2VjdGlvbk1vZGVsIH0gZnJvbSAnLi9wcm9maWxlLXNlY3Rpb24ubW9kYWwnO1xyXG5pbXBvcnQgeyBNYXRJY29uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEt5Y0RldGFpbHNDb21wb25lbnQgfSBmcm9tICcuLi9reWMtZGV0YWlscy9reWMtZGV0YWlscy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSZXN0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3Jlc3Quc2VydmljZSc7XHJcbmltcG9ydCB7IE5neFNrZWxldG9uTG9hZGVyTW9kdWxlIH0gZnJvbSAnbmd4LXNrZWxldG9uLWxvYWRlcic7XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzaW1wby1wcm9maWxlLXNlY3Rpb24nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1BvcnRmb2xpb0NvbXBvbmVudCxQcm9wZXJ0aWVzQ29tcG9uZW50LE15RG9jdW1lbnRzQ29tcG9uZW50LE15T3JkZXJzQ29tcG9uZW50LE15U3RhdGVtZW50Q29tcG9uZW50LE5lZWRIZWxwQ29tcG9uZW50LE1hdEljb24sQ29tbW9uTW9kdWxlLFxyXG4gICAgS3ljRGV0YWlsc0NvbXBvbmVudCxOZ3hTa2VsZXRvbkxvYWRlck1vZHVsZVxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3Byb2ZpbGUtc2VjdGlvbi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL3Byb2ZpbGUtc2VjdGlvbi5jb21wb25lbnQuY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgUHJvZmlsZVNlY3Rpb25Db21wb25lbnQge1xyXG4gICAgQElucHV0KCkgZGF0YT86UHJvZmlsZVNlY3Rpb25Nb2RlbDtcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlc3RTZXJ2aWNlOiBSZXN0U2VydmljZSl7XHJcblxyXG4gICAgfVxyXG5cclxuICAgIG5nT25Jbml0KCl7XHJcbiAgICAgIHRoaXMuZ2V0SW52ZXN0b3JEZXRhaWxzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgc2VsZWN0ZWRQYW5lbCA6IHN0cmluZyA9IFwiUE9SVEZPTElPXCJcclxuICAgIHNrZWxMb2FkZXI6Ym9vbGVhbj10cnVlO1xyXG4gICAgc2tlbEFycmF5ID0gQXJyYXkoMik7XHJcblxyXG4gICAgc2lkZVBhbmVsVGFicyA6IGFueVtdID0gW1xyXG4gICAgICB7dmFsdWUgOiBcIlBPUlRGT0xJT1wiICwgdmlld1ZhbHVlIDogXCJNeSBQb3J0Zm9saW9cIn0sXHJcbiAgICAgIHt2YWx1ZSA6IFwiUFJPUEVSVElFU1wiICwgdmlld1ZhbHVlIDogXCJNeSBQcm9wZXJ0aWVzXCJ9LFxyXG4gICAgICAvLyB7dmFsdWUgOiBcIk9SREVSU1wiICwgdmlld1ZhbHVlIDogXCJNeSBPcmRlcnNcIn0sXHJcbiAgICAgIC8vIHt2YWx1ZSA6IFwiRE9DVU1FTlRTXCIgLCB2aWV3VmFsdWUgOiBcIk15IERvY3VtZW50c1wifSxcclxuICAgICAgLy8ge3ZhbHVlIDogXCJTVEFURU1FTlRcIiAsIHZpZXdWYWx1ZSA6IFwiTXkgU3RhdGVtZW50c1wifSxcclxuICAgICAge3ZhbHVlOiBcIktZQ1wiLCB2aWV3VmFsdWU6IFwiS1lDXCJ9LFxyXG4gICAgICAvLyB7dmFsdWUgOiBcIkhFTFBcIiAsIHZpZXdWYWx1ZSA6IFwiTmVlZCBIZWxwXCJ9LFxyXG4gICAgXVxyXG4gICAgaW52ZXN0b3JEZXRhaWxzOiBhbnk7XHJcblxyXG4gICAgZ2V0SW52ZXN0b3JEZXRhaWxzKCkge1xyXG4gICAgICB0aGlzLnNrZWxMb2FkZXI9IHRydWU7XHJcbiAgICAgIHRoaXMucmVzdFNlcnZpY2UuZ2V0SW52ZXN0ZXJCeUlkKCkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMuaW52ZXN0b3JEZXRhaWxzID0gcmVzLm1lc3NhZ2U7XHJcbiAgICAgICAgdGhpcy5za2VsTG9hZGVyPSBmYWxzZTtcclxuICAgICAgfSlcclxuICAgIH1cclxuXHJcbiAgICBnZXRJbml0aWFscygpOiBzdHJpbmcge1xyXG4gICAgICBjb25zdCBuYW1lUGFydHMgPSB0aGlzLmludmVzdG9yRGV0YWlscz8uZnVsbE5hbWU/LnNwbGl0KCcgJyk7XHJcbiAgICAgIGNvbnN0IGluaXRpYWxzID0gbmFtZVBhcnRzPy5tYXAoKHBhcnQ6IGFueSkgPT4gcGFydC5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSkuam9pbignJyk7XHJcbiAgICAgIHJldHVybiBpbml0aWFscztcclxuICAgIH1cclxuXHJcbn1cclxuIiwiPHNlY3Rpb24gY2xhc3M9XCJtYWluLWNvbnRhaW5lciBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlclwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInNpZGUtcGFuZWxcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGV0YWlsc1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdC1yaWdodCBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGdhcC0xMFwiICpuZ0lmPVwiIXNrZWxMb2FkZXJcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsb2dvIGxlZnQgdy0xNVwiPnt7IGdldEluaXRpYWxzKCkgfX08L2Rpdj48ZGl2IGNsYXNzPVwicmlnaHQgbmFtZSB3LTg1XCI+e3tpbnZlc3RvckRldGFpbHM/LmZ1bGxOYW1lIHx8ICdOL0EnfX08L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LXJpZ2h0IGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTEwXCIgKm5nSWY9XCIhc2tlbExvYWRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQgdy0xNVwiPjxtYXQtaWNvbiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlciBmLTE4XCI+IHBob25lPC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PjxkaXYgY2xhc3M9XCJyaWdodCB3LTgwXCI+e3tpbnZlc3RvckRldGFpbHM/LnBob25lTnVtYmVyIHx8ICdOL0EnfX08L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0LXJpZ2h0IGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTEwXCIgKm5nSWY9XCIhc2tlbExvYWRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQgdy0xNVwiPjxtYXQtaWNvbiBjbGFzcz1cIiBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXIgZi0xOFwiPiBlbWFpbDwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj48ZGl2IGNsYXNzPVwicmlnaHQgdy04MFwiPnt7aW52ZXN0b3JEZXRhaWxzPy5lbWFpbElkIHx8ICdOL0EnfX08L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIiAqbmdJZj1cInNrZWxMb2FkZXJcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyXCIgPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNrZWxldG9uXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0YWItc2VjdGlvblwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFicyBjdXJzb3ItcG9pbnRlclwiICpuZ0Zvcj1cImxldCBlbGUgb2Ygc2lkZVBhbmVsVGFic1wiIChjbGljayk9XCJzZWxlY3RlZFBhbmVsID0gZWxlLnZhbHVlXCIgW2NsYXNzLmFjdGl2ZVRhYl09XCJzZWxlY3RlZFBhbmVsID09IGVsZS52YWx1ZVwiPlxyXG4gICAgICAgICAgICAgIHt7ZWxlLnZpZXdWYWx1ZX19XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZGlzcGxheS1zZWN0aW9uXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzZWxlY3RlZFBhbmVsID09ICdLWUMnXCI+XHJcbiAgICAgICAgPHNpbXBvLWt5Yy1kZXRhaWxzPjwvc2ltcG8ta3ljLWRldGFpbHM+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0ZWRQYW5lbCA9PSAnUE9SVEZPTElPJ1wiPlxyXG4gICAgICAgIDxzaW1wby1wb3J0Zm9saW8+PC9zaW1wby1wb3J0Zm9saW8+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0ZWRQYW5lbCA9PSAnUFJPUEVSVElFUydcIj5cclxuICAgICAgICA8c2ltcG8tcHJvcGVydGllcz48L3NpbXBvLXByb3BlcnRpZXM+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0ZWRQYW5lbCA9PSAnT1JERVJTJ1wiPlxyXG4gICAgICAgIDxzaW1wby1teS1vcmRlcnM+PC9zaW1wby1teS1vcmRlcnM+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0ZWRQYW5lbCA9PSAnRE9DVU1FTlRTJ1wiPlxyXG4gICAgICAgIDxzaW1wby1teS1kb2N1bWVudHM+PC9zaW1wby1teS1kb2N1bWVudHM+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0ZWRQYW5lbCA9PSAnU1RBVEVNRU5UJ1wiPlxyXG4gICAgICAgIDxzaW1wby1teS1zdGF0ZW1lbnQ+PC9zaW1wby1teS1zdGF0ZW1lbnQ+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0ZWRQYW5lbCA9PSAnSEVMUCdcIj5cclxuICAgICAgICA8c2ltcG8tbmVlZC1oZWxwPjwvc2ltcG8tbmVlZC1oZWxwPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDwvZGl2PlxyXG48L3NlY3Rpb24+XHJcbjxuZy10ZW1wbGF0ZSAjc2tlbGV0b24+XHJcbiAgPGRpdiBjbGFzcz1cIndyYXBwZXItMVwiID5cclxuICAgIDxuZ3gtc2tlbGV0b24tbG9hZGVyIFt0aGVtZV09XCJ7XHJcbiAgICAgIHdpZHRoOiAnMTUlJyxcclxuICAgICAgJ2JvcmRlci1yYWRpdXMnOiAnNTAlJyxcclxuICAgICAgaGVpZ2h0OiAnNHZoJyxcclxuICAgICAgJ21hcmdpbi1ib3R0b20nOiAnNXB4JyxcclxuICAgICAgJ21hcmdpbi1yaWdodCc6ICc1cHgnXHJcbiAgICAgIH1cIj5cclxuICAgIDwvbmd4LXNrZWxldG9uLWxvYWRlcj5cclxuICAgIDxuZ3gtc2tlbGV0b24tbG9hZGVyIFt0aGVtZV09XCJ7XHJcbiAgICAgIHdpZHRoOiAnODAlJyxcclxuICAgICAgJ2JvcmRlci1yYWRpdXMnOiAnNXB4JyxcclxuICAgICAgaGVpZ2h0OiAnM3ZoJyxcclxuICAgICAgJ21hcmdpbi1ib3R0b20nOiAnNXB4J1xyXG4gICAgICB9XCI+XHJcbiAgICA8L25neC1za2VsZXRvbi1sb2FkZXI+XHJcbiAgICBcclxuICA8L2Rpdj4gXHJcbiAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBza2VsQXJyYXlcIj5cclxuICAgIDxuZ3gtc2tlbGV0b24tbG9hZGVyIFt0aGVtZV09XCJ7XHJcbiAgICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICAgICdib3JkZXItcmFkaXVzJzogJzVweCcsXHJcbiAgICAgIGhlaWdodDogJzN2aCcsXHJcbiAgICAgICdtYXJnaW4tYm90dG9tJzogJzVweCdcclxuICAgICAgfVwiPlxyXG4gICAgPC9uZ3gtc2tlbGV0b24tbG9hZGVyPlxyXG4gIDwvZGl2PiAgXHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==