buildingproduct-library 0.2.74 → 0.2.76

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 (54) hide show
  1. package/assets/images/newtab.svg +11 -0
  2. package/{buildingproduct-library-0.2.74.tgz → buildingproduct-library-0.2.76.tgz} +0 -0
  3. package/bundles/buildingproduct-library.umd.js +527 -411
  4. package/bundles/buildingproduct-library.umd.js.map +1 -1
  5. package/esm2015/lib/account-dropdown/account-dropdown.component.js +16 -16
  6. package/esm2015/lib/account-dropdown/account-dropdown.module.js +6 -2
  7. package/esm2015/lib/checkout/custom-checkout/custom-checkout.component.js +2 -2
  8. package/esm2015/lib/checkout/order-confirmation/order-confirmation.component.js +1 -1
  9. package/esm2015/lib/checkout/order-review/order-review.component.js +1 -1
  10. package/esm2015/lib/custom-cart/addto-saved-carts/addto-saved-carts.component.js +1 -1
  11. package/esm2015/lib/custom-mini-cart/custom-mini-cart.component.js +57 -13
  12. package/esm2015/lib/custom-mini-cart/custom-mini-cart.module.js +1 -1
  13. package/esm2015/lib/custom-navigation/custom-navigation.module.js +1 -11
  14. package/esm2015/lib/custom-order-details/custom-order-details.component.js +8 -6
  15. package/esm2015/lib/custom-order-details/order-detail-grid/order-detail-grid.component.js +2 -2
  16. package/esm2015/lib/custom-order-details/order-detail-list/order-detail-list.component.js +2 -2
  17. package/esm2015/lib/custom-order-history/custom-order-history.component.js +20 -19
  18. package/esm2015/lib/custom-saved-cart/custom-saved-cart-details/custom-save-cart-dtl/custom-save-cart-dtl.component.js +28 -17
  19. package/esm2015/lib/custom-saved-cart/custom-saved-cart-details/saved-cart-details-action/saved-cart-details-action.component.js +2 -2
  20. package/esm2015/lib/custom-saved-cart/custom-saved-cart-details/saved-cart-details-overview/saved-cart-details-overview.component.js +2 -2
  21. package/esm2015/lib/custom-saved-cart/custom-saved-cart-details/saved-cart-details.service.js +28 -10
  22. package/esm2015/lib/custom-saved-cart/custom-saved-cart.component.js +4 -4
  23. package/esm2015/lib/custom-saved-cart/custom-saved-cart.module.js +3 -3
  24. package/esm2015/lib/custom-search/custom-search.component.js +1 -1
  25. package/esm2015/lib/custom-user-account/custom-user-account.component.js +2 -2
  26. package/esm2015/lib/find-store/find-store.component.js +1 -1
  27. package/esm2015/lib/my-account/account-dashboard/account-dashboard.component.js +6 -7
  28. package/esm2015/lib/my-account/invoice-credit/invoice-credit.component.js +26 -25
  29. package/esm2015/lib/my-account/my-account.component.js +11 -1
  30. package/esm2015/lib/my-team/my-team.component.js +29 -10
  31. package/esm2015/lib/my-team/team-member.service.js +8 -36
  32. package/esm2015/lib/services/order.review.js +1 -1
  33. package/esm2015/lib/shared/active-saved-cart/active-saved-cart.component.js +6 -4
  34. package/esm2015/lib/shared/custom-cart-detail/custom-cart-grid/custom-cart-grid.component.js +48 -22
  35. package/esm2015/lib/shared/custom-cart-detail/custom-cart-list/custom-cart-list.component.js +66 -37
  36. package/esm2015/lib/shared/custom-cart-detail/custom-product-quantity-form/custom-product-quantity-form.component.js +2 -4
  37. package/esm2015/lib/shared/saved-cart-popup/saved-cart-popup.component.js +2 -2
  38. package/esm2015/lib/shared/shared-download-order/shared-download-order.component.js +9 -9
  39. package/fesm2015/buildingproduct-library.js +405 -288
  40. package/fesm2015/buildingproduct-library.js.map +1 -1
  41. package/lib/account-dropdown/account-dropdown.component.d.ts +2 -0
  42. package/lib/account-dropdown/account-dropdown.module.d.ts +2 -1
  43. package/lib/custom-mini-cart/custom-mini-cart.component.d.ts +13 -4
  44. package/lib/custom-order-history/custom-order-history.component.d.ts +1 -1
  45. package/lib/custom-saved-cart/custom-saved-cart-details/custom-save-cart-dtl/custom-save-cart-dtl.component.d.ts +1 -0
  46. package/lib/custom-saved-cart/custom-saved-cart-details/saved-cart-details.service.d.ts +5 -1
  47. package/lib/my-account/account-dashboard/account-dashboard.component.d.ts +1 -1
  48. package/lib/my-account/invoice-credit/invoice-credit.component.d.ts +2 -4
  49. package/lib/my-team/my-team.component.d.ts +6 -1
  50. package/lib/shared/custom-cart-detail/custom-cart-grid/custom-cart-grid.component.d.ts +9 -10
  51. package/lib/shared/custom-cart-detail/custom-cart-list/custom-cart-list.component.d.ts +9 -18
  52. package/lib/shared/custom-cart-detail/custom-product-quantity-form/custom-product-quantity-form.component.d.ts +1 -2
  53. package/lib/shared/shared-download-order/shared-download-order.component.d.ts +1 -1
  54. package/package.json +1 -1
@@ -91,4 +91,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
91
91
  styleUrls: ['./find-store.component.scss']
92
92
  }]
93
93
  }], ctorParameters: function () { return [{ type: i1.FindStoreService }, { type: i0.ChangeDetectorRef }]; } });
94
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluZC1zdG9yZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9idWlsZGluZ3Byb2R1Y3RfbGlicmFyeS9zcmMvbGliL2ZpbmQtc3RvcmUvZmluZC1zdG9yZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9idWlsZGluZ3Byb2R1Y3RfbGlicmFyeS9zcmMvbGliL2ZpbmQtc3RvcmUvZmluZC1zdG9yZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7QUFReEQsTUFBTSxPQUFPLGtCQUFrQjtJQW9CN0IsWUFBb0IsZ0JBQWtDLEVBQzdDLEVBQXFCO1FBRFYscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUM3QyxPQUFFLEdBQUYsRUFBRSxDQUFtQjtRQWhCOUIsc0JBQWlCLEdBQVksS0FBSyxDQUFDO1FBR25DLHNCQUFpQixHQUFRLEVBQUUsQ0FBQztRQUNyQixpQkFBWSxHQUFRLEVBQUUsQ0FBQztRQUM5QixlQUFVLEdBQVcsRUFBRSxDQUFDO1FBRXhCLGNBQVMsR0FBRyxJQUFJLGVBQWUsQ0FBTSxFQUFFLENBQUMsQ0FBQztRQUN6QyxtQkFBYyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ3JELHFCQUFnQixHQUFRLEVBQUUsQ0FBQztRQUMzQixxQkFBZ0IsR0FBUSxFQUFFLENBQUM7UUFFcEIsZUFBVSxHQUFRLFFBQVEsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFekQsK0JBQTBCLEdBQUUsSUFB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QUFDLE9BQU8sRUFBRSxFQUFFO1lBQ1YsWUFBWSxDQUFDLE9BQU8sQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQzVELE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDM0IsQ0FBQyxFQUNELENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDVCxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzNCLENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQztJQU9ELFdBQVc7UUFDVCxJQUFJLFNBQVMsQ0FBQyxXQUFXLEVBQUU7WUFDekIsTUFBTSxHQUFHLEdBQUcsU0FBUyxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7U0FDekU7YUFBTTtZQUNMLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxHQUFHLCtDQUErQyxDQUFDO1NBQzdFO0lBQ0gsQ0FBQzs7Z0hBekZVLGtCQUFrQjtvR0FBbEIsa0JBQWtCLHNEQ1gvQixpcVRBcUhNOzRGRDFHTyxrQkFBa0I7a0JBTDlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsV0FBVyxFQUFFLDZCQUE2QjtvQkFDMUMsU0FBUyxFQUFFLENBQUMsNkJBQTZCLENBQUM7aUJBQzNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBzdG9yZUxvY2F0aW9ucyB9IGZyb20gJy4uL2NvbnN0YW50cy9nZW5lcmFsJztcclxuaW1wb3J0IHsgRElSRUNUSU9OX1VSTCB9IGZyb20gJy4uL3NlcnZpY2VzL2VuZFBvaW50VVJMJztcclxuaW1wb3J0IHsgRmluZFN0b3JlU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2ZpbmQtc3RvcmUuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1maW5kLXN0b3JlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZmluZC1zdG9yZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZmluZC1zdG9yZS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGaW5kU3RvcmVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBzdG9yZXM6IGFueTtcclxuICBsYXRpdHVkZT86IG51bWJlcjtcclxuICBsb25naXR1ZGU/OiBudW1iZXI7XHJcbiAgc3RvcmVBcGlTdWJzY3JpZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICB6b29tPzogbnVtYmVyO1xyXG4gIGlzRGVmYXVsdFBPUzogYW55O1xyXG4gIGhvbWVCcmFuY2hBZGRyZXNzOiBhbnkgPSB7fTtcclxuICBwdWJsaWMgYWNjb3VudExpc3RzOiBhbnkgPSBbXTtcclxuICBicmFuY2hOYW1lOiBzdHJpbmcgPSAnJztcclxuICBob21lQnJhbmNoRGF0YTogYW55O1xyXG4gIGJyYW5jaFJlcyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8YW55Pih7fSk7XHJcbiAgc2hvd1dhaXRDdXJzb3IgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcclxuICBhcnJheU5vcnRoSXNsYW5kOiBhbnkgPSBbXTtcclxuICBhcnJheVNvdXRoSXNsYW5kOiBhbnkgPSBbXTtcclxuXHJcbiAgcHVibGljIGxvY2F0aW9uSWQ6IGFueSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiZGVtb1wiKTtcclxuXHJcbiAgbG9jYXRpb25Nb2RhbENvbnN0YW50c0RhdGEgPW5ldyBzdG9yZUxvY2F0aW9ucygpO1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZmluZFN0b3JlU2VydmljZTogRmluZFN0b3JlU2VydmljZSxcclxuICAgIHB1YmxpYyBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcblxyXG4gICAgdGhpcy5maW5kU3RvcmVTZXJ2aWNlLmhvbWVCcmFuY2guc3Vic2NyaWJlKChkYXRhOiBhbnkpID0+IHtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgaWYgKGRhdGEpIHtcclxuICAgICAgICAgIGlmIChsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnYnJhbmNoRGV0YWlscycpKSB7XHJcbiAgICAgICAgICAgIHRoaXMuaG9tZUJyYW5jaERhdGEgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnYnJhbmNoRGV0YWlscycpO1xyXG4gICAgICAgICAgICB0aGlzLmJyYW5jaE5hbWUgPSBKU09OLnBhcnNlKHRoaXMuaG9tZUJyYW5jaERhdGEpPy5kaXNwbGF5TmFtZTsgXHJcbiAgICAgICAgICAgIHRoaXMuY2QubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5icmFuY2hOYW1lID0gZGF0YT8uZGlzcGxheU5hbWU7XHJcbiAgICAgICAgICAgIHRoaXMuY2QubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9LCAxMDApO1xyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIGdldFN0b3JlcygpIHtcclxuICAgIGNvbnN0IGxhdEFuZGxvbmcgPSB7XHJcbiAgICAgIGxhdDogdGhpcy5sYXRpdHVkZSxcclxuICAgICAgbG9uZzogdGhpcy5sb25naXR1ZGVcclxuICAgIH1cclxuICAgIHRoaXMuZmluZFN0b3JlU2VydmljZS5nZXRBbGxTdG9yZXMobGF0QW5kbG9uZykuc3Vic2NyaWJlKChkYXRhOiBhbnkpID0+IHtcclxuICAgICAgdGhpcy5zaG93V2FpdEN1cnNvci5uZXh0KGZhbHNlKTtcclxuICAgICAgdGhpcy5zdG9yZXMgPSBkYXRhLnN0b3JlcztcclxuICAgICAgdGhpcy5zdG9yZUFwaVN1YnNjcmllZCA9IHRydWU7XHJcbiAgICAgIHRoaXMuaXNEZWZhdWx0UE9TID0gZGF0YS5zdG9yZXMuZm9yRWFjaCgoZWxlbWVudDogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKGVsZW1lbnQgJiYgZWxlbWVudC5pc0RlZmF1bHRQT1MgPT0gdHJ1ZSkge1xyXG4gICAgICAgICAgdGhpcy5ob21lQnJhbmNoQWRkcmVzcyA9IGVsZW1lbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy5hcnJheU5vcnRoSXNsYW5kID0gdGhpcy5zdG9yZXMuZmlsdGVyKChlbGVtZW50OiBhbnkpID0+IGVsZW1lbnQuaXNsYW5kTmFtZSA9PSAnTm9ydGggSXNsYW5kJyk7XHJcbiAgICAgIHRoaXMuYXJyYXlTb3V0aElzbGFuZCA9IHRoaXMuc3RvcmVzLmZpbHRlcigoZWxlbWVudDogYW55KSA9PiBlbGVtZW50LmlzbGFuZE5hbWUgPT0gJ1NvdXRoIElzbGFuZCcpO1xyXG4gICAgfVxyXG4gICAgKVxyXG4gIH1cclxuXHJcbiAgb3Blbk1hcChsYXQ6IG51bWJlciwgbG9uZzogbnVtYmVyKSB7XHJcbiAgICB3aW5kb3cub3BlbihESVJFQ1RJT05fVVJMLnVybCArIGxhdCArICcsJyArIGxvbmcsICdfYmxhbmsnKTtcclxuICB9XHJcblxyXG4gIG9uQnJhbmNoQ2hhbmdlKGRhdGE6IGFueSkge1xyXG4gICAgdGhpcy5maW5kU3RvcmVTZXJ2aWNlLmNoYW5nZUJyYW5jaChkYXRhLm5hbWUpLnN1YnNjcmliZShcclxuICAgICAgKF9yZXN1bHQpID0+IHtcclxuICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnYnJhbmNoRGV0YWlscycsIEpTT04uc3RyaW5naWZ5KGRhdGEpKTtcclxuICAgICAgICB3aW5kb3cubG9jYXRpb24ucmVsb2FkKCk7XHJcbiAgICAgIH0sXHJcbiAgICAgIChfZXJyb3IpID0+IHtcclxuICAgICAgICB3aW5kb3cubG9jYXRpb24ucmVsb2FkKCk7XHJcbiAgICAgIH0pXHJcbiAgfVxyXG4gIHNob3dQb3NpdGlvbiA9IChwb3NpdGlvbjogYW55KSA9PiB7XHJcbiAgICB0aGlzLmNkLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgdGhpcy5sYXRpdHVkZSA9IHBvc2l0aW9uLmNvb3Jkcy5sYXRpdHVkZTtcclxuICAgIHRoaXMubG9uZ2l0dWRlID0gcG9zaXRpb24uY29vcmRzLmxvbmdpdHVkZTtcclxuICB9XHJcblxyXG4gIGdldExvY2F0aW9uKCkge1xyXG4gICAgaWYgKG5hdmlnYXRvci5nZW9sb2NhdGlvbikge1xyXG4gICAgICBjb25zdCBhYmMgPSBuYXZpZ2F0b3IuZ2VvbG9jYXRpb24uZ2V0Q3VycmVudFBvc2l0aW9uKHRoaXMuc2hvd1Bvc2l0aW9uKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMubG9jYXRpb25JZC5pbm5lckhUTUwgPSBcIkdlb2xvY2F0aW9uIGlzIG5vdCBzdXBwb3J0ZWQgYnkgdGhpcyBicm93c2VyLlwiO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbC1sZy0xMiBjb2wtc20tMTJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXAgc3RvcmVGaW5kZXJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwLXByZXBlbmQgaW5wdXQtaWNvbiBwb1wiPlxyXG4gICAgICAgICAgICAgICAgPGltZyBzcmM9XCIuLi8uLi8uLi9hc3NldHMvaW1hZ2VzL2lvbmljLWlvcy1sb2NhdGlvbi1vdXRsaW5lLnN2Z1wiIGNsYXNzPVwidy0yMFwiPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBjdXN0b20taW5wdXQgcG9zaXRpb24tcmVsYXRpdmUgdGV4dC1sZWZ0XCIgdHlwZT1cImJ1dHRvblwiIGRhdGEtdG9nZ2xlPVwibW9kYWxcIiBkYXRhLXRhcmdldD1cIiNzdG9yZUZpbmRlck1vZGFsXCIgKGNsaWNrKT1cImdldFN0b3JlcygpXCI+XHJcbiAgICAgICAgICAgICAgICB7e2JyYW5jaE5hbWV9fVx0XHRcdFxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgPHAgaWQ9XCJkZW1vXCI+PC9wPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInBsYWNlaG9sZGVyLWljb25cIiAoY2xpY2spPVwiZ2V0TG9jYXRpb24oKVwiPlxyXG4gICAgICAgICAgICAgICAgPGltZyBzcmM9XCIuLi8uLi8uLi9hc3NldHMvaW1hZ2VzL2lvbmljLWlvcy1teS1sb2NhdGlvbi5zdmdcIiBjbGFzcz1cInctMjBcIj5cclxuICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiBjbGFzcz1cIm1vZGFsIGZhZGUgbW9kYWwtcmlnaHRcIiBpZD1cInN0b3JlRmluZGVyTW9kYWxcIiByb2xlPVwiZGlhbG9nXCIgYXJpYS1sYWJlbGxlZGJ5PVwic3RvcmVGaW5kZXJMYWJlbFwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImxvYWRpbmcgXCIgKm5nSWY9XCJzaG93V2FpdEN1cnNvciB8IGFzeW5jIFwiPkxvYWRpbmcmIzgyMzA7PC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwibW9kYWwtZGlhbG9nXCIgcm9sZT1cImRvY3VtZW50XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIiBjb250YWluZXJcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1oZWFkZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9XCJtb2RhbC10aXRsZVwiPnt7bG9jYXRpb25Nb2RhbENvbnN0YW50c0RhdGEuaG9tZUJyYW5jaH19PC9oNT5cclxuICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb24tY2xvc2UgYnJhbmNoLXBvcC1jbG9zZVwiIGRhdGEtZGlzbWlzcz1cIm1vZGFsXCIgYXJpYS1sYWJlbD1cIkNsb3NlXCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtYm9keSBweC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGVkLWxvY2F0aW9uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxhZGRyZXNzIGNsYXNzPVwibWItMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg2Pnt7aG9tZUJyYW5jaEFkZHJlc3M/LmRpc3BsYXlOYW1lfX0gPHNwYW4+KHt7aG9tZUJyYW5jaEFkZHJlc3M/LmJ1c2luZXNzQ2F0ZWdvcnl9fSk8L3NwYW4+PC9oNj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwibWItMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7aG9tZUJyYW5jaEFkZHJlc3M/LmFkZHJlc3M/LmZvcm1hdHRlZEFkZHJlc3N9fTxicj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImhvbWVUeHRMYWJlbFwiPkVtYWlsIDogPC9zcGFuPjxhIGhyZWY9XCJtYWlsdG86e3tob21lQnJhbmNoQWRkcmVzcz8uYWRkcmVzcz8uZW1haWx9fVwiPnt7aG9tZUJyYW5jaEFkZHJlc3M/LmFkZHJlc3M/LmVtYWlsfX08L2E+PGJyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaG9tZVR4dExhYmVsXCI+IFBob25lIDogPC9zcGFuPjxhIGhyZWY9XCJ0ZWw6e3tob21lQnJhbmNoQWRkcmVzcz8uYWRkcmVzcz8ucGhvbmV9fVwiPnt7aG9tZUJyYW5jaEFkZHJlc3M/LmFkZHJlc3M/LnBob25lfX08L2E+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImhvbWVEaXJlY3Rpb25cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPVwiamF2YXNjcmlwdDp2b2lkKDApXCIgKGNsaWNrKT1cIm9wZW5NYXAoaG9tZUJyYW5jaEFkZHJlc3M/Lmdlb1BvaW50LmxhdGl0dWRlLCBob21lQnJhbmNoQWRkcmVzcz8uZ2VvUG9pbnQubG9uZ2l0dWRlKVwiPnt7bG9jYXRpb25Nb2RhbENvbnN0YW50c0RhdGEuZ2V0RGlyZWN0aW9uQnRufX08L2E+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYWRkcmVzcz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibmVhcmVzdC1icmFuY2hcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGg1PkJyYW5jaGVzPC9oNT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwibmF2IG5hdi10YWJzXCIgaWQ9XCJteVRhYlwiIHJvbGU9XCJ0YWJsaXN0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9XCJuYXYtaXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPVwibmF2LWxpbmsgYWN0aXZlIGQtaW5saW5lLWJsb2NrIHBsLTFcIiBpZD1cImFsbC10YWJcIiBkYXRhLXRvZ2dsZT1cInRhYlwiIGhyZWY9XCIjYWxsXCIgcm9sZT1cInRhYlwiIGFyaWEtY29udHJvbHM9XCJhbGxcIiBhcmlhLXNlbGVjdGVkPVwidHJ1ZVwiPnt7bG9jYXRpb25Nb2RhbENvbnN0YW50c0RhdGEuYWxsVGFifX08L2E+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwibmF2LWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz1cIm5hdi1saW5rIGQtaW5saW5lLWJsb2NrIHBsLTFcIiBpZD1cIm5vcnRoLXRhYlwiIGRhdGEtdG9nZ2xlPVwidGFiXCIgaHJlZj1cIiNub3J0aFwiIHJvbGU9XCJ0YWJcIiBhcmlhLWNvbnRyb2xzPVwibm9ydGhcIiBhcmlhLXNlbGVjdGVkPVwiZmFsc2VcIj57e2xvY2F0aW9uTW9kYWxDb25zdGFudHNEYXRhLm5vcnRoSXNsYW5kVGFifX08L2E+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwibmF2LWl0ZW0gXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9XCJuYXYtbGluayBkLWlubGluZS1ibG9jayBwbC0xXCIgaWQ9XCJzb3V0aC10YWJcIiBkYXRhLXRvZ2dsZT1cInRhYlwiIGhyZWY9XCIjc291dGhcIiByb2xlPVwidGFiXCIgYXJpYS1jb250cm9scz1cInNvdXRoXCIgYXJpYS1zZWxlY3RlZD1cImZhbHNlXCI+e3tsb2NhdGlvbk1vZGFsQ29uc3RhbnRzRGF0YS5zb3V0aElzbGFuZFRhYn19PC9hPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRhYi1jb250ZW50IG10LTJcIiBpZD1cIm15VGFiQ29udGVudFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRhYi1wYW5lIGZhZGUgc2hvdyBhY3RpdmVcIiBpZD1cImFsbFwiIHJvbGU9XCJ0YWJwYW5lbFwiIGFyaWEtbGFiZWxsZWRieT1cImFsbC10YWJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic3RvcmVzICYmIHN0b3Jlcz8ubGVuZ3RoOyBlbHNlIHN0b3Jlc0F2YWxhYmxlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhZGRyZXNzICpuZ0Zvcj1cImxldCBzdG9yZSBvZiBzdG9yZXNcIiBjbGFzcz1cIm1iLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNT57e3N0b3JlPy5kaXNwbGF5TmFtZX19IDxzcGFuPih7e3N0b3JlPy5idXNpbmVzc0NhdGVnb3J5fX0pPC9zcGFuPjwvaDU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cIm1iLTJcIj57e3N0b3JlPy5hZGRyZXNzPy5mb3JtYXR0ZWRBZGRyZXNzfX08YnI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJob21lVHh0TGFiZWxcIj5FbWFpbCA6IDwvc3Bhbj48YSBocmVmPVwibWFpbHRvOnt7c3RvcmU/LmFkZHJlc3M/LmVtYWlsfX1cIj57e3N0b3JlPy5hZGRyZXNzPy5lbWFpbH19PC9hPjxicj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImhvbWVUeHRMYWJlbFwiPlBob25lIDogPC9zcGFuPjxhIGhyZWY9XCJ0ZWw6e3tzdG9yZT8uYWRkcmVzcz8ucGhvbmV9fVwiPnt7c3RvcmU/LmFkZHJlc3M/LnBob25lfX08L2E+PC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInB0LTEgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBkaXJlY3Rpb25cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPVwiamF2YXNjcmlwdDp2b2lkKDApXCIgKGNsaWNrKT1cIm9wZW5NYXAoc3RvcmU/Lmdlb1BvaW50LmxhdGl0dWRlLCBzdG9yZT8uZ2VvUG9pbnQubG9uZ2l0dWRlKVwiPnt7bG9jYXRpb25Nb2RhbENvbnN0YW50c0RhdGEuZ2V0RGlyZWN0aW9uQnRufX08L2E+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cInNlbGVjdC1idG5cIiAoY2xpY2spPVwib25CcmFuY2hDaGFuZ2Uoc3RvcmUpXCI+e3tsb2NhdGlvbk1vZGFsQ29uc3RhbnRzRGF0YS5zZWxlY3RCdG59fTwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYWRkcmVzcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI3N0b3Jlc0F2YWxhYmxlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9EYXRhQXZhaWxhYmxlTGFiZWwgdGV4dC1jZW50ZXIgcHQtNFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJub0RhdGFcIj5ObyBicmFuY2ggaXMgYXZhaWxhYmxlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFiLXBhbmUgZmFkZVwiIGlkPVwibm9ydGhcIiByb2xlPVwidGFicGFuZWxcIiBhcmlhLWxhYmVsbGVkYnk9XCJub3J0aC10YWJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXJyYXlOb3J0aElzbGFuZCAmJiBhcnJheU5vcnRoSXNsYW5kPy5sZW5ndGg+MDsgZWxzZSBub3J0aElzbGFuZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YWRkcmVzcyAqbmdGb3I9XCJsZXQgc3RvcmUgb2YgYXJyYXlOb3J0aElzbGFuZFwiIGNsYXNzPVwibWItMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1Pnt7c3RvcmU/LmRpc3BsYXlOYW1lfX0gPHNwYW4+KHt7c3RvcmU/LmJ1c2luZXNzQ2F0ZWdvcnl9fSk8L3NwYW4+PC9oNT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwibWItMlwiPnt7c3RvcmU/LmFkZHJlc3M/LmZvcm1hdHRlZEFkZHJlc3N9fTxicj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImhvbWVUeHRMYWJlbFwiPkVtYWlsIDogPC9zcGFuPjxhIGhyZWY9XCJtYWlsdG86e3tzdG9yZT8uYWRkcmVzcz8uZW1haWx9fVwiPnt7c3RvcmU/LmFkZHJlc3M/LmVtYWlsfX08L2E+PGJyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaG9tZVR4dExhYmVsXCI+UGhvbmUgOiA8L3NwYW4+PGEgaHJlZj1cInRlbDp7e3N0b3JlPy5hZGRyZXNzPy5waG9uZX19XCI+e3tzdG9yZT8uYWRkcmVzcz8ucGhvbmV9fTwvYT48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHQtMSBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGRpcmVjdGlvblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9XCJqYXZhc2NyaXB0OnZvaWQoMClcIiAoY2xpY2spPVwib3Blbk1hcChzdG9yZT8uZ2VvUG9pbnQubGF0aXR1ZGUsIHN0b3JlPy5nZW9Qb2ludC5sb25naXR1ZGUpXCI+e3tsb2NhdGlvbk1vZGFsQ29uc3RhbnRzRGF0YS5nZXREaXJlY3Rpb25CdG59fTwvYT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwic2VsZWN0LWJ0blwiIChjbGljayk9XCJvbkJyYW5jaENoYW5nZShzdG9yZSlcIj57e2xvY2F0aW9uTW9kYWxDb25zdGFudHNEYXRhLnNlbGVjdEJ0bn19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hZGRyZXNzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjbm9ydGhJc2xhbmQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub0RhdGFBdmFpbGFibGVMYWJlbCB0ZXh0LWNlbnRlciBwdC00XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm5vRGF0YVwiPk5vIGJyYW5jaCBpcyBhdmFpbGFibGU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWItcGFuZSBmYWRlXCIgaWQ9XCJzb3V0aFwiIHJvbGU9XCJ0YWJwYW5lbFwiIGFyaWEtbGFiZWxsZWRieT1cInNvdXRoLXRhYlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhcnJheVNvdXRoSXNsYW5kICYmIGFycmF5U291dGhJc2xhbmQ/Lmxlbmd0aD4wOyBlbHNlIHNvdXRoSXNsYW5kXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhZGRyZXNzICpuZ0Zvcj1cImxldCBzdG9yZSBvZiBhcnJheVNvdXRoSXNsYW5kXCIgY2xhc3M9XCJtYi0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDU+e3tzdG9yZT8uZGlzcGxheU5hbWV9fSA8c3Bhbj4oe3tzdG9yZT8uYnVzaW5lc3NDYXRlZ29yeX19KTwvc3Bhbj48L2g1PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJtYi0yXCI+e3tzdG9yZT8uYWRkcmVzcz8uZm9ybWF0dGVkQWRkcmVzc319PGJyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaG9tZVR4dExhYmVsXCI+RW1haWwgOiA8L3NwYW4+PGEgaHJlZj1cIm1haWx0bzp7e3N0b3JlPy5hZGRyZXNzPy5lbWFpbH19XCI+e3tzdG9yZT8uYWRkcmVzcz8uZW1haWx9fTwvYT48YnI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJob21lVHh0TGFiZWxcIj5QaG9uZSA6IDwvc3Bhbj48YSBocmVmPVwidGVsOnt7c3RvcmU/LmFkZHJlc3M/LnBob25lfX1cIj57e3N0b3JlPy5hZGRyZXNzPy5waG9uZX19PC9hPjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwdC0xIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWJldHdlZW4gZGlyZWN0aW9uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj1cImphdmFzY3JpcHQ6dm9pZCgwKVwiIChjbGljayk9XCJvcGVuTWFwKHN0b3JlPy5nZW9Qb2ludC5sYXRpdHVkZSwgc3RvcmU/Lmdlb1BvaW50LmxvbmdpdHVkZSlcIj57e2xvY2F0aW9uTW9kYWxDb25zdGFudHNEYXRhLmdldERpcmVjdGlvbkJ0bn19PC9hPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJzZWxlY3QtYnRuXCIgKGNsaWNrKT1cIm9uQnJhbmNoQ2hhbmdlKHN0b3JlKVwiPnt7bG9jYXRpb25Nb2RhbENvbnN0YW50c0RhdGEuc2VsZWN0QnRufX08L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FkZHJlc3M+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNzb3V0aElzbGFuZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vRGF0YUF2YWlsYWJsZUxhYmVsIHRleHQtY2VudGVyIHB0LTRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibm9EYXRhXCI+Tm8gYnJhbmNoIGlzIGF2YWlsYWJsZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj4iXX0=
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluZC1zdG9yZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9idWlsZGluZ3Byb2R1Y3RfbGlicmFyeS9zcmMvbGliL2ZpbmQtc3RvcmUvZmluZC1zdG9yZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9idWlsZGluZ3Byb2R1Y3RfbGlicmFyeS9zcmMvbGliL2ZpbmQtc3RvcmUvZmluZC1zdG9yZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7QUFReEQsTUFBTSxPQUFPLGtCQUFrQjtJQW9CN0IsWUFBb0IsZ0JBQWtDLEVBQzdDLEVBQXFCO1FBRFYscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUM3QyxPQUFFLEdBQUYsRUFBRSxDQUFtQjtRQWhCOUIsc0JBQWlCLEdBQVksS0FBSyxDQUFDO1FBR25DLHNCQUFpQixHQUFRLEVBQUUsQ0FBQztRQUNyQixpQkFBWSxHQUFRLEVBQUUsQ0FBQztRQUM5QixlQUFVLEdBQVcsRUFBRSxDQUFDO1FBRXhCLGNBQVMsR0FBRyxJQUFJLGVBQWUsQ0FBTSxFQUFFLENBQUMsQ0FBQztRQUN6QyxtQkFBYyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ3JELHFCQUFnQixHQUFRLEVBQUUsQ0FBQztRQUMzQixxQkFBZ0IsR0FBUSxFQUFFLENBQUM7UUFFcEIsZUFBVSxHQUFRLFFBQVEsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFekQsK0JBQTBCLEdBQUcsSUFB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QUFDLE9BQU8sRUFBRSxFQUFFO1lBQ1YsWUFBWSxDQUFDLE9BQU8sQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQzVELE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDM0IsQ0FBQyxFQUNELENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDVCxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzNCLENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQztJQU9ELFdBQVc7UUFDVCxJQUFJLFNBQVMsQ0FBQyxXQUFXLEVBQUU7WUFDekIsTUFBTSxHQUFHLEdBQUcsU0FBUyxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7U0FDekU7YUFBTTtZQUNMLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxHQUFHLCtDQUErQyxDQUFDO1NBQzdFO0lBQ0gsQ0FBQzs7Z0hBekZVLGtCQUFrQjtvR0FBbEIsa0JBQWtCLHNEQ1gvQixpcVRBcUhNOzRGRDFHTyxrQkFBa0I7a0JBTDlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsV0FBVyxFQUFFLDZCQUE2QjtvQkFDMUMsU0FBUyxFQUFFLENBQUMsNkJBQTZCLENBQUM7aUJBQzNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBzdG9yZUxvY2F0aW9ucyB9IGZyb20gJy4uL2NvbnN0YW50cy9nZW5lcmFsJztcclxuaW1wb3J0IHsgRElSRUNUSU9OX1VSTCB9IGZyb20gJy4uL3NlcnZpY2VzL2VuZFBvaW50VVJMJztcclxuaW1wb3J0IHsgRmluZFN0b3JlU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2ZpbmQtc3RvcmUuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1maW5kLXN0b3JlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZmluZC1zdG9yZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZmluZC1zdG9yZS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGaW5kU3RvcmVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBzdG9yZXM6IGFueTtcclxuICBsYXRpdHVkZT86IG51bWJlcjtcclxuICBsb25naXR1ZGU/OiBudW1iZXI7XHJcbiAgc3RvcmVBcGlTdWJzY3JpZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICB6b29tPzogbnVtYmVyO1xyXG4gIGlzRGVmYXVsdFBPUzogYW55O1xyXG4gIGhvbWVCcmFuY2hBZGRyZXNzOiBhbnkgPSB7fTtcclxuICBwdWJsaWMgYWNjb3VudExpc3RzOiBhbnkgPSBbXTtcclxuICBicmFuY2hOYW1lOiBzdHJpbmcgPSAnJztcclxuICBob21lQnJhbmNoRGF0YTogYW55O1xyXG4gIGJyYW5jaFJlcyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8YW55Pih7fSk7XHJcbiAgc2hvd1dhaXRDdXJzb3IgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcclxuICBhcnJheU5vcnRoSXNsYW5kOiBhbnkgPSBbXTtcclxuICBhcnJheVNvdXRoSXNsYW5kOiBhbnkgPSBbXTtcclxuXHJcbiAgcHVibGljIGxvY2F0aW9uSWQ6IGFueSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiZGVtb1wiKTtcclxuXHJcbiAgbG9jYXRpb25Nb2RhbENvbnN0YW50c0RhdGEgPSBuZXcgc3RvcmVMb2NhdGlvbnMoKTtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZpbmRTdG9yZVNlcnZpY2U6IEZpbmRTdG9yZVNlcnZpY2UsXHJcbiAgICBwdWJsaWMgY2Q6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG5cclxuICAgIHRoaXMuZmluZFN0b3JlU2VydmljZS5ob21lQnJhbmNoLnN1YnNjcmliZSgoZGF0YTogYW55KSA9PiB7XHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIGlmIChkYXRhKSB7XHJcbiAgICAgICAgICBpZiAobG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2JyYW5jaERldGFpbHMnKSkge1xyXG4gICAgICAgICAgICB0aGlzLmhvbWVCcmFuY2hEYXRhID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2JyYW5jaERldGFpbHMnKTtcclxuICAgICAgICAgICAgdGhpcy5icmFuY2hOYW1lID0gSlNPTi5wYXJzZSh0aGlzLmhvbWVCcmFuY2hEYXRhKT8uZGlzcGxheU5hbWU7IFxyXG4gICAgICAgICAgICB0aGlzLmNkLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuYnJhbmNoTmFtZSA9IGRhdGE/LmRpc3BsYXlOYW1lO1xyXG4gICAgICAgICAgICB0aGlzLmNkLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfSwgMTAwKTtcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBnZXRTdG9yZXMoKSB7XHJcbiAgICBjb25zdCBsYXRBbmRsb25nID0ge1xyXG4gICAgICBsYXQ6IHRoaXMubGF0aXR1ZGUsXHJcbiAgICAgIGxvbmc6IHRoaXMubG9uZ2l0dWRlXHJcbiAgICB9XHJcbiAgICB0aGlzLmZpbmRTdG9yZVNlcnZpY2UuZ2V0QWxsU3RvcmVzKGxhdEFuZGxvbmcpLnN1YnNjcmliZSgoZGF0YTogYW55KSA9PiB7XHJcbiAgICAgIHRoaXMuc2hvd1dhaXRDdXJzb3IubmV4dChmYWxzZSk7XHJcbiAgICAgIHRoaXMuc3RvcmVzID0gZGF0YS5zdG9yZXM7XHJcbiAgICAgIHRoaXMuc3RvcmVBcGlTdWJzY3JpZWQgPSB0cnVlO1xyXG4gICAgICB0aGlzLmlzRGVmYXVsdFBPUyA9IGRhdGEuc3RvcmVzLmZvckVhY2goKGVsZW1lbnQ6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChlbGVtZW50ICYmIGVsZW1lbnQuaXNEZWZhdWx0UE9TID09IHRydWUpIHtcclxuICAgICAgICAgIHRoaXMuaG9tZUJyYW5jaEFkZHJlc3MgPSBlbGVtZW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMuYXJyYXlOb3J0aElzbGFuZCA9IHRoaXMuc3RvcmVzLmZpbHRlcigoZWxlbWVudDogYW55KSA9PiBlbGVtZW50LmlzbGFuZE5hbWUgPT0gJ05vcnRoIElzbGFuZCcpO1xyXG4gICAgICB0aGlzLmFycmF5U291dGhJc2xhbmQgPSB0aGlzLnN0b3Jlcy5maWx0ZXIoKGVsZW1lbnQ6IGFueSkgPT4gZWxlbWVudC5pc2xhbmROYW1lID09ICdTb3V0aCBJc2xhbmQnKTtcclxuICAgIH1cclxuICAgIClcclxuICB9XHJcblxyXG4gIG9wZW5NYXAobGF0OiBudW1iZXIsIGxvbmc6IG51bWJlcikge1xyXG4gICAgd2luZG93Lm9wZW4oRElSRUNUSU9OX1VSTC51cmwgKyBsYXQgKyAnLCcgKyBsb25nLCAnX2JsYW5rJyk7XHJcbiAgfVxyXG5cclxuICBvbkJyYW5jaENoYW5nZShkYXRhOiBhbnkpIHtcclxuICAgIHRoaXMuZmluZFN0b3JlU2VydmljZS5jaGFuZ2VCcmFuY2goZGF0YS5uYW1lKS5zdWJzY3JpYmUoXHJcbiAgICAgIChfcmVzdWx0KSA9PiB7XHJcbiAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ2JyYW5jaERldGFpbHMnLCBKU09OLnN0cmluZ2lmeShkYXRhKSk7XHJcbiAgICAgICAgd2luZG93LmxvY2F0aW9uLnJlbG9hZCgpO1xyXG4gICAgICB9LFxyXG4gICAgICAoX2Vycm9yKSA9PiB7XHJcbiAgICAgICAgd2luZG93LmxvY2F0aW9uLnJlbG9hZCgpO1xyXG4gICAgICB9KVxyXG4gIH1cclxuICBzaG93UG9zaXRpb24gPSAocG9zaXRpb246IGFueSkgPT4ge1xyXG4gICAgdGhpcy5jZC5tYXJrRm9yQ2hlY2soKTtcclxuICAgIHRoaXMubGF0aXR1ZGUgPSBwb3NpdGlvbi5jb29yZHMubGF0aXR1ZGU7XHJcbiAgICB0aGlzLmxvbmdpdHVkZSA9IHBvc2l0aW9uLmNvb3Jkcy5sb25naXR1ZGU7XHJcbiAgfVxyXG5cclxuICBnZXRMb2NhdGlvbigpIHtcclxuICAgIGlmIChuYXZpZ2F0b3IuZ2VvbG9jYXRpb24pIHtcclxuICAgICAgY29uc3QgYWJjID0gbmF2aWdhdG9yLmdlb2xvY2F0aW9uLmdldEN1cnJlbnRQb3NpdGlvbih0aGlzLnNob3dQb3NpdGlvbik7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmxvY2F0aW9uSWQuaW5uZXJIVE1MID0gXCJHZW9sb2NhdGlvbiBpcyBub3Qgc3VwcG9ydGVkIGJ5IHRoaXMgYnJvd3Nlci5cIjtcclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctMTIgY29sLXNtLTEyXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwIHN0b3JlRmluZGVyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1ncm91cC1wcmVwZW5kIGlucHV0LWljb24gcG9cIj5cclxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiLi4vLi4vLi4vYXNzZXRzL2ltYWdlcy9pb25pYy1pb3MtbG9jYXRpb24tb3V0bGluZS5zdmdcIiBjbGFzcz1cInctMjBcIj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gY3VzdG9tLWlucHV0IHBvc2l0aW9uLXJlbGF0aXZlIHRleHQtbGVmdFwiIHR5cGU9XCJidXR0b25cIiBkYXRhLXRvZ2dsZT1cIm1vZGFsXCIgZGF0YS10YXJnZXQ9XCIjc3RvcmVGaW5kZXJNb2RhbFwiIChjbGljayk9XCJnZXRTdG9yZXMoKVwiPlxyXG4gICAgICAgICAgICAgICAge3ticmFuY2hOYW1lfX1cdFx0XHRcclxuICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgIDxwIGlkPVwiZGVtb1wiPjwvcD5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJwbGFjZWhvbGRlci1pY29uXCIgKGNsaWNrKT1cImdldExvY2F0aW9uKClcIj5cclxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiLi4vLi4vLi4vYXNzZXRzL2ltYWdlcy9pb25pYy1pb3MtbXktbG9jYXRpb24uc3ZnXCIgY2xhc3M9XCJ3LTIwXCI+XHJcbiAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj5cclxuXHJcbjxkaXYgY2xhc3M9XCJtb2RhbCBmYWRlIG1vZGFsLXJpZ2h0XCIgaWQ9XCJzdG9yZUZpbmRlck1vZGFsXCIgcm9sZT1cImRpYWxvZ1wiIGFyaWEtbGFiZWxsZWRieT1cInN0b3JlRmluZGVyTGFiZWxcIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJsb2FkaW5nIFwiICpuZ0lmPVwic2hvd1dhaXRDdXJzb3IgfCBhc3luYyBcIj5Mb2FkaW5nJiM4MjMwOzwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsLWRpYWxvZ1wiIHJvbGU9XCJkb2N1bWVudFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1jb250ZW50XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCIgY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtaGVhZGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGg1IGNsYXNzPVwibW9kYWwtdGl0bGVcIj57e2xvY2F0aW9uTW9kYWxDb25zdGFudHNEYXRhLmhvbWVCcmFuY2h9fTwvaDU+XHJcbiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uLWNsb3NlIGJyYW5jaC1wb3AtY2xvc2VcIiBkYXRhLWRpc21pc3M9XCJtb2RhbFwiIGFyaWEtbGFiZWw9XCJDbG9zZVwiPjwvaT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWJvZHkgcHgtMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWxlY3RlZC1sb2NhdGlvblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YWRkcmVzcyBjbGFzcz1cIm1iLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNj57e2hvbWVCcmFuY2hBZGRyZXNzPy5kaXNwbGF5TmFtZX19IDxzcGFuPih7e2hvbWVCcmFuY2hBZGRyZXNzPy5idXNpbmVzc0NhdGVnb3J5fX0pPC9zcGFuPjwvaDY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cIm1iLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2hvbWVCcmFuY2hBZGRyZXNzPy5hZGRyZXNzPy5mb3JtYXR0ZWRBZGRyZXNzfX08YnI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJob21lVHh0TGFiZWxcIj5FbWFpbCA6IDwvc3Bhbj48YSBocmVmPVwibWFpbHRvOnt7aG9tZUJyYW5jaEFkZHJlc3M/LmFkZHJlc3M/LmVtYWlsfX1cIj57e2hvbWVCcmFuY2hBZGRyZXNzPy5hZGRyZXNzPy5lbWFpbH19PC9hPjxicj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImhvbWVUeHRMYWJlbFwiPiBQaG9uZSA6IDwvc3Bhbj48YSBocmVmPVwidGVsOnt7aG9tZUJyYW5jaEFkZHJlc3M/LmFkZHJlc3M/LnBob25lfX1cIj57e2hvbWVCcmFuY2hBZGRyZXNzPy5hZGRyZXNzPy5waG9uZX19PC9hPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJob21lRGlyZWN0aW9uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj1cImphdmFzY3JpcHQ6dm9pZCgwKVwiIChjbGljayk9XCJvcGVuTWFwKGhvbWVCcmFuY2hBZGRyZXNzPy5nZW9Qb2ludC5sYXRpdHVkZSwgaG9tZUJyYW5jaEFkZHJlc3M/Lmdlb1BvaW50LmxvbmdpdHVkZSlcIj57e2xvY2F0aW9uTW9kYWxDb25zdGFudHNEYXRhLmdldERpcmVjdGlvbkJ0bn19PC9hPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2FkZHJlc3M+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5lYXJlc3QtYnJhbmNoXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxoNT5CcmFuY2hlczwvaDU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cIm5hdiBuYXYtdGFic1wiIGlkPVwibXlUYWJcIiByb2xlPVwidGFibGlzdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwibmF2LWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz1cIm5hdi1saW5rIGFjdGl2ZSBkLWlubGluZS1ibG9jayBwbC0xXCIgaWQ9XCJhbGwtdGFiXCIgZGF0YS10b2dnbGU9XCJ0YWJcIiBocmVmPVwiI2FsbFwiIHJvbGU9XCJ0YWJcIiBhcmlhLWNvbnRyb2xzPVwiYWxsXCIgYXJpYS1zZWxlY3RlZD1cInRydWVcIj57e2xvY2F0aW9uTW9kYWxDb25zdGFudHNEYXRhLmFsbFRhYn19PC9hPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz1cIm5hdi1pdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9XCJuYXYtbGluayBkLWlubGluZS1ibG9jayBwbC0xXCIgaWQ9XCJub3J0aC10YWJcIiBkYXRhLXRvZ2dsZT1cInRhYlwiIGhyZWY9XCIjbm9ydGhcIiByb2xlPVwidGFiXCIgYXJpYS1jb250cm9scz1cIm5vcnRoXCIgYXJpYS1zZWxlY3RlZD1cImZhbHNlXCI+e3tsb2NhdGlvbk1vZGFsQ29uc3RhbnRzRGF0YS5ub3J0aElzbGFuZFRhYn19PC9hPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz1cIm5hdi1pdGVtIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPVwibmF2LWxpbmsgZC1pbmxpbmUtYmxvY2sgcGwtMVwiIGlkPVwic291dGgtdGFiXCIgZGF0YS10b2dnbGU9XCJ0YWJcIiBocmVmPVwiI3NvdXRoXCIgcm9sZT1cInRhYlwiIGFyaWEtY29udHJvbHM9XCJzb3V0aFwiIGFyaWEtc2VsZWN0ZWQ9XCJmYWxzZVwiPnt7bG9jYXRpb25Nb2RhbENvbnN0YW50c0RhdGEuc291dGhJc2xhbmRUYWJ9fTwvYT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWItY29udGVudCBtdC0yXCIgaWQ9XCJteVRhYkNvbnRlbnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWItcGFuZSBmYWRlIHNob3cgYWN0aXZlXCIgaWQ9XCJhbGxcIiByb2xlPVwidGFicGFuZWxcIiBhcmlhLWxhYmVsbGVkYnk9XCJhbGwtdGFiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0b3JlcyAmJiBzdG9yZXM/Lmxlbmd0aDsgZWxzZSBzdG9yZXNBdmFsYWJsZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YWRkcmVzcyAqbmdGb3I9XCJsZXQgc3RvcmUgb2Ygc3RvcmVzXCIgY2xhc3M9XCJtYi0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDU+e3tzdG9yZT8uZGlzcGxheU5hbWV9fSA8c3Bhbj4oe3tzdG9yZT8uYnVzaW5lc3NDYXRlZ29yeX19KTwvc3Bhbj48L2g1PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJtYi0yXCI+e3tzdG9yZT8uYWRkcmVzcz8uZm9ybWF0dGVkQWRkcmVzc319PGJyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaG9tZVR4dExhYmVsXCI+RW1haWwgOiA8L3NwYW4+PGEgaHJlZj1cIm1haWx0bzp7e3N0b3JlPy5hZGRyZXNzPy5lbWFpbH19XCI+e3tzdG9yZT8uYWRkcmVzcz8uZW1haWx9fTwvYT48YnI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJob21lVHh0TGFiZWxcIj5QaG9uZSA6IDwvc3Bhbj48YSBocmVmPVwidGVsOnt7c3RvcmU/LmFkZHJlc3M/LnBob25lfX1cIj57e3N0b3JlPy5hZGRyZXNzPy5waG9uZX19PC9hPjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwdC0xIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWJldHdlZW4gZGlyZWN0aW9uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj1cImphdmFzY3JpcHQ6dm9pZCgwKVwiIChjbGljayk9XCJvcGVuTWFwKHN0b3JlPy5nZW9Qb2ludC5sYXRpdHVkZSwgc3RvcmU/Lmdlb1BvaW50LmxvbmdpdHVkZSlcIj57e2xvY2F0aW9uTW9kYWxDb25zdGFudHNEYXRhLmdldERpcmVjdGlvbkJ0bn19PC9hPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJzZWxlY3QtYnRuXCIgKGNsaWNrKT1cIm9uQnJhbmNoQ2hhbmdlKHN0b3JlKVwiPnt7bG9jYXRpb25Nb2RhbENvbnN0YW50c0RhdGEuc2VsZWN0QnRufX08L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FkZHJlc3M+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNzdG9yZXNBdmFsYWJsZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vRGF0YUF2YWlsYWJsZUxhYmVsIHRleHQtY2VudGVyIHB0LTRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibm9EYXRhXCI+Tm8gYnJhbmNoIGlzIGF2YWlsYWJsZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRhYi1wYW5lIGZhZGVcIiBpZD1cIm5vcnRoXCIgcm9sZT1cInRhYnBhbmVsXCIgYXJpYS1sYWJlbGxlZGJ5PVwibm9ydGgtdGFiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImFycmF5Tm9ydGhJc2xhbmQgJiYgYXJyYXlOb3J0aElzbGFuZD8ubGVuZ3RoPjA7IGVsc2Ugbm9ydGhJc2xhbmRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFkZHJlc3MgKm5nRm9yPVwibGV0IHN0b3JlIG9mIGFycmF5Tm9ydGhJc2xhbmRcIiBjbGFzcz1cIm1iLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNT57e3N0b3JlPy5kaXNwbGF5TmFtZX19IDxzcGFuPih7e3N0b3JlPy5idXNpbmVzc0NhdGVnb3J5fX0pPC9zcGFuPjwvaDU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cIm1iLTJcIj57e3N0b3JlPy5hZGRyZXNzPy5mb3JtYXR0ZWRBZGRyZXNzfX08YnI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJob21lVHh0TGFiZWxcIj5FbWFpbCA6IDwvc3Bhbj48YSBocmVmPVwibWFpbHRvOnt7c3RvcmU/LmFkZHJlc3M/LmVtYWlsfX1cIj57e3N0b3JlPy5hZGRyZXNzPy5lbWFpbH19PC9hPjxicj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImhvbWVUeHRMYWJlbFwiPlBob25lIDogPC9zcGFuPjxhIGhyZWY9XCJ0ZWw6e3tzdG9yZT8uYWRkcmVzcz8ucGhvbmV9fVwiPnt7c3RvcmU/LmFkZHJlc3M/LnBob25lfX08L2E+PC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInB0LTEgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBkaXJlY3Rpb25cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPVwiamF2YXNjcmlwdDp2b2lkKDApXCIgKGNsaWNrKT1cIm9wZW5NYXAoc3RvcmU/Lmdlb1BvaW50LmxhdGl0dWRlLCBzdG9yZT8uZ2VvUG9pbnQubG9uZ2l0dWRlKVwiPnt7bG9jYXRpb25Nb2RhbENvbnN0YW50c0RhdGEuZ2V0RGlyZWN0aW9uQnRufX08L2E+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cInNlbGVjdC1idG5cIiAoY2xpY2spPVwib25CcmFuY2hDaGFuZ2Uoc3RvcmUpXCI+e3tsb2NhdGlvbk1vZGFsQ29uc3RhbnRzRGF0YS5zZWxlY3RCdG59fTwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYWRkcmVzcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI25vcnRoSXNsYW5kPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9EYXRhQXZhaWxhYmxlTGFiZWwgdGV4dC1jZW50ZXIgcHQtNFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJub0RhdGFcIj5ObyBicmFuY2ggaXMgYXZhaWxhYmxlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFiLXBhbmUgZmFkZVwiIGlkPVwic291dGhcIiByb2xlPVwidGFicGFuZWxcIiBhcmlhLWxhYmVsbGVkYnk9XCJzb3V0aC10YWJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXJyYXlTb3V0aElzbGFuZCAmJiBhcnJheVNvdXRoSXNsYW5kPy5sZW5ndGg+MDsgZWxzZSBzb3V0aElzbGFuZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YWRkcmVzcyAqbmdGb3I9XCJsZXQgc3RvcmUgb2YgYXJyYXlTb3V0aElzbGFuZFwiIGNsYXNzPVwibWItMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1Pnt7c3RvcmU/LmRpc3BsYXlOYW1lfX0gPHNwYW4+KHt7c3RvcmU/LmJ1c2luZXNzQ2F0ZWdvcnl9fSk8L3NwYW4+PC9oNT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwibWItMlwiPnt7c3RvcmU/LmFkZHJlc3M/LmZvcm1hdHRlZEFkZHJlc3N9fTxicj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImhvbWVUeHRMYWJlbFwiPkVtYWlsIDogPC9zcGFuPjxhIGhyZWY9XCJtYWlsdG86e3tzdG9yZT8uYWRkcmVzcz8uZW1haWx9fVwiPnt7c3RvcmU/LmFkZHJlc3M/LmVtYWlsfX08L2E+PGJyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaG9tZVR4dExhYmVsXCI+UGhvbmUgOiA8L3NwYW4+PGEgaHJlZj1cInRlbDp7e3N0b3JlPy5hZGRyZXNzPy5waG9uZX19XCI+e3tzdG9yZT8uYWRkcmVzcz8ucGhvbmV9fTwvYT48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHQtMSBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGRpcmVjdGlvblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9XCJqYXZhc2NyaXB0OnZvaWQoMClcIiAoY2xpY2spPVwib3Blbk1hcChzdG9yZT8uZ2VvUG9pbnQubGF0aXR1ZGUsIHN0b3JlPy5nZW9Qb2ludC5sb25naXR1ZGUpXCI+e3tsb2NhdGlvbk1vZGFsQ29uc3RhbnRzRGF0YS5nZXREaXJlY3Rpb25CdG59fTwvYT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwic2VsZWN0LWJ0blwiIChjbGljayk9XCJvbkJyYW5jaENoYW5nZShzdG9yZSlcIj57e2xvY2F0aW9uTW9kYWxDb25zdGFudHNEYXRhLnNlbGVjdEJ0bn19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hZGRyZXNzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjc291dGhJc2xhbmQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub0RhdGFBdmFpbGFibGVMYWJlbCB0ZXh0LWNlbnRlciBwdC00XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm5vRGF0YVwiPk5vIGJyYW5jaCBpcyBhdmFpbGFibGU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
@@ -13,7 +13,7 @@ export class AccountDashboardComponent {
13
13
  this.cmsService = cmsService;
14
14
  this.orderHistory = orderHistory;
15
15
  this.showWaitCursor = new BehaviorSubject(false);
16
- this.loaderImage = new BehaviorSubject(false);
16
+ this.showOrderCursor = new BehaviorSubject(false);
17
17
  this.currentPage = 0;
18
18
  this.invoiceCreditList = [];
19
19
  this.ordersDataAvailale = '';
@@ -73,7 +73,6 @@ export class AccountDashboardComponent {
73
73
  else if (element.status == 'refund') {
74
74
  element.className = 'status-paid';
75
75
  }
76
- this.loaderImage.next(false);
77
76
  this.cd.markForCheck();
78
77
  });
79
78
  }
@@ -88,13 +87,13 @@ export class AccountDashboardComponent {
88
87
  this.selectedOrderState.push(obj);
89
88
  }
90
89
  getOrderHistory() {
91
- this.showWaitCursor.next(true);
90
+ this.showOrderCursor.next(true);
92
91
  this.getLastMonthDateRange();
93
92
  const reqObj = {
94
93
  "searchParams": this.selectedOrderState
95
94
  };
96
95
  this.orderHistory.getOrderHistoryList(reqObj, this.currentPage).subscribe(res => {
97
- this.showWaitCursor.next(false);
96
+ this.showOrderCursor.next(false);
98
97
  this.orders = res.orders.slice(0, 6);
99
98
  if (this.orders && this.orders.length > 0) {
100
99
  this.ordersDataAvailale = 'hasData';
@@ -111,7 +110,7 @@ export class AccountDashboardComponent {
111
110
  }
112
111
  });
113
112
  }, error => {
114
- this.showWaitCursor.next(false);
113
+ this.showOrderCursor.next(false);
115
114
  console.log(error);
116
115
  });
117
116
  }
@@ -120,7 +119,7 @@ export class AccountDashboardComponent {
120
119
  }
121
120
  }
122
121
  AccountDashboardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AccountDashboardComponent, deps: [{ token: i1.MyAccountService }, { token: i0.ChangeDetectorRef }, { token: i2.CmsService }, { token: i3.OrderHistoryService }], target: i0.ɵɵFactoryTarget.Component });
123
- AccountDashboardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: AccountDashboardComponent, selector: "app-account-dashboard", outputs: { navigateInvoices: "navigateInvoices" }, ngImport: i0, template: "<div class=\"loading\" *ngIf=\"showWaitCursor | async \">Loading&#8230;</div>\r\n<div class=\"row gx-5 dashboard-main-container\">\r\n <div class=\"col dashboard-invoices mr-3\">\r\n <h4>\r\n Invoices & Credit Notes\r\n <a *ngIf=\"dataAvailale == 'hasData' \" (click)=\"navigateToInvoices()\" \r\n id=\"invoice-credit-tab\" data-toggle=\"tab\" data-target=\"#invoice-credit\" class=\"view-all-link\" title=\"View All\">View all</a>\r\n </h4>\r\n <ng-container *ngIf=\"dataAvailale == 'hasData' \">\r\n <div class=\"dashboard-table-container table-responsive\">\r\n <table class=\"table account-list-table\">\r\n <thead>\r\n <tr>\r\n <th scope=\"col\">Date</th>\r\n <th scope=\"col\">Due Date</th>\r\n <th scope=\"col\">Invoice #</th>\r\n <th scope=\"col\">Status</th>\r\n <th scope=\"col\">Total <span class=\"gst-text\">excl GST</span></th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let data of invoiceCreditList.slice(0,6)\">\r\n <td>{{data.date | date: 'dd/MM/yyyy'}}</td>\r\n <td>{{data.dueDate | date: 'dd/MM/yyyy'}}</td>\r\n <td>{{data.documentNumber}}</td>\r\n <td class=\" status-message {{data.className}}\">{{data.status}}</td>\r\n <td [ngClass]=\"{'negative-price':data.openAmount < 0}\">{{data.formattedAmount}}</td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"dataAvailale == 'noData'\">\r\n <div class=\"no-data-header\"></div>\r\n <div class=\"norecord-card\">\r\n <div class=\"py-5 px-5 empty-accountstatements\" [innerHTML]=\"emptyDashboardInvoicesComponent\"></div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"col dashboard-orders\">\r\n <h4>\r\n My Orders\r\n <a *ngIf=\"ordersDataAvailale == 'hasData' \" href=\"/my-account/orders\" class=\"view-all-link\" title=\"View All\">View all</a>\r\n </h4>\r\n <ng-container *ngIf=\"ordersDataAvailale == 'hasData' \">\r\n <div class=\"orders-table-container dashboard-table-container table-responsive\">\r\n <table class=\"table account-list-table\">\r\n <thead>\r\n <tr>\r\n <th scope=\"col\">Date</th>\r\n <th scope=\"col\">Order #</th>\r\n <th scope=\"col\">PO #</th>\r\n <th scope=\"col\">Delivery Dates</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let data of orders; let i = index\">\r\n <td>{{data.placed | date:'dd/MM/yyyy'}}</td>\r\n <td>{{data.code}}</td>\r\n <td>{{data.purchaseOrderNumber}}</td>\r\n <td> \r\n \r\n <ng-container *ngIf=\"orders?.isSameDate; else notMatch\">\r\n {{data?.minDeliveryDate | date: 'dd/MM/yyyy'}}\r\n </ng-container>\r\n <ng-template #notMatch>\r\n {{data?.minDeliveryDate | date: 'dd/MM/yyyy'}} - {{data?.maxDeliveryDate | date: 'dd/MM/yyyy'}}\r\n </ng-template>\r\n \r\n </td>\r\n </tr>\r\n\r\n </tbody>\r\n </table>\r\n </div>\r\n </ng-container>\r\n <!-- Code for when there is no orders data available - need to add condition here-->\r\n <ng-container *ngIf=\"ordersDataAvailale == 'noData'\">\r\n <div class=\"no-data-header\"></div>\r\n <div class=\"norecord-card\">\r\n <div class=\"py-5 px-5 empty-accountstatements\" [innerHTML]=\"emptyDashboardOrdersComponent\"></div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n</div>", styles: ["@charset \"UTF-8\";@media screen and (min-width: 1366px){:root{--fontsize12: .75rem;--fontsize14: .875rem;--fontsize16: 1rem;--fontsize17: 1.063rem;--fontsize17-5: 1.1rem;--fontsize18: 1.125rem;--fontsize18-4: 1.5rem;--fontsize20: 1.25rem;--fontsize21: 1.313rem;--fontsize22: 1.375rem;--fontsize23: 1.438rem;--fontsize24: 1.5rem;--fontsize26: 1.625rem;--fontsize28: 1.75rem;--fontsize30: 1.625rem;--fontsize32: 2rem;--fontsize34: 2.125rem;--fontsize36: 2rem;--fontsize40: 2.25rem;--fontsize46: 2.875rem;--fontsize80: 5rem}}@media screen and (max-width: 1365px) and (min-width: 768px){:root{--fontsize12: .75rem;--fontsize14: .875rem;--fontsize16: 1rem;--fontsize17: .9rem;--fontsize17-5: 1rem;--fontsize18: .875rem;--fontsize20: 1rem;--fontsize21: 1.063rem;--fontsize22: 1.125rem;--fontsize23: 1.188rem;--fontsize24: 1rem;--fontsize28: 1.5rem;--fontsize30: 1.25rem;--fontsize32: 1.75rem;--fontsize34: 1.875rem;--fontsize36: 1.625rem;--fontsize40: 2.5rem;--fontsize46: 2.875rem;--fontsize80: 3.5rem}}@media screen and (max-width: 767px){:root{--fontsize12: .75rem;--fontsize14: .875rem;--fontsize16: 1rem;--fontsize16-5: .77rem;--fontsize17: .9rem;--fontsize17-5: 1rem;--fontsize18: .875rem;--fontsize19: .938rem;--fontsize20: 1rem;--fontsize21: 1.063rem;--fontsize22: 1.125rem;--fontsize23: 1.188rem;--fontsize24: 1rem;--fontsize26: 1.25rem;--fontsize28: 1.5rem;--fontsize30: 1.25rem;--fontsize32: 1.75rem;--fontsize34: 1.875rem;--fontsize36: 1.625rem;--fontsize40: 2.5rem;--fontsize46: 2rem;--fontsize80: 2.5rem}}@font-face{font-family:icomoon;font-weight:400;src:url(../assets/fonts/icomoon.ttf) format(\"ttf\"),url(../assets/fonts/icomoon.woff) format(\"woff\");font-weight:normal;font-style:normal;font-display:swap}@font-face{font-family:\"Arial Regular\";src:url(../assets/fonts/arial-webfont.woff) format(\"woff\"),url(../assets/fonts/arial-webfont.woff2) format(\"woff2\");font-weight:normal;font-style:normal}@font-face{font-family:\"Arial Bold\";src:url(../assets/fonts/arialbold-webfont.woff) format(\"woff\"),url(../assets/fonts/arialbold-webfont.woff2) format(\"woff2\");font-weight:normal;font-style:normal}@font-face{font-family:\"Arial Black\";src:url(../assets/fonts/arialblack-webfont.woff) format(\"woff\"),url(../assets/fonts/arialblack-webfont.woff2) format(\"woff2\");font-weight:normal;font-style:normal}@font-face{font-family:\"Helvetica Neue Reqular\";src:url(../assets/fonts/helveticaneue.woff) format(\"woff\"),url(../assets/fonts/helveticaneue.woff2) format(\"woff2\");font-weight:normal;font-style:normal}@font-face{font-family:\"Helvetica Neue Thin\";src:url(../assets/fonts/helveticaneuethin-webfont.woff) format(\"woff\"),url(../assets/fonts/helveticaneuethin-webfont.woff2) format(\"woff2\");font-weight:normal;font-style:normal}@font-face{font-family:\"Helvetica Neue Medium\";src:url(../assets/fonts/helveticaneuemedium-webfont.woff) format(\"woff\"),url(../assets/fonts/helveticaneuemedium-webfont.woff2) format(\"woff2\");font-weight:normal;font-style:normal}[class*=\" icon-\"],[class^=icon-]{font-family:icomoon!important;font-feature-settings:normal;font-variant:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-style:normal;font-weight:400;line-height:1;text-transform:none;font-display:swap}.icon-right:before{content:\"\\e902\"}.icon-materials:before{content:\"\\e900\"}.icon-natural-lighting:before{content:\"\\e90a\"}.icon-rainwater:before{content:\"\\e901\"}.icon-roofing:before{content:\"\\e90b\"}.icon-flashing{position:relative;display:inline-block;height:32px;text-align:center;width:32px}.icon-flashing:before,.mainnav-link-level-2.show .navTagChild .icon-flashing:before{content:url(../assets/images/icon-flashing-white.svg);height:20px;width:20px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);line-height:15px}li.megamenuSubChild:hover .icon-flashing:before{content:url(../assets/images/icon-flashing-black.svg)}.icon-structural:before{content:\"\\e90c\"}.icon-accessories-old .path1:before{content:\"\\e903\"}.icon-accessories-old .path2:before{margin-left:-1em;content:\"\\e904\"}.icon-accessories-old .path3:before{margin-left:-1em;content:\"\\e905\"}.icon-cladding-old .path1:before{content:\"\\e90d\"}.icon-cladding-old .path2:before{margin-left:-1em;content:\"\\e90e\"}.icon-close:before{content:\"\\e90f\"}.icon-message:before{content:\"\\e910\"}.icon-search .path1:before{content:\"\\e906\"}.icon-search .path2:before{content:\"\\e907\"}.icon-search .path3:before{margin-left:-1.0156em;content:\"\\e908\"}.icon-summary:before{content:\"\\e911\"}.icon-branch:before{content:\"\\e912\"}.icon-delivery:before{content:\"\\e913\"}.icon-downloads:before{content:\"\\e909\"}.icon-drawings:before{content:\"\\e914\"}.icon-full:before{content:\"\\e915\"}.icon-manual:before{content:\"\\e916\"}.icon-payment:before{content:\"\\e917\"}.icon-empty .path1:before{content:\"\\e918\"}.icon-empty .path2:before{margin-left:-1em;content:\"\\e919\"}.icon-empty .path3:before{margin-left:-1em;content:\"\\e91a\"}.icon-product-overview:before{content:\"\\e91b\"}.icon-arrows:before{content:\"\\e91c\"}.icon-selected:before{content:\"\\e91d\"}.icon-accessories:before{content:\"\\e91b\"}.icon-cladding:before{content:\"\\e91e\"}.icon-Triangle:before{content:\"\\e91f\"}.icon-home:before{content:\"\\e920\"}.icon-faq:before{content:\"\\e921\"}.icon-temperature:before{content:\"\\e922\"}body header{font-family:\"Arial Regular\",sans-serif}header{background-color:#1d1d1b;position:sticky;top:0;background-size:100% 25%!important;background-repeat:no-repeat;z-index:10}header .header{max-width:100%;padding:0}header cx-banner cx-media img{margin-top:.7rem;margin-bottom:0}header label{display:inline-flex}header .SiteLinks{height:52px;display:flex;align-items:center;justify-content:space-between;padding-top:5px;padding-bottom:5px}header .SiteLinks cx-paragraph p{color:#fff;font-size:var(--fontsize16);line-height:var(--fontsize16);margin-bottom:0}header .SiteLinks cx-paragraph{font-size:var(--fontsize16)}header .SiteLinks app-account-dropdown,header .SiteLinks app-find-store{width:calc(25% - 25px);max-width:328px;margin-right:25px}header .SiteLinks app-contact-us{width:calc(20% - 25px);max-width:100px;margin-left:auto}header .SiteLinks app-custom-mini-cart{width:10%}header .SiteLinks .preferenceLink{margin-left:auto}header .SiteLinks .preferenceLink cx-generic-link{margin:0}header .SiteLinks .preferenceLink cx-generic-link cx-media img{height:22px;margin:0}header .SiteLogo .storeLogo{position:absolute;z-index:99;left:40px;bottom:10px}header .SiteLogo .homeLogo{max-width:28px;height:28px;position:absolute;z-index:99;bottom:47px}header .NavigationBar{flex:70%;background-color:#b61828;min-height:40px;display:flex;align-items:center;position:relative;z-index:10}header .logoutMenu{margin-top:0!important}header .logoutMenu li{cursor:pointer;background-color:#4c4c4c;color:#fff}header .logoutMenu li:hover{text-decoration:underline;background-color:#4c4c4c}header .MarketingContext{width:100%;margin:auto}.customer-service-icon{cursor:pointer}.helpSupport{width:20rem;border:0;margin-top:.5rem!important;transform:translate(-42%,36px)!important;padding:1rem 1rem 0;background-color:#393939;color:#fff;top:0}.helpSupport .arrow-up{position:absolute;top:-8px;right:44%;width:0;height:0;border-left:15px solid rgba(0,0,0,0);border-right:15px solid rgba(0,0,0,0);border-bottom:15px solid #393939}.helpSupport .contact-us-info .heading{font-family:\"Arial Bold\",sans-serif}.helpSupport .contact-us-info .detail{font-size:var(--fontsize14);line-height:2rem}.helpSupport .contact-us-info .detail .service-icon{height:20px;width:20px;margin-right:10px}.helpSupport .contact-us-info .contactLink a{font-size:var(--fontsize14);text-decoration:underline;text-transform:uppercase}.helpSupport .contact-us-info a{color:#fff;text-decoration:none}.helpSupport .contact-us-info a:hover{text-decoration:underline}.pageTitle{font-family:\"Helvetica Neue Regular\",sans-serif;font-size:var(--fontsize54)}#visualization-container{text-align:center;margin:0 auto}#cds-viewer-container-3d{width:320px;height:200px}#cds-viewer-container-2d{width:320px;height:200px}[aria-label=Close]{cursor:pointer}cx-media.is-missing{background:url(./assets/images/search-noimage.svg);background-size:cover;background-position:center;background-repeat:no-repeat}cx-global-message{position:fixed;top:9rem;width:100%;z-index:13}@media screen and (max-width: 991px){cx-global-message{top:3.75rem}cx-storefront header{background-color:#b61828}cx-storefront header cx-banner cx-media img{margin:auto}cx-storefront header .SiteLogo{width:100%;max-width:211px;margin:auto;padding-left:30px;box-sizing:border-box}cx-storefront header .SiteLogo .storeLogo{position:unset}cx-storefront header .SearchBox{margin:14px 0 10px;width:30px}cx-storefront header .SiteLinks{background-color:transparent;width:110px;margin:auto 25px auto 0}cx-storefront header .SiteLinks app-account-dropdown,cx-storefront header .SiteLinks app-find-store,cx-storefront header .SiteLinks app-contact-us,cx-storefront header .SiteLinks cx-paragraph,cx-storefront header .SiteLinks .preferenceLink{display:none}cx-storefront header .SiteLinks app-custom-mini-cart,cx-storefront header .SiteLinks app-custom-user-account{width:35px}cx-storefront header.is-expanded{overflow-y:auto;position:fixed;bottom:0;top:0;width:calc(100% - 99px)}cx-storefront header.is-expanded .header{background-color:#b61828;margin-left:0}cx-storefront header.is-expanded .PreHeader{position:absolute;right:15px;top:15px}cx-storefront header.is-expanded .SearchBox{display:none}cx-storefront header.is-expanded .SiteLogo{position:absolute;top:25px;z-index:9}cx-storefront header.is-expanded .SiteLinks{background-color:#1d1d1b;width:100%;margin:15px auto 15px 0;height:unset;padding:15px;max-width:100%;position:relative;z-index:9;top:60px}cx-storefront header.is-expanded .SiteLinks app-account-dropdown,cx-storefront header.is-expanded .SiteLinks app-find-store,cx-storefront header.is-expanded .SiteLinks app-contact-us,cx-storefront header.is-expanded .SiteLinks cx-paragraph,cx-storefront header.is-expanded .SiteLinks .preferenceLink{display:block}cx-storefront header.is-expanded .SiteLinks app-custom-mini-cart,cx-storefront header.is-expanded .SiteLinks app-custom-user-account{display:none}cx-storefront header.is-expanded .SiteLinks app-account-dropdown{width:100%;max-width:100%}cx-storefront header.is-expanded .SiteLinks app-find-store{width:50%;max-width:328px;min-width:328px}cx-storefront header.is-expanded .SiteLinks app-contact-us{margin-right:15px;margin-left:auto;width:115px;max-width:unset}cx-storefront header.is-expanded .navigation{position:relative;top:45px}cx-storefront header.is-expanded:before{background-color:#0000004d;right:0;content:\"\";position:fixed;z-index:2;top:0;bottom:0;height:100vh;width:99px}cx-storefront header.is-expanded:after{background-color:transparent}}@media screen and (max-width: 576px){cx-storefront header .SiteLogo{max-width:80px}cx-storefront header .SiteLogo .storeLogo{display:none}cx-storefront header .searchBox{height:45px}cx-storefront header.is-expanded{width:100%}cx-storefront header.is-expanded .header,cx-storefront header.is-expanded .navigation{width:100%}cx-storefront header.is-expanded .SiteLogo{max-width:211px!important}cx-storefront header.is-expanded .SiteLogo .storeLogo{display:block}cx-storefront header.is-expanded .SiteLinks{max-width:100%;width:100%}cx-storefront header.is-expanded .SiteLinks app-account-dropdown,cx-storefront header.is-expanded .SiteLinks app-find-store,cx-storefront header.is-expanded .SiteLinks app-contact-us,cx-storefront header.is-expanded .SiteLinks cx-paragraph,cx-storefront header.is-expanded .SiteLinks .preferenceLink{display:block}cx-storefront header.is-expanded .SiteLinks app-custom-mini-cart,cx-storefront header.is-expanded .SiteLinks app-custom-user-account{display:none}cx-storefront header.is-expanded .SiteLinks app-find-store{width:100%;max-width:100%;margin-bottom:10px}cx-storefront header.is-expanded .SiteLinks app-contact-us{margin-left:0}cx-storefront header.is-expanded .SiteLinks cx-paragraph{margin-left:auto}cx-storefront header.is-expanded:before{display:none}.pageTitle{font-size:28px}}.dashboard-main-container .dashboard-invoices,.dashboard-main-container .dashboard-orders{margin-top:2.5rem}.dashboard-main-container .dashboard-invoices h4,.dashboard-main-container .dashboard-orders h4{margin-bottom:1rem;font-family:\"Arial Bold\",sans-serif}.dashboard-main-container .dashboard-invoices .account-list-table tbody td,.dashboard-main-container .dashboard-orders .account-list-table tbody td{position:relative}.dashboard-main-container .view-all-link{float:right;font-size:var(--fontsize16);color:#262626;text-decoration:underline;cursor:pointer;font-family:\"Arial Regular\",sans-serif}.dashboard-main-container .view-all-link:hover{color:#b61828}.dashboard-main-container .dashboard-table-container .negative-price{color:#d0021b}.dashboard-main-container .dashboard-table-container .invoice-status{text-transform:capitalize}.dashboard-main-container .dashboard-table-container table{border:1px solid #E0E0E0}.dashboard-main-container .dashboard-table-container table thead{background:#646363}.dashboard-main-container .dashboard-table-container table thead th{color:#fff;padding-top:.5rem;padding-bottom:.5rem;font-family:\"Arial Bold\",sans-serif;font-size:var(--fontsize14);text-transform:uppercase;vertical-align:middle}.dashboard-main-container .dashboard-table-container table thead th .gst-text{font-size:var(--fontsize12);display:block;text-transform:none;font-style:italic}.dashboard-main-container .status-message{text-transform:capitalize}.dashboard-main-container .status-default,.dashboard-main-container .status-open:before,.dashboard-main-container .status-paid:before,.dashboard-main-container .status-overdue:before{content:\"\";width:8px;height:8px;border-radius:50%;position:absolute;left:0px;top:50%;transform:translate(-50%,-50%)}.dashboard-main-container .status-overdue:before{background-color:#d0021b}.dashboard-main-container .status-paid:before{background-color:#2aa900}.dashboard-main-container .status-open:before{background-color:#ff7d00}.no-data-header{background-color:#646363;height:40px}.norecord-card{background-color:#fff;border:1px solid #E0E0E0}@media screen and (max-width: 992px){.dashboard-main-container .dashboard-invoices{margin-top:1rem}}\n"], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], pipes: { "async": i4.AsyncPipe, "date": i4.DatePipe } });
122
+ AccountDashboardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: AccountDashboardComponent, selector: "app-account-dashboard", outputs: { navigateInvoices: "navigateInvoices" }, ngImport: i0, template: "<div class=\"loading\" *ngIf=\"showWaitCursor | async \">Loading&#8230;</div>\r\n<div class=\"row gx-5 dashboard-main-container\">\r\n <div class=\"col dashboard-invoices mr-3\">\r\n <h4>\r\n Invoices & Credit Notes\r\n <a *ngIf=\"dataAvailale == 'hasData' \" (click)=\"navigateToInvoices()\" \r\n id=\"invoice-credit-tab\" data-toggle=\"tab\" data-target=\"#invoice-credit\" class=\"view-all-link\" title=\"View All\">View all</a>\r\n </h4>\r\n <ng-container *ngIf=\"dataAvailale == 'hasData' \">\r\n <div class=\"dashboard-table-container table-responsive\">\r\n <table class=\"table account-list-table\">\r\n <thead>\r\n <tr>\r\n <th scope=\"col\">Date</th>\r\n <th scope=\"col\">Due Date</th>\r\n <th scope=\"col\">Invoice #</th>\r\n <th scope=\"col\">Status</th>\r\n <th scope=\"col\">Total <span class=\"gst-text\">excl GST</span></th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let data of invoiceCreditList.slice(0,6)\">\r\n <td>{{data.date | date: 'dd/MM/yyyy'}}</td>\r\n <td>{{data.dueDate | date: 'dd/MM/yyyy'}}</td>\r\n <td>{{data.documentNumber}}</td>\r\n <td class=\" status-message {{data.className}}\">{{data.status}}</td>\r\n <td [ngClass]=\"{'negative-price':data.openAmount < 0}\">{{data.formattedAmount}}</td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"dataAvailale == 'noData'\">\r\n <div class=\"no-data-header\"></div>\r\n <div class=\"norecord-card\">\r\n <div class=\"py-5 px-5 empty-accountstatements\" [innerHTML]=\"emptyDashboardInvoicesComponent\"></div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"col dashboard-orders\">\r\n <div class=\"loading\" *ngIf=\"showOrderCursor | async \">Loading&#8230;</div>\r\n <h4>\r\n My Orders\r\n <a *ngIf=\"ordersDataAvailale == 'hasData' \" href=\"/my-account/orders\" class=\"view-all-link\" title=\"View All\">View all</a>\r\n </h4>\r\n <ng-container *ngIf=\"ordersDataAvailale == 'hasData' \">\r\n <div class=\"orders-table-container dashboard-table-container table-responsive\">\r\n <table class=\"table account-list-table\">\r\n <thead>\r\n <tr>\r\n <th scope=\"col\">Date</th>\r\n <th scope=\"col\">Order #</th>\r\n <th scope=\"col\">PO #</th>\r\n <th scope=\"col\">Delivery Dates</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let data of orders; let i = index\">\r\n <td>{{data.placed | date:'dd/MM/yyyy'}}</td>\r\n <td>{{data.code}}</td>\r\n <td>{{data.purchaseOrderNumber}}</td>\r\n <td> \r\n \r\n <ng-container *ngIf=\"orders?.isSameDate; else notMatch\">\r\n {{data?.minDeliveryDate | date: 'dd/MM/yyyy'}}\r\n </ng-container>\r\n <ng-template #notMatch>\r\n {{data?.minDeliveryDate | date: 'dd/MM/yyyy'}} - {{data?.maxDeliveryDate | date: 'dd/MM/yyyy'}}\r\n </ng-template>\r\n \r\n </td>\r\n </tr>\r\n\r\n </tbody>\r\n </table>\r\n </div>\r\n </ng-container>\r\n <!-- Code for when there is no orders data available - need to add condition here-->\r\n <ng-container *ngIf=\"ordersDataAvailale == 'noData'\">\r\n <div class=\"no-data-header\"></div>\r\n <div class=\"norecord-card\">\r\n <div class=\"py-5 px-5 empty-accountstatements\" [innerHTML]=\"emptyDashboardOrdersComponent\"></div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n</div>", styles: ["@charset \"UTF-8\";@media screen and (min-width: 1366px){:root{--fontsize12: .75rem;--fontsize14: .875rem;--fontsize16: 1rem;--fontsize17: 1.063rem;--fontsize17-5: 1.1rem;--fontsize18: 1.125rem;--fontsize18-4: 1.5rem;--fontsize20: 1.25rem;--fontsize21: 1.313rem;--fontsize22: 1.375rem;--fontsize23: 1.438rem;--fontsize24: 1.5rem;--fontsize26: 1.625rem;--fontsize28: 1.75rem;--fontsize30: 1.625rem;--fontsize32: 2rem;--fontsize34: 2.125rem;--fontsize36: 2rem;--fontsize40: 2.25rem;--fontsize46: 2.875rem;--fontsize80: 5rem}}@media screen and (max-width: 1365px) and (min-width: 768px){:root{--fontsize12: .75rem;--fontsize14: .875rem;--fontsize16: 1rem;--fontsize17: .9rem;--fontsize17-5: 1rem;--fontsize18: .875rem;--fontsize20: 1rem;--fontsize21: 1.063rem;--fontsize22: 1.125rem;--fontsize23: 1.188rem;--fontsize24: 1rem;--fontsize28: 1.5rem;--fontsize30: 1.25rem;--fontsize32: 1.75rem;--fontsize34: 1.875rem;--fontsize36: 1.625rem;--fontsize40: 2.5rem;--fontsize46: 2.875rem;--fontsize80: 3.5rem}}@media screen and (max-width: 767px){:root{--fontsize12: .75rem;--fontsize14: .875rem;--fontsize16: 1rem;--fontsize16-5: .77rem;--fontsize17: .9rem;--fontsize17-5: 1rem;--fontsize18: .875rem;--fontsize19: .938rem;--fontsize20: 1rem;--fontsize21: 1.063rem;--fontsize22: 1.125rem;--fontsize23: 1.188rem;--fontsize24: 1rem;--fontsize26: 1.25rem;--fontsize28: 1.5rem;--fontsize30: 1.25rem;--fontsize32: 1.75rem;--fontsize34: 1.875rem;--fontsize36: 1.625rem;--fontsize40: 2.5rem;--fontsize46: 2rem;--fontsize80: 2.5rem}}@font-face{font-family:icomoon;font-weight:400;src:url(../assets/fonts/icomoon.ttf) format(\"ttf\"),url(../assets/fonts/icomoon.woff) format(\"woff\");font-weight:normal;font-style:normal;font-display:swap}@font-face{font-family:\"Arial Regular\";src:url(../assets/fonts/arial-webfont.woff) format(\"woff\"),url(../assets/fonts/arial-webfont.woff2) format(\"woff2\");font-weight:normal;font-style:normal}@font-face{font-family:\"Arial Bold\";src:url(../assets/fonts/arialbold-webfont.woff) format(\"woff\"),url(../assets/fonts/arialbold-webfont.woff2) format(\"woff2\");font-weight:normal;font-style:normal}@font-face{font-family:\"Arial Black\";src:url(../assets/fonts/arialblack-webfont.woff) format(\"woff\"),url(../assets/fonts/arialblack-webfont.woff2) format(\"woff2\");font-weight:normal;font-style:normal}@font-face{font-family:\"Helvetica Neue Reqular\";src:url(../assets/fonts/helveticaneue.woff) format(\"woff\"),url(../assets/fonts/helveticaneue.woff2) format(\"woff2\");font-weight:normal;font-style:normal}@font-face{font-family:\"Helvetica Neue Thin\";src:url(../assets/fonts/helveticaneuethin-webfont.woff) format(\"woff\"),url(../assets/fonts/helveticaneuethin-webfont.woff2) format(\"woff2\");font-weight:normal;font-style:normal}@font-face{font-family:\"Helvetica Neue Medium\";src:url(../assets/fonts/helveticaneuemedium-webfont.woff) format(\"woff\"),url(../assets/fonts/helveticaneuemedium-webfont.woff2) format(\"woff2\");font-weight:normal;font-style:normal}[class*=\" icon-\"],[class^=icon-]{font-family:icomoon!important;font-feature-settings:normal;font-variant:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-style:normal;font-weight:400;line-height:1;text-transform:none;font-display:swap}.icon-right:before{content:\"\\e902\"}.icon-materials:before{content:\"\\e900\"}.icon-natural-lighting:before{content:\"\\e90a\"}.icon-rainwater:before{content:\"\\e901\"}.icon-roofing:before{content:\"\\e90b\"}.icon-flashing{position:relative;display:inline-block;height:32px;text-align:center;width:32px}.icon-flashing:before,.mainnav-link-level-2.show .navTagChild .icon-flashing:before{content:url(../assets/images/icon-flashing-white.svg);height:20px;width:20px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);line-height:15px}li.megamenuSubChild:hover .icon-flashing:before{content:url(../assets/images/icon-flashing-black.svg)}.icon-structural:before{content:\"\\e90c\"}.icon-accessories-old .path1:before{content:\"\\e903\"}.icon-accessories-old .path2:before{margin-left:-1em;content:\"\\e904\"}.icon-accessories-old .path3:before{margin-left:-1em;content:\"\\e905\"}.icon-cladding-old .path1:before{content:\"\\e90d\"}.icon-cladding-old .path2:before{margin-left:-1em;content:\"\\e90e\"}.icon-close:before{content:\"\\e90f\"}.icon-message:before{content:\"\\e910\"}.icon-search .path1:before{content:\"\\e906\"}.icon-search .path2:before{content:\"\\e907\"}.icon-search .path3:before{margin-left:-1.0156em;content:\"\\e908\"}.icon-summary:before{content:\"\\e911\"}.icon-branch:before{content:\"\\e912\"}.icon-delivery:before{content:\"\\e913\"}.icon-downloads:before{content:\"\\e909\"}.icon-drawings:before{content:\"\\e914\"}.icon-full:before{content:\"\\e915\"}.icon-manual:before{content:\"\\e916\"}.icon-payment:before{content:\"\\e917\"}.icon-empty .path1:before{content:\"\\e918\"}.icon-empty .path2:before{margin-left:-1em;content:\"\\e919\"}.icon-empty .path3:before{margin-left:-1em;content:\"\\e91a\"}.icon-product-overview:before{content:\"\\e91b\"}.icon-arrows:before{content:\"\\e91c\"}.icon-selected:before{content:\"\\e91d\"}.icon-accessories:before{content:\"\\e91b\"}.icon-cladding:before{content:\"\\e91e\"}.icon-Triangle:before{content:\"\\e91f\"}.icon-home:before{content:\"\\e920\"}.icon-faq:before{content:\"\\e921\"}.icon-temperature:before{content:\"\\e922\"}body header{font-family:\"Arial Regular\",sans-serif}header{background-color:#1d1d1b;position:sticky;top:0;background-size:100% 25%!important;background-repeat:no-repeat;z-index:10}header .header{max-width:100%;padding:0}header cx-banner cx-media img{margin-top:.7rem;margin-bottom:0}header label{display:inline-flex}header .SiteLinks{height:52px;display:flex;align-items:center;justify-content:space-between;padding-top:5px;padding-bottom:5px}header .SiteLinks cx-paragraph p{color:#fff;font-size:var(--fontsize16);line-height:var(--fontsize16);margin-bottom:0}header .SiteLinks cx-paragraph{font-size:var(--fontsize16)}header .SiteLinks app-account-dropdown,header .SiteLinks app-find-store{width:calc(25% - 25px);max-width:328px;margin-right:25px}header .SiteLinks app-contact-us{width:calc(20% - 25px);max-width:100px;margin-left:auto}header .SiteLinks app-custom-mini-cart{width:10%}header .SiteLinks .preferenceLink{margin-left:auto}header .SiteLinks .preferenceLink cx-generic-link{margin:0}header .SiteLinks .preferenceLink cx-generic-link cx-media img{height:22px;margin:0}header .SiteLogo .storeLogo{position:absolute;z-index:99;left:40px;bottom:10px}header .SiteLogo .homeLogo{max-width:28px;height:28px;position:absolute;z-index:99;bottom:47px}header .NavigationBar{flex:70%;background-color:#b61828;min-height:40px;display:flex;align-items:center;position:relative;z-index:10}header .logoutMenu{margin-top:0!important}header .logoutMenu li{cursor:pointer;background-color:#4c4c4c;color:#fff}header .logoutMenu li:hover{text-decoration:underline;background-color:#4c4c4c}header .MarketingContext{width:100%;margin:auto}.customer-service-icon{cursor:pointer}.helpSupport{width:20rem;border:0;margin-top:.5rem!important;transform:translate(-42%,36px)!important;padding:1rem 1rem 0;background-color:#393939;color:#fff;top:0}.helpSupport .arrow-up{position:absolute;top:-8px;right:44%;width:0;height:0;border-left:15px solid rgba(0,0,0,0);border-right:15px solid rgba(0,0,0,0);border-bottom:15px solid #393939}.helpSupport .contact-us-info .heading{font-family:\"Arial Bold\",sans-serif}.helpSupport .contact-us-info .detail{font-size:var(--fontsize14);line-height:2rem}.helpSupport .contact-us-info .detail .service-icon{height:20px;width:20px;margin-right:10px}.helpSupport .contact-us-info .contactLink a{font-size:var(--fontsize14);text-decoration:underline;text-transform:uppercase}.helpSupport .contact-us-info a{color:#fff;text-decoration:none}.helpSupport .contact-us-info a:hover{text-decoration:underline}.pageTitle{font-family:\"Helvetica Neue Regular\",sans-serif;font-size:var(--fontsize54)}#visualization-container{text-align:center;margin:0 auto}#cds-viewer-container-3d{width:320px;height:200px}#cds-viewer-container-2d{width:320px;height:200px}[aria-label=Close]{cursor:pointer}cx-media.is-missing{background:url(./assets/images/search-noimage.svg);background-size:cover;background-position:center;background-repeat:no-repeat}cx-global-message{position:fixed;top:9rem;width:100%;z-index:13}@media screen and (max-width: 991px){cx-global-message{top:3.75rem}cx-storefront header{background-color:#b61828}cx-storefront header cx-banner cx-media img{margin:auto}cx-storefront header .SiteLogo{width:100%;max-width:211px;margin:auto;padding-left:30px;box-sizing:border-box}cx-storefront header .SiteLogo .storeLogo{position:unset}cx-storefront header .SearchBox{margin:14px 0 10px;width:30px}cx-storefront header .SiteLinks{background-color:transparent;width:110px;margin:auto 25px auto 0}cx-storefront header .SiteLinks app-account-dropdown,cx-storefront header .SiteLinks app-find-store,cx-storefront header .SiteLinks app-contact-us,cx-storefront header .SiteLinks cx-paragraph,cx-storefront header .SiteLinks .preferenceLink{display:none}cx-storefront header .SiteLinks app-custom-mini-cart,cx-storefront header .SiteLinks app-custom-user-account{width:35px}cx-storefront header.is-expanded{overflow-y:auto;position:fixed;bottom:0;top:0;width:calc(100% - 99px)}cx-storefront header.is-expanded .header{background-color:#b61828;margin-left:0}cx-storefront header.is-expanded .PreHeader{position:absolute;right:15px;top:15px}cx-storefront header.is-expanded .SearchBox{display:none}cx-storefront header.is-expanded .SiteLogo{position:absolute;top:25px;z-index:9}cx-storefront header.is-expanded .SiteLinks{background-color:#1d1d1b;width:100%;margin:15px auto 15px 0;height:unset;padding:15px;max-width:100%;position:relative;z-index:9;top:60px}cx-storefront header.is-expanded .SiteLinks app-account-dropdown,cx-storefront header.is-expanded .SiteLinks app-find-store,cx-storefront header.is-expanded .SiteLinks app-contact-us,cx-storefront header.is-expanded .SiteLinks cx-paragraph,cx-storefront header.is-expanded .SiteLinks .preferenceLink{display:block}cx-storefront header.is-expanded .SiteLinks app-custom-mini-cart,cx-storefront header.is-expanded .SiteLinks app-custom-user-account{display:none}cx-storefront header.is-expanded .SiteLinks app-account-dropdown{width:100%;max-width:100%}cx-storefront header.is-expanded .SiteLinks app-find-store{width:50%;max-width:328px;min-width:328px}cx-storefront header.is-expanded .SiteLinks app-contact-us{margin-right:15px;margin-left:auto;width:115px;max-width:unset}cx-storefront header.is-expanded .navigation{position:relative;top:45px}cx-storefront header.is-expanded:before{background-color:#0000004d;right:0;content:\"\";position:fixed;z-index:2;top:0;bottom:0;height:100vh;width:99px}cx-storefront header.is-expanded:after{background-color:transparent}}@media screen and (max-width: 576px){cx-storefront header .SiteLogo{max-width:80px}cx-storefront header .SiteLogo .storeLogo{display:none}cx-storefront header .searchBox{height:45px}cx-storefront header.is-expanded{width:100%}cx-storefront header.is-expanded .header,cx-storefront header.is-expanded .navigation{width:100%}cx-storefront header.is-expanded .SiteLogo{max-width:211px!important}cx-storefront header.is-expanded .SiteLogo .storeLogo{display:block}cx-storefront header.is-expanded .SiteLinks{max-width:100%;width:100%}cx-storefront header.is-expanded .SiteLinks app-account-dropdown,cx-storefront header.is-expanded .SiteLinks app-find-store,cx-storefront header.is-expanded .SiteLinks app-contact-us,cx-storefront header.is-expanded .SiteLinks cx-paragraph,cx-storefront header.is-expanded .SiteLinks .preferenceLink{display:block}cx-storefront header.is-expanded .SiteLinks app-custom-mini-cart,cx-storefront header.is-expanded .SiteLinks app-custom-user-account{display:none}cx-storefront header.is-expanded .SiteLinks app-find-store{width:100%;max-width:100%;margin-bottom:10px}cx-storefront header.is-expanded .SiteLinks app-contact-us{margin-left:0}cx-storefront header.is-expanded .SiteLinks cx-paragraph{margin-left:auto}cx-storefront header.is-expanded:before{display:none}.pageTitle{font-size:28px}}.dashboard-main-container .dashboard-invoices,.dashboard-main-container .dashboard-orders{margin-top:2.5rem}.dashboard-main-container .dashboard-invoices h4,.dashboard-main-container .dashboard-orders h4{margin-bottom:1rem;font-family:\"Arial Bold\",sans-serif}.dashboard-main-container .dashboard-invoices .account-list-table tbody td,.dashboard-main-container .dashboard-orders .account-list-table tbody td{position:relative}.dashboard-main-container .view-all-link{float:right;font-size:var(--fontsize16);color:#262626;text-decoration:underline;cursor:pointer;font-family:\"Arial Regular\",sans-serif}.dashboard-main-container .view-all-link:hover{color:#b61828}.dashboard-main-container .dashboard-table-container .negative-price{color:#d0021b}.dashboard-main-container .dashboard-table-container .invoice-status{text-transform:capitalize}.dashboard-main-container .dashboard-table-container table{border:1px solid #E0E0E0}.dashboard-main-container .dashboard-table-container table thead{background:#646363}.dashboard-main-container .dashboard-table-container table thead th{color:#fff;padding-top:.5rem;padding-bottom:.5rem;font-family:\"Arial Bold\",sans-serif;font-size:var(--fontsize14);text-transform:uppercase;vertical-align:middle}.dashboard-main-container .dashboard-table-container table thead th .gst-text{font-size:var(--fontsize12);display:block;text-transform:none;font-style:italic}.dashboard-main-container .status-message{text-transform:capitalize}.dashboard-main-container .status-default,.dashboard-main-container .status-open:before,.dashboard-main-container .status-paid:before,.dashboard-main-container .status-overdue:before{content:\"\";width:8px;height:8px;border-radius:50%;position:absolute;left:0px;top:50%;transform:translate(-50%,-50%)}.dashboard-main-container .status-overdue:before{background-color:#d0021b}.dashboard-main-container .status-paid:before{background-color:#2aa900}.dashboard-main-container .status-open:before{background-color:#ff7d00}.no-data-header{background-color:#646363;height:40px}.norecord-card{background-color:#fff;border:1px solid #E0E0E0}@media screen and (max-width: 992px){.dashboard-main-container .dashboard-invoices{margin-top:1rem}}\n"], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], pipes: { "async": i4.AsyncPipe, "date": i4.DatePipe } });
124
123
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AccountDashboardComponent, decorators: [{
125
124
  type: Component,
126
125
  args: [{
@@ -131,4 +130,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
131
130
  }], ctorParameters: function () { return [{ type: i1.MyAccountService }, { type: i0.ChangeDetectorRef }, { type: i2.CmsService }, { type: i3.OrderHistoryService }]; }, propDecorators: { navigateInvoices: [{
132
131
  type: Output
133
132
  }] } });
134
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC1kYXNoYm9hcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnVpbGRpbmdwcm9kdWN0X2xpYnJhcnkvc3JjL2xpYi9teS1hY2NvdW50L2FjY291bnQtZGFzaGJvYXJkL2FjY291bnQtZGFzaGJvYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2J1aWxkaW5ncHJvZHVjdF9saWJyYXJ5L3NyYy9saWIvbXktYWNjb3VudC9hY2NvdW50LWRhc2hib2FyZC9hY2NvdW50LWRhc2hib2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBRSxZQUFZLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdkMsT0FBTyxLQUFLLE1BQU0sTUFBTSxRQUFRLENBQUM7Ozs7OztBQVNqQyxNQUFNLE9BQU8seUJBQXlCO0lBZ0JwQyxZQUNVLGdCQUFrQyxFQUNuQyxFQUFxQixFQUNyQixVQUFzQixFQUN0QixZQUFpQztRQUhoQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ25DLE9BQUUsR0FBRixFQUFFLENBQW1CO1FBQ3JCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBaEIxQyxtQkFBYyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ3JELGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDbEQsZ0JBQVcsR0FBRyxDQUFDLENBQUM7UUFDaEIsc0JBQWlCLEdBQVEsRUFBRSxDQUFDO1FBRTVCLHVCQUFrQixHQUFXLEVBQUUsQ0FBQztRQUVoQyxvQkFBZSxHQUFXLFdBQVcsQ0FBQztRQUN0Qyx1QkFBa0Is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LENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztpQkFDekY7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRTtZQUNULElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2hDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckIsQ0FBQyxDQUFDLENBQUE7SUFFSixDQUFDO0lBQ0Qsa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMvQixDQUFDOzt1SEEzSFUseUJBQXlCOzJHQUF6Qix5QkFBeUIsZ0hDWnRDLDY5SUFxRk07NEZEekVPLHlCQUF5QjtrQkFMckMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxXQUFXLEVBQUUsb0NBQW9DO29CQUNqRCxTQUFTLEVBQUUsQ0FBQyxvQ0FBb0MsQ0FBQztpQkFDbEQ7a01BZVcsZ0JBQWdCO3NCQUF6QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDbXNTZXJ2aWNlIH0gZnJvbSAnQHNwYXJ0YWN1cy9jb3JlJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7IFxyXG5pbXBvcnQgKiBhcyBtb21lbnQgZnJvbSAnbW9tZW50JztcclxuaW1wb3J0IHsgTXlBY2NvdW50U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL215LWFjY291bnQuc2VydmljZSc7XHJcbmltcG9ydCB7IE9yZGVySGlzdG9yeVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9vcmRlci1oaXN0b3J5LnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtYWNjb3VudC1kYXNoYm9hcmQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hY2NvdW50LWRhc2hib2FyZC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYWNjb3VudC1kYXNoYm9hcmQuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWNjb3VudERhc2hib2FyZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIGVtcHR5RGFzaGJvYXJkSW52b2ljZXNDb21wb25lbnQ6IGFueTtcclxuICBlbXB0eURhc2hib2FyZE9yZGVyc0NvbXBvbmVudDogYW55O1xyXG4gIHNob3dXYWl0Q3Vyc29yID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XHJcbiAgbG9hZGVySW1hZ2UgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcclxuICBjdXJyZW50UGFnZSA9IDA7XHJcbiAgaW52b2ljZUNyZWRpdExpc3Q6IGFueSA9IFtdO1xyXG4gIGRhdGFBdmFpbGFsZT86IHN0cmluZztcclxuICBvcmRlcnNEYXRhQXZhaWxhbGU6IHN0cmluZyA9ICcnO1xyXG4gIHNlbGVjdGVkRGF0ZVJhbmdlOiBhbnk7XHJcbiAgc2VsZWN0ZWREYXRlS2V5OiBzdHJpbmcgPSAnb3JkZXJEYXRlJztcclxuICBzZWxlY3RlZE9yZGVyU3RhdGU6IGFueSA9IFtdO1xyXG4gIG9yZGVyczogYW55O1xyXG4gIEBPdXRwdXQoKSBuYXZpZ2F0ZUludm9pY2VzID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBteUFjY291bnRTZXJ2aWNlOiBNeUFjY291bnRTZXJ2aWNlLFxyXG4gICAgcHVibGljIGNkOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHB1YmxpYyBjbXNTZXJ2aWNlOiBDbXNTZXJ2aWNlLFxyXG4gICAgcHVibGljIG9yZGVySGlzdG9yeTogT3JkZXJIaXN0b3J5U2VydmljZVxyXG4gICkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zaG93V2FpdEN1cnNvci5uZXh0KHRydWUpO1xyXG5cclxuICAgIC8vIGZ1bmN0aW9uIHRvIGdldCB0aGUgRW1wdHkgRGFzaGJvYXJkIEludm9pY2VzIGNvbnRlbnRcclxuICAgIHRoaXMuY21zU2VydmljZS5nZXRDb21wb25lbnREYXRhKCdFbXB0eURhc2hib2FyZEludm9pY2VzQ29tcG9uZW50Jykuc3Vic2NyaWJlKChkYXRhOiBhbnkpID0+IHtcclxuICAgICAgaWYgKGRhdGEpIHtcclxuICAgICAgICB0aGlzLmVtcHR5RGFzaGJvYXJkSW52b2ljZXNDb21wb25lbnQgPSBkYXRhLmNvbnRlbnQ7XHJcbiAgICAgIH1cclxuICAgIH0pXHJcblxyXG4gICAgLy8gZnVuY3Rpb24gdG8gZ2V0IHRoZSBFbXB0eSBEYXNoYm9hcmQgT3JkZXJzIGNvbnRlbnRcclxuICAgIHRoaXMuY21zU2VydmljZS5nZXRDb21wb25lbnREYXRhKCdFbXB0eURhc2hib2FyZE9yZGVyc0NvbXBvbmVudCcpLnN1YnNjcmliZSgoZGF0YTogYW55KSA9PiB7XHJcbiAgICAgIGlmIChkYXRhKSB7XHJcbiAgICAgICAgdGhpcy5lbXB0eURhc2hib2FyZE9yZGVyc0NvbXBvbmVudCA9IGRhdGEuY29udGVudDtcclxuICAgICAgfVxyXG4gICAgfSlcclxuICAgIHRoaXMuZ2V0SW52b2ljZUNyZWRpdERhdGEoKTtcclxuICAgIHRoaXMuZ2V0T3JkZXJIaXN0b3J5KCk7XHJcbiAgfVxyXG5cclxuICBnZXRJbnZvaWNlQ3JlZGl0RGF0YSgpIHtcclxuXHRcdHRoaXMuc2hvd1dhaXRDdXJzb3IubmV4dCh0cnVlKTtcclxuXHRcdHRoaXMubXlBY2NvdW50U2VydmljZS5nZXRJbnZvaWNlc0NyZWRpdExpc3QobnVsbCx0aGlzLmN1cnJlbnRQYWdlKS5zdWJzY3JpYmUoKGRhdGE6IGFueSkgPT4ge1xyXG5cdFx0XHR0aGlzLmludm9pY2VDcmVkaXRMaXN0ID0gZGF0YS5kb2N1bWVudHM7XHJcbiAgICAgIHRoaXMuY2QubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgIHRoaXMuZ2V0U3RhdHVzKCk7XHJcbiAgICAgIGlmICh0aGlzLmludm9pY2VDcmVkaXRMaXN0ICYmIHRoaXMuaW52b2ljZUNyZWRpdExpc3QubGVuZ3RoID4gMCkge1xyXG4gICAgICAgIHRoaXMuZGF0YUF2YWlsYWxlID0gJ2hhc0RhdGEnO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuZGF0YUF2YWlsYWxlID0gJ25vRGF0YSc7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5zaG93V2FpdEN1cnNvci5uZXh0KGZhbHNlKTtcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBnZXRTdGF0dXMoKSB7XHJcblx0XHR0aGlzLmludm9pY2VDcmVkaXRMaXN0LmZvckVhY2goKGVsZW1lbnQ6IGFueSkgPT4ge1xyXG5cdFx0XHRpZiAoZWxlbWVudC5zdGF0dXMgPT0gJ29wZW4nKSB7XHJcblx0XHRcdFx0ICBlbGVtZW50LmNsYXNzTmFtZSA9ICdzdGF0dXMtb3Blbic7XHJcblx0XHRcdH0gZWxzZSBpZiAoZWxlbWVudC5zdGF0dXMgPT0gJ2Nsb3NlZCcpIHtcclxuXHRcdFx0XHRlbGVtZW50LmNsYXNzTmFtZSA9ICdzdGF0dXMtcGFpZCc7XHJcblx0XHRcdH1cclxuXHRcdFx0ZWxzZSBpZiAoZWxlbWVudC5zdGF0dXMgPT0gJ3BhaWQnKSB7XHJcblx0XHRcdFx0ZWxlbWVudC5jbGFzc05hbWUgPSAnc3RhdHVzLXBhaWQnO1xyXG5cdFx0XHR9XHJcblx0XHRcdGVsc2UgaWYgKGVsZW1lbnQuc3RhdHVzID09ICdvdmVyZHVlJykge1xyXG5cdFx0XHRcdGVsZW1lbnQuY2xhc3NOYW1lID0gJ3N0YXR1cy1vdmVyZHVlJztcclxuXHRcdFx0fVxyXG5cdFx0XHRlbHNlIGlmIChlbGVtZW50LnN0YXR1cyA9PSAnb3V0c3RhbmRpbmcnKSB7XHJcblx0XHRcdFx0ZWxlbWVudC5jbGFzc05hbWUgPSAnc3RhdHVzLW9wZW4nO1xyXG5cdFx0XHR9XHJcblx0XHRcdGVsc2UgaWYgKGVsZW1lbnQuc3RhdHVzID09ICdyZWZ1bmQnKSB7XHJcblx0XHRcdFx0ZWxlbWVudC5jbGFzc05hbWUgPSAnc3RhdHVzLXBhaWQnO1xyXG5cdFx0XHR9XHJcblx0XHRcdHRoaXMubG9hZGVySW1hZ2UubmV4dChmYWxzZSk7XHJcblx0XHRcdHRoaXMuY2QubWFya0ZvckNoZWNrKCk7XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG4gIGdldExhc3RNb250aERhdGVSYW5nZSgpIHtcclxuICAgIHRoaXMuc2VsZWN0ZWREYXRlUmFuZ2UgPSBbbW9tZW50KCkuc3VidHJhY3QoMjksICdkYXlzJyksIG1vbWVudCgpXTtcclxuICAgIGNvbnN0IGRhdGVWYWx1ZSA9IHRoaXMuc2VsZWN0ZWREYXRlUmFuZ2VbMF0uX2QuZ2V0RGF0ZSgpICsgJy8nICsgKHRoaXMuc2VsZWN0ZWREYXRlUmFuZ2VbMF0uX2QuZ2V0TW9udGgoKSArIDEpICsgJy8nICsgdGhpcy5zZWxlY3RlZERhdGVSYW5nZVswXS5fZC5nZXRGdWxsWWVhcigpICsgJywnICtcclxuICAgICAgdGhpcy5zZWxlY3RlZERhdGVSYW5nZVsxXS5fZC5nZXREYXRlKCkgKyAnLycgKyAodGhpcy5zZWxlY3RlZERhdGVSYW5nZVsxXS5fZC5nZXRNb250aCgpICsgMSkgKyAnLycgKyB0aGlzLnNlbGVjdGVkRGF0ZVJhbmdlWzFdLl9kLmdldEZ1bGxZZWFyKCk7XHJcbiAgICBsZXQgb2JqID0ge1xyXG4gICAgICBcImtleVwiOiB0aGlzLnNlbGVjdGVkRGF0ZUtleSxcclxuICAgICAgXCJ2YWx1ZVwiOiBkYXRlVmFsdWVcclxuICAgIH1cclxuICAgIHRoaXMuc2VsZWN0ZWRPcmRlclN0YXRlLnB1c2gob2JqKTtcclxuICB9XHJcblxyXG4gIGdldE9yZGVySGlzdG9yeSgpIHtcclxuICAgIHRoaXMuc2hvd1dhaXRDdXJzb3IubmV4dCh0cnVlKTtcclxuICAgIHRoaXMuZ2V0TGFzdE1vbnRoRGF0ZVJhbmdlKCk7XHJcbiAgICBjb25zdCByZXFPYmo6IGFueSA9IHtcclxuICAgICAgXCJzZWFyY2hQYXJhbXNcIjogdGhpcy5zZWxlY3RlZE9yZGVyU3RhdGVcclxuICAgIH1cclxuICAgIHRoaXMub3JkZXJIaXN0b3J5LmdldE9yZGVySGlzdG9yeUxpc3QocmVxT2JqLCB0aGlzLmN1cnJlbnRQYWdlKS5zdWJzY3JpYmUocmVzID0+IHtcclxuICAgICAgdGhpcy5zaG93V2FpdEN1cnNvci5uZXh0KGZhbHNlKTtcclxuICAgICAgICB0aGlzLm9yZGVycyA9IHJlcy5vcmRlcnMuc2xpY2UoMCw2KTtcclxuICAgICAgICBpZiAodGhpcy5vcmRlcnMgJiYgdGhpcy5vcmRlcnMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgdGhpcy5vcmRlcnNEYXRhQXZhaWxhbGUgPSAnaGFzRGF0YSc7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMub3JkZXJzRGF0YUF2YWlsYWxlID0gJ25vRGF0YSc7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMub3JkZXJzLmZvckVhY2goKGVsZW1lbnQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYoZWxlbWVudC5taW5EZWxpdmVyeURhdGUgJiYgZWxlbWVudC5tYXhEZWxpdmVyeURhdGUpIHtcclxuICAgICAgICAgICAgZWxlbWVudC5taW5EZWxpdmVyeURhdGUgPSBuZXcgRGF0ZShlbGVtZW50Lm1pbkRlbGl2ZXJ5RGF0ZSk7XHJcbiAgICAgICAgICAgIGVsZW1lbnQubWF4RGVsaXZlcnlEYXRlID0gbmV3IERhdGUoZWxlbWVudC5tYXhEZWxpdmVyeURhdGUpO1xyXG4gICAgICAgICAgICBlbGVtZW50LmlzU2FtZURhdGUgPSAoZWxlbWVudC5tYXhEZWxpdmVyeURhdGUuZ2V0RnVsbFllYXIoKSA9PSBlbGVtZW50Lm1pbkRlbGl2ZXJ5RGF0ZS5nZXRGdWxsWWVhcigpICYmIGVsZW1lbnQubWF4RGVsaXZlcnlEYXRlLmdldE1vbnRoKCkgPT0gZWxlbWVudC5taW5EZWxpdmVyeURhdGUuZ2V0TW9udGgoKSBcclxuICAgICAgICAgICAgJiYgZWxlbWVudC5tYXhEZWxpdmVyeURhdGUuZ2V0RGF5KCkgPT0gZWxlbWVudC5taW5EZWxpdmVyeURhdGUuZ2V0RGF5KCkpID8gdHJ1ZSA6IGZhbHNlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfSwgZXJyb3IgPT4ge1xyXG4gICAgICB0aGlzLnNob3dXYWl0Q3Vyc29yLm5leHQoZmFsc2UpO1xyXG4gICAgICBjb25zb2xlLmxvZyhlcnJvcik7XHJcbiAgICB9KVxyXG5cclxuICB9XHJcbiAgbmF2aWdhdGVUb0ludm9pY2VzKCkge1xyXG4gICAgdGhpcy5uYXZpZ2F0ZUludm9pY2VzLmVtaXQoKTtcclxuICB9XHJcbn1cclxuXHJcbiIsIjxkaXYgY2xhc3M9XCJsb2FkaW5nXCIgKm5nSWY9XCJzaG93V2FpdEN1cnNvciB8IGFzeW5jIFwiPkxvYWRpbmcmIzgyMzA7PC9kaXY+XHJcbjxkaXYgY2xhc3M9XCJyb3cgZ3gtNSBkYXNoYm9hcmQtbWFpbi1jb250YWluZXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wgZGFzaGJvYXJkLWludm9pY2VzIG1yLTNcIj5cclxuICAgICAgICA8aDQ+XHJcbiAgICAgICAgICAgIEludm9pY2VzICYgQ3JlZGl0IE5vdGVzXHJcbiAgICAgICAgICAgIDxhICpuZ0lmPVwiZGF0YUF2YWlsYWxlID09ICdoYXNEYXRhJyBcIiAoY2xpY2spPVwibmF2aWdhdGVUb0ludm9pY2VzKClcIiBcclxuICAgICAgICAgICAgaWQ9XCJpbnZvaWNlLWNyZWRpdC10YWJcIiBkYXRhLXRvZ2dsZT1cInRhYlwiIGRhdGEtdGFyZ2V0PVwiI2ludm9pY2UtY3JlZGl0XCIgY2xhc3M9XCJ2aWV3LWFsbC1saW5rXCIgdGl0bGU9XCJWaWV3IEFsbFwiPlZpZXcgYWxsPC9hPlxyXG4gICAgICAgIDwvaDQ+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRhdGFBdmFpbGFsZSA9PSAnaGFzRGF0YScgXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkYXNoYm9hcmQtdGFibGUtY29udGFpbmVyIHRhYmxlLXJlc3BvbnNpdmVcIj5cclxuICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cInRhYmxlIGFjY291bnQtbGlzdC10YWJsZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0aGVhZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIHNjb3BlPVwiY29sXCI+RGF0ZTwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggc2NvcGU9XCJjb2xcIj5EdWUgRGF0ZTwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggc2NvcGU9XCJjb2xcIj5JbnZvaWNlICM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIHNjb3BlPVwiY29sXCI+U3RhdHVzPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBzY29wZT1cImNvbFwiPlRvdGFsIDxzcGFuIGNsYXNzPVwiZ3N0LXRleHRcIj5leGNsIEdTVDwvc3Bhbj48L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHIgKm5nRm9yPVwibGV0IGRhdGEgb2YgaW52b2ljZUNyZWRpdExpc3Quc2xpY2UoMCw2KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7ZGF0YS5kYXRlIHwgZGF0ZTogJ2RkL01NL3l5eXknfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7ZGF0YS5kdWVEYXRlIHwgZGF0ZTogJ2RkL01NL3l5eXknfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7ZGF0YS5kb2N1bWVudE51bWJlcn19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cIiBzdGF0dXMtbWVzc2FnZSB7e2RhdGEuY2xhc3NOYW1lfX1cIj57e2RhdGEuc3RhdHVzfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIFtuZ0NsYXNzXT1cInsnbmVnYXRpdmUtcHJpY2UnOmRhdGEub3BlbkFtb3VudCA8IDB9XCI+e3tkYXRhLmZvcm1hdHRlZEFtb3VudH19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxyXG4gICAgICAgICAgICAgICAgPC90YWJsZT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJkYXRhQXZhaWxhbGUgPT0gJ25vRGF0YSdcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vLWRhdGEtaGVhZGVyXCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJub3JlY29yZC1jYXJkXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHktNSBweC01IGVtcHR5LWFjY291bnRzdGF0ZW1lbnRzXCIgW2lubmVySFRNTF09XCJlbXB0eURhc2hib2FyZEludm9pY2VzQ29tcG9uZW50XCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sIGRhc2hib2FyZC1vcmRlcnNcIj5cclxuICAgICAgICA8aDQ+XHJcbiAgICAgICAgICAgIE15IE9yZGVyc1xyXG4gICAgICAgICAgICA8YSAqbmdJZj1cIm9yZGVyc0RhdGFBdmFpbGFsZSA9PSAnaGFzRGF0YScgXCIgaHJlZj1cIi9teS1hY2NvdW50L29yZGVyc1wiIGNsYXNzPVwidmlldy1hbGwtbGlua1wiIHRpdGxlPVwiVmlldyBBbGxcIj5WaWV3IGFsbDwvYT5cclxuICAgICAgICA8L2g0PlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJvcmRlcnNEYXRhQXZhaWxhbGUgPT0gJ2hhc0RhdGEnIFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwib3JkZXJzLXRhYmxlLWNvbnRhaW5lciBkYXNoYm9hcmQtdGFibGUtY29udGFpbmVyIHRhYmxlLXJlc3BvbnNpdmVcIj5cclxuICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cInRhYmxlIGFjY291bnQtbGlzdC10YWJsZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0aGVhZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIHNjb3BlPVwiY29sXCI+RGF0ZTwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggc2NvcGU9XCJjb2xcIj5PcmRlciAjPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBzY29wZT1cImNvbFwiPlBPICM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIHNjb3BlPVwiY29sXCI+RGVsaXZlcnkgRGF0ZXM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHIgKm5nRm9yPVwibGV0IGRhdGEgb2Ygb3JkZXJzOyBsZXQgaSA9IGluZGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3tkYXRhLnBsYWNlZCB8IGRhdGU6J2RkL01NL3l5eXknfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7ZGF0YS5jb2RlfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7ZGF0YS5wdXJjaGFzZU9yZGVyTnVtYmVyfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwib3JkZXJzPy5pc1NhbWVEYXRlOyBlbHNlIG5vdE1hdGNoXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7ZGF0YT8ubWluRGVsaXZlcnlEYXRlIHwgZGF0ZTogJ2RkL01NL3l5eXknfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI25vdE1hdGNoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2RhdGE/Lm1pbkRlbGl2ZXJ5RGF0ZSB8IGRhdGU6ICdkZC9NTS95eXl5J319IC0ge3tkYXRhPy5tYXhEZWxpdmVyeURhdGUgfCBkYXRlOiAnZGQvTU0veXl5eSd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+XHJcbiAgICAgICAgICAgICAgICA8L3RhYmxlPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8IS0tIENvZGUgZm9yIHdoZW4gdGhlcmUgaXMgbm8gb3JkZXJzIGRhdGEgYXZhaWxhYmxlIC0gbmVlZCB0byBhZGQgY29uZGl0aW9uIGhlcmUtLT5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwib3JkZXJzRGF0YUF2YWlsYWxlID09ICdub0RhdGEnXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJuby1kYXRhLWhlYWRlclwiPjwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9yZWNvcmQtY2FyZFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInB5LTUgcHgtNSBlbXB0eS1hY2NvdW50c3RhdGVtZW50c1wiIFtpbm5lckhUTUxdPVwiZW1wdHlEYXNoYm9hcmRPcmRlcnNDb21wb25lbnRcIj48L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
133
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC1kYXNoYm9hcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYnVpbGRpbmdwcm9kdWN0X2xpYnJhcnkvc3JjL2xpYi9teS1hY2NvdW50L2FjY291bnQtZGFzaGJvYXJkL2FjY291bnQtZGFzaGJvYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2J1aWxkaW5ncHJvZHVjdF9saWJyYXJ5L3NyYy9saWIvbXktYWNjb3VudC9hY2NvdW50LWRhc2hib2FyZC9hY2NvdW50LWRhc2hib2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBRSxZQUFZLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdkMsT0FBTyxLQUFLLE1BQU0sTUFBTSxRQUFRLENBQUM7Ozs7OztBQVNqQyxNQUFNLE9BQU8seUJBQXlCO0lBZ0JwQyxZQUNVLGdCQUFrQyxFQUNuQyxFQUFxQixFQUNyQixVQUFzQixFQUN0QixZQUFpQztRQUhoQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ25DLE9BQUUsR0FBRixFQUFFLENBQW1CO1FBQ3JCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBaEIxQyxtQkFBYyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ3JELG9CQUFlLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDdEQsZ0JBQVcsR0FBRyxDQUFDLENBQUM7UUFDaEIsc0JBQWlCLEdBQVEsRUFBRSxDQUFDO1FBRTVCLHVCQUFrQixHQUFXLEVBQUUsQ0FBQztRQUVoQyxvQkFBZSxHQUFXLFdBQVcsQ0FBQztRQUN0Qyx1QkFBa0Is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SCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRTtZQUNULElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2pDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckIsQ0FBQyxDQUFDLENBQUE7SUFFSixDQUFDO0lBQ0Qsa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMvQixDQUFDOzt1SEExSFUseUJBQXlCOzJHQUF6Qix5QkFBeUIsZ0hDWnRDLHVqSkFzRk07NEZEMUVPLHlCQUF5QjtrQkFMckMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxXQUFXLEVBQUUsb0NBQW9DO29CQUNqRCxTQUFTLEVBQUUsQ0FBQyxvQ0FBb0MsQ0FBQztpQkFDbEQ7a01BZVcsZ0JBQWdCO3NCQUF6QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDbXNTZXJ2aWNlIH0gZnJvbSAnQHNwYXJ0YWN1cy9jb3JlJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7IFxyXG5pbXBvcnQgKiBhcyBtb21lbnQgZnJvbSAnbW9tZW50JztcclxuaW1wb3J0IHsgTXlBY2NvdW50U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL215LWFjY291bnQuc2VydmljZSc7XHJcbmltcG9ydCB7IE9yZGVySGlzdG9yeVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9vcmRlci1oaXN0b3J5LnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtYWNjb3VudC1kYXNoYm9hcmQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hY2NvdW50LWRhc2hib2FyZC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYWNjb3VudC1kYXNoYm9hcmQuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWNjb3VudERhc2hib2FyZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIGVtcHR5RGFzaGJvYXJkSW52b2ljZXNDb21wb25lbnQ6IGFueTtcclxuICBlbXB0eURhc2hib2FyZE9yZGVyc0NvbXBvbmVudDogYW55O1xyXG4gIHNob3dXYWl0Q3Vyc29yID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XHJcbiAgc2hvd09yZGVyQ3Vyc29yID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XHJcbiAgY3VycmVudFBhZ2UgPSAwO1xyXG4gIGludm9pY2VDcmVkaXRMaXN0OiBhbnkgPSBbXTtcclxuICBkYXRhQXZhaWxhbGU/OiBzdHJpbmc7XHJcbiAgb3JkZXJzRGF0YUF2YWlsYWxlOiBzdHJpbmcgPSAnJztcclxuICBzZWxlY3RlZERhdGVSYW5nZTogYW55O1xyXG4gIHNlbGVjdGVkRGF0ZUtleTogc3RyaW5nID0gJ29yZGVyRGF0ZSc7XHJcbiAgc2VsZWN0ZWRPcmRlclN0YXRlOiBhbnkgPSBbXTtcclxuICBvcmRlcnM6IGFueTtcclxuICBAT3V0cHV0KCkgbmF2aWdhdGVJbnZvaWNlcyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgbXlBY2NvdW50U2VydmljZTogTXlBY2NvdW50U2VydmljZSxcclxuICAgIHB1YmxpYyBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwdWJsaWMgY21zU2VydmljZTogQ21zU2VydmljZSxcclxuICAgIHB1YmxpYyBvcmRlckhpc3Rvcnk6IE9yZGVySGlzdG9yeVNlcnZpY2VcclxuICApIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc2hvd1dhaXRDdXJzb3IubmV4dCh0cnVlKTtcclxuXHJcbiAgICAvLyBmdW5jdGlvbiB0byBnZXQgdGhlIEVtcHR5IERhc2hib2FyZCBJbnZvaWNlcyBjb250ZW50XHJcbiAgICB0aGlzLmNtc1NlcnZpY2UuZ2V0Q29tcG9uZW50RGF0YSgnRW1wdHlEYXNoYm9hcmRJbnZvaWNlc0NvbXBvbmVudCcpLnN1YnNjcmliZSgoZGF0YTogYW55KSA9PiB7XHJcbiAgICAgIGlmIChkYXRhKSB7XHJcbiAgICAgICAgdGhpcy5lbXB0eURhc2hib2FyZEludm9pY2VzQ29tcG9uZW50ID0gZGF0YS5jb250ZW50O1xyXG4gICAgICB9XHJcbiAgICB9KVxyXG5cclxuICAgIC8vIGZ1bmN0aW9uIHRvIGdldCB0aGUgRW1wdHkgRGFzaGJvYXJkIE9yZGVycyBjb250ZW50XHJcbiAgICB0aGlzLmNtc1NlcnZpY2UuZ2V0Q29tcG9uZW50RGF0YSgnRW1wdHlEYXNoYm9hcmRPcmRlcnNDb21wb25lbnQnKS5zdWJzY3JpYmUoKGRhdGE6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoZGF0YSkge1xyXG4gICAgICAgIHRoaXMuZW1wdHlEYXNoYm9hcmRPcmRlcnNDb21wb25lbnQgPSBkYXRhLmNvbnRlbnQ7XHJcbiAgICAgIH1cclxuICAgIH0pXHJcbiAgICB0aGlzLmdldEludm9pY2VDcmVkaXREYXRhKCk7XHJcbiAgICB0aGlzLmdldE9yZGVySGlzdG9yeSgpO1xyXG4gIH1cclxuXHJcbiAgZ2V0SW52b2ljZUNyZWRpdERhdGEoKSB7XHJcblx0XHR0aGlzLnNob3dXYWl0Q3Vyc29yLm5leHQodHJ1ZSk7XHJcblx0XHR0aGlzLm15QWNjb3VudFNlcnZpY2UuZ2V0SW52b2ljZXNDcmVkaXRMaXN0KG51bGwsdGhpcy5jdXJyZW50UGFnZSkuc3Vic2NyaWJlKChkYXRhOiBhbnkpID0+IHtcclxuXHRcdFx0dGhpcy5pbnZvaWNlQ3JlZGl0TGlzdCA9IGRhdGEuZG9jdW1lbnRzO1xyXG4gICAgICB0aGlzLmNkLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICB0aGlzLmdldFN0YXR1cygpO1xyXG4gICAgICBpZiAodGhpcy5pbnZvaWNlQ3JlZGl0TGlzdCAmJiB0aGlzLmludm9pY2VDcmVkaXRMaXN0Lmxlbmd0aCA+IDApIHtcclxuICAgICAgICB0aGlzLmRhdGFBdmFpbGFsZSA9ICdoYXNEYXRhJztcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLmRhdGFBdmFpbGFsZSA9ICdub0RhdGEnO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuc2hvd1dhaXRDdXJzb3IubmV4dChmYWxzZSk7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgZ2V0U3RhdHVzKCkge1xyXG5cdFx0dGhpcy5pbnZvaWNlQ3JlZGl0TGlzdC5mb3JFYWNoKChlbGVtZW50OiBhbnkpID0+IHtcclxuXHRcdFx0aWYgKGVsZW1lbnQuc3RhdHVzID09ICdvcGVuJykge1xyXG5cdFx0XHRcdCAgZWxlbWVudC5jbGFzc05hbWUgPSAnc3RhdHVzLW9wZW4nO1xyXG5cdFx0XHR9IGVsc2UgaWYgKGVsZW1lbnQuc3RhdHVzID09ICdjbG9zZWQnKSB7XHJcblx0XHRcdFx0ZWxlbWVudC5jbGFzc05hbWUgPSAnc3RhdHVzLXBhaWQnO1xyXG5cdFx0XHR9XHJcblx0XHRcdGVsc2UgaWYgKGVsZW1lbnQuc3RhdHVzID09ICdwYWlkJykge1xyXG5cdFx0XHRcdGVsZW1lbnQuY2xhc3NOYW1lID0gJ3N0YXR1cy1wYWlkJztcclxuXHRcdFx0fVxyXG5cdFx0XHRlbHNlIGlmIChlbGVtZW50LnN0YXR1cyA9PSAnb3ZlcmR1ZScpIHtcclxuXHRcdFx0XHRlbGVtZW50LmNsYXNzTmFtZSA9ICdzdGF0dXMtb3ZlcmR1ZSc7XHJcblx0XHRcdH1cclxuXHRcdFx0ZWxzZSBpZiAoZWxlbWVudC5zdGF0dXMgPT0gJ291dHN0YW5kaW5nJykge1xyXG5cdFx0XHRcdGVsZW1lbnQuY2xhc3NOYW1lID0gJ3N0YXR1cy1vcGVuJztcclxuXHRcdFx0fVxyXG5cdFx0XHRlbHNlIGlmIChlbGVtZW50LnN0YXR1cyA9PSAncmVmdW5kJykge1xyXG5cdFx0XHRcdGVsZW1lbnQuY2xhc3NOYW1lID0gJ3N0YXR1cy1wYWlkJztcclxuXHRcdFx0fVxyXG5cdFx0XHR0aGlzLmNkLm1hcmtGb3JDaGVjaygpO1xyXG5cdFx0fSk7XHJcblx0fVxyXG5cclxuICBnZXRMYXN0TW9udGhEYXRlUmFuZ2UoKSB7XHJcbiAgICB0aGlzLnNlbGVjdGVkRGF0ZVJhbmdlID0gW21vbWVudCgpLnN1YnRyYWN0KDI5LCAnZGF5cycpLCBtb21lbnQoKV07XHJcbiAgICBjb25zdCBkYXRlVmFsdWUgPSB0aGlzLnNlbGVjdGVkRGF0ZVJhbmdlWzBdLl9kLmdldERhdGUoKSArICcvJyArICh0aGlzLnNlbGVjdGVkRGF0ZVJhbmdlWzBdLl9kLmdldE1vbnRoKCkgKyAxKSArICcvJyArIHRoaXMuc2VsZWN0ZWREYXRlUmFuZ2VbMF0uX2QuZ2V0RnVsbFllYXIoKSArICcsJyArXHJcbiAgICAgIHRoaXMuc2VsZWN0ZWREYXRlUmFuZ2VbMV0uX2QuZ2V0RGF0ZSgpICsgJy8nICsgKHRoaXMuc2VsZWN0ZWREYXRlUmFuZ2VbMV0uX2QuZ2V0TW9udGgoKSArIDEpICsgJy8nICsgdGhpcy5zZWxlY3RlZERhdGVSYW5nZVsxXS5fZC5nZXRGdWxsWWVhcigpO1xyXG4gICAgbGV0IG9iaiA9IHtcclxuICAgICAgXCJrZXlcIjogdGhpcy5zZWxlY3RlZERhdGVLZXksXHJcbiAgICAgIFwidmFsdWVcIjogZGF0ZVZhbHVlXHJcbiAgICB9XHJcbiAgICB0aGlzLnNlbGVjdGVkT3JkZXJTdGF0ZS5wdXNoKG9iaik7XHJcbiAgfVxyXG5cclxuICBnZXRPcmRlckhpc3RvcnkoKSB7XHJcbiAgICB0aGlzLnNob3dPcmRlckN1cnNvci5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5nZXRMYXN0TW9udGhEYXRlUmFuZ2UoKTtcclxuICAgIGNvbnN0IHJlcU9iajogYW55ID0ge1xyXG4gICAgICBcInNlYXJjaFBhcmFtc1wiOiB0aGlzLnNlbGVjdGVkT3JkZXJTdGF0ZVxyXG4gICAgfVxyXG4gICAgdGhpcy5vcmRlckhpc3RvcnkuZ2V0T3JkZXJIaXN0b3J5TGlzdChyZXFPYmosIHRoaXMuY3VycmVudFBhZ2UpLnN1YnNjcmliZShyZXMgPT4ge1xyXG4gICAgICB0aGlzLnNob3dPcmRlckN1cnNvci5uZXh0KGZhbHNlKTtcclxuICAgICAgICB0aGlzLm9yZGVycyA9IHJlcy5vcmRlcnMuc2xpY2UoMCw2KTtcclxuICAgICAgICBpZiAodGhpcy5vcmRlcnMgJiYgdGhpcy5vcmRlcnMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgdGhpcy5vcmRlcnNEYXRhQXZhaWxhbGUgPSAnaGFzRGF0YSc7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMub3JkZXJzRGF0YUF2YWlsYWxlID0gJ25vRGF0YSc7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMub3JkZXJzLmZvckVhY2goKGVsZW1lbnQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYoZWxlbWVudC5taW5EZWxpdmVyeURhdGUgJiYgZWxlbWVudC5tYXhEZWxpdmVyeURhdGUpIHtcclxuICAgICAgICAgICAgZWxlbWVudC5taW5EZWxpdmVyeURhdGUgPSBuZXcgRGF0ZShlbGVtZW50Lm1pbkRlbGl2ZXJ5RGF0ZSk7XHJcbiAgICAgICAgICAgIGVsZW1lbnQubWF4RGVsaXZlcnlEYXRlID0gbmV3IERhdGUoZWxlbWVudC5tYXhEZWxpdmVyeURhdGUpO1xyXG4gICAgICAgICAgICBlbGVtZW50LmlzU2FtZURhdGUgPSAoZWxlbWVudC5tYXhEZWxpdmVyeURhdGUuZ2V0RnVsbFllYXIoKSA9PSBlbGVtZW50Lm1pbkRlbGl2ZXJ5RGF0ZS5nZXRGdWxsWWVhcigpICYmIGVsZW1lbnQubWF4RGVsaXZlcnlEYXRlLmdldE1vbnRoKCkgPT0gZWxlbWVudC5taW5EZWxpdmVyeURhdGUuZ2V0TW9udGgoKSBcclxuICAgICAgICAgICAgJiYgZWxlbWVudC5tYXhEZWxpdmVyeURhdGUuZ2V0RGF5KCkgPT0gZWxlbWVudC5taW5EZWxpdmVyeURhdGUuZ2V0RGF5KCkpID8gdHJ1ZSA6IGZhbHNlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfSwgZXJyb3IgPT4ge1xyXG4gICAgICB0aGlzLnNob3dPcmRlckN1cnNvci5uZXh0KGZhbHNlKTtcclxuICAgICAgY29uc29sZS5sb2coZXJyb3IpO1xyXG4gICAgfSlcclxuXHJcbiAgfVxyXG4gIG5hdmlnYXRlVG9JbnZvaWNlcygpIHtcclxuICAgIHRoaXMubmF2aWdhdGVJbnZvaWNlcy5lbWl0KCk7XHJcbiAgfVxyXG59XHJcblxyXG4iLCI8ZGl2IGNsYXNzPVwibG9hZGluZ1wiICpuZ0lmPVwic2hvd1dhaXRDdXJzb3IgfCBhc3luYyBcIj5Mb2FkaW5nJiM4MjMwOzwvZGl2PlxyXG48ZGl2IGNsYXNzPVwicm93IGd4LTUgZGFzaGJvYXJkLW1haW4tY29udGFpbmVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sIGRhc2hib2FyZC1pbnZvaWNlcyBtci0zXCI+XHJcbiAgICAgICAgPGg0PlxyXG4gICAgICAgICAgICBJbnZvaWNlcyAmIENyZWRpdCBOb3Rlc1xyXG4gICAgICAgICAgICA8YSAqbmdJZj1cImRhdGFBdmFpbGFsZSA9PSAnaGFzRGF0YScgXCIgKGNsaWNrKT1cIm5hdmlnYXRlVG9JbnZvaWNlcygpXCIgXHJcbiAgICAgICAgICAgIGlkPVwiaW52b2ljZS1jcmVkaXQtdGFiXCIgZGF0YS10b2dnbGU9XCJ0YWJcIiBkYXRhLXRhcmdldD1cIiNpbnZvaWNlLWNyZWRpdFwiIGNsYXNzPVwidmlldy1hbGwtbGlua1wiIHRpdGxlPVwiVmlldyBBbGxcIj5WaWV3IGFsbDwvYT5cclxuICAgICAgICA8L2g0PlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJkYXRhQXZhaWxhbGUgPT0gJ2hhc0RhdGEnIFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGFzaGJvYXJkLXRhYmxlLWNvbnRhaW5lciB0YWJsZS1yZXNwb25zaXZlXCI+XHJcbiAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9XCJ0YWJsZSBhY2NvdW50LWxpc3QtdGFibGVcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBzY29wZT1cImNvbFwiPkRhdGU8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIHNjb3BlPVwiY29sXCI+RHVlIERhdGU8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIHNjb3BlPVwiY29sXCI+SW52b2ljZSAjPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBzY29wZT1cImNvbFwiPlN0YXR1czwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggc2NvcGU9XCJjb2xcIj5Ub3RhbCA8c3BhbiBjbGFzcz1cImdzdC10ZXh0XCI+ZXhjbCBHU1Q8L3NwYW4+PC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICA8L3RoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyICpuZ0Zvcj1cImxldCBkYXRhIG9mIGludm9pY2VDcmVkaXRMaXN0LnNsaWNlKDAsNilcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2RhdGEuZGF0ZSB8IGRhdGU6ICdkZC9NTS95eXl5J319PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2RhdGEuZHVlRGF0ZSB8IGRhdGU6ICdkZC9NTS95eXl5J319PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2RhdGEuZG9jdW1lbnROdW1iZXJ9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCIgc3RhdHVzLW1lc3NhZ2Uge3tkYXRhLmNsYXNzTmFtZX19XCI+e3tkYXRhLnN0YXR1c319PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBbbmdDbGFzc109XCJ7J25lZ2F0aXZlLXByaWNlJzpkYXRhLm9wZW5BbW91bnQgPCAwfVwiPnt7ZGF0YS5mb3JtYXR0ZWRBbW91bnR9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cclxuICAgICAgICAgICAgICAgIDwvdGFibGU+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZGF0YUF2YWlsYWxlID09ICdub0RhdGEnXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJuby1kYXRhLWhlYWRlclwiPjwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm9yZWNvcmQtY2FyZFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInB5LTUgcHgtNSBlbXB0eS1hY2NvdW50c3RhdGVtZW50c1wiIFtpbm5lckhUTUxdPVwiZW1wdHlEYXNoYm9hcmRJbnZvaWNlc0NvbXBvbmVudFwiPjwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbCBkYXNoYm9hcmQtb3JkZXJzXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImxvYWRpbmdcIiAqbmdJZj1cInNob3dPcmRlckN1cnNvciB8IGFzeW5jIFwiPkxvYWRpbmcmIzgyMzA7PC9kaXY+XHJcbiAgICAgICAgPGg0PlxyXG4gICAgICAgICAgICBNeSBPcmRlcnNcclxuICAgICAgICAgICAgPGEgKm5nSWY9XCJvcmRlcnNEYXRhQXZhaWxhbGUgPT0gJ2hhc0RhdGEnIFwiIGhyZWY9XCIvbXktYWNjb3VudC9vcmRlcnNcIiBjbGFzcz1cInZpZXctYWxsLWxpbmtcIiB0aXRsZT1cIlZpZXcgQWxsXCI+VmlldyBhbGw8L2E+XHJcbiAgICAgICAgPC9oND5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwib3JkZXJzRGF0YUF2YWlsYWxlID09ICdoYXNEYXRhJyBcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm9yZGVycy10YWJsZS1jb250YWluZXIgZGFzaGJvYXJkLXRhYmxlLWNvbnRhaW5lciB0YWJsZS1yZXNwb25zaXZlXCI+XHJcbiAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9XCJ0YWJsZSBhY2NvdW50LWxpc3QtdGFibGVcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBzY29wZT1cImNvbFwiPkRhdGU8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIHNjb3BlPVwiY29sXCI+T3JkZXIgIzwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggc2NvcGU9XCJjb2xcIj5QTyAjPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBzY29wZT1cImNvbFwiPkRlbGl2ZXJ5IERhdGVzPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICA8L3RoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyICpuZ0Zvcj1cImxldCBkYXRhIG9mIG9yZGVyczsgbGV0IGkgPSBpbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7ZGF0YS5wbGFjZWQgfCBkYXRlOidkZC9NTS95eXl5J319PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2RhdGEuY29kZX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2RhdGEucHVyY2hhc2VPcmRlck51bWJlcn19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm9yZGVycz8uaXNTYW1lRGF0ZTsgZWxzZSBub3RNYXRjaFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2RhdGE/Lm1pbkRlbGl2ZXJ5RGF0ZSB8IGRhdGU6ICdkZC9NTS95eXl5J319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNub3RNYXRjaD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tkYXRhPy5taW5EZWxpdmVyeURhdGUgfCBkYXRlOiAnZGQvTU0veXl5eSd9fSAtIHt7ZGF0YT8ubWF4RGVsaXZlcnlEYXRlIHwgZGF0ZTogJ2RkL01NL3l5eXknfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxyXG4gICAgICAgICAgICAgICAgPC90YWJsZT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPCEtLSBDb2RlIGZvciB3aGVuIHRoZXJlIGlzIG5vIG9yZGVycyBkYXRhIGF2YWlsYWJsZSAtIG5lZWQgdG8gYWRkIGNvbmRpdGlvbiBoZXJlLS0+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm9yZGVyc0RhdGFBdmFpbGFsZSA9PSAnbm9EYXRhJ1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm8tZGF0YS1oZWFkZXJcIj48L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5vcmVjb3JkLWNhcmRcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJweS01IHB4LTUgZW1wdHktYWNjb3VudHN0YXRlbWVudHNcIiBbaW5uZXJIVE1MXT1cImVtcHR5RGFzaGJvYXJkT3JkZXJzQ29tcG9uZW50XCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==