@posiwise/smart-crm 0.0.3 → 0.0.4

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 (50) hide show
  1. package/esm2022/lib/private/components/smart-crm-accounts/smart-crm-account-details/smart-crm-account-details.component.mjs +4 -4
  2. package/esm2022/lib/private/components/smart-crm-accounts/smart-crm-account-files/smart-crm-account-files.component.mjs +7 -7
  3. package/esm2022/lib/private/components/smart-crm-accounts/smart-crm-account-info/smart-crm-account-info.component.mjs +7 -7
  4. package/esm2022/lib/private/components/smart-crm-accounts/smart-crm-accounts.component.mjs +5 -5
  5. package/esm2022/lib/private/components/smart-crm-competition/smart-crm-competition/smart-crm-competition.component.mjs +4 -4
  6. package/esm2022/lib/private/components/smart-crm-configuration/smart-crm-actions/smart-crm-actions-details/smart-crm-actions-details.component.mjs +5 -5
  7. package/esm2022/lib/private/components/smart-crm-configuration/smart-crm-actions/smart-crm-actions.component.mjs +4 -4
  8. package/esm2022/lib/private/components/smart-crm-configuration/smart-crm-configuration.component.mjs +4 -4
  9. package/esm2022/lib/private/components/smart-crm-configuration/smart-crm-opportunity-categories/smart-crm-opportunity-categories-details/smart-crm-opportunity-categories-details.component.mjs +4 -4
  10. package/esm2022/lib/private/components/smart-crm-configuration/smart-crm-opportunity-categories/smart-crm-opportunity-categories.component.mjs +4 -4
  11. package/esm2022/lib/private/components/smart-crm-configuration/smart-crm-source/smart-crm-source-details/smart-crm-source-details.component.mjs +4 -4
  12. package/esm2022/lib/private/components/smart-crm-configuration/smart-crm-source/smart-crm-source.component.mjs +4 -4
  13. package/esm2022/lib/private/components/smart-crm-configuration/smart-crm-stages/smart-crm-stage-details/smart-crm-stage-details.component.mjs +4 -4
  14. package/esm2022/lib/private/components/smart-crm-configuration/smart-crm-stages/smart-crm-stages.component.mjs +4 -4
  15. package/esm2022/lib/private/components/smart-crm-configuration/smart-crm-widgets/smart-crm-widgets-details/smart-crm-widgets-details.component.mjs +4 -4
  16. package/esm2022/lib/private/components/smart-crm-configuration/smart-crm-widgets/smart-crm-widgets.component.mjs +4 -4
  17. package/esm2022/lib/private/components/smart-crm-contacts/smart-crm-contact-details/smart-crm-contact-details.component.mjs +4 -4
  18. package/esm2022/lib/private/components/smart-crm-contacts/smart-crm-contact-info/smart-crm-contact-info.component.mjs +4 -4
  19. package/esm2022/lib/private/components/smart-crm-contacts/smart-crm-contacts.component.mjs +5 -5
  20. package/esm2022/lib/private/components/smart-crm-customer/smart-crm-customer-success/smart-crm-customer-success.component.mjs +4 -4
  21. package/esm2022/lib/private/components/smart-crm-insight/smart-crm-insight.component.mjs +4 -4
  22. package/esm2022/lib/private/components/smart-crm-insight/smart-crm-overview/smart-crm-overview.component.mjs +4 -4
  23. package/esm2022/lib/private/components/smart-crm-leads/smart-crm-leads-details/smart-crm-leads-details.component.mjs +4 -4
  24. package/esm2022/lib/private/components/smart-crm-leads/smart-crm-leads.component.mjs +4 -4
  25. package/esm2022/lib/private/components/smart-crm-marketing/smart-crm-marketing-list/smart-crm-marketing-contacts/smart-crm-marketing-contacts.component.mjs +4 -4
  26. package/esm2022/lib/private/components/smart-crm-marketing/smart-crm-marketing-list/smart-crm-marketing-details/smart-crm-marketing-details.component.mjs +4 -4
  27. package/esm2022/lib/private/components/smart-crm-marketing/smart-crm-marketing-list/smart-crm-marketing-list.component.mjs +5 -5
  28. package/esm2022/lib/private/components/smart-crm-marketing/smart-crm-marketing-list/smart-crm-marketing-view-details/smart-crm-marketing-view-details.component.mjs +4 -4
  29. package/esm2022/lib/private/components/smart-crm-marketing/smart-crm-marketing.component.mjs +4 -4
  30. package/esm2022/lib/private/components/smart-crm-opportunities/smart-crm-board/smart-crm-board.component.mjs +4 -4
  31. package/esm2022/lib/private/components/smart-crm-opportunities/smart-crm-opportunities-list/smart-crm-opportunities-details/smart-crm-opportunities-details.component.mjs +4 -4
  32. package/esm2022/lib/private/components/smart-crm-opportunities/smart-crm-opportunities-list/smart-crm-opportunities-info/smart-crm-opportunities-info.component.mjs +4 -4
  33. package/esm2022/lib/private/components/smart-crm-opportunities/smart-crm-opportunities-list/smart-crm-opportunities-list.component.mjs +4 -4
  34. package/esm2022/lib/private/components/smart-crm-opportunities/smart-crm-opportunities.component.mjs +4 -4
  35. package/esm2022/lib/private/components/smart-crm-summary/smart-crm-summary-actions/smart-crm-summary-actions.component.mjs +4 -4
  36. package/esm2022/lib/private/components/smart-crm-summary/smart-crm-summary-others/smart-crm-summary-others.component.mjs +4 -4
  37. package/esm2022/lib/private/components/smart-crm-summary/smart-crm-summary.component.mjs +4 -4
  38. package/esm2022/lib/private/components/smart-crm-tabs/smart-crm-tabs.component.mjs +4 -4
  39. package/esm2022/lib/private/smart-crm-private.module.mjs +5 -5
  40. package/esm2022/lib/private/smart-crm-private.routing.module.mjs +5 -5
  41. package/esm2022/lib/public/components/smart-crm-newsletter-confirmation/smart-crm-newsletter-confirmation.component.mjs +4 -4
  42. package/esm2022/lib/public/components/smart-crm-newsletter-unsubscribe/smart-crm-newsletter-unsubscribe.component.mjs +4 -4
  43. package/esm2022/lib/public/components/smart-crm-signup/smart-crm-signup.component.mjs +4 -4
  44. package/esm2022/lib/public/smart-crm-public.module.mjs +5 -5
  45. package/esm2022/lib/public/smart-crm-public.routing.module.mjs +5 -5
  46. package/fesm2022/posiwise-smart-crm.mjs +149 -149
  47. package/fesm2022/posiwise-smart-crm.mjs.map +1 -1
  48. package/lib/private/components/smart-crm-accounts/smart-crm-account-files/smart-crm-account-files.component.d.ts +1 -1
  49. package/lib/private/components/smart-crm-accounts/smart-crm-account-info/smart-crm-account-info.component.d.ts +1 -1
  50. package/package.json +3 -3
@@ -138,11 +138,11 @@ export class SmartCrmSummaryOthersComponent extends AppBaseComponent {
138
138
  ngOnDestroy() {
139
139
  super.ngOnDestroy();
140
140
  }
141
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.6", ngImport: i0, type: SmartCrmSummaryOthersComponent, deps: [{ token: i1.CrmService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
142
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.6", type: SmartCrmSummaryOthersComponent, selector: "pw-smart-crm-summary-others", usesInheritance: true, ngImport: i0, template: "<div class=\"row\">\n <ng-container class=\"mt-5\"\n *rbacAllow=\"'Pages.Beta'\">\n <!-- Signed up last 30 days -->\n <div class=\"col-12 col-md-6 mb-3 analytics\">\n <h5 class=\"accordion-heading\">Signed up Last 30 Days</h5>\n <div class=\"w-100 text-center mt-3\">\n <ng-template [ngIf]=\"!signUpLastThirtyDaysLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </ng-template>\n </div>\n <div class=\"primeng-datatable-container table-responsive\"\n *ngIf=\"signedUpLastThirtyDays?.length\">\n <p-table class=\"table\"\n #dt\n [value]=\"signedUpLastThirtyDays\"\n [paginator]=\"true\"\n [rows]=\"PAGE_SIZE\"\n [totalRecords]=\"signedUpLastThirtyDays.length\"\n [lazy]=\"true\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th scope=\"true\">{{ 'Crm.Summary.Owner' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactName' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactEmail' | transloco }}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\"\n let-signUp>\n <tr>\n <td data-head=\"Owner\">\n {{ signUp.owner?.first_name }} {{ signUp.owner?.last_name }}\n </td>\n <td data-head=\"Contact Name\">\n {{ signUp.contact_name }}\n </td>\n <td data-head=\"Contact Email\">\n {{ signUp.contact_email }}\n </td>\n </tr>\n </ng-template>\n </p-table>\n <span class=\"total-records-count\">{{ 'Label.Total' | transloco }}: {{ signedUpLastThirtyDays.length }}</span>\n </div>\n <div *ngIf=\"signedUpLastThirtyDays?.length === 0\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Crm.Summary.NoInsightMessage' | transloco\"> </pw-no-data>\n </div>\n </div>\n <!-- Active Opportunities -->\n <div class=\"col-12 col-md-6 mb-3 analytics\">\n <h5 class=\"accordion-heading\">Active Opportunities</h5>\n <div class=\"w-100 text-center mt-3\">\n <ng-template [ngIf]=\"!activeOpportunitiesLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </ng-template>\n </div>\n <div class=\"primeng-datatable-container table-responsive\"\n *ngIf=\"activeOpportunities?.length\">\n <p-table class=\"table\"\n #dt\n [value]=\"activeOpportunities\"\n [paginator]=\"true\"\n [rows]=\"PAGE_SIZE\"\n\n [totalRecords]=\"activeOpportunities.length\"\n [lazy]=\"true\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th scope=\"true\">{{ 'Crm.Summary.Title' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactName' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.Account' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.OneTimeAmount' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.WinChance' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.MonthlyAmount' | transloco }}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\"\n let-opportunities>\n <tr>\n <td data-head=\"Title\">\n {{ opportunities.title }}\n </td>\n <td data-head=\"Contact Name\">\n {{ opportunities.crm_contact?.first_name }}\n {{ opportunities.crm_contact?.last_name }}\n </td>\n <td data-head=\"Account\">\n {{ opportunities.crm_account?.name }}\n </td>\n <td data-head=\"One Time Amount\">\n {{ opportunities.one_time_amount / 100 | currency }}\n </td>\n <td data-head=\"Monthly Amount\">\n {{ opportunities.monthly_amount / 100 | currency }}\n </td>\n <td data-head=\"Win Chance\">\n {{ opportunities.win_chances | percent }}\n </td>\n </tr>\n </ng-template>\n </p-table>\n <span class=\"total-records-count\">{{ 'Label.Total' | transloco }}: {{ activeOpportunities.length }}</span>\n </div>\n <div *ngIf=\"activeOpportunities?.length === 0\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Crm.Summary.NoInsightMessage' | transloco\"> </pw-no-data>\n </div>\n </div>\n <!-- Accounts at risk -->\n <div class=\"col-12 col-md-6 mb-3 analytics\">\n <h5 class=\"accordion-heading\">Accounts at Risk</h5>\n <div class=\"w-100 text-center mt-3\">\n <ng-template [ngIf]=\"!accountAtRiskDetailsLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </ng-template>\n </div>\n <div class=\"primeng-datatable-container table-responsive\"\n *ngIf=\"accountAtRisk?.length\">\n <p-table class=\"table\"\n #dt\n [value]=\"accountAtRisk\"\n [paginator]=\"true\"\n [rows]=\"PAGE_SIZE\"\n\n [totalRecords]=\"accountAtRisk.length\"\n [lazy]=\"true\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th scope=\"true\">{{ 'Crm.Summary.Owner' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactName' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.Organisation' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactEmail' | transloco }}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\"\n let-account>\n <tr>\n <td data-head=\"Owner\">\n {{ account.owner?.first_name }} {{ account.owner?.last_name }}\n </td>\n <td data-head=\"Contact Name\">\n {{ account.contact_name }}\n </td>\n <td data-head=\"Organisation\">\n {{ account.name }}\n </td>\n <td data-head=\"Contact Email\">\n {{ account.contact_email }}\n </td>\n </tr>\n </ng-template>\n </p-table>\n <span class=\"total-records-count\">{{ 'Label.Total' | transloco }}: {{ accountAtRisk.length }}</span>\n </div>\n <div *ngIf=\"accountAtRisk?.length === 0\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Crm.Summary.NoInsightMessage' | transloco\"> </pw-no-data>\n </div>\n </div>\n <!-- Contract renewal -->\n <div class=\"col-12 col-md-6 mb-3 analytics\">\n <h5 class=\"accordion-heading\">Contract Renewal</h5>\n <div class=\"w-100 text-center mt-3\">\n <ng-template [ngIf]=\"!contactRenewalLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </ng-template>\n </div>\n <div class=\"primeng-datatable-container table-responsive\"\n *ngIf=\"ContractRenewal?.length\">\n <p-table class=\"table\"\n #dt\n [value]=\"ContractRenewal\"\n [paginator]=\"true\"\n [rows]=\"PAGE_SIZE\"\n\n [totalRecords]=\"ContractRenewal.length\"\n [lazy]=\"true\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th scope=\"true\">{{ 'Crm.Summary.Owner' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactName' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.Organisation' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactEmail' | transloco }}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\"\n let-account>\n <tr>\n <td data-head=\"Owner\">\n {{ account.owner?.first_name }} {{ account.owner?.last_name }}\n </td>\n <td data-head=\"Contact Name\">\n {{ account.contact_name }}\n </td>\n <td data-head=\"Organisation\">\n {{ account.name }}\n </td>\n <td data-head=\"Contact Email\">\n {{ account.contact_email }}\n </td>\n </tr>\n </ng-template>\n </p-table>\n <span class=\"total-records-count\">{{ 'Label.Total' | transloco }}: {{ ContractRenewal.length }}</span>\n </div>\n <div *ngIf=\"ContractRenewal?.length === 0\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Crm.Summary.NoInsightMessage' | transloco\"> </pw-no-data>\n </div>\n </div>\n <!-- Credit Card Expiring -->\n <div class=\"col-12 col-md-6 mb-3 analytics\">\n <h5 class=\"accordion-heading\">Credit Card Expiring</h5>\n <div class=\"w-100 text-center mt-3\">\n <ng-template [ngIf]=\"!creditCardExpiringDetailsLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </ng-template>\n </div>\n <div class=\"primeng-datatable-container table-responsive\"\n *ngIf=\"creditCardExpiring?.length\">\n <p-table class=\"table\"\n #dt\n [value]=\"creditCardExpiring\"\n [paginator]=\"true\"\n [rows]=\"PAGE_SIZE\"\n\n [totalRecords]=\"creditCardExpiring.length\"\n [lazy]=\"true\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th scope=\"true\">{{ 'Crm.Summary.Owner' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactName' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.Organisation' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactEmail' | transloco }}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\"\n let-account>\n <tr>\n <td data-head=\"Owner\">\n {{ account.owner?.first_name }} {{ account.owner?.last_name }}\n </td>\n <td data-head=\"Contact Name\">\n {{ account.contact_name }}\n </td>\n <td data-head=\"Organisation\">\n {{ account.name }}\n </td>\n <td data-head=\"Contact Email\">\n {{ account.contact_email }}\n </td>\n </tr>\n </ng-template>\n </p-table>\n <span class=\"total-records-count\">{{ 'Label.Total' | transloco }}: {{ creditCardExpiring.length }}</span>\n </div>\n <div *ngIf=\"creditCardExpiring?.length === 0\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Crm.Summary.NoInsightMessage' | transloco\"> </pw-no-data>\n </div>\n </div>\n <!-- Magic Moment -->\n <div class=\"col-12 col-md-6 mb-3 analytics\">\n <h5 class=\"accordion-heading\">Magic Moment</h5>\n <div class=\"w-100 text-center mt-3\">\n <ng-template [ngIf]=\"!magicMomentLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </ng-template>\n </div>\n <div class=\"primeng-datatable-container table-responsive\"\n *ngIf=\"magicMoment?.length\">\n <p-table class=\"table\"\n #dt\n [value]=\"magicMoment\"\n [paginator]=\"true\"\n [rows]=\"PAGE_SIZE\"\n\n [totalRecords]=\"magicMoment.length\"\n [lazy]=\"true\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th scope=\"true\">{{ 'Crm.Summary.Owner' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactName' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.Organisation' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactEmail' | transloco }}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\"\n let-account>\n <tr>\n <td data-head=\"Owner\">\n {{ account.owner?.first_name }} {{ account.owner?.last_name }}\n </td>\n <td data-head=\"Contact Name\">\n {{ account.contact_name }}\n </td>\n <td data-head=\"Organisation\">\n {{ account.name }}\n </td>\n <td data-head=\"Contact Email\">\n {{ account.contact_email }}\n </td>\n </tr>\n </ng-template>\n </p-table>\n <span class=\"total-records-count\">{{ 'Label.Total' | transloco }}: {{ magicMoment.length }}</span>\n </div>\n <div *ngIf=\"magicMoment?.length === 0\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Crm.Summary.NoInsightMessage' | transloco\"> </pw-no-data>\n </div>\n </div>\n </ng-container>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.RbacAllowDirective, selector: "[rbacAllow]", inputs: ["rbacAllow"] }, { kind: "directive", type: i4.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i5.ProgressSpinner, selector: "p-progressSpinner", inputs: ["styleClass", "style", "strokeWidth", "fill", "animationDuration", "ariaLabel"] }, { kind: "component", type: i6.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll", "virtualRowHeight"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "component", type: i7.NoDataComponent, selector: "pw-no-data", inputs: ["message", "description", "withImage"] }, { kind: "pipe", type: i2.PercentPipe, name: "percent" }, { kind: "pipe", type: i2.CurrencyPipe, name: "currency" }, { kind: "pipe", type: i8.TranslocoPipe, name: "transloco" }] }); }
141
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SmartCrmSummaryOthersComponent, deps: [{ token: i1.CrmService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
142
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: SmartCrmSummaryOthersComponent, selector: "pw-smart-crm-summary-others", usesInheritance: true, ngImport: i0, template: "<div class=\"row\">\n <ng-container class=\"mt-5\"\n *rbacAllow=\"'Pages.Beta'\">\n <!-- Signed up last 30 days -->\n <div class=\"col-12 col-md-6 mb-3 analytics\">\n <h5 class=\"accordion-heading\">Signed up Last 30 Days</h5>\n <div class=\"w-100 text-center mt-3\">\n <ng-template [ngIf]=\"!signUpLastThirtyDaysLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </ng-template>\n </div>\n <div class=\"primeng-datatable-container table-responsive\"\n *ngIf=\"signedUpLastThirtyDays?.length\">\n <p-table class=\"table\"\n #dt\n [value]=\"signedUpLastThirtyDays\"\n [paginator]=\"true\"\n [rows]=\"PAGE_SIZE\"\n [totalRecords]=\"signedUpLastThirtyDays.length\"\n [lazy]=\"true\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th scope=\"true\">{{ 'Crm.Summary.Owner' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactName' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactEmail' | transloco }}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\"\n let-signUp>\n <tr>\n <td data-head=\"Owner\">\n {{ signUp.owner?.first_name }} {{ signUp.owner?.last_name }}\n </td>\n <td data-head=\"Contact Name\">\n {{ signUp.contact_name }}\n </td>\n <td data-head=\"Contact Email\">\n {{ signUp.contact_email }}\n </td>\n </tr>\n </ng-template>\n </p-table>\n <span class=\"total-records-count\">{{ 'Label.Total' | transloco }}: {{ signedUpLastThirtyDays.length }}</span>\n </div>\n <div *ngIf=\"signedUpLastThirtyDays?.length === 0\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Crm.Summary.NoInsightMessage' | transloco\"> </pw-no-data>\n </div>\n </div>\n <!-- Active Opportunities -->\n <div class=\"col-12 col-md-6 mb-3 analytics\">\n <h5 class=\"accordion-heading\">Active Opportunities</h5>\n <div class=\"w-100 text-center mt-3\">\n <ng-template [ngIf]=\"!activeOpportunitiesLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </ng-template>\n </div>\n <div class=\"primeng-datatable-container table-responsive\"\n *ngIf=\"activeOpportunities?.length\">\n <p-table class=\"table\"\n #dt\n [value]=\"activeOpportunities\"\n [paginator]=\"true\"\n [rows]=\"PAGE_SIZE\"\n\n [totalRecords]=\"activeOpportunities.length\"\n [lazy]=\"true\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th scope=\"true\">{{ 'Crm.Summary.Title' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactName' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.Account' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.OneTimeAmount' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.WinChance' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.MonthlyAmount' | transloco }}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\"\n let-opportunities>\n <tr>\n <td data-head=\"Title\">\n {{ opportunities.title }}\n </td>\n <td data-head=\"Contact Name\">\n {{ opportunities.crm_contact?.first_name }}\n {{ opportunities.crm_contact?.last_name }}\n </td>\n <td data-head=\"Account\">\n {{ opportunities.crm_account?.name }}\n </td>\n <td data-head=\"One Time Amount\">\n {{ opportunities.one_time_amount / 100 | currency }}\n </td>\n <td data-head=\"Monthly Amount\">\n {{ opportunities.monthly_amount / 100 | currency }}\n </td>\n <td data-head=\"Win Chance\">\n {{ opportunities.win_chances | percent }}\n </td>\n </tr>\n </ng-template>\n </p-table>\n <span class=\"total-records-count\">{{ 'Label.Total' | transloco }}: {{ activeOpportunities.length }}</span>\n </div>\n <div *ngIf=\"activeOpportunities?.length === 0\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Crm.Summary.NoInsightMessage' | transloco\"> </pw-no-data>\n </div>\n </div>\n <!-- Accounts at risk -->\n <div class=\"col-12 col-md-6 mb-3 analytics\">\n <h5 class=\"accordion-heading\">Accounts at Risk</h5>\n <div class=\"w-100 text-center mt-3\">\n <ng-template [ngIf]=\"!accountAtRiskDetailsLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </ng-template>\n </div>\n <div class=\"primeng-datatable-container table-responsive\"\n *ngIf=\"accountAtRisk?.length\">\n <p-table class=\"table\"\n #dt\n [value]=\"accountAtRisk\"\n [paginator]=\"true\"\n [rows]=\"PAGE_SIZE\"\n\n [totalRecords]=\"accountAtRisk.length\"\n [lazy]=\"true\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th scope=\"true\">{{ 'Crm.Summary.Owner' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactName' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.Organisation' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactEmail' | transloco }}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\"\n let-account>\n <tr>\n <td data-head=\"Owner\">\n {{ account.owner?.first_name }} {{ account.owner?.last_name }}\n </td>\n <td data-head=\"Contact Name\">\n {{ account.contact_name }}\n </td>\n <td data-head=\"Organisation\">\n {{ account.name }}\n </td>\n <td data-head=\"Contact Email\">\n {{ account.contact_email }}\n </td>\n </tr>\n </ng-template>\n </p-table>\n <span class=\"total-records-count\">{{ 'Label.Total' | transloco }}: {{ accountAtRisk.length }}</span>\n </div>\n <div *ngIf=\"accountAtRisk?.length === 0\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Crm.Summary.NoInsightMessage' | transloco\"> </pw-no-data>\n </div>\n </div>\n <!-- Contract renewal -->\n <div class=\"col-12 col-md-6 mb-3 analytics\">\n <h5 class=\"accordion-heading\">Contract Renewal</h5>\n <div class=\"w-100 text-center mt-3\">\n <ng-template [ngIf]=\"!contactRenewalLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </ng-template>\n </div>\n <div class=\"primeng-datatable-container table-responsive\"\n *ngIf=\"ContractRenewal?.length\">\n <p-table class=\"table\"\n #dt\n [value]=\"ContractRenewal\"\n [paginator]=\"true\"\n [rows]=\"PAGE_SIZE\"\n\n [totalRecords]=\"ContractRenewal.length\"\n [lazy]=\"true\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th scope=\"true\">{{ 'Crm.Summary.Owner' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactName' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.Organisation' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactEmail' | transloco }}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\"\n let-account>\n <tr>\n <td data-head=\"Owner\">\n {{ account.owner?.first_name }} {{ account.owner?.last_name }}\n </td>\n <td data-head=\"Contact Name\">\n {{ account.contact_name }}\n </td>\n <td data-head=\"Organisation\">\n {{ account.name }}\n </td>\n <td data-head=\"Contact Email\">\n {{ account.contact_email }}\n </td>\n </tr>\n </ng-template>\n </p-table>\n <span class=\"total-records-count\">{{ 'Label.Total' | transloco }}: {{ ContractRenewal.length }}</span>\n </div>\n <div *ngIf=\"ContractRenewal?.length === 0\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Crm.Summary.NoInsightMessage' | transloco\"> </pw-no-data>\n </div>\n </div>\n <!-- Credit Card Expiring -->\n <div class=\"col-12 col-md-6 mb-3 analytics\">\n <h5 class=\"accordion-heading\">Credit Card Expiring</h5>\n <div class=\"w-100 text-center mt-3\">\n <ng-template [ngIf]=\"!creditCardExpiringDetailsLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </ng-template>\n </div>\n <div class=\"primeng-datatable-container table-responsive\"\n *ngIf=\"creditCardExpiring?.length\">\n <p-table class=\"table\"\n #dt\n [value]=\"creditCardExpiring\"\n [paginator]=\"true\"\n [rows]=\"PAGE_SIZE\"\n\n [totalRecords]=\"creditCardExpiring.length\"\n [lazy]=\"true\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th scope=\"true\">{{ 'Crm.Summary.Owner' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactName' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.Organisation' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactEmail' | transloco }}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\"\n let-account>\n <tr>\n <td data-head=\"Owner\">\n {{ account.owner?.first_name }} {{ account.owner?.last_name }}\n </td>\n <td data-head=\"Contact Name\">\n {{ account.contact_name }}\n </td>\n <td data-head=\"Organisation\">\n {{ account.name }}\n </td>\n <td data-head=\"Contact Email\">\n {{ account.contact_email }}\n </td>\n </tr>\n </ng-template>\n </p-table>\n <span class=\"total-records-count\">{{ 'Label.Total' | transloco }}: {{ creditCardExpiring.length }}</span>\n </div>\n <div *ngIf=\"creditCardExpiring?.length === 0\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Crm.Summary.NoInsightMessage' | transloco\"> </pw-no-data>\n </div>\n </div>\n <!-- Magic Moment -->\n <div class=\"col-12 col-md-6 mb-3 analytics\">\n <h5 class=\"accordion-heading\">Magic Moment</h5>\n <div class=\"w-100 text-center mt-3\">\n <ng-template [ngIf]=\"!magicMomentLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </ng-template>\n </div>\n <div class=\"primeng-datatable-container table-responsive\"\n *ngIf=\"magicMoment?.length\">\n <p-table class=\"table\"\n #dt\n [value]=\"magicMoment\"\n [paginator]=\"true\"\n [rows]=\"PAGE_SIZE\"\n\n [totalRecords]=\"magicMoment.length\"\n [lazy]=\"true\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th scope=\"true\">{{ 'Crm.Summary.Owner' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactName' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.Organisation' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactEmail' | transloco }}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\"\n let-account>\n <tr>\n <td data-head=\"Owner\">\n {{ account.owner?.first_name }} {{ account.owner?.last_name }}\n </td>\n <td data-head=\"Contact Name\">\n {{ account.contact_name }}\n </td>\n <td data-head=\"Organisation\">\n {{ account.name }}\n </td>\n <td data-head=\"Contact Email\">\n {{ account.contact_email }}\n </td>\n </tr>\n </ng-template>\n </p-table>\n <span class=\"total-records-count\">{{ 'Label.Total' | transloco }}: {{ magicMoment.length }}</span>\n </div>\n <div *ngIf=\"magicMoment?.length === 0\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Crm.Summary.NoInsightMessage' | transloco\"> </pw-no-data>\n </div>\n </div>\n </ng-container>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.RbacAllowDirective, selector: "[rbacAllow]", inputs: ["rbacAllow"] }, { kind: "directive", type: i4.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i5.ProgressSpinner, selector: "p-progressSpinner", inputs: ["styleClass", "style", "strokeWidth", "fill", "animationDuration", "ariaLabel"] }, { kind: "component", type: i6.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll", "virtualRowHeight"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "component", type: i7.NoDataComponent, selector: "pw-no-data", inputs: ["message", "description", "withImage"] }, { kind: "pipe", type: i2.PercentPipe, name: "percent" }, { kind: "pipe", type: i2.CurrencyPipe, name: "currency" }, { kind: "pipe", type: i8.TranslocoPipe, name: "transloco" }] }); }
143
143
  }
144
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.6", ngImport: i0, type: SmartCrmSummaryOthersComponent, decorators: [{
144
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SmartCrmSummaryOthersComponent, decorators: [{
145
145
  type: Component,
146
146
  args: [{ selector: 'pw-smart-crm-summary-others', template: "<div class=\"row\">\n <ng-container class=\"mt-5\"\n *rbacAllow=\"'Pages.Beta'\">\n <!-- Signed up last 30 days -->\n <div class=\"col-12 col-md-6 mb-3 analytics\">\n <h5 class=\"accordion-heading\">Signed up Last 30 Days</h5>\n <div class=\"w-100 text-center mt-3\">\n <ng-template [ngIf]=\"!signUpLastThirtyDaysLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </ng-template>\n </div>\n <div class=\"primeng-datatable-container table-responsive\"\n *ngIf=\"signedUpLastThirtyDays?.length\">\n <p-table class=\"table\"\n #dt\n [value]=\"signedUpLastThirtyDays\"\n [paginator]=\"true\"\n [rows]=\"PAGE_SIZE\"\n [totalRecords]=\"signedUpLastThirtyDays.length\"\n [lazy]=\"true\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th scope=\"true\">{{ 'Crm.Summary.Owner' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactName' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactEmail' | transloco }}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\"\n let-signUp>\n <tr>\n <td data-head=\"Owner\">\n {{ signUp.owner?.first_name }} {{ signUp.owner?.last_name }}\n </td>\n <td data-head=\"Contact Name\">\n {{ signUp.contact_name }}\n </td>\n <td data-head=\"Contact Email\">\n {{ signUp.contact_email }}\n </td>\n </tr>\n </ng-template>\n </p-table>\n <span class=\"total-records-count\">{{ 'Label.Total' | transloco }}: {{ signedUpLastThirtyDays.length }}</span>\n </div>\n <div *ngIf=\"signedUpLastThirtyDays?.length === 0\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Crm.Summary.NoInsightMessage' | transloco\"> </pw-no-data>\n </div>\n </div>\n <!-- Active Opportunities -->\n <div class=\"col-12 col-md-6 mb-3 analytics\">\n <h5 class=\"accordion-heading\">Active Opportunities</h5>\n <div class=\"w-100 text-center mt-3\">\n <ng-template [ngIf]=\"!activeOpportunitiesLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </ng-template>\n </div>\n <div class=\"primeng-datatable-container table-responsive\"\n *ngIf=\"activeOpportunities?.length\">\n <p-table class=\"table\"\n #dt\n [value]=\"activeOpportunities\"\n [paginator]=\"true\"\n [rows]=\"PAGE_SIZE\"\n\n [totalRecords]=\"activeOpportunities.length\"\n [lazy]=\"true\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th scope=\"true\">{{ 'Crm.Summary.Title' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactName' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.Account' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.OneTimeAmount' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.WinChance' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.MonthlyAmount' | transloco }}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\"\n let-opportunities>\n <tr>\n <td data-head=\"Title\">\n {{ opportunities.title }}\n </td>\n <td data-head=\"Contact Name\">\n {{ opportunities.crm_contact?.first_name }}\n {{ opportunities.crm_contact?.last_name }}\n </td>\n <td data-head=\"Account\">\n {{ opportunities.crm_account?.name }}\n </td>\n <td data-head=\"One Time Amount\">\n {{ opportunities.one_time_amount / 100 | currency }}\n </td>\n <td data-head=\"Monthly Amount\">\n {{ opportunities.monthly_amount / 100 | currency }}\n </td>\n <td data-head=\"Win Chance\">\n {{ opportunities.win_chances | percent }}\n </td>\n </tr>\n </ng-template>\n </p-table>\n <span class=\"total-records-count\">{{ 'Label.Total' | transloco }}: {{ activeOpportunities.length }}</span>\n </div>\n <div *ngIf=\"activeOpportunities?.length === 0\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Crm.Summary.NoInsightMessage' | transloco\"> </pw-no-data>\n </div>\n </div>\n <!-- Accounts at risk -->\n <div class=\"col-12 col-md-6 mb-3 analytics\">\n <h5 class=\"accordion-heading\">Accounts at Risk</h5>\n <div class=\"w-100 text-center mt-3\">\n <ng-template [ngIf]=\"!accountAtRiskDetailsLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </ng-template>\n </div>\n <div class=\"primeng-datatable-container table-responsive\"\n *ngIf=\"accountAtRisk?.length\">\n <p-table class=\"table\"\n #dt\n [value]=\"accountAtRisk\"\n [paginator]=\"true\"\n [rows]=\"PAGE_SIZE\"\n\n [totalRecords]=\"accountAtRisk.length\"\n [lazy]=\"true\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th scope=\"true\">{{ 'Crm.Summary.Owner' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactName' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.Organisation' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactEmail' | transloco }}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\"\n let-account>\n <tr>\n <td data-head=\"Owner\">\n {{ account.owner?.first_name }} {{ account.owner?.last_name }}\n </td>\n <td data-head=\"Contact Name\">\n {{ account.contact_name }}\n </td>\n <td data-head=\"Organisation\">\n {{ account.name }}\n </td>\n <td data-head=\"Contact Email\">\n {{ account.contact_email }}\n </td>\n </tr>\n </ng-template>\n </p-table>\n <span class=\"total-records-count\">{{ 'Label.Total' | transloco }}: {{ accountAtRisk.length }}</span>\n </div>\n <div *ngIf=\"accountAtRisk?.length === 0\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Crm.Summary.NoInsightMessage' | transloco\"> </pw-no-data>\n </div>\n </div>\n <!-- Contract renewal -->\n <div class=\"col-12 col-md-6 mb-3 analytics\">\n <h5 class=\"accordion-heading\">Contract Renewal</h5>\n <div class=\"w-100 text-center mt-3\">\n <ng-template [ngIf]=\"!contactRenewalLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </ng-template>\n </div>\n <div class=\"primeng-datatable-container table-responsive\"\n *ngIf=\"ContractRenewal?.length\">\n <p-table class=\"table\"\n #dt\n [value]=\"ContractRenewal\"\n [paginator]=\"true\"\n [rows]=\"PAGE_SIZE\"\n\n [totalRecords]=\"ContractRenewal.length\"\n [lazy]=\"true\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th scope=\"true\">{{ 'Crm.Summary.Owner' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactName' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.Organisation' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactEmail' | transloco }}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\"\n let-account>\n <tr>\n <td data-head=\"Owner\">\n {{ account.owner?.first_name }} {{ account.owner?.last_name }}\n </td>\n <td data-head=\"Contact Name\">\n {{ account.contact_name }}\n </td>\n <td data-head=\"Organisation\">\n {{ account.name }}\n </td>\n <td data-head=\"Contact Email\">\n {{ account.contact_email }}\n </td>\n </tr>\n </ng-template>\n </p-table>\n <span class=\"total-records-count\">{{ 'Label.Total' | transloco }}: {{ ContractRenewal.length }}</span>\n </div>\n <div *ngIf=\"ContractRenewal?.length === 0\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Crm.Summary.NoInsightMessage' | transloco\"> </pw-no-data>\n </div>\n </div>\n <!-- Credit Card Expiring -->\n <div class=\"col-12 col-md-6 mb-3 analytics\">\n <h5 class=\"accordion-heading\">Credit Card Expiring</h5>\n <div class=\"w-100 text-center mt-3\">\n <ng-template [ngIf]=\"!creditCardExpiringDetailsLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </ng-template>\n </div>\n <div class=\"primeng-datatable-container table-responsive\"\n *ngIf=\"creditCardExpiring?.length\">\n <p-table class=\"table\"\n #dt\n [value]=\"creditCardExpiring\"\n [paginator]=\"true\"\n [rows]=\"PAGE_SIZE\"\n\n [totalRecords]=\"creditCardExpiring.length\"\n [lazy]=\"true\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th scope=\"true\">{{ 'Crm.Summary.Owner' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactName' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.Organisation' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactEmail' | transloco }}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\"\n let-account>\n <tr>\n <td data-head=\"Owner\">\n {{ account.owner?.first_name }} {{ account.owner?.last_name }}\n </td>\n <td data-head=\"Contact Name\">\n {{ account.contact_name }}\n </td>\n <td data-head=\"Organisation\">\n {{ account.name }}\n </td>\n <td data-head=\"Contact Email\">\n {{ account.contact_email }}\n </td>\n </tr>\n </ng-template>\n </p-table>\n <span class=\"total-records-count\">{{ 'Label.Total' | transloco }}: {{ creditCardExpiring.length }}</span>\n </div>\n <div *ngIf=\"creditCardExpiring?.length === 0\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Crm.Summary.NoInsightMessage' | transloco\"> </pw-no-data>\n </div>\n </div>\n <!-- Magic Moment -->\n <div class=\"col-12 col-md-6 mb-3 analytics\">\n <h5 class=\"accordion-heading\">Magic Moment</h5>\n <div class=\"w-100 text-center mt-3\">\n <ng-template [ngIf]=\"!magicMomentLoaded\">\n <p-progressSpinner strokeWidth=\"2\"> </p-progressSpinner>\n </ng-template>\n </div>\n <div class=\"primeng-datatable-container table-responsive\"\n *ngIf=\"magicMoment?.length\">\n <p-table class=\"table\"\n #dt\n [value]=\"magicMoment\"\n [paginator]=\"true\"\n [rows]=\"PAGE_SIZE\"\n\n [totalRecords]=\"magicMoment.length\"\n [lazy]=\"true\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th scope=\"true\">{{ 'Crm.Summary.Owner' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactName' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.Organisation' | transloco }}</th>\n <th scope=\"true\">{{ 'Crm.Summary.ContactEmail' | transloco }}</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\"\n let-account>\n <tr>\n <td data-head=\"Owner\">\n {{ account.owner?.first_name }} {{ account.owner?.last_name }}\n </td>\n <td data-head=\"Contact Name\">\n {{ account.contact_name }}\n </td>\n <td data-head=\"Organisation\">\n {{ account.name }}\n </td>\n <td data-head=\"Contact Email\">\n {{ account.contact_email }}\n </td>\n </tr>\n </ng-template>\n </p-table>\n <span class=\"total-records-count\">{{ 'Label.Total' | transloco }}: {{ magicMoment.length }}</span>\n </div>\n <div *ngIf=\"magicMoment?.length === 0\">\n <pw-no-data [withImage]=\"true\" [message]=\"'Crm.Summary.NoInsightMessage' | transloco\"> </pw-no-data>\n </div>\n </div>\n </ng-container>\n</div>\n" }]
147
147
  }], ctorParameters: () => [{ type: i1.CrmService }, { type: i0.Injector }] });
148
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtY3JtLXN1bW1hcnktb3RoZXJzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc21hcnQtY3JtL3NyYy9saWIvcHJpdmF0ZS9jb21wb25lbnRzL3NtYXJ0LWNybS1zdW1tYXJ5L3NtYXJ0LWNybS1zdW1tYXJ5LW90aGVycy9zbWFydC1jcm0tc3VtbWFyeS1vdGhlcnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zbWFydC1jcm0vc3JjL2xpYi9wcml2YXRlL2NvbXBvbmVudHMvc21hcnQtY3JtLXN1bW1hcnkvc21hcnQtY3JtLXN1bW1hcnktb3RoZXJzL3NtYXJ0LWNybS1zdW1tYXJ5LW90aGVycy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRXhELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7Ozs7Ozs7O0FBTWhFLE1BQU0sT0FBTyw4QkFBK0IsU0FBUSxnQkFBZ0I7SUE2QmhFLFlBQ1ksVUFBc0IsRUFDOUIsUUFBa0I7UUFFbEIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBSFIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQWZsQywrQkFBMEIsR0FBRyxLQUFLLENBQUM7UUFFbkMsOEJBQXlCLEdBQUcsS0FBSyxDQUFDO1FBRWxDLCtCQUEwQixHQUFHLEtBQUssQ0FBQztRQUVuQyx5QkFBb0IsR0FBRyxLQUFLLENBQUM7UUFFN0Isb0NBQStCLEdBQUcsS0FBSyxDQUFDO1FBRXhDLHNCQUFpQixHQUFHLEtBQUssQ0FBQztJQVMxQixDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksQ0FBQyxtQkFBbUIsRUFB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Q0FBQyxDQUFDO2FBQ0QsR0FBRyxDQUFDLEdBQUcsRUFBRTtZQUNOLElBQUksQ0FBQywrQkFBK0IsR0FBRyxJQUFJLENBQUM7UUFDaEQsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDO0lBQ0Qsb0NBQW9DO0lBQzVCLGNBQWM7UUFDbEIsSUFBSSxDQUFDLFVBQVU7YUFDVixlQUFlLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxFQUFFLEVBQUUsY0FBYyxDQUFDO2FBQ3RELFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUNsQixJQUFJLE9BQU8sUUFBUSxLQUFLLFFBQVEsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDckUsSUFBSSxDQUFDLFdBQVcsR0FBRyxFQUFFLENBQUM7WUFDMUIsQ0FBQzs7Z0JBQU0sSUFBSSxDQUFDLFdBQVcsR0FBRyxRQUFRLENBQUM7UUFDdkMsQ0FBQyxDQUFDO2FBQ0QsR0FBRyxDQUFDLEdBQUcsRUFBRTtZQUNOLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7UUFDbEMsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDO0lBRVEsV0FBVztRQUNoQixLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDeEIsQ0FBQzs4R0F0SlEsOEJBQThCO2tHQUE5Qiw4QkFBOEIsMEZDVDNDLDZzWkFxVEE7OzJGRDVTYSw4QkFBOEI7a0JBSjFDLFNBQVM7K0JBQ0ksNkJBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3RvciwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENybVNlcnZpY2UgfSBmcm9tICdAcG9zaXdpc2Uvc21hcnQtY3JtLXNoYXJlZCc7XG5cbmltcG9ydCB7IEFwcEJhc2VDb21wb25lbnQgfSBmcm9tICdAcG9zaXdpc2UvYXBwLWJhc2UtY29tcG9uZW50JztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiwgVXNlcixhY3RpdmVPcHBvcnR1bml0aWVzLHNpZ25lZFVwTGFzdFRoaXJ0eURheXN9IGZyb20gJ0Bwb3Npd2lzZS9jb21tb24tdXRpbGl0aWVzJztcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAncHctc21hcnQtY3JtLXN1bW1hcnktb3RoZXJzJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc21hcnQtY3JtLXN1bW1hcnktb3RoZXJzLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBTbWFydENybVN1bW1hcnlPdGhlcnNDb21wb25lbnQgZXh0ZW5kcyBBcHBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIHNpZ25lZFVwTGFzdFRoaXJ0eURheXM6c2lnbmVkVXBMYXN0VGhpcnR5RGF5c1tdO1xuXG4gICAgYWN0aXZlT3Bwb3J0dW5pdGllczphY3RpdmVPcHBvcnR1bml0aWVzW107XG5cbiAgICBhY2NvdW50QXRSaXNrOltdO1xuXG4gICAgQ29udHJhY3RSZW5ld2FsOltdO1xuXG4gICAgY3JlZGl0Q2FyZEV4cGlyaW5nOltdO1xuXG4gICAgbWFnaWNNb21lbnQ6W107XG5cbiAgICB1c2VyOiBVc2VyO1xuXG4gICAgc2lnblVwTGFzdFRoaXJ0eURheXNMb2FkZWQgPSBmYWxzZTtcblxuICAgIGFjdGl2ZU9wcG9ydHVuaXRpZXNMb2FkZWQgPSBmYWxzZTtcblxuICAgIGFjY291bnRBdFJpc2tEZXRhaWxzTG9hZGVkID0gZmFsc2U7XG5cbiAgICBjb250YWN0UmVuZXdhbExvYWRlZCA9IGZhbHNlO1xuXG4gICAgY3JlZGl0Q2FyZEV4cGlyaW5nRGV0YWlsc0xvYWRlZCA9IGZhbHNlO1xuXG4gICAgbWFnaWNNb21lbnRMb2FkZWQgPSBmYWxzZTtcblxuICAgIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgY3JtU2VydmljZTogQ3JtU2VydmljZSxcbiAgICAgICAgaW5qZWN0b3I6IEluamVjdG9yXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGluamVjdG9yKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5nZXRVc2VyU3Vic2NyaXB0aW9uKCkuc3Vic2NyaWJlKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gcmVzcG9uc2U7XG4gICAgICAgICAgICBpZiAodGhpcy5zdWJzY3JpcHRpb24/LmlkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5nZXRVc2VySW5mbygpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFVzZXJJbmZvKCkge1xuICAgICAgICB0aGlzLnVzZXJTdG9yZSgpLnN1YnNjcmliZSh1c2VyID0+IHtcbiAgICAgICAgICAgIGlmICh1c2VyKSB7XG4gICAgICAgICAgICAgICAgdGhpcy51c2VyID0gdXNlcjtcbiAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGVybWlzc2lvblNlcnZpY2UuaXNHcmFudGVkKCdQYWdlcy5CZXRhJykgfHxcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wZXJtaXNzaW9uU2VydmljZS5pc1N1cGVyQWRtaW4oKVxuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmdldFNpZ25lZFVwTGFzdFRoaXJ0eURheXMoKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5nZXRBY3RpdmVPcHBvcnR1bml0aWVzKCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZ2V0QWNjb3VudEF0Umlza0RldGFpbHMoKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5nZXRDb250YWN0UmVuZXdhbCgpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmdldENyZWRpdENhcmRFeHBpcmluZ0RldGFpbHMoKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5nZXRNYWdpY01vbWVudCgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqIEZ1bmN0aW9uIHRvIGNhbGwgc2lnbmVkIHVwIGxhc3QgMzAgZGF5cyBkZXRhaWxzICovXG4gICAgcHJpdmF0ZSBnZXRTaWduZWRVcExhc3RUaGlydHlEYXlzKCkge1xuICAgICAgICB0aGlzLmNybVNlcnZpY2VcbiAgICAgICAgICAgIC5nZXRDcm1BbmFseXRpY3ModGhpcy5zdWJzY3JpcHRpb24/LmlkLCAnYWNjb3VudHNfc2lnbmVkX3VwX2xhc3RfMzBfZGF5cycpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHJlc3BvbnNlID09PSAnb2JqZWN0JyAmJiBPYmplY3Qua2V5cyhyZXNwb25zZSkubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2lnbmVkVXBMYXN0VGhpcnR5RGF5cyA9IFtdO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB0aGlzLnNpZ25lZFVwTGFzdFRoaXJ0eURheXMgPSByZXNwb25zZTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuYWRkKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnNpZ25VcExhc3RUaGlydHlEYXlzTG9hZGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKiBGdW5jdGlvbiB0byBjYWxsIEFjdGl2ZSBPcHBvcnR1bml0aWVzIGRldGFpbHMgKi9cbiAgICBwcml2YXRlIGdldEFjdGl2ZU9wcG9ydHVuaXRpZXMoKSB7XG4gICAgICAgIHRoaXMuY3JtU2VydmljZVxuICAgICAgICAgICAgLmdldENybUFuYWx5dGljcyh0aGlzLnN1YnNjcmlwdGlvbj8uaWQsICdhY2NvdW50c19hY3RpdmVfb3Bwb3J0dW5pdGllcycpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHJlc3BvbnNlID09PSAnb2JqZWN0JyAmJiBPYmplY3Qua2V5cyhyZXNwb25zZSkubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWN0aXZlT3Bwb3J0dW5pdGllcyA9IFtdO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB0aGlzLmFjdGl2ZU9wcG9ydHVuaXRpZXMgPSByZXNwb25zZTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuYWRkKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmFjdGl2ZU9wcG9ydHVuaXRpZXNMb2FkZWQgPSB0cnVlO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqIEZ1bmN0aW9uIHRvIGNhbGwgQWNjb3VudCBBdCBSaXNrIGRldGFpbHMgKi9cbiAgICBwcml2YXRlIGdldEFjY291bnRBdFJpc2tEZXRhaWxzKCkge1xuICAgICAgICB0aGlzLmNybVNlcnZpY2VcbiAgICAgICAgICAgIC5nZXRDcm1BbmFseXRpY3ModGhpcy5zdWJzY3JpcHRpb24/LmlkLCAnYWNjb3VudHNfYWNjb3VudHNfYXRfcmlzaycpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHJlc3BvbnNlID09PSAnb2JqZWN0JyAmJiBPYmplY3Qua2V5cyhyZXNwb25zZSkubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWNjb3VudEF0UmlzayA9IFtdO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB0aGlzLmFjY291bnRBdFJpc2sgPSByZXNwb25zZTtcblxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5hZGQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuYWNjb3VudEF0Umlza0RldGFpbHNMb2FkZWQgPSB0cnVlO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqIEZ1bmN0aW9uIHRvIGNhbGwgQ29udHJhY3QgcmVuZXdhbCBkZXRhaWxzICovXG4gICAgcHJpdmF0ZSBnZXRDb250YWN0UmVuZXdhbCgpIHtcbiAgICAgICAgdGhpcy5jcm1TZXJ2aWNlXG4gICAgICAgICAgICAuZ2V0Q3JtQW5hbHl0aWNzKHRoaXMuc3Vic2NyaXB0aW9uPy5pZCwgJ2FjY291bnRzX2NvbnRyYWN0X3JlbmV3YWwnKVxuICAgICAgICAgICAgLnN1YnNjcmliZShyZXNwb25zZSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiByZXNwb25zZSA9PT0gJ29iamVjdCcgJiYgT2JqZWN0LmtleXMocmVzcG9uc2UpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLkNvbnRyYWN0UmVuZXdhbCA9IFtdO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB0aGlzLkNvbnRyYWN0UmVuZXdhbCA9IHJlc3BvbnNlO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5hZGQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuY29udGFjdFJlbmV3YWxMb2FkZWQgPSB0cnVlO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqIEZ1bmN0aW9uIHRvIGNhbGwgQ3JlZGl0IENhcmQgRXhwaXJpbmcgZGV0YWlscyAqL1xuICAgIHByaXZhdGUgZ2V0Q3JlZGl0Q2FyZEV4cGlyaW5nRGV0YWlscygpIHtcbiAgICAgICAgdGhpcy5jcm1TZXJ2aWNlXG4gICAgICAgICAgICAuZ2V0Q3JtQW5hbHl0aWNzKHRoaXMuc3Vic2NyaXB0aW9uPy5pZCwgJ2NyZWRpdF9jYXJkX2V4cGlyaW5nJylcbiAgICAgICAgICAgIC5zdWJzY3JpYmUocmVzcG9uc2UgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgcmVzcG9uc2UgPT09ICdvYmplY3QnICYmIE9iamVjdC5rZXlzKHJlc3BvbnNlKS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jcmVkaXRDYXJkRXhwaXJpbmcgPSBbXTtcbiAgICAgICAgICAgICAgICB9IGVsc2UgdGhpcy5jcmVkaXRDYXJkRXhwaXJpbmcgPSByZXNwb25zZTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuYWRkKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmNyZWRpdENhcmRFeHBpcmluZ0RldGFpbHNMb2FkZWQgPSB0cnVlO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuICAgIC8qKiBGdW5jdGlvbiB0byBjYWxsIG1hZ2ljIG1vbWVudCAqL1xuICAgIHByaXZhdGUgZ2V0TWFnaWNNb21lbnQoKSB7XG4gICAgICAgIHRoaXMuY3JtU2VydmljZVxuICAgICAgICAgICAgLmdldENybUFuYWx5dGljcyh0aGlzLnN1YnNjcmlwdGlvbj8uaWQsICdtYWdpY19tb21lbnQnKVxuICAgICAgICAgICAgLnN1YnNjcmliZShyZXNwb25zZSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiByZXNwb25zZSA9PT0gJ29iamVjdCcgJiYgT2JqZWN0LmtleXMocmVzcG9uc2UpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm1hZ2ljTW9tZW50ID0gW107XG4gICAgICAgICAgICAgICAgfSBlbHNlIHRoaXMubWFnaWNNb21lbnQgPSByZXNwb25zZTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuYWRkKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLm1hZ2ljTW9tZW50TG9hZGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIG92ZXJyaWRlIG5nT25EZXN0cm95KCkge1xuICAgICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgPG5nLWNvbnRhaW5lciBjbGFzcz1cIm10LTVcIlxuICAgICpyYmFjQWxsb3c9XCInUGFnZXMuQmV0YSdcIj5cbiAgICA8IS0tIFNpZ25lZCB1cCBsYXN0IDMwIGRheXMgLS0+XG4gICAgPGRpdiBjbGFzcz1cImNvbC0xMiBjb2wtbWQtNiBtYi0zIGFuYWx5dGljc1wiPlxuICAgICAgPGg1IGNsYXNzPVwiYWNjb3JkaW9uLWhlYWRpbmdcIj5TaWduZWQgdXAgTGFzdCAzMCBEYXlzPC9oNT5cbiAgICAgIDxkaXYgY2xhc3M9XCJ3LTEwMCB0ZXh0LWNlbnRlciBtdC0zXCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCIhc2lnblVwTGFzdFRoaXJ0eURheXNMb2FkZWRcIj5cbiAgICAgICAgICA8cC1wcm9ncmVzc1NwaW5uZXIgc3Ryb2tlV2lkdGg9XCIyXCI+IDwvcC1wcm9ncmVzc1NwaW5uZXI+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJwcmltZW5nLWRhdGF0YWJsZS1jb250YWluZXIgdGFibGUtcmVzcG9uc2l2ZVwiXG4gICAgICAgICpuZ0lmPVwic2lnbmVkVXBMYXN0VGhpcnR5RGF5cz8ubGVuZ3RoXCI+XG4gICAgICAgIDxwLXRhYmxlIGNsYXNzPVwidGFibGVcIlxuICAgICAgICAgICNkdFxuICAgICAgICAgIFt2YWx1ZV09XCJzaWduZWRVcExhc3RUaGlydHlEYXlzXCJcbiAgICAgICAgICBbcGFnaW5hdG9yXT1cInRydWVcIlxuICAgICAgICAgIFtyb3dzXT1cIlBBR0VfU0laRVwiXG4gICAgICAgICAgW3RvdGFsUmVjb3Jkc109XCJzaWduZWRVcExhc3RUaGlydHlEYXlzLmxlbmd0aFwiXG4gICAgICAgICAgW2xhenldPVwidHJ1ZVwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIj5cbiAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgPHRoIHNjb3BlPVwidHJ1ZVwiPnt7ICdDcm0uU3VtbWFyeS5Pd25lcicgfCB0cmFuc2xvY28gfX08L3RoPlxuICAgICAgICAgICAgICA8dGggc2NvcGU9XCJ0cnVlXCI+e3sgJ0NybS5TdW1tYXJ5LkNvbnRhY3ROYW1lJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cInRydWVcIj57eyAnQ3JtLlN1bW1hcnkuQ29udGFjdEVtYWlsJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImJvZHlcIlxuICAgICAgICAgICAgbGV0LXNpZ25VcD5cbiAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgPHRkIGRhdGEtaGVhZD1cIk93bmVyXCI+XG4gICAgICAgICAgICAgICAge3sgc2lnblVwLm93bmVyPy5maXJzdF9uYW1lIH19IHt7IHNpZ25VcC5vd25lcj8ubGFzdF9uYW1lIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJDb250YWN0IE5hbWVcIj5cbiAgICAgICAgICAgICAgICB7eyBzaWduVXAuY29udGFjdF9uYW1lIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJDb250YWN0IEVtYWlsXCI+XG4gICAgICAgICAgICAgICAge3sgc2lnblVwLmNvbnRhY3RfZW1haWwgfX1cbiAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9wLXRhYmxlPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInRvdGFsLXJlY29yZHMtY291bnRcIj57eyAnTGFiZWwuVG90YWwnIHwgdHJhbnNsb2NvIH19OiB7eyBzaWduZWRVcExhc3RUaGlydHlEYXlzLmxlbmd0aCB9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cInNpZ25lZFVwTGFzdFRoaXJ0eURheXM/Lmxlbmd0aCA9PT0gMFwiPlxuICAgICAgICA8cHctbm8tZGF0YSBbd2l0aEltYWdlXT1cInRydWVcIiBbbWVzc2FnZV09XCInQ3JtLlN1bW1hcnkuTm9JbnNpZ2h0TWVzc2FnZScgfCB0cmFuc2xvY29cIj4gPC9wdy1uby1kYXRhPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPCEtLSBBY3RpdmUgT3Bwb3J0dW5pdGllcyAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIGNvbC1tZC02IG1iLTMgYW5hbHl0aWNzXCI+XG4gICAgICA8aDUgY2xhc3M9XCJhY2NvcmRpb24taGVhZGluZ1wiPkFjdGl2ZSBPcHBvcnR1bml0aWVzPC9oNT5cbiAgICAgIDxkaXYgY2xhc3M9XCJ3LTEwMCB0ZXh0LWNlbnRlciBtdC0zXCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCIhYWN0aXZlT3Bwb3J0dW5pdGllc0xvYWRlZFwiPlxuICAgICAgICAgIDxwLXByb2dyZXNzU3Bpbm5lciBzdHJva2VXaWR0aD1cIjJcIj4gPC9wLXByb2dyZXNzU3Bpbm5lcj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInByaW1lbmctZGF0YXRhYmxlLWNvbnRhaW5lciB0YWJsZS1yZXNwb25zaXZlXCJcbiAgICAgICAgKm5nSWY9XCJhY3RpdmVPcHBvcnR1bml0aWVzPy5sZW5ndGhcIj5cbiAgICAgICAgPHAtdGFibGUgY2xhc3M9XCJ0YWJsZVwiXG4gICAgICAgICAgI2R0XG4gICAgICAgICAgW3ZhbHVlXT1cImFjdGl2ZU9wcG9ydHVuaXRpZXNcIlxuICAgICAgICAgIFtwYWdpbmF0b3JdPVwidHJ1ZVwiXG4gICAgICAgICAgW3Jvd3NdPVwiUEFHRV9TSVpFXCJcblxuICAgICAgICAgIFt0b3RhbFJlY29yZHNdPVwiYWN0aXZlT3Bwb3J0dW5pdGllcy5sZW5ndGhcIlxuICAgICAgICAgIFtsYXp5XT1cInRydWVcIj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaGVhZGVyXCI+XG4gICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cInRydWVcIj57eyAnQ3JtLlN1bW1hcnkuVGl0bGUnIHwgdHJhbnNsb2NvIH19PC90aD5cbiAgICAgICAgICAgICAgPHRoIHNjb3BlPVwidHJ1ZVwiPnt7ICdDcm0uU3VtbWFyeS5Db250YWN0TmFtZScgfCB0cmFuc2xvY28gfX08L3RoPlxuICAgICAgICAgICAgICA8dGggc2NvcGU9XCJ0cnVlXCI+e3sgJ0NybS5TdW1tYXJ5LkFjY291bnQnIHwgdHJhbnNsb2NvIH19PC90aD5cbiAgICAgICAgICAgICAgPHRoIHNjb3BlPVwidHJ1ZVwiPnt7ICdDcm0uU3VtbWFyeS5PbmVUaW1lQW1vdW50JyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cInRydWVcIj57eyAnQ3JtLlN1bW1hcnkuV2luQ2hhbmNlJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cInRydWVcIj57eyAnQ3JtLlN1bW1hcnkuTW9udGhseUFtb3VudCcgfCB0cmFuc2xvY28gfX08L3RoPlxuICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJib2R5XCJcbiAgICAgICAgICAgIGxldC1vcHBvcnR1bml0aWVzPlxuICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICA8dGQgZGF0YS1oZWFkPVwiVGl0bGVcIj5cbiAgICAgICAgICAgICAgICB7eyBvcHBvcnR1bml0aWVzLnRpdGxlIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJDb250YWN0IE5hbWVcIj5cbiAgICAgICAgICAgICAgICB7eyBvcHBvcnR1bml0aWVzLmNybV9jb250YWN0Py5maXJzdF9uYW1lIH19XG4gICAgICAgICAgICAgICAge3sgb3Bwb3J0dW5pdGllcy5jcm1fY29udGFjdD8ubGFzdF9uYW1lIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJBY2NvdW50XCI+XG4gICAgICAgICAgICAgICAge3sgb3Bwb3J0dW5pdGllcy5jcm1fYWNjb3VudD8ubmFtZSB9fVxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICA8dGQgZGF0YS1oZWFkPVwiT25lIFRpbWUgQW1vdW50XCI+XG4gICAgICAgICAgICAgICAge3sgb3Bwb3J0dW5pdGllcy5vbmVfdGltZV9hbW91bnQgLyAxMDAgfCBjdXJyZW5jeSB9fVxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICA8dGQgZGF0YS1oZWFkPVwiTW9udGhseSBBbW91bnRcIj5cbiAgICAgICAgICAgICAgICB7eyBvcHBvcnR1bml0aWVzLm1vbnRobHlfYW1vdW50IC8gMTAwIHwgY3VycmVuY3kgfX1cbiAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgPHRkIGRhdGEtaGVhZD1cIldpbiBDaGFuY2VcIj5cbiAgICAgICAgICAgICAgICB7eyBvcHBvcnR1bml0aWVzLndpbl9jaGFuY2VzIHwgcGVyY2VudCB9fVxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L3AtdGFibGU+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwidG90YWwtcmVjb3Jkcy1jb3VudFwiPnt7ICdMYWJlbC5Ub3RhbCcgfCB0cmFuc2xvY28gfX06IHt7IGFjdGl2ZU9wcG9ydHVuaXRpZXMubGVuZ3RoIH19PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiYWN0aXZlT3Bwb3J0dW5pdGllcz8ubGVuZ3RoID09PSAwXCI+XG4gICAgICAgIDxwdy1uby1kYXRhIFt3aXRoSW1hZ2VdPVwidHJ1ZVwiIFttZXNzYWdlXT1cIidDcm0uU3VtbWFyeS5Ob0luc2lnaHRNZXNzYWdlJyB8IHRyYW5zbG9jb1wiPiA8L3B3LW5vLWRhdGE+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8IS0tIEFjY291bnRzIGF0IHJpc2sgLS0+XG4gICAgPGRpdiBjbGFzcz1cImNvbC0xMiBjb2wtbWQtNiBtYi0zIGFuYWx5dGljc1wiPlxuICAgICAgPGg1IGNsYXNzPVwiYWNjb3JkaW9uLWhlYWRpbmdcIj5BY2NvdW50cyBhdCBSaXNrPC9oNT5cbiAgICAgIDxkaXYgY2xhc3M9XCJ3LTEwMCB0ZXh0LWNlbnRlciBtdC0zXCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCIhYWNjb3VudEF0Umlza0RldGFpbHNMb2FkZWRcIj5cbiAgICAgICAgICA8cC1wcm9ncmVzc1NwaW5uZXIgc3Ryb2tlV2lkdGg9XCIyXCI+IDwvcC1wcm9ncmVzc1NwaW5uZXI+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJwcmltZW5nLWRhdGF0YWJsZS1jb250YWluZXIgdGFibGUtcmVzcG9uc2l2ZVwiXG4gICAgICAgICpuZ0lmPVwiYWNjb3VudEF0Umlzaz8ubGVuZ3RoXCI+XG4gICAgICAgIDxwLXRhYmxlIGNsYXNzPVwidGFibGVcIlxuICAgICAgICAgICNkdFxuICAgICAgICAgIFt2YWx1ZV09XCJhY2NvdW50QXRSaXNrXCJcbiAgICAgICAgICBbcGFnaW5hdG9yXT1cInRydWVcIlxuICAgICAgICAgIFtyb3dzXT1cIlBBR0VfU0laRVwiXG5cbiAgICAgICAgICBbdG90YWxSZWNvcmRzXT1cImFjY291bnRBdFJpc2subGVuZ3RoXCJcbiAgICAgICAgICBbbGF6eV09XCJ0cnVlXCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiPlxuICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICA8dGggc2NvcGU9XCJ0cnVlXCI+e3sgJ0NybS5TdW1tYXJ5Lk93bmVyJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cInRydWVcIj57eyAnQ3JtLlN1bW1hcnkuQ29udGFjdE5hbWUnIHwgdHJhbnNsb2NvIH19PC90aD5cbiAgICAgICAgICAgICAgPHRoIHNjb3BlPVwidHJ1ZVwiPnt7ICdDcm0uU3VtbWFyeS5PcmdhbmlzYXRpb24nIHwgdHJhbnNsb2NvIH19PC90aD5cbiAgICAgICAgICAgICAgPHRoIHNjb3BlPVwidHJ1ZVwiPnt7ICdDcm0uU3VtbWFyeS5Db250YWN0RW1haWwnIHwgdHJhbnNsb2NvIH19PC90aD5cbiAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiYm9keVwiXG4gICAgICAgICAgICBsZXQtYWNjb3VudD5cbiAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgPHRkIGRhdGEtaGVhZD1cIk93bmVyXCI+XG4gICAgICAgICAgICAgICAge3sgYWNjb3VudC5vd25lcj8uZmlyc3RfbmFtZSB9fSB7eyBhY2NvdW50Lm93bmVyPy5sYXN0X25hbWUgfX1cbiAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgPHRkIGRhdGEtaGVhZD1cIkNvbnRhY3QgTmFtZVwiPlxuICAgICAgICAgICAgICAgIHt7IGFjY291bnQuY29udGFjdF9uYW1lIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJPcmdhbmlzYXRpb25cIj5cbiAgICAgICAgICAgICAgICB7eyBhY2NvdW50Lm5hbWUgfX1cbiAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgPHRkIGRhdGEtaGVhZD1cIkNvbnRhY3QgRW1haWxcIj5cbiAgICAgICAgICAgICAgICB7eyBhY2NvdW50LmNvbnRhY3RfZW1haWwgfX1cbiAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9wLXRhYmxlPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInRvdGFsLXJlY29yZHMtY291bnRcIj57eyAnTGFiZWwuVG90YWwnIHwgdHJhbnNsb2NvIH19OiB7eyBhY2NvdW50QXRSaXNrLmxlbmd0aCB9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImFjY291bnRBdFJpc2s/Lmxlbmd0aCA9PT0gMFwiPlxuICAgICAgICA8cHctbm8tZGF0YSBbd2l0aEltYWdlXT1cInRydWVcIiBbbWVzc2FnZV09XCInQ3JtLlN1bW1hcnkuTm9JbnNpZ2h0TWVzc2FnZScgfCB0cmFuc2xvY29cIj4gPC9wdy1uby1kYXRhPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPCEtLSBDb250cmFjdCByZW5ld2FsIC0tPlxuICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgY29sLW1kLTYgbWItMyBhbmFseXRpY3NcIj5cbiAgICAgIDxoNSBjbGFzcz1cImFjY29yZGlvbi1oZWFkaW5nXCI+Q29udHJhY3QgUmVuZXdhbDwvaDU+XG4gICAgICA8ZGl2IGNsYXNzPVwidy0xMDAgdGV4dC1jZW50ZXIgbXQtM1wiPlxuICAgICAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwiIWNvbnRhY3RSZW5ld2FsTG9hZGVkXCI+XG4gICAgICAgICAgPHAtcHJvZ3Jlc3NTcGlubmVyIHN0cm9rZVdpZHRoPVwiMlwiPiA8L3AtcHJvZ3Jlc3NTcGlubmVyPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicHJpbWVuZy1kYXRhdGFibGUtY29udGFpbmVyIHRhYmxlLXJlc3BvbnNpdmVcIlxuICAgICAgICAqbmdJZj1cIkNvbnRyYWN0UmVuZXdhbD8ubGVuZ3RoXCI+XG4gICAgICAgIDxwLXRhYmxlIGNsYXNzPVwidGFibGVcIlxuICAgICAgICAgICNkdFxuICAgICAgICAgIFt2YWx1ZV09XCJDb250cmFjdFJlbmV3YWxcIlxuICAgICAgICAgIFtwYWdpbmF0b3JdPVwidHJ1ZVwiXG4gICAgICAgICAgW3Jvd3NdPVwiUEFHRV9TSVpFXCJcblxuICAgICAgICAgIFt0b3RhbFJlY29yZHNdPVwiQ29udHJhY3RSZW5ld2FsLmxlbmd0aFwiXG4gICAgICAgICAgW2xhenldPVwidHJ1ZVwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIj5cbiAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgPHRoIHNjb3BlPVwidHJ1ZVwiPnt7ICdDcm0uU3VtbWFyeS5Pd25lcicgfCB0cmFuc2xvY28gfX08L3RoPlxuICAgICAgICAgICAgICA8dGggc2NvcGU9XCJ0cnVlXCI+e3sgJ0NybS5TdW1tYXJ5LkNvbnRhY3ROYW1lJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cInRydWVcIj57eyAnQ3JtLlN1bW1hcnkuT3JnYW5pc2F0aW9uJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cInRydWVcIj57eyAnQ3JtLlN1bW1hcnkuQ29udGFjdEVtYWlsJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImJvZHlcIlxuICAgICAgICAgICAgbGV0LWFjY291bnQ+XG4gICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJPd25lclwiPlxuICAgICAgICAgICAgICAgIHt7IGFjY291bnQub3duZXI/LmZpcnN0X25hbWUgfX0ge3sgYWNjb3VudC5vd25lcj8ubGFzdF9uYW1lIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJDb250YWN0IE5hbWVcIj5cbiAgICAgICAgICAgICAgICB7eyBhY2NvdW50LmNvbnRhY3RfbmFtZSB9fVxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICA8dGQgZGF0YS1oZWFkPVwiT3JnYW5pc2F0aW9uXCI+XG4gICAgICAgICAgICAgICAge3sgYWNjb3VudC5uYW1lIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJDb250YWN0IEVtYWlsXCI+XG4gICAgICAgICAgICAgICAge3sgYWNjb3VudC5jb250YWN0X2VtYWlsIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvcC10YWJsZT5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ0b3RhbC1yZWNvcmRzLWNvdW50XCI+e3sgJ0xhYmVsLlRvdGFsJyB8IHRyYW5zbG9jbyB9fToge3sgQ29udHJhY3RSZW5ld2FsLmxlbmd0aCB9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cIkNvbnRyYWN0UmVuZXdhbD8ubGVuZ3RoID09PSAwXCI+XG4gICAgICAgIDxwdy1uby1kYXRhIFt3aXRoSW1hZ2VdPVwidHJ1ZVwiIFttZXNzYWdlXT1cIidDcm0uU3VtbWFyeS5Ob0luc2lnaHRNZXNzYWdlJyB8IHRyYW5zbG9jb1wiPiA8L3B3LW5vLWRhdGE+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8IS0tIENyZWRpdCBDYXJkIEV4cGlyaW5nIC0tPlxuICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgY29sLW1kLTYgbWItMyBhbmFseXRpY3NcIj5cbiAgICAgIDxoNSBjbGFzcz1cImFjY29yZGlvbi1oZWFkaW5nXCI+Q3JlZGl0IENhcmQgRXhwaXJpbmc8L2g1PlxuICAgICAgPGRpdiBjbGFzcz1cInctMTAwIHRleHQtY2VudGVyIG10LTNcIj5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ0lmXT1cIiFjcmVkaXRDYXJkRXhwaXJpbmdEZXRhaWxzTG9hZGVkXCI+XG4gICAgICAgICAgPHAtcHJvZ3Jlc3NTcGlubmVyIHN0cm9rZVdpZHRoPVwiMlwiPiA8L3AtcHJvZ3Jlc3NTcGlubmVyPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicHJpbWVuZy1kYXRhdGFibGUtY29udGFpbmVyIHRhYmxlLXJlc3BvbnNpdmVcIlxuICAgICAgICAqbmdJZj1cImNyZWRpdENhcmRFeHBpcmluZz8ubGVuZ3RoXCI+XG4gICAgICAgIDxwLXRhYmxlIGNsYXNzPVwidGFibGVcIlxuICAgICAgICAgICNkdFxuICAgICAgICAgIFt2YWx1ZV09XCJjcmVkaXRDYXJkRXhwaXJpbmdcIlxuICAgICAgICAgIFtwYWdpbmF0b3JdPVwidHJ1ZVwiXG4gICAgICAgICAgW3Jvd3NdPVwiUEFHRV9TSVpFXCJcblxuICAgICAgICAgIFt0b3RhbFJlY29yZHNdPVwiY3JlZGl0Q2FyZEV4cGlyaW5nLmxlbmd0aFwiXG4gICAgICAgICAgW2xhenldPVwidHJ1ZVwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIj5cbiAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgPHRoIHNjb3BlPVwidHJ1ZVwiPnt7ICdDcm0uU3VtbWFyeS5Pd25lcicgfCB0cmFuc2xvY28gfX08L3RoPlxuICAgICAgICAgICAgICA8dGggc2NvcGU9XCJ0cnVlXCI+e3sgJ0NybS5TdW1tYXJ5LkNvbnRhY3ROYW1lJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cInRydWVcIj57eyAnQ3JtLlN1bW1hcnkuT3JnYW5pc2F0aW9uJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cInRydWVcIj57eyAnQ3JtLlN1bW1hcnkuQ29udGFjdEVtYWlsJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImJvZHlcIlxuICAgICAgICAgICAgbGV0LWFjY291bnQ+XG4gICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJPd25lclwiPlxuICAgICAgICAgICAgICAgIHt7IGFjY291bnQub3duZXI/LmZpcnN0X25hbWUgfX0ge3sgYWNjb3VudC5vd25lcj8ubGFzdF9uYW1lIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJDb250YWN0IE5hbWVcIj5cbiAgICAgICAgICAgICAgICB7eyBhY2NvdW50LmNvbnRhY3RfbmFtZSB9fVxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICA8dGQgZGF0YS1oZWFkPVwiT3JnYW5pc2F0aW9uXCI+XG4gICAgICAgICAgICAgICAge3sgYWNjb3VudC5uYW1lIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJDb250YWN0IEVtYWlsXCI+XG4gICAgICAgICAgICAgICAge3sgYWNjb3VudC5jb250YWN0X2VtYWlsIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvcC10YWJsZT5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ0b3RhbC1yZWNvcmRzLWNvdW50XCI+e3sgJ0xhYmVsLlRvdGFsJyB8IHRyYW5zbG9jbyB9fToge3sgY3JlZGl0Q2FyZEV4cGlyaW5nLmxlbmd0aCB9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImNyZWRpdENhcmRFeHBpcmluZz8ubGVuZ3RoID09PSAwXCI+XG4gICAgICAgIDxwdy1uby1kYXRhIFt3aXRoSW1hZ2VdPVwidHJ1ZVwiIFttZXNzYWdlXT1cIidDcm0uU3VtbWFyeS5Ob0luc2lnaHRNZXNzYWdlJyB8IHRyYW5zbG9jb1wiPiA8L3B3LW5vLWRhdGE+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8IS0tIE1hZ2ljIE1vbWVudCAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIGNvbC1tZC02IG1iLTMgYW5hbHl0aWNzXCI+XG4gICAgICA8aDUgY2xhc3M9XCJhY2NvcmRpb24taGVhZGluZ1wiPk1hZ2ljIE1vbWVudDwvaDU+XG4gICAgICA8ZGl2IGNsYXNzPVwidy0xMDAgdGV4dC1jZW50ZXIgbXQtM1wiPlxuICAgICAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwiIW1hZ2ljTW9tZW50TG9hZGVkXCI+XG4gICAgICAgICAgPHAtcHJvZ3Jlc3NTcGlubmVyIHN0cm9rZVdpZHRoPVwiMlwiPiA8L3AtcHJvZ3Jlc3NTcGlubmVyPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicHJpbWVuZy1kYXRhdGFibGUtY29udGFpbmVyIHRhYmxlLXJlc3BvbnNpdmVcIlxuICAgICAgICAqbmdJZj1cIm1hZ2ljTW9tZW50Py5sZW5ndGhcIj5cbiAgICAgICAgPHAtdGFibGUgY2xhc3M9XCJ0YWJsZVwiXG4gICAgICAgICAgI2R0XG4gICAgICAgICAgW3ZhbHVlXT1cIm1hZ2ljTW9tZW50XCJcbiAgICAgICAgICBbcGFnaW5hdG9yXT1cInRydWVcIlxuICAgICAgICAgIFtyb3dzXT1cIlBBR0VfU0laRVwiXG5cbiAgICAgICAgICBbdG90YWxSZWNvcmRzXT1cIm1hZ2ljTW9tZW50Lmxlbmd0aFwiXG4gICAgICAgICAgW2xhenldPVwidHJ1ZVwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIj5cbiAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgPHRoIHNjb3BlPVwidHJ1ZVwiPnt7ICdDcm0uU3VtbWFyeS5Pd25lcicgfCB0cmFuc2xvY28gfX08L3RoPlxuICAgICAgICAgICAgICA8dGggc2NvcGU9XCJ0cnVlXCI+e3sgJ0NybS5TdW1tYXJ5LkNvbnRhY3ROYW1lJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cInRydWVcIj57eyAnQ3JtLlN1bW1hcnkuT3JnYW5pc2F0aW9uJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cInRydWVcIj57eyAnQ3JtLlN1bW1hcnkuQ29udGFjdEVtYWlsJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImJvZHlcIlxuICAgICAgICAgICAgbGV0LWFjY291bnQ+XG4gICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJPd25lclwiPlxuICAgICAgICAgICAgICAgIHt7IGFjY291bnQub3duZXI/LmZpcnN0X25hbWUgfX0ge3sgYWNjb3VudC5vd25lcj8ubGFzdF9uYW1lIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJDb250YWN0IE5hbWVcIj5cbiAgICAgICAgICAgICAgICB7eyBhY2NvdW50LmNvbnRhY3RfbmFtZSB9fVxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICA8dGQgZGF0YS1oZWFkPVwiT3JnYW5pc2F0aW9uXCI+XG4gICAgICAgICAgICAgICAge3sgYWNjb3VudC5uYW1lIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJDb250YWN0IEVtYWlsXCI+XG4gICAgICAgICAgICAgICAge3sgYWNjb3VudC5jb250YWN0X2VtYWlsIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvcC10YWJsZT5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ0b3RhbC1yZWNvcmRzLWNvdW50XCI+e3sgJ0xhYmVsLlRvdGFsJyB8IHRyYW5zbG9jbyB9fToge3sgbWFnaWNNb21lbnQubGVuZ3RoIH19PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwibWFnaWNNb21lbnQ/Lmxlbmd0aCA9PT0gMFwiPlxuICAgICAgICA8cHctbm8tZGF0YSBbd2l0aEltYWdlXT1cInRydWVcIiBbbWVzc2FnZV09XCInQ3JtLlN1bW1hcnkuTm9JbnNpZ2h0TWVzc2FnZScgfCB0cmFuc2xvY29cIj4gPC9wdy1uby1kYXRhPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
148
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtY3JtLXN1bW1hcnktb3RoZXJzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc21hcnQtY3JtL3NyYy9saWIvcHJpdmF0ZS9jb21wb25lbnRzL3NtYXJ0LWNybS1zdW1tYXJ5L3NtYXJ0LWNybS1zdW1tYXJ5LW90aGVycy9zbWFydC1jcm0tc3VtbWFyeS1vdGhlcnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zbWFydC1jcm0vc3JjL2xpYi9wcml2YXRlL2NvbXBvbmVudHMvc21hcnQtY3JtLXN1bW1hcnkvc21hcnQtY3JtLXN1bW1hcnktb3RoZXJzL3NtYXJ0LWNybS1zdW1tYXJ5LW90aGVycy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRXhELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7Ozs7Ozs7O0FBTWhFLE1BQU0sT0FBTyw4QkFBK0IsU0FBUSxnQkFBZ0I7SUE2QmhFLFlBQ1ksVUFBc0IsRUFDOUIsUUFBa0I7UUFFbEIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBSFIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQWZsQywrQkFBMEIsR0FBRyxLQUFLLENBQUM7UUFFbkMsOEJBQXlCLEdBQUcsS0FBSyxDQUFDO1FBRWxDLCtCQUEwQixHQUFHLEtBQUssQ0FBQztRQUVuQyx5QkFBb0IsR0FBRyxLQUFLLENBQUM7UUFFN0Isb0NBQStCLEdBQUcsS0FBSyxDQUFDO1FBRXhDLHNCQUFpQixHQUFHLEtBQUssQ0FBQztJQVMxQixDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksQ0FBQyxtQkFBbUIsRUFB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Q0FBQyxDQUFDO2FBQ0QsR0FBRyxDQUFDLEdBQUcsRUFBRTtZQUNOLElBQUksQ0FBQywrQkFBK0IsR0FBRyxJQUFJLENBQUM7UUFDaEQsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDO0lBQ0Qsb0NBQW9DO0lBQzVCLGNBQWM7UUFDbEIsSUFBSSxDQUFDLFVBQVU7YUFDVixlQUFlLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxFQUFFLEVBQUUsY0FBYyxDQUFDO2FBQ3RELFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUNsQixJQUFJLE9BQU8sUUFBUSxLQUFLLFFBQVEsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDckUsSUFBSSxDQUFDLFdBQVcsR0FBRyxFQUFFLENBQUM7WUFDMUIsQ0FBQzs7Z0JBQU0sSUFBSSxDQUFDLFdBQVcsR0FBRyxRQUFRLENBQUM7UUFDdkMsQ0FBQyxDQUFDO2FBQ0QsR0FBRyxDQUFDLEdBQUcsRUFBRTtZQUNOLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7UUFDbEMsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDO0lBRVEsV0FBVztRQUNoQixLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDeEIsQ0FBQzsrR0F0SlEsOEJBQThCO21HQUE5Qiw4QkFBOEIsMEZDVDNDLDZzWkFxVEE7OzRGRDVTYSw4QkFBOEI7a0JBSjFDLFNBQVM7K0JBQ0ksNkJBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3RvciwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENybVNlcnZpY2UgfSBmcm9tICdAcG9zaXdpc2Uvc21hcnQtY3JtLXNoYXJlZCc7XG5cbmltcG9ydCB7IEFwcEJhc2VDb21wb25lbnQgfSBmcm9tICdAcG9zaXdpc2UvYXBwLWJhc2UtY29tcG9uZW50JztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiwgVXNlcixhY3RpdmVPcHBvcnR1bml0aWVzLHNpZ25lZFVwTGFzdFRoaXJ0eURheXN9IGZyb20gJ0Bwb3Npd2lzZS9jb21tb24tdXRpbGl0aWVzJztcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAncHctc21hcnQtY3JtLXN1bW1hcnktb3RoZXJzJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc21hcnQtY3JtLXN1bW1hcnktb3RoZXJzLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBTbWFydENybVN1bW1hcnlPdGhlcnNDb21wb25lbnQgZXh0ZW5kcyBBcHBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIHNpZ25lZFVwTGFzdFRoaXJ0eURheXM6c2lnbmVkVXBMYXN0VGhpcnR5RGF5c1tdO1xuXG4gICAgYWN0aXZlT3Bwb3J0dW5pdGllczphY3RpdmVPcHBvcnR1bml0aWVzW107XG5cbiAgICBhY2NvdW50QXRSaXNrOltdO1xuXG4gICAgQ29udHJhY3RSZW5ld2FsOltdO1xuXG4gICAgY3JlZGl0Q2FyZEV4cGlyaW5nOltdO1xuXG4gICAgbWFnaWNNb21lbnQ6W107XG5cbiAgICB1c2VyOiBVc2VyO1xuXG4gICAgc2lnblVwTGFzdFRoaXJ0eURheXNMb2FkZWQgPSBmYWxzZTtcblxuICAgIGFjdGl2ZU9wcG9ydHVuaXRpZXNMb2FkZWQgPSBmYWxzZTtcblxuICAgIGFjY291bnRBdFJpc2tEZXRhaWxzTG9hZGVkID0gZmFsc2U7XG5cbiAgICBjb250YWN0UmVuZXdhbExvYWRlZCA9IGZhbHNlO1xuXG4gICAgY3JlZGl0Q2FyZEV4cGlyaW5nRGV0YWlsc0xvYWRlZCA9IGZhbHNlO1xuXG4gICAgbWFnaWNNb21lbnRMb2FkZWQgPSBmYWxzZTtcblxuICAgIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgY3JtU2VydmljZTogQ3JtU2VydmljZSxcbiAgICAgICAgaW5qZWN0b3I6IEluamVjdG9yXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGluamVjdG9yKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5nZXRVc2VyU3Vic2NyaXB0aW9uKCkuc3Vic2NyaWJlKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gcmVzcG9uc2U7XG4gICAgICAgICAgICBpZiAodGhpcy5zdWJzY3JpcHRpb24/LmlkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5nZXRVc2VySW5mbygpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFVzZXJJbmZvKCkge1xuICAgICAgICB0aGlzLnVzZXJTdG9yZSgpLnN1YnNjcmliZSh1c2VyID0+IHtcbiAgICAgICAgICAgIGlmICh1c2VyKSB7XG4gICAgICAgICAgICAgICAgdGhpcy51c2VyID0gdXNlcjtcbiAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGVybWlzc2lvblNlcnZpY2UuaXNHcmFudGVkKCdQYWdlcy5CZXRhJykgfHxcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wZXJtaXNzaW9uU2VydmljZS5pc1N1cGVyQWRtaW4oKVxuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmdldFNpZ25lZFVwTGFzdFRoaXJ0eURheXMoKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5nZXRBY3RpdmVPcHBvcnR1bml0aWVzKCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZ2V0QWNjb3VudEF0Umlza0RldGFpbHMoKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5nZXRDb250YWN0UmVuZXdhbCgpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmdldENyZWRpdENhcmRFeHBpcmluZ0RldGFpbHMoKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5nZXRNYWdpY01vbWVudCgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqIEZ1bmN0aW9uIHRvIGNhbGwgc2lnbmVkIHVwIGxhc3QgMzAgZGF5cyBkZXRhaWxzICovXG4gICAgcHJpdmF0ZSBnZXRTaWduZWRVcExhc3RUaGlydHlEYXlzKCkge1xuICAgICAgICB0aGlzLmNybVNlcnZpY2VcbiAgICAgICAgICAgIC5nZXRDcm1BbmFseXRpY3ModGhpcy5zdWJzY3JpcHRpb24/LmlkLCAnYWNjb3VudHNfc2lnbmVkX3VwX2xhc3RfMzBfZGF5cycpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHJlc3BvbnNlID09PSAnb2JqZWN0JyAmJiBPYmplY3Qua2V5cyhyZXNwb25zZSkubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2lnbmVkVXBMYXN0VGhpcnR5RGF5cyA9IFtdO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB0aGlzLnNpZ25lZFVwTGFzdFRoaXJ0eURheXMgPSByZXNwb25zZTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuYWRkKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnNpZ25VcExhc3RUaGlydHlEYXlzTG9hZGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKiBGdW5jdGlvbiB0byBjYWxsIEFjdGl2ZSBPcHBvcnR1bml0aWVzIGRldGFpbHMgKi9cbiAgICBwcml2YXRlIGdldEFjdGl2ZU9wcG9ydHVuaXRpZXMoKSB7XG4gICAgICAgIHRoaXMuY3JtU2VydmljZVxuICAgICAgICAgICAgLmdldENybUFuYWx5dGljcyh0aGlzLnN1YnNjcmlwdGlvbj8uaWQsICdhY2NvdW50c19hY3RpdmVfb3Bwb3J0dW5pdGllcycpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHJlc3BvbnNlID09PSAnb2JqZWN0JyAmJiBPYmplY3Qua2V5cyhyZXNwb25zZSkubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWN0aXZlT3Bwb3J0dW5pdGllcyA9IFtdO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB0aGlzLmFjdGl2ZU9wcG9ydHVuaXRpZXMgPSByZXNwb25zZTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuYWRkKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmFjdGl2ZU9wcG9ydHVuaXRpZXNMb2FkZWQgPSB0cnVlO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqIEZ1bmN0aW9uIHRvIGNhbGwgQWNjb3VudCBBdCBSaXNrIGRldGFpbHMgKi9cbiAgICBwcml2YXRlIGdldEFjY291bnRBdFJpc2tEZXRhaWxzKCkge1xuICAgICAgICB0aGlzLmNybVNlcnZpY2VcbiAgICAgICAgICAgIC5nZXRDcm1BbmFseXRpY3ModGhpcy5zdWJzY3JpcHRpb24/LmlkLCAnYWNjb3VudHNfYWNjb3VudHNfYXRfcmlzaycpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHJlc3BvbnNlID09PSAnb2JqZWN0JyAmJiBPYmplY3Qua2V5cyhyZXNwb25zZSkubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWNjb3VudEF0UmlzayA9IFtdO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB0aGlzLmFjY291bnRBdFJpc2sgPSByZXNwb25zZTtcblxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5hZGQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuYWNjb3VudEF0Umlza0RldGFpbHNMb2FkZWQgPSB0cnVlO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqIEZ1bmN0aW9uIHRvIGNhbGwgQ29udHJhY3QgcmVuZXdhbCBkZXRhaWxzICovXG4gICAgcHJpdmF0ZSBnZXRDb250YWN0UmVuZXdhbCgpIHtcbiAgICAgICAgdGhpcy5jcm1TZXJ2aWNlXG4gICAgICAgICAgICAuZ2V0Q3JtQW5hbHl0aWNzKHRoaXMuc3Vic2NyaXB0aW9uPy5pZCwgJ2FjY291bnRzX2NvbnRyYWN0X3JlbmV3YWwnKVxuICAgICAgICAgICAgLnN1YnNjcmliZShyZXNwb25zZSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiByZXNwb25zZSA9PT0gJ29iamVjdCcgJiYgT2JqZWN0LmtleXMocmVzcG9uc2UpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLkNvbnRyYWN0UmVuZXdhbCA9IFtdO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB0aGlzLkNvbnRyYWN0UmVuZXdhbCA9IHJlc3BvbnNlO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5hZGQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuY29udGFjdFJlbmV3YWxMb2FkZWQgPSB0cnVlO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqIEZ1bmN0aW9uIHRvIGNhbGwgQ3JlZGl0IENhcmQgRXhwaXJpbmcgZGV0YWlscyAqL1xuICAgIHByaXZhdGUgZ2V0Q3JlZGl0Q2FyZEV4cGlyaW5nRGV0YWlscygpIHtcbiAgICAgICAgdGhpcy5jcm1TZXJ2aWNlXG4gICAgICAgICAgICAuZ2V0Q3JtQW5hbHl0aWNzKHRoaXMuc3Vic2NyaXB0aW9uPy5pZCwgJ2NyZWRpdF9jYXJkX2V4cGlyaW5nJylcbiAgICAgICAgICAgIC5zdWJzY3JpYmUocmVzcG9uc2UgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgcmVzcG9uc2UgPT09ICdvYmplY3QnICYmIE9iamVjdC5rZXlzKHJlc3BvbnNlKS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jcmVkaXRDYXJkRXhwaXJpbmcgPSBbXTtcbiAgICAgICAgICAgICAgICB9IGVsc2UgdGhpcy5jcmVkaXRDYXJkRXhwaXJpbmcgPSByZXNwb25zZTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuYWRkKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmNyZWRpdENhcmRFeHBpcmluZ0RldGFpbHNMb2FkZWQgPSB0cnVlO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuICAgIC8qKiBGdW5jdGlvbiB0byBjYWxsIG1hZ2ljIG1vbWVudCAqL1xuICAgIHByaXZhdGUgZ2V0TWFnaWNNb21lbnQoKSB7XG4gICAgICAgIHRoaXMuY3JtU2VydmljZVxuICAgICAgICAgICAgLmdldENybUFuYWx5dGljcyh0aGlzLnN1YnNjcmlwdGlvbj8uaWQsICdtYWdpY19tb21lbnQnKVxuICAgICAgICAgICAgLnN1YnNjcmliZShyZXNwb25zZSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiByZXNwb25zZSA9PT0gJ29iamVjdCcgJiYgT2JqZWN0LmtleXMocmVzcG9uc2UpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm1hZ2ljTW9tZW50ID0gW107XG4gICAgICAgICAgICAgICAgfSBlbHNlIHRoaXMubWFnaWNNb21lbnQgPSByZXNwb25zZTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuYWRkKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLm1hZ2ljTW9tZW50TG9hZGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIG92ZXJyaWRlIG5nT25EZXN0cm95KCkge1xuICAgICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgPG5nLWNvbnRhaW5lciBjbGFzcz1cIm10LTVcIlxuICAgICpyYmFjQWxsb3c9XCInUGFnZXMuQmV0YSdcIj5cbiAgICA8IS0tIFNpZ25lZCB1cCBsYXN0IDMwIGRheXMgLS0+XG4gICAgPGRpdiBjbGFzcz1cImNvbC0xMiBjb2wtbWQtNiBtYi0zIGFuYWx5dGljc1wiPlxuICAgICAgPGg1IGNsYXNzPVwiYWNjb3JkaW9uLWhlYWRpbmdcIj5TaWduZWQgdXAgTGFzdCAzMCBEYXlzPC9oNT5cbiAgICAgIDxkaXYgY2xhc3M9XCJ3LTEwMCB0ZXh0LWNlbnRlciBtdC0zXCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCIhc2lnblVwTGFzdFRoaXJ0eURheXNMb2FkZWRcIj5cbiAgICAgICAgICA8cC1wcm9ncmVzc1NwaW5uZXIgc3Ryb2tlV2lkdGg9XCIyXCI+IDwvcC1wcm9ncmVzc1NwaW5uZXI+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJwcmltZW5nLWRhdGF0YWJsZS1jb250YWluZXIgdGFibGUtcmVzcG9uc2l2ZVwiXG4gICAgICAgICpuZ0lmPVwic2lnbmVkVXBMYXN0VGhpcnR5RGF5cz8ubGVuZ3RoXCI+XG4gICAgICAgIDxwLXRhYmxlIGNsYXNzPVwidGFibGVcIlxuICAgICAgICAgICNkdFxuICAgICAgICAgIFt2YWx1ZV09XCJzaWduZWRVcExhc3RUaGlydHlEYXlzXCJcbiAgICAgICAgICBbcGFnaW5hdG9yXT1cInRydWVcIlxuICAgICAgICAgIFtyb3dzXT1cIlBBR0VfU0laRVwiXG4gICAgICAgICAgW3RvdGFsUmVjb3Jkc109XCJzaWduZWRVcExhc3RUaGlydHlEYXlzLmxlbmd0aFwiXG4gICAgICAgICAgW2xhenldPVwidHJ1ZVwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIj5cbiAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgPHRoIHNjb3BlPVwidHJ1ZVwiPnt7ICdDcm0uU3VtbWFyeS5Pd25lcicgfCB0cmFuc2xvY28gfX08L3RoPlxuICAgICAgICAgICAgICA8dGggc2NvcGU9XCJ0cnVlXCI+e3sgJ0NybS5TdW1tYXJ5LkNvbnRhY3ROYW1lJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cInRydWVcIj57eyAnQ3JtLlN1bW1hcnkuQ29udGFjdEVtYWlsJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImJvZHlcIlxuICAgICAgICAgICAgbGV0LXNpZ25VcD5cbiAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgPHRkIGRhdGEtaGVhZD1cIk93bmVyXCI+XG4gICAgICAgICAgICAgICAge3sgc2lnblVwLm93bmVyPy5maXJzdF9uYW1lIH19IHt7IHNpZ25VcC5vd25lcj8ubGFzdF9uYW1lIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJDb250YWN0IE5hbWVcIj5cbiAgICAgICAgICAgICAgICB7eyBzaWduVXAuY29udGFjdF9uYW1lIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJDb250YWN0IEVtYWlsXCI+XG4gICAgICAgICAgICAgICAge3sgc2lnblVwLmNvbnRhY3RfZW1haWwgfX1cbiAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9wLXRhYmxlPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInRvdGFsLXJlY29yZHMtY291bnRcIj57eyAnTGFiZWwuVG90YWwnIHwgdHJhbnNsb2NvIH19OiB7eyBzaWduZWRVcExhc3RUaGlydHlEYXlzLmxlbmd0aCB9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cInNpZ25lZFVwTGFzdFRoaXJ0eURheXM/Lmxlbmd0aCA9PT0gMFwiPlxuICAgICAgICA8cHctbm8tZGF0YSBbd2l0aEltYWdlXT1cInRydWVcIiBbbWVzc2FnZV09XCInQ3JtLlN1bW1hcnkuTm9JbnNpZ2h0TWVzc2FnZScgfCB0cmFuc2xvY29cIj4gPC9wdy1uby1kYXRhPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPCEtLSBBY3RpdmUgT3Bwb3J0dW5pdGllcyAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIGNvbC1tZC02IG1iLTMgYW5hbHl0aWNzXCI+XG4gICAgICA8aDUgY2xhc3M9XCJhY2NvcmRpb24taGVhZGluZ1wiPkFjdGl2ZSBPcHBvcnR1bml0aWVzPC9oNT5cbiAgICAgIDxkaXYgY2xhc3M9XCJ3LTEwMCB0ZXh0LWNlbnRlciBtdC0zXCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCIhYWN0aXZlT3Bwb3J0dW5pdGllc0xvYWRlZFwiPlxuICAgICAgICAgIDxwLXByb2dyZXNzU3Bpbm5lciBzdHJva2VXaWR0aD1cIjJcIj4gPC9wLXByb2dyZXNzU3Bpbm5lcj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInByaW1lbmctZGF0YXRhYmxlLWNvbnRhaW5lciB0YWJsZS1yZXNwb25zaXZlXCJcbiAgICAgICAgKm5nSWY9XCJhY3RpdmVPcHBvcnR1bml0aWVzPy5sZW5ndGhcIj5cbiAgICAgICAgPHAtdGFibGUgY2xhc3M9XCJ0YWJsZVwiXG4gICAgICAgICAgI2R0XG4gICAgICAgICAgW3ZhbHVlXT1cImFjdGl2ZU9wcG9ydHVuaXRpZXNcIlxuICAgICAgICAgIFtwYWdpbmF0b3JdPVwidHJ1ZVwiXG4gICAgICAgICAgW3Jvd3NdPVwiUEFHRV9TSVpFXCJcblxuICAgICAgICAgIFt0b3RhbFJlY29yZHNdPVwiYWN0aXZlT3Bwb3J0dW5pdGllcy5sZW5ndGhcIlxuICAgICAgICAgIFtsYXp5XT1cInRydWVcIj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaGVhZGVyXCI+XG4gICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cInRydWVcIj57eyAnQ3JtLlN1bW1hcnkuVGl0bGUnIHwgdHJhbnNsb2NvIH19PC90aD5cbiAgICAgICAgICAgICAgPHRoIHNjb3BlPVwidHJ1ZVwiPnt7ICdDcm0uU3VtbWFyeS5Db250YWN0TmFtZScgfCB0cmFuc2xvY28gfX08L3RoPlxuICAgICAgICAgICAgICA8dGggc2NvcGU9XCJ0cnVlXCI+e3sgJ0NybS5TdW1tYXJ5LkFjY291bnQnIHwgdHJhbnNsb2NvIH19PC90aD5cbiAgICAgICAgICAgICAgPHRoIHNjb3BlPVwidHJ1ZVwiPnt7ICdDcm0uU3VtbWFyeS5PbmVUaW1lQW1vdW50JyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cInRydWVcIj57eyAnQ3JtLlN1bW1hcnkuV2luQ2hhbmNlJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cInRydWVcIj57eyAnQ3JtLlN1bW1hcnkuTW9udGhseUFtb3VudCcgfCB0cmFuc2xvY28gfX08L3RoPlxuICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJib2R5XCJcbiAgICAgICAgICAgIGxldC1vcHBvcnR1bml0aWVzPlxuICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICA8dGQgZGF0YS1oZWFkPVwiVGl0bGVcIj5cbiAgICAgICAgICAgICAgICB7eyBvcHBvcnR1bml0aWVzLnRpdGxlIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJDb250YWN0IE5hbWVcIj5cbiAgICAgICAgICAgICAgICB7eyBvcHBvcnR1bml0aWVzLmNybV9jb250YWN0Py5maXJzdF9uYW1lIH19XG4gICAgICAgICAgICAgICAge3sgb3Bwb3J0dW5pdGllcy5jcm1fY29udGFjdD8ubGFzdF9uYW1lIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJBY2NvdW50XCI+XG4gICAgICAgICAgICAgICAge3sgb3Bwb3J0dW5pdGllcy5jcm1fYWNjb3VudD8ubmFtZSB9fVxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICA8dGQgZGF0YS1oZWFkPVwiT25lIFRpbWUgQW1vdW50XCI+XG4gICAgICAgICAgICAgICAge3sgb3Bwb3J0dW5pdGllcy5vbmVfdGltZV9hbW91bnQgLyAxMDAgfCBjdXJyZW5jeSB9fVxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICA8dGQgZGF0YS1oZWFkPVwiTW9udGhseSBBbW91bnRcIj5cbiAgICAgICAgICAgICAgICB7eyBvcHBvcnR1bml0aWVzLm1vbnRobHlfYW1vdW50IC8gMTAwIHwgY3VycmVuY3kgfX1cbiAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgPHRkIGRhdGEtaGVhZD1cIldpbiBDaGFuY2VcIj5cbiAgICAgICAgICAgICAgICB7eyBvcHBvcnR1bml0aWVzLndpbl9jaGFuY2VzIHwgcGVyY2VudCB9fVxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L3AtdGFibGU+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwidG90YWwtcmVjb3Jkcy1jb3VudFwiPnt7ICdMYWJlbC5Ub3RhbCcgfCB0cmFuc2xvY28gfX06IHt7IGFjdGl2ZU9wcG9ydHVuaXRpZXMubGVuZ3RoIH19PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiYWN0aXZlT3Bwb3J0dW5pdGllcz8ubGVuZ3RoID09PSAwXCI+XG4gICAgICAgIDxwdy1uby1kYXRhIFt3aXRoSW1hZ2VdPVwidHJ1ZVwiIFttZXNzYWdlXT1cIidDcm0uU3VtbWFyeS5Ob0luc2lnaHRNZXNzYWdlJyB8IHRyYW5zbG9jb1wiPiA8L3B3LW5vLWRhdGE+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8IS0tIEFjY291bnRzIGF0IHJpc2sgLS0+XG4gICAgPGRpdiBjbGFzcz1cImNvbC0xMiBjb2wtbWQtNiBtYi0zIGFuYWx5dGljc1wiPlxuICAgICAgPGg1IGNsYXNzPVwiYWNjb3JkaW9uLWhlYWRpbmdcIj5BY2NvdW50cyBhdCBSaXNrPC9oNT5cbiAgICAgIDxkaXYgY2xhc3M9XCJ3LTEwMCB0ZXh0LWNlbnRlciBtdC0zXCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCIhYWNjb3VudEF0Umlza0RldGFpbHNMb2FkZWRcIj5cbiAgICAgICAgICA8cC1wcm9ncmVzc1NwaW5uZXIgc3Ryb2tlV2lkdGg9XCIyXCI+IDwvcC1wcm9ncmVzc1NwaW5uZXI+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJwcmltZW5nLWRhdGF0YWJsZS1jb250YWluZXIgdGFibGUtcmVzcG9uc2l2ZVwiXG4gICAgICAgICpuZ0lmPVwiYWNjb3VudEF0Umlzaz8ubGVuZ3RoXCI+XG4gICAgICAgIDxwLXRhYmxlIGNsYXNzPVwidGFibGVcIlxuICAgICAgICAgICNkdFxuICAgICAgICAgIFt2YWx1ZV09XCJhY2NvdW50QXRSaXNrXCJcbiAgICAgICAgICBbcGFnaW5hdG9yXT1cInRydWVcIlxuICAgICAgICAgIFtyb3dzXT1cIlBBR0VfU0laRVwiXG5cbiAgICAgICAgICBbdG90YWxSZWNvcmRzXT1cImFjY291bnRBdFJpc2subGVuZ3RoXCJcbiAgICAgICAgICBbbGF6eV09XCJ0cnVlXCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiPlxuICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICA8dGggc2NvcGU9XCJ0cnVlXCI+e3sgJ0NybS5TdW1tYXJ5Lk93bmVyJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cInRydWVcIj57eyAnQ3JtLlN1bW1hcnkuQ29udGFjdE5hbWUnIHwgdHJhbnNsb2NvIH19PC90aD5cbiAgICAgICAgICAgICAgPHRoIHNjb3BlPVwidHJ1ZVwiPnt7ICdDcm0uU3VtbWFyeS5PcmdhbmlzYXRpb24nIHwgdHJhbnNsb2NvIH19PC90aD5cbiAgICAgICAgICAgICAgPHRoIHNjb3BlPVwidHJ1ZVwiPnt7ICdDcm0uU3VtbWFyeS5Db250YWN0RW1haWwnIHwgdHJhbnNsb2NvIH19PC90aD5cbiAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiYm9keVwiXG4gICAgICAgICAgICBsZXQtYWNjb3VudD5cbiAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgPHRkIGRhdGEtaGVhZD1cIk93bmVyXCI+XG4gICAgICAgICAgICAgICAge3sgYWNjb3VudC5vd25lcj8uZmlyc3RfbmFtZSB9fSB7eyBhY2NvdW50Lm93bmVyPy5sYXN0X25hbWUgfX1cbiAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgPHRkIGRhdGEtaGVhZD1cIkNvbnRhY3QgTmFtZVwiPlxuICAgICAgICAgICAgICAgIHt7IGFjY291bnQuY29udGFjdF9uYW1lIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJPcmdhbmlzYXRpb25cIj5cbiAgICAgICAgICAgICAgICB7eyBhY2NvdW50Lm5hbWUgfX1cbiAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgPHRkIGRhdGEtaGVhZD1cIkNvbnRhY3QgRW1haWxcIj5cbiAgICAgICAgICAgICAgICB7eyBhY2NvdW50LmNvbnRhY3RfZW1haWwgfX1cbiAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9wLXRhYmxlPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInRvdGFsLXJlY29yZHMtY291bnRcIj57eyAnTGFiZWwuVG90YWwnIHwgdHJhbnNsb2NvIH19OiB7eyBhY2NvdW50QXRSaXNrLmxlbmd0aCB9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImFjY291bnRBdFJpc2s/Lmxlbmd0aCA9PT0gMFwiPlxuICAgICAgICA8cHctbm8tZGF0YSBbd2l0aEltYWdlXT1cInRydWVcIiBbbWVzc2FnZV09XCInQ3JtLlN1bW1hcnkuTm9JbnNpZ2h0TWVzc2FnZScgfCB0cmFuc2xvY29cIj4gPC9wdy1uby1kYXRhPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPCEtLSBDb250cmFjdCByZW5ld2FsIC0tPlxuICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgY29sLW1kLTYgbWItMyBhbmFseXRpY3NcIj5cbiAgICAgIDxoNSBjbGFzcz1cImFjY29yZGlvbi1oZWFkaW5nXCI+Q29udHJhY3QgUmVuZXdhbDwvaDU+XG4gICAgICA8ZGl2IGNsYXNzPVwidy0xMDAgdGV4dC1jZW50ZXIgbXQtM1wiPlxuICAgICAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwiIWNvbnRhY3RSZW5ld2FsTG9hZGVkXCI+XG4gICAgICAgICAgPHAtcHJvZ3Jlc3NTcGlubmVyIHN0cm9rZVdpZHRoPVwiMlwiPiA8L3AtcHJvZ3Jlc3NTcGlubmVyPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicHJpbWVuZy1kYXRhdGFibGUtY29udGFpbmVyIHRhYmxlLXJlc3BvbnNpdmVcIlxuICAgICAgICAqbmdJZj1cIkNvbnRyYWN0UmVuZXdhbD8ubGVuZ3RoXCI+XG4gICAgICAgIDxwLXRhYmxlIGNsYXNzPVwidGFibGVcIlxuICAgICAgICAgICNkdFxuICAgICAgICAgIFt2YWx1ZV09XCJDb250cmFjdFJlbmV3YWxcIlxuICAgICAgICAgIFtwYWdpbmF0b3JdPVwidHJ1ZVwiXG4gICAgICAgICAgW3Jvd3NdPVwiUEFHRV9TSVpFXCJcblxuICAgICAgICAgIFt0b3RhbFJlY29yZHNdPVwiQ29udHJhY3RSZW5ld2FsLmxlbmd0aFwiXG4gICAgICAgICAgW2xhenldPVwidHJ1ZVwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIj5cbiAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgPHRoIHNjb3BlPVwidHJ1ZVwiPnt7ICdDcm0uU3VtbWFyeS5Pd25lcicgfCB0cmFuc2xvY28gfX08L3RoPlxuICAgICAgICAgICAgICA8dGggc2NvcGU9XCJ0cnVlXCI+e3sgJ0NybS5TdW1tYXJ5LkNvbnRhY3ROYW1lJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cInRydWVcIj57eyAnQ3JtLlN1bW1hcnkuT3JnYW5pc2F0aW9uJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cInRydWVcIj57eyAnQ3JtLlN1bW1hcnkuQ29udGFjdEVtYWlsJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImJvZHlcIlxuICAgICAgICAgICAgbGV0LWFjY291bnQ+XG4gICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJPd25lclwiPlxuICAgICAgICAgICAgICAgIHt7IGFjY291bnQub3duZXI/LmZpcnN0X25hbWUgfX0ge3sgYWNjb3VudC5vd25lcj8ubGFzdF9uYW1lIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJDb250YWN0IE5hbWVcIj5cbiAgICAgICAgICAgICAgICB7eyBhY2NvdW50LmNvbnRhY3RfbmFtZSB9fVxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICA8dGQgZGF0YS1oZWFkPVwiT3JnYW5pc2F0aW9uXCI+XG4gICAgICAgICAgICAgICAge3sgYWNjb3VudC5uYW1lIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJDb250YWN0IEVtYWlsXCI+XG4gICAgICAgICAgICAgICAge3sgYWNjb3VudC5jb250YWN0X2VtYWlsIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvcC10YWJsZT5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ0b3RhbC1yZWNvcmRzLWNvdW50XCI+e3sgJ0xhYmVsLlRvdGFsJyB8IHRyYW5zbG9jbyB9fToge3sgQ29udHJhY3RSZW5ld2FsLmxlbmd0aCB9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cIkNvbnRyYWN0UmVuZXdhbD8ubGVuZ3RoID09PSAwXCI+XG4gICAgICAgIDxwdy1uby1kYXRhIFt3aXRoSW1hZ2VdPVwidHJ1ZVwiIFttZXNzYWdlXT1cIidDcm0uU3VtbWFyeS5Ob0luc2lnaHRNZXNzYWdlJyB8IHRyYW5zbG9jb1wiPiA8L3B3LW5vLWRhdGE+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8IS0tIENyZWRpdCBDYXJkIEV4cGlyaW5nIC0tPlxuICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgY29sLW1kLTYgbWItMyBhbmFseXRpY3NcIj5cbiAgICAgIDxoNSBjbGFzcz1cImFjY29yZGlvbi1oZWFkaW5nXCI+Q3JlZGl0IENhcmQgRXhwaXJpbmc8L2g1PlxuICAgICAgPGRpdiBjbGFzcz1cInctMTAwIHRleHQtY2VudGVyIG10LTNcIj5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ0lmXT1cIiFjcmVkaXRDYXJkRXhwaXJpbmdEZXRhaWxzTG9hZGVkXCI+XG4gICAgICAgICAgPHAtcHJvZ3Jlc3NTcGlubmVyIHN0cm9rZVdpZHRoPVwiMlwiPiA8L3AtcHJvZ3Jlc3NTcGlubmVyPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicHJpbWVuZy1kYXRhdGFibGUtY29udGFpbmVyIHRhYmxlLXJlc3BvbnNpdmVcIlxuICAgICAgICAqbmdJZj1cImNyZWRpdENhcmRFeHBpcmluZz8ubGVuZ3RoXCI+XG4gICAgICAgIDxwLXRhYmxlIGNsYXNzPVwidGFibGVcIlxuICAgICAgICAgICNkdFxuICAgICAgICAgIFt2YWx1ZV09XCJjcmVkaXRDYXJkRXhwaXJpbmdcIlxuICAgICAgICAgIFtwYWdpbmF0b3JdPVwidHJ1ZVwiXG4gICAgICAgICAgW3Jvd3NdPVwiUEFHRV9TSVpFXCJcblxuICAgICAgICAgIFt0b3RhbFJlY29yZHNdPVwiY3JlZGl0Q2FyZEV4cGlyaW5nLmxlbmd0aFwiXG4gICAgICAgICAgW2xhenldPVwidHJ1ZVwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIj5cbiAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgPHRoIHNjb3BlPVwidHJ1ZVwiPnt7ICdDcm0uU3VtbWFyeS5Pd25lcicgfCB0cmFuc2xvY28gfX08L3RoPlxuICAgICAgICAgICAgICA8dGggc2NvcGU9XCJ0cnVlXCI+e3sgJ0NybS5TdW1tYXJ5LkNvbnRhY3ROYW1lJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cInRydWVcIj57eyAnQ3JtLlN1bW1hcnkuT3JnYW5pc2F0aW9uJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cInRydWVcIj57eyAnQ3JtLlN1bW1hcnkuQ29udGFjdEVtYWlsJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImJvZHlcIlxuICAgICAgICAgICAgbGV0LWFjY291bnQ+XG4gICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJPd25lclwiPlxuICAgICAgICAgICAgICAgIHt7IGFjY291bnQub3duZXI/LmZpcnN0X25hbWUgfX0ge3sgYWNjb3VudC5vd25lcj8ubGFzdF9uYW1lIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJDb250YWN0IE5hbWVcIj5cbiAgICAgICAgICAgICAgICB7eyBhY2NvdW50LmNvbnRhY3RfbmFtZSB9fVxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICA8dGQgZGF0YS1oZWFkPVwiT3JnYW5pc2F0aW9uXCI+XG4gICAgICAgICAgICAgICAge3sgYWNjb3VudC5uYW1lIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJDb250YWN0IEVtYWlsXCI+XG4gICAgICAgICAgICAgICAge3sgYWNjb3VudC5jb250YWN0X2VtYWlsIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvcC10YWJsZT5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ0b3RhbC1yZWNvcmRzLWNvdW50XCI+e3sgJ0xhYmVsLlRvdGFsJyB8IHRyYW5zbG9jbyB9fToge3sgY3JlZGl0Q2FyZEV4cGlyaW5nLmxlbmd0aCB9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImNyZWRpdENhcmRFeHBpcmluZz8ubGVuZ3RoID09PSAwXCI+XG4gICAgICAgIDxwdy1uby1kYXRhIFt3aXRoSW1hZ2VdPVwidHJ1ZVwiIFttZXNzYWdlXT1cIidDcm0uU3VtbWFyeS5Ob0luc2lnaHRNZXNzYWdlJyB8IHRyYW5zbG9jb1wiPiA8L3B3LW5vLWRhdGE+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8IS0tIE1hZ2ljIE1vbWVudCAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIGNvbC1tZC02IG1iLTMgYW5hbHl0aWNzXCI+XG4gICAgICA8aDUgY2xhc3M9XCJhY2NvcmRpb24taGVhZGluZ1wiPk1hZ2ljIE1vbWVudDwvaDU+XG4gICAgICA8ZGl2IGNsYXNzPVwidy0xMDAgdGV4dC1jZW50ZXIgbXQtM1wiPlxuICAgICAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwiIW1hZ2ljTW9tZW50TG9hZGVkXCI+XG4gICAgICAgICAgPHAtcHJvZ3Jlc3NTcGlubmVyIHN0cm9rZVdpZHRoPVwiMlwiPiA8L3AtcHJvZ3Jlc3NTcGlubmVyPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicHJpbWVuZy1kYXRhdGFibGUtY29udGFpbmVyIHRhYmxlLXJlc3BvbnNpdmVcIlxuICAgICAgICAqbmdJZj1cIm1hZ2ljTW9tZW50Py5sZW5ndGhcIj5cbiAgICAgICAgPHAtdGFibGUgY2xhc3M9XCJ0YWJsZVwiXG4gICAgICAgICAgI2R0XG4gICAgICAgICAgW3ZhbHVlXT1cIm1hZ2ljTW9tZW50XCJcbiAgICAgICAgICBbcGFnaW5hdG9yXT1cInRydWVcIlxuICAgICAgICAgIFtyb3dzXT1cIlBBR0VfU0laRVwiXG5cbiAgICAgICAgICBbdG90YWxSZWNvcmRzXT1cIm1hZ2ljTW9tZW50Lmxlbmd0aFwiXG4gICAgICAgICAgW2xhenldPVwidHJ1ZVwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIj5cbiAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgPHRoIHNjb3BlPVwidHJ1ZVwiPnt7ICdDcm0uU3VtbWFyeS5Pd25lcicgfCB0cmFuc2xvY28gfX08L3RoPlxuICAgICAgICAgICAgICA8dGggc2NvcGU9XCJ0cnVlXCI+e3sgJ0NybS5TdW1tYXJ5LkNvbnRhY3ROYW1lJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cInRydWVcIj57eyAnQ3JtLlN1bW1hcnkuT3JnYW5pc2F0aW9uJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICAgIDx0aCBzY29wZT1cInRydWVcIj57eyAnQ3JtLlN1bW1hcnkuQ29udGFjdEVtYWlsJyB8IHRyYW5zbG9jbyB9fTwvdGg+XG4gICAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImJvZHlcIlxuICAgICAgICAgICAgbGV0LWFjY291bnQ+XG4gICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJPd25lclwiPlxuICAgICAgICAgICAgICAgIHt7IGFjY291bnQub3duZXI/LmZpcnN0X25hbWUgfX0ge3sgYWNjb3VudC5vd25lcj8ubGFzdF9uYW1lIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJDb250YWN0IE5hbWVcIj5cbiAgICAgICAgICAgICAgICB7eyBhY2NvdW50LmNvbnRhY3RfbmFtZSB9fVxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICA8dGQgZGF0YS1oZWFkPVwiT3JnYW5pc2F0aW9uXCI+XG4gICAgICAgICAgICAgICAge3sgYWNjb3VudC5uYW1lIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBkYXRhLWhlYWQ9XCJDb250YWN0IEVtYWlsXCI+XG4gICAgICAgICAgICAgICAge3sgYWNjb3VudC5jb250YWN0X2VtYWlsIH19XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvcC10YWJsZT5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ0b3RhbC1yZWNvcmRzLWNvdW50XCI+e3sgJ0xhYmVsLlRvdGFsJyB8IHRyYW5zbG9jbyB9fToge3sgbWFnaWNNb21lbnQubGVuZ3RoIH19PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwibWFnaWNNb21lbnQ/Lmxlbmd0aCA9PT0gMFwiPlxuICAgICAgICA8cHctbm8tZGF0YSBbd2l0aEltYWdlXT1cInRydWVcIiBbbWVzc2FnZV09XCInQ3JtLlN1bW1hcnkuTm9JbnNpZ2h0TWVzc2FnZScgfCB0cmFuc2xvY29cIj4gPC9wdy1uby1kYXRhPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
@@ -6,11 +6,11 @@ import * as i3 from "./smart-crm-summary-actions/smart-crm-summary-actions.compo
6
6
  import * as i4 from "./smart-crm-summary-others/smart-crm-summary-others.component";
7
7
  import * as i5 from "@ngneat/transloco";
8
8
  export class SmartCrmSummaryComponent {
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.6", ngImport: i0, type: SmartCrmSummaryComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.6", type: SmartCrmSummaryComponent, selector: "pw-smart-crm-summary", ngImport: i0, template: "<div class=\"row\">\n <div class=\"col-12 mb-0\">\n <h2>{{ 'Crm.SmartCrmSummary' | transloco }}</h2>\n <p>In this section you can see your CRM at a glance.</p>\n </div>\n</div>\n<ul ngbNav\n #nav=\"ngbNav\"\n class=\"nav-tabs\">\n <li [ngbNavItem]=\"1\">\n <a ngbNavLink>Actions</a>\n <ng-template ngbNavContent>\n <pw-smart-crm-summary-actions></pw-smart-crm-summary-actions>\n </ng-template>\n </li>\n <li [ngbNavItem]=\"2\"\n *rbacAllow=\"'Pages.Beta'\">\n <a ngbNavLink>Other</a>\n <ng-template ngbNavContent>\n <pw-smart-crm-summary-others></pw-smart-crm-summary-others>\n </ng-template>\n </li>\n</ul>\n\n<div [ngbNavOutlet]=\"nav\"></div>\n", styles: [":root{--first: rgb(23 105 225);--second: rgb(54 194 131);--third: rgb(255 171 0);--text: rgb(34 34 34);--tabs_bg: rgb(23 105 225);--tabs_text: rgb(255 255 255);--titles: rgb(34 34 34);--sidebar_bg: rgb(0, 48, 63);--sidebar_text: rgb(255 255 255)}.textarea,.control-btns{display:none}.comment,.edit-btn{display:block}.comment{border:0;border-bottom:1px solid rgb(242,242,242);color:#000;font-size:1rem;resize:none}.textarea{border:0;border-bottom:1px solid rgb(242,242,242);color:#1769e1;display:none;font-size:17px}.comment-section{min-width:350px;padding-right:45px;position:relative}.comment-section p{word-break:break-all}.comment-section.show-controls .textarea,.comment-section.show-controls .control-btns{display:block}.comment-section.show-controls .comment,.comment-section.show-controls .edit-btn{display:none}.comment-section.show-controls .control-btns.edit-control-btns{display:flex;justify-content:flex-end}.edit-btn{margin-top:-15px}.when-btn:focus{border:0;box-shadow:none}\n"], dependencies: [{ kind: "directive", type: i1.RbacAllowDirective, selector: "[rbacAllow]", inputs: ["rbacAllow"] }, { kind: "directive", type: i2.NgbNavContent, selector: "ng-template[ngbNavContent]" }, { kind: "directive", type: i2.NgbNav, selector: "[ngbNav]", inputs: ["activeId", "animation", "destroyOnHide", "orientation", "roles", "keyboard"], outputs: ["activeIdChange", "shown", "hidden", "navChange"], exportAs: ["ngbNav"] }, { kind: "directive", type: i2.NgbNavItem, selector: "[ngbNavItem]", inputs: ["destroyOnHide", "disabled", "domId", "ngbNavItem"], outputs: ["shown", "hidden"], exportAs: ["ngbNavItem"] }, { kind: "directive", type: i2.NgbNavItemRole, selector: "[ngbNavItem]:not(ng-container)" }, { kind: "directive", type: i2.NgbNavLink, selector: "a[ngbNavLink]" }, { kind: "directive", type: i2.NgbNavLinkBase, selector: "[ngbNavLink]" }, { kind: "component", type: i2.NgbNavOutlet, selector: "[ngbNavOutlet]", inputs: ["paneRole", "ngbNavOutlet"] }, { kind: "component", type: i3.SmartCrmSummaryActionsComponent, selector: "pw-smart-crm-summary-actions" }, { kind: "component", type: i4.SmartCrmSummaryOthersComponent, selector: "pw-smart-crm-summary-others" }, { kind: "pipe", type: i5.TranslocoPipe, name: "transloco" }] }); }
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SmartCrmSummaryComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: SmartCrmSummaryComponent, selector: "pw-smart-crm-summary", ngImport: i0, template: "<div class=\"row\">\n <div class=\"col-12 mb-0\">\n <h2>{{ 'Crm.SmartCrmSummary' | transloco }}</h2>\n <p>In this section you can see your CRM at a glance.</p>\n </div>\n</div>\n<ul ngbNav\n #nav=\"ngbNav\"\n class=\"nav-tabs\">\n <li [ngbNavItem]=\"1\">\n <a ngbNavLink>Actions</a>\n <ng-template ngbNavContent>\n <pw-smart-crm-summary-actions></pw-smart-crm-summary-actions>\n </ng-template>\n </li>\n <li [ngbNavItem]=\"2\"\n *rbacAllow=\"'Pages.Beta'\">\n <a ngbNavLink>Other</a>\n <ng-template ngbNavContent>\n <pw-smart-crm-summary-others></pw-smart-crm-summary-others>\n </ng-template>\n </li>\n</ul>\n\n<div [ngbNavOutlet]=\"nav\"></div>\n", styles: [":root{--first: rgb(23 105 225);--second: rgb(54 194 131);--third: rgb(255 171 0);--text: rgb(34 34 34);--tabs_bg: rgb(23 105 225);--tabs_text: rgb(255 255 255);--titles: rgb(34 34 34);--sidebar_bg: rgb(0, 48, 63);--sidebar_text: rgb(255 255 255)}.textarea,.control-btns{display:none}.comment,.edit-btn{display:block}.comment{border:0;border-bottom:1px solid rgb(242,242,242);color:#000;font-size:1rem;resize:none}.textarea{border:0;border-bottom:1px solid rgb(242,242,242);color:#1769e1;display:none;font-size:17px}.comment-section{min-width:350px;padding-right:45px;position:relative}.comment-section p{word-break:break-all}.comment-section.show-controls .textarea,.comment-section.show-controls .control-btns{display:block}.comment-section.show-controls .comment,.comment-section.show-controls .edit-btn{display:none}.comment-section.show-controls .control-btns.edit-control-btns{display:flex;justify-content:flex-end}.edit-btn{margin-top:-15px}.when-btn:focus{border:0;box-shadow:none}\n"], dependencies: [{ kind: "directive", type: i1.RbacAllowDirective, selector: "[rbacAllow]", inputs: ["rbacAllow"] }, { kind: "directive", type: i2.NgbNavContent, selector: "ng-template[ngbNavContent]" }, { kind: "directive", type: i2.NgbNav, selector: "[ngbNav]", inputs: ["activeId", "animation", "destroyOnHide", "orientation", "roles", "keyboard"], outputs: ["activeIdChange", "shown", "hidden", "navChange"], exportAs: ["ngbNav"] }, { kind: "directive", type: i2.NgbNavItem, selector: "[ngbNavItem]", inputs: ["destroyOnHide", "disabled", "domId", "ngbNavItem"], outputs: ["shown", "hidden"], exportAs: ["ngbNavItem"] }, { kind: "directive", type: i2.NgbNavItemRole, selector: "[ngbNavItem]:not(ng-container)" }, { kind: "directive", type: i2.NgbNavLink, selector: "a[ngbNavLink]" }, { kind: "directive", type: i2.NgbNavLinkBase, selector: "[ngbNavLink]" }, { kind: "component", type: i2.NgbNavOutlet, selector: "[ngbNavOutlet]", inputs: ["paneRole", "ngbNavOutlet"] }, { kind: "component", type: i3.SmartCrmSummaryActionsComponent, selector: "pw-smart-crm-summary-actions" }, { kind: "component", type: i4.SmartCrmSummaryOthersComponent, selector: "pw-smart-crm-summary-others" }, { kind: "pipe", type: i5.TranslocoPipe, name: "transloco" }] }); }
11
11
  }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.6", ngImport: i0, type: SmartCrmSummaryComponent, decorators: [{
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SmartCrmSummaryComponent, decorators: [{
13
13
  type: Component,
14
14
  args: [{ selector: 'pw-smart-crm-summary', template: "<div class=\"row\">\n <div class=\"col-12 mb-0\">\n <h2>{{ 'Crm.SmartCrmSummary' | transloco }}</h2>\n <p>In this section you can see your CRM at a glance.</p>\n </div>\n</div>\n<ul ngbNav\n #nav=\"ngbNav\"\n class=\"nav-tabs\">\n <li [ngbNavItem]=\"1\">\n <a ngbNavLink>Actions</a>\n <ng-template ngbNavContent>\n <pw-smart-crm-summary-actions></pw-smart-crm-summary-actions>\n </ng-template>\n </li>\n <li [ngbNavItem]=\"2\"\n *rbacAllow=\"'Pages.Beta'\">\n <a ngbNavLink>Other</a>\n <ng-template ngbNavContent>\n <pw-smart-crm-summary-others></pw-smart-crm-summary-others>\n </ng-template>\n </li>\n</ul>\n\n<div [ngbNavOutlet]=\"nav\"></div>\n", styles: [":root{--first: rgb(23 105 225);--second: rgb(54 194 131);--third: rgb(255 171 0);--text: rgb(34 34 34);--tabs_bg: rgb(23 105 225);--tabs_text: rgb(255 255 255);--titles: rgb(34 34 34);--sidebar_bg: rgb(0, 48, 63);--sidebar_text: rgb(255 255 255)}.textarea,.control-btns{display:none}.comment,.edit-btn{display:block}.comment{border:0;border-bottom:1px solid rgb(242,242,242);color:#000;font-size:1rem;resize:none}.textarea{border:0;border-bottom:1px solid rgb(242,242,242);color:#1769e1;display:none;font-size:17px}.comment-section{min-width:350px;padding-right:45px;position:relative}.comment-section p{word-break:break-all}.comment-section.show-controls .textarea,.comment-section.show-controls .control-btns{display:block}.comment-section.show-controls .comment,.comment-section.show-controls .edit-btn{display:none}.comment-section.show-controls .control-btns.edit-control-btns{display:flex;justify-content:flex-end}.edit-btn{margin-top:-15px}.when-btn:focus{border:0;box-shadow:none}\n"] }]
15
15
  }] });
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtY3JtLXN1bW1hcnkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zbWFydC1jcm0vc3JjL2xpYi9wcml2YXRlL2NvbXBvbmVudHMvc21hcnQtY3JtLXN1bW1hcnkvc21hcnQtY3JtLXN1bW1hcnkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zbWFydC1jcm0vc3JjL2xpYi9wcml2YXRlL2NvbXBvbmVudHMvc21hcnQtY3JtLXN1bW1hcnkvc21hcnQtY3JtLXN1bW1hcnkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7OztBQU8xQyxNQUFNLE9BQU8sd0JBQXdCOzhHQUF4Qix3QkFBd0I7a0dBQXhCLHdCQUF3Qiw0RENQckMsc3JCQXlCQTs7MkZEbEJhLHdCQUF3QjtrQkFMcEMsU0FBUzsrQkFDSSxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdwdy1zbWFydC1jcm0tc3VtbWFyeScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NtYXJ0LWNybS1zdW1tYXJ5LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9zbWFydC1jcm0tc3VtbWFyeS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFNtYXJ0Q3JtU3VtbWFyeUNvbXBvbmVudCB7fVxuIiwiPGRpdiBjbGFzcz1cInJvd1wiPlxuICA8ZGl2IGNsYXNzPVwiY29sLTEyIG1iLTBcIj5cbiAgICA8aDI+e3sgJ0NybS5TbWFydENybVN1bW1hcnknIHwgdHJhbnNsb2NvIH19PC9oMj5cbiAgICA8cD5JbiB0aGlzIHNlY3Rpb24geW91IGNhbiBzZWUgeW91ciBDUk0gYXQgYSBnbGFuY2UuPC9wPlxuICA8L2Rpdj5cbjwvZGl2PlxuPHVsIG5nYk5hdlxuICAjbmF2PVwibmdiTmF2XCJcbiAgY2xhc3M9XCJuYXYtdGFic1wiPlxuICA8bGkgW25nYk5hdkl0ZW1dPVwiMVwiPlxuICAgIDxhIG5nYk5hdkxpbms+QWN0aW9uczwvYT5cbiAgICA8bmctdGVtcGxhdGUgbmdiTmF2Q29udGVudD5cbiAgICAgIDxwdy1zbWFydC1jcm0tc3VtbWFyeS1hY3Rpb25zPjwvcHctc21hcnQtY3JtLXN1bW1hcnktYWN0aW9ucz5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2xpPlxuICA8bGkgW25nYk5hdkl0ZW1dPVwiMlwiXG4gICAgKnJiYWNBbGxvdz1cIidQYWdlcy5CZXRhJ1wiPlxuICAgIDxhIG5nYk5hdkxpbms+T3RoZXI8L2E+XG4gICAgPG5nLXRlbXBsYXRlIG5nYk5hdkNvbnRlbnQ+XG4gICAgICA8cHctc21hcnQtY3JtLXN1bW1hcnktb3RoZXJzPjwvcHctc21hcnQtY3JtLXN1bW1hcnktb3RoZXJzPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvbGk+XG48L3VsPlxuXG48ZGl2IFtuZ2JOYXZPdXRsZXRdPVwibmF2XCI+PC9kaXY+XG4iXX0=
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtY3JtLXN1bW1hcnkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zbWFydC1jcm0vc3JjL2xpYi9wcml2YXRlL2NvbXBvbmVudHMvc21hcnQtY3JtLXN1bW1hcnkvc21hcnQtY3JtLXN1bW1hcnkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zbWFydC1jcm0vc3JjL2xpYi9wcml2YXRlL2NvbXBvbmVudHMvc21hcnQtY3JtLXN1bW1hcnkvc21hcnQtY3JtLXN1bW1hcnkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7OztBQU8xQyxNQUFNLE9BQU8sd0JBQXdCOytHQUF4Qix3QkFBd0I7bUdBQXhCLHdCQUF3Qiw0RENQckMsc3JCQXlCQTs7NEZEbEJhLHdCQUF3QjtrQkFMcEMsU0FBUzsrQkFDSSxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdwdy1zbWFydC1jcm0tc3VtbWFyeScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NtYXJ0LWNybS1zdW1tYXJ5LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9zbWFydC1jcm0tc3VtbWFyeS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFNtYXJ0Q3JtU3VtbWFyeUNvbXBvbmVudCB7fVxuIiwiPGRpdiBjbGFzcz1cInJvd1wiPlxuICA8ZGl2IGNsYXNzPVwiY29sLTEyIG1iLTBcIj5cbiAgICA8aDI+e3sgJ0NybS5TbWFydENybVN1bW1hcnknIHwgdHJhbnNsb2NvIH19PC9oMj5cbiAgICA8cD5JbiB0aGlzIHNlY3Rpb24geW91IGNhbiBzZWUgeW91ciBDUk0gYXQgYSBnbGFuY2UuPC9wPlxuICA8L2Rpdj5cbjwvZGl2PlxuPHVsIG5nYk5hdlxuICAjbmF2PVwibmdiTmF2XCJcbiAgY2xhc3M9XCJuYXYtdGFic1wiPlxuICA8bGkgW25nYk5hdkl0ZW1dPVwiMVwiPlxuICAgIDxhIG5nYk5hdkxpbms+QWN0aW9uczwvYT5cbiAgICA8bmctdGVtcGxhdGUgbmdiTmF2Q29udGVudD5cbiAgICAgIDxwdy1zbWFydC1jcm0tc3VtbWFyeS1hY3Rpb25zPjwvcHctc21hcnQtY3JtLXN1bW1hcnktYWN0aW9ucz5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2xpPlxuICA8bGkgW25nYk5hdkl0ZW1dPVwiMlwiXG4gICAgKnJiYWNBbGxvdz1cIidQYWdlcy5CZXRhJ1wiPlxuICAgIDxhIG5nYk5hdkxpbms+T3RoZXI8L2E+XG4gICAgPG5nLXRlbXBsYXRlIG5nYk5hdkNvbnRlbnQ+XG4gICAgICA8cHctc21hcnQtY3JtLXN1bW1hcnktb3RoZXJzPjwvcHctc21hcnQtY3JtLXN1bW1hcnktb3RoZXJzPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvbGk+XG48L3VsPlxuXG48ZGl2IFtuZ2JOYXZPdXRsZXRdPVwibmF2XCI+PC9kaXY+XG4iXX0=
@@ -79,14 +79,14 @@ export class SmartCrmTabsComponent extends AppBaseComponent {
79
79
  }
80
80
  ];
81
81
  }
82
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.6", ngImport: i0, type: SmartCrmTabsComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
83
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.6", type: SmartCrmTabsComponent, selector: "pw-smart-crm-private-tabs", usesInheritance: true, ngImport: i0, template: `<pw-tabs [items]="items" [withSubscription]="true"></pw-tabs>`, isInline: true, dependencies: [{ kind: "component", type: i1.PwTabsComponent, selector: "pw-tabs", inputs: ["items", "withSubscription"] }] }); }
82
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SmartCrmTabsComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
83
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: SmartCrmTabsComponent, selector: "pw-smart-crm-private-tabs", usesInheritance: true, ngImport: i0, template: `<pw-tabs [items]="items" [withSubscription]="true"></pw-tabs>`, isInline: true, dependencies: [{ kind: "component", type: i1.PwTabsComponent, selector: "pw-tabs", inputs: ["items", "withSubscription"] }] }); }
84
84
  }
85
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.6", ngImport: i0, type: SmartCrmTabsComponent, decorators: [{
85
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SmartCrmTabsComponent, decorators: [{
86
86
  type: Component,
87
87
  args: [{
88
88
  selector: 'pw-smart-crm-private-tabs',
89
89
  template: `<pw-tabs [items]="items" [withSubscription]="true"></pw-tabs>`
90
90
  }]
91
91
  }], ctorParameters: () => [{ type: i0.Injector }] });
92
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtY3JtLXRhYnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zbWFydC1jcm0vc3JjL2xpYi9wcml2YXRlL2NvbXBvbmVudHMvc21hcnQtY3JtLXRhYnMvc21hcnQtY3JtLXRhYnMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3BELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7O0FBTTdELE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxnQkFBZ0I7SUFHdkQsWUFBWSxRQUFrQjtRQUMxQixLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDaEIsSUFBSSxDQUFDLEtBQUssR0FBRztZQUNUO2dCQUNJLEVBQUUsRUFBRSxhQUFhO2dCQUNqQixLQUFLLEVBQUUsU0FBUztnQkFDaEIsSUFBSSxFQUFFLGtCQUFrQjtnQkFDeEIsVUFBVSxFQUFFLENBQUMsY0FBYyxDQUFDO2dCQUM1QixPQUFPLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLG1CQUFtQixDQUFDLEdBQUcsZUFBZSxDQUFDLE9BQU8sRUFBRSxDQUFDO2FBQ3BGO1lBQ0Q7Z0JBQ0ksRUFBRSxFQUFFLGNBQWM7Z0JBQ2xCLEtBQUssRUFBRSxVQUFVO2dCQUNqQixJQUFJLEVBQUUscUJBQXFCO2dCQUMzQixVQUFVLEVBQUUsQ0FBQyxlQUFlLENBQUM7Z0JBQzdCLE9BQU8sRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsbUJBQW1CLENBQUMsR0FBRyxlQUFlLENBQUMsUUFBUSxFQUFFLENBQUM7YUFDckY7WUFDRDtnQkFDSSxFQUFFLEVBQUUsY0FBYztnQkFDbEIsS0FBSyxFQUFFLFVBQVU7Z0JBQ2pCLElBQUksRUFBRSxtQkFBbUI7Z0JBQ3pCLFVBQVUsRUFBRSxDQUFDLGVBQWUsQ0FBQztnQkFDN0IsT0FBTyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLGVBQWUsQ0FBQyxRQUFRLEVBQUUsQ0FBQzthQUNyRjtZQUNEO2dCQUNJLEVBQUUsRUFBRSxXQUFXO2dCQUNmLEtBQUssRUFBRSxPQUFPO2dCQUNkLElBQUksRUFBRSxpQkFBaUI7Z0JBQ3ZCLFVBQVUsRUFBRSxDQUFDLFlBQVksQ0FBQztnQkFDMUIsT0FBTyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLGVBQWUsQ0FBQyxLQUFLLEVBQUUsQ0FBQzthQUNsRjtZQUNEO2dCQUNJLEVBQUUsRUFBRSxtQkFBbUI7Z0JBQ3ZCLEtBQUssRUFBRSxlQUFlO2dCQUN0QixJQUFJLEVBQUUsaUJBQWlCO2dCQUN2QixVQUFVLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztnQkFDbEMsT0FBTyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxtQkFBbUIsQ0FDL0MsR0FBRyxlQUFlLENBQUMsYUFBYSxFQUFFLENBQ3JDO2FBQ0o7WUFDRDtnQkFDSSxFQUFFLEVBQUUsZUFBZTtnQkFDbkIsS0FBSyxFQUFFLFdBQVc7Z0JBQ2xCLElBQUksRUFBRSxpQkFBaUI7Z0JBQ3ZCLFVBQVUsRUFBRSxDQUFDLGdCQUFnQixDQUFDO2dCQUM5QixPQUFPLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLG1CQUFtQixDQUFDLEdBQUcsZUFBZSxDQUFDLFNBQVMsRUFBRSxDQUFDO2FBQ3RGO1lBQ0Q7Z0JBQ0ksRUFBRSxFQUFFLGtCQUFrQjtnQkFDdEIsS0FBSyxFQUFFLGtCQUFrQjtnQkFDekIsSUFBSSxFQUFFLG9CQUFvQjtnQkFDMUIsVUFBVSxFQUFFLENBQUMsdUJBQXVCLENBQUM7Z0JBQ3JDLE9BQU8sRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsbUJBQW1CLENBQy9DLEdBQUcsZUFBZSxDQUFDLGVBQWUsRUFBRSxDQUN2QzthQUNKO1lBQ0Q7Z0JBQ0ksRUFBRSxFQUFFLGFBQWE7Z0JBQ2pCLEtBQUssRUFBRSxhQUFhO2dCQUNwQixJQUFJLEVBQUUsY0FBYztnQkFDcEIsVUFBVSxFQUFFLENBQUMsa0JBQWtCLENBQUM7Z0JBQ2hDLE9BQU8sRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsbUJBQW1CLENBQy9DLEdBQUcsZUFBZSxDQUFDLFdBQVcsRUFBRSxDQUNuQzthQUNKO1lBQ0Q7Z0JBQ0ksRUFBRSxFQUFFLGFBQWE7Z0JBQ2pCLEtBQUssRUFBRSxTQUFTO2dCQUNoQixJQUFJLEVBQUUsdUJBQXVCO2dCQUM3QixVQUFVLEVBQUUsQ0FBQyxjQUFjLENBQUM7Z0JBQzVCLE9BQU8sRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsbUJBQW1CLENBQUMsR0FBRyxlQUFlLENBQUMsT0FBTyxFQUFFLENBQUM7YUFDcEY7WUFDRDtnQkFDSSxFQUFFLEVBQUUsbUJBQW1CO2dCQUN2QixLQUFLLEVBQUUsZUFBZTtnQkFDdEIsSUFBSSxFQUFFLGlCQUFpQjtnQkFDdkIsVUFBVSxFQUFFLENBQUMsb0JBQW9CLENBQUM7Z0JBQ2xDLE9BQU8sRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsbUJBQW1CLENBQy9DLEdBQUcsZUFBZSxDQUFDLGFBQWEsRUFBRSxDQUNyQzthQUNKO1NBQ0osQ0FBQztJQUNOLENBQUM7OEdBckZRLHFCQUFxQjtrR0FBckIscUJBQXFCLHdGQUZwQiwrREFBK0Q7OzJGQUVoRSxxQkFBcUI7a0JBSmpDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDJCQUEyQjtvQkFDckMsUUFBUSxFQUFFLCtEQUErRDtpQkFDNUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNZW51SXRlbSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcblxuaW1wb3J0IHsgQXBwQmFzZUNvbXBvbmVudCB9IGZyb20gJ0Bwb3Npd2lzZS9hcHAtYmFzZS1jb21wb25lbnQnO1xuaW1wb3J0IHsgQ1JNX1BFUk1JU1NJT05TIH0gZnJvbSAnQHBvc2l3aXNlL3NtYXJ0LWNybS1zaGFyZWQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3B3LXNtYXJ0LWNybS1wcml2YXRlLXRhYnMnLFxuICAgIHRlbXBsYXRlOiBgPHB3LXRhYnMgW2l0ZW1zXT1cIml0ZW1zXCIgW3dpdGhTdWJzY3JpcHRpb25dPVwidHJ1ZVwiPjwvcHctdGFicz5gXG59KVxuZXhwb3J0IGNsYXNzIFNtYXJ0Q3JtVGFic0NvbXBvbmVudCBleHRlbmRzIEFwcEJhc2VDb21wb25lbnQge1xuICAgIGl0ZW1zOiBNZW51SXRlbVtdO1xuXG4gICAgY29uc3RydWN0b3IoaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgICAgIHN1cGVyKGluamVjdG9yKTtcbiAgICAgICAgdGhpcy5pdGVtcyA9IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpZDogJ3N1bW1hcnlfdGFiJyxcbiAgICAgICAgICAgICAgICBsYWJlbDogJ1N1bW1hcnknLFxuICAgICAgICAgICAgICAgIGljb246ICdmYSBmYS1mdyBmYS1saXN0JyxcbiAgICAgICAgICAgICAgICByb3V0ZXJMaW5rOiBbJy9jcm0vc3VtbWFyeSddLFxuICAgICAgICAgICAgICAgIHZpc2libGU6IHRoaXMucGVybWlzc2lvblNlcnZpY2UuZXZhbHVhdGVQZXJtaXNzaW9ucyhgJHtDUk1fUEVSTUlTU0lPTlMuU3VtbWFyeX1gKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpZDogJ2FjY291bnRzX3RhYicsXG4gICAgICAgICAgICAgICAgbGFiZWw6ICdBY2NvdW50cycsXG4gICAgICAgICAgICAgICAgaWNvbjogJ2ZhcyBmYS11c2VyLWZyaWVuZHMnLFxuICAgICAgICAgICAgICAgIHJvdXRlckxpbms6IFsnL2NybS9hY2NvdW50cyddLFxuICAgICAgICAgICAgICAgIHZpc2libGU6IHRoaXMucGVybWlzc2lvblNlcnZpY2UuZXZhbHVhdGVQZXJtaXNzaW9ucyhgJHtDUk1fUEVSTUlTU0lPTlMuQWNjb3VudHN9YClcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaWQ6ICdjb250YWN0c190YWInLFxuICAgICAgICAgICAgICAgIGxhYmVsOiAnQ29udGFjdHMnLFxuICAgICAgICAgICAgICAgIGljb246ICdmYSBmYS1mdyBmYS11c2VycycsXG4gICAgICAgICAgICAgICAgcm91dGVyTGluazogWycvY3JtL2NvbnRhY3RzJ10sXG4gICAgICAgICAgICAgICAgdmlzaWJsZTogdGhpcy5wZXJtaXNzaW9uU2VydmljZS5ldmFsdWF0ZVBlcm1pc3Npb25zKGAke0NSTV9QRVJNSVNTSU9OUy5Db250YWN0c31gKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpZDogJ2xlYWRzX3RhYicsXG4gICAgICAgICAgICAgICAgbGFiZWw6ICdMZWFkcycsXG4gICAgICAgICAgICAgICAgaWNvbjogJ2ZhIGZhLWZ3IGZhLWNvZycsXG4gICAgICAgICAgICAgICAgcm91dGVyTGluazogWycvY3JtL2xlYWRzJ10sXG4gICAgICAgICAgICAgICAgdmlzaWJsZTogdGhpcy5wZXJtaXNzaW9uU2VydmljZS5ldmFsdWF0ZVBlcm1pc3Npb25zKGAke0NSTV9QRVJNSVNTSU9OUy5MZWFkc31gKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpZDogJ29wcG9ydHVuaXRpZXNfdGFiJyxcbiAgICAgICAgICAgICAgICBsYWJlbDogJ09wcG9ydHVuaXRpZXMnLFxuICAgICAgICAgICAgICAgIGljb246ICdmYSBmYS1oYW5kc2hha2UnLFxuICAgICAgICAgICAgICAgIHJvdXRlckxpbms6IFsnL2NybS9vcHBvcnR1bml0aWVzJ10sXG4gICAgICAgICAgICAgICAgdmlzaWJsZTogdGhpcy5wZXJtaXNzaW9uU2VydmljZS5ldmFsdWF0ZVBlcm1pc3Npb25zKFxuICAgICAgICAgICAgICAgICAgICBgJHtDUk1fUEVSTUlTU0lPTlMuT3Bwb3J0dW5pdGllc31gXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpZDogJ21hcmtldGluZ190YWInLFxuICAgICAgICAgICAgICAgIGxhYmVsOiAnTWFya2V0aW5nJyxcbiAgICAgICAgICAgICAgICBpY29uOiAnZmFzIGZhLWJ1bGxob3JuJyxcbiAgICAgICAgICAgICAgICByb3V0ZXJMaW5rOiBbJy9jcm0vbWFya2V0aW5nJ10sXG4gICAgICAgICAgICAgICAgdmlzaWJsZTogdGhpcy5wZXJtaXNzaW9uU2VydmljZS5ldmFsdWF0ZVBlcm1pc3Npb25zKGAke0NSTV9QRVJNSVNTSU9OUy5NYXJrZXRpbmd9YClcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaWQ6ICdjdXN0b21lci1zdWNjZXNzJyxcbiAgICAgICAgICAgICAgICBsYWJlbDogJ0N1c3RvbWVyIFN1Y2Nlc3MnLFxuICAgICAgICAgICAgICAgIGljb246ICdmYSBmYS1jaGVjay1jaXJjbGUnLFxuICAgICAgICAgICAgICAgIHJvdXRlckxpbms6IFsnL2NybS9jdXN0b21lci1zdWNjZXNzJ10sXG4gICAgICAgICAgICAgICAgdmlzaWJsZTogdGhpcy5wZXJtaXNzaW9uU2VydmljZS5ldmFsdWF0ZVBlcm1pc3Npb25zKFxuICAgICAgICAgICAgICAgICAgICBgJHtDUk1fUEVSTUlTU0lPTlMuQ3VzdG9tZXJTdWNjZXNzfWBcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGlkOiAnY29tcGV0aXRpb24nLFxuICAgICAgICAgICAgICAgIGxhYmVsOiAnQ29tcGV0aXRpb24nLFxuICAgICAgICAgICAgICAgIGljb246ICdmYSBmYS10cm9waHknLFxuICAgICAgICAgICAgICAgIHJvdXRlckxpbms6IFsnL2NybS9jb21wZXRpdGlvbiddLFxuICAgICAgICAgICAgICAgIHZpc2libGU6IHRoaXMucGVybWlzc2lvblNlcnZpY2UuZXZhbHVhdGVQZXJtaXNzaW9ucyhcbiAgICAgICAgICAgICAgICAgICAgYCR7Q1JNX1BFUk1JU1NJT05TLkNvbXBldGl0aW9ufWBcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGlkOiAnaW5zaWdodF90YWInLFxuICAgICAgICAgICAgICAgIGxhYmVsOiAnSW5zaWdodCcsXG4gICAgICAgICAgICAgICAgaWNvbjogJ2ZhIGZhLWZ3IGZhLXNpZ25hdHVyZScsXG4gICAgICAgICAgICAgICAgcm91dGVyTGluazogWycvY3JtL2luc2lnaHQnXSxcbiAgICAgICAgICAgICAgICB2aXNpYmxlOiB0aGlzLnBlcm1pc3Npb25TZXJ2aWNlLmV2YWx1YXRlUGVybWlzc2lvbnMoYCR7Q1JNX1BFUk1JU1NJT05TLkluc2lnaHR9YClcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaWQ6ICdjb25maWd1cmF0aW9uX3RhYicsXG4gICAgICAgICAgICAgICAgbGFiZWw6ICdDb25maWd1cmF0aW9uJyxcbiAgICAgICAgICAgICAgICBpY29uOiAnZmEgZmEtZncgZmEtY29nJyxcbiAgICAgICAgICAgICAgICByb3V0ZXJMaW5rOiBbJy9jcm0vY29uZmlndXJhdGlvbiddLFxuICAgICAgICAgICAgICAgIHZpc2libGU6IHRoaXMucGVybWlzc2lvblNlcnZpY2UuZXZhbHVhdGVQZXJtaXNzaW9ucyhcbiAgICAgICAgICAgICAgICAgICAgYCR7Q1JNX1BFUk1JU1NJT05TLkNvbmZpZ3VyYXRpb259YFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgIH1cbiAgICAgICAgXTtcbiAgICB9XG59XG4iXX0=
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtY3JtLXRhYnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zbWFydC1jcm0vc3JjL2xpYi9wcml2YXRlL2NvbXBvbmVudHMvc21hcnQtY3JtLXRhYnMvc21hcnQtY3JtLXRhYnMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3BELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7O0FBTTdELE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxnQkFBZ0I7SUFHdkQsWUFBWSxRQUFrQjtRQUMxQixLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDaEIsSUFBSSxDQUFDLEtBQUssR0FBRztZQUNUO2dCQUNJLEVBQUUsRUFBRSxhQUFhO2dCQUNqQixLQUFLLEVBQUUsU0FBUztnQkFDaEIsSUFBSSxFQUFFLGtCQUFrQjtnQkFDeEIsVUFBVSxFQUFFLENBQUMsY0FBYyxDQUFDO2dCQUM1QixPQUFPLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLG1CQUFtQixDQUFDLEdBQUcsZUFBZSxDQUFDLE9BQU8sRUFBRSxDQUFDO2FBQ3BGO1lBQ0Q7Z0JBQ0ksRUFBRSxFQUFFLGNBQWM7Z0JBQ2xCLEtBQUssRUFBRSxVQUFVO2dCQUNqQixJQUFJLEVBQUUscUJBQXFCO2dCQUMzQixVQUFVLEVBQUUsQ0FBQyxlQUFlLENBQUM7Z0JBQzdCLE9BQU8sRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsbUJBQW1CLENBQUMsR0FBRyxlQUFlLENBQUMsUUFBUSxFQUFFLENBQUM7YUFDckY7WUFDRDtnQkFDSSxFQUFFLEVBQUUsY0FBYztnQkFDbEIsS0FBSyxFQUFFLFVBQVU7Z0JBQ2pCLElBQUksRUFBRSxtQkFBbUI7Z0JBQ3pCLFVBQVUsRUFBRSxDQUFDLGVBQWUsQ0FBQztnQkFDN0IsT0FBTyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLGVBQWUsQ0FBQyxRQUFRLEVBQUUsQ0FBQzthQUNyRjtZQUNEO2dCQUNJLEVBQUUsRUFBRSxXQUFXO2dCQUNmLEtBQUssRUFBRSxPQUFPO2dCQUNkLElBQUksRUFBRSxpQkFBaUI7Z0JBQ3ZCLFVBQVUsRUFBRSxDQUFDLFlBQVksQ0FBQztnQkFDMUIsT0FBTyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLGVBQWUsQ0FBQyxLQUFLLEVBQUUsQ0FBQzthQUNsRjtZQUNEO2dCQUNJLEVBQUUsRUFBRSxtQkFBbUI7Z0JBQ3ZCLEtBQUssRUFBRSxlQUFlO2dCQUN0QixJQUFJLEVBQUUsaUJBQWlCO2dCQUN2QixVQUFVLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztnQkFDbEMsT0FBTyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxtQkFBbUIsQ0FDL0MsR0FBRyxlQUFlLENBQUMsYUFBYSxFQUFFLENBQ3JDO2FBQ0o7WUFDRDtnQkFDSSxFQUFFLEVBQUUsZUFBZTtnQkFDbkIsS0FBSyxFQUFFLFdBQVc7Z0JBQ2xCLElBQUksRUFBRSxpQkFBaUI7Z0JBQ3ZCLFVBQVUsRUFBRSxDQUFDLGdCQUFnQixDQUFDO2dCQUM5QixPQUFPLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLG1CQUFtQixDQUFDLEdBQUcsZUFBZSxDQUFDLFNBQVMsRUFBRSxDQUFDO2FBQ3RGO1lBQ0Q7Z0JBQ0ksRUFBRSxFQUFFLGtCQUFrQjtnQkFDdEIsS0FBSyxFQUFFLGtCQUFrQjtnQkFDekIsSUFBSSxFQUFFLG9CQUFvQjtnQkFDMUIsVUFBVSxFQUFFLENBQUMsdUJBQXVCLENBQUM7Z0JBQ3JDLE9BQU8sRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsbUJBQW1CLENBQy9DLEdBQUcsZUFBZSxDQUFDLGVBQWUsRUFBRSxDQUN2QzthQUNKO1lBQ0Q7Z0JBQ0ksRUFBRSxFQUFFLGFBQWE7Z0JBQ2pCLEtBQUssRUFBRSxhQUFhO2dCQUNwQixJQUFJLEVBQUUsY0FBYztnQkFDcEIsVUFBVSxFQUFFLENBQUMsa0JBQWtCLENBQUM7Z0JBQ2hDLE9BQU8sRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsbUJBQW1CLENBQy9DLEdBQUcsZUFBZSxDQUFDLFdBQVcsRUFBRSxDQUNuQzthQUNKO1lBQ0Q7Z0JBQ0ksRUFBRSxFQUFFLGFBQWE7Z0JBQ2pCLEtBQUssRUFBRSxTQUFTO2dCQUNoQixJQUFJLEVBQUUsdUJBQXVCO2dCQUM3QixVQUFVLEVBQUUsQ0FBQyxjQUFjLENBQUM7Z0JBQzVCLE9BQU8sRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsbUJBQW1CLENBQUMsR0FBRyxlQUFlLENBQUMsT0FBTyxFQUFFLENBQUM7YUFDcEY7WUFDRDtnQkFDSSxFQUFFLEVBQUUsbUJBQW1CO2dCQUN2QixLQUFLLEVBQUUsZUFBZTtnQkFDdEIsSUFBSSxFQUFFLGlCQUFpQjtnQkFDdkIsVUFBVSxFQUFFLENBQUMsb0JBQW9CLENBQUM7Z0JBQ2xDLE9BQU8sRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsbUJBQW1CLENBQy9DLEdBQUcsZUFBZSxDQUFDLGFBQWEsRUFBRSxDQUNyQzthQUNKO1NBQ0osQ0FBQztJQUNOLENBQUM7K0dBckZRLHFCQUFxQjttR0FBckIscUJBQXFCLHdGQUZwQiwrREFBK0Q7OzRGQUVoRSxxQkFBcUI7a0JBSmpDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDJCQUEyQjtvQkFDckMsUUFBUSxFQUFFLCtEQUErRDtpQkFDNUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNZW51SXRlbSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcblxuaW1wb3J0IHsgQXBwQmFzZUNvbXBvbmVudCB9IGZyb20gJ0Bwb3Npd2lzZS9hcHAtYmFzZS1jb21wb25lbnQnO1xuaW1wb3J0IHsgQ1JNX1BFUk1JU1NJT05TIH0gZnJvbSAnQHBvc2l3aXNlL3NtYXJ0LWNybS1zaGFyZWQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3B3LXNtYXJ0LWNybS1wcml2YXRlLXRhYnMnLFxuICAgIHRlbXBsYXRlOiBgPHB3LXRhYnMgW2l0ZW1zXT1cIml0ZW1zXCIgW3dpdGhTdWJzY3JpcHRpb25dPVwidHJ1ZVwiPjwvcHctdGFicz5gXG59KVxuZXhwb3J0IGNsYXNzIFNtYXJ0Q3JtVGFic0NvbXBvbmVudCBleHRlbmRzIEFwcEJhc2VDb21wb25lbnQge1xuICAgIGl0ZW1zOiBNZW51SXRlbVtdO1xuXG4gICAgY29uc3RydWN0b3IoaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgICAgIHN1cGVyKGluamVjdG9yKTtcbiAgICAgICAgdGhpcy5pdGVtcyA9IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpZDogJ3N1bW1hcnlfdGFiJyxcbiAgICAgICAgICAgICAgICBsYWJlbDogJ1N1bW1hcnknLFxuICAgICAgICAgICAgICAgIGljb246ICdmYSBmYS1mdyBmYS1saXN0JyxcbiAgICAgICAgICAgICAgICByb3V0ZXJMaW5rOiBbJy9jcm0vc3VtbWFyeSddLFxuICAgICAgICAgICAgICAgIHZpc2libGU6IHRoaXMucGVybWlzc2lvblNlcnZpY2UuZXZhbHVhdGVQZXJtaXNzaW9ucyhgJHtDUk1fUEVSTUlTU0lPTlMuU3VtbWFyeX1gKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpZDogJ2FjY291bnRzX3RhYicsXG4gICAgICAgICAgICAgICAgbGFiZWw6ICdBY2NvdW50cycsXG4gICAgICAgICAgICAgICAgaWNvbjogJ2ZhcyBmYS11c2VyLWZyaWVuZHMnLFxuICAgICAgICAgICAgICAgIHJvdXRlckxpbms6IFsnL2NybS9hY2NvdW50cyddLFxuICAgICAgICAgICAgICAgIHZpc2libGU6IHRoaXMucGVybWlzc2lvblNlcnZpY2UuZXZhbHVhdGVQZXJtaXNzaW9ucyhgJHtDUk1fUEVSTUlTU0lPTlMuQWNjb3VudHN9YClcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaWQ6ICdjb250YWN0c190YWInLFxuICAgICAgICAgICAgICAgIGxhYmVsOiAnQ29udGFjdHMnLFxuICAgICAgICAgICAgICAgIGljb246ICdmYSBmYS1mdyBmYS11c2VycycsXG4gICAgICAgICAgICAgICAgcm91dGVyTGluazogWycvY3JtL2NvbnRhY3RzJ10sXG4gICAgICAgICAgICAgICAgdmlzaWJsZTogdGhpcy5wZXJtaXNzaW9uU2VydmljZS5ldmFsdWF0ZVBlcm1pc3Npb25zKGAke0NSTV9QRVJNSVNTSU9OUy5Db250YWN0c31gKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpZDogJ2xlYWRzX3RhYicsXG4gICAgICAgICAgICAgICAgbGFiZWw6ICdMZWFkcycsXG4gICAgICAgICAgICAgICAgaWNvbjogJ2ZhIGZhLWZ3IGZhLWNvZycsXG4gICAgICAgICAgICAgICAgcm91dGVyTGluazogWycvY3JtL2xlYWRzJ10sXG4gICAgICAgICAgICAgICAgdmlzaWJsZTogdGhpcy5wZXJtaXNzaW9uU2VydmljZS5ldmFsdWF0ZVBlcm1pc3Npb25zKGAke0NSTV9QRVJNSVNTSU9OUy5MZWFkc31gKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpZDogJ29wcG9ydHVuaXRpZXNfdGFiJyxcbiAgICAgICAgICAgICAgICBsYWJlbDogJ09wcG9ydHVuaXRpZXMnLFxuICAgICAgICAgICAgICAgIGljb246ICdmYSBmYS1oYW5kc2hha2UnLFxuICAgICAgICAgICAgICAgIHJvdXRlckxpbms6IFsnL2NybS9vcHBvcnR1bml0aWVzJ10sXG4gICAgICAgICAgICAgICAgdmlzaWJsZTogdGhpcy5wZXJtaXNzaW9uU2VydmljZS5ldmFsdWF0ZVBlcm1pc3Npb25zKFxuICAgICAgICAgICAgICAgICAgICBgJHtDUk1fUEVSTUlTU0lPTlMuT3Bwb3J0dW5pdGllc31gXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpZDogJ21hcmtldGluZ190YWInLFxuICAgICAgICAgICAgICAgIGxhYmVsOiAnTWFya2V0aW5nJyxcbiAgICAgICAgICAgICAgICBpY29uOiAnZmFzIGZhLWJ1bGxob3JuJyxcbiAgICAgICAgICAgICAgICByb3V0ZXJMaW5rOiBbJy9jcm0vbWFya2V0aW5nJ10sXG4gICAgICAgICAgICAgICAgdmlzaWJsZTogdGhpcy5wZXJtaXNzaW9uU2VydmljZS5ldmFsdWF0ZVBlcm1pc3Npb25zKGAke0NSTV9QRVJNSVNTSU9OUy5NYXJrZXRpbmd9YClcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaWQ6ICdjdXN0b21lci1zdWNjZXNzJyxcbiAgICAgICAgICAgICAgICBsYWJlbDogJ0N1c3RvbWVyIFN1Y2Nlc3MnLFxuICAgICAgICAgICAgICAgIGljb246ICdmYSBmYS1jaGVjay1jaXJjbGUnLFxuICAgICAgICAgICAgICAgIHJvdXRlckxpbms6IFsnL2NybS9jdXN0b21lci1zdWNjZXNzJ10sXG4gICAgICAgICAgICAgICAgdmlzaWJsZTogdGhpcy5wZXJtaXNzaW9uU2VydmljZS5ldmFsdWF0ZVBlcm1pc3Npb25zKFxuICAgICAgICAgICAgICAgICAgICBgJHtDUk1fUEVSTUlTU0lPTlMuQ3VzdG9tZXJTdWNjZXNzfWBcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGlkOiAnY29tcGV0aXRpb24nLFxuICAgICAgICAgICAgICAgIGxhYmVsOiAnQ29tcGV0aXRpb24nLFxuICAgICAgICAgICAgICAgIGljb246ICdmYSBmYS10cm9waHknLFxuICAgICAgICAgICAgICAgIHJvdXRlckxpbms6IFsnL2NybS9jb21wZXRpdGlvbiddLFxuICAgICAgICAgICAgICAgIHZpc2libGU6IHRoaXMucGVybWlzc2lvblNlcnZpY2UuZXZhbHVhdGVQZXJtaXNzaW9ucyhcbiAgICAgICAgICAgICAgICAgICAgYCR7Q1JNX1BFUk1JU1NJT05TLkNvbXBldGl0aW9ufWBcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGlkOiAnaW5zaWdodF90YWInLFxuICAgICAgICAgICAgICAgIGxhYmVsOiAnSW5zaWdodCcsXG4gICAgICAgICAgICAgICAgaWNvbjogJ2ZhIGZhLWZ3IGZhLXNpZ25hdHVyZScsXG4gICAgICAgICAgICAgICAgcm91dGVyTGluazogWycvY3JtL2luc2lnaHQnXSxcbiAgICAgICAgICAgICAgICB2aXNpYmxlOiB0aGlzLnBlcm1pc3Npb25TZXJ2aWNlLmV2YWx1YXRlUGVybWlzc2lvbnMoYCR7Q1JNX1BFUk1JU1NJT05TLkluc2lnaHR9YClcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaWQ6ICdjb25maWd1cmF0aW9uX3RhYicsXG4gICAgICAgICAgICAgICAgbGFiZWw6ICdDb25maWd1cmF0aW9uJyxcbiAgICAgICAgICAgICAgICBpY29uOiAnZmEgZmEtZncgZmEtY29nJyxcbiAgICAgICAgICAgICAgICByb3V0ZXJMaW5rOiBbJy9jcm0vY29uZmlndXJhdGlvbiddLFxuICAgICAgICAgICAgICAgIHZpc2libGU6IHRoaXMucGVybWlzc2lvblNlcnZpY2UuZXZhbHVhdGVQZXJtaXNzaW9ucyhcbiAgICAgICAgICAgICAgICAgICAgYCR7Q1JNX1BFUk1JU1NJT05TLkNvbmZpZ3VyYXRpb259YFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgIH1cbiAgICAgICAgXTtcbiAgICB9XG59XG4iXX0=
@@ -62,8 +62,8 @@ import * as i0 from "@angular/core";
62
62
  import * as i1 from "ngx-quill";
63
63
  PlotlyViaCDNModule.setPlotlyVersion('1.55.2');
64
64
  export class SmartCrmPrivateModule {
65
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.6", ngImport: i0, type: SmartCrmPrivateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
66
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.6", ngImport: i0, type: SmartCrmPrivateModule, declarations: [SmartCrmTabsComponent,
65
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SmartCrmPrivateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
66
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.11", ngImport: i0, type: SmartCrmPrivateModule, declarations: [SmartCrmTabsComponent,
67
67
  SmartCrmSummaryComponent,
68
68
  SmartCrmCompaniesComponent,
69
69
  SmartCrmContactComponent,
@@ -156,7 +156,7 @@ export class SmartCrmPrivateModule {
156
156
  SmartCrmMarketingViewComponent,
157
157
  SmartCrmOpportunityCategoriesComponent,
158
158
  SmartCrmOpportunityCategoriesDetailsComponent] }); }
159
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.6", ngImport: i0, type: SmartCrmPrivateModule, providers: [
159
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SmartCrmPrivateModule, providers: [
160
160
  {
161
161
  provide: TRANSLOCO_SCOPE,
162
162
  useValue: {
@@ -197,7 +197,7 @@ export class SmartCrmPrivateModule {
197
197
  // LazyLoadModules
198
198
  ] }); }
199
199
  }
200
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.6", ngImport: i0, type: SmartCrmPrivateModule, decorators: [{
200
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SmartCrmPrivateModule, decorators: [{
201
201
  type: NgModule,
202
202
  args: [{
203
203
  imports: [
@@ -324,4 +324,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.6", ngImpor
324
324
  ]
325
325
  }]
326
326
  }] });
327
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtY3JtLXByaXZhdGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zbWFydC1jcm0vc3JjL2xpYi9wcml2YXRlL3NtYXJ0LWNybS1wcml2YXRlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BELE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLCtGQUErRixDQUFDO0FBQ2hKLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDJGQUEyRixDQUFDO0FBQzFJLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHlGQUF5RixDQUFDO0FBQ3ZJLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQzFHLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDBGQUEwRixDQUFDO0FBQ3hJLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHNIQUFzSCxDQUFDO0FBQ3hLLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9GQUFvRixDQUFDO0FBQzlILE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHdFQUF3RSxDQUFDO0FBQ3hILE9BQU8sRUFBRSw2Q0FBNkMsRUFBRSxNQUFNLG1LQUFtSyxDQUFDO0FBQ2xPLE9BQU8sRUFBRSxzQ0FBc0MsRUFBRSxNQUFNLGtIQUFrSCxDQUFDO0FBQzFLLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLG1IQUFtSCxDQUFDO0FBQ25LLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGtGQUFrRixDQUFD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d0JBQzdCLHdCQUF3Qjt3QkFDeEIsZ0NBQWdDO3dCQUNoQyw0QkFBNEI7d0JBQzVCLGtDQUFrQzt3QkFDbEMsOEJBQThCO3dCQUM5QiwrQkFBK0I7d0JBQy9CLHdCQUF3Qjt3QkFDeEIsa0NBQWtDO3dCQUNsQyx5QkFBeUI7d0JBQ3pCLCtCQUErQjt3QkFDL0IsOEJBQThCO3dCQUM5QixzQ0FBc0M7d0JBQ3RDLHlDQUF5Qzt3QkFDekMsNkJBQTZCO3dCQUM3QixtQ0FBbUM7d0JBQ25DLHVCQUF1Qjt3QkFDdkIsNkJBQTZCO3dCQUM3Qiw4QkFBOEI7d0JBQzlCLHNDQUFzQzt3QkFDdEMsNkNBQTZDO3FCQUNoRDtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IFRSQU5TTE9DT19TQ09QRSB9IGZyb20gJ0BuZ25lYXQvdHJhbnNsb2NvJztcbmltcG9ydCB7IFNtYXJ0Q3JtQ29tcGFueURldGFpbHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWFjY291bnRzL3NtYXJ0LWNybS1hY2NvdW50LWRldGFpbHMvc21hcnQtY3JtLWFjY291bnQtZGV0YWlscy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU21hcnRDcm1Db21wYW55RmlsZXNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWFjY291bnRzL3NtYXJ0LWNybS1hY2NvdW50LWZpbGVzL3NtYXJ0LWNybS1hY2NvdW50LWZpbGVzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybUNvbXBhbnlJbmZvQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NtYXJ0LWNybS1hY2NvdW50cy9zbWFydC1jcm0tYWNjb3VudC1pbmZvL3NtYXJ0LWNybS1hY2NvdW50LWluZm8uY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtQ29tcGFuaWVzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NtYXJ0LWNybS1hY2NvdW50cy9zbWFydC1jcm0tYWNjb3VudHMuY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtQ29tcGV0aXRpb25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWNvbXBldGl0aW9uL3NtYXJ0LWNybS1jb21wZXRpdGlvbi9zbWFydC1jcm0tY29tcGV0aXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtU2V0dGluZ3NEZXRhaWxzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NtYXJ0LWNybS1jb25maWd1cmF0aW9uL3NtYXJ0LWNybS1hY3Rpb25zL3NtYXJ0LWNybS1hY3Rpb25zLWRldGFpbHMvc21hcnQtY3JtLWFjdGlvbnMtZGV0YWlscy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU21hcnRDcm1BY3Rpb25zQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NtYXJ0LWNybS1jb25maWd1cmF0aW9uL3NtYXJ0LWNybS1hY3Rpb25zL3NtYXJ0LWNybS1hY3Rpb25zLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybUNvbmZpZ3VyYXRpb25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWNvbmZpZ3VyYXRpb24vc21hcnQtY3JtLWNvbmZpZ3VyYXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtT3Bwb3J0dW5pdHlDYXRlZ29yaWVzRGV0YWlsc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zbWFydC1jcm0tY29uZmlndXJhdGlvbi9zbWFydC1jcm0tb3Bwb3J0dW5pdHktY2F0ZWdvcmllcy9zbWFydC1jcm0tb3Bwb3J0dW5pdHktY2F0ZWdvcmllcy1kZXRhaWxzL3NtYXJ0LWNybS1vcHBvcnR1bml0eS1jYXRlZ29yaWVzLWRldGFpbHMuY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtT3Bwb3J0dW5pdHlDYXRlZ29yaWVzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NtYXJ0LWNybS1jb25maWd1cmF0aW9uL3NtYXJ0LWNybS1vcHBvcnR1bml0eS1jYXRlZ29yaWVzL3NtYXJ0LWNybS1vcHBvcnR1bml0eS1jYXRlZ29yaWVzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybVNvdXJjZURldGFpbHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWNvbmZpZ3VyYXRpb24vc21hcnQtY3JtLXNvdXJjZS9zbWFydC1jcm0tc291cmNlLWRldGFpbHMvc21hcnQtY3JtLXNvdXJjZS1kZXRhaWxzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybUNvbXBhbnlTb3VyY2VDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWNvbmZpZ3VyYXRpb24vc21hcnQtY3JtLXNvdXJjZS9zbWFydC1jcm0tc291cmNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybVN0YWdlRGV0YWlsc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zbWFydC1jcm0tY29uZmlndXJhdGlvbi9zbWFydC1jcm0tc3RhZ2VzL3NtYXJ0LWNybS1zdGFnZS1kZXRhaWxzL3NtYXJ0LWNybS1zdGFnZS1kZXRhaWxzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybVN0YWdlc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zbWFydC1jcm0tY29uZmlndXJhdGlvbi9zbWFydC1jcm0tc3RhZ2VzL3NtYXJ0LWNybS1zdGFnZXMuY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtV2lkZ2V0c0RldGFpbHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWNvbmZpZ3VyYXRpb24vc21hcnQtY3JtLXdpZGdldHMvc21hcnQtY3JtLXdpZGdldHMtZGV0YWlscy9zbWFydC1jcm0td2lkZ2V0cy1kZXRhaWxzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybVdpZGdldHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWNvbmZpZ3VyYXRpb24vc21hcnQtY3JtLXdpZGdldHMvc21hcnQtY3JtLXdpZGdldHMuY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtQ29udGFjdERldGFpbHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWNvbnRhY3RzL3NtYXJ0LWNybS1jb250YWN0LWRldGFpbHMvc21hcnQtY3JtLWNvbnRhY3QtZGV0YWlscy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU21hcnRDcm1Db250YWN0SW5mb0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zbWFydC1jcm0tY29udGFjdHMvc21hcnQtY3JtLWNvbnRhY3QtaW5mby9zbWFydC1jcm0tY29udGFjdC1pbmZvLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybUNvbnRhY3RDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWNvbnRhY3RzL3NtYXJ0LWNybS1jb250YWN0cy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU21hcnRDcm1DdXN0b21lclN1Y2Nlc3NDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWN1c3RvbWVyL3NtYXJ0LWNybS1jdXN0b21lci1zdWNjZXNzL3NtYXJ0LWNybS1jdXN0b21lci1zdWNjZXNzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybUluc2lnaHRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWluc2lnaHQvc21hcnQtY3JtLWluc2lnaHQuY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtT3ZlcnZpZXdDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWluc2lnaHQvc21hcnQtY3JtLW92ZXJ2aWV3L3NtYXJ0LWNybS1vdmVydmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU21hcnRDcm1MZWFkc0RldGFpbHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWxlYWRzL3NtYXJ0LWNybS1sZWFkcy1kZXRhaWxzL3NtYXJ0LWNybS1sZWFkcy1kZXRhaWxzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybUxlYWRzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NtYXJ0LWNybS1sZWFkcy9zbWFydC1jcm0tbGVhZHMuY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtTWFya2V0aW5nVXNlcnNMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NtYXJ0LWNybS1tYXJrZXRpbmcvc21hcnQtY3JtLW1hcmtldGluZy1saXN0L3NtYXJ0LWNybS1tYXJrZXRpbmctY29udGFjdHMvc21hcnQtY3JtLW1hcmtldGluZy1jb250YWN0cy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU21hcnRDcm1Db21tdW5pY2F0aW9uc0RldGFpbHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLW1hcmtldGluZy9zbWFydC1jcm0tbWFya2V0aW5nLWxpc3Qvc21hcnQtY3JtLW1hcmtldGluZy1kZXRhaWxzL3NtYXJ0LWNybS1tYXJrZXRpbmctZGV0YWlscy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU21hcnRDcm1Db21tdW5pY2F0aW9uc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zbWFydC1jcm0tbWFya2V0aW5nL3NtYXJ0LWNybS1tYXJrZXRpbmctbGlzdC9zbWFydC1jcm0tbWFya2V0aW5nLWxpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtQ29tbXVuaWNhdGlvblZpZXdEZXRhaWxzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NtYXJ0LWNybS1tYXJrZXRpbmcvc21hcnQtY3JtLW1hcmtldGluZy1saXN0L3NtYXJ0LWNybS1tYXJrZXRpbmctdmlldy1kZXRhaWxzL3NtYXJ0LWNybS1tYXJrZXRpbmctdmlldy1kZXRhaWxzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybU1hcmtldGluZ1ZpZXdDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLW1hcmtldGluZy9zbWFydC1jcm0tbWFya2V0aW5nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybUJvYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NtYXJ0LWNybS1vcHBvcnR1bml0aWVzL3NtYXJ0LWNybS1ib2FyZC9zbWFydC1jcm0tYm9hcmQuY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtT3Bwb3J0dW5pdGllc0RldGFpbHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLW9wcG9ydHVuaXRpZXMvc21hcnQtY3JtLW9wcG9ydHVuaXRpZXMtbGlzdC9zbWFydC1jcm0tb3Bwb3J0dW5pdGllcy1kZXRhaWxzL3NtYXJ0LWNybS1vcHBvcnR1bml0aWVzLWRldGFpbHMuY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtT3Bwb3J0dW5pdGllc0luZm9Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLW9wcG9ydHVuaXRpZXMvc21hcnQtY3JtLW9wcG9ydHVuaXRpZXMtbGlzdC9zbWFydC1jcm0tb3Bwb3J0dW5pdGllcy1pbmZvL3NtYXJ0LWNybS1vcHBvcnR1bml0aWVzLWluZm8uY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtT3Bwb3J0dW5pdGllc0xpc3RDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLW9wcG9ydHVuaXRpZXMvc21hcnQtY3JtLW9wcG9ydHVuaXRpZXMtbGlzdC9zbWFydC1jcm0tb3Bwb3J0dW5pdGllcy1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybU9wcG9ydHVuaXRpZXNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLW9wcG9ydHVuaXRpZXMvc21hcnQtY3JtLW9wcG9ydHVuaXRpZXMuY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtU3VtbWFyeUFjdGlvbnNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLXN1bW1hcnkvc21hcnQtY3JtLXN1bW1hcnktYWN0aW9ucy9zbWFydC1jcm0tc3VtbWFyeS1hY3Rpb25zLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybVN1bW1hcnlPdGhlcnNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLXN1bW1hcnkvc21hcnQtY3JtLXN1bW1hcnktb3RoZXJzL3NtYXJ0LWNybS1zdW1tYXJ5LW90aGVycy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU21hcnRDcm1TdW1tYXJ5Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NtYXJ0LWNybS1zdW1tYXJ5L3NtYXJ0LWNybS1zdW1tYXJ5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybVRhYnNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLXRhYnMvc21hcnQtY3JtLXRhYnMuY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtUHJpdmF0ZVJvdXRpbmdNb2R1bGUgfSBmcm9tICcuL3NtYXJ0LWNybS1wcml2YXRlLnJvdXRpbmcubW9kdWxlJztcbmltcG9ydCB7IE5neEdwQXV0b2NvbXBsZXRlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXItbWFnaWMvbmd4LWdwLWF1dG9jb21wbGV0ZSc7XG5pbXBvcnQgeyBJbmZpbml0ZVNjcm9sbE1vZHVsZSB9IGZyb20gJ25neC1pbmZpbml0ZS1zY3JvbGwnO1xuaW1wb3J0IHsgUXVpbGxNb2R1bGUgfSBmcm9tICduZ3gtcXVpbGwnO1xuaW1wb3J0IHsgTmd4VXBsb2FkZXJNb2R1bGUgfSBmcm9tICduZ3gtdXBsb2FkZXInO1xuaW1wb3J0IHsgTmdiTW9kdWxlIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuXG5pbXBvcnQgeyBTaGFyZWRDb21wb25lbnRzTW9kdWxlIH0gZnJvbSAnQHBvc2l3aXNlL3NoYXJlZC1jb21wb25lbnRzJztcbmltcG9ydCB7IENvcmVUcmFuc2xvY29Nb2R1bGUgfSBmcm9tICdAcG9zaXdpc2UvY29yZS10cmFuc2xvY28nO1xuaW1wb3J0IHsgRGlyZWN0aXZlc01vZHVsZSB9IGZyb20gJ0Bwb3Npd2lzZS9kaXJlY3RpdmVzJztcbmltcG9ydCB7IFBpcGVzTW9kdWxlIH0gZnJvbSAnQHBvc2l3aXNlL3BpcGVzJztcbmltcG9ydCB7IFBsb3RseVZpYUNETk1vZHVsZSB9IGZyb20gJ2FuZ3VsYXItcGxvdGx5LmpzJztcbmltcG9ydCB7IFVpU3dpdGNoTW9kdWxlIH0gZnJvbSAnbmd4LXVpLXN3aXRjaCc7XG5pbXBvcnQgeyBJbnB1dFRleHRNb2R1bGUgfSBmcm9tICdwcmltZW5nL2lucHV0dGV4dCc7XG5pbXBvcnQgeyBOZ3hQYWdpbmF0aW9uTW9kdWxlIH0gZnJvbSAnbmd4LXBhZ2luYXRpb24nO1xuaW1wb3J0IHsgTG9hZGVyIH0gZnJvbSAnQGdvb2dsZW1hcHMvanMtYXBpLWxvYWRlcic7XG5pbXBvcnQgeyBBcHBDb25maWdTZXJ2aWNlIH0gZnJvbSAnQHBvc2l3aXNlL2FwcC1jb25maWctc2VydmljZSc7XG5pbXBvcnQgeyBEcmFnRHJvcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuaW1wb3J0IHsgRHJvcGRvd25Nb2R1bGUgfSBmcm9tICdwcmltZW5nL2Ryb3Bkb3duJztcblBsb3RseVZpYUNETk1vZHVsZS5zZXRQbG90bHlWZXJzaW9uKCcxLjU1LjInKTtcbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIEZvcm1zTW9kdWxlLFxuICAgICAgICBOZ3hQYWdpbmF0aW9uTW9kdWxlLFxuICAgICAgICBQaXBlc01vZHVsZSxcbiAgICAgICAgSW5wdXRUZXh0TW9kdWxlLFxuICAgICAgICBVaVN3aXRjaE1vZHVsZSxcbiAgICAgICAgRGlyZWN0aXZlc01vZHVsZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgTmdiTW9kdWxlLFxuICAgICAgICBQbG90bHlWaWFDRE5Nb2R1bGUsXG4gICAgICAgIE5neEdwQXV0b2NvbXBsZXRlTW9kdWxlLFxuICAgICAgICBTbWFydENybVByaXZhdGVSb3V0aW5nTW9kdWxlLFxuICAgICAgICBTaGFyZWRDb21wb25lbnRzTW9kdWxlLFxuICAgICAgICBDb3JlVHJhbnNsb2NvTW9kdWxlLFxuICAgICAgICBEcmFnRHJvcE1vZHVsZSxcbiAgICAgICAgLy8gU2hhcmVkTW9kdWxlLFxuICAgICAgICBRdWlsbE1vZHVsZS5mb3JSb290KCksXG4gICAgICAgIE5neFVwbG9hZGVyTW9kdWxlLFxuICAgICAgICBJbmZpbml0ZVNjcm9sbE1vZHVsZSxcbiAgICAgICAgRHJvcGRvd25Nb2R1bGVcbiAgICAgICAgLy8gTGF6eUxvYWRNb2R1bGVzXG4gICAgXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVFJBTlNMT0NPX1NDT1BFLFxuICAgICAgICAgICAgdXNlVmFsdWU6IHtcbiAgICAgICAgICAgICAgICBzY29wZTogJ3NtYXJ0LWNybScsXG4gICAgICAgICAgICAgICAgYWxpYXM6ICdDcm0nXG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IExvYWRlcixcbiAgICAgICAgICAgIHVzZUZhY3Rvcnk6IChhcHBDb25maWdTZXJ2aWNlOiBBcHBDb25maWdTZXJ2aWNlKSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBMb2FkZXIoe1xuICAgICAgICAgICAgICAgICAgICBhcGlLZXk6IGFwcENvbmZpZ1NlcnZpY2UuZ2V0R29vZ2xlQXBpS2V5KCksXG4gICAgICAgICAgICAgICAgICAgIGxpYnJhcmllczogWydwbGFjZXMnXVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGRlcHM6IFtBcHBDb25maWdTZXJ2aWNlXVxuICAgICAgICB9XG4gICAgXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgICAgU21hcnRDcm1UYWJzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybVN1bW1hcnlDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQ29tcGFuaWVzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUNvbnRhY3RDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQ29uZmlndXJhdGlvbkNvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1TZXR0aW5nc0RldGFpbHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQ29udGFjdERldGFpbHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQ29tcGFueURldGFpbHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtSW5zaWdodENvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1Db250YWN0SW5mb0NvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1MZWFkc0NvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1PcHBvcnR1bml0aWVzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybU9wcG9ydHVuaXRpZXNEZXRhaWxzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUJvYXJkQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUNvbW11bmljYXRpb25zQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUNvbXBhbnlJbmZvQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUNvbXBhbnlTb3VyY2VDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQ29tcGFueUZpbGVzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybVdpZGdldHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQ3VzdG9tZXJTdWNjZXNzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUNvbXBldGl0aW9uQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybU9wcG9ydHVuaXRpZXNJbmZvQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybVNvdXJjZURldGFpbHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtV2lkZ2V0c0RldGFpbHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQWN0aW9uc0NvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1PcHBvcnR1bml0aWVzTGlzdENvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1PdmVydmlld0NvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1TdW1tYXJ5QWN0aW9uc0NvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1TdW1tYXJ5T3RoZXJzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUNvbW11bmljYXRpb25zRGV0YWlsc0NvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1Db21tdW5pY2F0aW9uVmlld0RldGFpbHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtTGVhZHNEZXRhaWxzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybU1hcmtldGluZ1VzZXJzTGlzdENvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1TdGFnZXNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtU3RhZ2VEZXRhaWxzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybU1hcmtldGluZ1ZpZXdDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtT3Bwb3J0dW5pdHlDYXRlZ29yaWVzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybU9wcG9ydHVuaXR5Q2F0ZWdvcmllc0RldGFpbHNDb21wb25lbnRcbiAgICBdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgICAgU21hcnRDcm1UYWJzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybVN1bW1hcnlDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQ29tcGFuaWVzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUNvbnRhY3RDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQ29uZmlndXJhdGlvbkNvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1TZXR0aW5nc0RldGFpbHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQ29udGFjdERldGFpbHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQ29tcGFueURldGFpbHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtSW5zaWdodENvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1Db250YWN0SW5mb0NvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1MZWFkc0NvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1PcHBvcnR1bml0aWVzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybU9wcG9ydHVuaXRpZXNEZXRhaWxzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUJvYXJkQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUNvbW11bmljYXRpb25zQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUNvbXBhbnlJbmZvQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUNvbXBhbnlTb3VyY2VDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQ29tcGFueUZpbGVzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybVdpZGdldHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQ3VzdG9tZXJTdWNjZXNzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUNvbXBldGl0aW9uQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybU9wcG9ydHVuaXRpZXNJbmZvQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybVNvdXJjZURldGFpbHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtV2lkZ2V0c0RldGFpbHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQWN0aW9uc0NvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1PcHBvcnR1bml0aWVzTGlzdENvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1PdmVydmlld0NvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1TdW1tYXJ5QWN0aW9uc0NvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1TdW1tYXJ5T3RoZXJzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUNvbW11bmljYXRpb25zRGV0YWlsc0NvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1Db21tdW5pY2F0aW9uVmlld0RldGFpbHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtTGVhZHNEZXRhaWxzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybU1hcmtldGluZ1VzZXJzTGlzdENvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1TdGFnZXNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtU3RhZ2VEZXRhaWxzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybU1hcmtldGluZ1ZpZXdDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtT3Bwb3J0dW5pdHlDYXRlZ29yaWVzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybU9wcG9ydHVuaXR5Q2F0ZWdvcmllc0RldGFpbHNDb21wb25lbnRcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFNtYXJ0Q3JtUHJpdmF0ZU1vZHVsZSB7fVxuIl19
327
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtY3JtLXByaXZhdGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zbWFydC1jcm0vc3JjL2xpYi9wcml2YXRlL3NtYXJ0LWNybS1wcml2YXRlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BELE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLCtGQUErRixDQUFDO0FBQ2hKLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDJGQUEyRixDQUFDO0FBQzFJLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHlGQUF5RixDQUFDO0FBQ3ZJLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQzFHLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDBGQUEwRixDQUFDO0FBQ3hJLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHNIQUFzSCxDQUFDO0FBQ3hLLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9GQUFvRixDQUFDO0FBQzlILE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHdFQUF3RSxDQUFDO0FBQ3hILE9BQU8sRUFBRSw2Q0FBNkMsRUFBRSxNQUFNLG1LQUFtSyxDQUFDO0FBQ2xPLE9BQU8sRUFBRSxzQ0FBc0MsRUFBRSxNQUFNLGtIQUFrSCxDQUFDO0FBQzFLLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLG1IQUFtSCxDQUFDO0FBQ25LLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGtGQUFrRixDQUFD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d0JBQzdCLHdCQUF3Qjt3QkFDeEIsZ0NBQWdDO3dCQUNoQyw0QkFBNEI7d0JBQzVCLGtDQUFrQzt3QkFDbEMsOEJBQThCO3dCQUM5QiwrQkFBK0I7d0JBQy9CLHdCQUF3Qjt3QkFDeEIsa0NBQWtDO3dCQUNsQyx5QkFBeUI7d0JBQ3pCLCtCQUErQjt3QkFDL0IsOEJBQThCO3dCQUM5QixzQ0FBc0M7d0JBQ3RDLHlDQUF5Qzt3QkFDekMsNkJBQTZCO3dCQUM3QixtQ0FBbUM7d0JBQ25DLHVCQUF1Qjt3QkFDdkIsNkJBQTZCO3dCQUM3Qiw4QkFBOEI7d0JBQzlCLHNDQUFzQzt3QkFDdEMsNkNBQTZDO3FCQUNoRDtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IFRSQU5TTE9DT19TQ09QRSB9IGZyb20gJ0BuZ25lYXQvdHJhbnNsb2NvJztcbmltcG9ydCB7IFNtYXJ0Q3JtQ29tcGFueURldGFpbHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWFjY291bnRzL3NtYXJ0LWNybS1hY2NvdW50LWRldGFpbHMvc21hcnQtY3JtLWFjY291bnQtZGV0YWlscy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU21hcnRDcm1Db21wYW55RmlsZXNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWFjY291bnRzL3NtYXJ0LWNybS1hY2NvdW50LWZpbGVzL3NtYXJ0LWNybS1hY2NvdW50LWZpbGVzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybUNvbXBhbnlJbmZvQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NtYXJ0LWNybS1hY2NvdW50cy9zbWFydC1jcm0tYWNjb3VudC1pbmZvL3NtYXJ0LWNybS1hY2NvdW50LWluZm8uY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtQ29tcGFuaWVzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NtYXJ0LWNybS1hY2NvdW50cy9zbWFydC1jcm0tYWNjb3VudHMuY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtQ29tcGV0aXRpb25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWNvbXBldGl0aW9uL3NtYXJ0LWNybS1jb21wZXRpdGlvbi9zbWFydC1jcm0tY29tcGV0aXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtU2V0dGluZ3NEZXRhaWxzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NtYXJ0LWNybS1jb25maWd1cmF0aW9uL3NtYXJ0LWNybS1hY3Rpb25zL3NtYXJ0LWNybS1hY3Rpb25zLWRldGFpbHMvc21hcnQtY3JtLWFjdGlvbnMtZGV0YWlscy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU21hcnRDcm1BY3Rpb25zQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NtYXJ0LWNybS1jb25maWd1cmF0aW9uL3NtYXJ0LWNybS1hY3Rpb25zL3NtYXJ0LWNybS1hY3Rpb25zLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybUNvbmZpZ3VyYXRpb25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWNvbmZpZ3VyYXRpb24vc21hcnQtY3JtLWNvbmZpZ3VyYXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtT3Bwb3J0dW5pdHlDYXRlZ29yaWVzRGV0YWlsc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zbWFydC1jcm0tY29uZmlndXJhdGlvbi9zbWFydC1jcm0tb3Bwb3J0dW5pdHktY2F0ZWdvcmllcy9zbWFydC1jcm0tb3Bwb3J0dW5pdHktY2F0ZWdvcmllcy1kZXRhaWxzL3NtYXJ0LWNybS1vcHBvcnR1bml0eS1jYXRlZ29yaWVzLWRldGFpbHMuY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtT3Bwb3J0dW5pdHlDYXRlZ29yaWVzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NtYXJ0LWNybS1jb25maWd1cmF0aW9uL3NtYXJ0LWNybS1vcHBvcnR1bml0eS1jYXRlZ29yaWVzL3NtYXJ0LWNybS1vcHBvcnR1bml0eS1jYXRlZ29yaWVzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybVNvdXJjZURldGFpbHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWNvbmZpZ3VyYXRpb24vc21hcnQtY3JtLXNvdXJjZS9zbWFydC1jcm0tc291cmNlLWRldGFpbHMvc21hcnQtY3JtLXNvdXJjZS1kZXRhaWxzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybUNvbXBhbnlTb3VyY2VDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWNvbmZpZ3VyYXRpb24vc21hcnQtY3JtLXNvdXJjZS9zbWFydC1jcm0tc291cmNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybVN0YWdlRGV0YWlsc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zbWFydC1jcm0tY29uZmlndXJhdGlvbi9zbWFydC1jcm0tc3RhZ2VzL3NtYXJ0LWNybS1zdGFnZS1kZXRhaWxzL3NtYXJ0LWNybS1zdGFnZS1kZXRhaWxzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybVN0YWdlc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zbWFydC1jcm0tY29uZmlndXJhdGlvbi9zbWFydC1jcm0tc3RhZ2VzL3NtYXJ0LWNybS1zdGFnZXMuY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtV2lkZ2V0c0RldGFpbHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWNvbmZpZ3VyYXRpb24vc21hcnQtY3JtLXdpZGdldHMvc21hcnQtY3JtLXdpZGdldHMtZGV0YWlscy9zbWFydC1jcm0td2lkZ2V0cy1kZXRhaWxzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybVdpZGdldHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWNvbmZpZ3VyYXRpb24vc21hcnQtY3JtLXdpZGdldHMvc21hcnQtY3JtLXdpZGdldHMuY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtQ29udGFjdERldGFpbHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWNvbnRhY3RzL3NtYXJ0LWNybS1jb250YWN0LWRldGFpbHMvc21hcnQtY3JtLWNvbnRhY3QtZGV0YWlscy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU21hcnRDcm1Db250YWN0SW5mb0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zbWFydC1jcm0tY29udGFjdHMvc21hcnQtY3JtLWNvbnRhY3QtaW5mby9zbWFydC1jcm0tY29udGFjdC1pbmZvLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybUNvbnRhY3RDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWNvbnRhY3RzL3NtYXJ0LWNybS1jb250YWN0cy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU21hcnRDcm1DdXN0b21lclN1Y2Nlc3NDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWN1c3RvbWVyL3NtYXJ0LWNybS1jdXN0b21lci1zdWNjZXNzL3NtYXJ0LWNybS1jdXN0b21lci1zdWNjZXNzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybUluc2lnaHRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWluc2lnaHQvc21hcnQtY3JtLWluc2lnaHQuY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtT3ZlcnZpZXdDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWluc2lnaHQvc21hcnQtY3JtLW92ZXJ2aWV3L3NtYXJ0LWNybS1vdmVydmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU21hcnRDcm1MZWFkc0RldGFpbHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLWxlYWRzL3NtYXJ0LWNybS1sZWFkcy1kZXRhaWxzL3NtYXJ0LWNybS1sZWFkcy1kZXRhaWxzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybUxlYWRzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NtYXJ0LWNybS1sZWFkcy9zbWFydC1jcm0tbGVhZHMuY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtTWFya2V0aW5nVXNlcnNMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NtYXJ0LWNybS1tYXJrZXRpbmcvc21hcnQtY3JtLW1hcmtldGluZy1saXN0L3NtYXJ0LWNybS1tYXJrZXRpbmctY29udGFjdHMvc21hcnQtY3JtLW1hcmtldGluZy1jb250YWN0cy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU21hcnRDcm1Db21tdW5pY2F0aW9uc0RldGFpbHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLW1hcmtldGluZy9zbWFydC1jcm0tbWFya2V0aW5nLWxpc3Qvc21hcnQtY3JtLW1hcmtldGluZy1kZXRhaWxzL3NtYXJ0LWNybS1tYXJrZXRpbmctZGV0YWlscy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU21hcnRDcm1Db21tdW5pY2F0aW9uc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zbWFydC1jcm0tbWFya2V0aW5nL3NtYXJ0LWNybS1tYXJrZXRpbmctbGlzdC9zbWFydC1jcm0tbWFya2V0aW5nLWxpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtQ29tbXVuaWNhdGlvblZpZXdEZXRhaWxzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NtYXJ0LWNybS1tYXJrZXRpbmcvc21hcnQtY3JtLW1hcmtldGluZy1saXN0L3NtYXJ0LWNybS1tYXJrZXRpbmctdmlldy1kZXRhaWxzL3NtYXJ0LWNybS1tYXJrZXRpbmctdmlldy1kZXRhaWxzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybU1hcmtldGluZ1ZpZXdDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLW1hcmtldGluZy9zbWFydC1jcm0tbWFya2V0aW5nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybUJvYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NtYXJ0LWNybS1vcHBvcnR1bml0aWVzL3NtYXJ0LWNybS1ib2FyZC9zbWFydC1jcm0tYm9hcmQuY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtT3Bwb3J0dW5pdGllc0RldGFpbHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLW9wcG9ydHVuaXRpZXMvc21hcnQtY3JtLW9wcG9ydHVuaXRpZXMtbGlzdC9zbWFydC1jcm0tb3Bwb3J0dW5pdGllcy1kZXRhaWxzL3NtYXJ0LWNybS1vcHBvcnR1bml0aWVzLWRldGFpbHMuY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtT3Bwb3J0dW5pdGllc0luZm9Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLW9wcG9ydHVuaXRpZXMvc21hcnQtY3JtLW9wcG9ydHVuaXRpZXMtbGlzdC9zbWFydC1jcm0tb3Bwb3J0dW5pdGllcy1pbmZvL3NtYXJ0LWNybS1vcHBvcnR1bml0aWVzLWluZm8uY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtT3Bwb3J0dW5pdGllc0xpc3RDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLW9wcG9ydHVuaXRpZXMvc21hcnQtY3JtLW9wcG9ydHVuaXRpZXMtbGlzdC9zbWFydC1jcm0tb3Bwb3J0dW5pdGllcy1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybU9wcG9ydHVuaXRpZXNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLW9wcG9ydHVuaXRpZXMvc21hcnQtY3JtLW9wcG9ydHVuaXRpZXMuY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtU3VtbWFyeUFjdGlvbnNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLXN1bW1hcnkvc21hcnQtY3JtLXN1bW1hcnktYWN0aW9ucy9zbWFydC1jcm0tc3VtbWFyeS1hY3Rpb25zLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybVN1bW1hcnlPdGhlcnNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLXN1bW1hcnkvc21hcnQtY3JtLXN1bW1hcnktb3RoZXJzL3NtYXJ0LWNybS1zdW1tYXJ5LW90aGVycy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU21hcnRDcm1TdW1tYXJ5Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NtYXJ0LWNybS1zdW1tYXJ5L3NtYXJ0LWNybS1zdW1tYXJ5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydENybVRhYnNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc21hcnQtY3JtLXRhYnMvc21hcnQtY3JtLXRhYnMuY29tcG9uZW50JztcbmltcG9ydCB7IFNtYXJ0Q3JtUHJpdmF0ZVJvdXRpbmdNb2R1bGUgfSBmcm9tICcuL3NtYXJ0LWNybS1wcml2YXRlLnJvdXRpbmcubW9kdWxlJztcbmltcG9ydCB7IE5neEdwQXV0b2NvbXBsZXRlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXItbWFnaWMvbmd4LWdwLWF1dG9jb21wbGV0ZSc7XG5pbXBvcnQgeyBJbmZpbml0ZVNjcm9sbE1vZHVsZSB9IGZyb20gJ25neC1pbmZpbml0ZS1zY3JvbGwnO1xuaW1wb3J0IHsgUXVpbGxNb2R1bGUgfSBmcm9tICduZ3gtcXVpbGwnO1xuaW1wb3J0IHsgTmd4VXBsb2FkZXJNb2R1bGUgfSBmcm9tICduZ3gtdXBsb2FkZXInO1xuaW1wb3J0IHsgTmdiTW9kdWxlIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuXG5pbXBvcnQgeyBTaGFyZWRDb21wb25lbnRzTW9kdWxlIH0gZnJvbSAnQHBvc2l3aXNlL3NoYXJlZC1jb21wb25lbnRzJztcbmltcG9ydCB7IENvcmVUcmFuc2xvY29Nb2R1bGUgfSBmcm9tICdAcG9zaXdpc2UvY29yZS10cmFuc2xvY28nO1xuaW1wb3J0IHsgRGlyZWN0aXZlc01vZHVsZSB9IGZyb20gJ0Bwb3Npd2lzZS9kaXJlY3RpdmVzJztcbmltcG9ydCB7IFBpcGVzTW9kdWxlIH0gZnJvbSAnQHBvc2l3aXNlL3BpcGVzJztcbmltcG9ydCB7IFBsb3RseVZpYUNETk1vZHVsZSB9IGZyb20gJ2FuZ3VsYXItcGxvdGx5LmpzJztcbmltcG9ydCB7IFVpU3dpdGNoTW9kdWxlIH0gZnJvbSAnbmd4LXVpLXN3aXRjaCc7XG5pbXBvcnQgeyBJbnB1dFRleHRNb2R1bGUgfSBmcm9tICdwcmltZW5nL2lucHV0dGV4dCc7XG5pbXBvcnQgeyBOZ3hQYWdpbmF0aW9uTW9kdWxlIH0gZnJvbSAnbmd4LXBhZ2luYXRpb24nO1xuaW1wb3J0IHsgTG9hZGVyIH0gZnJvbSAnQGdvb2dsZW1hcHMvanMtYXBpLWxvYWRlcic7XG5pbXBvcnQgeyBBcHBDb25maWdTZXJ2aWNlIH0gZnJvbSAnQHBvc2l3aXNlL2FwcC1jb25maWctc2VydmljZSc7XG5pbXBvcnQgeyBEcmFnRHJvcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuaW1wb3J0IHsgRHJvcGRvd25Nb2R1bGUgfSBmcm9tICdwcmltZW5nL2Ryb3Bkb3duJztcblBsb3RseVZpYUNETk1vZHVsZS5zZXRQbG90bHlWZXJzaW9uKCcxLjU1LjInKTtcbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIEZvcm1zTW9kdWxlLFxuICAgICAgICBOZ3hQYWdpbmF0aW9uTW9kdWxlLFxuICAgICAgICBQaXBlc01vZHVsZSxcbiAgICAgICAgSW5wdXRUZXh0TW9kdWxlLFxuICAgICAgICBVaVN3aXRjaE1vZHVsZSxcbiAgICAgICAgRGlyZWN0aXZlc01vZHVsZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgTmdiTW9kdWxlLFxuICAgICAgICBQbG90bHlWaWFDRE5Nb2R1bGUsXG4gICAgICAgIE5neEdwQXV0b2NvbXBsZXRlTW9kdWxlLFxuICAgICAgICBTbWFydENybVByaXZhdGVSb3V0aW5nTW9kdWxlLFxuICAgICAgICBTaGFyZWRDb21wb25lbnRzTW9kdWxlLFxuICAgICAgICBDb3JlVHJhbnNsb2NvTW9kdWxlLFxuICAgICAgICBEcmFnRHJvcE1vZHVsZSxcbiAgICAgICAgLy8gU2hhcmVkTW9kdWxlLFxuICAgICAgICBRdWlsbE1vZHVsZS5mb3JSb290KCksXG4gICAgICAgIE5neFVwbG9hZGVyTW9kdWxlLFxuICAgICAgICBJbmZpbml0ZVNjcm9sbE1vZHVsZSxcbiAgICAgICAgRHJvcGRvd25Nb2R1bGVcbiAgICAgICAgLy8gTGF6eUxvYWRNb2R1bGVzXG4gICAgXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVFJBTlNMT0NPX1NDT1BFLFxuICAgICAgICAgICAgdXNlVmFsdWU6IHtcbiAgICAgICAgICAgICAgICBzY29wZTogJ3NtYXJ0LWNybScsXG4gICAgICAgICAgICAgICAgYWxpYXM6ICdDcm0nXG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IExvYWRlcixcbiAgICAgICAgICAgIHVzZUZhY3Rvcnk6IChhcHBDb25maWdTZXJ2aWNlOiBBcHBDb25maWdTZXJ2aWNlKSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBMb2FkZXIoe1xuICAgICAgICAgICAgICAgICAgICBhcGlLZXk6IGFwcENvbmZpZ1NlcnZpY2UuZ2V0R29vZ2xlQXBpS2V5KCksXG4gICAgICAgICAgICAgICAgICAgIGxpYnJhcmllczogWydwbGFjZXMnXVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGRlcHM6IFtBcHBDb25maWdTZXJ2aWNlXVxuICAgICAgICB9XG4gICAgXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgICAgU21hcnRDcm1UYWJzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybVN1bW1hcnlDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQ29tcGFuaWVzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUNvbnRhY3RDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQ29uZmlndXJhdGlvbkNvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1TZXR0aW5nc0RldGFpbHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQ29udGFjdERldGFpbHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQ29tcGFueURldGFpbHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtSW5zaWdodENvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1Db250YWN0SW5mb0NvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1MZWFkc0NvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1PcHBvcnR1bml0aWVzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybU9wcG9ydHVuaXRpZXNEZXRhaWxzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUJvYXJkQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUNvbW11bmljYXRpb25zQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUNvbXBhbnlJbmZvQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUNvbXBhbnlTb3VyY2VDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQ29tcGFueUZpbGVzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybVdpZGdldHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQ3VzdG9tZXJTdWNjZXNzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUNvbXBldGl0aW9uQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybU9wcG9ydHVuaXRpZXNJbmZvQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybVNvdXJjZURldGFpbHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtV2lkZ2V0c0RldGFpbHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQWN0aW9uc0NvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1PcHBvcnR1bml0aWVzTGlzdENvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1PdmVydmlld0NvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1TdW1tYXJ5QWN0aW9uc0NvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1TdW1tYXJ5T3RoZXJzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUNvbW11bmljYXRpb25zRGV0YWlsc0NvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1Db21tdW5pY2F0aW9uVmlld0RldGFpbHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtTGVhZHNEZXRhaWxzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybU1hcmtldGluZ1VzZXJzTGlzdENvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1TdGFnZXNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtU3RhZ2VEZXRhaWxzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybU1hcmtldGluZ1ZpZXdDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtT3Bwb3J0dW5pdHlDYXRlZ29yaWVzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybU9wcG9ydHVuaXR5Q2F0ZWdvcmllc0RldGFpbHNDb21wb25lbnRcbiAgICBdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgICAgU21hcnRDcm1UYWJzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybVN1bW1hcnlDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQ29tcGFuaWVzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUNvbnRhY3RDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQ29uZmlndXJhdGlvbkNvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1TZXR0aW5nc0RldGFpbHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQ29udGFjdERldGFpbHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQ29tcGFueURldGFpbHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtSW5zaWdodENvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1Db250YWN0SW5mb0NvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1MZWFkc0NvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1PcHBvcnR1bml0aWVzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybU9wcG9ydHVuaXRpZXNEZXRhaWxzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUJvYXJkQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUNvbW11bmljYXRpb25zQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUNvbXBhbnlJbmZvQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUNvbXBhbnlTb3VyY2VDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQ29tcGFueUZpbGVzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybVdpZGdldHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQ3VzdG9tZXJTdWNjZXNzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUNvbXBldGl0aW9uQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybU9wcG9ydHVuaXRpZXNJbmZvQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybVNvdXJjZURldGFpbHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtV2lkZ2V0c0RldGFpbHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtQWN0aW9uc0NvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1PcHBvcnR1bml0aWVzTGlzdENvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1PdmVydmlld0NvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1TdW1tYXJ5QWN0aW9uc0NvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1TdW1tYXJ5T3RoZXJzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybUNvbW11bmljYXRpb25zRGV0YWlsc0NvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1Db21tdW5pY2F0aW9uVmlld0RldGFpbHNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtTGVhZHNEZXRhaWxzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybU1hcmtldGluZ1VzZXJzTGlzdENvbXBvbmVudCxcbiAgICAgICAgU21hcnRDcm1TdGFnZXNDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtU3RhZ2VEZXRhaWxzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybU1hcmtldGluZ1ZpZXdDb21wb25lbnQsXG4gICAgICAgIFNtYXJ0Q3JtT3Bwb3J0dW5pdHlDYXRlZ29yaWVzQ29tcG9uZW50LFxuICAgICAgICBTbWFydENybU9wcG9ydHVuaXR5Q2F0ZWdvcmllc0RldGFpbHNDb21wb25lbnRcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFNtYXJ0Q3JtUHJpdmF0ZU1vZHVsZSB7fVxuIl19