desy-angular 12.1.0 → 13.0.1

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 (71) hide show
  1. package/esm2022/lib/desy-angular.module.mjs +10 -9
  2. package/esm2022/lib/desy-buttons/components/button-loader/button-loader.component.mjs +1 -1
  3. package/esm2022/lib/desy-buttons/desy-buttons.module.mjs +15 -15
  4. package/esm2022/lib/desy-forms/components/date-input/date-input.component.mjs +3 -3
  5. package/esm2022/lib/desy-forms/components/datepicker/datepicker.component.mjs +190 -0
  6. package/esm2022/lib/desy-forms/components/datepicker/datepicker.pipe.mjs +34 -0
  7. package/esm2022/lib/desy-forms/components/tree/tree.component.mjs +10 -8
  8. package/esm2022/lib/desy-forms/desy-forms.module.mjs +40 -24
  9. package/esm2022/lib/desy-nav/components/breadcrumbs/breadcrumbs.component.mjs +3 -3
  10. package/esm2022/lib/desy-nav/components/footer/footer-navigation/footer-navigation.component.mjs +4 -2
  11. package/esm2022/lib/desy-nav/components/footer/footer.component.mjs +3 -3
  12. package/esm2022/lib/desy-nav/components/header/header.component.mjs +3 -3
  13. package/esm2022/lib/desy-nav/components/header-advanced/header-advanced-sub/header-advanced-sub.component.mjs +3 -3
  14. package/esm2022/lib/desy-nav/components/header-advanced/header-advanced-super/header-advanced-super.component.mjs +3 -3
  15. package/esm2022/lib/desy-nav/components/header-mini/header-mini.component.mjs +3 -3
  16. package/esm2022/lib/desy-nav/components/links-list/links-list-icon-right/links-list-icon-right.component.mjs +16 -0
  17. package/esm2022/lib/desy-nav/components/links-list/links-list-item/links-list-item.component.mjs +6 -2
  18. package/esm2022/lib/desy-nav/components/links-list/links-list.component.mjs +5 -3
  19. package/esm2022/lib/desy-nav/components/menu-horizontal/menu-horizontal.component.mjs +3 -3
  20. package/esm2022/lib/desy-nav/components/menu-navigation/menu-navigation.component.mjs +3 -3
  21. package/esm2022/lib/desy-nav/components/menu-vertical/menu-vertical.component.mjs +3 -3
  22. package/esm2022/lib/desy-nav/components/nav/nav.component.mjs +3 -3
  23. package/esm2022/lib/desy-nav/components/notification/notification.component.mjs +3 -3
  24. package/esm2022/lib/desy-nav/components/skip-link/skip-link.component.mjs +5 -1
  25. package/esm2022/lib/desy-nav/desy-nav.module.mjs +6 -5
  26. package/esm2022/lib/desy-nav/interfaces/footer-logo.mjs +2 -1
  27. package/esm2022/lib/desy-pagination/components/pagination/pagination.component.mjs +18 -19
  28. package/esm2022/lib/desy-pagination/components/pagination-item-perpage/pagination-item-perpage.component.mjs +2 -2
  29. package/esm2022/lib/desy-pagination/desy-pagination.module.mjs +16 -8
  30. package/esm2022/lib/desy-tables/components/table/table.component.mjs +24 -4
  31. package/esm2022/lib/desy-tables/components/table-advanced/table-advanced.component.mjs +9 -10
  32. package/esm2022/lib/desy-tables/directives/focus-clicked-cell.directive.mjs +1 -5
  33. package/esm2022/lib/desy-views/components/collapsible/collapsible.component.mjs +11 -3
  34. package/esm2022/lib/desy-views/desy-views.module.mjs +27 -32
  35. package/esm2022/lib/shared/components/index.mjs +4 -3
  36. package/esm2022/lib/{desy-views → shared}/components/spinner/spinner.component.mjs +2 -2
  37. package/esm2022/lib/shared/directives/custom-inner-content.directive.mjs +21 -4
  38. package/esm2022/lib/shared/sharedExternal.module.mjs +24 -0
  39. package/esm2022/public-api.mjs +5 -2
  40. package/fesm2022/desy-angular.mjs +1128 -819
  41. package/fesm2022/desy-angular.mjs.map +1 -1
  42. package/lib/desy-angular.module.d.ts +2 -1
  43. package/lib/desy-buttons/desy-buttons.module.d.ts +3 -3
  44. package/lib/desy-forms/components/datepicker/datepicker.component.d.ts +31 -0
  45. package/lib/desy-forms/components/datepicker/datepicker.pipe.d.ts +7 -0
  46. package/lib/desy-forms/components/tree/tree.component.d.ts +5 -4
  47. package/lib/desy-forms/desy-forms.module.d.ts +10 -6
  48. package/lib/desy-nav/components/footer/footer-navigation/footer-navigation.component.d.ts +2 -1
  49. package/lib/desy-nav/components/header-advanced/header-advanced-sub/header-advanced-sub.component.d.ts +1 -1
  50. package/lib/desy-nav/components/header-advanced/header-advanced-super/header-advanced-super.component.d.ts +1 -1
  51. package/lib/desy-nav/components/header-mini/header-mini.component.d.ts +1 -1
  52. package/lib/desy-nav/components/links-list/links-list-icon-right/links-list-icon-right.component.d.ts +8 -0
  53. package/lib/desy-nav/components/links-list/links-list-item/links-list-item.component.d.ts +3 -1
  54. package/lib/desy-nav/components/links-list/links-list.component.d.ts +2 -1
  55. package/lib/desy-nav/desy-nav.module.d.ts +29 -28
  56. package/lib/desy-nav/interfaces/footer-logo.d.ts +1 -0
  57. package/lib/desy-pagination/components/pagination/pagination.component.d.ts +4 -4
  58. package/lib/desy-pagination/components/pagination-item-perpage/pagination-item-perpage.component.d.ts +3 -3
  59. package/lib/desy-pagination/desy-pagination.module.d.ts +3 -1
  60. package/lib/desy-tables/components/table/table.component.d.ts +3 -0
  61. package/lib/desy-tables/components/table-advanced/table-advanced.component.d.ts +1 -1
  62. package/lib/desy-views/components/collapsible/collapsible.component.d.ts +5 -1
  63. package/lib/desy-views/desy-views.module.d.ts +30 -31
  64. package/lib/shared/components/index.d.ts +3 -2
  65. package/lib/{desy-views → shared}/components/spinner/spinner.component.d.ts +1 -1
  66. package/lib/shared/directives/custom-inner-content.directive.d.ts +3 -2
  67. package/lib/shared/sharedExternal.module.d.ts +8 -0
  68. package/package.json +2 -2
  69. package/public-api.d.ts +4 -1
  70. package/esm2022/lib/desy-pagination/interfaces/index.mjs +0 -2
  71. package/lib/desy-pagination/interfaces/index.d.ts +0 -1
@@ -36,6 +36,10 @@ export class SkipLinkComponent extends AccessibilityComponent {
36
36
  const elem = document.querySelector('#' + fragment);
37
37
  if (elem) {
38
38
  elem.scrollIntoView({ behavior: 'smooth' });
39
+ const focusableElement = elem.querySelector('button, [tabindex], input, select, textarea, a[href], summary, [contenteditable], [role="button"], [role="link"], [role="checkbox"], [role="radio"], [role="menuitem"], [role="option"], [role="tab"], [role="tabpanel"]');
40
+ if (focusableElement) {
41
+ focusableElement.focus();
42
+ }
39
43
  }
40
44
  }
41
45
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SkipLinkComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
@@ -55,4 +59,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
55
59
  }], id: [{
56
60
  type: Input
57
61
  }] } });
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2tpcC1saW5rLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktbmF2L2NvbXBvbmVudHMvc2tpcC1saW5rL3NraXAtbGluay5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LW5hdi9jb21wb25lbnRzL3NraXAtbGluay9za2lwLWxpbmsuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7OztBQU1wRSxNQUFNLE9BQU8saUJBQWtCLFNBQVEsc0JBQXNCO0lBSzNELElBQ0ksSUFBSSxDQUFDLEtBQWE7UUFDcEIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUE7UUFDbEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUE7SUFDNUQsQ0FBQztJQUNELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBQ0QsSUFDSSxJQUFJLENBQUMsS0FBYTtRQUNwQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQTtRQUNsQixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUE7SUFDeEMsQ0FBQztJQUNELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBUUQsWUFBb0IsaUJBQW9DO1FBQ3RELEtBQUssRUFBRSxDQUFDO1FBRFUsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUZ4RCxlQUFVLEdBQUcsSUFBSSxDQUFBO0lBSWpCLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxVQUFVLEdBQUcsc0tBQXNLLENBQUM7UUFDeEwsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2hCLFVBQVUsSUFBSSxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztTQUNsQztRQUNELE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxRQUFRLENBQUMsUUFBZ0I7UUFDdkIsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxHQUFHLEdBQUcsUUFBUSxDQUFDLENBQUM7UUFDcEQsSUFBSSxJQUFJLEVBQUU7WUFDUixJQUFJLENBQUMsY0FBYyxDQUFDLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7U0FDN0M7SUFDSCxDQUFDOytHQTdDVSxpQkFBaUI7bUdBQWpCLGlCQUFpQix5S0NQOUIsc29CQWlCQTs7NEZEVmEsaUJBQWlCO2tCQUo3QixTQUFTOytCQUNFLGdCQUFnQjt3R0FTdEIsSUFBSTtzQkFEUCxLQUFLO2dCQVNGLElBQUk7c0JBRFAsS0FBSztnQkFTRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxFQUFFO3NCQUFWLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWNjZXNzaWJpbGl0eUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGVzeS1za2lwLWxpbmsnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2tpcC1saW5rLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBTa2lwTGlua0NvbXBvbmVudCBleHRlbmRzIEFjY2Vzc2liaWxpdHlDb21wb25lbnQge1xuXG4gIF9odG1sOiBzdHJpbmc7XG4gIF90ZXh0OiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgc2V0IGh0bWwodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX2h0bWwgPSB2YWx1ZVxuICAgIHRoaXMuaGFzQ29udGVudCA9IHZhbHVlID8gZmFsc2UgOiB0aGlzLnRleHQgPyBmYWxzZSA6IHRydWVcbiAgfVxuICBnZXQgaHRtbCgpIHtcbiAgICByZXR1cm4gdGhpcy5faHRtbDtcbiAgfVxuICBASW5wdXQoKVxuICBzZXQgdGV4dCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fdGV4dCA9IHZhbHVlXG4gICAgdGhpcy5oYXNDb250ZW50ID0gdmFsdWUgPyBmYWxzZSA6IHRydWVcbiAgfVxuICBnZXQgdGV4dCgpIHtcbiAgICByZXR1cm4gdGhpcy5fdGV4dDtcbiAgfVxuXG4gIEBJbnB1dCgpIGZyYWdtZW50OiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNsYXNzZXM6IHN0cmluZztcbiAgQElucHV0KCkgaWQ6IHN0cmluZztcblxuICBoYXNDb250ZW50ID0gdHJ1ZVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIGdldENsYXNzTmFtZXMoKTogc3RyaW5nIHtcbiAgICBsZXQgY2xhc3NOYW1lcyA9ICdjLXNraXAtbGluayBzci1vbmx5IGFjdGl2ZTpub3Qtc3Itb25seSBmb2N1czpub3Qtc3Itb25seSBmb2N1czpvdXRsaW5lLW5vbmUgZm9jdXM6c2hhZG93LW91dGxpbmUtZm9jdXMgYmxvY2sgcC1iYXNlIGJnLXdhcm5pbmctYmFzZSB0ZXh0LWNlbnRlciB0ZXh0LWJsYWNrIHVuZGVybGluZSc7XG4gICAgaWYgKHRoaXMuY2xhc3Nlcykge1xuICAgICAgY2xhc3NOYW1lcyArPSAnICcgKyB0aGlzLmNsYXNzZXM7XG4gICAgfVxuICAgIHJldHVybiBjbGFzc05hbWVzO1xuICB9XG5cbiAgc2Nyb2xsVG8oZnJhZ21lbnQ6IHN0cmluZykge1xuICAgIGNvbnN0IGVsZW0gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjJyArIGZyYWdtZW50KTtcbiAgICBpZiAoZWxlbSkge1xuICAgICAgZWxlbS5zY3JvbGxJbnRvVmlldyh7IGJlaGF2aW9yOiAnc21vb3RoJyB9KTtcbiAgICB9XG4gIH1cblxufVxuIiwiPGEgKm5nSWY9XCJoYXNDb250ZW50XCJcbiAgIFtyb3V0ZXJMaW5rXT1cIltdXCIgW2ZyYWdtZW50XT1cImZyYWdtZW50ID8gZnJhZ21lbnQgOiAnY29udGVudCdcIlxuICAgW2NsYXNzXT1cImdldENsYXNzTmFtZXMoKVwiXG4gICBbYXR0ci5pZF09XCJpZCA/IGlkIDogbnVsbFwiXG4gICBbZGVzeUFwcEFjY2Vzc2liaWxpdHldPVwidGhpc1wiXG4gICAoY2xpY2spPVwic2Nyb2xsVG8oZnJhZ21lbnQgPyBmcmFnbWVudCA6ICdjb250ZW50JylcIj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9hPlxuXG48YSAqbmdJZj1cIiFoYXNDb250ZW50XCJcbiAgIFtyb3V0ZXJMaW5rXT1cIltdXCIgW2ZyYWdtZW50XT1cImZyYWdtZW50ID8gZnJhZ21lbnQgOiAnY29udGVudCdcIlxuICAgW2NsYXNzXT1cImdldENsYXNzTmFtZXMoKVwiXG4gICBbYXR0ci5pZF09XCJpZCA/IGlkIDogbnVsbFwiXG4gICBbZGVzeUFwcEFjY2Vzc2liaWxpdHldPVwidGhpc1wiXG4gICAoY2xpY2spPVwic2Nyb2xsVG8oZnJhZ21lbnQgPyBmcmFnbWVudCA6ICdjb250ZW50JylcIj5cbiAgPG5nLWNvbnRhaW5lciAqZGVzeUN1c3RvbUlubmVyQ29udGVudD1cInsgaHRtbDogaHRtbCwgdGV4dDogdGV4dCB9XCI+PC9uZy1jb250YWluZXI+XG48L2E+XG4iXX0=
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2tpcC1saW5rLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktbmF2L2NvbXBvbmVudHMvc2tpcC1saW5rL3NraXAtbGluay5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LW5hdi9jb21wb25lbnRzL3NraXAtbGluay9za2lwLWxpbmsuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7OztBQU1wRSxNQUFNLE9BQU8saUJBQWtCLFNBQVEsc0JBQXNCO0lBSzNELElBQ0ksSUFBSSxDQUFDLEtBQWE7UUFDcEIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUE7UUFDbEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUE7SUFDNUQsQ0FBQztJQUNELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBQ0QsSUFDSSxJQUFJLENBQUMsS0FBYTtRQUNwQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQTtRQUNsQixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUE7SUFDeEMsQ0FBQztJQUNELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBUUQsWUFBb0IsaUJBQW9DO1FBQ3RELEtBQUssRUFBRSxDQUFDO1FBRFUsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUZ4RCxlQUFVLEdBQUcsSUFBSSxDQUFBO0lBSWpCLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxVQUFVLEdBQUcsc0tBQXNLLENBQUM7UUFDeEwsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2hCLFVBQVUsSUFBSSxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztTQUNsQztRQUNELE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxRQUFRLENBQUMsUUFBZ0I7UUFDdkIsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxHQUFHLEdBQUcsUUFBUSxDQUFDLENBQUM7UUFDcEQsSUFBSSxJQUFJLEVBQUU7WUFDUixJQUFJLENBQUMsY0FBYyxDQUFDLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7WUFDNUMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLDBOQUEwTixDQUFnQixDQUFDO1lBQ3ZSLElBQUksZ0JBQWdCLEVBQUU7Z0JBQ3BCLGdCQUFnQixDQUFDLEtBQUssRUFBRSxDQUFDO2FBQzFCO1NBQ0Y7SUFDSCxDQUFDOytHQWpEVSxpQkFBaUI7bUdBQWpCLGlCQUFpQix5S0NQOUIsc29CQWlCQTs7NEZEVmEsaUJBQWlCO2tCQUo3QixTQUFTOytCQUNFLGdCQUFnQjt3R0FTdEIsSUFBSTtzQkFEUCxLQUFLO2dCQVNGLElBQUk7c0JBRFAsS0FBSztnQkFTRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxFQUFFO3NCQUFWLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWNjZXNzaWJpbGl0eUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGVzeS1za2lwLWxpbmsnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2tpcC1saW5rLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBTa2lwTGlua0NvbXBvbmVudCBleHRlbmRzIEFjY2Vzc2liaWxpdHlDb21wb25lbnQge1xuXG4gIF9odG1sOiBzdHJpbmc7XG4gIF90ZXh0OiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgc2V0IGh0bWwodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX2h0bWwgPSB2YWx1ZVxuICAgIHRoaXMuaGFzQ29udGVudCA9IHZhbHVlID8gZmFsc2UgOiB0aGlzLnRleHQgPyBmYWxzZSA6IHRydWVcbiAgfVxuICBnZXQgaHRtbCgpIHtcbiAgICByZXR1cm4gdGhpcy5faHRtbDtcbiAgfVxuICBASW5wdXQoKVxuICBzZXQgdGV4dCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fdGV4dCA9IHZhbHVlXG4gICAgdGhpcy5oYXNDb250ZW50ID0gdmFsdWUgPyBmYWxzZSA6IHRydWVcbiAgfVxuICBnZXQgdGV4dCgpIHtcbiAgICByZXR1cm4gdGhpcy5fdGV4dDtcbiAgfVxuXG4gIEBJbnB1dCgpIGZyYWdtZW50OiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNsYXNzZXM6IHN0cmluZztcbiAgQElucHV0KCkgaWQ6IHN0cmluZztcblxuICBoYXNDb250ZW50ID0gdHJ1ZVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIGdldENsYXNzTmFtZXMoKTogc3RyaW5nIHtcbiAgICBsZXQgY2xhc3NOYW1lcyA9ICdjLXNraXAtbGluayBzci1vbmx5IGFjdGl2ZTpub3Qtc3Itb25seSBmb2N1czpub3Qtc3Itb25seSBmb2N1czpvdXRsaW5lLW5vbmUgZm9jdXM6c2hhZG93LW91dGxpbmUtZm9jdXMgYmxvY2sgcC1iYXNlIGJnLXdhcm5pbmctYmFzZSB0ZXh0LWNlbnRlciB0ZXh0LWJsYWNrIHVuZGVybGluZSc7XG4gICAgaWYgKHRoaXMuY2xhc3Nlcykge1xuICAgICAgY2xhc3NOYW1lcyArPSAnICcgKyB0aGlzLmNsYXNzZXM7XG4gICAgfVxuICAgIHJldHVybiBjbGFzc05hbWVzO1xuICB9XG5cbiAgc2Nyb2xsVG8oZnJhZ21lbnQ6IHN0cmluZykge1xuICAgIGNvbnN0IGVsZW0gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjJyArIGZyYWdtZW50KTtcbiAgICBpZiAoZWxlbSkge1xuICAgICAgZWxlbS5zY3JvbGxJbnRvVmlldyh7IGJlaGF2aW9yOiAnc21vb3RoJyB9KTtcbiAgICAgIGNvbnN0IGZvY3VzYWJsZUVsZW1lbnQgPSBlbGVtLnF1ZXJ5U2VsZWN0b3IoJ2J1dHRvbiwgW3RhYmluZGV4XSwgaW5wdXQsIHNlbGVjdCwgdGV4dGFyZWEsIGFbaHJlZl0sIHN1bW1hcnksIFtjb250ZW50ZWRpdGFibGVdLCBbcm9sZT1cImJ1dHRvblwiXSwgW3JvbGU9XCJsaW5rXCJdLCBbcm9sZT1cImNoZWNrYm94XCJdLCBbcm9sZT1cInJhZGlvXCJdLCBbcm9sZT1cIm1lbnVpdGVtXCJdLCBbcm9sZT1cIm9wdGlvblwiXSwgW3JvbGU9XCJ0YWJcIl0sIFtyb2xlPVwidGFicGFuZWxcIl0nKSBhcyBIVE1MRWxlbWVudDtcbiAgICAgIGlmIChmb2N1c2FibGVFbGVtZW50KSB7XG4gICAgICAgIGZvY3VzYWJsZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuIiwiPGEgKm5nSWY9XCJoYXNDb250ZW50XCJcbiAgIFtyb3V0ZXJMaW5rXT1cIltdXCIgW2ZyYWdtZW50XT1cImZyYWdtZW50ID8gZnJhZ21lbnQgOiAnY29udGVudCdcIlxuICAgW2NsYXNzXT1cImdldENsYXNzTmFtZXMoKVwiXG4gICBbYXR0ci5pZF09XCJpZCA/IGlkIDogbnVsbFwiXG4gICBbZGVzeUFwcEFjY2Vzc2liaWxpdHldPVwidGhpc1wiXG4gICAoY2xpY2spPVwic2Nyb2xsVG8oZnJhZ21lbnQgPyBmcmFnbWVudCA6ICdjb250ZW50JylcIj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9hPlxuXG48YSAqbmdJZj1cIiFoYXNDb250ZW50XCJcbiAgIFtyb3V0ZXJMaW5rXT1cIltdXCIgW2ZyYWdtZW50XT1cImZyYWdtZW50ID8gZnJhZ21lbnQgOiAnY29udGVudCdcIlxuICAgW2NsYXNzXT1cImdldENsYXNzTmFtZXMoKVwiXG4gICBbYXR0ci5pZF09XCJpZCA/IGlkIDogbnVsbFwiXG4gICBbZGVzeUFwcEFjY2Vzc2liaWxpdHldPVwidGhpc1wiXG4gICAoY2xpY2spPVwic2Nyb2xsVG8oZnJhZ21lbnQgPyBmcmFnbWVudCA6ICdjb250ZW50JylcIj5cbiAgPG5nLWNvbnRhaW5lciAqZGVzeUN1c3RvbUlubmVyQ29udGVudD1cInsgaHRtbDogaHRtbCwgdGV4dDogdGV4dCB9XCI+PC9uZy1jb250YWluZXI+XG48L2E+XG4iXX0=
@@ -32,6 +32,7 @@ import { HeaderOffcanvasCloseButtonComponent } from './components/header/header-
32
32
  import { HeaderOffcanvasComponent } from './components/header/header-offcanvas/header-offcanvas.component';
33
33
  import { HeaderSubnavComponent } from './components/header/header-subnav/header-subnav.component';
34
34
  import { HeaderComponent } from './components/header/header.component';
35
+ import { LinksListIconRightComponent } from './components/links-list/links-list-icon-right/links-list-icon-right.component';
35
36
  import { LinksListItemSubComponent } from './components/links-list/links-list-item-sub/links-list-item-sub.component';
36
37
  import { LinksListItemComponent } from './components/links-list/links-list-item/links-list-item.component';
37
38
  import { LinksListComponent } from './components/links-list/links-list.component';
@@ -89,6 +90,7 @@ export class DesyNavModule {
89
90
  HeaderAdvancedSubComponent,
90
91
  LinksListComponent,
91
92
  LinksListItemComponent,
93
+ LinksListIconRightComponent,
92
94
  LinksListItemSubComponent,
93
95
  MenuHorizontalComponent,
94
96
  MenuHorizontalItemComponent,
@@ -111,8 +113,6 @@ export class DesyNavModule {
111
113
  MenuNavigationItemComponent,
112
114
  MenuNavigationSubitemComponent,
113
115
  HeaderCustomNavigationComponent,
114
- LinksListItemComponent,
115
- LinksListItemSubComponent,
116
116
  DynamicHeadingDirective], imports: [CommonModule,
117
117
  SharedModule,
118
118
  DesyCommonsModule,
@@ -136,6 +136,7 @@ export class DesyNavModule {
136
136
  HeaderMobileTextComponent,
137
137
  LinksListComponent,
138
138
  LinksListItemComponent,
139
+ LinksListIconRightComponent,
139
140
  LinksListItemSubComponent,
140
141
  MenuHorizontalComponent,
141
142
  MenuHorizontalItemComponent,
@@ -208,6 +209,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
208
209
  HeaderAdvancedSubComponent,
209
210
  LinksListComponent,
210
211
  LinksListItemComponent,
212
+ LinksListIconRightComponent,
211
213
  LinksListItemSubComponent,
212
214
  MenuHorizontalComponent,
213
215
  MenuHorizontalItemComponent,
@@ -230,8 +232,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
230
232
  MenuNavigationItemComponent,
231
233
  MenuNavigationSubitemComponent,
232
234
  HeaderCustomNavigationComponent,
233
- LinksListItemComponent,
234
- LinksListItemSubComponent,
235
235
  DynamicHeadingDirective,
236
236
  ],
237
237
  imports: [
@@ -261,6 +261,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
261
261
  HeaderMobileTextComponent,
262
262
  LinksListComponent,
263
263
  LinksListItemComponent,
264
+ LinksListIconRightComponent,
264
265
  LinksListItemSubComponent,
265
266
  MenuHorizontalComponent,
266
267
  MenuHorizontalItemComponent,
@@ -297,4 +298,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
297
298
  ]
298
299
  }]
299
300
  }] });
300
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzeS1uYXYubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS1uYXYvZGVzeS1uYXYubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV2RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxzRUFBc0UsQ0FBQztBQUNoSCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUN0RixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw0RUFBNEUsQ0FBQztBQUN2SCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMzRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2RUFBNkUsQ0FBQztBQUN0SCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUM1RixPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwrRkFBK0YsQ0FBQztBQUM5SSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtRUFBbUUsQ0FBQztBQUM5RyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDdkUsT0FBTyxFQUFFLHVDQUF1QyxFQUFFLE1BQU0sbUdBQW1HLENBQUM7QUFDNUosT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sMEZBQTBGLENBQUM7QUFDM0ksT0FBTyxFQUFFLDJCQUEyQixF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QUF3Qjt3QkFDeEIsOEJBQThCO3dCQUM5QixtQ0FBbUM7d0JBQ25DLHlCQUF5Qjt3QkFDekIsa0JBQWtCO3dCQUNsQixzQkFBc0I7d0JBQ3RCLHlCQUF5Qjt3QkFDekIsdUJBQXVCO3dCQUN2QiwyQkFBMkI7d0JBQzNCLHFCQUFxQjt3QkFDckIseUJBQXlCO3dCQUN6Qiw0QkFBNEI7d0JBQzVCLGdDQUFnQzt3QkFDaEMsZ0JBQWdCO3dCQUNoQixxQkFBcUI7d0JBQ3JCLG9CQUFvQjt3QkFDcEIsdUJBQXVCO3dCQUN2QiwwQkFBMEI7d0JBQzFCLFlBQVk7d0JBQ1oscUJBQXFCO3dCQUNyQix5QkFBeUI7d0JBQ3pCLGdCQUFnQjt3QkFDaEIsaUJBQWlCO3dCQUNqQix1QkFBdUI7d0JBQ3ZCLDhCQUE4Qjt3QkFDOUIsMkJBQTJCO3dCQUMzQiw4QkFBOEI7d0JBQzlCLCtCQUErQjt3QkFDL0IsbUJBQW1CO3dCQUNuQix1QkFBdUI7d0JBQ3ZCLDRCQUE0Qjt3QkFDNUIsMkJBQTJCO3dCQUMzQix1Q0FBdUM7d0JBQ3ZDLDRCQUE0Qjt3QkFDNUIsK0JBQStCO3dCQUMvQixxQ0FBcUM7d0JBQ3JDLCtCQUErQjt3QkFDL0IsMEJBQTBCO3dCQUUxQix1QkFBdUI7cUJBQ3hCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEZXN5Q29tbW9uc01vZHVsZSB9IGZyb20gJy4uL2Rlc3ktY29tbW9ucy9kZXN5LWNvbW1vbnMubW9kdWxlJztcbmltcG9ydCB7IFNoYXJlZE1vZHVsZSB9IGZyb20gJy4uL3NoYXJlZC9zaGFyZWQubW9kdWxlJztcblxuaW1wb3J0IHsgRGVzeUJ1dHRvbnNNb2R1bGUgfSBmcm9tICcuLi9kZXN5LWJ1dHRvbnMvZGVzeS1idXR0b25zLm1vZHVsZSc7XG5pbXBvcnQgeyBCcmVhZGNydW1ic0l0ZW1Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYnJlYWRjcnVtYnMvYnJlYWRjcnVtYnMtaXRlbS9icmVhZGNydW1icy1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCcmVhZGNydW1ic0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9icmVhZGNydW1icy9icmVhZGNydW1icy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRXJyb3JTdW1tYXJ5SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9lcnJvci1zdW1tYXJ5L2Vycm9yLXN1bW1hcnktaXRlbS9lcnJvci1zdW1tYXJ5LWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IEVycm9yU3VtbWFyeUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9lcnJvci1zdW1tYXJ5L2Vycm9yLXN1bW1hcnkuY29tcG9uZW50JztcbmltcG9ydCB7IEZvb3Rlck1ldGFJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Zvb3Rlci9mb290ZXItbWV0YS9mb290ZXItbWV0YS1pdGVtL2Zvb3Rlci1tZXRhLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IEZvb3Rlck1ldGFDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZm9vdGVyL2Zvb3Rlci1tZXRhL2Zvb3Rlci1tZXRhLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb290ZXJOYXZpZ2F0aW9uSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9mb290ZXIvZm9vdGVyLW5hdmlnYXRpb24vZm9vdGVyLW5hdmlnYXRpb24taXRlbS9mb290ZXItbmF2aWdhdGlvbi1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb290ZXJOYXZpZ2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Zvb3Rlci9mb290ZXItbmF2aWdhdGlvbi9mb290ZXItbmF2aWdhdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9vdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Zvb3Rlci9mb290ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEhlYWRlckFkdmFuY2VkQ3VzdG9tTmF2aWdhdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oZWFkZXItYWR2YW5jZWQvaGVhZGVyLWFkdmFuY2VkLWN1c3RvbS1uYXZpZ2F0aW9uL2hlYWRlci1jdXN0b20tbmF2aWdhdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGVhZGVyQWR2YW5jZWREcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oZWFkZXItYWR2YW5jZWQvaGVhZGVyLWFkdmFuY2VkLWRyb3Bkb3duL2hlYWRlci1hZHZhbmNlZC1kcm9wZG93bi5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGVhZGVyQWR2YW5jZWRMb2dvQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2hlYWRlci1hZHZhbmNlZC9oZWFkZXItYWR2YW5jZWQtbG9nby9oZWFkZXItYWR2YW5jZWQtbG9nby5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGVhZGVyQWR2YW5jZWRTdWJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvaGVhZGVyLWFkdmFuY2VkL2hlYWRlci1hZHZhbmNlZC1zdWIvaGVhZGVyLWFkdmFuY2VkLXN1Yi5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGVhZGVyQWR2YW5jZWRTdWJ0aXRsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oZWFkZXItYWR2YW5jZWQvaGVhZGVyLWFkdmFuY2VkLXN1YnRpdGxlL2hlYWRlci1hZHZhbmNlZC1zdWJ0aXRsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGVhZGVyQWR2YW5jZWRTdXBlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oZWFkZXItYWR2YW5jZWQvaGVhZGVyLWFkdmFuY2VkLXN1cGVyL2hlYWRlci1hZHZhbmNlZC1zdXBlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGVhZGVyQWR2YW5jZWRUaXRsZUNvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oZWFkZXItYWR2YW5jZWQvaGVhZGVyLWFkdmFuY2VkLXRpdGxlLWNvbnRhaW5lci9oZWFkZXItYWR2YW5jZWQtdGl0bGUtY29udGFpbmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJBZHZhbmNlZFRpdGxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2hlYWRlci1hZHZhbmNlZC9oZWFkZXItYWR2YW5jZWQtdGl0bGUvaGVhZGVyLWFkdmFuY2VkLXRpdGxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJBZHZhbmNlZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oZWFkZXItYWR2YW5jZWQvaGVhZGVyLWFkdmFuY2VkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJNaW5pQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2hlYWRlci1taW5pL2hlYWRlci1taW5pLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJDdXN0b21OYXZpZ2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2hlYWRlci9oZWFkZXItY3VzdG9tLW5hdmlnYXRpb24vaGVhZGVyLWN1c3RvbS1uYXZpZ2F0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oZWFkZXIvaGVhZGVyLWRyb3Bkb3duL2hlYWRlci1kcm9wZG93bi5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGVhZGVyTW9iaWxlVGV4dENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oZWFkZXIvaGVhZGVyLW1vYmlsZVRleHQvaGVhZGVyLW1vYmlsZS10ZXh0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJOYXZpZ2F0aW9uSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oZWFkZXIvaGVhZGVyLW5hdmlnYXRpb24vaGVhZGVyLW5hdmlnYXRpb24taXRlbS9oZWFkZXItbmF2aWdhdGlvbi1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJOYXZpZ2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2hlYWRlci9oZWFkZXItbmF2aWdhdGlvbi9oZWFkZXItbmF2aWdhdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGVhZGVyT2ZmY2FudmFzQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2hlYWRlci9oZWFkZXItb2ZmY2FudmFzL2hlYWRlci1vZmZjYW52YXMtYnV0dG9uL2hlYWRlci1vZmZjYW52YXMtYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJPZmZjYW52YXNDbG9zZUJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oZWFkZXIvaGVhZGVyLW9mZmNhbnZhcy9oZWFkZXItb2ZmY2FudmFzLWNsb3NlLWJ1dHRvbi9oZWFkZXItb2ZmY2FudmFzLWNsb3NlLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGVhZGVyT2ZmY2FudmFzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2hlYWRlci9oZWFkZXItb2ZmY2FudmFzL2hlYWRlci1vZmZjYW52YXMuY29tcG9uZW50JztcbmltcG9ydCB7IEhlYWRlclN1Ym5hdkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oZWFkZXIvaGVhZGVyLXN1Ym5hdi9oZWFkZXItc3VibmF2LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvaGVhZGVyL2hlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGlua3NMaXN0SXRlbVN1YkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9saW5rcy1saXN0L2xpbmtzLWxpc3QtaXRlbS1zdWIvbGlua3MtbGlzdC1pdGVtLXN1Yi5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGlua3NMaXN0SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9saW5rcy1saXN0L2xpbmtzLWxpc3QtaXRlbS9saW5rcy1saXN0LWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IExpbmtzTGlzdENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9saW5rcy1saXN0L2xpbmtzLWxpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IE1lbnVIb3Jpem9udGFsSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tZW51LWhvcml6b250YWwvbWVudS1ob3Jpem9udGFsLWl0ZW0vbWVudS1ob3Jpem9udGFsLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IE1lbnVIb3Jpem9udGFsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21lbnUtaG9yaXpvbnRhbC9tZW51LWhvcml6b250YWwuY29tcG9uZW50JztcbmltcG9ydCB7IE1lbnVOYXZpZ2F0aW9uSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tZW51LW5hdmlnYXRpb24vY29tcG9uZW50cy9tZW51LW5hdmlnYXRpb24taXRlbS9tZW51LW5hdmlnYXRpb24taXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWVudU5hdmlnYXRpb25TdWJpdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21lbnUtbmF2aWdhdGlvbi9jb21wb25lbnRzL21lbnUtbmF2aWdhdGlvbi1zdWJpdGVtL21lbnUtbmF2aWdhdGlvbi1zdWJpdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNZW51TmF2aWdhdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tZW51LW5hdmlnYXRpb24vbWVudS1uYXZpZ2F0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNZW51VmVydGljYWxJdGVtU3ViSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tZW51LXZlcnRpY2FsL21lbnUtdmVydGljYWwtaXRlbS1zdWItaXRlbS9tZW51LXZlcnRpY2FsLWl0ZW0tc3ViLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IE1lbnVWZXJ0aWNhbEl0ZW1TdWJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbWVudS12ZXJ0aWNhbC9tZW51LXZlcnRpY2FsLWl0ZW0tc3ViL21lbnUtdmVydGljYWwtaXRlbS1zdWIuY29tcG9uZW50JztcbmltcG9ydCB7IE1lbnVWZXJ0aWNhbEl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbWVudS12ZXJ0aWNhbC9tZW51LXZlcnRpY2FsLWl0ZW0vbWVudS12ZXJ0aWNhbC1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNZW51VmVydGljYWxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbWVudS12ZXJ0aWNhbC9tZW51LXZlcnRpY2FsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNZW51YmFySXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tZW51YmFyL2NvbXBvbmVudHMvbWVudWJhci1pdGVtL21lbnViYXItaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWVudWJhckxhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21lbnViYXIvY29tcG9uZW50cy9tZW51YmFyLWxhYmVsL21lbnViYXItbGFiZWwuY29tcG9uZW50JztcbmltcG9ydCB7IE1lbnViYXJTdWJpdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21lbnViYXIvY29tcG9uZW50cy9tZW51YmFyLXN1Yml0ZW0vbWVudWJhci1zdWJpdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNZW51YmFyU3Vic3ViaXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tZW51YmFyL2NvbXBvbmVudHMvbWVudWJhci1zdWJzdWJpdGVtL21lbnViYXItc3Vic3ViaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWVudWJhcml0ZW1EaXJlY3RpdmUgfSBmcm9tICcuL2NvbXBvbmVudHMvbWVudWJhci9kaXJlY3RpdmVzL21lbnViYXJpdGVtLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBNZW51YmFyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21lbnViYXIvbWVudWJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmF2SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9uYXYvbmF2LWl0ZW0vbmF2LWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IE5hdkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9uYXYvbmF2LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25JdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24taXRlbS9ub3RpZmljYXRpb24taXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTm90aWZpY2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IFNraXBMaW5rQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NraXAtbGluay9za2lwLWxpbmsuY29tcG9uZW50JztcbmltcG9ydCB7IER5bmFtaWNIZWFkaW5nRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2R5bmFtaWMtaGVhZGluZy5kaXJlY3RpdmUnO1xuXG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEJyZWFkY3J1bWJzQ29tcG9uZW50LFxuICAgIEJyZWFkY3J1bWJzSXRlbUNvbXBvbmVudCxcbiAgICBFcnJvclN1bW1hcnlDb21wb25lbnQsXG4gICAgRXJyb3JTdW1tYXJ5SXRlbUNvbXBvbmVudCxcbiAgICBGb290ZXJDb21wb25lbnQsXG4gICAgRm9vdGVyTWV0YUNvbXBvbmVudCxcbiAgICBGb290ZXJNZXRhSXRlbUNvbXBvbmVudCxcbiAgICBGb290ZXJOYXZpZ2F0aW9uQ29tcG9uZW50LFxuICAgIEZvb3Rlck5hdmlnYXRpb25JdGVtQ29tcG9uZW50LFxuICAgIEhlYWRlckNvbXBvbmVudCxcbiAgICBIZWFkZXJTdWJuYXZDb21wb25lbnQsXG4gICAgSGVhZGVyTmF2aWdhdGlvbkNvbXBvbmVudCxcbiAgICBIZWFkZXJOYXZpZ2F0aW9uSXRlbUNvbXBvbmVudCxcbiAgICBIZWFkZXJEcm9wZG93bkNvbXBvbmVudCxcbiAgICBIZWFkZXJPZmZjYW52YXNCdXR0b25Db21wb25lbnQsXG4gICAgSGVhZGVyT2ZmY2FudmFzQ29tcG9uZW50LFxuICAgIEhlYWRlck9mZmNhbnZhc0Nsb3NlQnV0dG9uQ29tcG9uZW50LFxuICAgIEhlYWRlck1vYmlsZVRleHRDb21wb25lbnQsXG4gICAgSGVhZGVyTWluaUNvbXBvbmVudCxcbiAgICBIZWFkZXJBZHZhbmNlZENvbXBvbmVudCxcbiAgICBIZWFkZXJBZHZhbmNlZFN1cGVyQ29tcG9uZW50LFxuICAgIEhlYWRlckFkdmFuY2VkTG9nb0NvbXBvbmVudCxcbiAgICBIZWFkZXJBZHZhbmNlZEN1c3RvbU5hdmlnYXRpb25Db21wb25lbnQsXG4gICAgSGVhZGVyQWR2YW5jZWRUaXRsZUNvbXBvbmVudCxcbiAgICBIZWFkZXJBZHZhbmNlZFN1YnRpdGxlQ29tcG9uZW50LFxuICAgIEhlYWRlckFkdmFuY2VkVGl0bGVDb250YWluZXJDb21wb25lbnQsXG4gICAgSGVhZGVyQWR2YW5jZWREcm9wZG93bkNvbXBvbmVudCxcbiAgICBIZWFkZXJBZHZhbmNlZFN1YkNvbXBvbmVudCxcbiAgICBMaW5rc0xpc3RDb21wb25lbnQsXG4gICAgTGlua3NMaXN0SXRlbUNvbXBvbmVudCxcbiAgICBMaW5rc0xpc3RJdGVtU3ViQ29tcG9uZW50LFxuICAgIE1lbnVIb3Jpem9udGFsQ29tcG9uZW50LFxuICAgIE1lbnVIb3Jpem9udGFsSXRlbUNvbXBvbmVudCxcbiAgICBNZW51VmVydGljYWxDb21wb25lbnQsXG4gICAgTWVudVZlcnRpY2FsSXRlbUNvbXBvbmVudCxcbiAgICBNZW51VmVydGljYWxJdGVtU3ViQ29tcG9uZW50LFxuICAgIE1lbnVWZXJ0aWNhbEl0ZW1TdWJJdGVtQ29tcG9uZW50LFxuICAgIE1lbnViYXJDb21wb25lbnQsXG4gICAgTWVudWJhckxhYmVsQ29tcG9uZW50LFxuICAgIE1lbnViYXJJdGVtQ29tcG9uZW50LFxuICAgIE1lbnViYXJTdWJpdGVtQ29tcG9uZW50LFxuICAgIE1lbnViYXJTdWJzdWJpdGVtQ29tcG9uZW50LFxuICAgIE5hdkNvbXBvbmVudCxcbiAgICBOb3RpZmljYXRpb25Db21wb25lbnQsXG4gICAgTm90aWZpY2F0aW9uSXRlbUNvbXBvbmVudCxcbiAgICBTa2lwTGlua0NvbXBvbmVudCxcbiAgICBOYXZJdGVtQ29tcG9uZW50LFxuICAgIE1lbnVOYXZpZ2F0aW9uQ29tcG9uZW50LFxuXG4gICAgTWVudWJhcml0ZW1EaXJlY3RpdmUsXG5cbiAgICBNZW51TmF2aWdhdGlvbkl0ZW1Db21wb25lbnQsXG4gICAgTWVudU5hdmlnYXRpb25TdWJpdGVtQ29tcG9uZW50LFxuICAgIEhlYWRlckN1c3RvbU5hdmlnYXRpb25Db21wb25lbnQsXG4gICAgTGlua3NMaXN0SXRlbUNvbXBvbmVudCxcbiAgICBMaW5rc0xpc3RJdGVtU3ViQ29tcG9uZW50LFxuICAgIFxuICAgIER5bmFtaWNIZWFkaW5nRGlyZWN0aXZlLFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFNoYXJlZE1vZHVsZSxcbiAgICBEZXN5Q29tbW9uc01vZHVsZSxcbiAgICBEZXN5QnV0dG9uc01vZHVsZVxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgQnJlYWRjcnVtYnNDb21wb25lbnQsXG4gICAgQnJlYWRjcnVtYnNJdGVtQ29tcG9uZW50LFxuICAgIEVycm9yU3VtbWFyeUNvbXBvbmVudCxcbiAgICBFcnJvclN1bW1hcnlJdGVtQ29tcG9uZW50LFxuICAgIEZvb3RlckNvbXBvbmVudCxcbiAgICBGb290ZXJNZXRhQ29tcG9uZW50LFxuICAgIEZvb3Rlck1ldGFJdGVtQ29tcG9uZW50LFxuICAgIEZvb3Rlck5hdmlnYXRpb25Db21wb25lbnQsXG4gICAgRm9vdGVyTmF2aWdhdGlvbkl0ZW1Db21wb25lbnQsXG4gICAgSGVhZGVyQ29tcG9uZW50LFxuICAgIEhlYWRlclN1Ym5hdkNvbXBvbmVudCxcbiAgICBIZWFkZXJOYXZpZ2F0aW9uQ29tcG9uZW50LFxuICAgIEhlYWRlck5hdmlnYXRpb25JdGVtQ29tcG9uZW50LFxuICAgIEhlYWRlckRyb3Bkb3duQ29tcG9uZW50LFxuICAgIEhlYWRlck9mZmNhbnZhc0NvbXBvbmVudCxcbiAgICBIZWFkZXJPZmZjYW52YXNCdXR0b25Db21wb25lbnQsXG4gICAgSGVhZGVyT2ZmY2FudmFzQ2xvc2VCdXR0b25Db21wb25lbnQsXG4gICAgSGVhZGVyTW9iaWxlVGV4dENvbXBvbmVudCxcbiAgICBMaW5rc0xpc3RDb21wb25lbnQsXG4gICAgTGlua3NMaXN0SXRlbUNvbXBvbmVudCxcbiAgICBMaW5rc0xpc3RJdGVtU3ViQ29tcG9uZW50LFxuICAgIE1lbnVIb3Jpem9udGFsQ29tcG9uZW50LFxuICAgIE1lbnVIb3Jpem9udGFsSXRlbUNvbXBvbmVudCxcbiAgICBNZW51VmVydGljYWxDb21wb25lbnQsXG4gICAgTWVudVZlcnRpY2FsSXRlbUNvbXBvbmVudCxcbiAgICBNZW51VmVydGljYWxJdGVtU3ViQ29tcG9uZW50LFxuICAgIE1lbnVWZXJ0aWNhbEl0ZW1TdWJJdGVtQ29tcG9uZW50LFxuICAgIE1lbnViYXJDb21wb25lbnQsXG4gICAgTWVudWJhckxhYmVsQ29tcG9uZW50LFxuICAgIE1lbnViYXJJdGVtQ29tcG9uZW50LFxuICAgIE1lbnViYXJTdWJpdGVtQ29tcG9uZW50LFxuICAgIE1lbnViYXJTdWJzdWJpdGVtQ29tcG9uZW50LFxuICAgIE5hdkNvbXBvbmVudCxcbiAgICBOb3RpZmljYXRpb25Db21wb25lbnQsXG4gICAgTm90aWZpY2F0aW9uSXRlbUNvbXBvbmVudCxcbiAgICBOYXZJdGVtQ29tcG9uZW50LFxuICAgIFNraXBMaW5rQ29tcG9uZW50LFxuICAgIE1lbnVOYXZpZ2F0aW9uQ29tcG9uZW50LFxuICAgIE1lbnVOYXZpZ2F0aW9uU3ViaXRlbUNvbXBvbmVudCxcbiAgICBNZW51TmF2aWdhdGlvbkl0ZW1Db21wb25lbnQsXG4gICAgTWVudU5hdmlnYXRpb25TdWJpdGVtQ29tcG9uZW50LFxuICAgIEhlYWRlckN1c3RvbU5hdmlnYXRpb25Db21wb25lbnQsXG4gICAgSGVhZGVyTWluaUNvbXBvbmVudCxcbiAgICBIZWFkZXJBZHZhbmNlZENvbXBvbmVudCxcbiAgICBIZWFkZXJBZHZhbmNlZFN1cGVyQ29tcG9uZW50LFxuICAgIEhlYWRlckFkdmFuY2VkTG9nb0NvbXBvbmVudCxcbiAgICBIZWFkZXJBZHZhbmNlZEN1c3RvbU5hdmlnYXRpb25Db21wb25lbnQsXG4gICAgSGVhZGVyQWR2YW5jZWRUaXRsZUNvbXBvbmVudCxcbiAgICBIZWFkZXJBZHZhbmNlZFN1YnRpdGxlQ29tcG9uZW50LFxuICAgIEhlYWRlckFkdmFuY2VkVGl0bGVDb250YWluZXJDb21wb25lbnQsXG4gICAgSGVhZGVyQWR2YW5jZWREcm9wZG93bkNvbXBvbmVudCxcbiAgICBIZWFkZXJBZHZhbmNlZFN1YkNvbXBvbmVudCxcbiAgICBcbiAgICBEeW5hbWljSGVhZGluZ0RpcmVjdGl2ZSxcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBEZXN5TmF2TW9kdWxlIHsgfVxuIl19
301
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzeS1uYXYubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS1uYXYvZGVzeS1uYXYubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV2RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxzRUFBc0UsQ0FBQztBQUNoSCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUN0RixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw0RUFBNEUsQ0FBQztBQUN2SCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMzRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2RUFBNkUsQ0FBQztBQUN0SCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUM1RixPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwrRkFBK0YsQ0FBQztBQUM5SSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtRUFBbUUsQ0FBQztBQUM5RyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDdkUsT0FBTyxFQUFFLHVDQUF1QyxFQUFFLE1BQU0sbUdBQW1HLENBQUM7QUFDNUosT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sMEZBQTBGLENBQUM7QUFDM0ksT0FBTyxFQUFFLDJCQUEyQixF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LDZCQUE2Qjt3QkFDN0IsdUJBQXVCO3dCQUN2Qix3QkFBd0I7d0JBQ3hCLDhCQUE4Qjt3QkFDOUIsbUNBQW1DO3dCQUNuQyx5QkFBeUI7d0JBQ3pCLGtCQUFrQjt3QkFDbEIsc0JBQXNCO3dCQUN0QiwyQkFBMkI7d0JBQzNCLHlCQUF5Qjt3QkFDekIsdUJBQXVCO3dCQUN2QiwyQkFBMkI7d0JBQzNCLHFCQUFxQjt3QkFDckIseUJBQXlCO3dCQUN6Qiw0QkFBNEI7d0JBQzVCLGdDQUFnQzt3QkFDaEMsZ0JBQWdCO3dCQUNoQixxQkFBcUI7d0JBQ3JCLG9CQUFvQjt3QkFDcEIsdUJBQXVCO3dCQUN2QiwwQkFBMEI7d0JBQzFCLFlBQVk7d0JBQ1oscUJBQXFCO3dCQUNyQix5QkFBeUI7d0JBQ3pCLGdCQUFnQjt3QkFDaEIsaUJBQWlCO3dCQUNqQix1QkFBdUI7d0JBQ3ZCLDhCQUE4Qjt3QkFDOUIsMkJBQTJCO3dCQUMzQiw4QkFBOEI7d0JBQzlCLCtCQUErQjt3QkFDL0IsbUJBQW1CO3dCQUNuQix1QkFBdUI7d0JBQ3ZCLDRCQUE0Qjt3QkFDNUIsMkJBQTJCO3dCQUMzQix1Q0FBdUM7d0JBQ3ZDLDRCQUE0Qjt3QkFDNUIsK0JBQStCO3dCQUMvQixxQ0FBcUM7d0JBQ3JDLCtCQUErQjt3QkFDL0IsMEJBQTBCO3dCQUUxQix1QkFBdUI7cUJBQ3hCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEZXN5Q29tbW9uc01vZHVsZSB9IGZyb20gJy4uL2Rlc3ktY29tbW9ucy9kZXN5LWNvbW1vbnMubW9kdWxlJztcbmltcG9ydCB7IFNoYXJlZE1vZHVsZSB9IGZyb20gJy4uL3NoYXJlZC9zaGFyZWQubW9kdWxlJztcblxuaW1wb3J0IHsgRGVzeUJ1dHRvbnNNb2R1bGUgfSBmcm9tICcuLi9kZXN5LWJ1dHRvbnMvZGVzeS1idXR0b25zLm1vZHVsZSc7XG5pbXBvcnQgeyBCcmVhZGNydW1ic0l0ZW1Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYnJlYWRjcnVtYnMvYnJlYWRjcnVtYnMtaXRlbS9icmVhZGNydW1icy1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCcmVhZGNydW1ic0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9icmVhZGNydW1icy9icmVhZGNydW1icy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRXJyb3JTdW1tYXJ5SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9lcnJvci1zdW1tYXJ5L2Vycm9yLXN1bW1hcnktaXRlbS9lcnJvci1zdW1tYXJ5LWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IEVycm9yU3VtbWFyeUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9lcnJvci1zdW1tYXJ5L2Vycm9yLXN1bW1hcnkuY29tcG9uZW50JztcbmltcG9ydCB7IEZvb3Rlck1ldGFJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Zvb3Rlci9mb290ZXItbWV0YS9mb290ZXItbWV0YS1pdGVtL2Zvb3Rlci1tZXRhLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IEZvb3Rlck1ldGFDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZm9vdGVyL2Zvb3Rlci1tZXRhL2Zvb3Rlci1tZXRhLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb290ZXJOYXZpZ2F0aW9uSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9mb290ZXIvZm9vdGVyLW5hdmlnYXRpb24vZm9vdGVyLW5hdmlnYXRpb24taXRlbS9mb290ZXItbmF2aWdhdGlvbi1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb290ZXJOYXZpZ2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Zvb3Rlci9mb290ZXItbmF2aWdhdGlvbi9mb290ZXItbmF2aWdhdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9vdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Zvb3Rlci9mb290ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEhlYWRlckFkdmFuY2VkQ3VzdG9tTmF2aWdhdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oZWFkZXItYWR2YW5jZWQvaGVhZGVyLWFkdmFuY2VkLWN1c3RvbS1uYXZpZ2F0aW9uL2hlYWRlci1jdXN0b20tbmF2aWdhdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGVhZGVyQWR2YW5jZWREcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oZWFkZXItYWR2YW5jZWQvaGVhZGVyLWFkdmFuY2VkLWRyb3Bkb3duL2hlYWRlci1hZHZhbmNlZC1kcm9wZG93bi5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGVhZGVyQWR2YW5jZWRMb2dvQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2hlYWRlci1hZHZhbmNlZC9oZWFkZXItYWR2YW5jZWQtbG9nby9oZWFkZXItYWR2YW5jZWQtbG9nby5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGVhZGVyQWR2YW5jZWRTdWJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvaGVhZGVyLWFkdmFuY2VkL2hlYWRlci1hZHZhbmNlZC1zdWIvaGVhZGVyLWFkdmFuY2VkLXN1Yi5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGVhZGVyQWR2YW5jZWRTdWJ0aXRsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oZWFkZXItYWR2YW5jZWQvaGVhZGVyLWFkdmFuY2VkLXN1YnRpdGxlL2hlYWRlci1hZHZhbmNlZC1zdWJ0aXRsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGVhZGVyQWR2YW5jZWRTdXBlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oZWFkZXItYWR2YW5jZWQvaGVhZGVyLWFkdmFuY2VkLXN1cGVyL2hlYWRlci1hZHZhbmNlZC1zdXBlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGVhZGVyQWR2YW5jZWRUaXRsZUNvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oZWFkZXItYWR2YW5jZWQvaGVhZGVyLWFkdmFuY2VkLXRpdGxlLWNvbnRhaW5lci9oZWFkZXItYWR2YW5jZWQtdGl0bGUtY29udGFpbmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJBZHZhbmNlZFRpdGxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2hlYWRlci1hZHZhbmNlZC9oZWFkZXItYWR2YW5jZWQtdGl0bGUvaGVhZGVyLWFkdmFuY2VkLXRpdGxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJBZHZhbmNlZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oZWFkZXItYWR2YW5jZWQvaGVhZGVyLWFkdmFuY2VkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJNaW5pQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2hlYWRlci1taW5pL2hlYWRlci1taW5pLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJDdXN0b21OYXZpZ2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2hlYWRlci9oZWFkZXItY3VzdG9tLW5hdmlnYXRpb24vaGVhZGVyLWN1c3RvbS1uYXZpZ2F0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oZWFkZXIvaGVhZGVyLWRyb3Bkb3duL2hlYWRlci1kcm9wZG93bi5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGVhZGVyTW9iaWxlVGV4dENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oZWFkZXIvaGVhZGVyLW1vYmlsZVRleHQvaGVhZGVyLW1vYmlsZS10ZXh0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJOYXZpZ2F0aW9uSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oZWFkZXIvaGVhZGVyLW5hdmlnYXRpb24vaGVhZGVyLW5hdmlnYXRpb24taXRlbS9oZWFkZXItbmF2aWdhdGlvbi1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJOYXZpZ2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2hlYWRlci9oZWFkZXItbmF2aWdhdGlvbi9oZWFkZXItbmF2aWdhdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGVhZGVyT2ZmY2FudmFzQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2hlYWRlci9oZWFkZXItb2ZmY2FudmFzL2hlYWRlci1vZmZjYW52YXMtYnV0dG9uL2hlYWRlci1vZmZjYW52YXMtYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJPZmZjYW52YXNDbG9zZUJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oZWFkZXIvaGVhZGVyLW9mZmNhbnZhcy9oZWFkZXItb2ZmY2FudmFzLWNsb3NlLWJ1dHRvbi9oZWFkZXItb2ZmY2FudmFzLWNsb3NlLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGVhZGVyT2ZmY2FudmFzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2hlYWRlci9oZWFkZXItb2ZmY2FudmFzL2hlYWRlci1vZmZjYW52YXMuY29tcG9uZW50JztcbmltcG9ydCB7IEhlYWRlclN1Ym5hdkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9oZWFkZXIvaGVhZGVyLXN1Ym5hdi9oZWFkZXItc3VibmF2LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvaGVhZGVyL2hlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGlua3NMaXN0SWNvblJpZ2h0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xpbmtzLWxpc3QvbGlua3MtbGlzdC1pY29uLXJpZ2h0L2xpbmtzLWxpc3QtaWNvbi1yaWdodC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGlua3NMaXN0SXRlbVN1YkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9saW5rcy1saXN0L2xpbmtzLWxpc3QtaXRlbS1zdWIvbGlua3MtbGlzdC1pdGVtLXN1Yi5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGlua3NMaXN0SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9saW5rcy1saXN0L2xpbmtzLWxpc3QtaXRlbS9saW5rcy1saXN0LWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IExpbmtzTGlzdENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9saW5rcy1saXN0L2xpbmtzLWxpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IE1lbnVIb3Jpem9udGFsSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tZW51LWhvcml6b250YWwvbWVudS1ob3Jpem9udGFsLWl0ZW0vbWVudS1ob3Jpem9udGFsLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IE1lbnVIb3Jpem9udGFsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21lbnUtaG9yaXpvbnRhbC9tZW51LWhvcml6b250YWwuY29tcG9uZW50JztcbmltcG9ydCB7IE1lbnVOYXZpZ2F0aW9uSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tZW51LW5hdmlnYXRpb24vY29tcG9uZW50cy9tZW51LW5hdmlnYXRpb24taXRlbS9tZW51LW5hdmlnYXRpb24taXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWVudU5hdmlnYXRpb25TdWJpdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21lbnUtbmF2aWdhdGlvbi9jb21wb25lbnRzL21lbnUtbmF2aWdhdGlvbi1zdWJpdGVtL21lbnUtbmF2aWdhdGlvbi1zdWJpdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNZW51TmF2aWdhdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tZW51LW5hdmlnYXRpb24vbWVudS1uYXZpZ2F0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNZW51VmVydGljYWxJdGVtU3ViSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tZW51LXZlcnRpY2FsL21lbnUtdmVydGljYWwtaXRlbS1zdWItaXRlbS9tZW51LXZlcnRpY2FsLWl0ZW0tc3ViLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IE1lbnVWZXJ0aWNhbEl0ZW1TdWJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbWVudS12ZXJ0aWNhbC9tZW51LXZlcnRpY2FsLWl0ZW0tc3ViL21lbnUtdmVydGljYWwtaXRlbS1zdWIuY29tcG9uZW50JztcbmltcG9ydCB7IE1lbnVWZXJ0aWNhbEl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbWVudS12ZXJ0aWNhbC9tZW51LXZlcnRpY2FsLWl0ZW0vbWVudS12ZXJ0aWNhbC1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNZW51VmVydGljYWxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbWVudS12ZXJ0aWNhbC9tZW51LXZlcnRpY2FsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNZW51YmFySXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tZW51YmFyL2NvbXBvbmVudHMvbWVudWJhci1pdGVtL21lbnViYXItaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWVudWJhckxhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21lbnViYXIvY29tcG9uZW50cy9tZW51YmFyLWxhYmVsL21lbnViYXItbGFiZWwuY29tcG9uZW50JztcbmltcG9ydCB7IE1lbnViYXJTdWJpdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21lbnViYXIvY29tcG9uZW50cy9tZW51YmFyLXN1Yml0ZW0vbWVudWJhci1zdWJpdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNZW51YmFyU3Vic3ViaXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tZW51YmFyL2NvbXBvbmVudHMvbWVudWJhci1zdWJzdWJpdGVtL21lbnViYXItc3Vic3ViaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWVudWJhcml0ZW1EaXJlY3RpdmUgfSBmcm9tICcuL2NvbXBvbmVudHMvbWVudWJhci9kaXJlY3RpdmVzL21lbnViYXJpdGVtLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBNZW51YmFyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21lbnViYXIvbWVudWJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmF2SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9uYXYvbmF2LWl0ZW0vbmF2LWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IE5hdkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9uYXYvbmF2LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25JdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24taXRlbS9ub3RpZmljYXRpb24taXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTm90aWZpY2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IFNraXBMaW5rQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NraXAtbGluay9za2lwLWxpbmsuY29tcG9uZW50JztcbmltcG9ydCB7IER5bmFtaWNIZWFkaW5nRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2R5bmFtaWMtaGVhZGluZy5kaXJlY3RpdmUnO1xuXG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEJyZWFkY3J1bWJzQ29tcG9uZW50LFxuICAgIEJyZWFkY3J1bWJzSXRlbUNvbXBvbmVudCxcbiAgICBFcnJvclN1bW1hcnlDb21wb25lbnQsXG4gICAgRXJyb3JTdW1tYXJ5SXRlbUNvbXBvbmVudCxcbiAgICBGb290ZXJDb21wb25lbnQsXG4gICAgRm9vdGVyTWV0YUNvbXBvbmVudCxcbiAgICBGb290ZXJNZXRhSXRlbUNvbXBvbmVudCxcbiAgICBGb290ZXJOYXZpZ2F0aW9uQ29tcG9uZW50LFxuICAgIEZvb3Rlck5hdmlnYXRpb25JdGVtQ29tcG9uZW50LFxuICAgIEhlYWRlckNvbXBvbmVudCxcbiAgICBIZWFkZXJTdWJuYXZDb21wb25lbnQsXG4gICAgSGVhZGVyTmF2aWdhdGlvbkNvbXBvbmVudCxcbiAgICBIZWFkZXJOYXZpZ2F0aW9uSXRlbUNvbXBvbmVudCxcbiAgICBIZWFkZXJEcm9wZG93bkNvbXBvbmVudCxcbiAgICBIZWFkZXJPZmZjYW52YXNCdXR0b25Db21wb25lbnQsXG4gICAgSGVhZGVyT2ZmY2FudmFzQ29tcG9uZW50LFxuICAgIEhlYWRlck9mZmNhbnZhc0Nsb3NlQnV0dG9uQ29tcG9uZW50LFxuICAgIEhlYWRlck1vYmlsZVRleHRDb21wb25lbnQsXG4gICAgSGVhZGVyTWluaUNvbXBvbmVudCxcbiAgICBIZWFkZXJBZHZhbmNlZENvbXBvbmVudCxcbiAgICBIZWFkZXJBZHZhbmNlZFN1cGVyQ29tcG9uZW50LFxuICAgIEhlYWRlckFkdmFuY2VkTG9nb0NvbXBvbmVudCxcbiAgICBIZWFkZXJBZHZhbmNlZEN1c3RvbU5hdmlnYXRpb25Db21wb25lbnQsXG4gICAgSGVhZGVyQWR2YW5jZWRUaXRsZUNvbXBvbmVudCxcbiAgICBIZWFkZXJBZHZhbmNlZFN1YnRpdGxlQ29tcG9uZW50LFxuICAgIEhlYWRlckFkdmFuY2VkVGl0bGVDb250YWluZXJDb21wb25lbnQsXG4gICAgSGVhZGVyQWR2YW5jZWREcm9wZG93bkNvbXBvbmVudCxcbiAgICBIZWFkZXJBZHZhbmNlZFN1YkNvbXBvbmVudCxcbiAgICBMaW5rc0xpc3RDb21wb25lbnQsXG4gICAgTGlua3NMaXN0SXRlbUNvbXBvbmVudCxcbiAgICBMaW5rc0xpc3RJY29uUmlnaHRDb21wb25lbnQsXG4gICAgTGlua3NMaXN0SXRlbVN1YkNvbXBvbmVudCxcbiAgICBNZW51SG9yaXpvbnRhbENvbXBvbmVudCxcbiAgICBNZW51SG9yaXpvbnRhbEl0ZW1Db21wb25lbnQsXG4gICAgTWVudVZlcnRpY2FsQ29tcG9uZW50LFxuICAgIE1lbnVWZXJ0aWNhbEl0ZW1Db21wb25lbnQsXG4gICAgTWVudVZlcnRpY2FsSXRlbVN1YkNvbXBvbmVudCxcbiAgICBNZW51VmVydGljYWxJdGVtU3ViSXRlbUNvbXBvbmVudCxcbiAgICBNZW51YmFyQ29tcG9uZW50LFxuICAgIE1lbnViYXJMYWJlbENvbXBvbmVudCxcbiAgICBNZW51YmFySXRlbUNvbXBvbmVudCxcbiAgICBNZW51YmFyU3ViaXRlbUNvbXBvbmVudCxcbiAgICBNZW51YmFyU3Vic3ViaXRlbUNvbXBvbmVudCxcbiAgICBOYXZDb21wb25lbnQsXG4gICAgTm90aWZpY2F0aW9uQ29tcG9uZW50LFxuICAgIE5vdGlmaWNhdGlvbkl0ZW1Db21wb25lbnQsXG4gICAgU2tpcExpbmtDb21wb25lbnQsXG4gICAgTmF2SXRlbUNvbXBvbmVudCxcbiAgICBNZW51TmF2aWdhdGlvbkNvbXBvbmVudCxcblxuICAgIE1lbnViYXJpdGVtRGlyZWN0aXZlLFxuXG4gICAgTWVudU5hdmlnYXRpb25JdGVtQ29tcG9uZW50LFxuICAgIE1lbnVOYXZpZ2F0aW9uU3ViaXRlbUNvbXBvbmVudCxcbiAgICBIZWFkZXJDdXN0b21OYXZpZ2F0aW9uQ29tcG9uZW50LFxuICAgIFxuICAgIER5bmFtaWNIZWFkaW5nRGlyZWN0aXZlLFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFNoYXJlZE1vZHVsZSxcbiAgICBEZXN5Q29tbW9uc01vZHVsZSxcbiAgICBEZXN5QnV0dG9uc01vZHVsZVxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgQnJlYWRjcnVtYnNDb21wb25lbnQsXG4gICAgQnJlYWRjcnVtYnNJdGVtQ29tcG9uZW50LFxuICAgIEVycm9yU3VtbWFyeUNvbXBvbmVudCxcbiAgICBFcnJvclN1bW1hcnlJdGVtQ29tcG9uZW50LFxuICAgIEZvb3RlckNvbXBvbmVudCxcbiAgICBGb290ZXJNZXRhQ29tcG9uZW50LFxuICAgIEZvb3Rlck1ldGFJdGVtQ29tcG9uZW50LFxuICAgIEZvb3Rlck5hdmlnYXRpb25Db21wb25lbnQsXG4gICAgRm9vdGVyTmF2aWdhdGlvbkl0ZW1Db21wb25lbnQsXG4gICAgSGVhZGVyQ29tcG9uZW50LFxuICAgIEhlYWRlclN1Ym5hdkNvbXBvbmVudCxcbiAgICBIZWFkZXJOYXZpZ2F0aW9uQ29tcG9uZW50LFxuICAgIEhlYWRlck5hdmlnYXRpb25JdGVtQ29tcG9uZW50LFxuICAgIEhlYWRlckRyb3Bkb3duQ29tcG9uZW50LFxuICAgIEhlYWRlck9mZmNhbnZhc0NvbXBvbmVudCxcbiAgICBIZWFkZXJPZmZjYW52YXNCdXR0b25Db21wb25lbnQsXG4gICAgSGVhZGVyT2ZmY2FudmFzQ2xvc2VCdXR0b25Db21wb25lbnQsXG4gICAgSGVhZGVyTW9iaWxlVGV4dENvbXBvbmVudCxcbiAgICBMaW5rc0xpc3RDb21wb25lbnQsXG4gICAgTGlua3NMaXN0SXRlbUNvbXBvbmVudCxcbiAgICBMaW5rc0xpc3RJY29uUmlnaHRDb21wb25lbnQsXG4gICAgTGlua3NMaXN0SXRlbVN1YkNvbXBvbmVudCxcbiAgICBNZW51SG9yaXpvbnRhbENvbXBvbmVudCxcbiAgICBNZW51SG9yaXpvbnRhbEl0ZW1Db21wb25lbnQsXG4gICAgTWVudVZlcnRpY2FsQ29tcG9uZW50LFxuICAgIE1lbnVWZXJ0aWNhbEl0ZW1Db21wb25lbnQsXG4gICAgTWVudVZlcnRpY2FsSXRlbVN1YkNvbXBvbmVudCxcbiAgICBNZW51VmVydGljYWxJdGVtU3ViSXRlbUNvbXBvbmVudCxcbiAgICBNZW51YmFyQ29tcG9uZW50LFxuICAgIE1lbnViYXJMYWJlbENvbXBvbmVudCxcbiAgICBNZW51YmFySXRlbUNvbXBvbmVudCxcbiAgICBNZW51YmFyU3ViaXRlbUNvbXBvbmVudCxcbiAgICBNZW51YmFyU3Vic3ViaXRlbUNvbXBvbmVudCxcbiAgICBOYXZDb21wb25lbnQsXG4gICAgTm90aWZpY2F0aW9uQ29tcG9uZW50LFxuICAgIE5vdGlmaWNhdGlvbkl0ZW1Db21wb25lbnQsXG4gICAgTmF2SXRlbUNvbXBvbmVudCxcbiAgICBTa2lwTGlua0NvbXBvbmVudCxcbiAgICBNZW51TmF2aWdhdGlvbkNvbXBvbmVudCxcbiAgICBNZW51TmF2aWdhdGlvblN1Yml0ZW1Db21wb25lbnQsXG4gICAgTWVudU5hdmlnYXRpb25JdGVtQ29tcG9uZW50LFxuICAgIE1lbnVOYXZpZ2F0aW9uU3ViaXRlbUNvbXBvbmVudCxcbiAgICBIZWFkZXJDdXN0b21OYXZpZ2F0aW9uQ29tcG9uZW50LFxuICAgIEhlYWRlck1pbmlDb21wb25lbnQsXG4gICAgSGVhZGVyQWR2YW5jZWRDb21wb25lbnQsXG4gICAgSGVhZGVyQWR2YW5jZWRTdXBlckNvbXBvbmVudCxcbiAgICBIZWFkZXJBZHZhbmNlZExvZ29Db21wb25lbnQsXG4gICAgSGVhZGVyQWR2YW5jZWRDdXN0b21OYXZpZ2F0aW9uQ29tcG9uZW50LFxuICAgIEhlYWRlckFkdmFuY2VkVGl0bGVDb21wb25lbnQsXG4gICAgSGVhZGVyQWR2YW5jZWRTdWJ0aXRsZUNvbXBvbmVudCxcbiAgICBIZWFkZXJBZHZhbmNlZFRpdGxlQ29udGFpbmVyQ29tcG9uZW50LFxuICAgIEhlYWRlckFkdmFuY2VkRHJvcGRvd25Db21wb25lbnQsXG4gICAgSGVhZGVyQWR2YW5jZWRTdWJDb21wb25lbnQsXG4gICAgXG4gICAgRHluYW1pY0hlYWRpbmdEaXJlY3RpdmUsXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRGVzeU5hdk1vZHVsZSB7IH1cbiJdfQ==
@@ -2,8 +2,9 @@ export var Type;
2
2
  (function (Type) {
3
3
  Type["UE"] = "UE";
4
4
  Type["FEDER"] = "FEDER";
5
+ Type["FEADER"] = "FEADER";
5
6
  Type["FSE"] = "FSE+";
6
7
  Type["Plurifondo"] = "Plurifondo";
7
8
  Type["Custom"] = "Custom";
8
9
  })(Type || (Type = {}));
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLWxvZ28uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LW5hdi9pbnRlcmZhY2VzL2Zvb3Rlci1sb2dvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLElBTVg7QUFORCxXQUFZLElBQUk7SUFDZCxpQkFBUyxDQUFBO0lBQ1QsdUJBQWUsQ0FBQTtJQUNmLG9CQUFZLENBQUE7SUFDWixpQ0FBeUIsQ0FBQTtJQUN6Qix5QkFBaUIsQ0FBQTtBQUNuQixDQUFDLEVBTlcsSUFBSSxLQUFKLElBQUksUUFNZiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIFR5cGUge1xuICBVRSA9ICdVRScsXG4gIEZFREVSID0gJ0ZFREVSJyxcbiAgRlNFID0gJ0ZTRSsnLFxuICBQbHVyaWZvbmRvID0gJ1BsdXJpZm9uZG8nLFxuICBDdXN0b20gPSAnQ3VzdG9tJ1xufVxuIl19
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLWxvZ28uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LW5hdi9pbnRlcmZhY2VzL2Zvb3Rlci1sb2dvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLElBT1g7QUFQRCxXQUFZLElBQUk7SUFDZCxpQkFBUyxDQUFBO0lBQ1QsdUJBQWUsQ0FBQTtJQUNmLHlCQUFpQixDQUFBO0lBQ2pCLG9CQUFZLENBQUE7SUFDWixpQ0FBeUIsQ0FBQTtJQUN6Qix5QkFBaUIsQ0FBQTtBQUNuQixDQUFDLEVBUFcsSUFBSSxLQUFKLElBQUksUUFPZiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIFR5cGUge1xuICBVRSA9ICdVRScsXG4gIEZFREVSID0gJ0ZFREVSJyxcbiAgRkVBREVSID0gJ0ZFQURFUicsXG4gIEZTRSA9ICdGU0UrJyxcbiAgUGx1cmlmb25kbyA9ICdQbHVyaWZvbmRvJyxcbiAgQ3VzdG9tID0gJ0N1c3RvbSdcbn1cbiJdfQ==
@@ -9,9 +9,10 @@ import * as i1 from "@angular/common";
9
9
  import * as i2 from "../../../shared/directives/custom-inner-content.directive";
10
10
  import * as i3 from "../../../shared/directives/accessibility-directive";
11
11
  import * as i4 from "../../../desy-buttons/components/button/button.component";
12
- import * as i5 from "../../../desy-buttons/components/listbox/listbox.component";
13
- import * as i6 from "../../../desy-buttons/components/listbox/listbox-label/listbox-label.component";
14
- import * as i7 from "../../../shared/pipes/make-html-list.pipe";
12
+ import * as i5 from "../../../desy-forms/components/label/label.component";
13
+ import * as i6 from "../../../desy-forms/components/select/select.component";
14
+ import * as i7 from "@angular/forms";
15
+ import * as i8 from "../../../shared/pipes/make-html-list.pipe";
15
16
  export class PaginationComponent extends AccessibilityComponent {
16
17
  constructor(changeDetector) {
17
18
  super();
@@ -85,12 +86,13 @@ export class PaginationComponent extends AccessibilityComponent {
85
86
  const itemList = [];
86
87
  for (let i = 0; i < this.nPages; i++) {
87
88
  const item = {
89
+ value: i + 1,
88
90
  text: i + 1,
89
- active: ((i + 1) === this.currentPage),
90
- routerLink: []
91
+ selected: ((i + 1) === this.currentPage)
91
92
  };
92
93
  itemList.push(item);
93
94
  }
95
+ this.value = this.currentPage;
94
96
  this.items = itemList;
95
97
  }
96
98
  }
@@ -108,7 +110,8 @@ export class PaginationComponent extends AccessibilityComponent {
108
110
  }
109
111
  for (let i = 0; i < this.items.length; i++) {
110
112
  const item = this.items[i];
111
- item.active = ((i + 1) === this.currentPage);
113
+ item.selected = ((i + 1) === this.currentPage);
114
+ this.value = this.currentPage;
112
115
  }
113
116
  }
114
117
  previous() {
@@ -131,16 +134,12 @@ export class PaginationComponent extends AccessibilityComponent {
131
134
  this.changePage(this.nPages);
132
135
  }
133
136
  }
134
- getActiveItemText() {
135
- const activeItems = this.items.filter(item => item.active);
136
- return activeItems && activeItems.length > 0 ? activeItems[0].text : '';
137
- }
138
137
  getListboxLabel() {
139
138
  return this.listboxLabel ? this.listboxLabel : null;
140
139
  }
141
140
  changeItemsPerPage(event) {
142
- if (event && event.value) {
143
- let newValue = event.value;
141
+ if (event) {
142
+ let newValue = event;
144
143
  this.itemsPerPage = newValue;
145
144
  this.checkChanges();
146
145
  this.itemsPerPageChange.emit(newValue);
@@ -149,7 +148,7 @@ export class PaginationComponent extends AccessibilityComponent {
149
148
  }
150
149
  handleActiveItemChange(event) {
151
150
  if (event !== null && event !== undefined) {
152
- this.changePage(+event.text);
151
+ this.changePage(event);
153
152
  }
154
153
  }
155
154
  setupItemsPerPage() {
@@ -157,17 +156,17 @@ export class PaginationComponent extends AccessibilityComponent {
157
156
  if (this.itemsPerPageList) {
158
157
  const currentItemsPerPageItem = this.itemsPerPageList.find(i => i.value === this.itemsPerPage);
159
158
  if (currentItemsPerPageItem) {
160
- currentItemsPerPageItem.active = true;
159
+ currentItemsPerPageItem.selected = true;
161
160
  }
162
- const hasActive = this.itemsPerPageList.find(i => i.active);
161
+ const hasActive = this.itemsPerPageList.find(i => i.selected);
163
162
  if (!hasActive && this.itemsPerPageList.length > 0) {
164
- this.itemsPerPageList[0].active = true;
163
+ this.itemsPerPageList[0].selected = true;
165
164
  }
166
165
  this.changeDetector.detectChanges();
167
166
  }
168
167
  }
169
168
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PaginationComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
170
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PaginationComponent, selector: "desy-pagination", inputs: { hasSelect: "hasSelect", idPrefix: "idPrefix", totalItems: "totalItems", hasPrevious: "hasPrevious", hasNext: "hasNext", hasFirst: "hasFirst", hasLast: "hasLast", showPrevious: "showPrevious", showNext: "showNext", showFirst: "showFirst", showLast: "showLast", previousText: "previousText", nextText: "nextText", firstText: "firstText", lastText: "lastText", hasSelectItemsPerPage: "hasSelectItemsPerPage", classes: "classes", classesContainer: "classesContainer", id: "id", currentPage: "currentPage", itemsPerPage: "itemsPerPage" }, outputs: { currentPageChange: "currentPageChange", itemsPerPageChange: "itemsPerPageChange" }, host: { properties: { "class": "this.classesContainer", "attr.id": "this.id" } }, queries: [{ propertyName: "listboxLabel", predicate: PaginationListboxLabelComponent }, { propertyName: "listboxItemsPerPage", predicate: PaginationItemPerPageComponent }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"hasSelect\">\n <p class=\"w-full mb-xs text-sm text-neutral-dark\">\n Selecciona una p\u00E1gina para cargar datos\n </p>\n <nav [class]=\"['flex flex-wrap items-center flex-1 mb-base lg:mb-0 text-sm', classes] | makeHtmlList\"\n [desyAppAccessibility]=\"this\">\n <desy-button *ngIf=\"showFirst\" (clickEvent)=\"first()\" [id]=\"getIdPrefix() + '-first'\"\n [html]=\"firstIcon + prefix + firstText + getSuffix(currentPage - 2)\" [disabled]=\"currentPage === 1 || !hasFirst\"\n classes=\"c-button--sm c-button--transparent mr-xs\" type=\"button\"></desy-button>\n <desy-button *ngIf=\"showPrevious\" (clickEvent)=\"previous()\" [id]=\"getIdPrefix() + '-previous'\"\n [html]=\"previousIcon + prefix + previousText + getSuffix(currentPage - 2)\" [disabled]=\"currentPage === 1 || !hasPrevious\"\n classes=\"c-button--sm c-button--transparent mr-xs\" type=\"button\"></desy-button>\n <div class=\"flex flex-wrap items-center pl-sm\"\n [ngClass]=\"{'w-full lg:w-auto': showFirst || showLast}\">\n <p *ngIf=\"showFirst || showLast\" class=\"lg:hidden mr-xs text-sm text-neutral-dark\">P\u00E1gina actual:</p>\n <desy-listbox *ngIf=\"items && items.length > 0\" [id]=\"id + '-listbox'\"\n [idPrefix]=\"idPrefix\"\n [text]=\"getActiveItemText()\"\n [classes]=\"'c-listbox--sm c-listbox--transparent mr-xs'\"\n [classesTooltip]=\"'max-h-52 overflow-y-auto'\"\n [doesChangeButtonText]=\"true\"\n [label]=\"{ text: 'Selecciona una p\u00E1gina para cargar datos', classes: 'sr-only' }\"\n [(items)]=\"items\"\n (activeItemChange)=\"handleActiveItemChange($event)\"></desy-listbox>\n </div>\n <desy-button *ngIf=\"showNext\" (clickEvent)=\"next()\" [id]=\"getIdPrefix() + '-next'\"\n [html]=\"prefix + nextText + getSuffix(currentPage) + nextIcon\" [disabled]=\"currentPage === nPages || !hasNext\"\n classes=\"c-button--sm c-button--transparent mr-xs\" type=\"button\"></desy-button>\n <desy-button *ngIf=\"showLast\" (clickEvent)=\"last()\" [id]=\"getIdPrefix() + '-last'\"\n [html]=\"prefix + lastText + getSuffix(currentPage) + lastIcon\" [disabled]=\"currentPage === nPages || !hasLast\"\n classes=\"c-button--sm c-button--transparent mr-xs\" type=\"button\"></desy-button>\n </nav>\n</ng-container>\n<ng-container *ngIf=\"!hasSelect\">\n <nav [class]=\"['flex flex-wrap items-center flex-1 mb-base lg:mb-0 text-sm', classes] | makeHtmlList\"\n [desyAppAccessibility]=\"this\">\n <ul class=\"flex flex-wrap\">\n <li *ngFor=\"let item of items; index as i\">\n <desy-button *ngIf=\"item.active\" [id]=\"getButtonId(i)\"\n [html]=\"'<strong>' + prefix + (i + 1) + getSuffix(i,true) + '</strong>'\"\n classes=\"c-button--primary c-button--disabled mb-sm mr-sm\"\n [disabled]=\"true\" ariaCurrent=\"page\" tabindex=\"-1\" type=\"button\"></desy-button>\n <desy-button *ngIf=\"!item.active\" [id]=\"getButtonId(i)\"\n [html]=\"prefix + (i + 1) + getSuffix(i,true)\"\n (clickEvent)=\"changePage(i + 1)\"\n classes=\"mb-sm mr-sm\" type=\"button\"></desy-button>\n </li>\n </ul>\n </nav>\n</ng-container>\n \n<div *ngIf=\"hasSelectItemsPerPage\" class=\"block relative -top-xs lg:ml-auto text-sm text-neutral-dark\">\n <desy-listbox [classes]=\"'c-listbox--sm c-listbox--transparent'\" \n [classesContainer]=\"'flex flex-wrap items-center gap-xs'\" \n [id]=\"'items-listbox-' + getIdPrefix()\"\n [doesChangeButtonText]=\"true\"\n [items]=\"itemsPerPageList\"\n (activeItemChange)=\"changeItemsPerPage($event)\">\n <desy-listbox-label [classes]=\"listboxLabel && listboxLabel.classes ? listboxLabel.classes : 'inline-block align-middle mb-0'\">\n <ng-container *ngIf=\"listboxLabel\">\n <ng-container *desyCustomInnerContent=\"{ component: listboxLabel }\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!listboxLabel\">\n Items por p\u00E1gina\n </ng-container>\n </desy-listbox-label>\n </desy-listbox>\n</div>\n\n\n<p role=\"status\" aria-live=\"polite\" class=\"block relative -top-xs lg:ml-auto text-sm text-neutral-dark\" *ngIf=\"totalItems && itemsPerPage\">\n <span class=\"sr-only\">Posici\u00F3n de paginaci\u00F3n: </span>{{(currentPage - 1) * itemsPerPage + 1}} - {{getLastItemNumber(currentPage - 1)}} de {{totalItems}}\n</p>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.CustomInnerContentDirective, selector: "[desyCustomInnerContent]", inputs: ["desyCustomInnerContent"] }, { kind: "directive", type: i3.AccessibilityDirective, selector: "[desyAppAccessibility]", inputs: ["desyAppAccessibility"] }, { kind: "component", type: i4.ButtonComponent, selector: "desy-button", inputs: ["id", "classes", "html", "text", "element", "name", "type", "value", "disabled", "href", "target", "preventDoubleClick", "fragment", "routerLink", "routerLinkActiveClasses"], outputs: ["clickEvent"] }, { kind: "component", type: i5.ListboxComponent, selector: "desy-listbox", inputs: ["id", "isMultiselectable", "doesChangeButtonText", "label", "classes", "classesContainer", "classesTooltip", "idPrefix", "disabled", "items"], outputs: ["itemsChange", "activeItemChange"] }, { kind: "component", type: i6.ListboxLabelComponent, selector: "desy-listbox-label", inputs: ["classes"] }, { kind: "pipe", type: i7.MakeHtmlListPipe, name: "makeHtmlList" }] }); }
169
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PaginationComponent, selector: "desy-pagination", inputs: { hasSelect: "hasSelect", idPrefix: "idPrefix", totalItems: "totalItems", hasPrevious: "hasPrevious", hasNext: "hasNext", hasFirst: "hasFirst", hasLast: "hasLast", showPrevious: "showPrevious", showNext: "showNext", showFirst: "showFirst", showLast: "showLast", previousText: "previousText", nextText: "nextText", firstText: "firstText", lastText: "lastText", hasSelectItemsPerPage: "hasSelectItemsPerPage", classes: "classes", classesContainer: "classesContainer", id: "id", currentPage: "currentPage", itemsPerPage: "itemsPerPage" }, outputs: { currentPageChange: "currentPageChange", itemsPerPageChange: "itemsPerPageChange" }, host: { properties: { "class": "this.classesContainer", "attr.id": "this.id" } }, queries: [{ propertyName: "listboxLabel", predicate: PaginationListboxLabelComponent }, { propertyName: "listboxItemsPerPage", predicate: PaginationItemPerPageComponent }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"hasSelect\">\n <p [attr.id]=\"id + '-label'\" class=\"w-full mb-xs text-sm text-neutral-dark\">\n Selecciona para cargar datos autom\u00E1ticamente\n </p>\n <nav [class]=\"['flex flex-wrap items-center flex-1 mb-base lg:mb-0 text-sm', classes] | makeHtmlList\"\n [desyAppAccessibility]=\"this\">\n <desy-button *ngIf=\"showFirst\" (clickEvent)=\"first()\" [id]=\"getIdPrefix() + '-first'\"\n [html]=\"firstIcon + prefix + firstText + getSuffix(currentPage - 2)\" [disabled]=\"currentPage === 1 || !hasFirst\"\n classes=\"c-button--sm c-button--transparent mr-xs\"></desy-button>\n <desy-button *ngIf=\"showPrevious\" (clickEvent)=\"previous()\" [id]=\"getIdPrefix() + '-previous'\"\n [html]=\"previousIcon + prefix + previousText + getSuffix(currentPage - 2)\" [disabled]=\"currentPage === 1 || !hasPrevious\"\n classes=\"c-button--sm c-button--transparent mr-xs\"></desy-button>\n <div class=\"flex flex-wrap items-center pl-sm\"\n [ngClass]=\"{'w-full lg:w-auto': showFirst || showLast}\">\n <p *ngIf=\"showFirst || showLast\" class=\"lg:hidden mr-xs text-sm text-neutral-dark\">P\u00E1gina actual:</p>\n <desy-select [classes]=\"'c-select--sm c-select--transparent'\" \n [formGroupClasses]=\"'-mt-sm mb-0 mr-xs'\" \n [id]=\"id + '-items-listbox-'\"\n [name]=\"id + 'items-listbox-'\"\n [describedBy]=\"id + '-label'\"\n [items]=\"items\"\n [ngModel]=\"value\"\n (ngModelChange)=\"handleActiveItemChange($event)\">\n <desy-label [classes]=\"'sr-only'\">\n Selecciona una p\u00E1gina\n </desy-label>\n </desy-select>\n </div>\n <desy-button *ngIf=\"showNext\" (clickEvent)=\"next()\" [id]=\"getIdPrefix() + '-next'\"\n [html]=\"prefix + nextText + getSuffix(currentPage) + nextIcon\" [disabled]=\"currentPage === nPages || !hasNext\"\n classes=\"c-button--sm c-button--transparent mr-xs\"></desy-button>\n <desy-button *ngIf=\"showLast\" (clickEvent)=\"last()\" [id]=\"getIdPrefix() + '-last'\"\n [html]=\"prefix + lastText + getSuffix(currentPage) + lastIcon\" [disabled]=\"currentPage === nPages || !hasLast\"\n classes=\"c-button--sm c-button--transparent mr-xs\"></desy-button>\n </nav>\n</ng-container>\n<ng-container *ngIf=\"!hasSelect\">\n <nav [class]=\"['flex flex-wrap items-center flex-1 mb-base lg:mb-0 text-sm', classes] | makeHtmlList\"\n [desyAppAccessibility]=\"this\">\n <ul class=\"flex flex-wrap\">\n <li *ngFor=\"let item of items; index as i\">\n <desy-button *ngIf=\"item.active\" [id]=\"getButtonId(i)\"\n [html]=\"'<strong>' + prefix + (i + 1) + getSuffix(i,true) + '</strong>'\"\n classes=\"c-button--primary c-button--disabled mb-sm mr-sm\"\n [disabled]=\"true\" ariaCurrent=\"page\" tabindex=\"-1\"></desy-button>\n <desy-button *ngIf=\"!item.active\" [id]=\"getButtonId(i)\"\n [html]=\"prefix + (i + 1) + getSuffix(i,true)\"\n (clickEvent)=\"changePage(i + 1)\"\n classes=\"mb-sm mr-sm\"></desy-button>\n </li>\n </ul>\n </nav>\n</ng-container>\n \n<div *ngIf=\"hasSelectItemsPerPage\" class=\"block relative -top-xs lg:ml-auto text-sm text-neutral-dark\">\n <desy-select [classes]=\"'c-select--sm c-select--transparent'\" \n [formGroupClasses]=\"'flex flex-wrap place-items-baseline gap-xs -mt-sm mb-0 mr-xs'\" \n [id]=\"'items-listbox-' + getIdPrefix()\"\n [name]=\"'items-listbox-' + getIdPrefix()\"\n [describedBy]=\"id + '-label'\"\n [items]=\"itemsPerPageList\"\n [ngModel]=\"valuePerPage\"\n (ngModelChange)=\"changeItemsPerPage($event)\">\n <desy-label [classes]=\"listboxLabel && listboxLabel.classes ? listboxLabel.classes : 'inline-block flex align-middle mb-[0]'\">\n <ng-container *ngIf=\"listboxLabel\">\n <ng-container *desyCustomInnerContent=\"{ component: listboxLabel }\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!listboxLabel\">\n Items por p\u00E1gina\n </ng-container>\n </desy-label>\n </desy-select>\n</div>\n\n\n<p [attr.id]=\"idPrefix + '-status'\" role=\"status\" aria-live=\"polite\" class=\"block relative -top-xs lg:ml-auto text-sm text-neutral-dark\" *ngIf=\"totalItems && itemsPerPage\">\n <span class=\"sr-only\">Posici\u00F3n de paginaci\u00F3n: </span>{{(currentPage - 1) * itemsPerPage + 1}} - {{getLastItemNumber(currentPage - 1)}} de {{totalItems}}\n</p>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.CustomInnerContentDirective, selector: "[desyCustomInnerContent]", inputs: ["desyCustomInnerContent"] }, { kind: "directive", type: i3.AccessibilityDirective, selector: "[desyAppAccessibility]", inputs: ["desyAppAccessibility"] }, { kind: "component", type: i4.ButtonComponent, selector: "desy-button", inputs: ["id", "classes", "html", "text", "element", "name", "type", "value", "disabled", "href", "target", "preventDoubleClick", "fragment", "routerLink", "routerLinkActiveClasses"], outputs: ["clickEvent"] }, { kind: "component", type: i5.LabelComponent, selector: "desy-label", inputs: ["id", "classes", "html", "text", "isPageHeading", "headingLevel", "for"] }, { kind: "component", type: i6.SelectComponent, selector: "desy-select", inputs: ["name", "items", "describedBy", "formGroupClasses", "classes"] }, { kind: "directive", type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: i8.MakeHtmlListPipe, name: "makeHtmlList" }] }); }
171
170
  }
172
171
  __decorate([
173
172
  DesyContentChild(),
@@ -175,7 +174,7 @@ __decorate([
175
174
  ], PaginationComponent.prototype, "listboxLabel", void 0);
176
175
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PaginationComponent, decorators: [{
177
176
  type: Component,
178
- args: [{ selector: 'desy-pagination', template: "<ng-container *ngIf=\"hasSelect\">\n <p class=\"w-full mb-xs text-sm text-neutral-dark\">\n Selecciona una p\u00E1gina para cargar datos\n </p>\n <nav [class]=\"['flex flex-wrap items-center flex-1 mb-base lg:mb-0 text-sm', classes] | makeHtmlList\"\n [desyAppAccessibility]=\"this\">\n <desy-button *ngIf=\"showFirst\" (clickEvent)=\"first()\" [id]=\"getIdPrefix() + '-first'\"\n [html]=\"firstIcon + prefix + firstText + getSuffix(currentPage - 2)\" [disabled]=\"currentPage === 1 || !hasFirst\"\n classes=\"c-button--sm c-button--transparent mr-xs\" type=\"button\"></desy-button>\n <desy-button *ngIf=\"showPrevious\" (clickEvent)=\"previous()\" [id]=\"getIdPrefix() + '-previous'\"\n [html]=\"previousIcon + prefix + previousText + getSuffix(currentPage - 2)\" [disabled]=\"currentPage === 1 || !hasPrevious\"\n classes=\"c-button--sm c-button--transparent mr-xs\" type=\"button\"></desy-button>\n <div class=\"flex flex-wrap items-center pl-sm\"\n [ngClass]=\"{'w-full lg:w-auto': showFirst || showLast}\">\n <p *ngIf=\"showFirst || showLast\" class=\"lg:hidden mr-xs text-sm text-neutral-dark\">P\u00E1gina actual:</p>\n <desy-listbox *ngIf=\"items && items.length > 0\" [id]=\"id + '-listbox'\"\n [idPrefix]=\"idPrefix\"\n [text]=\"getActiveItemText()\"\n [classes]=\"'c-listbox--sm c-listbox--transparent mr-xs'\"\n [classesTooltip]=\"'max-h-52 overflow-y-auto'\"\n [doesChangeButtonText]=\"true\"\n [label]=\"{ text: 'Selecciona una p\u00E1gina para cargar datos', classes: 'sr-only' }\"\n [(items)]=\"items\"\n (activeItemChange)=\"handleActiveItemChange($event)\"></desy-listbox>\n </div>\n <desy-button *ngIf=\"showNext\" (clickEvent)=\"next()\" [id]=\"getIdPrefix() + '-next'\"\n [html]=\"prefix + nextText + getSuffix(currentPage) + nextIcon\" [disabled]=\"currentPage === nPages || !hasNext\"\n classes=\"c-button--sm c-button--transparent mr-xs\" type=\"button\"></desy-button>\n <desy-button *ngIf=\"showLast\" (clickEvent)=\"last()\" [id]=\"getIdPrefix() + '-last'\"\n [html]=\"prefix + lastText + getSuffix(currentPage) + lastIcon\" [disabled]=\"currentPage === nPages || !hasLast\"\n classes=\"c-button--sm c-button--transparent mr-xs\" type=\"button\"></desy-button>\n </nav>\n</ng-container>\n<ng-container *ngIf=\"!hasSelect\">\n <nav [class]=\"['flex flex-wrap items-center flex-1 mb-base lg:mb-0 text-sm', classes] | makeHtmlList\"\n [desyAppAccessibility]=\"this\">\n <ul class=\"flex flex-wrap\">\n <li *ngFor=\"let item of items; index as i\">\n <desy-button *ngIf=\"item.active\" [id]=\"getButtonId(i)\"\n [html]=\"'<strong>' + prefix + (i + 1) + getSuffix(i,true) + '</strong>'\"\n classes=\"c-button--primary c-button--disabled mb-sm mr-sm\"\n [disabled]=\"true\" ariaCurrent=\"page\" tabindex=\"-1\" type=\"button\"></desy-button>\n <desy-button *ngIf=\"!item.active\" [id]=\"getButtonId(i)\"\n [html]=\"prefix + (i + 1) + getSuffix(i,true)\"\n (clickEvent)=\"changePage(i + 1)\"\n classes=\"mb-sm mr-sm\" type=\"button\"></desy-button>\n </li>\n </ul>\n </nav>\n</ng-container>\n \n<div *ngIf=\"hasSelectItemsPerPage\" class=\"block relative -top-xs lg:ml-auto text-sm text-neutral-dark\">\n <desy-listbox [classes]=\"'c-listbox--sm c-listbox--transparent'\" \n [classesContainer]=\"'flex flex-wrap items-center gap-xs'\" \n [id]=\"'items-listbox-' + getIdPrefix()\"\n [doesChangeButtonText]=\"true\"\n [items]=\"itemsPerPageList\"\n (activeItemChange)=\"changeItemsPerPage($event)\">\n <desy-listbox-label [classes]=\"listboxLabel && listboxLabel.classes ? listboxLabel.classes : 'inline-block align-middle mb-0'\">\n <ng-container *ngIf=\"listboxLabel\">\n <ng-container *desyCustomInnerContent=\"{ component: listboxLabel }\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!listboxLabel\">\n Items por p\u00E1gina\n </ng-container>\n </desy-listbox-label>\n </desy-listbox>\n</div>\n\n\n<p role=\"status\" aria-live=\"polite\" class=\"block relative -top-xs lg:ml-auto text-sm text-neutral-dark\" *ngIf=\"totalItems && itemsPerPage\">\n <span class=\"sr-only\">Posici\u00F3n de paginaci\u00F3n: </span>{{(currentPage - 1) * itemsPerPage + 1}} - {{getLastItemNumber(currentPage - 1)}} de {{totalItems}}\n</p>\n" }]
177
+ args: [{ selector: 'desy-pagination', template: "<ng-container *ngIf=\"hasSelect\">\n <p [attr.id]=\"id + '-label'\" class=\"w-full mb-xs text-sm text-neutral-dark\">\n Selecciona para cargar datos autom\u00E1ticamente\n </p>\n <nav [class]=\"['flex flex-wrap items-center flex-1 mb-base lg:mb-0 text-sm', classes] | makeHtmlList\"\n [desyAppAccessibility]=\"this\">\n <desy-button *ngIf=\"showFirst\" (clickEvent)=\"first()\" [id]=\"getIdPrefix() + '-first'\"\n [html]=\"firstIcon + prefix + firstText + getSuffix(currentPage - 2)\" [disabled]=\"currentPage === 1 || !hasFirst\"\n classes=\"c-button--sm c-button--transparent mr-xs\"></desy-button>\n <desy-button *ngIf=\"showPrevious\" (clickEvent)=\"previous()\" [id]=\"getIdPrefix() + '-previous'\"\n [html]=\"previousIcon + prefix + previousText + getSuffix(currentPage - 2)\" [disabled]=\"currentPage === 1 || !hasPrevious\"\n classes=\"c-button--sm c-button--transparent mr-xs\"></desy-button>\n <div class=\"flex flex-wrap items-center pl-sm\"\n [ngClass]=\"{'w-full lg:w-auto': showFirst || showLast}\">\n <p *ngIf=\"showFirst || showLast\" class=\"lg:hidden mr-xs text-sm text-neutral-dark\">P\u00E1gina actual:</p>\n <desy-select [classes]=\"'c-select--sm c-select--transparent'\" \n [formGroupClasses]=\"'-mt-sm mb-0 mr-xs'\" \n [id]=\"id + '-items-listbox-'\"\n [name]=\"id + 'items-listbox-'\"\n [describedBy]=\"id + '-label'\"\n [items]=\"items\"\n [ngModel]=\"value\"\n (ngModelChange)=\"handleActiveItemChange($event)\">\n <desy-label [classes]=\"'sr-only'\">\n Selecciona una p\u00E1gina\n </desy-label>\n </desy-select>\n </div>\n <desy-button *ngIf=\"showNext\" (clickEvent)=\"next()\" [id]=\"getIdPrefix() + '-next'\"\n [html]=\"prefix + nextText + getSuffix(currentPage) + nextIcon\" [disabled]=\"currentPage === nPages || !hasNext\"\n classes=\"c-button--sm c-button--transparent mr-xs\"></desy-button>\n <desy-button *ngIf=\"showLast\" (clickEvent)=\"last()\" [id]=\"getIdPrefix() + '-last'\"\n [html]=\"prefix + lastText + getSuffix(currentPage) + lastIcon\" [disabled]=\"currentPage === nPages || !hasLast\"\n classes=\"c-button--sm c-button--transparent mr-xs\"></desy-button>\n </nav>\n</ng-container>\n<ng-container *ngIf=\"!hasSelect\">\n <nav [class]=\"['flex flex-wrap items-center flex-1 mb-base lg:mb-0 text-sm', classes] | makeHtmlList\"\n [desyAppAccessibility]=\"this\">\n <ul class=\"flex flex-wrap\">\n <li *ngFor=\"let item of items; index as i\">\n <desy-button *ngIf=\"item.active\" [id]=\"getButtonId(i)\"\n [html]=\"'<strong>' + prefix + (i + 1) + getSuffix(i,true) + '</strong>'\"\n classes=\"c-button--primary c-button--disabled mb-sm mr-sm\"\n [disabled]=\"true\" ariaCurrent=\"page\" tabindex=\"-1\"></desy-button>\n <desy-button *ngIf=\"!item.active\" [id]=\"getButtonId(i)\"\n [html]=\"prefix + (i + 1) + getSuffix(i,true)\"\n (clickEvent)=\"changePage(i + 1)\"\n classes=\"mb-sm mr-sm\"></desy-button>\n </li>\n </ul>\n </nav>\n</ng-container>\n \n<div *ngIf=\"hasSelectItemsPerPage\" class=\"block relative -top-xs lg:ml-auto text-sm text-neutral-dark\">\n <desy-select [classes]=\"'c-select--sm c-select--transparent'\" \n [formGroupClasses]=\"'flex flex-wrap place-items-baseline gap-xs -mt-sm mb-0 mr-xs'\" \n [id]=\"'items-listbox-' + getIdPrefix()\"\n [name]=\"'items-listbox-' + getIdPrefix()\"\n [describedBy]=\"id + '-label'\"\n [items]=\"itemsPerPageList\"\n [ngModel]=\"valuePerPage\"\n (ngModelChange)=\"changeItemsPerPage($event)\">\n <desy-label [classes]=\"listboxLabel && listboxLabel.classes ? listboxLabel.classes : 'inline-block flex align-middle mb-[0]'\">\n <ng-container *ngIf=\"listboxLabel\">\n <ng-container *desyCustomInnerContent=\"{ component: listboxLabel }\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!listboxLabel\">\n Items por p\u00E1gina\n </ng-container>\n </desy-label>\n </desy-select>\n</div>\n\n\n<p [attr.id]=\"idPrefix + '-status'\" role=\"status\" aria-live=\"polite\" class=\"block relative -top-xs lg:ml-auto text-sm text-neutral-dark\" *ngIf=\"totalItems && itemsPerPage\">\n <span class=\"sr-only\">Posici\u00F3n de paginaci\u00F3n: </span>{{(currentPage - 1) * itemsPerPage + 1}} - {{getLastItemNumber(currentPage - 1)}} de {{totalItems}}\n</p>\n" }]
179
178
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { hasSelect: [{
180
179
  type: Input
181
180
  }], idPrefix: [{
@@ -235,4 +234,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
235
234
  }], itemsPerPageChange: [{
236
235
  type: Output
237
236
  }] } });
238
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LXBhZ2luYXRpb24vY29tcG9uZW50cy9wYWdpbmF0aW9uL3BhZ2luYXRpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS1wYWdpbmF0aW9uL2NvbXBvbmVudHMvcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQW9CLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUFFLFNBQVMsRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDL0ssT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFFM0YsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDOUcsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sZ0VBQWdFLENBQUM7Ozs7Ozs7OztBQU9qSCxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsc0JBQXNCO0lBZ0Q3RCxZQUFvQixjQUFpQztRQUNuRCxLQUFLLEVBQUUsQ0FBQztRQURVLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQTNDNUMsZ0JBQVcsR0FBWSxJQUFJLENBQUM7UUFDNUIsWUFBTyxHQUFZLElBQUksQ0FBQztRQUN4QixhQUFRLEdBQVksSUFBSSxDQUFDO1FBQ3pCLFlBQU8sR0FBWSxJQUFJLENBQUM7UUFDeEIsaUJBQVksR0FBWSxJQUFJLENBQUM7UUFDN0IsYUFBUSxHQUFZLElBQUksQ0FBQztRQUN6Qixj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QUFRO3NCQUFoQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLHFCQUFxQjtzQkFBN0IsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBRXlCLGdCQUFnQjtzQkFBOUMsS0FBSzs7c0JBQUksV0FBVzt1QkFBQyxPQUFPO2dCQUNJLEVBQUU7c0JBQWxDLEtBQUs7O3NCQUFJLFdBQVc7dUJBQUMsU0FBUztnQkFHbUIsWUFBWTtzQkFBN0QsZUFBZTt1QkFBQywrQkFBK0I7Z0JBRUMsbUJBQW1CO3NCQUFuRSxlQUFlO3VCQUFDLDhCQUE4QjtnQkFFdEMsV0FBVztzQkFBbkIsS0FBSztnQkFDSSxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBR0UsWUFBWTtzQkFBcEIsS0FBSztnQkFDSSxrQkFBa0I7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJcbmltcG9ydCB7IEFmdGVyQ29udGVudEluaXQsIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE9uQ2hhbmdlcywgT3V0cHV0LCBRdWVyeUxpc3QsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjY2Vzc2liaWxpdHlDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cyc7XG5pbXBvcnQgeyBEZXN5Q29udGVudENoaWxkIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2RlY29yYXRvcnMvZGVzeS1jb250ZW50LWNoaWxkLmRlY29yYXRvcic7XG5pbXBvcnQgeyBQYWdpbmF0aW9uSXRlbURhdGEgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IFBhZ2luYXRpb25JdGVtUGVyUGFnZUNvbXBvbmVudCB9IGZyb20gJy4uL3BhZ2luYXRpb24taXRlbS1wZXJwYWdlL3BhZ2luYXRpb24taXRlbS1wZXJwYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQYWdpbmF0aW9uTGlzdGJveExhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vcGFnaW5hdGlvbi1saXN0Ym94LWxhYmVsL3BhZ2luYXRpb24tbGlzdGJveC1sYWJlbC5jb21wb25lbnQnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Rlc3ktcGFnaW5hdGlvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9wYWdpbmF0aW9uLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBQYWdpbmF0aW9uQ29tcG9uZW50IGV4dGVuZHMgQWNjZXNzaWJpbGl0eUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgQWZ0ZXJDb250ZW50SW5pdCB7XG5cbiAgQElucHV0KCkgaGFzU2VsZWN0OiBib29sZWFuO1xuICBASW5wdXQoKSBpZFByZWZpeDogc3RyaW5nO1xuICBASW5wdXQoKSB0b3RhbEl0ZW1zOiBudW1iZXI7XG4gIEBJbnB1dCgpIGhhc1ByZXZpb3VzOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgaGFzTmV4dDogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIGhhc0ZpcnN0OiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgaGFzTGFzdDogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIHNob3dQcmV2aW91czogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIHNob3dOZXh0OiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgc2hvd0ZpcnN0OiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNob3dMYXN0OiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHByZXZpb3VzVGV4dDogc3RyaW5nO1xuICBASW5wdXQoKSBuZXh0VGV4dDogc3RyaW5nO1xuICBASW5wdXQoKSBmaXJzdFRleHQ6IHN0cmluZztcbiAgQElucHV0KCkgbGFzdFRleHQ6IHN0cmluZztcbiAgQElucHV0KCkgaGFzU2VsZWN0SXRlbXNQZXJQYWdlOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNsYXNzZXM6IHN0cmluZztcblxuICBASW5wdXQoKSBASG9zdEJpbmRpbmcoJ2NsYXNzJykgY2xhc3Nlc0NvbnRhaW5lcjogYW55O1xuICBASW5wdXQoKSBASG9zdEJpbmRpbmcoJ2F0dHIuaWQnKSBpZDogYW55O1xuXG4gIEBEZXN5Q29udGVudENoaWxkKClcbiAgQENvbnRlbnRDaGlsZHJlbihQYWdpbmF0aW9uTGlzdGJveExhYmVsQ29tcG9uZW50KSBsaXN0Ym94TGFiZWw6IFBhZ2luYXRpb25MaXN0Ym94TGFiZWxDb21wb25lbnQ7XG5cbiAgQENvbnRlbnRDaGlsZHJlbihQYWdpbmF0aW9uSXRlbVBlclBhZ2VDb21wb25lbnQpIGxpc3Rib3hJdGVtc1BlclBhZ2U6IFF1ZXJ5TGlzdDxQYWdpbmF0aW9uSXRlbVBlclBhZ2VDb21wb25lbnQ+O1xuXG4gIEBJbnB1dCgpIGN1cnJlbnRQYWdlID0gMTsgLy8gPT0gY3VycmVudFBhZ2VpbmRleCArIDFcbiAgQE91dHB1dCgpIGN1cnJlbnRQYWdlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cblxuICBASW5wdXQoKSBpdGVtc1BlclBhZ2U6IG51bWJlcjtcbiAgQE91dHB1dCgpIGl0ZW1zUGVyUGFnZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gIG5QYWdlczogbnVtYmVyO1xuICBpdGVtczogUGFnaW5hdGlvbkl0ZW1EYXRhW107XG4gIGl0ZW1zUGVyUGFnZUxpc3Q6IFBhZ2luYXRpb25JdGVtUGVyUGFnZUNvbXBvbmVudFtdO1xuICBuUGFnZXNIaXN0b3J5ID0gMDtcblxuICBkZWZhdWx0VGV4dDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHJlYWRvbmx5IHByZXZpb3VzSWNvbiA9ICc8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE0MCAxNDBcIiAgd2lkdGg9XCIxZW1cIiBoZWlnaHQ9XCIxZW1cIiBjbGFzcz1cInNlbGYtY2VudGVyIGgtMi41IHctMi41IG1yLTJcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBmb2N1c2FibGU9XCJmYWxzZVwiPjxwYXRoIGQ9XCJNNTQuODcgNzEuNzdhMi41IDIuNSAwIDAxMC0zLjU0TDEwNiAxNy4wN0ExMCAxMCAwIDEwOTEuODkgMi45M0wzNS40MyA1OS4zOWExNSAxNSAwIDAwMCAyMS4yMmw1Ni40NiA1Ni40NkExMCAxMCAwIDEwMTA2IDEyMi45M3pcIiBmaWxsPVwiY3VycmVudENvbG9yXCIgLz48L3N2Zz4nO1xuICByZWFkb25seSBuZXh0SWNvbiA9ICc8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE0MCAxNDBcIiB3aWR0aD1cIjFlbVwiIGhlaWdodD1cIjFlbVwiIGNsYXNzPVwic2VsZi1jZW50ZXIgaC0yLjUgdy0yLjUgbWwtMlwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGZvY3VzYWJsZT1cImZhbHNlXCI+PHBhdGggZD1cIk0zNCAxMzcuMDdhMTAgMTAgMCAwMTAtMTQuMTRsNTEuMTMtNTEuMTZhMi41IDIuNSAwIDAwMC0zLjU0TDM0IDE3LjA3QTEwIDEwIDAgMDE0OC4xMSAyLjkzbDU2LjQ2IDU2LjQ2YTE1IDE1IDAgMDEwIDIxLjIybC01Ni40NiA1Ni40NmExMCAxMCAwIDAxLTE0LjExIDB6XCIgZmlsbD1cImN1cnJlbnRDb2xvclwiIC8+PC9zdmc+JztcbiAgcmVhZG9ubHkgZmlyc3RJY29uID0gJzxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiB3aWR0aD1cIjFlbVwiIGhlaWdodD1cIjFlbVwiIGNsYXNzPVwic2VsZi1jZW50ZXIgaC0yLjUgdy0yLjUgbXItMlwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGZvY3VzYWJsZT1cImZhbHNlXCI+PGc+PHBhdGggZD1cIk0xMC40MiwxMmEyLjY0LDIuNjQsMCwwLDEsLjc3LTEuODhMMjAuNzMuNThhMS43NywxLjc3LDAsMCwxLDIuNSwyLjVsLTguNzQsOC43NGEuMjcuMjcsMCwwLDAsMCwuMzZsOC43NCw4Ljc0YTEuNzcsMS43NywwLDAsMS0yLjUsMi41bC05LjU0LTkuNTRBMi42NCwyLjY0LDAsMCwxLDEwLjQyLDEyWlwiIGZpbGw9XCJjdXJyZW50Q29sb3JcIj48L3BhdGg+PHBhdGggZD1cIk0uMjUsMTJBMi42NSwyLjY1LDAsMCwxLDEsMTAuMTJMMTAuNTcuNThhMS43NywxLjc3LDAsMCwxLDIuNSwyLjVMNC4zMywxMS44MmEuMjUuMjUsMCwwLDAsMCwuMzZsOC43NCw4Ljc0YTEuNzcsMS43NywwLDAsMS0yLjUsMi41TDEsMTMuODhBMi42NSwyLjY1LDAsMCwxLC4yNSwxMlpcIiBmaWxsPVwiY3VycmVudENvbG9yXCI+PC9wYXRoPjwvZz48L3N2Zz4nO1xuICByZWFkb25seSBsYXN0SWNvbiA9ICc8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgd2lkdGg9XCIxZW1cIiBoZWlnaHQ9XCIxZW1cIiBjbGFzcz1cInNlbGYtY2VudGVyIGgtMi41IHctMi41IG1sLTJcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBmb2N1c2FibGU9XCJmYWxzZVwiPjxnPjxwYXRoIGQ9XCJNMTMuNTgsMTJhMi42NCwyLjY0LDAsMCwxLS43NywxLjg4TDMuMjcsMjMuNDJhMS43NywxLjc3LDAsMCwxLTIuNS0yLjVsOC43NC04Ljc0YS4yNy4yNywwLDAsMCwwLS4zNkwuNzcsMy4wOEExLjc3LDEuNzcsMCwwLDEsMy4yNy41OGw5LjU0LDkuNTRBMi42NCwyLjY0LDAsMCwxLDEzLjU4LDEyWlwiIGZpbGw9XCJjdXJyZW50Q29sb3JcIj48L3BhdGg+PHBhdGggZD1cIk0yMy43NSwxMkEyLjY1LDIuNjUsMCwwLDEsMjMsMTMuODhsLTkuNTQsOS41NGExLjc3LDEuNzcsMCwwLDEtMi41LTIuNWw4Ljc0LTguNzRhLjI1LjI1LDAsMCwwLDAtLjM2TDEwLjkzLDMuMDhhMS43NywxLjc3LDAsMCwxLDIuNS0yLjVMMjMsMTAuMTJBMi42NSwyLjY1LDAsMCwxLDIzLjc1LDEyWlwiIGZpbGw9XCJjdXJyZW50Q29sb3JcIj48L3BhdGg+PC9nPjwvc3ZnPic7XG4gIHJlYWRvbmx5IHByZWZpeCA9ICc8c3BhbiBjbGFzcz1cInNyLW9ubHlcIj5Qw6FnaW5hJm5ic3A7PC9zcGFuPic7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmICh0aGlzLmN1cnJlbnRQYWdlID09PSBudWxsIHx8IHRoaXMuY3VycmVudFBhZ2UgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5jdXJyZW50UGFnZSA9IDE7XG4gICAgfVxuICAgIHRoaXMuY2hlY2tDaGFuZ2VzKCk7XG4gICAgdGhpcy5jbGFzc2VzQ29udGFpbmVyID0gdGhpcy5jbGFzc2VzQ29udGFpbmVyID8gdGhpcy5jbGFzc2VzQ29udGFpbmVyICs9ICcgbGc6ZmxleCBsZzpmbGV4LXdyYXAgbGc6aXRlbXMtY2VudGVyIGxnOmdhcC1iYXNlJyA6ICdsZzpmbGV4IGxnOmZsZXgtd3JhcCBsZzppdGVtcy1jZW50ZXIgbGc6Z2FwLWJhc2UnXG4gICAgdGhpcy5pZCA9IHRoaXMuaWQgPyB0aGlzLmlkIDogbnVsbFxuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmxpc3Rib3hJdGVtc1BlclBhZ2UpIHtcbiAgICAgIHRoaXMuc2V0dXBJdGVtc1BlclBhZ2UoKTtcbiAgICAgIHRoaXMubGlzdGJveEl0ZW1zUGVyUGFnZS5jaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuc2V0dXBJdGVtc1BlclBhZ2UoKTtcbiAgICAgIH0pXG4gICAgfVxuICB9XG5cbiAgY2hlY2tDaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMublBhZ2VzID0gTWF0aC5jZWlsKHRoaXMudG90YWxJdGVtcyAvIHRoaXMuaXRlbXNQZXJQYWdlKTtcblxuICAgIGlmICghdGhpcy5jdXJyZW50UGFnZSB8fCB0aGlzLmN1cnJlbnRQYWdlIDwgMSB8fCB0aGlzLmN1cnJlbnRQYWdlID4gdGhpcy5uUGFnZXMpIHtcbiAgICAgIHRoaXMuY3VycmVudFBhZ2UgPSAxO1xuICAgICAgdGhpcy5jdXJyZW50UGFnZUNoYW5nZS5lbWl0KHRoaXMuY3VycmVudFBhZ2UpO1xuICAgIH1cbiAgICBpZiAoIXRoaXMuZmlyc3RUZXh0KSB7XG4gICAgICB0aGlzLmZpcnN0VGV4dCA9ICdQcmltZXJhJztcbiAgICB9XG4gICAgaWYgKCF0aGlzLnByZXZpb3VzVGV4dCkge1xuICAgICAgdGhpcy5wcmV2aW91c1RleHQgPSAnQW50ZXJpb3InO1xuICAgIH1cbiAgICBpZiAoIXRoaXMubmV4dFRleHQpIHtcbiAgICAgIHRoaXMubmV4dFRleHQgPSAnU2lndWllbnRlJztcbiAgICB9XG4gICAgaWYgKCF0aGlzLmxhc3RUZXh0KSB7XG4gICAgICB0aGlzLmxhc3RUZXh0ID0gJ8OabHRpbWEnO1xuICAgIH1cbiAgICB0aGlzLmJ1aWxkUGFnZXMoKTtcbiAgfVxuXG4gIGdldFN1ZmZpeChwYWdlOiBudW1iZXIsIGlzTnVtYmVyID0gZmFsc2UpOiBzdHJpbmcge1xuICAgIHJldHVybiBwYWdlID49IDAgJiYgcGFnZSAqIHRoaXMuaXRlbXNQZXJQYWdlIDwgdGhpcy50b3RhbEl0ZW1zID9cbiAgICAgIChpc051bWJlciA/IGA8c3BhbiBjbGFzcz1cInNyLW9ubHlcIj46Jm5ic3A7IGNvbiBsb3MgcmVzdWx0YWRvcyBkZWwgJHtwYWdlICogdGhpcy5pdGVtc1BlclBhZ2UgKyAxfSBhbCAke3RoaXMuZ2V0TGFzdEl0ZW1OdW1iZXIocGFnZSl9PC9zcGFuPmAgOiBgPHNwYW4gY2xhc3M9XCJzci1vbmx5XCI+OiZuYnNwO1DDoWdpbmEgJHtwYWdlICsgMX0gY29uIGxvcyByZXN1bHRhZG9zIGRlbCAke3BhZ2UgKiB0aGlzLml0ZW1zUGVyUGFnZSArIDF9IGFsICR7dGhpcy5nZXRMYXN0SXRlbU51bWJlcihwYWdlKX08L3NwYW4+YClcbiAgICAgIDogJyc7XG4gIH1cblxuICBnZXRMYXN0SXRlbU51bWJlcihwYWdlSW5kZXg6IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIE1hdGgubWluKChwYWdlSW5kZXggKyAxKSAqIHRoaXMuaXRlbXNQZXJQYWdlLCB0aGlzLnRvdGFsSXRlbXMpO1xuICB9XG5cbiAgYnVpbGRQYWdlcygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5uUGFnZXNIaXN0b3J5ICE9IHRoaXMublBhZ2VzKSB7XG4gICAgICB0aGlzLm5QYWdlc0hpc3RvcnkgPSB0aGlzLm5QYWdlc1xuICAgICAgY29uc3QgaXRlbUxpc3QgPSBbXTtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5uUGFnZXM7IGkrKykge1xuICAgICAgICBjb25zdCBpdGVtOiBQYWdpbmF0aW9uSXRlbURhdGEgPSB7XG4gICAgICAgICAgdGV4dDogaSArIDEsXG4gICAgICAgICAgYWN0aXZlOiAoKGkgKyAxKSA9PT0gdGhpcy5jdXJyZW50UGFnZSksXG4gICAgICAgICAgcm91dGVyTGluazogW11cbiAgICAgICAgfTtcbiAgICAgICAgaXRlbUxpc3QucHVzaChpdGVtKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuaXRlbXMgPSBpdGVtTGlzdDtcbiAgICB9XG4gIH1cblxuICBnZXRJZFByZWZpeCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmlkUHJlZml4ID8gdGhpcy5pZFByZWZpeCA6ICdwYWdpbmF0aW9uLWl0ZW0nO1xuICB9XG5cbiAgZ2V0QnV0dG9uSWQoaW5kZXg6IG51bWJlcik6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0SWRQcmVmaXgoKSArICctJyArICsraW5kZXg7XG4gIH1cblxuICBjaGFuZ2VQYWdlKGN1cnJlbnQ6IG51bWJlcik6IHZvaWQge1xuICAgIGNvbnN0IGhhc1BhZ2VDaGFuZ2UgPSBjdXJyZW50ICE9PSB0aGlzLmN1cnJlbnRQYWdlO1xuICAgIHRoaXMuY3VycmVudFBhZ2UgPSBjdXJyZW50O1xuICAgIGlmIChoYXNQYWdlQ2hhbmdlKSB7XG4gICAgICB0aGlzLmN1cnJlbnRQYWdlQ2hhbmdlLmVtaXQodGhpcy5jdXJyZW50UGFnZSk7XG4gICAgfVxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5pdGVtcy5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgaXRlbSA9IHRoaXMuaXRlbXNbaV07XG4gICAgICBpdGVtLmFjdGl2ZSA9ICgoaSArIDEpID09PSB0aGlzLmN1cnJlbnRQYWdlKTtcbiAgICB9XG4gIH1cblxuICBwcmV2aW91cygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jdXJyZW50UGFnZSA+IDEpIHtcbiAgICAgIHRoaXMuY2hhbmdlUGFnZSh0aGlzLmN1cnJlbnRQYWdlIC0gMSk7XG4gICAgfVxuICB9XG5cbiAgbmV4dCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jdXJyZW50UGFnZSA8IHRoaXMublBhZ2VzKSB7XG4gICAgICB0aGlzLmNoYW5nZVBhZ2UodGhpcy5jdXJyZW50UGFnZSArIDEpO1xuICAgIH1cbiAgfVxuXG4gIGZpcnN0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmN1cnJlbnRQYWdlID4gMSkge1xuICAgICAgdGhpcy5jaGFuZ2VQYWdlKDEpO1xuICAgIH1cbiAgfVxuXG4gIGxhc3QoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuY3VycmVudFBhZ2UgPCB0aGlzLm5QYWdlcykge1xuICAgICAgdGhpcy5jaGFuZ2VQYWdlKHRoaXMublBhZ2VzKTtcbiAgICB9XG4gIH1cblxuICBnZXRBY3RpdmVJdGVtVGV4dCgpOiBhbnkge1xuICAgIGNvbnN0IGFjdGl2ZUl0ZW1zID0gdGhpcy5pdGVtcy5maWx0ZXIoaXRlbSA9PiBpdGVtLmFjdGl2ZSk7XG4gICAgcmV0dXJuIGFjdGl2ZUl0ZW1zICYmIGFjdGl2ZUl0ZW1zLmxlbmd0aCA+IDAgPyBhY3RpdmVJdGVtc1swXS50ZXh0IDogJyc7XG4gIH1cblxuICBnZXRMaXN0Ym94TGFiZWwoKTogUGFnaW5hdGlvbkxpc3Rib3hMYWJlbENvbXBvbmVudCB7XG4gICAgcmV0dXJuIHRoaXMubGlzdGJveExhYmVsID8gdGhpcy5saXN0Ym94TGFiZWwgOiBudWxsO1xuICB9XG5cbiAgY2hhbmdlSXRlbXNQZXJQYWdlKGV2ZW50OiBhbnkpIHtcbiAgICBpZiAoZXZlbnQgJiYgZXZlbnQudmFsdWUpIHtcbiAgICAgIGxldCBuZXdWYWx1ZSA9IGV2ZW50LnZhbHVlO1xuICAgICAgdGhpcy5pdGVtc1BlclBhZ2UgPSBuZXdWYWx1ZTtcbiAgICAgIHRoaXMuY2hlY2tDaGFuZ2VzKCk7XG4gICAgICB0aGlzLml0ZW1zUGVyUGFnZUNoYW5nZS5lbWl0KG5ld1ZhbHVlKTtcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZUFjdGl2ZUl0ZW1DaGFuZ2UoZXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQgIT09IG51bGwgJiYgZXZlbnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5jaGFuZ2VQYWdlKCtldmVudC50ZXh0KTtcbiAgICB9XG4gIH1cblxuICBzZXR1cEl0ZW1zUGVyUGFnZSgpOiB2b2lkIHtcbiAgICB0aGlzLml0ZW1zUGVyUGFnZUxpc3QgPSB0aGlzLmxpc3Rib3hJdGVtc1BlclBhZ2UgJiYgdGhpcy5saXN0Ym94SXRlbXNQZXJQYWdlLmxlbmd0aCA+IDAgPyB0aGlzLmxpc3Rib3hJdGVtc1BlclBhZ2UudG9BcnJheSgpIDogbnVsbDtcbiAgICBpZiAodGhpcy5pdGVtc1BlclBhZ2VMaXN0KSB7XG4gICAgICBjb25zdCBjdXJyZW50SXRlbXNQZXJQYWdlSXRlbSA9IHRoaXMuaXRlbXNQZXJQYWdlTGlzdC5maW5kKGkgPT4gaS52YWx1ZSA9PT0gdGhpcy5pdGVtc1BlclBhZ2UpO1xuICAgICAgaWYgKGN1cnJlbnRJdGVtc1BlclBhZ2VJdGVtKSB7XG4gICAgICAgIGN1cnJlbnRJdGVtc1BlclBhZ2VJdGVtLmFjdGl2ZSA9IHRydWU7XG4gICAgICB9XG4gICAgICBjb25zdCBoYXNBY3RpdmUgPSB0aGlzLml0ZW1zUGVyUGFnZUxpc3QuZmluZChpID0+IGkuYWN0aXZlKTtcbiAgICAgIGlmICghaGFzQWN0aXZlICYmIHRoaXMuaXRlbXNQZXJQYWdlTGlzdC5sZW5ndGggPiAwKSB7XG4gICAgICAgIHRoaXMuaXRlbXNQZXJQYWdlTGlzdFswXS5hY3RpdmUgPSB0cnVlO1xuICAgICAgfVxuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuICB9XG5cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJoYXNTZWxlY3RcIj5cbiAgPHAgY2xhc3M9XCJ3LWZ1bGwgbWIteHMgdGV4dC1zbSB0ZXh0LW5ldXRyYWwtZGFya1wiPlxuICAgIFNlbGVjY2lvbmEgdW5hIHDDoWdpbmEgcGFyYSBjYXJnYXIgZGF0b3NcbiAgPC9wPlxuICA8bmF2IFtjbGFzc109XCJbJ2ZsZXggZmxleC13cmFwIGl0ZW1zLWNlbnRlciBmbGV4LTEgbWItYmFzZSBsZzptYi0wIHRleHQtc20nLCBjbGFzc2VzXSB8IG1ha2VIdG1sTGlzdFwiXG4gICAgICAgIFtkZXN5QXBwQWNjZXNzaWJpbGl0eV09XCJ0aGlzXCI+XG4gICAgPGRlc3ktYnV0dG9uICpuZ0lmPVwic2hvd0ZpcnN0XCIgKGNsaWNrRXZlbnQpPVwiZmlyc3QoKVwiIFtpZF09XCJnZXRJZFByZWZpeCgpICsgJy1maXJzdCdcIlxuICAgICAgICAgICAgICAgICAgW2h0bWxdPVwiZmlyc3RJY29uICsgcHJlZml4ICsgZmlyc3RUZXh0ICsgZ2V0U3VmZml4KGN1cnJlbnRQYWdlIC0gMilcIiBbZGlzYWJsZWRdPVwiY3VycmVudFBhZ2UgPT09IDEgfHwgIWhhc0ZpcnN0XCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzZXM9XCJjLWJ1dHRvbi0tc20gYy1idXR0b24tLXRyYW5zcGFyZW50IG1yLXhzXCIgdHlwZT1cImJ1dHRvblwiPjwvZGVzeS1idXR0b24+XG4gICAgPGRlc3ktYnV0dG9uICpuZ0lmPVwic2hvd1ByZXZpb3VzXCIgKGNsaWNrRXZlbnQpPVwicHJldmlvdXMoKVwiIFtpZF09XCJnZXRJZFByZWZpeCgpICsgJy1wcmV2aW91cydcIlxuICAgICAgICAgICAgICAgICAgW2h0bWxdPVwicHJldmlvdXNJY29uICsgcHJlZml4ICsgcHJldmlvdXNUZXh0ICsgZ2V0U3VmZml4KGN1cnJlbnRQYWdlIC0gMilcIiBbZGlzYWJsZWRdPVwiY3VycmVudFBhZ2UgPT09IDEgfHwgIWhhc1ByZXZpb3VzXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzZXM9XCJjLWJ1dHRvbi0tc20gYy1idXR0b24tLXRyYW5zcGFyZW50IG1yLXhzXCIgdHlwZT1cImJ1dHRvblwiPjwvZGVzeS1idXR0b24+XG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC13cmFwIGl0ZW1zLWNlbnRlciBwbC1zbVwiXG4gICAgICAgICAgW25nQ2xhc3NdPVwieyd3LWZ1bGwgbGc6dy1hdXRvJzogc2hvd0ZpcnN0IHx8IHNob3dMYXN0fVwiPlxuICAgICAgPHAgKm5nSWY9XCJzaG93Rmlyc3QgfHwgc2hvd0xhc3RcIiBjbGFzcz1cImxnOmhpZGRlbiBtci14cyB0ZXh0LXNtIHRleHQtbmV1dHJhbC1kYXJrXCI+UMOhZ2luYSBhY3R1YWw6PC9wPlxuICAgICAgICAgIDxkZXN5LWxpc3Rib3ggKm5nSWY9XCJpdGVtcyAmJiBpdGVtcy5sZW5ndGggPiAwXCIgW2lkXT1cImlkICsgJy1saXN0Ym94J1wiXG4gICAgICAgICAgICBbaWRQcmVmaXhdPVwiaWRQcmVmaXhcIlxuICAgICAgICAgICAgW3RleHRdPVwiZ2V0QWN0aXZlSXRlbVRleHQoKVwiXG4gICAgICAgICAgICBbY2xhc3Nlc109XCInYy1saXN0Ym94LS1zbSBjLWxpc3Rib3gtLXRyYW5zcGFyZW50IG1yLXhzJ1wiXG4gICAgICAgICAgICBbY2xhc3Nlc1Rvb2x0aXBdPVwiJ21heC1oLTUyIG92ZXJmbG93LXktYXV0bydcIlxuICAgICAgICAgICAgW2RvZXNDaGFuZ2VCdXR0b25UZXh0XT1cInRydWVcIlxuICAgICAgICAgICAgW2xhYmVsXT1cInsgdGV4dDogJ1NlbGVjY2lvbmEgdW5hIHDDoWdpbmEgcGFyYSBjYXJnYXIgZGF0b3MnLCBjbGFzc2VzOiAnc3Itb25seScgfVwiXG4gICAgICAgICAgICBbKGl0ZW1zKV09XCJpdGVtc1wiXG4gICAgICAgICAgICAoYWN0aXZlSXRlbUNoYW5nZSk9XCJoYW5kbGVBY3RpdmVJdGVtQ2hhbmdlKCRldmVudClcIj48L2Rlc3ktbGlzdGJveD5cbiAgICA8L2Rpdj5cbiAgICA8ZGVzeS1idXR0b24gKm5nSWY9XCJzaG93TmV4dFwiIChjbGlja0V2ZW50KT1cIm5leHQoKVwiIFtpZF09XCJnZXRJZFByZWZpeCgpICsgJy1uZXh0J1wiXG4gICAgICAgICAgICAgICAgICBbaHRtbF09XCJwcmVmaXggKyBuZXh0VGV4dCArIGdldFN1ZmZpeChjdXJyZW50UGFnZSkgKyBuZXh0SWNvblwiIFtkaXNhYmxlZF09XCJjdXJyZW50UGFnZSA9PT0gblBhZ2VzIHx8ICFoYXNOZXh0XCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzZXM9XCJjLWJ1dHRvbi0tc20gYy1idXR0b24tLXRyYW5zcGFyZW50IG1yLXhzXCIgdHlwZT1cImJ1dHRvblwiPjwvZGVzeS1idXR0b24+XG4gICAgPGRlc3ktYnV0dG9uICpuZ0lmPVwic2hvd0xhc3RcIiAoY2xpY2tFdmVudCk9XCJsYXN0KClcIiBbaWRdPVwiZ2V0SWRQcmVmaXgoKSArICctbGFzdCdcIlxuICAgICAgICAgICAgICAgICAgW2h0bWxdPVwicHJlZml4ICsgbGFzdFRleHQgKyBnZXRTdWZmaXgoY3VycmVudFBhZ2UpICsgbGFzdEljb25cIiBbZGlzYWJsZWRdPVwiY3VycmVudFBhZ2UgPT09IG5QYWdlcyB8fCAhaGFzTGFzdFwiXG4gICAgICAgICAgICAgICAgICBjbGFzc2VzPVwiYy1idXR0b24tLXNtIGMtYnV0dG9uLS10cmFuc3BhcmVudCBtci14c1wiIHR5cGU9XCJidXR0b25cIj48L2Rlc3ktYnV0dG9uPlxuICA8L25hdj5cbjwvbmctY29udGFpbmVyPlxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFoYXNTZWxlY3RcIj5cbiAgPG5hdiBbY2xhc3NdPVwiWydmbGV4IGZsZXgtd3JhcCBpdGVtcy1jZW50ZXIgZmxleC0xIG1iLWJhc2UgbGc6bWItMCB0ZXh0LXNtJywgY2xhc3Nlc10gfCBtYWtlSHRtbExpc3RcIlxuICAgICAgICBbZGVzeUFwcEFjY2Vzc2liaWxpdHldPVwidGhpc1wiPlxuICAgIDx1bCBjbGFzcz1cImZsZXggZmxleC13cmFwXCI+XG4gICAgICA8bGkgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXM7IGluZGV4IGFzIGlcIj5cbiAgICAgICAgPGRlc3ktYnV0dG9uICpuZ0lmPVwiaXRlbS5hY3RpdmVcIiBbaWRdPVwiZ2V0QnV0dG9uSWQoaSlcIlxuICAgICAgICAgICAgICAgICAgICAgIFtodG1sXT1cIic8c3Ryb25nPicgKyBwcmVmaXggKyAoaSArIDEpICsgZ2V0U3VmZml4KGksdHJ1ZSkgKyAnPC9zdHJvbmc+J1wiXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3Nlcz1cImMtYnV0dG9uLS1wcmltYXJ5IGMtYnV0dG9uLS1kaXNhYmxlZCBtYi1zbSBtci1zbVwiXG4gICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInRydWVcIiBhcmlhQ3VycmVudD1cInBhZ2VcIiB0YWJpbmRleD1cIi0xXCIgdHlwZT1cImJ1dHRvblwiPjwvZGVzeS1idXR0b24+XG4gICAgICAgIDxkZXN5LWJ1dHRvbiAqbmdJZj1cIiFpdGVtLmFjdGl2ZVwiIFtpZF09XCJnZXRCdXR0b25JZChpKVwiXG4gICAgICAgICAgICAgICAgICAgICAgW2h0bWxdPVwicHJlZml4ICsgKGkgKyAxKSArIGdldFN1ZmZpeChpLHRydWUpXCJcbiAgICAgICAgICAgICAgICAgICAgICAoY2xpY2tFdmVudCk9XCJjaGFuZ2VQYWdlKGkgKyAxKVwiXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3Nlcz1cIm1iLXNtIG1yLXNtXCIgdHlwZT1cImJ1dHRvblwiPjwvZGVzeS1idXR0b24+XG4gICAgICA8L2xpPlxuICAgIDwvdWw+XG4gIDwvbmF2PlxuPC9uZy1jb250YWluZXI+XG4gIFxuPGRpdiAqbmdJZj1cImhhc1NlbGVjdEl0ZW1zUGVyUGFnZVwiIGNsYXNzPVwiYmxvY2sgcmVsYXRpdmUgLXRvcC14cyBsZzptbC1hdXRvIHRleHQtc20gdGV4dC1uZXV0cmFsLWRhcmtcIj5cbiAgPGRlc3ktbGlzdGJveCBbY2xhc3Nlc109XCInYy1saXN0Ym94LS1zbSBjLWxpc3Rib3gtLXRyYW5zcGFyZW50J1wiIFxuICAgICAgICAgICAgICAgIFtjbGFzc2VzQ29udGFpbmVyXT1cIidmbGV4IGZsZXgtd3JhcCBpdGVtcy1jZW50ZXIgZ2FwLXhzJ1wiIFxuICAgICAgICAgICAgICAgIFtpZF09XCInaXRlbXMtbGlzdGJveC0nICsgZ2V0SWRQcmVmaXgoKVwiXG4gICAgICAgICAgICAgICAgW2RvZXNDaGFuZ2VCdXR0b25UZXh0XT1cInRydWVcIlxuICAgICAgICAgICAgICAgIFtpdGVtc109XCJpdGVtc1BlclBhZ2VMaXN0XCJcbiAgICAgICAgICAgICAgICAoYWN0aXZlSXRlbUNoYW5nZSk9XCJjaGFuZ2VJdGVtc1BlclBhZ2UoJGV2ZW50KVwiPlxuICAgIDxkZXN5LWxpc3Rib3gtbGFiZWwgW2NsYXNzZXNdPVwibGlzdGJveExhYmVsICYmIGxpc3Rib3hMYWJlbC5jbGFzc2VzID8gbGlzdGJveExhYmVsLmNsYXNzZXMgOiAnaW5saW5lLWJsb2NrIGFsaWduLW1pZGRsZSBtYi0wJ1wiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibGlzdGJveExhYmVsXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqZGVzeUN1c3RvbUlubmVyQ29udGVudD1cInsgY29tcG9uZW50OiBsaXN0Ym94TGFiZWwgfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFsaXN0Ym94TGFiZWxcIj5cbiAgICAgICAgICBJdGVtcyBwb3IgcMOhZ2luYVxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rlc3ktbGlzdGJveC1sYWJlbD5cbiAgPC9kZXN5LWxpc3Rib3g+XG48L2Rpdj5cblxuXG48cCByb2xlPVwic3RhdHVzXCIgYXJpYS1saXZlPVwicG9saXRlXCIgY2xhc3M9XCJibG9jayByZWxhdGl2ZSAtdG9wLXhzIGxnOm1sLWF1dG8gdGV4dC1zbSB0ZXh0LW5ldXRyYWwtZGFya1wiICpuZ0lmPVwidG90YWxJdGVtcyAmJiBpdGVtc1BlclBhZ2VcIj5cbiAgPHNwYW4gY2xhc3M9XCJzci1vbmx5XCI+UG9zaWNpw7NuIGRlIHBhZ2luYWNpw7NuOiA8L3NwYW4+e3soY3VycmVudFBhZ2UgLSAxKSAqIGl0ZW1zUGVyUGFnZSArIDF9fSAtIHt7Z2V0TGFzdEl0ZW1OdW1iZXIoY3VycmVudFBhZ2UgLSAxKX19IGRlIHt7dG90YWxJdGVtc319XG48L3A+XG4iXX0=
237
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LXBhZ2luYXRpb24vY29tcG9uZW50cy9wYWdpbmF0aW9uL3BhZ2luYXRpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS1wYWdpbmF0aW9uL2NvbXBvbmVudHMvcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQW9CLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUFFLFNBQVMsRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDL0ssT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDM0YsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDOUcsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sZ0VBQWdFLENBQUM7Ozs7Ozs7Ozs7QUFPakgsTUFBTSxPQUFPLG1CQUFvQixTQUFRLHNCQUFzQjtJQWtEN0QsWUFBb0IsY0FBaUM7UUFDbkQsS0FBSyxFQUFFLENBQUM7UUFEVSxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUE3QzVDLGdCQUFXLEdBQVksSUFBSSxDQUFDO1FBQzVCLFlBQU8sR0FBWSxJQUFJLENBQUM7UUFDeEIsYUFBUSxHQUFZLElBQUksQ0FBQztRQUN6QixZQUFPLEdBQVksSUFBSSxDQUFDO1FBQ3hCLGlCQUFZLEdBQVksSUFBSSxDQUFDO1FBQzdCLGFBQVEsR0FBWSxJQUFJLENBQUM7UUFDekIs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RyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUV5QixnQkFBZ0I7c0JBQTlDLEtBQUs7O3NCQUFJLFdBQVc7dUJBQUMsT0FBTztnQkFDSSxFQUFFO3NCQUFsQyxLQUFLOztzQkFBSSxXQUFXO3VCQUFDLFNBQVM7Z0JBR21CLFlBQVk7c0JBQTdELGVBQWU7dUJBQUMsK0JBQStCO2dCQUVDLG1CQUFtQjtzQkFBbkUsZUFBZTt1QkFBQyw4QkFBOEI7Z0JBRXRDLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0ksaUJBQWlCO3NCQUExQixNQUFNO2dCQUdFLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0ksa0JBQWtCO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiXG5pbXBvcnQgeyBBZnRlckNvbnRlbnRJbml0LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGRyZW4sIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkNoYW5nZXMsIE91dHB1dCwgUXVlcnlMaXN0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY2Nlc3NpYmlsaXR5Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgRGVzeUNvbnRlbnRDaGlsZCB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9kZWNvcmF0b3JzL2Rlc3ktY29udGVudC1jaGlsZC5kZWNvcmF0b3InO1xuaW1wb3J0IHsgUGFnaW5hdGlvbkl0ZW1QZXJQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi4vcGFnaW5hdGlvbi1pdGVtLXBlcnBhZ2UvcGFnaW5hdGlvbi1pdGVtLXBlcnBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IFBhZ2luYXRpb25MaXN0Ym94TGFiZWxDb21wb25lbnQgfSBmcm9tICcuLi9wYWdpbmF0aW9uLWxpc3Rib3gtbGFiZWwvcGFnaW5hdGlvbi1saXN0Ym94LWxhYmVsLmNvbXBvbmVudCc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGVzeS1wYWdpbmF0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BhZ2luYXRpb24uY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFBhZ2luYXRpb25Db21wb25lbnQgZXh0ZW5kcyBBY2Nlc3NpYmlsaXR5Q29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBBZnRlckNvbnRlbnRJbml0IHtcblxuICBASW5wdXQoKSBoYXNTZWxlY3Q6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGlkUHJlZml4OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHRvdGFsSXRlbXM6IG51bWJlcjtcbiAgQElucHV0KCkgaGFzUHJldmlvdXM6IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBoYXNOZXh0OiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgaGFzRmlyc3Q6IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBoYXNMYXN0OiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgc2hvd1ByZXZpb3VzOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgc2hvd05leHQ6IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBzaG93Rmlyc3Q6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgc2hvd0xhc3Q6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcHJldmlvdXNUZXh0OiBzdHJpbmc7XG4gIEBJbnB1dCgpIG5leHRUZXh0OiBzdHJpbmc7XG4gIEBJbnB1dCgpIGZpcnN0VGV4dDogc3RyaW5nO1xuICBASW5wdXQoKSBsYXN0VGV4dDogc3RyaW5nO1xuICBASW5wdXQoKSBoYXNTZWxlY3RJdGVtc1BlclBhZ2U6IHN0cmluZyB8IGJvb2xlYW47XG4gIEBJbnB1dCgpIGNsYXNzZXM6IHN0cmluZztcblxuICBASW5wdXQoKSBASG9zdEJpbmRpbmcoJ2NsYXNzJykgY2xhc3Nlc0NvbnRhaW5lcjogYW55O1xuICBASW5wdXQoKSBASG9zdEJpbmRpbmcoJ2F0dHIuaWQnKSBpZDogYW55O1xuXG4gIEBEZXN5Q29udGVudENoaWxkKClcbiAgQENvbnRlbnRDaGlsZHJlbihQYWdpbmF0aW9uTGlzdGJveExhYmVsQ29tcG9uZW50KSBsaXN0Ym94TGFiZWw6IFBhZ2luYXRpb25MaXN0Ym94TGFiZWxDb21wb25lbnQ7XG5cbiAgQENvbnRlbnRDaGlsZHJlbihQYWdpbmF0aW9uSXRlbVBlclBhZ2VDb21wb25lbnQpIGxpc3Rib3hJdGVtc1BlclBhZ2U6IFF1ZXJ5TGlzdDxQYWdpbmF0aW9uSXRlbVBlclBhZ2VDb21wb25lbnQ+O1xuXG4gIEBJbnB1dCgpIGN1cnJlbnRQYWdlID0gMTsgLy8gPT0gY3VycmVudFBhZ2VpbmRleCArIDFcbiAgQE91dHB1dCgpIGN1cnJlbnRQYWdlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cblxuICBASW5wdXQoKSBpdGVtc1BlclBhZ2U6IG51bWJlcjtcbiAgQE91dHB1dCgpIGl0ZW1zUGVyUGFnZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gIG5QYWdlczogbnVtYmVyO1xuICBpdGVtczogUGFnaW5hdGlvbkl0ZW1QZXJQYWdlQ29tcG9uZW50W107XG4gIHZhbHVlOiBudW1iZXI7XG4gIGl0ZW1zUGVyUGFnZUxpc3Q6IFBhZ2luYXRpb25JdGVtUGVyUGFnZUNvbXBvbmVudFtdO1xuICB2YWx1ZVBlclBhZ2U6IG51bWJlcjtcbiAgblBhZ2VzSGlzdG9yeSA9IDA7XG5cbiAgZGVmYXVsdFRleHQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICByZWFkb25seSBwcmV2aW91c0ljb24gPSAnPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNDAgMTQwXCIgIHdpZHRoPVwiMWVtXCIgaGVpZ2h0PVwiMWVtXCIgY2xhc3M9XCJzZWxmLWNlbnRlciBoLTIuNSB3LTIuNSBtci0yXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZm9jdXNhYmxlPVwiZmFsc2VcIj48cGF0aCBkPVwiTTU0Ljg3IDcxLjc3YTIuNSAyLjUgMCAwMTAtMy41NEwxMDYgMTcuMDdBMTAgMTAgMCAxMDkxLjg5IDIuOTNMMzUuNDMgNTkuMzlhMTUgMTUgMCAwMDAgMjEuMjJsNTYuNDYgNTYuNDZBMTAgMTAgMCAxMDEwNiAxMjIuOTN6XCIgZmlsbD1cImN1cnJlbnRDb2xvclwiIC8+PC9zdmc+JztcbiAgcmVhZG9ubHkgbmV4dEljb24gPSAnPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNDAgMTQwXCIgd2lkdGg9XCIxZW1cIiBoZWlnaHQ9XCIxZW1cIiBjbGFzcz1cInNlbGYtY2VudGVyIGgtMi41IHctMi41IG1sLTJcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBmb2N1c2FibGU9XCJmYWxzZVwiPjxwYXRoIGQ9XCJNMzQgMTM3LjA3YTEwIDEwIDAgMDEwLTE0LjE0bDUxLjEzLTUxLjE2YTIuNSAyLjUgMCAwMDAtMy41NEwzNCAxNy4wN0ExMCAxMCAwIDAxNDguMTEgMi45M2w1Ni40NiA1Ni40NmExNSAxNSAwIDAxMCAyMS4yMmwtNTYuNDYgNTYuNDZhMTAgMTAgMCAwMS0xNC4xMSAwelwiIGZpbGw9XCJjdXJyZW50Q29sb3JcIiAvPjwvc3ZnPic7XG4gIHJlYWRvbmx5IGZpcnN0SWNvbiA9ICc8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgd2lkdGg9XCIxZW1cIiBoZWlnaHQ9XCIxZW1cIiBjbGFzcz1cInNlbGYtY2VudGVyIGgtMi41IHctMi41IG1yLTJcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBmb2N1c2FibGU9XCJmYWxzZVwiPjxnPjxwYXRoIGQ9XCJNMTAuNDIsMTJhMi42NCwyLjY0LDAsMCwxLC43Ny0xLjg4TDIwLjczLjU4YTEuNzcsMS43NywwLDAsMSwyLjUsMi41bC04Ljc0LDguNzRhLjI3LjI3LDAsMCwwLDAsLjM2bDguNzQsOC43NGExLjc3LDEuNzcsMCwwLDEtMi41LDIuNWwtOS41NC05LjU0QTIuNjQsMi42NCwwLDAsMSwxMC40MiwxMlpcIiBmaWxsPVwiY3VycmVudENvbG9yXCI+PC9wYXRoPjxwYXRoIGQ9XCJNLjI1LDEyQTIuNjUsMi42NSwwLDAsMSwxLDEwLjEyTDEwLjU3LjU4YTEuNzcsMS43NywwLDAsMSwyLjUsMi41TDQuMzMsMTEuODJhLjI1LjI1LDAsMCwwLDAsLjM2bDguNzQsOC43NGExLjc3LDEuNzcsMCwwLDEtMi41LDIuNUwxLDEzLjg4QTIuNjUsMi42NSwwLDAsMSwuMjUsMTJaXCIgZmlsbD1cImN1cnJlbnRDb2xvclwiPjwvcGF0aD48L2c+PC9zdmc+JztcbiAgcmVhZG9ubHkgbGFzdEljb24gPSAnPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIHdpZHRoPVwiMWVtXCIgaGVpZ2h0PVwiMWVtXCIgY2xhc3M9XCJzZWxmLWNlbnRlciBoLTIuNSB3LTIuNSBtbC0yXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgZm9jdXNhYmxlPVwiZmFsc2VcIj48Zz48cGF0aCBkPVwiTTEzLjU4LDEyYTIuNjQsMi42NCwwLDAsMS0uNzcsMS44OEwzLjI3LDIzLjQyYTEuNzcsMS43NywwLDAsMS0yLjUtMi41bDguNzQtOC43NGEuMjcuMjcsMCwwLDAsMC0uMzZMLjc3LDMuMDhBMS43NywxLjc3LDAsMCwxLDMuMjcuNThsOS41NCw5LjU0QTIuNjQsMi42NCwwLDAsMSwxMy41OCwxMlpcIiBmaWxsPVwiY3VycmVudENvbG9yXCI+PC9wYXRoPjxwYXRoIGQ9XCJNMjMuNzUsMTJBMi42NSwyLjY1LDAsMCwxLDIzLDEzLjg4bC05LjU0LDkuNTRhMS43NywxLjc3LDAsMCwxLTIuNS0yLjVsOC43NC04Ljc0YS4yNS4yNSwwLDAsMCwwLS4zNkwxMC45MywzLjA4YTEuNzcsMS43NywwLDAsMSwyLjUtMi41TDIzLDEwLjEyQTIuNjUsMi42NSwwLDAsMSwyMy43NSwxMlpcIiBmaWxsPVwiY3VycmVudENvbG9yXCI+PC9wYXRoPjwvZz48L3N2Zz4nO1xuICByZWFkb25seSBwcmVmaXggPSAnPHNwYW4gY2xhc3M9XCJzci1vbmx5XCI+UMOhZ2luYSZuYnNwOzwvc3Bhbj4nO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jdXJyZW50UGFnZSA9PT0gbnVsbCB8fCB0aGlzLmN1cnJlbnRQYWdlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuY3VycmVudFBhZ2UgPSAxO1xuICAgIH1cbiAgICB0aGlzLmNoZWNrQ2hhbmdlcygpO1xuICAgIHRoaXMuY2xhc3Nlc0NvbnRhaW5lciA9IHRoaXMuY2xhc3Nlc0NvbnRhaW5lciA/IHRoaXMuY2xhc3Nlc0NvbnRhaW5lciArPSAnIGxnOmZsZXggbGc6ZmxleC13cmFwIGxnOml0ZW1zLWNlbnRlciBsZzpnYXAtYmFzZScgOiAnbGc6ZmxleCBsZzpmbGV4LXdyYXAgbGc6aXRlbXMtY2VudGVyIGxnOmdhcC1iYXNlJ1xuICAgIHRoaXMuaWQgPSB0aGlzLmlkID8gdGhpcy5pZCA6IG51bGxcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5saXN0Ym94SXRlbXNQZXJQYWdlKSB7XG4gICAgICB0aGlzLnNldHVwSXRlbXNQZXJQYWdlKCk7XG4gICAgICB0aGlzLmxpc3Rib3hJdGVtc1BlclBhZ2UuY2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLnNldHVwSXRlbXNQZXJQYWdlKCk7XG4gICAgICB9KVxuICAgIH1cbiAgfVxuXG4gIGNoZWNrQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLm5QYWdlcyA9IE1hdGguY2VpbCh0aGlzLnRvdGFsSXRlbXMgLyB0aGlzLml0ZW1zUGVyUGFnZSk7XG5cbiAgICBpZiAoIXRoaXMuY3VycmVudFBhZ2UgfHwgdGhpcy5jdXJyZW50UGFnZSA8IDEgfHwgdGhpcy5jdXJyZW50UGFnZSA+IHRoaXMublBhZ2VzKSB7XG4gICAgICB0aGlzLmN1cnJlbnRQYWdlID0gMTtcbiAgICAgIHRoaXMuY3VycmVudFBhZ2VDaGFuZ2UuZW1pdCh0aGlzLmN1cnJlbnRQYWdlKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLmZpcnN0VGV4dCkge1xuICAgICAgdGhpcy5maXJzdFRleHQgPSAnUHJpbWVyYSc7XG4gICAgfVxuICAgIGlmICghdGhpcy5wcmV2aW91c1RleHQpIHtcbiAgICAgIHRoaXMucHJldmlvdXNUZXh0ID0gJ0FudGVyaW9yJztcbiAgICB9XG4gICAgaWYgKCF0aGlzLm5leHRUZXh0KSB7XG4gICAgICB0aGlzLm5leHRUZXh0ID0gJ1NpZ3VpZW50ZSc7XG4gICAgfVxuICAgIGlmICghdGhpcy5sYXN0VGV4dCkge1xuICAgICAgdGhpcy5sYXN0VGV4dCA9ICfDmmx0aW1hJztcbiAgICB9XG4gICAgdGhpcy5idWlsZFBhZ2VzKCk7XG4gIH1cblxuICBnZXRTdWZmaXgocGFnZTogbnVtYmVyLCBpc051bWJlciA9IGZhbHNlKTogc3RyaW5nIHtcbiAgICByZXR1cm4gcGFnZSA+PSAwICYmIHBhZ2UgKiB0aGlzLml0ZW1zUGVyUGFnZSA8IHRoaXMudG90YWxJdGVtcyA/XG4gICAgICAoaXNOdW1iZXIgPyBgPHNwYW4gY2xhc3M9XCJzci1vbmx5XCI+OiZuYnNwOyBjb24gbG9zIHJlc3VsdGFkb3MgZGVsICR7cGFnZSAqIHRoaXMuaXRlbXNQZXJQYWdlICsgMX0gYWwgJHt0aGlzLmdldExhc3RJdGVtTnVtYmVyKHBhZ2UpfTwvc3Bhbj5gIDogYDxzcGFuIGNsYXNzPVwic3Itb25seVwiPjombmJzcDtQw6FnaW5hICR7cGFnZSArIDF9IGNvbiBsb3MgcmVzdWx0YWRvcyBkZWwgJHtwYWdlICogdGhpcy5pdGVtc1BlclBhZ2UgKyAxfSBhbCAke3RoaXMuZ2V0TGFzdEl0ZW1OdW1iZXIocGFnZSl9PC9zcGFuPmApXG4gICAgICA6ICcnO1xuICB9XG5cbiAgZ2V0TGFzdEl0ZW1OdW1iZXIocGFnZUluZGV4OiBudW1iZXIpOiBudW1iZXIge1xuICAgIHJldHVybiBNYXRoLm1pbigocGFnZUluZGV4ICsgMSkgKiB0aGlzLml0ZW1zUGVyUGFnZSwgdGhpcy50b3RhbEl0ZW1zKTtcbiAgfVxuXG4gIGJ1aWxkUGFnZXMoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMublBhZ2VzSGlzdG9yeSAhPSB0aGlzLm5QYWdlcykge1xuICAgICAgdGhpcy5uUGFnZXNIaXN0b3J5ID0gdGhpcy5uUGFnZXNcbiAgICAgIGNvbnN0IGl0ZW1MaXN0ID0gW107XG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMublBhZ2VzOyBpKyspIHtcbiAgICAgICAgY29uc3QgaXRlbSA9IHtcbiAgICAgICAgICB2YWx1ZTogaSArIDEsXG4gICAgICAgICAgdGV4dDogaSArIDEsXG4gICAgICAgICAgc2VsZWN0ZWQ6ICgoaSArIDEpID09PSB0aGlzLmN1cnJlbnRQYWdlKVxuICAgICAgICB9O1xuICAgICAgICBpdGVtTGlzdC5wdXNoKGl0ZW0pO1xuICAgICAgfVxuICAgICAgdGhpcy52YWx1ZSA9IHRoaXMuY3VycmVudFBhZ2VcbiAgICAgIHRoaXMuaXRlbXMgPSBpdGVtTGlzdDtcbiAgICB9XG4gIH1cblxuICBnZXRJZFByZWZpeCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmlkUHJlZml4ID8gdGhpcy5pZFByZWZpeCA6ICdwYWdpbmF0aW9uLWl0ZW0nO1xuICB9XG5cbiAgZ2V0QnV0dG9uSWQoaW5kZXg6IG51bWJlcik6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0SWRQcmVmaXgoKSArICctJyArICsraW5kZXg7XG4gIH1cblxuICBjaGFuZ2VQYWdlKGN1cnJlbnQ6IG51bWJlcik6IHZvaWQge1xuICAgIGNvbnN0IGhhc1BhZ2VDaGFuZ2UgPSBjdXJyZW50ICE9PSB0aGlzLmN1cnJlbnRQYWdlO1xuICAgIHRoaXMuY3VycmVudFBhZ2UgPSBjdXJyZW50O1xuICAgIGlmIChoYXNQYWdlQ2hhbmdlKSB7XG4gICAgICB0aGlzLmN1cnJlbnRQYWdlQ2hhbmdlLmVtaXQodGhpcy5jdXJyZW50UGFnZSk7XG4gICAgfVxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5pdGVtcy5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgaXRlbSA9IHRoaXMuaXRlbXNbaV07XG4gICAgICBpdGVtLnNlbGVjdGVkID0gKChpICsgMSkgPT09IHRoaXMuY3VycmVudFBhZ2UpO1xuICAgICAgdGhpcy52YWx1ZSA9IHRoaXMuY3VycmVudFBhZ2VcbiAgICB9XG4gIH1cblxuICBwcmV2aW91cygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jdXJyZW50UGFnZSA+IDEpIHtcbiAgICAgIHRoaXMuY2hhbmdlUGFnZSh0aGlzLmN1cnJlbnRQYWdlIC0gMSk7XG4gICAgfVxuICB9XG5cbiAgbmV4dCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jdXJyZW50UGFnZSA8IHRoaXMublBhZ2VzKSB7XG4gICAgICB0aGlzLmNoYW5nZVBhZ2UodGhpcy5jdXJyZW50UGFnZSArIDEpO1xuICAgIH1cbiAgfVxuXG4gIGZpcnN0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmN1cnJlbnRQYWdlID4gMSkge1xuICAgICAgdGhpcy5jaGFuZ2VQYWdlKDEpO1xuICAgIH1cbiAgfVxuXG4gIGxhc3QoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuY3VycmVudFBhZ2UgPCB0aGlzLm5QYWdlcykge1xuICAgICAgdGhpcy5jaGFuZ2VQYWdlKHRoaXMublBhZ2VzKTtcbiAgICB9XG4gIH1cblxuICBnZXRMaXN0Ym94TGFiZWwoKTogUGFnaW5hdGlvbkxpc3Rib3hMYWJlbENvbXBvbmVudCB7XG4gICAgcmV0dXJuIHRoaXMubGlzdGJveExhYmVsID8gdGhpcy5saXN0Ym94TGFiZWwgOiBudWxsO1xuICB9XG5cbiAgY2hhbmdlSXRlbXNQZXJQYWdlKGV2ZW50OiBhbnkpIHtcbiAgICBpZiAoZXZlbnQpIHtcbiAgICAgIGxldCBuZXdWYWx1ZSA9IGV2ZW50O1xuICAgICAgdGhpcy5pdGVtc1BlclBhZ2UgPSBuZXdWYWx1ZTtcbiAgICAgIHRoaXMuY2hlY2tDaGFuZ2VzKCk7XG4gICAgICB0aGlzLml0ZW1zUGVyUGFnZUNoYW5nZS5lbWl0KG5ld1ZhbHVlKTtcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZUFjdGl2ZUl0ZW1DaGFuZ2UoZXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQgIT09IG51bGwgJiYgZXZlbnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5jaGFuZ2VQYWdlKGV2ZW50KTtcbiAgICB9XG4gIH1cblxuICBzZXR1cEl0ZW1zUGVyUGFnZSgpOiB2b2lkIHtcbiAgICB0aGlzLml0ZW1zUGVyUGFnZUxpc3QgPSB0aGlzLmxpc3Rib3hJdGVtc1BlclBhZ2UgJiYgdGhpcy5saXN0Ym94SXRlbXNQZXJQYWdlLmxlbmd0aCA+IDAgPyB0aGlzLmxpc3Rib3hJdGVtc1BlclBhZ2UudG9BcnJheSgpIDogbnVsbDtcbiAgICBpZiAodGhpcy5pdGVtc1BlclBhZ2VMaXN0KSB7XG4gICAgICBjb25zdCBjdXJyZW50SXRlbXNQZXJQYWdlSXRlbSA9IHRoaXMuaXRlbXNQZXJQYWdlTGlzdC5maW5kKGkgPT4gaS52YWx1ZSA9PT0gdGhpcy5pdGVtc1BlclBhZ2UpO1xuICAgICAgaWYgKGN1cnJlbnRJdGVtc1BlclBhZ2VJdGVtKSB7XG4gICAgICAgIGN1cnJlbnRJdGVtc1BlclBhZ2VJdGVtLnNlbGVjdGVkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGhhc0FjdGl2ZSA9IHRoaXMuaXRlbXNQZXJQYWdlTGlzdC5maW5kKGkgPT4gaS5zZWxlY3RlZCk7XG4gICAgICBpZiAoIWhhc0FjdGl2ZSAmJiB0aGlzLml0ZW1zUGVyUGFnZUxpc3QubGVuZ3RoID4gMCkge1xuICAgICAgICB0aGlzLml0ZW1zUGVyUGFnZUxpc3RbMF0uc2VsZWN0ZWQgPSB0cnVlO1xuICAgICAgfVxuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiaGFzU2VsZWN0XCI+XG4gIDxwIFthdHRyLmlkXT1cImlkICsgJy1sYWJlbCdcIiBjbGFzcz1cInctZnVsbCBtYi14cyB0ZXh0LXNtIHRleHQtbmV1dHJhbC1kYXJrXCI+XG4gICAgU2VsZWNjaW9uYSBwYXJhIGNhcmdhciBkYXRvcyBhdXRvbcOhdGljYW1lbnRlXG4gIDwvcD5cbiAgPG5hdiBbY2xhc3NdPVwiWydmbGV4IGZsZXgtd3JhcCBpdGVtcy1jZW50ZXIgZmxleC0xIG1iLWJhc2UgbGc6bWItMCB0ZXh0LXNtJywgY2xhc3Nlc10gfCBtYWtlSHRtbExpc3RcIlxuICAgICAgICBbZGVzeUFwcEFjY2Vzc2liaWxpdHldPVwidGhpc1wiPlxuICAgIDxkZXN5LWJ1dHRvbiAqbmdJZj1cInNob3dGaXJzdFwiIChjbGlja0V2ZW50KT1cImZpcnN0KClcIiBbaWRdPVwiZ2V0SWRQcmVmaXgoKSArICctZmlyc3QnXCJcbiAgICAgICAgICAgICAgICAgIFtodG1sXT1cImZpcnN0SWNvbiArIHByZWZpeCArIGZpcnN0VGV4dCArIGdldFN1ZmZpeChjdXJyZW50UGFnZSAtIDIpXCIgW2Rpc2FibGVkXT1cImN1cnJlbnRQYWdlID09PSAxIHx8ICFoYXNGaXJzdFwiXG4gICAgICAgICAgICAgICAgICBjbGFzc2VzPVwiYy1idXR0b24tLXNtIGMtYnV0dG9uLS10cmFuc3BhcmVudCBtci14c1wiPjwvZGVzeS1idXR0b24+XG4gICAgPGRlc3ktYnV0dG9uICpuZ0lmPVwic2hvd1ByZXZpb3VzXCIgKGNsaWNrRXZlbnQpPVwicHJldmlvdXMoKVwiIFtpZF09XCJnZXRJZFByZWZpeCgpICsgJy1wcmV2aW91cydcIlxuICAgICAgICAgICAgICAgICAgW2h0bWxdPVwicHJldmlvdXNJY29uICsgcHJlZml4ICsgcHJldmlvdXNUZXh0ICsgZ2V0U3VmZml4KGN1cnJlbnRQYWdlIC0gMilcIiBbZGlzYWJsZWRdPVwiY3VycmVudFBhZ2UgPT09IDEgfHwgIWhhc1ByZXZpb3VzXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzZXM9XCJjLWJ1dHRvbi0tc20gYy1idXR0b24tLXRyYW5zcGFyZW50IG1yLXhzXCI+PC9kZXN5LWJ1dHRvbj5cbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXdyYXAgaXRlbXMtY2VudGVyIHBsLXNtXCJcbiAgICAgICAgICBbbmdDbGFzc109XCJ7J3ctZnVsbCBsZzp3LWF1dG8nOiBzaG93Rmlyc3QgfHwgc2hvd0xhc3R9XCI+XG4gICAgICA8cCAqbmdJZj1cInNob3dGaXJzdCB8fCBzaG93TGFzdFwiIGNsYXNzPVwibGc6aGlkZGVuIG1yLXhzIHRleHQtc20gdGV4dC1uZXV0cmFsLWRhcmtcIj5Qw6FnaW5hIGFjdHVhbDo8L3A+XG4gICAgICAgICAgPGRlc3ktc2VsZWN0IFtjbGFzc2VzXT1cIidjLXNlbGVjdC0tc20gYy1zZWxlY3QtLXRyYW5zcGFyZW50J1wiIFxuICAgICAgICAgICAgICAgICBbZm9ybUdyb3VwQ2xhc3Nlc109XCInLW10LXNtIG1iLTAgbXIteHMnXCIgXG4gICAgICAgICAgICAgICAgIFtpZF09XCJpZCArICctaXRlbXMtbGlzdGJveC0nXCJcbiAgICAgICAgICAgICAgICAgW25hbWVdPVwiaWQgKyAnaXRlbXMtbGlzdGJveC0nXCJcbiAgICAgICAgICAgICAgICAgW2Rlc2NyaWJlZEJ5XT1cImlkICsgJy1sYWJlbCdcIlxuICAgICAgICAgICAgICAgICBbaXRlbXNdPVwiaXRlbXNcIlxuICAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJ2YWx1ZVwiXG4gICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cImhhbmRsZUFjdGl2ZUl0ZW1DaGFuZ2UoJGV2ZW50KVwiPlxuICAgICAgICAgICAgIDxkZXN5LWxhYmVsIFtjbGFzc2VzXT1cIidzci1vbmx5J1wiPlxuICAgICAgICAgICAgICAgIFNlbGVjY2lvbmEgdW5hIHDDoWdpbmFcbiAgICAgICAgICAgICA8L2Rlc3ktbGFiZWw+XG4gICAgICAgICAgPC9kZXN5LXNlbGVjdD5cbiAgICA8L2Rpdj5cbiAgICA8ZGVzeS1idXR0b24gKm5nSWY9XCJzaG93TmV4dFwiIChjbGlja0V2ZW50KT1cIm5leHQoKVwiIFtpZF09XCJnZXRJZFByZWZpeCgpICsgJy1uZXh0J1wiXG4gICAgICAgICAgICAgICAgICBbaHRtbF09XCJwcmVmaXggKyBuZXh0VGV4dCArIGdldFN1ZmZpeChjdXJyZW50UGFnZSkgKyBuZXh0SWNvblwiIFtkaXNhYmxlZF09XCJjdXJyZW50UGFnZSA9PT0gblBhZ2VzIHx8ICFoYXNOZXh0XCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzZXM9XCJjLWJ1dHRvbi0tc20gYy1idXR0b24tLXRyYW5zcGFyZW50IG1yLXhzXCI+PC9kZXN5LWJ1dHRvbj5cbiAgICA8ZGVzeS1idXR0b24gKm5nSWY9XCJzaG93TGFzdFwiIChjbGlja0V2ZW50KT1cImxhc3QoKVwiIFtpZF09XCJnZXRJZFByZWZpeCgpICsgJy1sYXN0J1wiXG4gICAgICAgICAgICAgICAgICBbaHRtbF09XCJwcmVmaXggKyBsYXN0VGV4dCArIGdldFN1ZmZpeChjdXJyZW50UGFnZSkgKyBsYXN0SWNvblwiIFtkaXNhYmxlZF09XCJjdXJyZW50UGFnZSA9PT0gblBhZ2VzIHx8ICFoYXNMYXN0XCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzZXM9XCJjLWJ1dHRvbi0tc20gYy1idXR0b24tLXRyYW5zcGFyZW50IG1yLXhzXCI+PC9kZXN5LWJ1dHRvbj5cbiAgPC9uYXY+XG48L25nLWNvbnRhaW5lcj5cbjxuZy1jb250YWluZXIgKm5nSWY9XCIhaGFzU2VsZWN0XCI+XG4gIDxuYXYgW2NsYXNzXT1cIlsnZmxleCBmbGV4LXdyYXAgaXRlbXMtY2VudGVyIGZsZXgtMSBtYi1iYXNlIGxnOm1iLTAgdGV4dC1zbScsIGNsYXNzZXNdIHwgbWFrZUh0bWxMaXN0XCJcbiAgICAgICAgW2Rlc3lBcHBBY2Nlc3NpYmlsaXR5XT1cInRoaXNcIj5cbiAgICA8dWwgY2xhc3M9XCJmbGV4IGZsZXgtd3JhcFwiPlxuICAgICAgPGxpICpuZ0Zvcj1cImxldCBpdGVtIG9mIGl0ZW1zOyBpbmRleCBhcyBpXCI+XG4gICAgICAgIDxkZXN5LWJ1dHRvbiAqbmdJZj1cIml0ZW0uYWN0aXZlXCIgW2lkXT1cImdldEJ1dHRvbklkKGkpXCJcbiAgICAgICAgICAgICAgICAgICAgICBbaHRtbF09XCInPHN0cm9uZz4nICsgcHJlZml4ICsgKGkgKyAxKSArIGdldFN1ZmZpeChpLHRydWUpICsgJzwvc3Ryb25nPidcIlxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzZXM9XCJjLWJ1dHRvbi0tcHJpbWFyeSBjLWJ1dHRvbi0tZGlzYWJsZWQgbWItc20gbXItc21cIlxuICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJ0cnVlXCIgYXJpYUN1cnJlbnQ9XCJwYWdlXCIgdGFiaW5kZXg9XCItMVwiPjwvZGVzeS1idXR0b24+XG4gICAgICAgIDxkZXN5LWJ1dHRvbiAqbmdJZj1cIiFpdGVtLmFjdGl2ZVwiIFtpZF09XCJnZXRCdXR0b25JZChpKVwiXG4gICAgICAgICAgICAgICAgICAgICAgW2h0bWxdPVwicHJlZml4ICsgKGkgKyAxKSArIGdldFN1ZmZpeChpLHRydWUpXCJcbiAgICAgICAgICAgICAgICAgICAgICAoY2xpY2tFdmVudCk9XCJjaGFuZ2VQYWdlKGkgKyAxKVwiXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3Nlcz1cIm1iLXNtIG1yLXNtXCI+PC9kZXN5LWJ1dHRvbj5cbiAgICAgIDwvbGk+XG4gICAgPC91bD5cbiAgPC9uYXY+XG48L25nLWNvbnRhaW5lcj5cbiAgXG48ZGl2ICpuZ0lmPVwiaGFzU2VsZWN0SXRlbXNQZXJQYWdlXCIgY2xhc3M9XCJibG9jayByZWxhdGl2ZSAtdG9wLXhzIGxnOm1sLWF1dG8gdGV4dC1zbSB0ZXh0LW5ldXRyYWwtZGFya1wiPlxuICAgIDxkZXN5LXNlbGVjdCBbY2xhc3Nlc109XCInYy1zZWxlY3QtLXNtIGMtc2VsZWN0LS10cmFuc3BhcmVudCdcIiBcbiAgICAgICAgICAgICAgICAgW2Zvcm1Hcm91cENsYXNzZXNdPVwiJ2ZsZXggZmxleC13cmFwIHBsYWNlLWl0ZW1zLWJhc2VsaW5lIGdhcC14cyAtbXQtc20gbWItMCBtci14cydcIiBcbiAgICAgICAgICAgICAgICAgW2lkXT1cIidpdGVtcy1saXN0Ym94LScgKyBnZXRJZFByZWZpeCgpXCJcbiAgICAgICAgICAgICAgICAgW25hbWVdPVwiJ2l0ZW1zLWxpc3Rib3gtJyArIGdldElkUHJlZml4KClcIlxuICAgICAgICAgICAgICAgICBbZGVzY3JpYmVkQnldPVwiaWQgKyAnLWxhYmVsJ1wiXG4gICAgICAgICAgICAgICAgIFtpdGVtc109XCJpdGVtc1BlclBhZ2VMaXN0XCJcbiAgICAgICAgICAgICAgICAgW25nTW9kZWxdPVwidmFsdWVQZXJQYWdlXCJcbiAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwiY2hhbmdlSXRlbXNQZXJQYWdlKCRldmVudClcIj5cbiAgICAgIDxkZXN5LWxhYmVsIFtjbGFzc2VzXT1cImxpc3Rib3hMYWJlbCAmJiBsaXN0Ym94TGFiZWwuY2xhc3NlcyA/IGxpc3Rib3hMYWJlbC5jbGFzc2VzIDogJ2lubGluZS1ibG9jayBmbGV4IGFsaWduLW1pZGRsZSBtYi1bMF0nXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsaXN0Ym94TGFiZWxcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpkZXN5Q3VzdG9tSW5uZXJDb250ZW50PVwieyBjb21wb25lbnQ6IGxpc3Rib3hMYWJlbCB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWxpc3Rib3hMYWJlbFwiPlxuICAgICAgICAgIEl0ZW1zIHBvciBww6FnaW5hXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9kZXN5LWxhYmVsPlxuICAgPC9kZXN5LXNlbGVjdD5cbjwvZGl2PlxuXG5cbjxwIFthdHRyLmlkXT1cImlkUHJlZml4ICsgJy1zdGF0dXMnXCIgcm9sZT1cInN0YXR1c1wiIGFyaWEtbGl2ZT1cInBvbGl0ZVwiIGNsYXNzPVwiYmxvY2sgcmVsYXRpdmUgLXRvcC14cyBsZzptbC1hdXRvIHRleHQtc20gdGV4dC1uZXV0cmFsLWRhcmtcIiAqbmdJZj1cInRvdGFsSXRlbXMgJiYgaXRlbXNQZXJQYWdlXCI+XG4gIDxzcGFuIGNsYXNzPVwic3Itb25seVwiPlBvc2ljacOzbiBkZSBwYWdpbmFjacOzbjogPC9zcGFuPnt7KGN1cnJlbnRQYWdlIC0gMSkgKiBpdGVtc1BlclBhZ2UgKyAxfX0gLSB7e2dldExhc3RJdGVtTnVtYmVyKGN1cnJlbnRQYWdlIC0gMSl9fSBkZSB7e3RvdGFsSXRlbXN9fVxuPC9wPlxuIl19
@@ -1,5 +1,5 @@
1
- import { ContentBaseComponent } from './../../../shared/components/content-base/content-base.component';
2
1
  import { Component, Input } from '@angular/core';
2
+ import { ContentBaseComponent } from './../../../shared/components/content-base/content-base.component';
3
3
  import * as i0 from "@angular/core";
4
4
  export class PaginationItemPerPageComponent extends ContentBaseComponent {
5
5
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PaginationItemPerPageComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
@@ -16,4 +16,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
16
16
  }], value: [{
17
17
  type: Input
18
18
  }] } });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi1pdGVtLXBlcnBhZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS1wYWdpbmF0aW9uL2NvbXBvbmVudHMvcGFnaW5hdGlvbi1pdGVtLXBlcnBhZ2UvcGFnaW5hdGlvbi1pdGVtLXBlcnBhZ2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtFQUFrRSxDQUFDO0FBQ3hHLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVFqRCxNQUFNLE9BQU8sOEJBQStCLFNBQVEsb0JBQW9COytHQUEzRCw4QkFBOEI7bUdBQTlCLDhCQUE4QiwySUFGL0IsdUVBQXVFOzs0RkFFdEUsOEJBQThCO2tCQUoxQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw4QkFBOEI7b0JBQ3hDLFFBQVEsRUFBRSx1RUFBdUU7aUJBQ2xGOzhCQUVVLE9BQU87c0JBQWYsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb250ZW50QmFzZUNvbXBvbmVudCB9IGZyb20gJy4vLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMvY29udGVudC1iYXNlL2NvbnRlbnQtYmFzZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTGlzdGJveEl0ZW1EYXRhIH0gZnJvbSAnLi4vLi4vLi4vZGVzeS1idXR0b25zL2ludGVyZmFjZXMvbGlzdGJveC1pdGVtLWRhdGEnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Rlc3ktcGFnaW5hdGlvbi1pdGVtLXBlcnBhZ2UnLFxuICB0ZW1wbGF0ZTogJzxuZy10ZW1wbGF0ZSAjY29udGVudFRlbXBsYXRlPjxuZy1jb250ZW50PjwvbmctY29udGVudD48L25nLXRlbXBsYXRlPidcbn0pXG5leHBvcnQgY2xhc3MgUGFnaW5hdGlvbkl0ZW1QZXJQYWdlQ29tcG9uZW50IGV4dGVuZHMgQ29udGVudEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBMaXN0Ym94SXRlbURhdGEge1xuICBASW5wdXQoKSBjbGFzc2VzPzogc3RyaW5nO1xuICBASW5wdXQoKSB2YWx1ZTogbnVtYmVyO1xuICBhY3RpdmU6IGJvb2xlYW47XG59XG4iXX0=
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi1pdGVtLXBlcnBhZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS1wYWdpbmF0aW9uL2NvbXBvbmVudHMvcGFnaW5hdGlvbi1pdGVtLXBlcnBhZ2UvcGFnaW5hdGlvbi1pdGVtLXBlcnBhZ2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtFQUFrRSxDQUFDOztBQU94RyxNQUFNLE9BQU8sOEJBQStCLFNBQVEsb0JBQW9COytHQUEzRCw4QkFBOEI7bUdBQTlCLDhCQUE4QiwySUFGL0IsdUVBQXVFOzs0RkFFdEUsOEJBQThCO2tCQUoxQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw4QkFBOEI7b0JBQ3hDLFFBQVEsRUFBRSx1RUFBdUU7aUJBQ2xGOzhCQUVVLE9BQU87c0JBQWYsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTZWxlY3RJdGVtRGF0YSB9IGZyb20gJy4uLy4uLy4uL2Rlc3ktZm9ybXMvaW50ZXJmYWNlcy9zZWxlY3QtaXRlbS1kYXRhJztcbmltcG9ydCB7IENvbnRlbnRCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9jb250ZW50LWJhc2UvY29udGVudC1iYXNlLmNvbXBvbmVudCc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGVzeS1wYWdpbmF0aW9uLWl0ZW0tcGVycGFnZScsXG4gIHRlbXBsYXRlOiAnPG5nLXRlbXBsYXRlICNjb250ZW50VGVtcGxhdGU+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjwvbmctdGVtcGxhdGU+J1xufSlcbmV4cG9ydCBjbGFzcyBQYWdpbmF0aW9uSXRlbVBlclBhZ2VDb21wb25lbnQgZXh0ZW5kcyBDb250ZW50QmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIFNlbGVjdEl0ZW1EYXRhIHtcbiAgQElucHV0KCkgY2xhc3Nlcz86IHN0cmluZztcbiAgQElucHV0KCkgdmFsdWU6IG51bWJlcjtcbiAgc2VsZWN0ZWQ6IGJvb2xlYW47XG59XG4iXX0=
@@ -1,10 +1,12 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { NgModule } from '@angular/core';
1
3
  import { PaginationItemPerPageComponent } from './components/pagination-item-perpage/pagination-item-perpage.component';
2
4
  import { PaginationListboxLabelComponent } from './components/pagination-listbox-label/pagination-listbox-label.component';
3
- import { NgModule } from '@angular/core';
4
- import { CommonModule } from '@angular/common';
5
- import { SharedModule } from '../shared/shared.module';
6
- import { DesyNavModule } from '../desy-nav/desy-nav.module';
7
5
  import { DesyButtonsModule } from '../desy-buttons/desy-buttons.module';
6
+ import { DesyNavModule } from '../desy-nav/desy-nav.module';
7
+ import { SharedModule } from '../shared/shared.module';
8
+ import { FormsModule } from '@angular/forms';
9
+ import { DesyFormsModule } from '../desy-forms/desy-forms.module';
8
10
  import { PaginationComponent } from './components/pagination/pagination.component';
9
11
  import * as i0 from "@angular/core";
10
12
  export class DesyPaginationModule {
@@ -14,13 +16,17 @@ export class DesyPaginationModule {
14
16
  PaginationItemPerPageComponent], imports: [CommonModule,
15
17
  SharedModule,
16
18
  DesyNavModule,
17
- DesyButtonsModule], exports: [PaginationComponent,
19
+ DesyButtonsModule,
20
+ DesyFormsModule,
21
+ FormsModule], exports: [PaginationComponent,
18
22
  PaginationListboxLabelComponent,
19
23
  PaginationItemPerPageComponent] }); }
20
24
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DesyPaginationModule, imports: [CommonModule,
21
25
  SharedModule,
22
26
  DesyNavModule,
23
- DesyButtonsModule] }); }
27
+ DesyButtonsModule,
28
+ DesyFormsModule,
29
+ FormsModule] }); }
24
30
  }
25
31
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DesyPaginationModule, decorators: [{
26
32
  type: NgModule,
@@ -34,7 +40,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
34
40
  CommonModule,
35
41
  SharedModule,
36
42
  DesyNavModule,
37
- DesyButtonsModule
43
+ DesyButtonsModule,
44
+ DesyFormsModule,
45
+ FormsModule
38
46
  ],
39
47
  exports: [
40
48
  PaginationComponent,
@@ -43,4 +51,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
43
51
  ]
44
52
  }]
45
53
  }] });
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzeS1wYWdpbmF0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktcGFnaW5hdGlvbi9kZXN5LXBhZ2luYXRpb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHdFQUF3RSxDQUFDO0FBQ3hILE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLDBFQUEwRSxDQUFDO0FBQzNILE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFeEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOENBQThDLENBQUM7O0FBcUJuRixNQUFNLE9BQU8sb0JBQW9COytHQUFwQixvQkFBb0I7Z0hBQXBCLG9CQUFvQixpQkFoQjdCLG1CQUFtQjtZQUNuQiwrQkFBK0I7WUFDL0IsOEJBQThCLGFBRzlCLFlBQVk7WUFDWixZQUFZO1lBQ1osYUFBYTtZQUNiLGlCQUFpQixhQUdqQixtQkFBbUI7WUFDbkIsK0JBQStCO1lBQy9CLDhCQUE4QjtnSEFHckIsb0JBQW9CLFlBWDdCLFlBQVk7WUFDWixZQUFZO1lBQ1osYUFBYTtZQUNiLGlCQUFpQjs7NEZBUVIsb0JBQW9CO2tCQWxCaEMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osbUJBQW1CO3dCQUNuQiwrQkFBK0I7d0JBQy9CLDhCQUE4QjtxQkFDL0I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osWUFBWTt3QkFDWixhQUFhO3dCQUNiLGlCQUFpQjtxQkFDbEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG1CQUFtQjt3QkFDbkIsK0JBQStCO3dCQUMvQiw4QkFBOEI7cUJBQy9CO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGFnaW5hdGlvbkl0ZW1QZXJQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3BhZ2luYXRpb24taXRlbS1wZXJwYWdlL3BhZ2luYXRpb24taXRlbS1wZXJwYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQYWdpbmF0aW9uTGlzdGJveExhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3BhZ2luYXRpb24tbGlzdGJveC1sYWJlbC9wYWdpbmF0aW9uLWxpc3Rib3gtbGFiZWwuY29tcG9uZW50JztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQgeyBTaGFyZWRNb2R1bGUgfSBmcm9tICcuLi9zaGFyZWQvc2hhcmVkLm1vZHVsZSc7XG5pbXBvcnQgeyBEZXN5TmF2TW9kdWxlIH0gZnJvbSAnLi4vZGVzeS1uYXYvZGVzeS1uYXYubW9kdWxlJztcbmltcG9ydCB7IERlc3lCdXR0b25zTW9kdWxlIH0gZnJvbSAnLi4vZGVzeS1idXR0b25zL2Rlc3ktYnV0dG9ucy5tb2R1bGUnO1xuXG5pbXBvcnQgeyBQYWdpbmF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5jb21wb25lbnQnO1xuXG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFBhZ2luYXRpb25Db21wb25lbnQsIFxuICAgIFBhZ2luYXRpb25MaXN0Ym94TGFiZWxDb21wb25lbnQsXG4gICAgUGFnaW5hdGlvbkl0ZW1QZXJQYWdlQ29tcG9uZW50XG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgU2hhcmVkTW9kdWxlLFxuICAgIERlc3lOYXZNb2R1bGUsXG4gICAgRGVzeUJ1dHRvbnNNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFBhZ2luYXRpb25Db21wb25lbnQsIFxuICAgIFBhZ2luYXRpb25MaXN0Ym94TGFiZWxDb21wb25lbnQsXG4gICAgUGFnaW5hdGlvbkl0ZW1QZXJQYWdlQ29tcG9uZW50XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRGVzeVBhZ2luYXRpb25Nb2R1bGUgeyB9XG4iXX0=
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzeS1wYWdpbmF0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktcGFnaW5hdGlvbi9kZXN5LXBhZ2luYXRpb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHdFQUF3RSxDQUFDO0FBQ3hILE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLDBFQUEwRSxDQUFDO0FBRTNILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNsRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQzs7QUF1Qm5GLE1BQU0sT0FBTyxvQkFBb0I7K0dBQXBCLG9CQUFvQjtnSEFBcEIsb0JBQW9CLGlCQWxCN0IsbUJBQW1CO1lBQ25CLCtCQUErQjtZQUMvQiw4QkFBOEIsYUFHOUIsWUFBWTtZQUNaLFlBQVk7WUFDWixhQUFhO1lBQ2IsaUJBQWlCO1lBQ2pCLGVBQWU7WUFDZixXQUFXLGFBR1gsbUJBQW1CO1lBQ25CLCtCQUErQjtZQUMvQiw4QkFBOEI7Z0hBR3JCLG9CQUFvQixZQWI3QixZQUFZO1lBQ1osWUFBWTtZQUNaLGFBQWE7WUFDYixpQkFBaUI7WUFDakIsZUFBZTtZQUNmLFdBQVc7OzRGQVFGLG9CQUFvQjtrQkFwQmhDLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLG1CQUFtQjt3QkFDbkIsK0JBQStCO3dCQUMvQiw4QkFBOEI7cUJBQy9CO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixpQkFBaUI7d0JBQ2pCLGVBQWU7d0JBQ2YsV0FBVztxQkFDWjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsbUJBQW1CO3dCQUNuQiwrQkFBK0I7d0JBQy9CLDhCQUE4QjtxQkFDL0I7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBhZ2luYXRpb25JdGVtUGVyUGFnZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wYWdpbmF0aW9uLWl0ZW0tcGVycGFnZS9wYWdpbmF0aW9uLWl0ZW0tcGVycGFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGFnaW5hdGlvbkxpc3Rib3hMYWJlbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wYWdpbmF0aW9uLWxpc3Rib3gtbGFiZWwvcGFnaW5hdGlvbi1saXN0Ym94LWxhYmVsLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IERlc3lCdXR0b25zTW9kdWxlIH0gZnJvbSAnLi4vZGVzeS1idXR0b25zL2Rlc3ktYnV0dG9ucy5tb2R1bGUnO1xuaW1wb3J0IHsgRGVzeU5hdk1vZHVsZSB9IGZyb20gJy4uL2Rlc3ktbmF2L2Rlc3ktbmF2Lm1vZHVsZSc7XG5pbXBvcnQgeyBTaGFyZWRNb2R1bGUgfSBmcm9tICcuLi9zaGFyZWQvc2hhcmVkLm1vZHVsZSc7XG5cbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRGVzeUZvcm1zTW9kdWxlIH0gZnJvbSAnLi4vZGVzeS1mb3Jtcy9kZXN5LWZvcm1zLm1vZHVsZSc7XG5pbXBvcnQgeyBQYWdpbmF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5jb21wb25lbnQnO1xuXG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFBhZ2luYXRpb25Db21wb25lbnQsIFxuICAgIFBhZ2luYXRpb25MaXN0Ym94TGFiZWxDb21wb25lbnQsXG4gICAgUGFnaW5hdGlvbkl0ZW1QZXJQYWdlQ29tcG9uZW50XG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgU2hhcmVkTW9kdWxlLFxuICAgIERlc3lOYXZNb2R1bGUsXG4gICAgRGVzeUJ1dHRvbnNNb2R1bGUsXG4gICAgRGVzeUZvcm1zTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBQYWdpbmF0aW9uQ29tcG9uZW50LCBcbiAgICBQYWdpbmF0aW9uTGlzdGJveExhYmVsQ29tcG9uZW50LFxuICAgIFBhZ2luYXRpb25JdGVtUGVyUGFnZUNvbXBvbmVudFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIERlc3lQYWdpbmF0aW9uTW9kdWxlIHsgfVxuIl19