simpo-component-library 3.6.254 → 3.6.255

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 (24) hide show
  1. package/esm2022/lib/ecommerce/sections/authentication-required/authentication-required.component.mjs +2 -1
  2. package/esm2022/lib/ecommerce/sections/returns-calculator/returns-calculator.component.mjs +163 -19
  3. package/esm2022/lib/ecommerce/sections/scheme-details/scheme-details.component.mjs +124 -11
  4. package/esm2022/lib/ecommerce/sections/user-profile/user-profile.component.mjs +42 -15
  5. package/esm2022/lib/ecommerce/sections/verify-payment/verify-payment.component.mjs +43 -2
  6. package/esm2022/lib/sections/header-section/header-section.component.mjs +3 -3
  7. package/esm2022/lib/services/rest.service.mjs +47 -3
  8. package/esm2022/lib/services/storage.service.mjs +4 -1
  9. package/fesm2022/simpo-component-library.mjs +406 -41
  10. package/fesm2022/simpo-component-library.mjs.map +1 -1
  11. package/lib/ecommerce/sections/returns-calculator/returns-calculator.component.d.ts +28 -3
  12. package/lib/ecommerce/sections/scheme-details/scheme-details.component.d.ts +21 -2
  13. package/lib/ecommerce/sections/user-profile/user-profile.component.d.ts +6 -1
  14. package/lib/ecommerce/sections/verify-payment/verify-payment.component.d.ts +3 -0
  15. package/lib/sections/banner-carousel/banner-carousel.component.d.ts +2 -2
  16. package/lib/sections/carousel-banner/carousel-banner.component.d.ts +1 -1
  17. package/lib/sections/image-section/image-section.component.d.ts +2 -2
  18. package/lib/sections/logo-showcase/logo-showcase.component.d.ts +1 -1
  19. package/lib/sections/new-testimonials/new-testimonials.component.d.ts +1 -1
  20. package/lib/services/rest.service.d.ts +9 -1
  21. package/lib/services/storage.service.d.ts +1 -0
  22. package/package.json +1 -1
  23. package/simpo-component-library-3.6.255.tgz +0 -0
  24. package/simpo-component-library-3.6.254.tgz +0 -0
@@ -28,6 +28,8 @@ export class VerifyComponent extends BaseSection {
28
28
  this.loadingText = "Please wait...";
29
29
  this.API_COUNT = 0;
30
30
  this.MAX_API_COUNT = 20;
31
+ this.PASSBOOK_API_COUNT = 0;
32
+ this.MAX_PASSBOOK_API_COUNT = 20;
31
33
  }
32
34
  ngOnInit() {
33
35
  this.content = this.data?.content;
@@ -45,7 +47,13 @@ export class VerifyComponent extends BaseSection {
45
47
  this.loadingText = this.content?.inputText?.[1]?.value ?? 'We are processing your payments';
46
48
  setTimeout(() => {
47
49
  this.loadingText = this.content?.inputText?.[2]?.value ?? 'Hold On...';
48
- this.checkPaymentStatus();
50
+ const passBookOrderId = localStorage.getItem("passbookOrderId");
51
+ if (passBookOrderId) {
52
+ this.checkPassbookPaymentStatus();
53
+ }
54
+ else {
55
+ this.checkPaymentStatus();
56
+ }
49
57
  }, 3000);
50
58
  }, 3000);
51
59
  }, 3000);
@@ -94,6 +102,39 @@ export class VerifyComponent extends BaseSection {
94
102
  }
95
103
  });
96
104
  }
105
+ checkPassbookPaymentStatus() {
106
+ const orderId = localStorage.getItem("passbookOrderId");
107
+ this.PASSBOOK_API_COUNT++;
108
+ this.restService.getPassbookOrderStatus(orderId).subscribe((response) => {
109
+ localStorage.removeItem("passbookOrderId");
110
+ Swal.fire({
111
+ icon: "success",
112
+ title: "Hurray",
113
+ text: "Order placed successfully",
114
+ confirmButtonText: "See Details"
115
+ }).then((response) => {
116
+ if (response.isConfirmed) {
117
+ this.router.navigate(['/profile']);
118
+ }
119
+ });
120
+ }, (error) => {
121
+ if (this.PASSBOOK_API_COUNT >= this.MAX_PASSBOOK_API_COUNT) {
122
+ Swal.fire({
123
+ icon: "error",
124
+ title: "Sorry",
125
+ text: "We encountered some issue while placing your order",
126
+ confirmButtonText: "Go To Home"
127
+ }).then((response) => {
128
+ if (response.isConfirmed) {
129
+ this.router.navigate(['/']);
130
+ }
131
+ });
132
+ }
133
+ else {
134
+ this.checkPassbookPaymentStatus();
135
+ }
136
+ });
137
+ }
97
138
  editSection() {
98
139
  if (window.innerWidth <= 475)
99
140
  return;
@@ -128,4 +169,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
128
169
  }], customClass: [{
129
170
  type: Input
130
171
  }] } });
131
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyaWZ5LXBheW1lbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9lY29tbWVyY2Uvc2VjdGlvbnMvdmVyaWZ5LXBheW1lbnQvdmVyaWZ5LXBheW1lbnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9lY29tbWVyY2Uvc2VjdGlvbnMvdmVyaWZ5LXBheW1lbnQvdmVyaWZ5LXBheW1lbnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFLekQsT0FBTyxJQUFJLE1BQU0sYUFBYSxDQUFDO0FBRS9CLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDN0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUU5RSxPQUFPLFdBQVcsTUFBTSwrQkFBK0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDNUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDckcsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0seUVBQXlFLENBQUM7QUFDdEgsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7Ozs7QUFpQi9DLE1BQU0sT0FBTyxlQUFnQixTQUFRLFdBQVc7SUFZOUMsWUFDbUIsV0FBd0IsRUFDeEIsTUFBYyxFQUNkLGNBQXFDLEVBQ3JDLGNBQThCLEVBQzlCLGFBQTRCO1FBRTdDLEtBQUssRUFBRSxDQUFDO1FBTlMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIs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LFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBQyxJQUFJLEVBQUMsSUFBSSxDQUFDLElBQUksRUFBQyxDQUFDLENBQUM7UUFDeEQsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ1YsQ0FBQzsrR0F6R1UsZUFBZTttR0FBZixlQUFlLHVNQUpmLENBQUMsY0FBYyxDQUFDLGlEQzVCN0IsbWtDQVlBLDRKRFNJLG1CQUFtQiwwR0FDbkIsY0FBYywrRUFDZCxXQUFXLHVXQUNYLFlBQVksaU9BQ1osc0JBQXNCLHlKQUN0QiwyQkFBMkI7OzRGQU1sQixlQUFlO2tCQWYzQixTQUFTOytCQUNFLHNCQUFzQixjQUNwQixJQUFJLFdBQ1A7d0JBQ1AsbUJBQW1CO3dCQUNuQixjQUFjO3dCQUNkLFdBQVc7d0JBQ1gsWUFBWTt3QkFDWixzQkFBc0I7d0JBQ3RCLDJCQUEyQjtxQkFDNUIsYUFDVSxDQUFDLGNBQWMsQ0FBQztrTUFNbEIsSUFBSTtzQkFBWixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSZXN0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3Jlc3Quc2VydmljZSc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFN0b3JhZ2VTZXJ2aWNlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3N0b3JhZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IFZlcmlmeVBheW1lbnRDb250ZW50TW9kZWwsIFZlcmlmeVBheW1lbnRTZWN0aW9uTW9kYWwsIFZlcmlmeVBheW1lbnRTdHlsZXNNb2RlbCB9IGZyb20gJy4vdmVyaWZ5LXBheW1lbnQubW9kZWwnO1xyXG5pbXBvcnQgU3dhbCBmcm9tICdzd2VldGFsZXJ0Mic7XHJcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuLi8uLi9zdHlsZXMvdXNlci5tb2RhbCc7XHJcbmltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAncHJpbWVuZy9hcGknO1xyXG5pbXBvcnQgeyBUb2FzdE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvdG9hc3QnO1xyXG5pbXBvcnQgeyBCYWNrZ3JvdW5kRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZGlyZWN0aXZlL2JhY2tncm91bmQtZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgRXZlbnRzU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2V2ZW50cy5zZXJ2aWNlJztcclxuaW1wb3J0IEJhc2VTZWN0aW9uIGZyb20gJy4uLy4uLy4uL3NlY3Rpb25zL0Jhc2VTZWN0aW9uJztcclxuaW1wb3J0IHsgSG92ZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmUvaG92ZXItZWxlbWVudC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBIb3ZlckVsZW1lbnRzQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9ob3Zlci1lbGVtZW50cy9ob3Zlci1lbGVtZW50cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEZWxldGVIb3ZlckVsZW1lbnRDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL2RlbGV0ZS1ob3Zlci1lbGVtZW50L2RlbGV0ZS1ob3Zlci1lbGVtZW50LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NpbXBvLXZlcmlmeS1wYXltZW50JyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIEJhY2tncm91bmREaXJlY3RpdmUsXHJcbiAgICBIb3ZlckRpcmVjdGl2ZSxcclxuICAgIFRvYXN0TW9kdWxlLFxyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgSG92ZXJFbGVtZW50c0NvbXBvbmVudCxcclxuICAgIERlbGV0ZUhvdmVyRWxlbWVudENvbXBvbmVudFxyXG4gIF0sXHJcbiAgcHJvdmlkZXJzOiBbTWVzc2FnZVNlcnZpY2VdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi92ZXJpZnktcGF5bWVudC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL3ZlcmlmeS1wYXltZW50LmNvbXBvbmVudC5jc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBWZXJpZnlDb21wb25lbnQgZXh0ZW5kcyBCYXNlU2VjdGlvbiBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpIGRhdGE/OiBWZXJpZnlQYXltZW50U2VjdGlvbk1vZGFsO1xyXG4gIEBJbnB1dCgpIHJlc3BvbnNlRGF0YTogYW55O1xyXG4gIEBJbnB1dCgpIGVkaXQ/OiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGluZGV4PzogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIGRlbGV0ZT86IGJvb2xlYW47XHJcbiAgQElucHV0KCkgY3VzdG9tQ2xhc3M/OiBzdHJpbmc7XHJcbiAgc3R5bGVzPzogVmVyaWZ5UGF5bWVudFN0eWxlc01vZGVsO1xyXG4gIGNvbnRlbnQ/OiBWZXJpZnlQYXltZW50Q29udGVudE1vZGVsO1xyXG4gIHByaXZhdGUgdXNlckRldGFpbHM6IFVzZXIgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlc3RTZXJ2aWNlOiBSZXN0U2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHN0b3JhZ2VTZXJ2aWNlOiBTdG9yYWdlU2VydmljZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2V2ZW50U2VydmljZTogRXZlbnRzU2VydmljZVxyXG4gICkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBsb2FkaW5nVGV4dDogc3RyaW5nID0gXCJQbGVhc2Ugd2FpdC4uLlwiO1xyXG4gIHByaXZhdGUgQVBJX0NPVU5UOiBudW1iZXIgPSAwO1xyXG4gIHByaXZhdGUgTUFYX0FQSV9DT1VOVDogbnVtYmVyID0gMjA7XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jb250ZW50ID0gdGhpcy5kYXRhPy5jb250ZW50O1xyXG4gICAgdGhpcy5zdHlsZXMgPSB0aGlzLmRhdGE/LnN0eWxlcztcclxuXHJcbiAgICB0aGlzLnVzZXJEZXRhaWxzID0gdGhpcy5zdG9yYWdlU2VydmljZS5nZXRVc2VyKCkgYXMgVXNlcjtcclxuICAgIGlmICghdGhpcy51c2VyRGV0YWlscyAmJiAobG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJSRVFVRVNUX0ZST01cIikgPT0gXCJVU0VSXCIpKSB7XHJcbiAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuYWRkKHsgc2V2ZXJpdHk6ICdlcnJvcicsIHN1bW1hcnk6ICdFcnJvcicsIGRldGFpbDogJ1BsZWFzZSBsb2dpbiB0byBhY2Nlc3MgcHJvZmlsZScgfSk7XHJcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnLyddKTtcclxuICAgIH1cclxuXHJcbiAgICBpZihsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcIlJFUVVFU1RfRlJPTVwiKSA9PSBcIkVDT01NRVJDRVwiKVxyXG4gICAgICByZXR1cm47XHJcblxyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMubG9hZGluZ1RleHQgPSB0aGlzLmNvbnRlbnQ/LmlucHV0VGV4dD8uWzBdPy52YWx1ZSA/PyAnVGhhbmtzIGZvciBjaG9vc2luZyB1cyc7XHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMubG9hZGluZ1RleHQgPSB0aGlzLmNvbnRlbnQ/LmlucHV0VGV4dD8uWzFdPy52YWx1ZSA/PyAnV2UgYXJlIHByb2Nlc3NpbmcgeW91ciBwYXltZW50cyc7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmxvYWRpbmdUZXh0ID0gdGhpcy5jb250ZW50Py5pbnB1dFRleHQ/LlsyXT8udmFsdWUgPz8gJ0hvbGQgT24uLi4nO1xyXG4gICAgICAgICAgICB0aGlzLmNoZWNrUGF5bWVudFN0YXR1cygpO1xyXG4gICAgICAgIH0sIDMwMDApO1xyXG4gICAgICB9LCAzMDAwKTtcclxuICAgIH0sIDMwMDApO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGdldEltYWdlVXJsKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuY29udGVudD8uaW1hZ2U/LnVybDtcclxuICB9XHJcbiAgZ2V0IGlzTW9iaWxlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHdpbmRvdy5pbm5lcldpZHRoIDwgNDc1O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNoZWNrUGF5bWVudFN0YXR1cygpIHtcclxuICAgIGNvbnN0IHBheWxvYWQgPSB7XHJcbiAgICAgIFwib3JkZXJJZFwiOiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcIm9yZGVySWRcIilcclxuICAgIH1cclxuICAgIHRoaXMuQVBJX0NPVU5UKys7XHJcbiAgICB0aGlzLnJlc3RTZXJ2aWNlLmNoZWNrUGF5bWVudFN0YXR1cyhwYXlsb2FkKS5zdWJzY3JpYmUoKHJlc3BvbnNlKT0+IHtcclxuICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oXCJvcmRlcklkXCIpO1xyXG4gICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShcImNhcnRJZFwiKTtcclxuICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oXCJwYXltZW50Rm9yXCIpO1xyXG4gICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmNsZWFyVXNlckNhcnQoKTtcclxuICAgICAgU3dhbC5maXJlKHtcclxuICAgICAgICBpY29uOiBcInN1Y2Nlc3NcIixcclxuICAgICAgICB0aXRsZTogXCJIdXJyYXlcIixcclxuICAgICAgICB0ZXh0OiBcIk9yZGVyIHBsYWNlZCBzdWNjZXNzZnVsbHlcIixcclxuICAgICAgICBjb25maXJtQnV0dG9uVGV4dDogXCJTZWUgRGV0YWlsc1wiXHJcbiAgICAgIH0pLnRoZW4oKHJlc3BvbnNlKT0+IHtcclxuICAgICAgICBpZiAocmVzcG9uc2UuaXNDb25maXJtZWQpIHtcclxuICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL3Byb2ZpbGUnXSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG5cclxuICAgIH0sIChlcnJvcik9PiB7XHJcbiAgICAgIGlmICh0aGlzLkFQSV9DT1VOVCA+PSB0aGlzLk1BWF9BUElfQ09VTlQpIHtcclxuICAgICAgICBTd2FsLmZpcmUoe1xyXG4gICAgICAgICAgaWNvbjogXCJlcnJvclwiLFxyXG4gICAgICAgICAgdGl0bGU6IFwiU29ycnlcIixcclxuICAgICAgICAgIHRleHQ6IFwiV2UgZW5jb3VudGVyZWQgc29tZSBpc3N1ZSB3aGlsZSBwbGFjaW5nIHlvdXIgb3JkZXJcIixcclxuICAgICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiBcIkdvIFRvIEhvbWVcIlxyXG4gICAgICAgIH0pLnRoZW4oKHJlc3BvbnNlKT0+IHtcclxuICAgICAgICAgIGlmIChyZXNwb25zZS5pc0NvbmZpcm1lZCkge1xyXG4gICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy8nXSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLmNoZWNrUGF5bWVudFN0YXR1cygpO1xyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gIH1cclxuICBlZGl0U2VjdGlvbigpe1xyXG5cclxuICAgIGlmKHdpbmRvdy5pbm5lcldpZHRoIDw9IDQ3NSlcclxuICAgICAgcmV0dXJuO1xyXG5cclxuICAgIHRoaXMuX2V2ZW50U2VydmljZS50b2dnbGVFZGl0b3JFdmVudC5lbWl0KGZhbHNlKTtcclxuICAgIHNldFRpbWVvdXQoKCk9PiB7XHJcbiAgICAgIHRoaXMuX2V2ZW50U2VydmljZS5lZGl0U2VjdGlvbi5lbWl0KHtkYXRhOnRoaXMuZGF0YX0pO1xyXG4gICAgfSwgMTAwKTtcclxuICB9XHJcbn1cclxuIiwiPHAtdG9hc3QgcG9zaXRpb249XCJib3R0b20tcmlnaHRcIiBbYmFzZVpJbmRleF09XCIxMDAwMDAwMDAwMFwiIFthdXRvWkluZGV4XT1cInRydWVcIiBbc2hvd1RyYW5zZm9ybU9wdGlvbnNdPVwiaXNNb2JpbGUgPyAndHJhbnNsYXRlWSgtMTAwJSknIDogJydcIj48L3AtdG9hc3Q+XHJcbjxzZWN0aW9uIGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIHRvdGFsLWNvbnRhaW5lclwiIHN0eWxlPVwiaGVpZ2h0OiAxMDB2aDtcIiBbc2ltcG9CYWNrZ3JvdW5kXT1cInN0eWxlcz8uYmFja2dyb3VuZFwiIHNpbXBvSG92ZXIgKGhvdmVyaW5nKT1cInNob3dFZGl0VGFicygkZXZlbnQpXCIgW2F0dHIuc3R5bGVdPVwiY3VzdG9tQ2xhc3NcIj5cclxuICAgIDxpbWcgbG9hZGluZz1cImxhenlcIiBvbmVycm9yPVwidGhpcy5zcmM9J2h0dHBzOi8vaS5wb3N0aW1nLmNjL2hQUzJKcFYwL25vLWltYWdlLWF2YWlsYWJsZS5qcGcnXCIgICBbc3JjXT1cImdldEltYWdlVXJsXCIgc3R5bGU9XCJoZWlnaHQ6IDIwMHB4OyB3aWR0aDogMjAwcHg7XCIgW2FsdF09XCJjb250ZW50Py5pbWFnZT8uYWx0VGV4dFwiPlxyXG4gICAgPHNwYW4gY2xhc3M9XCJmb250LWJvbGRcIj57e2xvYWRpbmdUZXh0fX08L3NwYW4+XHJcblxyXG4gICAgPGRpdiBbbmdDbGFzc109XCJ7J2hvdmVyX2VmZmVjdCc6IGVkaXR9XCIgKm5nSWY9XCJzaG93RWRpdG9yc1wiPlxyXG4gICAgICA8c2ltcG8taG92ZXItZWxlbWVudHMgW2RhdGFdPVwiZGF0YVwiIFtpbmRleF09XCJpbmRleFwiIFtlZGl0T3B0aW9uc109XCJlZGl0XCIgW2lzRWNvbW1lcmNlXT1cInRydWVcIj48L3NpbXBvLWhvdmVyLWVsZW1lbnRzPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2ICpuZ0lmPVwic2hvd0RlbGV0ZVwiIFtuZ0NsYXNzXT1cInsnaG92ZXJfZWZmZWN0JzogZGVsZXRlfVwiPlxyXG4gICAgICA8c2ltcG8tZGVsZXRlLWhvdmVyLWVsZW1lbnQgW2RhdGFdPVwiZGF0YVwiIFtpbmRleF09XCJpbmRleFwiPjwvc2ltcG8tZGVsZXRlLWhvdmVyLWVsZW1lbnQ+XHJcbiAgPC9kaXY+XHJcbjwvc2VjdGlvbj5cclxuIl19
172
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyaWZ5LXBheW1lbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9lY29tbWVyY2Uvc2VjdGlvbnMvdmVyaWZ5LXBheW1lbnQvdmVyaWZ5LXBheW1lbnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9lY29tbWVyY2Uvc2VjdGlvbnMvdmVyaWZ5LXBheW1lbnQvdmVyaWZ5LXBheW1lbnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFLekQsT0FBTyxJQUFJLE1BQU0sYUFBYSxDQUFDO0FBRS9CLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDN0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUU5RSxPQUFPLFdBQVcsTUFBTSwrQkFBK0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDNUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDckcsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0seUVBQXlFLENBQUM7QUFDdEgsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7Ozs7QUFpQi9DLE1BQU0sT0FBTyxlQUFnQixTQUFRLFdBQVc7SUFZOUMsWUFDbUIsV0FBd0IsRUFDeEIsTUFBYyxFQUNkLGNBQXFDLEVBQ3JDLGNBQThCLEVBQzlCLGFBQTRCO1FBRTdDLEtBQUssRUFBRSxDQUFDO1FBTlMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIs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ZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJlc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvcmVzdC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgU3RvcmFnZVNlcnZpY2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvc3RvcmFnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVmVyaWZ5UGF5bWVudENvbnRlbnRNb2RlbCwgVmVyaWZ5UGF5bWVudFNlY3Rpb25Nb2RhbCwgVmVyaWZ5UGF5bWVudFN0eWxlc01vZGVsIH0gZnJvbSAnLi92ZXJpZnktcGF5bWVudC5tb2RlbCc7XHJcbmltcG9ydCBTd2FsIGZyb20gJ3N3ZWV0YWxlcnQyJztcclxuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4uLy4uL3N0eWxlcy91c2VyLm1vZGFsJztcclxuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdwcmltZW5nL2FwaSc7XHJcbmltcG9ydCB7IFRvYXN0TW9kdWxlIH0gZnJvbSAncHJpbWVuZy90b2FzdCc7XHJcbmltcG9ydCB7IEJhY2tncm91bmREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmUvYmFja2dyb3VuZC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBFdmVudHNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvZXZlbnRzLnNlcnZpY2UnO1xyXG5pbXBvcnQgQmFzZVNlY3Rpb24gZnJvbSAnLi4vLi4vLi4vc2VjdGlvbnMvQmFzZVNlY3Rpb24nO1xyXG5pbXBvcnQgeyBIb3ZlckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZS9ob3Zlci1lbGVtZW50LWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEhvdmVyRWxlbWVudHNDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL2hvdmVyLWVsZW1lbnRzL2hvdmVyLWVsZW1lbnRzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IERlbGV0ZUhvdmVyRWxlbWVudENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvZGVsZXRlLWhvdmVyLWVsZW1lbnQvZGVsZXRlLWhvdmVyLWVsZW1lbnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2ltcG8tdmVyaWZ5LXBheW1lbnQnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQmFja2dyb3VuZERpcmVjdGl2ZSxcclxuICAgIEhvdmVyRGlyZWN0aXZlLFxyXG4gICAgVG9hc3RNb2R1bGUsXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBIb3ZlckVsZW1lbnRzQ29tcG9uZW50LFxyXG4gICAgRGVsZXRlSG92ZXJFbGVtZW50Q29tcG9uZW50XHJcbiAgXSxcclxuICBwcm92aWRlcnM6IFtNZXNzYWdlU2VydmljZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3ZlcmlmeS1wYXltZW50LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vdmVyaWZ5LXBheW1lbnQuY29tcG9uZW50LmNzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIFZlcmlmeUNvbXBvbmVudCBleHRlbmRzIEJhc2VTZWN0aW9uIGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgQElucHV0KCkgZGF0YT86IFZlcmlmeVBheW1lbnRTZWN0aW9uTW9kYWw7XHJcbiAgQElucHV0KCkgcmVzcG9uc2VEYXRhOiBhbnk7XHJcbiAgQElucHV0KCkgZWRpdD86IGJvb2xlYW47XHJcbiAgQElucHV0KCkgaW5kZXg/OiBudW1iZXI7XHJcbiAgQElucHV0KCkgZGVsZXRlPzogYm9vbGVhbjtcclxuICBASW5wdXQoKSBjdXN0b21DbGFzcz86IHN0cmluZztcclxuICBzdHlsZXM/OiBWZXJpZnlQYXltZW50U3R5bGVzTW9kZWw7XHJcbiAgY29udGVudD86IFZlcmlmeVBheW1lbnRDb250ZW50TW9kZWw7XHJcbiAgcHJpdmF0ZSB1c2VyRGV0YWlsczogVXNlciB8IG51bGwgPSBudWxsO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVzdFNlcnZpY2U6IFJlc3RTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlcixcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgc3RvcmFnZVNlcnZpY2U6IFN0b3JhZ2VTZXJ2aWNlU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBfZXZlbnRTZXJ2aWNlOiBFdmVudHNTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGxvYWRpbmdUZXh0OiBzdHJpbmcgPSBcIlBsZWFzZSB3YWl0Li4uXCI7XHJcbiAgcHJpdmF0ZSBBUElfQ09VTlQ6IG51bWJlciA9IDA7XHJcbiAgcHJpdmF0ZSBNQVhfQVBJX0NPVU5UOiBudW1iZXIgPSAyMDtcclxuICBwcml2YXRlIFBBU1NCT09LX0FQSV9DT1VOVDogbnVtYmVyID0gMDtcclxuICBwcml2YXRlIE1BWF9QQVNTQk9PS19BUElfQ09VTlQgPSAyMDtcclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmNvbnRlbnQgPSB0aGlzLmRhdGE/LmNvbnRlbnQ7XHJcbiAgICB0aGlzLnN0eWxlcyA9IHRoaXMuZGF0YT8uc3R5bGVzO1xyXG5cclxuICAgIHRoaXMudXNlckRldGFpbHMgPSB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldFVzZXIoKSBhcyBVc2VyO1xyXG4gICAgaWYgKCF0aGlzLnVzZXJEZXRhaWxzICYmIChsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcIlJFUVVFU1RfRlJPTVwiKSA9PSBcIlVTRVJcIikpIHtcclxuICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS5hZGQoeyBzZXZlcml0eTogJ2Vycm9yJywgc3VtbWFyeTogJ0Vycm9yJywgZGV0YWlsOiAnUGxlYXNlIGxvZ2luIHRvIGFjY2VzcyBwcm9maWxlJyB9KTtcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvJ10pO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcIlJFUVVFU1RfRlJPTVwiKSA9PSBcIkVDT01NRVJDRVwiKVxyXG4gICAgICByZXR1cm47XHJcblxyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMubG9hZGluZ1RleHQgPSB0aGlzLmNvbnRlbnQ/LmlucHV0VGV4dD8uWzBdPy52YWx1ZSA/PyAnVGhhbmtzIGZvciBjaG9vc2luZyB1cyc7XHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMubG9hZGluZ1RleHQgPSB0aGlzLmNvbnRlbnQ/LmlucHV0VGV4dD8uWzFdPy52YWx1ZSA/PyAnV2UgYXJlIHByb2Nlc3NpbmcgeW91ciBwYXltZW50cyc7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmxvYWRpbmdUZXh0ID0gdGhpcy5jb250ZW50Py5pbnB1dFRleHQ/LlsyXT8udmFsdWUgPz8gJ0hvbGQgT24uLi4nO1xyXG4gICAgICAgICAgY29uc3QgcGFzc0Jvb2tPcmRlcklkID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJwYXNzYm9va09yZGVySWRcIik7XHJcbiAgICAgICAgICBpZiAocGFzc0Jvb2tPcmRlcklkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY2hlY2tQYXNzYm9va1BheW1lbnRTdGF0dXMoKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmNoZWNrUGF5bWVudFN0YXR1cygpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0sIDMwMDApO1xyXG4gICAgICB9LCAzMDAwKTtcclxuICAgIH0sIDMwMDApO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGdldEltYWdlVXJsKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuY29udGVudD8uaW1hZ2U/LnVybDtcclxuICB9XHJcbiAgZ2V0IGlzTW9iaWxlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHdpbmRvdy5pbm5lcldpZHRoIDwgNDc1O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNoZWNrUGF5bWVudFN0YXR1cygpIHtcclxuICAgIGNvbnN0IHBheWxvYWQgPSB7XHJcbiAgICAgIFwib3JkZXJJZFwiOiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcIm9yZGVySWRcIilcclxuICAgIH1cclxuICAgIHRoaXMuQVBJX0NPVU5UKys7XHJcbiAgICB0aGlzLnJlc3RTZXJ2aWNlLmNoZWNrUGF5bWVudFN0YXR1cyhwYXlsb2FkKS5zdWJzY3JpYmUoKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKFwib3JkZXJJZFwiKTtcclxuICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oXCJjYXJ0SWRcIik7XHJcbiAgICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKFwicGF5bWVudEZvclwiKTtcclxuICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5jbGVhclVzZXJDYXJ0KCk7XHJcbiAgICAgIFN3YWwuZmlyZSh7XHJcbiAgICAgICAgaWNvbjogXCJzdWNjZXNzXCIsXHJcbiAgICAgICAgdGl0bGU6IFwiSHVycmF5XCIsXHJcbiAgICAgICAgdGV4dDogXCJPcmRlciBwbGFjZWQgc3VjY2Vzc2Z1bGx5XCIsXHJcbiAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6IFwiU2VlIERldGFpbHNcIlxyXG4gICAgICB9KS50aGVuKChyZXNwb25zZSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXNwb25zZS5pc0NvbmZpcm1lZCkge1xyXG4gICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvcHJvZmlsZSddKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcblxyXG4gICAgfSwgKGVycm9yKSA9PiB7XHJcbiAgICAgIGlmICh0aGlzLkFQSV9DT1VOVCA+PSB0aGlzLk1BWF9BUElfQ09VTlQpIHtcclxuICAgICAgICBTd2FsLmZpcmUoe1xyXG4gICAgICAgICAgaWNvbjogXCJlcnJvclwiLFxyXG4gICAgICAgICAgdGl0bGU6IFwiU29ycnlcIixcclxuICAgICAgICAgIHRleHQ6IFwiV2UgZW5jb3VudGVyZWQgc29tZSBpc3N1ZSB3aGlsZSBwbGFjaW5nIHlvdXIgb3JkZXJcIixcclxuICAgICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiBcIkdvIFRvIEhvbWVcIlxyXG4gICAgICAgIH0pLnRoZW4oKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICBpZiAocmVzcG9uc2UuaXNDb25maXJtZWQpIHtcclxuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvJ10pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5jaGVja1BheW1lbnRTdGF0dXMoKTtcclxuICAgICAgfVxyXG4gICAgfSlcclxuICB9XHJcbiAgcHVibGljIGNoZWNrUGFzc2Jvb2tQYXltZW50U3RhdHVzKCkge1xyXG4gICAgY29uc3Qgb3JkZXJJZCA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwicGFzc2Jvb2tPcmRlcklkXCIpXHJcbiAgICB0aGlzLlBBU1NCT09LX0FQSV9DT1VOVCsrO1xyXG4gICAgdGhpcy5yZXN0U2VydmljZS5nZXRQYXNzYm9va09yZGVyU3RhdHVzKG9yZGVySWQpLnN1YnNjcmliZSgocmVzcG9uc2UpID0+IHtcclxuICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oXCJwYXNzYm9va09yZGVySWRcIik7XHJcbiAgICAgIFN3YWwuZmlyZSh7XHJcbiAgICAgICAgaWNvbjogXCJzdWNjZXNzXCIsXHJcbiAgICAgICAgdGl0bGU6IFwiSHVycmF5XCIsXHJcbiAgICAgICAgdGV4dDogXCJPcmRlciBwbGFjZWQgc3VjY2Vzc2Z1bGx5XCIsXHJcbiAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6IFwiU2VlIERldGFpbHNcIlxyXG4gICAgICB9KS50aGVuKChyZXNwb25zZSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXNwb25zZS5pc0NvbmZpcm1lZCkge1xyXG4gICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvcHJvZmlsZSddKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcblxyXG4gICAgfSwgKGVycm9yKSA9PiB7XHJcbiAgICAgIGlmICh0aGlzLlBBU1NCT09LX0FQSV9DT1VOVCA+PSB0aGlzLk1BWF9QQVNTQk9PS19BUElfQ09VTlQpIHtcclxuICAgICAgICBTd2FsLmZpcmUoe1xyXG4gICAgICAgICAgaWNvbjogXCJlcnJvclwiLFxyXG4gICAgICAgICAgdGl0bGU6IFwiU29ycnlcIixcclxuICAgICAgICAgIHRleHQ6IFwiV2UgZW5jb3VudGVyZWQgc29tZSBpc3N1ZSB3aGlsZSBwbGFjaW5nIHlvdXIgb3JkZXJcIixcclxuICAgICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiBcIkdvIFRvIEhvbWVcIlxyXG4gICAgICAgIH0pLnRoZW4oKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICBpZiAocmVzcG9uc2UuaXNDb25maXJtZWQpIHtcclxuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvJ10pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5jaGVja1Bhc3Nib29rUGF5bWVudFN0YXR1cygpO1xyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gIH1cclxuICBlZGl0U2VjdGlvbigpIHtcclxuXHJcbiAgICBpZiAod2luZG93LmlubmVyV2lkdGggPD0gNDc1KVxyXG4gICAgICByZXR1cm47XHJcblxyXG4gICAgdGhpcy5fZXZlbnRTZXJ2aWNlLnRvZ2dsZUVkaXRvckV2ZW50LmVtaXQoZmFsc2UpO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuX2V2ZW50U2VydmljZS5lZGl0U2VjdGlvbi5lbWl0KHsgZGF0YTogdGhpcy5kYXRhIH0pO1xyXG4gICAgfSwgMTAwKTtcclxuICB9XHJcbn1cclxuIiwiPHAtdG9hc3QgcG9zaXRpb249XCJib3R0b20tcmlnaHRcIiBbYmFzZVpJbmRleF09XCIxMDAwMDAwMDAwMFwiIFthdXRvWkluZGV4XT1cInRydWVcIiBbc2hvd1RyYW5zZm9ybU9wdGlvbnNdPVwiaXNNb2JpbGUgPyAndHJhbnNsYXRlWSgtMTAwJSknIDogJydcIj48L3AtdG9hc3Q+XHJcbjxzZWN0aW9uIGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIHRvdGFsLWNvbnRhaW5lclwiIHN0eWxlPVwiaGVpZ2h0OiAxMDB2aDtcIiBbc2ltcG9CYWNrZ3JvdW5kXT1cInN0eWxlcz8uYmFja2dyb3VuZFwiIHNpbXBvSG92ZXIgKGhvdmVyaW5nKT1cInNob3dFZGl0VGFicygkZXZlbnQpXCIgW2F0dHIuc3R5bGVdPVwiY3VzdG9tQ2xhc3NcIj5cclxuICAgIDxpbWcgbG9hZGluZz1cImxhenlcIiBvbmVycm9yPVwidGhpcy5zcmM9J2h0dHBzOi8vaS5wb3N0aW1nLmNjL2hQUzJKcFYwL25vLWltYWdlLWF2YWlsYWJsZS5qcGcnXCIgICBbc3JjXT1cImdldEltYWdlVXJsXCIgc3R5bGU9XCJoZWlnaHQ6IDIwMHB4OyB3aWR0aDogMjAwcHg7XCIgW2FsdF09XCJjb250ZW50Py5pbWFnZT8uYWx0VGV4dFwiPlxyXG4gICAgPHNwYW4gY2xhc3M9XCJmb250LWJvbGRcIj57e2xvYWRpbmdUZXh0fX08L3NwYW4+XHJcblxyXG4gICAgPGRpdiBbbmdDbGFzc109XCJ7J2hvdmVyX2VmZmVjdCc6IGVkaXR9XCIgKm5nSWY9XCJzaG93RWRpdG9yc1wiPlxyXG4gICAgICA8c2ltcG8taG92ZXItZWxlbWVudHMgW2RhdGFdPVwiZGF0YVwiIFtpbmRleF09XCJpbmRleFwiIFtlZGl0T3B0aW9uc109XCJlZGl0XCIgW2lzRWNvbW1lcmNlXT1cInRydWVcIj48L3NpbXBvLWhvdmVyLWVsZW1lbnRzPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2ICpuZ0lmPVwic2hvd0RlbGV0ZVwiIFtuZ0NsYXNzXT1cInsnaG92ZXJfZWZmZWN0JzogZGVsZXRlfVwiPlxyXG4gICAgICA8c2ltcG8tZGVsZXRlLWhvdmVyLWVsZW1lbnQgW2RhdGFdPVwiZGF0YVwiIFtpbmRleF09XCJpbmRleFwiPjwvc2ltcG8tZGVsZXRlLWhvdmVyLWVsZW1lbnQ+XHJcbiAgPC9kaXY+XHJcbjwvc2VjdGlvbj5cclxuIl19