@gravitee/ui-particles-angular 12.22.2 → 13.0.0-renovate-angular-7bd3515

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 (127) hide show
  1. package/README.md +1 -1
  2. package/esm2022/gio-asciidoctor/gio-asciidoctor.component.mjs +3 -3
  3. package/esm2022/gio-asciidoctor/gio-asciidoctor.module.mjs +4 -4
  4. package/esm2022/gio-asciidoctor/gio-asciidoctor.service.mjs +3 -3
  5. package/esm2022/lib/gio-avatar/gio-avatar.component.mjs +3 -3
  6. package/esm2022/lib/gio-avatar/gio-avatar.module.mjs +4 -4
  7. package/esm2022/lib/gio-banner/gio-banner.component.mjs +21 -21
  8. package/esm2022/lib/gio-banner/gio-banner.module.mjs +4 -4
  9. package/esm2022/lib/gio-breadcrumb/gio-breadcrumb-item.directive.mjs +3 -3
  10. package/esm2022/lib/gio-breadcrumb/gio-breadcrumb.component.mjs +3 -3
  11. package/esm2022/lib/gio-breadcrumb/gio-breadcrumb.module.mjs +4 -4
  12. package/esm2022/lib/gio-card-empty-state/gio-card-empty-state.component.mjs +3 -3
  13. package/esm2022/lib/gio-card-empty-state/gio-card-empty-state.module.mjs +4 -4
  14. package/esm2022/lib/gio-clipboard/gio-clipboard-copy-icon.component.mjs +3 -3
  15. package/esm2022/lib/gio-clipboard/gio-clipboard-copy-wrapper.component.mjs +3 -3
  16. package/esm2022/lib/gio-clipboard/gio-clipboard.base.component.mjs +3 -3
  17. package/esm2022/lib/gio-clipboard/gio-clipboard.module.mjs +4 -4
  18. package/esm2022/lib/gio-confirm-and-validate-dialog/gio-confirm-and-validate-dialog.component.mjs +3 -3
  19. package/esm2022/lib/gio-confirm-and-validate-dialog/gio-confirm-and-validate-dialog.module.mjs +4 -4
  20. package/esm2022/lib/gio-confirm-dialog/gio-confirm-dialog.component.mjs +3 -3
  21. package/esm2022/lib/gio-confirm-dialog/gio-confirm-dialog.module.mjs +4 -4
  22. package/esm2022/lib/gio-form-cron/gio-form-cron-hint.component.mjs +3 -3
  23. package/esm2022/lib/gio-form-cron/gio-form-cron-label.component.mjs +3 -3
  24. package/esm2022/lib/gio-form-cron/gio-form-cron.component.mjs +6 -6
  25. package/esm2022/lib/gio-form-cron/gio-form-cron.module.mjs +4 -4
  26. package/esm2022/lib/gio-form-file-picker/gio-form-file-picker-add-button/gio-form-file-picker-add-button.component.mjs +3 -3
  27. package/esm2022/lib/gio-form-file-picker/gio-form-file-picker-empty/gio-form-file-picker-empty.component.mjs +3 -3
  28. package/esm2022/lib/gio-form-file-picker/gio-form-file-picker-label/gio-form-file-picker-label.component.mjs +3 -3
  29. package/esm2022/lib/gio-form-file-picker/gio-form-file-picker.component.mjs +3 -3
  30. package/esm2022/lib/gio-form-file-picker/gio-form-file-picker.module.mjs +4 -4
  31. package/esm2022/lib/gio-form-focus-first-invalid/gio-form-focus-first-invalid-ignore.directive.mjs +3 -3
  32. package/esm2022/lib/gio-form-focus-first-invalid/gio-form-focus-first-invalid.directive.mjs +9 -9
  33. package/esm2022/lib/gio-form-focus-first-invalid/gio-form-focus-first-invalid.module.mjs +4 -4
  34. package/esm2022/lib/gio-form-headers/gio-form-headers-label.component.mjs +3 -3
  35. package/esm2022/lib/gio-form-headers/gio-form-headers.component.mjs +3 -3
  36. package/esm2022/lib/gio-form-headers/gio-form-headers.module.mjs +4 -4
  37. package/esm2022/lib/gio-form-json-schema/gio-form-json-schema.component.mjs +3 -3
  38. package/esm2022/lib/gio-form-json-schema/gio-form-json-schema.module.mjs +4 -4
  39. package/esm2022/lib/gio-form-json-schema/gio-formly-json-schema.service.mjs +3 -3
  40. package/esm2022/lib/gio-form-json-schema/type-component/array-type.component.mjs +3 -3
  41. package/esm2022/lib/gio-form-json-schema/type-component/code-editor-type.component.mjs +3 -3
  42. package/esm2022/lib/gio-form-json-schema/type-component/cron-type.component.mjs +3 -3
  43. package/esm2022/lib/gio-form-json-schema/type-component/headers-type.component.mjs +3 -3
  44. package/esm2022/lib/gio-form-json-schema/type-component/multischema-type.component.mjs +3 -3
  45. package/esm2022/lib/gio-form-json-schema/type-component/null-type.component.mjs +3 -3
  46. package/esm2022/lib/gio-form-json-schema/type-component/object-type.component.mjs +3 -3
  47. package/esm2022/lib/gio-form-json-schema/type-component/toggle-type.component.mjs +4 -4
  48. package/esm2022/lib/gio-form-json-schema/wrappers/gio-banner-wrapper.component.mjs +3 -3
  49. package/esm2022/lib/gio-form-json-schema/wrappers/gio-password-eye.component.mjs +3 -3
  50. package/esm2022/lib/gio-form-selection-inline/gio-form-selection-inline-card-content/gio-form-selection-inline-card-content.component.mjs +9 -9
  51. package/esm2022/lib/gio-form-selection-inline/gio-form-selection-inline-card.component.mjs +3 -3
  52. package/esm2022/lib/gio-form-selection-inline/gio-form-selection-inline.component.mjs +3 -3
  53. package/esm2022/lib/gio-form-selection-inline/gio-form-selection-inline.module.mjs +4 -4
  54. package/esm2022/lib/gio-form-slide-toggle/gio-form-label.directive.mjs +9 -9
  55. package/esm2022/lib/gio-form-slide-toggle/gio-form-slide-toggle.component.mjs +3 -3
  56. package/esm2022/lib/gio-form-slide-toggle/gio-form-slide-toggle.module.mjs +4 -4
  57. package/esm2022/lib/gio-form-tags-input/gio-form-tags-input.component.mjs +3 -3
  58. package/esm2022/lib/gio-form-tags-input/gio-form-tags-input.module.mjs +4 -4
  59. package/esm2022/lib/gio-icons/gio-icons.module.mjs +4 -4
  60. package/esm2022/lib/gio-license/gio-license-dialog/gio-license-dialog.component.mjs +3 -3
  61. package/esm2022/lib/gio-license/gio-license-dialog/gio-license-dialog.module.mjs +4 -4
  62. package/esm2022/lib/gio-license/gio-license.directive.mjs +3 -3
  63. package/esm2022/lib/gio-license/gio-license.module.mjs +4 -4
  64. package/esm2022/lib/gio-license/gio-license.service.mjs +3 -3
  65. package/esm2022/lib/gio-license/gio-license.testing.module.mjs +4 -4
  66. package/esm2022/lib/gio-license-expiration-notification/gio-license-expiration-notification.component.mjs +3 -3
  67. package/esm2022/lib/gio-license-expiration-notification/gio-license-expiration-notification.module.mjs +4 -4
  68. package/esm2022/lib/gio-loader/gio-loader.component.mjs +3 -3
  69. package/esm2022/lib/gio-loader/gio-loader.module.mjs +4 -4
  70. package/esm2022/lib/gio-mat-config/gio-mat-config.module.mjs +4 -4
  71. package/esm2022/lib/gio-monaco-editor/gio-monaco-editor-form-field.directive.mjs +3 -3
  72. package/esm2022/lib/gio-monaco-editor/gio-monaco-editor.component.mjs +3 -3
  73. package/esm2022/lib/gio-monaco-editor/gio-monaco-editor.module.mjs +4 -4
  74. package/esm2022/lib/gio-monaco-editor/gio-monaco-editor.testing.component.mjs +3 -3
  75. package/esm2022/lib/gio-monaco-editor/services/gio-language-el.service.mjs +3 -3
  76. package/esm2022/lib/gio-monaco-editor/services/gio-language-json.service.mjs +3 -3
  77. package/esm2022/lib/gio-monaco-editor/services/gio-monaco-editor.service.mjs +3 -3
  78. package/esm2022/lib/gio-pipe/gio.pipe.module.mjs +4 -4
  79. package/esm2022/lib/gio-pipe/safe.pipe.mjs +3 -3
  80. package/esm2022/lib/gio-prismjs/gio-prismjs.service.mjs +3 -3
  81. package/esm2022/lib/gio-save-bar/gio-save-bar.component.mjs +3 -3
  82. package/esm2022/lib/gio-save-bar/gio-save-bar.module.mjs +4 -4
  83. package/esm2022/lib/oem-theme/gio-menu/gio-menu-footer/gio-menu-footer.component.mjs +3 -3
  84. package/esm2022/lib/oem-theme/gio-menu/gio-menu-header/gio-menu-header.component.mjs +3 -3
  85. package/esm2022/lib/oem-theme/gio-menu/gio-menu-item/gio-menu-item.component.mjs +3 -3
  86. package/esm2022/lib/oem-theme/gio-menu/gio-menu-license-expiration-notification/gio-menu-license-expiration-notification.component.mjs +3 -3
  87. package/esm2022/lib/oem-theme/gio-menu/gio-menu-list/gio-menu-list.component.mjs +3 -3
  88. package/esm2022/lib/oem-theme/gio-menu/gio-menu-search/gio-menu-search.component.mjs +3 -3
  89. package/esm2022/lib/oem-theme/gio-menu/gio-menu-search/gio-menu-search.service.mjs +3 -3
  90. package/esm2022/lib/oem-theme/gio-menu/gio-menu-selector/gio-menu-selector.component.mjs +3 -3
  91. package/esm2022/lib/oem-theme/gio-menu/gio-menu.component.mjs +3 -3
  92. package/esm2022/lib/oem-theme/gio-menu/gio-menu.module.mjs +4 -4
  93. package/esm2022/lib/oem-theme/gio-menu/gio-menu.service.mjs +3 -3
  94. package/esm2022/lib/oem-theme/gio-submenu/gio-submenu-group/gio-submenu-group.component.mjs +3 -3
  95. package/esm2022/lib/oem-theme/gio-submenu/gio-submenu-item/gio-submenu-item.component.mjs +3 -3
  96. package/esm2022/lib/oem-theme/gio-submenu/gio-submenu.component.mjs +6 -6
  97. package/esm2022/lib/oem-theme/gio-submenu/gio-submenu.module.mjs +4 -4
  98. package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar-content/gio-top-bar-content.component.mjs +3 -3
  99. package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar-link/gio-top-bar-link.component.mjs +3 -3
  100. package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar-link/gio-top-bar-link.module.mjs +4 -4
  101. package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar-menu/gio-top-bar-menu.component.mjs +3 -3
  102. package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar-menu/gio-top-bar-menu.module.mjs +4 -4
  103. package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar.component.mjs +3 -3
  104. package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar.module.mjs +4 -4
  105. package/esm2022/lib/oem-theme/oem-theme.service.mjs +1 -1
  106. package/fesm2022/gravitee-ui-particles-angular-gio-asciidoctor.mjs +10 -10
  107. package/fesm2022/gravitee-ui-particles-angular.mjs +372 -372
  108. package/fesm2022/gravitee-ui-particles-angular.mjs.map +1 -1
  109. package/lib/gio-form-cron/gio-form-cron.adapter.d.ts +1 -1
  110. package/lib/oem-theme/oem-theme.service.d.ts +2 -12
  111. package/package.json +8 -8
  112. package/src/lib/gio-badge/gio-badge.scss +16 -16
  113. package/src/lib/gio-button-toggle-group/gio-button-toggle-group.scss +6 -6
  114. package/src/lib/gio-description-list/gio-description-list.scss +4 -4
  115. package/src/lib/gio-method-badge/gio-method-badge.scss +22 -22
  116. package/src/lib/gio-table-light/gio-table-light.scss +7 -7
  117. package/src/scss/gio-mat-palettes.scss +31 -31
  118. package/src/scss/gio-mat-theme-variable.scss +20 -20
  119. package/src/scss/gio-oem-palette.scss +1 -1
  120. package/src/scss/mat-override/mat-list.scss +1 -1
  121. package/src/scss/mat-override/mat-option.scss +1 -1
  122. package/src/scss/mat-override/mat-table.scss +1 -1
  123. package/src/scss/theme/color/gio-palettes.stories.scss +14 -14
  124. package/src/scss/theme/color/showcase-color.component.scss +1 -1
  125. package/src/scss/theme/typography/gio-typography.scss +2 -2
  126. package/testing/harnesses/div.harness.d.ts +3 -3
  127. package/testing/harnesses/span.harness.d.ts +3 -3
@@ -26,10 +26,10 @@ export class GioSubmenuItemComponent {
26
26
  this.gioSubmenuItem?.nativeElement.click();
27
27
  }
28
28
  }
29
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioSubmenuItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
30
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: GioSubmenuItemComponent, selector: "gio-submenu-item", inputs: { active: "active", iconRight: "iconRight" }, host: { listeners: { "keydown": "onKeydownHandler($event)" } }, viewQueries: [{ propertyName: "gioSubmenuItem", first: true, predicate: ["gioSubmenuItem"], descendants: true }], ngImport: i0, template: "<!--\n\n Copyright (C) 2022 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div #gioSubmenuItem class=\"gio-submenu-item\" [class.gio-submenu-item__active]=\"active\">\n <span class=\"gio-submenu-item__title\"><ng-content></ng-content></span>\n <mat-icon *ngIf=\"iconRight\" class=\"gio-submenu-item__icon-right\" [svgIcon]=\"iconRight\"></mat-icon>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block}.gio-submenu-item{width:234px;height:36px;flex:none;flex-grow:0;order:2;padding:8px 12px;border-radius:4px;margin:1px 0;cursor:pointer}.gio-submenu-item__active{background:var(--gio-oem-palette--active, #494b61)}.gio-submenu-item__title{width:37px;height:20px;flex:none;flex-grow:0;color:var(--gio-oem-palette--background-contrast, #fff);letter-spacing:.4px}.gio-submenu-item__icon-right{width:20px;height:20px;color:var(--gio-oem-palette--background-contrast, #fff);float:right}:host-context(.gio-submenu-group) .gio-submenu-item{padding:8px 20px}.gio-submenu-item:hover:not(.gio-submenu-item__active){background:color-mix(in srgb,var(--gio-oem-palette--active, #494b61) 50%,transparent);color:var(--gio-oem-palette--active-contrast, #fff)}:host-context(.gio-submenu__light) .gio-submenu-item__active{background:var(--gio-oem-palette--active, #876fec);color:var(--gio-oem-palette--active-contrast, #fff)}:host-context(.gio-submenu__light) .gio-submenu-item:hover:not(.gio-submenu-item__active){background:color-mix(in srgb,var(--gio-oem-palette--active, #876fec) 80%,black);color:var(--gio-oem-palette--active-contrast, #fff)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
29
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioSubmenuItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
30
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: GioSubmenuItemComponent, selector: "gio-submenu-item", inputs: { active: "active", iconRight: "iconRight" }, host: { listeners: { "keydown": "onKeydownHandler($event)" } }, viewQueries: [{ propertyName: "gioSubmenuItem", first: true, predicate: ["gioSubmenuItem"], descendants: true }], ngImport: i0, template: "<!--\n\n Copyright (C) 2022 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div #gioSubmenuItem class=\"gio-submenu-item\" [class.gio-submenu-item__active]=\"active\">\n <span class=\"gio-submenu-item__title\"><ng-content></ng-content></span>\n <mat-icon *ngIf=\"iconRight\" class=\"gio-submenu-item__icon-right\" [svgIcon]=\"iconRight\"></mat-icon>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block}.gio-submenu-item{width:234px;height:36px;flex:none;flex-grow:0;order:2;padding:8px 12px;border-radius:4px;margin:1px 0;cursor:pointer}.gio-submenu-item__active{background:var(--gio-oem-palette--active, #494b61)}.gio-submenu-item__title{width:37px;height:20px;flex:none;flex-grow:0;color:var(--gio-oem-palette--background-contrast, #fff);letter-spacing:.4px}.gio-submenu-item__icon-right{width:20px;height:20px;color:var(--gio-oem-palette--background-contrast, #fff);float:right}:host-context(.gio-submenu-group) .gio-submenu-item{padding:8px 20px}.gio-submenu-item:hover:not(.gio-submenu-item__active){background:color-mix(in srgb,var(--gio-oem-palette--active, #494b61) 50%,transparent);color:var(--gio-oem-palette--active-contrast, #fff)}:host-context(.gio-submenu__light) .gio-submenu-item__active{background:var(--gio-oem-palette--active, #876fec);color:var(--gio-oem-palette--active-contrast, #fff)}:host-context(.gio-submenu__light) .gio-submenu-item:hover:not(.gio-submenu-item__active){background:color-mix(in srgb,var(--gio-oem-palette--active, #876fec) 80%,black);color:var(--gio-oem-palette--active-contrast, #fff)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
31
31
  }
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioSubmenuItemComponent, decorators: [{
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioSubmenuItemComponent, decorators: [{
33
33
  type: Component,
34
34
  args: [{ selector: 'gio-submenu-item', template: "<!--\n\n Copyright (C) 2022 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div #gioSubmenuItem class=\"gio-submenu-item\" [class.gio-submenu-item__active]=\"active\">\n <span class=\"gio-submenu-item__title\"><ng-content></ng-content></span>\n <mat-icon *ngIf=\"iconRight\" class=\"gio-submenu-item__icon-right\" [svgIcon]=\"iconRight\"></mat-icon>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block}.gio-submenu-item{width:234px;height:36px;flex:none;flex-grow:0;order:2;padding:8px 12px;border-radius:4px;margin:1px 0;cursor:pointer}.gio-submenu-item__active{background:var(--gio-oem-palette--active, #494b61)}.gio-submenu-item__title{width:37px;height:20px;flex:none;flex-grow:0;color:var(--gio-oem-palette--background-contrast, #fff);letter-spacing:.4px}.gio-submenu-item__icon-right{width:20px;height:20px;color:var(--gio-oem-palette--background-contrast, #fff);float:right}:host-context(.gio-submenu-group) .gio-submenu-item{padding:8px 20px}.gio-submenu-item:hover:not(.gio-submenu-item__active){background:color-mix(in srgb,var(--gio-oem-palette--active, #494b61) 50%,transparent);color:var(--gio-oem-palette--active-contrast, #fff)}:host-context(.gio-submenu__light) .gio-submenu-item__active{background:var(--gio-oem-palette--active, #876fec);color:var(--gio-oem-palette--active-contrast, #fff)}:host-context(.gio-submenu__light) .gio-submenu-item:hover:not(.gio-submenu-item__active){background:color-mix(in srgb,var(--gio-oem-palette--active, #876fec) 80%,black);color:var(--gio-oem-palette--active-contrast, #fff)}\n"] }]
35
35
  }], propDecorators: { active: [{
@@ -19,10 +19,10 @@ import { delay, filter, map, switchMap, takeUntil, tap } from 'rxjs/operators';
19
19
  import * as i0 from "@angular/core";
20
20
  import * as i1 from "../gio-menu";
21
21
  export class GioSubmenuTitleDirective {
22
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioSubmenuTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
23
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.3", type: GioSubmenuTitleDirective, selector: "[gioSubmenuTitle]", ngImport: i0 }); }
22
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioSubmenuTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
23
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.0", type: GioSubmenuTitleDirective, selector: "[gioSubmenuTitle]", ngImport: i0 }); }
24
24
  }
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioSubmenuTitleDirective, decorators: [{
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioSubmenuTitleDirective, decorators: [{
26
26
  type: Directive,
27
27
  args: [{
28
28
  selector: '[gioSubmenuTitle]',
@@ -89,10 +89,10 @@ export class GioSubmenuComponent {
89
89
  .pipe(filter(reducedAndEscape => reducedAndEscape), tap(() => this.gioMenuService.overlay({ open: false })), delay(100), tap(() => this.overlayOptions.parent?.focus()), takeUntil(this.unsubscribe$))
90
90
  .subscribe();
91
91
  }
92
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioSubmenuComponent, deps: [{ token: i1.GioMenuService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
93
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: GioSubmenuComponent, selector: "gio-submenu", inputs: { theme: "theme", static: "static" }, host: { listeners: { "keydown": "onKeydownHandler($event)" } }, viewQueries: [{ propertyName: "gioSubmenu", first: true, predicate: ["gioSubmenu"], descendants: true }], ngImport: i0, template: "<!--\n\n Copyright (C) 2022 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div\n #gioSubmenu\n class=\"gio-submenu\"\n [class.gio-submenu__loaded]=\"loaded\"\n [class.gio-submenu__reduced]=\"reduced\"\n [class.gio-submenu__overlay]=\"overlayOptions.open\"\n [class.gio-submenu__light]=\"theme === 'light'\"\n (mouseenter)=\"onMouseEnter()\"\n (mouseleave)=\"onMouseLeave()\"\n>\n <div #title class=\"gio-submenu__title\" [class.hide]=\"!title.children.length || reduced\">\n <ng-content select=\"[gioSubmenuTitle]\"></ng-content>\n </div>\n <ng-content></ng-content>\n</div>\n", styles: ["@charset \"UTF-8\";:host{z-index:100}.gio-submenu{display:none;width:266px;height:100%;flex:none;flex-direction:column;flex-grow:0;justify-content:flex-start;padding:16px;background:var(--gio-oem-palette--sub-menu, #100c27)}.gio-submenu__light{background:color-mix(in srgb,var(--gio-oem-palette--active, #876fec) 60%,black)}.gio-submenu__reduced{position:absolute;overflow:auto;border-radius:8px;margin:0 0 0 8px;opacity:0;visibility:hidden}.gio-submenu__loaded{display:flex}.gio-submenu__overlay,.gio-submenu:hover{opacity:1;transition:opacity .15s,visibility .15s;visibility:visible}.gio-submenu__title{padding-bottom:8px;color:var(--gio-oem-palette--background-contrast, #fff)}.gio-submenu .hide{display:none}::ng-deep gio-submenu .gio-submenu__title .mdc-button{color:var(--gio-oem-palette--background-contrast, #fff)}\n"] }); }
92
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioSubmenuComponent, deps: [{ token: i1.GioMenuService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
93
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: GioSubmenuComponent, selector: "gio-submenu", inputs: { theme: "theme", static: "static" }, host: { listeners: { "keydown": "onKeydownHandler($event)" } }, viewQueries: [{ propertyName: "gioSubmenu", first: true, predicate: ["gioSubmenu"], descendants: true }], ngImport: i0, template: "<!--\n\n Copyright (C) 2022 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div\n #gioSubmenu\n class=\"gio-submenu\"\n [class.gio-submenu__loaded]=\"loaded\"\n [class.gio-submenu__reduced]=\"reduced\"\n [class.gio-submenu__overlay]=\"overlayOptions.open\"\n [class.gio-submenu__light]=\"theme === 'light'\"\n (mouseenter)=\"onMouseEnter()\"\n (mouseleave)=\"onMouseLeave()\"\n>\n <div #title class=\"gio-submenu__title\" [class.hide]=\"!title.children.length || reduced\">\n <ng-content select=\"[gioSubmenuTitle]\"></ng-content>\n </div>\n <ng-content></ng-content>\n</div>\n", styles: ["@charset \"UTF-8\";:host{z-index:100}.gio-submenu{display:none;width:266px;height:100%;flex:none;flex-direction:column;flex-grow:0;justify-content:flex-start;padding:16px;background:var(--gio-oem-palette--sub-menu, #100c27)}.gio-submenu__light{background:color-mix(in srgb,var(--gio-oem-palette--active, #876fec) 60%,black)}.gio-submenu__reduced{position:absolute;overflow:auto;border-radius:8px;margin:0 0 0 8px;opacity:0;visibility:hidden}.gio-submenu__loaded{display:flex}.gio-submenu__overlay,.gio-submenu:hover{opacity:1;transition:opacity .15s,visibility .15s;visibility:visible}.gio-submenu__title{padding-bottom:8px;color:var(--gio-oem-palette--background-contrast, #fff)}.gio-submenu .hide{display:none}::ng-deep gio-submenu .gio-submenu__title .mdc-button{color:var(--gio-oem-palette--background-contrast, #fff)}\n"] }); }
94
94
  }
95
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioSubmenuComponent, decorators: [{
95
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioSubmenuComponent, decorators: [{
96
96
  type: Component,
97
97
  args: [{ selector: 'gio-submenu', template: "<!--\n\n Copyright (C) 2022 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div\n #gioSubmenu\n class=\"gio-submenu\"\n [class.gio-submenu__loaded]=\"loaded\"\n [class.gio-submenu__reduced]=\"reduced\"\n [class.gio-submenu__overlay]=\"overlayOptions.open\"\n [class.gio-submenu__light]=\"theme === 'light'\"\n (mouseenter)=\"onMouseEnter()\"\n (mouseleave)=\"onMouseLeave()\"\n>\n <div #title class=\"gio-submenu__title\" [class.hide]=\"!title.children.length || reduced\">\n <ng-content select=\"[gioSubmenuTitle]\"></ng-content>\n </div>\n <ng-content></ng-content>\n</div>\n", styles: ["@charset \"UTF-8\";:host{z-index:100}.gio-submenu{display:none;width:266px;height:100%;flex:none;flex-direction:column;flex-grow:0;justify-content:flex-start;padding:16px;background:var(--gio-oem-palette--sub-menu, #100c27)}.gio-submenu__light{background:color-mix(in srgb,var(--gio-oem-palette--active, #876fec) 60%,black)}.gio-submenu__reduced{position:absolute;overflow:auto;border-radius:8px;margin:0 0 0 8px;opacity:0;visibility:hidden}.gio-submenu__loaded{display:flex}.gio-submenu__overlay,.gio-submenu:hover{opacity:1;transition:opacity .15s,visibility .15s;visibility:visible}.gio-submenu__title{padding-bottom:8px;color:var(--gio-oem-palette--background-contrast, #fff)}.gio-submenu .hide{display:none}::ng-deep gio-submenu .gio-submenu__title .mdc-button{color:var(--gio-oem-palette--background-contrast, #fff)}\n"] }]
98
98
  }], ctorParameters: () => [{ type: i1.GioMenuService }, { type: i0.ChangeDetectorRef }], propDecorators: { theme: [{
@@ -22,11 +22,11 @@ import { GioSubmenuComponent, GioSubmenuTitleDirective } from './gio-submenu.com
22
22
  import { GioSubmenuItemComponent } from './gio-submenu-item/gio-submenu-item.component';
23
23
  import * as i0 from "@angular/core";
24
24
  export class GioSubmenuModule {
25
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioSubmenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
26
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.2.3", ngImport: i0, type: GioSubmenuModule, declarations: [GioSubmenuComponent, GioSubmenuGroupComponent, GioSubmenuItemComponent, GioSubmenuTitleDirective], imports: [CommonModule, MatIconModule, GioIconsModule], exports: [GioSubmenuComponent, GioSubmenuGroupComponent, GioSubmenuItemComponent, GioSubmenuTitleDirective] }); }
27
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioSubmenuModule, imports: [CommonModule, MatIconModule, GioIconsModule] }); }
25
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioSubmenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
26
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.0", ngImport: i0, type: GioSubmenuModule, declarations: [GioSubmenuComponent, GioSubmenuGroupComponent, GioSubmenuItemComponent, GioSubmenuTitleDirective], imports: [CommonModule, MatIconModule, GioIconsModule], exports: [GioSubmenuComponent, GioSubmenuGroupComponent, GioSubmenuItemComponent, GioSubmenuTitleDirective] }); }
27
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioSubmenuModule, imports: [CommonModule, MatIconModule, GioIconsModule] }); }
28
28
  }
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioSubmenuModule, decorators: [{
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioSubmenuModule, decorators: [{
30
30
  type: NgModule,
31
31
  args: [{
32
32
  declarations: [GioSubmenuComponent, GioSubmenuGroupComponent, GioSubmenuItemComponent, GioSubmenuTitleDirective],
@@ -21,10 +21,10 @@ export class GioTopBarContentComponent {
21
21
  this.type = 'am';
22
22
  this.productName = 'Access Management';
23
23
  }
24
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioTopBarContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
25
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: GioTopBarContentComponent, selector: "gio-top-bar-content", inputs: { type: "type", productName: "productName" }, ngImport: i0, template: "<!--\n\n Copyright (C) 2022 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"gio-top-bar-content\" [class]=\"type\">\n <mat-icon [svgIcon]=\"'gio:product-' + type\"></mat-icon>\n <span>{{ productName }}</span>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}.gio-top-bar-content{display:flex;height:36px;align-items:center;padding:8px 12px;border-radius:4px;gap:12px;font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.gio-top-bar-content.am{background:#ec489966;color:#fff}.gio-top-bar-content.apim{background:var(--gio-oem-palette--sub-menu, rgba(0, 111, 185, .5));color:var(--gio-oem-palette--background-contrast, #fff)}.gio-top-bar-content.cockpit,.gio-top-bar-content.cloud{background:#876fec66;color:#fff}.gio-top-bar-content.portal{background:#00c8c866;color:#fff}\n"], dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioTopBarContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
25
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: GioTopBarContentComponent, selector: "gio-top-bar-content", inputs: { type: "type", productName: "productName" }, ngImport: i0, template: "<!--\n\n Copyright (C) 2022 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"gio-top-bar-content\" [class]=\"type\">\n <mat-icon [svgIcon]=\"'gio:product-' + type\"></mat-icon>\n <span>{{ productName }}</span>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}.gio-top-bar-content{display:flex;height:36px;align-items:center;padding:8px 12px;border-radius:4px;gap:12px;font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.gio-top-bar-content.am{background:#ec489966;color:#fff}.gio-top-bar-content.apim{background:var(--gio-oem-palette--sub-menu, rgba(0, 111, 185, .5));color:var(--gio-oem-palette--background-contrast, #fff)}.gio-top-bar-content.cockpit,.gio-top-bar-content.cloud{background:#876fec66;color:#fff}.gio-top-bar-content.portal{background:#00c8c866;color:#fff}\n"], dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
26
26
  }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioTopBarContentComponent, decorators: [{
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioTopBarContentComponent, decorators: [{
28
28
  type: Component,
29
29
  args: [{ selector: 'gio-top-bar-content', template: "<!--\n\n Copyright (C) 2022 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"gio-top-bar-content\" [class]=\"type\">\n <mat-icon [svgIcon]=\"'gio:product-' + type\"></mat-icon>\n <span>{{ productName }}</span>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}.gio-top-bar-content{display:flex;height:36px;align-items:center;padding:8px 12px;border-radius:4px;gap:12px;font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.gio-top-bar-content.am{background:#ec489966;color:#fff}.gio-top-bar-content.apim{background:var(--gio-oem-palette--sub-menu, rgba(0, 111, 185, .5));color:var(--gio-oem-palette--background-contrast, #fff)}.gio-top-bar-content.cockpit,.gio-top-bar-content.cloud{background:#876fec66;color:#fff}.gio-top-bar-content.portal{background:#00c8c866;color:#fff}\n"] }]
30
30
  }], propDecorators: { type: [{
@@ -21,10 +21,10 @@ export class GioTopBarLinkComponent {
21
21
  this.url = '';
22
22
  this.name = '';
23
23
  }
24
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioTopBarLinkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
25
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: GioTopBarLinkComponent, selector: "gio-top-bar-link", inputs: { url: "url", name: "name" }, ngImport: i0, template: "<!--\n\n Copyright (C) 2022 The Gravitee team (http://gravitee.io)\n \n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n \n http://www.apache.org/licenses/LICENSE-2.0\n \n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<a mat-button [href]=\"url\" target=\"_blank\" class=\"gio-top-bar-link\">\n <div class=\"gio-top-bar-link__content\">\n <span>{{ name }}</span>\n <mat-icon svgIcon=\"gio:external-link\"></mat-icon>\n </div>\n</a>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block}.gio-top-bar-link{font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;height:20px;color:var(--gio-oem-palette--background-contrast, #fff);letter-spacing:.4px;text-decoration:none}.gio-top-bar-link__content{display:flex;align-items:center;gap:8px}.gio-top-bar-link__content mat-icon{width:12px}\n"], dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioTopBarLinkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
25
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: GioTopBarLinkComponent, selector: "gio-top-bar-link", inputs: { url: "url", name: "name" }, ngImport: i0, template: "<!--\n\n Copyright (C) 2022 The Gravitee team (http://gravitee.io)\n \n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n \n http://www.apache.org/licenses/LICENSE-2.0\n \n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<a mat-button [href]=\"url\" target=\"_blank\" class=\"gio-top-bar-link\">\n <div class=\"gio-top-bar-link__content\">\n <span>{{ name }}</span>\n <mat-icon svgIcon=\"gio:external-link\"></mat-icon>\n </div>\n</a>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block}.gio-top-bar-link{font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;height:20px;color:var(--gio-oem-palette--background-contrast, #fff);letter-spacing:.4px;text-decoration:none}.gio-top-bar-link__content{display:flex;align-items:center;gap:8px}.gio-top-bar-link__content mat-icon{width:12px}\n"], dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
26
26
  }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioTopBarLinkComponent, decorators: [{
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioTopBarLinkComponent, decorators: [{
28
28
  type: Component,
29
29
  args: [{ selector: 'gio-top-bar-link', template: "<!--\n\n Copyright (C) 2022 The Gravitee team (http://gravitee.io)\n \n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n \n http://www.apache.org/licenses/LICENSE-2.0\n \n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<a mat-button [href]=\"url\" target=\"_blank\" class=\"gio-top-bar-link\">\n <div class=\"gio-top-bar-link__content\">\n <span>{{ name }}</span>\n <mat-icon svgIcon=\"gio:external-link\"></mat-icon>\n </div>\n</a>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:block}.gio-top-bar-link{font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;height:20px;color:var(--gio-oem-palette--background-contrast, #fff);letter-spacing:.4px;text-decoration:none}.gio-top-bar-link__content{display:flex;align-items:center;gap:8px}.gio-top-bar-link__content mat-icon{width:12px}\n"] }]
30
30
  }], propDecorators: { url: [{
@@ -20,11 +20,11 @@ import { GioIconsModule } from '../../../gio-icons/gio-icons.module';
20
20
  import { GioTopBarLinkComponent } from './gio-top-bar-link.component';
21
21
  import * as i0 from "@angular/core";
22
22
  export class GioTopBarLinkModule {
23
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioTopBarLinkModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
24
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.2.3", ngImport: i0, type: GioTopBarLinkModule, declarations: [GioTopBarLinkComponent], imports: [CommonModule, MatIconModule, GioIconsModule], exports: [GioTopBarLinkComponent] }); }
25
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioTopBarLinkModule, imports: [CommonModule, MatIconModule, GioIconsModule] }); }
23
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioTopBarLinkModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
24
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.0", ngImport: i0, type: GioTopBarLinkModule, declarations: [GioTopBarLinkComponent], imports: [CommonModule, MatIconModule, GioIconsModule], exports: [GioTopBarLinkComponent] }); }
25
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioTopBarLinkModule, imports: [CommonModule, MatIconModule, GioIconsModule] }); }
26
26
  }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioTopBarLinkModule, decorators: [{
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioTopBarLinkModule, decorators: [{
28
28
  type: NgModule,
29
29
  args: [{
30
30
  declarations: [GioTopBarLinkComponent],
@@ -16,10 +16,10 @@
16
16
  import { Component } from '@angular/core';
17
17
  import * as i0 from "@angular/core";
18
18
  export class GioTopBarMenuComponent {
19
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioTopBarMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
20
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: GioTopBarMenuComponent, selector: "gio-top-bar-menu", ngImport: i0, template: "<!--\n\n Copyright (C) 2022 The Gravitee team (http://gravitee.io)\n \n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n \n http://www.apache.org/licenses/LICENSE-2.0\n \n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"gio-top-bar-menu\">\n <ng-content></ng-content>\n</div>\n", styles: ["@charset \"UTF-8\";:host{flex-grow:1}.gio-top-bar-menu{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:8px}\n"] }); }
19
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioTopBarMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
20
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: GioTopBarMenuComponent, selector: "gio-top-bar-menu", ngImport: i0, template: "<!--\n\n Copyright (C) 2022 The Gravitee team (http://gravitee.io)\n \n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n \n http://www.apache.org/licenses/LICENSE-2.0\n \n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"gio-top-bar-menu\">\n <ng-content></ng-content>\n</div>\n", styles: ["@charset \"UTF-8\";:host{flex-grow:1}.gio-top-bar-menu{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:8px}\n"] }); }
21
21
  }
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioTopBarMenuComponent, decorators: [{
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioTopBarMenuComponent, decorators: [{
23
23
  type: Component,
24
24
  args: [{ selector: 'gio-top-bar-menu', template: "<!--\n\n Copyright (C) 2022 The Gravitee team (http://gravitee.io)\n \n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n \n http://www.apache.org/licenses/LICENSE-2.0\n \n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"gio-top-bar-menu\">\n <ng-content></ng-content>\n</div>\n", styles: ["@charset \"UTF-8\";:host{flex-grow:1}.gio-top-bar-menu{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:8px}\n"] }]
25
25
  }] });
@@ -18,11 +18,11 @@ import { NgModule } from '@angular/core';
18
18
  import { GioTopBarMenuComponent } from './gio-top-bar-menu.component';
19
19
  import * as i0 from "@angular/core";
20
20
  export class GioTopBarMenuModule {
21
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioTopBarMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
22
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.2.3", ngImport: i0, type: GioTopBarMenuModule, declarations: [GioTopBarMenuComponent], imports: [CommonModule], exports: [GioTopBarMenuComponent] }); }
23
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioTopBarMenuModule, imports: [CommonModule] }); }
21
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioTopBarMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
22
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.0", ngImport: i0, type: GioTopBarMenuModule, declarations: [GioTopBarMenuComponent], imports: [CommonModule], exports: [GioTopBarMenuComponent] }); }
23
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioTopBarMenuModule, imports: [CommonModule] }); }
24
24
  }
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioTopBarMenuModule, decorators: [{
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioTopBarMenuModule, decorators: [{
26
26
  type: NgModule,
27
27
  args: [{
28
28
  declarations: [GioTopBarMenuComponent],
@@ -20,10 +20,10 @@ export class GioTopBarComponent {
20
20
  this.type = 'am';
21
21
  this.productName = '';
22
22
  }
23
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioTopBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
24
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: GioTopBarComponent, selector: "gio-top-bar", inputs: { type: "type", productName: "productName" }, ngImport: i0, template: "<!--\n\n Copyright (C) 2022 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"gio-top-bar\">\n <ng-content></ng-content>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{width:100%}::ng-deep gio-top-bar .mdc-icon-button.mat-mdc-icon-button{width:36px;height:36px;padding:0;border-radius:4px}::ng-deep gio-top-bar .mdc-icon-button.mat-mdc-icon-button:has(.mat-icon){padding:6px}::ng-deep gio-top-bar .mdc-icon-button.mat-mdc-icon-button:hover{background:color-mix(in srgb,var(--gio-oem-palette--active, #494b61) 50%,transparent)}.gio-top-bar{display:flex;align-items:center;padding:16px;border-bottom:1px solid color-mix(in srgb,var(--gio-oem-palette--background, #1c1e39) 75%,var(--gio-oem-palette--background-contrast, #fff));background:var(--gio-oem-palette--background, #1c1e39);color:var(--gio-oem-palette--background-contrast, #fff);gap:18px}\n"] }); }
23
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioTopBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
24
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: GioTopBarComponent, selector: "gio-top-bar", inputs: { type: "type", productName: "productName" }, ngImport: i0, template: "<!--\n\n Copyright (C) 2022 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"gio-top-bar\">\n <ng-content></ng-content>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{width:100%}::ng-deep gio-top-bar .mdc-icon-button.mat-mdc-icon-button{width:36px;height:36px;padding:0;border-radius:4px}::ng-deep gio-top-bar .mdc-icon-button.mat-mdc-icon-button:has(.mat-icon){padding:6px}::ng-deep gio-top-bar .mdc-icon-button.mat-mdc-icon-button:hover{background:color-mix(in srgb,var(--gio-oem-palette--active, #494b61) 50%,transparent)}.gio-top-bar{display:flex;align-items:center;padding:16px;border-bottom:1px solid color-mix(in srgb,var(--gio-oem-palette--background, #1c1e39) 75%,var(--gio-oem-palette--background-contrast, #fff));background:var(--gio-oem-palette--background, #1c1e39);color:var(--gio-oem-palette--background-contrast, #fff);gap:18px}\n"] }); }
25
25
  }
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioTopBarComponent, decorators: [{
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioTopBarComponent, decorators: [{
27
27
  type: Component,
28
28
  args: [{ selector: 'gio-top-bar', template: "<!--\n\n Copyright (C) 2022 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"gio-top-bar\">\n <ng-content></ng-content>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{width:100%}::ng-deep gio-top-bar .mdc-icon-button.mat-mdc-icon-button{width:36px;height:36px;padding:0;border-radius:4px}::ng-deep gio-top-bar .mdc-icon-button.mat-mdc-icon-button:has(.mat-icon){padding:6px}::ng-deep gio-top-bar .mdc-icon-button.mat-mdc-icon-button:hover{background:color-mix(in srgb,var(--gio-oem-palette--active, #494b61) 50%,transparent)}.gio-top-bar{display:flex;align-items:center;padding:16px;border-bottom:1px solid color-mix(in srgb,var(--gio-oem-palette--background, #1c1e39) 75%,var(--gio-oem-palette--background-contrast, #fff));background:var(--gio-oem-palette--background, #1c1e39);color:var(--gio-oem-palette--background-contrast, #fff);gap:18px}\n"] }]
29
29
  }], propDecorators: { type: [{
@@ -21,11 +21,11 @@ import { GioTopBarComponent } from './gio-top-bar.component';
21
21
  import { GioTopBarContentComponent } from './gio-top-bar-content/gio-top-bar-content.component';
22
22
  import * as i0 from "@angular/core";
23
23
  export class GioTopBarModule {
24
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioTopBarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
25
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.2.3", ngImport: i0, type: GioTopBarModule, declarations: [GioTopBarComponent, GioTopBarContentComponent], imports: [CommonModule, MatIconModule, GioIconsModule], exports: [GioTopBarComponent, GioTopBarContentComponent] }); }
26
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioTopBarModule, imports: [CommonModule, MatIconModule, GioIconsModule] }); }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioTopBarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
25
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.0", ngImport: i0, type: GioTopBarModule, declarations: [GioTopBarComponent, GioTopBarContentComponent], imports: [CommonModule, MatIconModule, GioIconsModule], exports: [GioTopBarComponent, GioTopBarContentComponent] }); }
26
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioTopBarModule, imports: [CommonModule, MatIconModule, GioIconsModule] }); }
27
27
  }
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: GioTopBarModule, decorators: [{
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: GioTopBarModule, decorators: [{
29
29
  type: NgModule,
30
30
  args: [{
31
31
  declarations: [GioTopBarComponent, GioTopBarContentComponent],
@@ -79,4 +79,4 @@ const computeStyleAndContrastByPrefix = (prefix, color) => {
79
79
  return [paletteColor, paletteColorContrast];
80
80
  };
81
81
  export { computeStyles, computeStylesForStory, computeAndInjectStylesForStory, resetStoryStyleInjection };
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2VtLXRoZW1lLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wYXJ0aWNsZXMtYW5ndWxhci9zcmMvbGliL29lbS10aGVtZS9vZW0tdGhlbWUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUlILE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHO0lBQ2pDLGNBQWMsRUFBRTtRQUNkLE9BQU8sRUFBRSxPQUFPO0tBQ2pCO0lBQ0QsVUFBVSxFQUFFO1FBQ1YsT0FBTyxFQUFFLE9BQU87S0FDakI7SUFDRCxJQUFJLEVBQUU7UUFDSixPQUFPLEVBQUUsTUFBTTtLQUNoQjtDQUNGLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FDM0IsNHNsQkFBNHNsQixDQUFDO0FBTy9zbEIsTUFBTSxxQkFBcUIsR0FBRyxDQUFDLElBQVUsRUFBVSxFQUFFO0lBQ25ELE9BQU8sYUFBYSxDQUFDLEVBQUUsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztTQUN2RixHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQyxHQUFHLEtBQUssS0FBSyxDQUFDLEtBQUssR0FBRyxDQUFDO1NBQzdDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNmLENBQUMsQ0FBQztBQUVGOzs7OztHQUtHO0FBQ0gsTUFBTSw4QkFBOEIsR0FBRyxDQUFDLElBQVUsRUFBRSxRQUFrQixFQUFRLEVBQUU7SUFDOUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2QsT0FBTztJQUNULENBQUM7SUFFRCx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUUvQixNQUFNLE1BQU0sR0FBRyxhQUFhLENBQUM7UUFDM0IsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjO1FBQ25DLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtLQUM1QixDQUFDLENBQUM7SUFDSCxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQ3JCLFFBQVEsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyRSxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQUVGLE1BQU0sd0JBQXdCLEdBQUcsQ0FBQyxJQUFVLEVBQVEsRUFBRTtJQUNwRCxJQUFJLENBQUMsSUFBSSxFQUFFLGNBQWMsRUFBRSxDQUFDO1FBQzFCLFFBQVEsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1FBQy9FLFFBQVEsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyx3Q0FBd0MsQ0FBQyxDQUFDO1FBQ3hGLFFBQVEsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO0lBQy9FLENBQUM7SUFFRCxJQUFJLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRSxDQUFDO1FBQ3RCLFFBQVEsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1FBQzNFLFFBQVEsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO0lBQ3RGLENBQUM7QUFDSCxDQUFDLENBQUM7QUFFRixNQUFNLGFBQWEsR0FBRyxDQUFDLEtBQWUsRUFBb0MsRUFBRTtJQUMxRSxNQUFNLGVBQWUsR0FBRywrQkFBK0IsQ0FBQyxZQUFZLEVBQUUsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQzVGLE1BQU0sV0FBVyxHQUFHLCtCQUErQixDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDaEYsSUFBSSxPQUFPLEdBQXFDLEVBQUUsQ0FBQztJQUNuRCxvRUFBb0U7SUFDcEUsSUFBSSxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDekIsT0FBTyxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsNkJBQTZCLEVBQUUsS0FBSyxFQUFFLHNCQUFzQixLQUFLLENBQUMsY0FBYyxjQUFjLEVBQUUsQ0FBQyxDQUFDO0lBQ3RILENBQUM7SUFDRCxPQUFPLENBQUMsR0FBRyxlQUFlLEVBQUUsR0FBRyxXQUFXLEVBQUUsR0FBRyxPQUFPLENBQUMsQ0FBQztBQUMxRCxDQUFDLENBQUM7QUFFRixNQUFNLCtCQUErQixHQUFHLENBQUMsTUFBYyxFQUFFLEtBQWEsRUFBb0MsRUFBRTtJQUMxRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDWCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFDRCxNQUFNLFlBQVksR0FBRyxFQUFFLEdBQUcsRUFBRSxzQkFBc0IsTUFBTSxFQUFFLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFDO0lBQzNFLE1BQU0sb0JBQW9CLEdBQUcsRUFBRSxHQUFHLEVBQUUsc0JBQXNCLE1BQU0sV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsQ0FBQztJQUM3RixPQUFPLENBQUMsWUFBWSxFQUFFLG9CQUFvQixDQUFDLENBQUM7QUFDOUMsQ0FBQyxDQUFDO0FBQ0YsT0FBTyxFQUFFLGFBQWEsRUFBRSxxQkFBcUIsRUFBRSw4QkFBOEIsRUFBRSx3QkFBd0IsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoQykgMjAyMyBUaGUgR3Jhdml0ZWUgdGVhbSAoaHR0cDovL2dyYXZpdGVlLmlvKVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHsgQXJncyB9IGZyb20gJ0BzdG9yeWJvb2svYW5ndWxhcic7XG5cbmV4cG9ydCBjb25zdCBPRU1fVEhFTUVfQVJHX1RZUEVTID0ge1xuICBtZW51QmFja2dyb3VuZDoge1xuICAgIGNvbnRyb2w6ICdjb2xvcicsXG4gIH0sXG4gIG1lbnVBY3RpdmU6IHtcbiAgICBjb250cm9sOiAnY29sb3InLFxuICB9LFxuICBsb2dvOiB7XG4gICAgY29udHJvbDogJ3RleHQnLFxuICB9LFxufTtcblxuZXhwb3J0IGNvbnN0IE9FTV9ERUZBVUxUX0xPR08gPVxuICAnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFlSUFBQUhpQ0FZQUFBQTA2YytqQUFBM3pFbEVRVlI0MnUyZDhaR2xxaEtIYjAwTVJtRWNobUl1Um1FcUptSVcvcjgxNzcxYm5uME1vNERTUUFQZlYyWE43TjY3NTZoQS8raW1hZjc1QndBQUFBQ2dKNzYvdjc4MFhyUU1BQUEwTDdJdFRSWm9iUUFBVUNOUUQvL3Q4TjlyUEsvSnVPYnpXczVydGE3dDRXWCsyOFc0UHQveitkN1B2UXpuOVpYNlhRQUFBRHdXbW9EL2Y3REVkVFlFOVNPTysza2QvNzMrS0xzTzQvNDJTOFJuUzdTZDd3U1JCZ0FBVWNHOThHWS9YdVdxVUdDUFRJSzkzUWoxSURXNUFRQ0F4b1hYNDkyYVh1M0hvOVhveVdyMHFqOGkvVmlnNmFFQUFCMko3dm5mUHVGa000eU00TXBmSDRIK2VOQzM0b3d3QXdDMEs3eW1wNHVYcTFPY2Y3VWZJVzBBZ01xRTExclROY1BMaUc0OW9lMVBXSHZBWXdZQXFNVHJOUktwUGlGbXhLMGRyeGxoQmdCUTZQVitRczJzN2ZZcHpLTXJqTTNvQVFBUUVHQ0gxNHZ3Y24yRWVmMTR5M2ZDeklnQ0FIanYrUTVHVnZPTzhIQjUxcGcvMjZiRzBNa2RBQUFDZkMrK0srTExGU0hLbjR4c1JCa0E0S0g0RW5MbWtyNHVSUmxCQm9EdUJQakNDT0w1Y3BYd2xIOGxleUhLQU5DRjkydFVzMEo4ZnlZY21RY3VYSjJnWkoraTVMcnVUbTdhclF0Ui9yOG9EM2pLQU5DNjl6c1loVFY2RWxmN2NJU3JrNHlHbEpPZ204blExWEdNNW1FVzlvRVd2U1I2VFhqSkFOQ2E5enMzdXU1cmVxL0JKeEQ1eERMbGRUZEpDcmhIKzRqSHhSTHFidGFUR2VVQVVJdjNPemEwM2VqeGFVS1NYdXdMMFh4MUZuQ0lnSHVFMmo2RGVXOG9kRDJaN3dJdkdRQTBlNzltMXZOUnFlaCt3c2lQejlmMTFiNnVvVDA5SlVRZlBZZDFmblB0WlVmM3MxOE1oSzBCUUpzQUQwYWxxMXBQL3BtdTlwcUdDaFduQTRWNzVCZml2RmN5YVR1c3RXUXlyZ0dndUFEWEZuN2V6YXBMdnNNRFlrSzE5SldmSVZ6ZmU3T3FwMjJWclNWUFY4OE9BSkJhZ0d0SXZ0cGQ1UTVEUFRwNlFER3ZlYXJvK01yOTdHZE0yZ0JBM3FzeC9qd3A5MVorRkdwQVlLdWEzRDN4bVBmYTFwRnBjUUJvV1lETmszZUN0KzVnSEt2M25yV2Z3UFZYa01tMEJvREhBbXdZTzYwQzdLd1pqT2ZidGhnN3ZHV05XNllPUEdRQUNEWnl5ajNnemJYV2kvamlKUnZWd2pTSzhtRlBIdW1yQVBEUFJZRUNiUUs4UFUyMGduNGpPRGYvajdiVHZQQ1FBZUQzNEZjbXdMc3IyWXFXZ3lmZThvMG9heExrSDVOaFdnK2dJd05sbllDa0plRnFaSTBYVWtWOWpML1RWSURtNzdZbm4zY1BBRzE1d0lNU0FmN1U4T1g0T1NqbEpXc3BTck5mWmY3VGNnQnRlc0ZMNGZXeTNaWHhUSXRCUVZIV3NFVHpvMUlYWXdLZ0xTOTRManpyLzFVS0VBRUdiUk5WUlY3eWF1OUJwclVBS2hSZ1l4MTRLNWlRY3JuMlN5dUJjakgrTXM3U0xpbklyQjhEVk93Qmwxd0gvamY4N0ROMkFOckYyZmp6VkhnOFRYakhBSlVZamNLeitILzMvVjZKTDYwRWpZeTFranNOVnJzZ0NDMENvTThMTGhXRzNzd1pPeUlNSFhqSVE2SEV4K1BxbENkYUNLQ2dZYkN5b1lzSk1FWUJPaDJIbnozSkI5blZBUDE2d1ZPQk1QVEc5aU9BWC8yL3hKTFEzM0taakVHQWpGNndNUk5mU3dzd0FHUHkxN2pNN1NIdmVNY0E3WHZCRzZmR0FQakYyRG9GYWk2eDk1Z3hDdENXRjh3YU1FRDhHRjd3amdId2dxTUdNek5zZ1BkZWNxRko5TXJrR1VCd0lHZWNVYk0xQWlDUkdKOS9sM09MSWQ0eFFNemdOUVp0TGkvWVdRbUxRUXdRUDdhTjM2Y1NZNXR4RFBETUM1NXpKbUlodWdCRnh2eWNPK0dTOFEzZ0YrRWhVK2pxVjlnS0x4aWdpSGM4WkZwK091d1N0TFFFd0QrL1RrcktGYTVhN293Q0FCUVQ1RnpuSVpQSUJYQXpDSmRNNGFrQkFRWlFiUXZtVEJHeDBYQUNzQVhRdFNlY0l4UjlrRDBKb044bVpOcnVkQkNxQmdiYy93ZGJqbEQwZWpYUUFVQzNJR2RjcmxvUlkraDFnTTI1a3JFUVlJQjZ2ZVB6ejJ1T1pTdHNCZlRpQlg5bEdGUjR3UUI0eDYrWHNMQWIwTElJcDY2cVF5VWRnSVk5NDB6ZU1ldkcwS3dJcDU3TnJyeHRnUFp0U1c1N2doaERDd0tjZWoyWWpHaUF6anhrNDFwWk53Ynd6MXdYemg4RmdJU0NQQnRia3BMc044YStRTTBpbkhJOWVLWTZEa0RmUW16OE9YVTlnZ2xiQTdYTlVsTU9DaXJpQU1EZDVIOWg4ZytFaWRJZVhiZ2l3QURnRWVNcFlhaWFJeFZCdlJDbkhBQy90aFF3RUFEZ1NwQVRSK1U0TkFMVURvQTVkU2dhQU9DaFhWb1NabFRqRUVBWElzeGVQZ0NJdFU5VFFpZUI3VTFRUFB6emxYREd1UkQrQVFBaFd6VWt5bDFoZXhPVTY5am43NmsyMDArOGFRQ1FzbG1HSUsrSmlncU5PQTVRd2hOZVUxV3k0VTBEUUVJSFlrbFY0UThoaHB3aW5DSWJjYk5ucndBQWllelpST0VQUUlRdjl1WVIyZ0dBalBZc1ZjMER4Qml5aVBDUlluK3dIVUlDQUVobDF4SlhBWnl4WnlBdHdxazZLek5IQUNndHhxbHlYaEJqU09JSko2a1h6ZHNHQUFWaXZDREcwSXNudkpsSEYvSzJBVUNEdlR0L254TmtVeVBHb01vVDNxNDZQd0NBSXU5NFRsa3JIK0JKbUdhalVEb0E5R1Qzakw4YlV4VXF3djVCYUhobVMxa3ptbzRJQUJVSTg1amdOTGtKaHdSS2lQRENHd2FBR3IzalJIdU4yUzBDems2NHNpNENBSkQ4d0FocVUwTWVFYWFUQVVBTFlueit2cWM2S0lJM1RTZExVUVI5dmdyekFBQlViQ2VsazFnUHpqUHV2R01sVE5YSEV3YUFWc1ZZdXJiQ1RsMEZoSGhPN1FuVHVRQUF6OWhiNUFoNzJha0lUNVJ5QXdCUTRSbXZ2TjMrUkhna094b0E0TDBZbjc4anh2QktoSWNVeHhqaUNRTkFwMks4cHppYm5iZmNiamhGZW0wRFR4Z0FlbmR1dm9URm1PcGJqWGVjamV4b0FBQTVJVDUvSDFLSk1XKzZMVzlZY3Evd3dvd05BQ0JaQlM3MkdEY1lPcGxUaURCdkdBRGdoeGlQd251TXY4elBoM3BGZU9JVUpRQ0FLc1Y0eGRiV0w4S1NHZEpzT2djQThOamQ4L2VKVEdxUXpwRGU4WVFCQUlLZElPa2xRWGFvVk5vUlZtcWhBZ0FVOVl3WHlkT2FzTU9WZElEenArUk1EQkVHQUhodmp5V2RJcFlISzJuMGliMXNBQUNxN1BOR0djeCtSRmh5SDl0c2gxa0FBT0NkalJhMHpRdHZ0STlaRjFsNkFBRHlqdElodEY0OFlhTjFOdkxDdmpVQUFOVjJlaVNKdHQzR25hUXJ1UUFBZ0p5dFRwQk11L0ZtZFlVN2R1a01hUVFaQUVCZWpNOXJrVDU4QjV0ZHRuRTNqdDRDQU1CMjgxYkxlTU16R2RJQUFGVjZ4bExSVFBZWEYyekVrZVFzQUlDcW5hbFJjbjh4ZGp5L0VPL1NtWGMwSWdCQWRscytVNCs2dmthVFhPaW5kaWtBUUVGN2Z2NTVGZHBmekphbVRBMDNNWHNxT2dsU0Z6a29kWDlYMzZ2bFBmWFNaaUZ0RUhNeCtyUDJnNTB0VFhVMG10VGlQdlZLSVhvVy8vVGY4UWI3YVhONDlvN1BuNk9BUi93aitaYTNtNmFoVnNtemhTSElDSTBYMTZERk9MbnVVZG9ZWDB3S3h6TkNNNS9YWXZ3K25mLzl4Ny9OOGQ1dTNzbWd4VEFaN3k2cXZXNCtSK29hcnU0SjQ1N2N4czhjbWFoN1JqcXhMbHprdmE5RzV6N3NKRGRGazdQRHVQWlBPMHQ4aC9IbjhUUVUyNFBJekg3ZTQyeStzeFQ5NzJLc21HMjJsZTd6bmo0Vm5QVnFmTTUyMGZhUzEzNSt4L3JacTRvZ1ora25LeUZxblEwakZaSW1aUEV1WEhSbzJ2WVZVTnAwa2ZvTzQzczJnWUwxeC9uZVJ1TVp2aVRmaTJQU3VtdFl0M1lZMnNmYlR3UUxRanpaWlRFanhsa21iTHRrMVMzZWFycUJ5ejZ6ZkI3TVhiaW82QWtvTjROMWsraHp4aVFrbGJGZnBUTThQZUc5WFZIeVdKUVFYM2pFdmpYRHAvL042MjBSV1NzMnlTWkVYWG1Ea05ZZVowQjNEZXZ0QVd0Sms1QUlMNEtHMjlVdnhUd3N6NWpaRmZXbGFJODRVSWhUWCt5OEtEUEdDVkZYR3FLZ0ZtbTZDVkcyY0g5QWR1WHJjTG4xMlZ0Z21ISXoxbjluSzJscjlYek9ZZDkzekh1MFBNN3A0cnQyQldOWlRJaGRFWkh6L1gvYTRPM1BOWEE1Z3VXdWRIMW1FSmhzSGJSUnZNRmRDRW1yYXBlMVpQakhzMVN4djgzbXRnVHNDQWdwVHlGWnlFYjI4aHhnVUxiWWJIVFBVa0pUSHZINS8yNHAxZ1d0U2NONDJxRUR6N2hJbnhrbEk2THdmQkNNYkZWU09VUGRTMDUySE9HcVdVQ0VmUUk4dmkwR2NiNjd5UlBoZVgzWXVWV2xTRzFvMmlHZ1VtdkVjNHFDSGg3dmpMWElNbU1laHl5REdFdXMvMHk4ZlBFSjBsd3EvTzlZcXRoc1l5OG93cnU1ZGVWTmdZZUxmN3VrRk9PYjU5bGF5cHAyQ2JFOU1ZbTgxOUJTakJ0MkptbmZRUThLREZTSkdkRENTODg2S0pKdGp3bFlxbmpzalFSc3ovb2JMcjRJVjM3RlBJZmh0UjRwRWt3MFprMWI3ekRsR25HU0xTdVdNSytzRnhlSnhoRWh6VGhRSmZZTWN6NWwyb25TbUd2eWsvSTdQWDF0emZRZXhiNi9wNnhweDRRd21SZ2E3L2V1Myt6WUhQVU8yb3cydkE5YmtTV3RyNTJXbkd0bExpODg0alBYMHJYSVBXSWNIRXJ6WkUzM3RJODRpMWVxZFc5OXA5RTQ5aFpuOG5vNDBFRm45R0pQdVcvdnlicjBrN1ZGaDlmNFl5MDE0eWxPbzIrOVdPQjlxVmdqenJDUE9PZDJ1dTJ1LzJQa2swWWpKSXJwNEtnOW5PRStEa256UnJONU5sUHFmWHV1VE8zSUxPbjlicmFjOFdDR3I0REpSbERvUFNScldzTWFzVVBBeE5hSU13cnhFanQ1Z2xmalpTWnhLOTNnRkluLzIwWUppb1FabzQyUlo2bmllTFBuTnFDdnpZWGY1ZVpLUm52d1dkcTNMMVc1UnZ3Z2dqZGhKWktQbGRnOElyTGNFNzFZOW9tVmFidTdyT1BveEMxWE5hODNJbXhjaDhaU2VGTHZzdldzYVExcnhKNW9EZG5UQ2Z1UFp4TEVJVUFSTTB1SkNsb3N3T3VMWm95UjIzMDIzeHJ1d3pYRm92dWdJOEtkUVJFQVQyaWFOZUkwejdSOWMrcVBwbjcwZENtVFpRUmpWaGxiVUgraDR4Y1g0K2pFcmNCMW9OZUM2VERlYXNKVURxL1lLVEE5WlUwYm43a1h6SnAyZWVYWW96eGVzWWgyZE8zQUNXNVhZcE8yam5ZY1k4TS9BUVBzMWFDUnZNZUNZMklMOFlpcE5aMVBpQjMzc0dBWmlrZmpIbTluNmptME1Bck1hRWlNME5HV1g3N0Vxa2hEL1RxTTVGa0NVUkdlQ3ZCb25hSCttNnpwbzhXc2FVVnJ4RitzRWF1d1FSdjVSV1c5WWM2YTFOV2V6a01oQW8zckpKM1I3Qk1BTFdGRTR4ME1iOG8zVW11NlNMTFdJYkcvSFpKRTR4N2xHSFhWWGdFRkZaNWNRNjVCQjlHaEl1ZStQVS8yL0Jwelh6SGlwczFyOUFteG93MjZxVFdkMmliRVJDNGdhelR1c1ZQWG8xZThTUzJ5MCtHcmFOc3RRRUFXYWNNV01QRWJsUXJ4WXpHbDFuVDJmY1FyUllWVVJaSCtzTXdwTTVOOGxIYU9DS3R0NStETTM0QlRrRVN5R2gzQ05sUTBSbTRQT0tmV2RQWmtyU0ZsZjRWbi9jb3prV2VwTTVFM1RBVXR4UVBETVNodU14UmRkWHNGNytmUXRtN3F1Ti94YmNJV3RhYlRDV0dBMGFkMFl0bnhFMXNZcXQwRGd3SXpRcWtuM2NlZ1dCLzBpZWhCNFRHY0tvWFlzNlo5K1U2b05aM25HRVRQYmcrU1I4djNyUm12K1AwczlsV3hiZ1JaL2FEd0Nxd3YwMW9nSkMyNkxwbnhIWHFGK0U2TXFUV2Q1QmhPWDM5bEs2V2VzYlBoRmJ0ZlVQUnNCUUd1TGdxeXVnNVFUN20zTjBVMXA4enY3bFdXZCsrMXBpOU90b3E2ak84Y0hFYWU0MWYxakp2cG13TWgwczVVOElhckd4aDNTUzJ6cTlLVjFEN01pb1g0bFVmc2lFUTBsVFh0V3lOTzVFVHNPQWpWaURGZWNjcFpDcDI5dW5hL1N4NDY3dXBUUzdWempSN3gyelhpRUNIV2tLamxtSkEvemphK2VUL0wrZTVHZ1dzNlAyL3o1S3l3YjFqUitIR01nYjY5WXFFWnlvZzNYTFVZYjk4RlR0SHloTUEzYlJXUVFzKzZmU25FUmJmOEpSRGk3V2FDSjNXeGpiSnUrN05LUldDWm5lQU45OVFIeFBkZ2FxODI1Ymp2eWJYOXl5UEU0NU05eUVyQ2hvOE9CeEdhM0VmVko2YU1aZnU2MDVvUXIxTGVNTjJzNm42dytMYWxTUnMyejZBOHRQV3RrSWxEUUxMVzNmYWFVY0ZlWXBGU293V0ZlTFBYNmJGTGJXdFAxVzFzN2JrVG1YblN2YW9mSE02dEh5bmIyVldnWDRzUUI2eHBCMFdHM3F3dlozdzJzWFlRS043d3BIYkJiQmFqd1I1MTR4V3ZyUWd4Y1hvSUxxeVJ1RWJ3cGoxaHk1T290VVErNjF6S2l3c28zZms0TXVHb2FiNmNkdWZOejkxMWxDZE9RWlcycCsrSXJJUTNURGRxUTRSTGxWKzB2bnZSdUszbjRwNm50NU5TWDVhNGd0QjBkTTN2a0gzRUVYMWxJazhGcjdpSit1R0NSYmp4aHRzVDR5VjNXYm1RVXByS3hzM3JVMzIwMXB2MlBOdjJzazAzWHgzNmw5ZnEyOS9PaUs1T2kyTHlDWW9uT3NhOGdDRndDd0NaMG5qRVdiSVRmZWNkSzFrbnZqM1ZKM0I5V0R3RUxQeitOeW1QSXlUcDYySHkxNWZSQnJ2TElHT1h1dk9LNTZyYVhiRDRObFcwMnZlSWoxeUYxa05QaFZLd3gzYVI4TnBkMmNtNW56TmtiL1NiY1I3aUVTZXdYeVNQMW11RHRzaUV2YnJhWFdCckFkNXdQeDd4a1hPL25zUGpMT1lWQjFUVDJnUU5UL2E5a1FHVG9PSGwrMHA2NklNalJEMWhuNnEwUDFNWFM2WGRoZ0hnclVlYzllaXhnRFhBSWdNdFlNL2o5UEx6WmkxWm9LNWxnWmZlY0RJaHRrTFVSMU5yaHRpZnZSc0hNVFlFUUxmcDB5UE83SGtlR3VyTEJzeld0NGpQSGtxdWlRZmtCa1JOZmxLRjNnUHZ1ODVNMm81dGtHZHkydFpXSmtkVm4yQnZtUDE2ZU1TRjdpTnJpRHBnWXZESExDSlIwc3VPZk1hN0NVSFV1bHZLMEhSZ25YUjJkZFJuaDRaSXIzaXRvczBqdHl3ZEZGSHYxeU11RUNyZFNpMk5CQnI2UmVCNzdpYkdPUlBrUkxjRFpWd2o5aVdaN2RpcEt1M1JFcG0wTmRUd2tMdkV4bWs2T0I1eEJvRVlTMFJtQWtWNHkyQjQxZ3p0UGFkWWdzb2h4SUVoellYUlhhVlgzRjRPazJCV0d1ZDZkdXdSSzdtZlN5T2I0SHprd1NIQ29yTnVUemhPL0JtTjMrZVVHYWk1dG1jWllyelhjSEFJdU1lZkowb1RmQ3FUeWdlVWVqaUVHSSs0Z0Jndm5reko0V293dnpRQW53bnJFVElobFZqclBIOU9JYVZrWS9iZlBoRGhWYWdOdDh4Q1BGWmxtS0UvcDFHZ3JqUjc4enIzaUVzVzAvQ0k4V0hYTUE0dGwzZ3hSbGJQOTRpUGc4Q1NzNXVkd0JYeGpGdEtieUxYR3ZIRFNSdGJMaXV3UXdFVHVlQmxWRlY2SlpRV3ZyTXZENDlZNmIwNWo4TUwvT3lQQUI4ZUVSNVQ3eGdJZU1iMXpXVGd2UGZGODR4aTR6eW5FRnQ5WlBDRnFLRWFXelJISmhicjI5MGpsYVJGTituWEkxWnlyM1BnSVB3Y3R6ZWQxMmhjMC9rNVMrQzQyRkx2Rm5nUWlqZEZjejJmUSt3WkpjZDVxUktlanJEbWloMnJ4ek1XU05yU3NYMHRNUHMwNU1JYnhpUFdORURIeUxEVnF4Qlhwak9aSmJ5QlY0ZXJTeHV0bkI3eFJSOVpYU0ZxcUVhTUY0bThKaTBQczhZT1VtYVJmWHZFV3RyZlNxcWFJeU05UGc5eHpDWEFkbHRrbW5Ec0tiYUI1VjRqdnJrSFY1RVNISXQ2aEhqNmJ1RjRSSUg2blNRNTlPa1JIMXF6VGkrMkdTMkNncnlaYTdDbHp3YytmNStGQlhuL2VQcUoyMmk3T01rclp6R1dPZmYrYkVqU25qRjl2K3daMVVKcDRGU202YS9UTHpWcy83allqdk14dk90RFVUYlhrOGNMb2Y4cStZeldueWZqK1k0WFkvbXpwanhrdXYrOW9FZXM4Z0FSRUoxUTZROVBCM1JFS21uQlhVaHZzcTZ4aGdGclBjTW5ZV2s1cjlXNEZpUEphY3k1Qml3aHlPZmYyUWxacStjWmh3TDNQVjcwcFNIWCt6VWlKdE5WbjhhbVZTUEVzZWNqbEMzbzRpbFd6OTVoYUc3UTN2MDV3TnRzcXA5ckNLMjMvbzRoYTMvYXFsdGVGVnJvNXJoRFpxTFZucklWV3V5aVptRjQ4b3dseFpqN2dPNjB6T3BzYSt3c0FnRHdpQUVVOU9NakluczZmM2c2NEF6VjRMZzZBQUNBQWpHT3puY3FjZFBUZDJ1blZ3QUFRSGRDZlA2c1I5TWt3OUtFdEFBQVFKRm52RmVUUGUwNTM1U1NsZ0FBVUtOWHJOL0JsSFRoU2ZJQUFBQmxRanlwTCs3eDhQUVd3dElBQUZDYktPL3FhMDlMeGRFQkFBQTBlY1hxODUrc2NtQmtTd01BUUZOQ2ZQNk1DVStuUFpOYXFFRDJ6Tm93QUFBb0Z1U1laT1MweDJCNnpnQU5Ea3NqeEFBQW9ORWpGc3FlVG52eVZtUTFyVDNwelFFQUFNZzRuTE82S2x0QzFiUVdoQmdBQUNvUTVFRmRMcFRRdGlVT3lnWUFnRnE4NGkxbUcxT3laZGpZQld6V2h3RUFvQkpCWHRRa0podUwxMlBFK25DZWlpTUFBQUJ5bXZkNktUYUo0eG03YlFraEJnQ0FpZ1E1YWh0VHF0bkJ3cllsQUFEb3lDdGVJOWFKeHhRM0ZyTStqQUFEQUVCdFFqd1hUMUFXV2gvK1cvSUxRUVlBZ0lxRU9HYWRlSlZPMktLc0pRQUE5Q2pLZTlIOXhGTHJ3elFsQUFCVTZoV3ZSZlZQWUdNenB5MEJBRUROZ3F4aW5UaW12dlJLV0JvQUFDcjJpR055cE9KS093dWR6Y2o2TUFBQTFDN0tlNUZpVmtMcDI2T0lXdzRBQUZET0sxNkxuRTlzM01BV1cxK2E1Z1FBZ05wRVdPaFl4RGlIOUx5Qm5VUXRBQURvV0l6ekw5RUtMVkpUWHhvQUFGb1E1RUdpcU5WYklZNlpCVXdrYWdFQVFPMWU4Zmx6eTVxd0pWREk0L2djOUVBekFnQkFBNEtjTjJGTElsT01aZ01BZ0lZODRybklDWVFSaVZydll1SUFBQUE2aFhnc2tiQTFGS3NtQWdBQW9FdVFod2puOUprbVNpVnFJY1FBQU5DQ1J5eDE3c0liSWFhaUZnQUFJTWIvRitJOGVWTUNHZE03QWd3QUFBMTZ4SFBFVHFMaDBaZWVQMSs3NE9hTjA0d0FBTkNJR09kZHNvM0ptRWFFQVFDZ0pTRStmMFpsVGo4UzRzaU1hVXBiQWdCQXE1NXhWT2IwRS9kN0pHTWFBQURnbDFlOEphMnZJUlFISDJreUFBQm8wQnRPbnpsTnhqUUFBTUMxQ0orL3owbHJUZ3ZVbU41STFBSUFnSVk5NGlubU1DUlRhMzFmdUpFeERRQUE4TXRSemJPRktTWXJqRDNFQUFEUXNDQkg3eW9LY2J0akNsdlBpSEJYSVpwdUpsMVh6OXphZTJqMUdYdG9POGplbDlJYy9pQzBZWGt5YjVabWcxYUVLY2UvSy9tTXVkNE5iUWUxMjRUelo5UVdwcEF2bWpqc0FRSkNNNk4xRFMwTk5yc1BHODg4blpHZitWeUsrZncrZlE3L2xoQzZFdUliOEh6cW43SDF0Z00xRTd3MXlTbE1BZ3ZSZjR0YTAzbWJudzB1UnBzZmRuNUFLd0o4R3VmNW5QM3VEN1lvYk9lL0c3UVpkZXY1aG5POHIrZDlINEZyWCtZempuZWZUOXRCdzBLOHhBaXhOeHdUdVVlS3p0cnZiTERxakhuTGlFK25RVDRpSnFXZm42c3BWcVdGeXNnRFdTTFd1ZXhuM1Q3TFVpV2VzZlcyQTVYT1NKcTl4QkpLei9wS041MXdmVjIrVGJjQWo1RkczTGUxYnlqaFlSbnQ5aG5mS1o3dlQyNUI3cUh0UUswTm5NU1BRN1JteXhUemdGQWhQbW9XWXN1UUw0bkV5WjROenlVOHJOTnc3SUxQY3ZqcUNhUjh4cDdhRHBvU1luY3VsU0hFVzJ4YU5wMjBYNCs0cG1jeERqalpIcXdmcmthU2o1bjRzejRZTzJ2cTZORUxvZnFFbUJjck9jdE1jRm9mZUoxYnFycnpyYmNkVkdFRHg0am95eFR5UmRIRlBHaXU1anRqMWFGcGExWjdCQmplS1RRcjNFb1M4Z2xWa3VUR2h4R3VIOGxKZDN0ckhZbFFQZ0VVM1VuUmV0dEJOVFp3aUJWaVorWjBUREVQT2lhaDZZWkNTK3RuUzh2VGdoQldUZHJkbDdnaE9ZRzExb00zejNkUERnRVBLbnhoSkVkNWsxTmluN0gxdG9QcUltclJoYTkrOUIwcm16S055a1BySHZHaXZmMERpN2J2NTM5L1ZYbnB4dEF2T1lUS3VvOHQ1SUR5RzNIOTlkeStlL05ra1c2MEhUUW13bEhMdU01K0tSSDNwa04yNVJGWEU1cTIxaFdQa014L3llcE1ubERxSnR3K2kyTWRlRXJSSndMc3grdUpXZzl0QjMwSzhTK1AyQmhJVk5XQ1VJKzRpcXhweXpEdnJ0SnowcUhHQzZIYXBZWEtHc096UzRSVGhGSXR6OWtsbG85dFJBOXRCOVVLOGZvdGVVcWhwQkFESG5GbDkvMXJ1MDJLWjdERzJKMUJuOTU0Y3NabkR5RWltRHBUMjJGSGR0b09FT0tiTXBjQ0J4N3ZMZFVhaG1DUFdMMFFCL1R0TGZXZTE0dDdHWDBKUUM4L2Z5dDVLbHBBaGI3bHBUZmNmTnRCbFhad1NTWEVNMElNQVo3QlVzcytZazlZODhpOXBCSXcxcGFuQ1Vibnp5bG4yRFpRakxlN0pDcmFEaHF3ZzYvMU10a0gwL202Nm9EcXM2WUQ2NmRuMzNKbnJhZHVMb0Y1K0ptYmxnbXlGY3BkbjI3ejZhbnRvRTQ3bU9SY2htUUtEejBKc2JyUXRMRWxiM2VGTlFzTDFmRTJ1aERnRGM4bFBiU3JiVkcwSFRSa0IyV1hjZ08yUGNTZHNRaXRkVVQxUWh3d3VTeTYzYzR6NW80bm5xekRHLzZxM05BMTMzWlFyVGY4bFVTSUpjNVlSSWk3ODRpUENwSzFOcTBIbEhqMnhzNnVOZFVBejJ5dVBZdTMxYmFEWnNRNDVnU21NY1RBUHQ0WGhSRGpFV3ZwQXdFWnJpcktzWHEyUVRnRng3Tk9kZFJhZnJHSHRvTm03R0QwVVloM0JUMVdQR0o0NEJHclhCdnpSSGpVWlBnSHpLeEhuMEcvOHhwckhZODl0UjFVYndlajZtNzg2QjlDWnhIakVmZnBFUithcXd2ZGlKUkd6LzB1S2VuUyt3dW9EVi85QVN5dHRoMGd4TGRWNXBJWHNZWnVQR0pGeVZxM0JsSlRYL1dNdmRWMUpPR05OMWI5RnBxVzJ3NmFFK0pEeENNT21JVWl4SERuRWFzVDRvQ3RCYXBxb25zeWhQZTdSQzNIK25BTDJkTE50aDAwWlFlakRrbHlIZnJ3V29nSnczUTFFMXdxRU9LNWhncHdBZDd0NERnemQyM3BOS0FlMmc2YXNvZlJ4d2JmZlRBZU1ZUVluaHBDMDBzTkloV3czblRyQlJyajlXZ3BYNk9IdG9PNjdhQW5SK1A5R2pFZU1Uem9nS3MxODFlVE5lM3gydFZtRXp2V1JTZkhHdkYyTnhZYmpMZzAwWGJRbEMwY3hFUFRzY2xhQ0hGWG5WRDFHckVqYkt2NXFNWmJZMzUxejQ3eFdtMjJiaTl0QjNqRWwzMUR5aU9HOWp1Z1Q0Z3g1bEgzL1hRTFU1RnRNNmNCaXJwNmJqdG94aDdLQzNHa1J6elRMRjE2eEtyMkVRZnNpZGQ2TU1YWEU2L0tNMTV6Q1BGNnR2Mys0anF1K2tvdmJRZDR4Q21GbU5BMEhuRVZvV210ZXp0RDFobU45KzhhcjhuR29rQUZ2bC90MEZ2YkFSN3hiZFkwUWd3dlBXTE4yNWVXR21vQUIyVGV2a3JXU2l6RVd5b2hicjN0QUk4NGFXVXRoQmlQV05rOTNoWlpVR3JNZzZ0a2xjb3U5cHkrOVVxSWJ5WVl6YllkTkdVUHg1dElDQVU5SUx0SGZDamRSK3cwanJWWDFucjZiNFM5Z2VFMFFsZlgxWC9iUXp6aUh0b09taFBpSkZuVEt3VTlJTUR3TEpwUFh6cnY4UzVzcENwYytPWTR2ZEtGSko1K3JrdUlieVlhemJZZE5HVVAxUlgwV09sMFhRbHhMZWNSYnpWRWJ4ekpQcGYzV3R2SlAwODg0dGJiRHRxd2c1NHpzNk9GbUdNUTRha0hjSHpYZHg2eHR0RG05TFFlcldmTWJzcjZ6VzczbFR1UHVJZTJnMlljRXJuemlCRmllTkVSMVh2RUlVWlNVWWIzK2xSMFBPdVRxaEtGbm5yRXJiY2Q0Qkg3aEhoNSthRnE2OEJDTnVPektoMHd1L0pKdzkwNlU5QTkra0tqcFovenBnMjhlNEo3YUR1b1hvaW5sM3A1UFZIMmhJT0NoSmcxNHU0OVlsVnJZcDdKWmZFTTNJREpyL2YrQXNLNGc1SzJlSm8xM1h6YlFSTU9TWXdRRDI4NkZrSU1WWnhIWEpQWDR2Qm1IMFdZSENFeUxXVkhkL3VveHBDS1V6MjBIWFFweEx0UGlPZUlENmJqOWRNQjF4b3k1d055SDRxc042YTRMOGRuamFYYjVhbEgzRnZiUWJWMlVGWXZwVDZZenRkK0IvUVY1VmM2WU80OHF5MTNMZUNBOWFYdDVlYzZuMUdaMXhDMFJ0eEwyMEdmUXZ5cjN3b3NQcXRaajRJc0hWRjlaYTJMUWJPVXp2Z1BFSmZINjR2V3FVVno2UkMxZFRqRkZGTjNvUFcyZytydFlGUnk4NXVaWHREaU0xNXhOelBCS2p6aWkvdS9LMWd6cC9hdXJKT1ROc2x6dlMweEx2YU1GN2JrZUZKcnVzZTJnNnJ0b0d4T2xjQytxSVBaWUxjZWNUVmJOandUemRuMjZCS0lrOHVRYjBMZjRhcC9POXZHSk5FelRwN1NmNC96Q1ZwdU8yaktEcjZ2UkNtMFFabEtNbjNPQkk4YVBPTEFkUjNSdmJlV0VSOGNobHhrYVNjd20zT3h6eldXK3Q2QTkvdktJKzZoN2FDWnlPRHIwOGVremxja1c3RHZEbGhORVFOUFNHbjdMTE84ZlI1cm5kVG5JUjVTaHhrRXJoZC9ubkc4dXQ4M3ozaisrVTZzam90bmY1MWgzMnJiUVQwMlVPTFk0TnMrNHlraUgzTE5ORk0zbmRBcHhDVXVZWU8rbTJ1UFQ1N0wrbzR4WU5ZOEpUUVVpMmM1YWJrNkUvamhNMzVFLzNBSTFSYTdSdHhEMjBGMWR2Q3RWaTRoWHhJbHhNd011K2lJenNwYVY0ZTlLeDFJUzhCdWdEazA5R2d0OGF5ZTZGS1NldEFYNzM4T2VNYmw2YjJjejdnNDdJV1pON0lMZXNUTnRoMVVaUU9ISkZvcGNCUWlaeEwzSFpyZVRzTlg0aG9qRFB2OElOTnhPVDI4eVRyNGZqby9adzBjbkp1NXl5Qmx0bTlnOHRSSFhEN1BPRHVlY1Ftd0VadVp2UG1tMW5UdmJRZFZDUEVobms4bGNTWXhIbkhYSG5ISmEzbTd6bWw0ZDF2dWU4MGt3aUVKUjVMWGFxL1JTbnJFUGJRZFZCR1dsajJMK0tKamN3SVR2UEdJUzE2djk1SmE2NGh6eEN6WHppSy85Qkp6Ry9JTFFaNGpRbXErVVBCa2g4Y1RlOFJOdHgyb3RvR1RWaUhlYWFadU91SGlNVnhWZU1UMmN4a2hwMFZRckxZcmdTb3dnMC8xakx1OVAvbmkybExWSlcrNTdVQzFMWXdwYnptRUdOazBYd0F0aFdYVWhhWWxKeHFHVVo4ZXJCMWVyYldxOXFJTVQvTHBNKzdudjVsOGlYazNIckY0OUt5M3RvUGl6a2lhY3htRXpsZ2trN0NQempnYWlTOGFyaUhGZ0xQV1Z6L1B2SnpYYWx4Mmd0TlhCUUpzYjFuNlBPTjg4NHkzaVhFQk5hUHQ5aHB6UEYrTGJRZHFoSGo5bGl4dmVmRUZVWXZRZEY1b01BSVFjbmJ1bDB2c3REL2oyL2RDMjBHblFyeDlTeDc0Y09QdFJKVzVwQlAzSjFBbEwwM1AyVU9idHRwSEdkbndvSDl0TWN0bzN2NG1VVEdFVGcydHo0aUJ0b051KzFGVU1ROXZhRnFpaGlZZEhnQUFHaGJpcUtpeE53SWprQlhMWG1JQUFHaFJnQ1h5cU56THQ5WW0vRFVtTlpzbUF3Q0Exb1E0NEdRejM4NmlJZWlMenA5UmU0bEpmZ0FBZ0VZOTRpWEpIdUtMTDBwVHZnc0FBS0JlYi9ncjJSN2lDeUVlSThvWGNod2lBQUMwS3Nodk02YWZIWXdVZWNRVG1kTUFBTkNpUjV6bUhHTEhGM01jSWdBQUlNUXlHZFBoUWl3UUIrY1VKZ0FBYUZHSTV5ejVVNFlRTDJST0F3QUFRaXlTTVQyOCtjS0ptdE1BQUFCLzlUSHRZUThYUWh3ZEN3Y0FBRUNJLzEzcWZYN0FTR1IyR0puVEFBRFFrZ2hIT2FkdlJGamt6RVdFR0FBQUtoZGdrZVhheHg2eFVNM3BnU1lFQUlEYWhUaXl4dlNmMDV0KzdSSG4vV0lBQUFDZFFyd1YyZEliNllyUENERUFBRFFpeUh1UnBkckloSzJWcGdNQWdKcTk0ZlBuR0Z2MnVaUTd2dEdNQUFCUXN4Q2ZWNW02R2dLbExnOHFiQUVBUUFOQ3ZNU1d0b3gxeVdjcWJBRUFRTWRDWENZeUxGUmhpOEllQUFCUXN4akhIQXU4UmtlRmpkbkFUbUVQQUFEb3lScytmNWJkUFNTeGY0ckNIZ0FBVUxFUUx4RWVjZHp5cktuaXJCTURBRUNuZ2x6V0VSVkszVjVvU2dBQXFGQ0VoOWlsV2VtYk9kaFBEQUFBSFFpd3hQcXdYTEt5d0VsTWY5MXp3dE1BQUZDUkVDK3h5N0ppTnlSdzhnVHJ4QUFBVUpzZzYwaFVsbG9ucHNJV0FBQlVKTUw2bG1SamJ3b1JCZ0NBaW9RNEpnbzhmeHpaRkRlMnh0YmJSSkFCQUVDeEFIOEo2RjI2NWRqSWhldDBNd1FBQUFCQk1ZN1l0clNuRW1DSnV0TnNZd0lBZ0JxODRXaXRTK3AwUnM0U0tIY0pBQURhaFhqUnVqNGNlejd4bnpQem11eHBBQURRTE1oYmhNNmxxNXNoVkdsa1JZZ0JBRUN4Tnh3VmxrNnVjZWNYeEd4aklqd05BQUNhaFhoV1VkYlNJY0t4NVM2cHNnVUFBSnFGZUZPOS9GckZqQUVBQU9DZHhrVkZmSFBQR0dKaTZEc2lEQUFBbXJ4aGdUTVY4dWRBRVo0R0FJQldoTGhLWFl2Y1owVjRHZ0FBTklueEdKdUluRTNUSk1QVENERUFBQ2p4aGtYQzB0bDFMYUxLRnNVOUFBQkFreURIaEtYbllucFczY0kyWkp0aDJsZEw5M1QxV2FVdVRmZGRzaTIxdjN0UTd3M0hSSGlQSXZVeGhLcHNIUlQzQUdoekVzYWJnTXI2YlV6TzAxcTlPMDhYYU5JUWp4ZlhsN0o3R2w1NmxjUE44NVc0QmlYM1BWd2xxa2lMc3FOdmxicVljTFJqdCtyVU1ZRlRLbzRzeDBWQmlSRFBmcmJ2NS9yZm44ZmNiVzJFRVNlanp4MXZ5cTBhbjdWWW4xWHFDdHA5a1BHKzkvTmF6eVdyd2U0YkF1MDVYUFN0a3RlSS9XckNaazNWMXNVUWpLMlBkSW5taFBpcXJVZGxBMjEvNGhVTG5UNG1mYTBQaERqM2ZlK24rSXV0cVVaV1BVcHhUWXo4Sm16VzJrU3VVNlJiejU3aTlvVDR1SnR3RmZhSVh4OUFFamxvRCtILzlzZ2pEcnp2dC9jWUlzaVRVRHNPTDNacUhBbWZHWSs0ZnJzVk83a3J2L3RIYVAvVlRuZm9SNGdWZWNSSFJpRXU2aEVydWU4Rmp4Z1UycXY1dTVWNkdCS3pDbWFXelhSd0ZSNnh0ZFVrMmlNMlBuZDFoR0hYakQvWEowTGd1VytKZTlrQ2JNQVMyWlozSHZFcTlCeFBmN0xybzM1N0ZSWE4xUlNXbGxpREtsZVZCSnIyaUgxQy9HU04yQ0ZvUytHeDk5WWpUckdHTzN2Q3g2K1hvaHdUL2hIYkFTOXRWVXhFUk0vU2hNZllQWG9vQmxMN1FxeklJejRpUGVMamJpS3BxYWpFUmRiMG4wejN2VXBGd0FJODRvbUNIcERaZWR6VTlRUGp3ZmFTYTBpZ1Zvai9hUFdJWHp6ZjZscXIxV2FnUFVaSDlMNXRrWEtzdngxUDkzRWJRbnk0aEIyQmhNam95cU85dytwQzArZnZ5emZuRlBmZXdVZlhOclZHMTRqWG5NLzJjb0swNXRoNmNTSEd5OXRFc3djZU1kbkw4TFIveGlScEhWbFBXbnBwaEVWbUdYU1pwanhpald2RWI3T21GNVVsN3A0SjhaSDZ2aTB4M21KckNJUjR4QUFQK3RPZWNyZUNoZ2VNeVVMYjZDSk5lTVROWlUySENKcm1nVm5TazNja3hRUWxidUVSZy9Da2RHb21TU3ZoUXpLN3hTUE80UkZMWmszWDVCRWZPZS9iODk1MjZUVmlSaUlFOU1XdDZib1hRa2xiSzRNS2p6aURSM3lrU05iQ0kzNDhRZmYyQ3p4aUVIWVUvalM5Zk9yWkt2SFk5WWRtUE9KV3M2WVAxb2lENytOT1JJTU9WTWNqaG9TUm1TZEpXdlZzWHpzSFRIUTVQQVpXdFI0eFdkTjR4S0Vod1RXa0tBa2VNUWpZZ3RndFMwdE5JaXcxODZCOFhEc2VNVm5UNWR1bDJIMkhicUVLRUdNOFlvaXhBLzFGYWlPVHRnNjg0cW85NGw2eXB0VkhjRFRjdDJjeXNPRVJRNFp4RU9zTjE1dTdGSnVkaGxlTVI1elFJeGJQbXE2eG9FY3VJWFo0Sk51RHo4QWpocmY5ZjQ3ZHpWTnQ1VGFCaDZmQUJ4NXhLby80WUkwNDc2SG1kMnZFdm5lSFJ3d0MzdkQrTFhEY1liVjlUT0FGNEJYWDd4RjNrVFZka1VkY0pOdjdSb2lYQjIySlJ3d2x2T0g2SFVKZVFwY2VNVm5UbFhqRXVlN2JNVUh6aWlnZU1VVGFnR2h2bUxDQUVSYWdhMVhyRWY4UTRnSlhpb0lleDkwcFJwcU8zaXVkTmUzeFNvSW5hRTlPWCtMWVF4QTYzS0V0UjFBZ2JSeXZ1QzZQK01wWURuWWJwcTdvNUtucUpPa1JMNW9OVWttUDJEQ0lXMlNpRmg0eDVQYUdIeC9YV1lOWGZMQlczSzFIL0ttZzlMbW16TDh2aWJPbXQvTzVwOFEveDZjRzRlWTg0aXhyeEFIbExlY243OTloUitaTTczOUE3THZ5aHR2YlFvdFgzTDFIck8yU3pKck9kVzF2eDBCdWo5Z1E0VHN2Tm5oeUhlQVI1N3F3UWZXSThGZWtIV3F6cUpTQVYzeXdYbE8xUjZ6dGVwczF2ZFFreENWT2piS1dCZFpZYnpqQUk4NTFUZGdmdk9FV2pIU3NON0V3RUtyd2lQODBMTVF0ZU1USFZYbkpCTmZkdTlwZWlMQUtqeGo3MDRYVDk2ZnBwVkFocjVpMVlqemk3S0hwQUhISklzUlBoU0NreEdXQ3ZqQTVxdW9kbjdYdXA4K2h3Q09lR2VsVjJLQkZ5dUZyYnRJbDZSVTNGekpvenlPK1M2aVpqSjg1cnlWeDFyU1pySlh5R3QrTU8wZDV5ZlVVdDFIZytyU3RyNnp0NCtJYkFSN3huT245NHdUb0QwbExPSHRqODVFUG9Wa3QyeFhxODRnSHg4RDVTdmpuVlB1SWY4MmdsUnVvMVdOOFlxOFFBL2U2QXBiSHlJNkVqTEUvUWhHcnBaY1hKWEVjVmIwbllmVHBFZitZWmVhOGpGQnA4c3BhRi8xY1UwR1AwaUgxMTVQbkFJK1lKQ3BFK0Vzb1AyWG93UnMyQjFSMEJpTmlYSlZIcksyeTF0dDl4SXRyWXFpdFB4WVc0bDFxWFRXa3N0WkxwNENxV3Uxb3l5YTE3Tmw4bXdzdXFHOTBQN1VlY1EyMXBpVkQwMnNGN2JKbVRJSmJKQS81ZUZKWkN4SHQwaFArY2hTTmVWeEZxN2VYS0xFVmdRMzJkWGpFUjRsMWZlblRsMHBWcUVyb0VlK25hSzR2ZjI2Ky9iWlM3UzNwRVVPVGdyeXpOdnpDT0o2L3p3S2hMOHJPNmZPSWF6aVBXSFNOV0hzZlRMRjl5YkVNSVZxU050UWpobTRuLzR1QWpueDEreEtsWmpLRW9QQ0lYM2pFWFlTbWZmY3RrQWczdXhJcWhkc3kranhpN0VSejlrWmlGMDZma1ZWaHI1anRUSGpFSlR6aW80WWtqNEI5eE5IcnFTRWg2aHdlTWVPL1MwZHVKZGRJN3FWdTM1a3JEa0ZXajdoSStEQlIxblIxSHJIRFlFVnRBN1RhL0RMa3A4MGpocVpFZVBvV3JCL2VmZjhSZXFFa2J1bnhpSnZMbXI3d2lDODlTOFVUcEN0UFhtdy92bU9kTHJvU0hoNHgzUFNIWGNxQlE0VGw5amxTaDFxdlIzeG85WWlGK21tMWE4U1pJbHZSUW9sSERGWi9YaVNYTk9rN2JrK0tpbHQxdG1NdldkTkhMZjNPbFRVdHVNVm9TckVPaDBjTUFaTjlrbnlWelhLWUhlTVJoM2pFYjdPbWw5WThZc214NGhqRGMyeXBUanhpOEVSZUhrZFA2VFAzTDNsblR4Z2VzVGFQT0xlZ0pmU0lVNjBSZjNuVzdsNzNBVHhpRU41bHc3blNFZUV0amtxc08yeFVmZFowZzVXMVJDY1FBZG1zS3g0eFJQUmhpVDNETzI4MFlCQUxoUjRZbkdVOTR1NnlwaXZ5aUhNSXNXdC81Mk52Qkk4WUJIV0J2dkxRcS9yRHpLY1pqNWlzNmZMdHN1VHc1QzN2WlJkTWtzTWo3dHV1ekNUemxtbUFKWEl4bmhCMU9ZKzR1NnpwUXNjN2loUWlrVzZUMFBLWG9kLzc1RHhpYmU4ZlJNYXdSRWo2Nk9LczRVUU5zUk9peGlOTzVCRkwxcHBlcnY1ZlplMlMxWk1QV0daNk5DNDlCcGxESDlxMkxadFVQV2w0MXdBU2lWdGtVZU1SU3g2RHVOeFU2SmtMWFVQZy9XZGQydzVJc05rRlBlS2wwTHZuK01YMDQxY2lKRTA5YVlFR1dWZ2JxTjRqYmpWcldzUGxQRmdocE1SbFFXTzZQSHovRWlGS3lXc24xRm5FbGp5OTJETXMwQ2hTZzI5aTBHVHppSnZMbWhZc3hacFZpRDBlY2ZJY0NxTU5YcGUvRFBDSWl3b3hvejVadjluWU02eHJaaVFSb21heHZ0d3N0c1dzYVMyZTJSUjQzMHVKMHB3Qk95RzJ3SW1FUm85NHc1WWs2eStMVlB0ZzgyVWJabVd0b0ZxUCtBOGVjVm9odm5xdkFmdDZzeXpaQkJoWHAyY3VuRDByNmhFejRyTk5uRi90R1VhRTVSdElLaXkxOEVhVHQ5VjBjWDBWSE5qRHhmMjhHcVRudjVzVVhhSGU1TlY5ajByNnh2aGduVmpUdXg4eDh1S1ROVkU3anhDbmFheFpLRVRObHFZT0IvbU5wL2pWMHJQVjZnVng3M0MrMDQzSVp4MHpwbFVveVlKTXVqN0RYdDJLc01ibnI3VWRFT0VrdG4yV0NrbnpWdE0zbWxUb2dsa1RYaG8wTktreUREcjlyejRSbGxvWEprdTY1a2FqNFNDSFVGQlNrVWtnL0xMbm9zNFZZeVZ2NHkwNTkyRUNBR0lNU2Rwclkzc3FEVWdEQWlESVVMZEROZFBtbVJ0UStMakU0S0lDQUFBZ1pzdWxrck5XM21aaFFaWnVUTVFZQUM4WmtudkNVbldrS2FxaXdTcysvN3dTM2dBQXFFS0VKV3VHczFWSmtWZjhKZGl3RTFtcUFBREo3UGFHNDlTb1p5eTRYbnhRb3hRQUlJblR0TENVMkg0alM2MFg3M2pGQUFBeTl2bjhPVXNmdG9GOVZ1Z1ZuMytXV2krbThoWUFRTHlESkhtaUVxY3ExVERyT24vZlNJc0hBRkFoeEtPZ0NNKzgyWHBDSUpJTnZ4QUNBUUI0SmNLU1owaHpoRzJGWWp4Sno4SVFZd0NBWUJzc3VVMkpwY0tLTzhRaUtNYlVwQVlBQ0JEaDgvZE5NSG1XWTJzcjd4aXJwQmpUR1FBQXN0cmRFYnZiUnFmWUpmY1kweWtBQUxLSU1PY0x0eEltRVY2cjJEbXRDUURnMHRZdTBvbXlPRDV0ZFJUSjVDM0VHQURnbnlRRmxkZzYydmhzVFZxTXFiNEZBSWl3ckFpVElVM281UGs1eG9ST0FLQmptem9UYllRM0hXZVZGbU02RGdCMDZBbExSaGs1MXJERGpyVGhHUU1BcVBDRTJhYUVHQ1BHQUFBUFJGamFFNlo2WWNlZFNuSmJFMklNQUhqQ2lEQzg2RlNTUmNsWk13YUExa1g0NEZBZEVPdFlpVTVyd2pNR0FEemhnTDNDT0N4Z2R6SnBNZDZ0ZzdIcGJBQ0FDRk93QXp5ZThaUkFqTmtUQndCVjJzVUV4VHArTE4veHB1R3UwNlVRWTlMeUFhQkcyN2hJaXpCdkZieENuQ2dNYzV5aGIyYUJBS0RhRmhxL3I0Z3d0QmFPT1RqUEdBQjZGZUgvTGROaC8rQk54MHdoeHV5WkF3RE5Uc2lXU29RQjNuWk1hVEgrZTlnMWdnd0FpbXlkZElHamYzTmtyanh1Z0VlencwU2VNWWRlQTRBbUwzaE1JTUlVTjRJcVBPTU5NUWFBd3JadFNtRGI5Z3V4eDhhQldzOTRZNjh4QUJUeWhGUFpOTVFYcXZPTTJkNEVBRm5zbVBIN21qcktoeUJEeXM2Y0lwVHo5eFFTZThBQUFBaDd3aHVlTUxUUW1WT0pNVWxjQUpES2JxVkl5dnBST3hveGhxemhuUVFIUlppbmtyQnVEQUFpdHVyOFhmb0l3MHNSNXExRENURWVFczB3ZDNQZG1BNE9BQkVpdktTTzRBRVVDL1VrRnVPRGRXTUFpSFFVdHRRNUxRQXF4UGo4YzZvT1QrZ0hBSjQ2Q0ZNaUIrR1BXYW9YbXdRYXhYaE4xUEUzdGpnQmdNOFdKZHhtK2V2d0dtd1JhQjRFUzhKQlFLZ2FBTzdzVDhwUTlOK3oxUUZxR1JncFo2UXJTVndBWUVYalVvYWlPY1lRcXAyZHB0cHIvR3QyeXVBQTZGcUVsNFMyWnVWdFE3VkNmUDQrSkp5bFVvMExvRzhCSGhPR292K2NBay8wRFpyd2pJZkVnK1hId1JFTUdJQXVSRGhWZ1E2MkowR2JneVpEK0loRUxvRDJKL1U1SnZZa1pVSHpBMnBPT0lBKzVURlpPd2JBQ3lZcEMrQnFSbnYrUGlaZU45N3hqZ0dhRXVBeFlZMENEcHlCUGdVNVEzanB4OW94Z3dzQUw1aWtUMkJ3WFNSVEpWNDNadTBZb0c0dk9QVmsvZTk2TUxZQmVoOXdVNFlaNzhacFRnQzZKK25HNzBzR20wQU5lNENML2NhcFo3K2ZmWUdEL2YwQW9HWlN2bWV3QXpPVGNnQkxqRFBVcVhZbWN6RVlBY29Jc0pFenNtWWEreVBqSHNEaEdSdXo0aVBEb056WTZnU2dZdktkWTd4VG94N2c0U3c1MXd6NU0wQUhCQmtnei9nMkp0eDdwakUrM1UzOEFjQS9XT2RNQS9YNHJCc2h5QUJKUGVBeFV6NEk1VzhCQkFkdnpvRzcyelZtR2J3QUlwUHFNV09VNjg5VkhnaGpHU0IrSUM4WkIvRkdPQXRBWk53T0dkZUJMN2NxTW5ZQlpBZDRUdS80eDZCR2tBRWVDZkFuRVd2UE9GNFh2R0NBTnIzank4TWtHT0FBdHg3d25GbUFON1lsQVdRYzhOYmhFVnNKUWNaREJyajBnSE1MOEcxeERzWWxRRjRETUdjZStIakl3R1M0ckFkTTJWb0FUUVloYzJVZVoxSVhvZ3dJY0o2dGhsZDJnRllDS0NqRWxuZGN3akJjQ2pLdEJJMUZuNzRLWkVIL3FvN0ZHQU5RUGx2UFdMUDZ6a09lN1VwZEdBeW9XWURQUDMvMkFaY1E0SjF5dEFCMXp0NUxKSE9aaG1NeEJSa0RBalZOYUkyL213cU9vOE5PeG1JTUFkUXB5Rk9CY0xWcFNGYldrYUVtQVM2NC9udDVYckI1ajR3YmdMcU55MXpRcUZ5R3JmR1NRZEg0K0NvY2ZtWlBNRURyQnNkS05Da3B5THU5SDVrWlA1UVFYOHY3M1JTTUM4cktBblEwK3g4VkdCNm5sNHdSZ2xUaWUvNzlkRTRJZHdVQ1BETVpCZWhYa0NjbGd2eDNMUmxSaG9UZTczaEdoRFQwK1IrMW9lbnJBQml0U1lGbllJZXVwd3REaXFFQ3AvRGVpTzhuOUh4b0VlRFBoQk12R0FBMEM3SzVEV3E2U2E3QmdDRyt2blhmUTFGL1h1dzk5clFpQUZ4Nm1nb0YyUmJsSWNRZ1F4L0NxOWp6TlN0aURmUlRBSGhrNk01TG95RGI0ZXZ4aWNHR1pyemVULytjRmEzNWVqMWcraVVBUEJKaXkwUFdhdXdPSS90NnV2R1dNSUFWOXovTDY5V1M3ZXpxajR2dEFkUDNBRURTUTlZcXlMYTNQRjk1eXlFR0g5UUk3M0QydVVWcHlQblgwc25WODlIU0FQRGFTTjRaRTZNQzBSL2wxMkdzTGM5MkVSR0VXWS9vV3NMN0NUZnZGZlN4bldNSkFhQ2tjZjFVNnFyQllKckN2QnJDUERpRUFZRk9KN3BmUnFoNXFVaDR2V2R4MDFjQUlKdWh0ZjV1cmlCc2ZlZlJiSmJYUElTS1RJOUc5K29kQkV4bXpERHpaNDMzcUt5dmZOWi94NnZvRVFDQUNsRTJrbW1PQ2tYWkZ1ZlZTQUliZlFiM1RxQnFGT3kzejNFSzd0aUE2UDRLUDdzbWFBQUFLZ3ozaFVHZUt3czNob1MxcndSNkNCVmFuMWlYdkI2MHRTbTJabWg1cTF4d09jSVRBSm9WWmUxYlRxUkZlckdFZWpTM3N5aHZ1K0ZHYUUyeDNSc1MzS0NEU0FBQVdnaFpmenl2V3RlU0pZUjZOOFJzTlFSdU5vUjdzZ1RjRlBMUkVFclhuOGVMYXpJeWttZmp1MDJCYlYxa2ZWWGJXUHNGZ0s2RWVWQjJFbzUySWJldjNmcHAvMzd3M29KS1QwNTN5d2FNV2dCb1Zvd2R4OVB0aUVNMlllOWFmSzlPUDBKOEFhQjdMeGxSNWtvb3ZyUGQ1MXJJYmdjQVNDM1VZNmRyeWx4eWg0Snc2QUlBd052d3RYV05sWlUrNUNwMFRHWkluMktrQVFBOEVPU0wvellZVzZMd2x2djJldWVyYkdjRUZ3Q2dUQWg3eFZ0dSt2cVVJcDA4NXhRanhBQUFDRE9YWUEzd3lTNndnZUFDQU5RbHpJTlJ4R0w3Wm8rdDlsRHo1S3RzaFFnREFOUXB5S1lYTlJsZU0rdk1aYjNkRVZFRkFHaFVlRzlFK0M0QmJMVEVtYkIyZk9FUXM1em45T1NJU1hvd0FFRDdYbkhvc1g2VEZkckdnNzQvTnRMMGNvZVE5NDhBQXdBZ3pMSG43czdHMmJ1YmNjQkRhMEs3V1NkTFRaOERKNTY4WTNvZEFBQWs4NkN0Znp0YVlqMDdUanphRXgzV1lCOENzUWVjQkRYZGViV3VkNENYQ3dBQWFyenBOK0p6Y2FTaGZZVGhrK3ZxR01VaHhiTmUvYi8wRGdBQUtDTE1vU0pkeWx0OGUwOTR1UUFBMEl3SDdmTWFuNGo0bTR1V0FBQUFTT0NGQTBCZC9BZG40QVFzU0NPa2pBQUFBQUJKUlU1RXJrSmdnZz09JztcblxuZXhwb3J0IGludGVyZmFjZSBPZW1UaGVtZSB7XG4gIG1lbnVCYWNrZ3JvdW5kOiBzdHJpbmc7XG4gIG1lbnVBY3RpdmU6IHN0cmluZztcbn1cblxuY29uc3QgY29tcHV0ZVN0eWxlc0ZvclN0b3J5ID0gKGFyZ3M6IEFyZ3MpOiBzdHJpbmcgPT4ge1xuICByZXR1cm4gY29tcHV0ZVN0eWxlcyh7IG1lbnVCYWNrZ3JvdW5kOiBhcmdzLm1lbnVCYWNrZ3JvdW5kLCBtZW51QWN0aXZlOiBhcmdzLm1lbnVBY3RpdmUgfSlcbiAgICAubWFwKHN0eWxlID0+IGAke3N0eWxlLmtleX06ICR7c3R5bGUudmFsdWV9O2ApXG4gICAgLmpvaW4oJyAnKTtcbn07XG5cbi8qKlxuICogTWltaWNzIGhvdyBzdHlsZXMgYXJlIGluamVjdGVkIGluIENvbnNvbGUuXG4gKiBJdCBpcyBuZWNlc3NhcnkgaW4gb3JkZXIgdG8gYXBwbHkgc3R5bGVzIHRvIGdpby1tZW51LXNlbGVjdG9yIGRyb3AtZG93biBvdmVybGF5LlxuICogQHBhcmFtIGFyZ3NcbiAqIEBwYXJhbSBkb2N1bWVudFxuICovXG5jb25zdCBjb21wdXRlQW5kSW5qZWN0U3R5bGVzRm9yU3RvcnkgPSAoYXJnczogQXJncywgZG9jdW1lbnQ6IERvY3VtZW50KTogdm9pZCA9PiB7XG4gIGlmICghZG9jdW1lbnQpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICByZXNldFN0b3J5U3R5bGVJbmplY3Rpb24oYXJncyk7XG5cbiAgY29uc3Qgc3R5bGVzID0gY29tcHV0ZVN0eWxlcyh7XG4gICAgbWVudUJhY2tncm91bmQ6IGFyZ3MubWVudUJhY2tncm91bmQsXG4gICAgbWVudUFjdGl2ZTogYXJncy5tZW51QWN0aXZlLFxuICB9KTtcbiAgc3R5bGVzLmZvckVhY2goc3R5bGUgPT4ge1xuICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShzdHlsZS5rZXksIHN0eWxlLnZhbHVlKTtcbiAgfSk7XG59O1xuXG5jb25zdCByZXNldFN0b3J5U3R5bGVJbmplY3Rpb24gPSAoYXJnczogQXJncyk6IHZvaWQgPT4ge1xuICBpZiAoIWFyZ3M/Lm1lbnVCYWNrZ3JvdW5kKSB7XG4gICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLnJlbW92ZVByb3BlcnR5KCctLWdpby1vZW0tcGFsZXR0ZS0tYmFja2dyb3VuZCcpO1xuICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgnLS1naW8tb2VtLXBhbGV0dGUtLWJhY2tncm91bmQtY29udHJhc3QnKTtcbiAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUucmVtb3ZlUHJvcGVydHkoJy0tZ2lvLW9lbS1wYWxldHRlLS1zdWItbWVudScpO1xuICB9XG5cbiAgaWYgKCFhcmdzPy5tZW51QWN0aXZlKSB7XG4gICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLnJlbW92ZVByb3BlcnR5KCctLWdpby1vZW0tcGFsZXR0ZS0tYWN0aXZlJyk7XG4gICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLnJlbW92ZVByb3BlcnR5KCctLWdpby1vZW0tcGFsZXR0ZS0tYWN0aXZlLWNvbnRyYXN0Jyk7XG4gIH1cbn07XG5cbmNvbnN0IGNvbXB1dGVTdHlsZXMgPSAodGhlbWU6IE9lbVRoZW1lKTogeyBrZXk6IHN0cmluZzsgdmFsdWU6IHN0cmluZyB9W10gPT4ge1xuICBjb25zdCBiYWNrZ3JvdW5kU3R5bGUgPSBjb21wdXRlU3R5bGVBbmRDb250cmFzdEJ5UHJlZml4KCdiYWNrZ3JvdW5kJywgdGhlbWUubWVudUJhY2tncm91bmQpO1xuICBjb25zdCBhY3RpdmVTdHlsZSA9IGNvbXB1dGVTdHlsZUFuZENvbnRyYXN0QnlQcmVmaXgoJ2FjdGl2ZScsIHRoZW1lLm1lbnVBY3RpdmUpO1xuICBsZXQgc3ViTWVudTogeyBrZXk6IHN0cmluZzsgdmFsdWU6IHN0cmluZyB9W10gPSBbXTtcbiAgLy8gSWYgdGhlIG1lbnUgYmFja2dyb3VuZCBpcyBkZWZpbmVkLCB0aGVuIGRlZmluZSB0aGUgc3ViLW1lbnUgY29sb3JcbiAgaWYgKHRoZW1lLm1lbnVCYWNrZ3JvdW5kKSB7XG4gICAgc3ViTWVudSA9IFt7IGtleTogYC0tZ2lvLW9lbS1wYWxldHRlLS1zdWItbWVudWAsIHZhbHVlOiBgY29sb3ItbWl4KGluIHNyZ2IsICR7dGhlbWUubWVudUJhY2tncm91bmR9IDgwJSwgYmxhY2spYCB9XTtcbiAgfVxuICByZXR1cm4gWy4uLmJhY2tncm91bmRTdHlsZSwgLi4uYWN0aXZlU3R5bGUsIC4uLnN1Yk1lbnVdO1xufTtcblxuY29uc3QgY29tcHV0ZVN0eWxlQW5kQ29udHJhc3RCeVByZWZpeCA9IChwcmVmaXg6IHN0cmluZywgY29sb3I6IHN0cmluZyk6IHsga2V5OiBzdHJpbmc7IHZhbHVlOiBzdHJpbmcgfVtdID0+IHtcbiAgaWYgKCFjb2xvcikge1xuICAgIHJldHVybiBbXTtcbiAgfVxuICBjb25zdCBwYWxldHRlQ29sb3IgPSB7IGtleTogYC0tZ2lvLW9lbS1wYWxldHRlLS0ke3ByZWZpeH1gLCB2YWx1ZTogY29sb3IgfTtcbiAgY29uc3QgcGFsZXR0ZUNvbG9yQ29udHJhc3QgPSB7IGtleTogYC0tZ2lvLW9lbS1wYWxldHRlLS0ke3ByZWZpeH0tY29udHJhc3RgLCB2YWx1ZTogJyNmZmYnIH07XG4gIHJldHVybiBbcGFsZXR0ZUNvbG9yLCBwYWxldHRlQ29sb3JDb250cmFzdF07XG59O1xuZXhwb3J0IHsgY29tcHV0ZVN0eWxlcywgY29tcHV0ZVN0eWxlc0ZvclN0b3J5LCBjb21wdXRlQW5kSW5qZWN0U3R5bGVzRm9yU3RvcnksIHJlc2V0U3RvcnlTdHlsZUluamVjdGlvbiB9O1xuIl19
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2VtLXRoZW1lLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wYXJ0aWNsZXMtYW5ndWxhci9zcmMvbGliL29lbS10aGVtZS9vZW0tdGhlbWUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUlILE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFhO0lBQzNDLGNBQWMsRUFBRTtRQUNkLE9BQU8sRUFBRSxPQUFPO0tBQ2pCO0lBQ0QsVUFBVSxFQUFFO1FBQ1YsT0FBTyxFQUFFLE9BQU87S0FDakI7SUFDRCxJQUFJLEVBQUU7UUFDSixPQUFPLEVBQUUsTUFBTTtLQUNoQjtDQUNGLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FDM0IsNHNsQkFBNHNsQixDQUFDO0FBTy9zbEIsTUFBTSxxQkFBcUIsR0FBRyxDQUFDLElBQVUsRUFBVSxFQUFFO0lBQ25ELE9BQU8sYUFBYSxDQUFDLEVBQUUsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztTQUN2RixHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQyxHQUFHLEtBQUssS0FBSyxDQUFDLEtBQUssR0FBRyxDQUFDO1NBQzdDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNmLENBQUMsQ0FBQztBQUVGOzs7OztHQUtHO0FBQ0gsTUFBTSw4QkFBOEIsR0FBRyxDQUFDLElBQVUsRUFBRSxRQUFrQixFQUFRLEVBQUU7SUFDOUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2QsT0FBTztJQUNULENBQUM7SUFFRCx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUUvQixNQUFNLE1BQU0sR0FBRyxhQUFhLENBQUM7UUFDM0IsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjO1FBQ25DLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtLQUM1QixDQUFDLENBQUM7SUFDSCxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQ3JCLFFBQVEsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyRSxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQUVGLE1BQU0sd0JBQXdCLEdBQUcsQ0FBQyxJQUFVLEVBQVEsRUFBRTtJQUNwRCxJQUFJLENBQUMsSUFBSSxFQUFFLGNBQWMsRUFBRSxDQUFDO1FBQzFCLFFBQVEsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1FBQy9FLFFBQVEsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyx3Q0FBd0MsQ0FBQyxDQUFDO1FBQ3hGLFFBQVEsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO0lBQy9FLENBQUM7SUFFRCxJQUFJLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRSxDQUFDO1FBQ3RCLFFBQVEsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1FBQzNFLFFBQVEsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO0lBQ3RGLENBQUM7QUFDSCxDQUFDLENBQUM7QUFFRixNQUFNLGFBQWEsR0FBRyxDQUFDLEtBQWUsRUFBb0MsRUFBRTtJQUMxRSxNQUFNLGVBQWUsR0FBRywrQkFBK0IsQ0FBQyxZQUFZLEVBQUUsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQzVGLE1BQU0sV0FBVyxHQUFHLCtCQUErQixDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDaEYsSUFBSSxPQUFPLEdBQXFDLEVBQUUsQ0FBQztJQUNuRCxvRUFBb0U7SUFDcEUsSUFBSSxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDekIsT0FBTyxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsNkJBQTZCLEVBQUUsS0FBSyxFQUFFLHNCQUFzQixLQUFLLENBQUMsY0FBYyxjQUFjLEVBQUUsQ0FBQyxDQUFDO0lBQ3RILENBQUM7SUFDRCxPQUFPLENBQUMsR0FBRyxlQUFlLEVBQUUsR0FBRyxXQUFXLEVBQUUsR0FBRyxPQUFPLENBQUMsQ0FBQztBQUMxRCxDQUFDLENBQUM7QUFFRixNQUFNLCtCQUErQixHQUFHLENBQUMsTUFBYyxFQUFFLEtBQWEsRUFBb0MsRUFBRTtJQUMxRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDWCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFDRCxNQUFNLFlBQVksR0FBRyxFQUFFLEdBQUcsRUFBRSxzQkFBc0IsTUFBTSxFQUFFLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFDO0lBQzNFLE1BQU0sb0JBQW9CLEdBQUcsRUFBRSxHQUFHLEVBQUUsc0JBQXNCLE1BQU0sV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsQ0FBQztJQUM3RixPQUFPLENBQUMsWUFBWSxFQUFFLG9CQUFvQixDQUFDLENBQUM7QUFDOUMsQ0FBQyxDQUFDO0FBQ0YsT0FBTyxFQUFFLGFBQWEsRUFBRSxxQkFBcUIsRUFBRSw4QkFBOEIsRUFBRSx3QkFBd0IsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoQykgMjAyMyBUaGUgR3Jhdml0ZWUgdGVhbSAoaHR0cDovL2dyYXZpdGVlLmlvKVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHsgQXJncywgQXJnVHlwZXMgfSBmcm9tICdAc3Rvcnlib29rL2FuZ3VsYXInO1xuXG5leHBvcnQgY29uc3QgT0VNX1RIRU1FX0FSR19UWVBFUzogQXJnVHlwZXMgPSB7XG4gIG1lbnVCYWNrZ3JvdW5kOiB7XG4gICAgY29udHJvbDogJ2NvbG9yJyxcbiAgfSxcbiAgbWVudUFjdGl2ZToge1xuICAgIGNvbnRyb2w6ICdjb2xvcicsXG4gIH0sXG4gIGxvZ286IHtcbiAgICBjb250cm9sOiAndGV4dCcsXG4gIH0sXG59O1xuXG5leHBvcnQgY29uc3QgT0VNX0RFRkFVTFRfTE9HTyA9XG4gICdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQWVJQUFBSGlDQVlBQUFBMDZjK2pBQUEzekVsRVFWUjQydTJkOFpHbHFoS0hiMDBNUm1FY2htSXVSbUVxSm1JVy9yODE3NzFibm4wTW80RFNRQVBmVjJYTjdONjc1NmhBLytpbWFmNzVCd0FBQUFDZ0o3Ni92NzgwWHJRTUFBQTBMN0l0VFJab2JRQUFVQ05RRC8vdDhOOXJQSy9KdU9ieldzNXJ0YTd0NFdYKzI4VzRQdC96K2Q3UHZRem45Wlg2WFFBQUFEd1dtb0QvZjdERWRUWUU5U09PKzNrZC83MytLTHNPNC80MlM4Um5TN1NkN3dTUkJnQUFVY0c5OEdZL1h1V3FVR0NQVElLOTNRajFJRFc1QVFDQXhvWFg0OTJhWHUzSG85WG95V3IwcWo4aS9WaWc2YUVBQUIySjd2bmZQdUZrTTR5TTRNcGZINEgrZU5DMzRvd3dBd0MwSzd5bXA0dVhxMU9jZjdVZklXMEFnTXFFMTFyVE5jUExpRzQ5b2UxUFdIdkFZd1lBcU1Uck5SS3BQaUZteEswZHJ4bGhCZ0JRNlBWK1FzMnM3ZllwektNcmpNM29BUUFRRUdDSDE0dndjbjJFZWYxNHkzZkN6SWdDQUhqditRNUdWdk9POEhCNTFwZy8yNmJHME1rZEFBQUNmQysrSytMTEZTSEtuNHhzUkJrQTRLSDRFbkxta3I0dVJSbEJCb0R1QlBqQ0NPTDVjcFh3bEg4bGV5SEtBTkNGOTJ0VXMwSjhmeVljbVFjdVhKMmdaSitpNUxydVRtN2FyUXRSL3I4b0QzaktBTkM2OXpzWWhUVjZFbGY3Y0lTcms0eUdsSk9nbThuUTFYR001bUVXOW9FV3ZTUjZUWGpKQU5DYTl6czN1dTVyZXEvQkp4RDV4RExsZFRkSkNyaEgrNGpIeFJMcWJ0YVRHZVVBVUl2M096YTAzZWp4YVVLU1h1d0wwWHgxRm5DSWdIdUUyajZEZVc4b2REMlo3d0l2R1FBMGU3OW0xdk5ScWVoK3dzaVB6OWYxMWI2dW9UMDlKVVFmUFlkMWZuUHRaVWYzczE4TWhLMEJRSnNBRDBhbHExcFAvcG11OXBxR0NoV25BNFY3NUJmaXZGY3lhVHVzdFdReXJnR2d1QURYRm43ZXphcEx2c01EWWtLMTlKV2ZJVnpmZTdPcXAyMlZyU1ZQVjg4T0FKQmFnR3RJdnRwZDVRNURQVHA2UURHdmVhcm8rTXI5N0dkTTJnQkEzcXN4L2p3cDkxWitGR3BBWUt1YTNEM3htUGZhMXBGcGNRQm9XWUROazNlQ3QrNWdIS3YzbnJXZndQVlhrTW0wQm9ESEFtd1lPNjBDN0t3WmpPZmJ0aGc3dkdXTlc2WU9QR1FBQ0RaeXlqM2d6YlhXaS9qaUpSdlZ3alNLOG1GUEh1bXJBUERQUllFQ2JRSzhQVTIwZ240ak9EZi9qN2JUdlBDUUFlRDM0RmNtd0xzcjJZcVdneWZlOG8wb2F4TGtINU5oV2crZ0l3TmxuWUNrSmVGcVpJMFhVa1Y5akwvVFZJRG03N1lubjNjUEFHMTV3SU1TQWY3VThPWDRPU2psSldzcFNyTmZaZjdUY2dCdGVzRkw0Zld5M1pYeFRJdEJRVkhXc0VUem8xSVhZd0tnTFM5NExqenIvMVVLRUFFR2JSTlZSVjd5YXU5QnByVUFLaFJnWXgxNEs1aVFjcm4yU3l1QmNqSCtNczdTTGluSXJCOERWT3dCbDF3SC9qZjg3RE4yQU5yRjJmanpWSGc4VFhqSEFKVVlqY0t6K0gvMy9WNkpMNjBFall5MWtqc05WcnNnQ0MwQ29NOExMaFdHM3N3Wk95SU1IWGpJUTZIRXgrUHFsQ2RhQ0tDZ1liQ3lvWXNKTUVZQk9oMkhuejNKQjluVkFQMTZ3Vk9CTVBURzlpT0FYLzIveEpMUTMzS1pqRUdBakY2d01STmZTd3N3QUdQeTE3ak03U0h2ZU1jQTdYdkJHNmZHQVBqRjJEb0ZhaTZ4OTVneEN0Q1dGOHdhTUVEOEdGN3dqZ0h3Z3FNR016TnNnUGRlY3FGSjlNcmtHVUJ3SUdlY1ViTTFBaUNSR0o5L2wzT0xJZDR4UU16Z05RWnRMaS9ZV1FtTFFRd1FQN2FOMzZjU1k1dHhEUERNQzU1ekptSWh1Z0JGeHZ5Y08rR1M4UTNnRitFaFUranFWOWdLTHhpZ2lIYzhaRnArT3V3U3RMUUV3RCsvVGtyS0ZhNWE3b3dDQUJRVDVGem5JWlBJQlhBekNKZE00YWtCQVFaUWJRdm1UQkd4MFhBQ3NBWFF0U2VjSXhSOWtEMEpvTjhtWk5ydWRCQ3FCZ2JjL3dkYmpsRDBlalhRQVVDM0lHZGNybG9SWStoMWdNMjVrckVRWUlCNnZlUHp6MnVPWlN0c0JmVGlCWDlsR0ZSNHdRQjR4NitYc0xBYjBMSUlwNjZxUXlVZGdJWTk0MHplTWV2RzBLd0lwNTdOcnJ4dGdQWnRTVzU3Z2hoREN3S2NlajJZakdpQXpqeGs0MXBaTndid3oxd1h6aDhGZ0lTQ1BCdGJrcExzTjhhK1FNMGluSEk5ZUtZNkRrRGZRbXo4T1hVOWdnbGJBN1hOVWxNT0NpcmlBTURkNUg5aDhnK0VpZEllWGJnaXdBRGdFZU1wWWFpYUl4VkJ2UkNuSEFDL3RoUXdFQURnU3BBVFIrVTROQUxVRG9BNWRTZ2FBT0NoWFZvU1psVGpFRUFYSXN4ZVBnQ0l0VTlUUWllQjdVMVFQUHp6bFhER3VSRCtBUUFoV3pVa3lsMWhleE9VNjlqbjc2azIwMCs4YVFDUXNsbUdJSytKaWdxTk9BNVF3aE5lVTFXeTRVMERRRUlIWWtsVjRROGhocHdpbkNJYmNiTm5yd0FBaWV6WlJPRVBRSVF2OXVZUjJnR0FqUFlzVmMwRHhCaXlpUENSWW4rd0hVSUNBRWhsMXhKWEFaeXhaeUF0d3FrNkt6TkhBQ2d0eHFseVhoQmpTT0lKSjZrWHpkc0dBQVZpdkNERzBJc252SmxIRi9LMkFVQ0R2VHQvbnhOa1V5UEdvTW9UM3E0NlB3Q0FJdTk0VGxrckgrQkptR2FqVURvQTlHVDNqTDhiVXhVcXd2NUJhSGhtUzFrem1vNElBQlVJODVqZ05Ma0pod1JLaVBEQ0d3YUFHcjNqUkh1TjJTMEN6azY0c2k0Q0FKRDh3QWhxVTBNZUVhYVRBVUFMWW56K3ZxYzZLSUkzVFNkTFVRUjl2Z3J6QUFCVWJDZWxrMWdQempQdXZHTWxUTlhIRXdhQVZzVll1cmJDVGwwRmhIaE83UW5UdVFBQXo5aGI1QWg3MmFrSVQ1UnlBd0JRNFJtdnZOMytSSGdrT3hvQTRMMFluNzhqeHZCS2hJY1V4eGppQ1FOQXAySzhwemlibmJmY2JqaEZlbTBEVHhnQWVuZHV2b1RGbU9wYmpYZWNqZXhvQUFBNUlUNS9IMUtKTVcrNkxXOVljcS93d293TkFDQlpCUzcyR0RjWU9wbFRpREJ2R0FEZ2h4aVB3bnVNdjh6UGgzcEZlT0lVSlFDQUtzVjR4ZGJXTDhLU0dkSnNPZ2NBOE5qZDgvZUpUR3FRenBEZThZUUJBSUtkSU9rbFFYYW9WTm9SVm1xaEFnQVU5WXdYeWRPYXNNT1ZkSUR6cCtSTURCRUdBSGh2anlXZElwWUhLMm4waWIxc0FBQ3E3UE5HR2N4K1JGaHlIOXRzaDFrQUFPQ2RqUmEwelF0dnRJOVpGMWw2QUFEeWp0SWh0RjQ4WWFOMU52TEN2alVBQU5WMmVpU0p0dDNHbmFRcnVRQUFnSnl0VHBCTXUvRm1kWVU3ZHVrTWFRUVpBRUJlak05cmtUNThCNXRkdG5FM2p0NENBTUIyODFiTGVNTXpHZElBQUZWNnhsTFJUUFlYRjJ6RWtlUXNBSUNxbmFsUmNuOHhkankvRU8vU21YYzBJZ0JBZGxzK1U0KzZ2a2FUWE9pbmRpa0FRRUY3ZnY1NUZkcGZ6SmFtVEEwM01Yc3FPZ2xTRnprb2RYOVgzNnZsUGZYU1ppRnRFSE14K3JQMmc1MHRUWFUwbXRUaVB2VktJWG9XLy9UZjhRYjdhWE40OW83UG42T0FSL3dqK1phM202YWhWc216aFNISUNJMFgxNkRGT0xudVVkb1lYMHdLeHpOQ001L1hZdncrbmYvOXg3L044ZDV1M3NtZ3hUQVo3eTZxdlc0K1Irb2FydTRKNDU3Y3hzOGNtYWg3UmpxeExsemt2YTlHNXo3c0pEZEZrN1BEdVBaUE8wdDhoL0huOFRRVTI0UEl6SDdlNDJ5K3N4VDk3MktzbUcyMmxlN3puajRWblBWcWZNNTIwZmFTMTM1K3gvclpxNG9nWitrbkt5RnFuUTBqRlpJbVpQRXVYSFJvMnZZVlVOcDBrZm9PNDNzMmdZTDF4L25lUnVNWnZpVGZpMlBTdW10WXQzWVkyc2ZiVHdRTFFqelpaVEVqeGxrbWJMdGsxUzNlYXJxQnl6NnpmQjdNWGJpbzZBa29ONE4xaytoenhpUWtsYkZmcFRNOFBlRzlYVkh5V0pRUVgzakV2alhEcC8vTjYyMFJXU3MyeVNaRVhYbURrTlllWjBCM0RldnRBV3RKazVBSUw0S0cyOVV2eFR3c3o1alpGZldsYUk4NFVJaFRYK3k4S0RQR0NWRlhHcUtnRm1tNkNWRzJjSDlBZHVYcmNMbjEyVnRnbUhJejFuOW5LMmxyOVh6T1lkOTN6SHUwUE03cDRydDJCV05aVEloZEVaSHovWC9hNE8zUE5YQTVndVd1ZEgxbUVKaHNIYlJSdk1GZENFbXJhcGUxWlBqSHMxU3h2ODNtdGdUc0NBZ3BUeUZaeUViMjhoeGdVTGJZYkhUUFVrSlRIdkg1LzI0cDFnV3RTY040MnFFRHo3aElueGtsSTZMd2ZCQ01iRlZTT1VQZFMwNTJIT0dxV1VDRWZRSTh2aTBHY2I2N3lSUGhlWDNZdVZXbFNHMW8yaUdnVW12RWM0cUNIaDd2akxYSU1tTWVoeXlER0V1cy8weThmUEVKMGx3cS9POVlxdGhzWXk4b3dydTVkZVZOZ1llTGY3dWtGT09iNTlsYXlwcDJDYkU5TVltODE5QlNqQnQySm1uZlFROEtERlNKR2REQ1M4ODZLSkp0andsWXFuanNqUVJzei9vYkxyNElWMzdGUElmaHRSNHBFa3cwWmsxYjd6RGxHbkdTTFN1V01LK3NGeGVKeGhFaHpUaFFKZllNY3o1bDJvblNtR3Z5ay9JN1BYMXR6ZlFleGI2L3A2eHB4NFF3bVJnYTcvZXUzK3pZSFBVTzJvdzJ2QTlia1NXdHI1MlduR3RsTGk4ODRqUFgwclhJUFdJY0hFcnpaRTMzdEk4NGkxZXFkVzk5cDlFNDloWm44bm80MEVGbjlHSlB1Vy92eWJyMGs3VkZoOWY0WXkwMTR5bE9vMis5V09COXFWZ2p6ckNQT09kMnV1MnUvMlBrazBZakpJcnA0S2c5bk9FK0RrbnpSck41TmxQcWZYdXVUTzNJTE9uOWJyYWM4V0NHcjRESlJsRG9QU1JyV3NNYXNVUEF4TmFJTXdyeEVqdDVnbGZqWlNaeEs5M2dGSW4vMjBZSmlvUVpvNDJSWjZuaWVMUG5OcUN2ellYZjVlWktSbnZ3V2RxM0wxVzVSdndnZ2pkaEpaS1BsZGc4SXJMY0U3MVk5b21WYWJ1N3JPUG94QzFYTmE4M0lteGNoOFpTZUZMdnN2V3NhUTFyeEo1b0RkblRDZnVQWnhMRUlVQVJNMHVKQ2xvc3dPdUxab3lSMjMwMjN4cnV3elhGb3Z1Z0k4S2RRUkVBVDJpYU5lSTB6N1I5YytxUHBuNzBkQ21UWlFSalZobGJVSCtoNHhjWDQrakVyY0Ixb05lQzZURGVhc0pVRHEvWUtUQTlaVTBibjdrWHpKcDJlZVhZb3p4ZXNZaDJkTzNBQ1c1WFlwTzJqblljWThNL0FRUHMxYUNSdk1lQ1kySUw4WWlwTloxUGlCMzNzR0FaaWtmakhtOW42am0wTUFyTWFFaU0wTkdXWDc3RXFraEQvVHFNNUZrQ1VSR2VDdkJvbmFIK202enBvOFdzYVVWcnhGK3NFYXV3UVJ2NVJXVzlZYzZhMU5XZXprTWhBbzNySkozUjdCTUFMV0ZFNHgwTWI4bzNVbXU2U0xMV0liRy9IWkpFNHg3bEdIWFZYZ0VGRlo1Y1E2NUJCOUdoSXVlK1BVLzIvQnB6WHpIaXBzMXI5QW14b3cyNnFUV2QyaWJFUkM0Z2F6VHVzVlBYbzFlOFNTMnkwK0dyYU5zdFFFQVdhY01XTVBFYmxRcnhZekdsMW5UMmZjUXJSWVZVUlpIK3NNd3BNNU44bEhhT0NLdHQ1K0RNMzRCVGtFU3lHaDNDTmxRMFJtNFBPS2ZXZFBaa3JTRmxmNFZuL2NvemtXZXBNNUUzVEFVdHhRUERNU2h1TXhSZGRYc0Y3K2ZRdG03cXVOL3hiY0lXdGFiVENXR0EwYWQwWXRueEUxc1lxdDBEZ3dJelFxa24zY2VnV0IvMGllaEI0VEdjS29YWXM2WjkrVTZvTlozbkdFVFBiZytTUjh2M3JSbXYrUDBzOWxXeGJnUlovYUR3Q3F3djAxb2dKQzI2THBueEhYcUYrRTZNcVRXZDVCaE9YMzlsSzZXZXNiUGhGYnRmVVBSc0JRR3VMZ3F5dWc1UVQ3bTNOMFUxcDh6djdsV1dkKysxcGk5T3RvcTZqTzhjSEVhZTQxZjFqSnZwbXdNaDBzNVU4SWFyR3hoM1NTMnpxOUtWMUQ3TWlvWDRsVWZzaUVRMGxUWHRXeU5PNUVUc09BalZpREZlY2NwWkNwMjl1bmEvU3g0Njd1cFRTN1Z6alI3eDJ6WGlFQ0hXa0tqbG1KQS96amErZVQvTCtlNUdnV3M2UDIvejVLeXdiMWpSK0hHTWdiNjlZcUVaeW9nM1hMVVliOThGVHRIeWhNQTNiUldRUXMrNmZTbkVSYmY4SlJEaTdXYUNKM1d4amJKdSs3TktSV0NabmVBTjk5UUh4UGRnYXE4MjVianZ5Ylg5eXlQRTQ1TTl5RXJDaG84T0J4R2EzRWZWSjZhTVpmdTYwNW9RcjFMZU1OMnM2bjZ3K0xhbFNSczJ6NkE4dFBXdGtJbERRTExXM2ZhYVVjRmVZcEZTb3dXRmVMUFg2YkZMYld0UDFXMXM3YmtUbVhuU3Zhb2ZITTZ0SHluYjJWV2dYNHNRQjZ4cEIwV0czcXd2WjN3MnNYWVFLTjd3cEhiQmJCYWp3UjUxNHhXdnJRZ3hjWG9JTHF5UnVFYndwajFoeTVPb3RVUSs2MXpLaXdzbzNmazRNdUdvYWI2Y2R1Zk56OTExbENkT1FaVzJwKytJcklRM1REZHFRNFJMbFYrMHZudlJ1SzNuNHA2bnQ1TlNYNWE0Z3RCMGRNM3ZrSDNFRVgxbElrOEZyN2lKK3VHQ1JianhodHNUNHlWM1dibVFVcHJLeHMzclUzMjAxcHYyUE52MnNrMDNYeDM2bDlmcTI5L09pSzVPaTJMeUNZb25Pc2E4Z0NGd0N3Q1owbmpFV2JJVGZlY2RLMWtudmozVkozQjlXRHdFTFB6K055bVBJeVRwNjJIeTE1ZlJCcnZMSUdPWHV2T0s1NnJhWGJENE5sVzAydmVJajF5RjFrTlBoVkt3eDNhUjhOcGQyY201bnpOa2IvU2JjUjdpRVNld1h5U1AxbXVEdHNpRXZicmFYV0JyQWQ1d1B4N3hrWE8vbnNQakxPWVZCMVRUMmdRTlQvYTlrUUdUb09IbCswcDY2SU1qUkQxaG42cTBQMU1YUzZYZGhnSGdyVWVjOWVpeGdEWEFJZ010WU0vajlQTHpaaTFab0s1bGdaZmVjRElodGtMVVIxTnJodGlmdlJzSE1UWUVRTGZwMHlQTzdIa2VHdXJMQnN6V3Q0alBIa3F1aVFma0JrUk5mbEtGM2dQdnU4NU0ybzV0a0dkeTJ0WldKa2RWbjJCdm1QMTZlTVNGN2lOcmlEcGdZdkRITENKUjBzdU9mTWE3Q1VIVXVsdkswSFJnblhSMmRkUm5oNFpJcjNpdG9zMGp0eXdkRkZIdjF5TXVFQ3JkU2kyTkJCcjZSZUI3N2liR09SUGtSTGNEWlZ3ajlpV1o3ZGlwS3UzUkVwbTBOZFR3a0x2RXhtazZPQjV4Qm9FWVMwUm1Ba1Y0eTJCNDFnenRQYWRZZ3NvaHhJRWh6WVhSWGFWWDNGNE9rMkJXR3VkNmR1d1JLN21mU3lPYjRIemt3U0hDb3JOdVR6aE8vQm1OMytlVUdhaTV0bWNaWXJ6WGNIQUl1TWVmSjBvVGZDcVR5Z2VVZWppRUdJKzRnQmd2bmt6SjRXb3d2elFBbnduckVUSWhsVmpyUEg5T0lhVmtZL2JmUGhEaFZhZ050OHhDUEZabG1LRS9wMUdncmpSNzh6cjNpRXNXMC9DSThXSFhNQTR0bDNneFJsYlA5NGlQZzhDU3M1dWR3Qlh4akZ0S2J5TFhHdkhEU1J0YkxpdXdRd0VUdWVCbFZGVjZKWlFXdnJNdkQ0OVk2YjA1ajhNTC9PeVBBQjhlRVI1VDd4Z0llTWIxeldUZ3ZQZkY4NHhpNHp5bkVGdDlaUENGcUtFYVd6UkhKaGJyMjkwamxhUkZOK25YSTFaeXIzUGdJUHdjdHplZDEyaGMwL2s1UytDNDJGTHZGbmdRaWpkRmN6MmZRK3daSmNkNXFSS2VqckRtaWgycnh6TVdTTnJTc1gwdE1QczA1TUlieGlQV05FREh5TERWcXhCWHBqT1pKYnlCVjRlclN4dXRuQjd4UlI5WlhTRnFxRWFNRjRtOEppMFBzOFlPVW1hUmZYdkVXdHJmU3FxYUl5TTlQZzl4ekNYQWRsdGttbkRzS2JhQjVWNGp2cmtIVjVFU0hJdDZoSGo2YnVGNFJJSDZuU1E1OU9rUkgxcXpUaSsyR1MyQ2dyeVphN0NsendjK2Y1K0ZCWG4vZVBxSjIyaTdPTWtyWnpHV09mZitiRWpTbmpGOXYrd1oxVUpwNEZTbTZhL1RMelZzLzdqWWp2TXh2T3REVVRiWGs4Y0xvZjhxK1l6V255ZmorWTRYWS9tenBqeGt1dis5b0VlczhnQVJFSjFRNlE5UEIzUkVLbW5CWFVodnNxNnhoZ0ZyUGNNbllXazVyOVc0RmlQSmFjeTVCaXdoeU9mZjJRbFpxK2NaaHdMM1BWNzBwU0hYK3pVaUp0TlZuOGFtVlNQRXNlY2psQzNvNGlsV3o5NWhhRzdRM3YwNXdOdHNxcDlyQ0syMy9vNGhhMy9hcWx0ZUZWcm81cmhEWnFMVm5ySVZXdXlpWm1GNDhvd2x4Wmo3Z082MHpPcHNhK3dzQWdEd2lBRVU5T01qSW5zNmYzZzY0QXpWNExnNkFBQ0FBakdPem5jcWNkUFRkMnVuVndBQVFIZENmUDZzUjlNa3c5S0V0QUFBUUpGbnZGZVRQZTA1MzVTU2xnQUFVS05Yck4vQmxIVGhTZklBQUFCbFFqeXBMKzd4OFBRV3d0SUFBRkNiS08vcWEwOUx4ZEVCQUFBMGVjWHE4NStzY21Ca1N3TUFRRk5DZlA2TUNVK25QWk5hcUVEMnpOb3dBQUFvRnVTWVpPUzB4MkI2emdBTkRrc2p4QUFBb05FakZzcWVUbnZ5Vm1RMXJUM3B6UUVBQU1nNG5MTzZLbHRDMWJRV2hCZ0FBQ29RNUVGZExwVFF0aVVPeWdZQWdGcTg0aTFtRzFPeVpkallCV3pXaHdFQW9CSkJYdFFrSmh1TDEyUEUrbkNlaWlNQUFBQnltdmQ2S1RhSjR4bTdiUWtoQmdDQWlnUTVhaHRUcXRuQndyWWxBQURveUN0ZUk5YUp4eFEzRnJNK2pBQURBRUJ0UWp3WFQxQVdXaC8rVy9JTFFRWUFnSXFFT0dhZGVKVk8yS0tzSlFBQTlDaktlOUg5eEZMcnd6UWxBQUJVNmhXdlJmVlBZR016cHkwQkFFRE5ncXhpblRpbXZ2UktXQm9BQUNyMmlHTnlwT0pLT3d1ZHpjajZNQUFBMUM3S2U1RmlWa0xwMjZPSVd3NEFBRkRPSzE2TG5FOXMzTUFXVzErYTVnUUFnTnBFV09oWXhEaUg5THlCblVRdEFBRG9XSXp6TDlFS0xWSlRYeG9BQUZvUTVFR2lxTlZiSVk2WkJVd2thZ0VBUU8xZThmbHp5NXF3SlZESTQvZ2M5RUF6QWdCQUE0S2NOMkZMSWxPTVpnTUFnSVk4NHJuSUNZUVJpVnJ2WXVJQUFBQTZoWGdza2JBMUZLc21BZ0FBb0V1UWh3am45SmttU2lWcUljUUFBTkNDUnl4MTdzSWJJYWFpRmdBQUlNYi9GK0k4ZVZNQ0dkTTdBZ3dBQUExNnhIUEVUcUxoMFplZVAxKzc0T2FOMDR3QUFOQ0lHT2Rkc28zSm1FYUVBUUNnSlNFK2YwWmxUajhTNHNpTWFVcGJBZ0JBcTU1eFZPYjBFL2Q3SkdNYUFBRGdsMWU4SmEydklSUUhIMmt5QUFCbzBCdE9uemxOeGpRQUFNQzFDSisvejBsclRndlVtTjVJMUFJQWdJWTk0aW5tTUNSVGEzMWZ1SkV4RFFBQThNdFJ6Yk9GS1NZcmpEM0VBQURRc0NCSDd5b0tjYnRqQ2x2UGlIQlhJWnB1SmwxWHo5emFlMmoxR1h0b084amVsOUljL2lDMFlYa3liNVptZzFhRUtjZS9LL21NdWQ0TmJRZTEyNFR6WjlRV3BwQXZtampzQVFKQ002TjFEUzBOTnJzUEc4ODhuWkdmK1Z5SytmdytmUTcvbGhDNkV1SWI4SHpxbjdIMXRnTTFFN3cxeVNsTUFndlJmNHRhMDNtYm53MHVScHNmZG41QUt3SjhHdWY1blAzdUQ3WW9iT2UvRzdRWmRldjVobk84citkOUg0RnJYK1l6am5lZlQ5dEJ3MEs4eEFpeE54d1R1VWVLenRydmJMRHFqSG5MaUUrblFUNGlKcVdmbjZzcFZxV0Z5c2dEV1NMV3VleG4zVDdMVWlXZXNmVzJBNVhPU0pxOXhCSkt6L3BLTjUxd2ZWMitUYmNBajVGRzNMZTFieWpoWVJudDlobmZLWjd2VDI1QjdxSHRRSzBObk1TUFE3Um15eFR6Z0ZBaFBtb1dZc3VRTDRuRXlaNE56eVU4ck5OdzdJTFBjdmpxQ2FSOHhwN2FEcG9TWW5jdWxTSEVXMnhhTnAyMFg0KzRwbWN4RGpqWkhxd2Zya2FTajVuNHN6NFlPMnZxNk5FTG9mcUVtQmNyT2N0TWNGb2ZlSjFicXJyenJiY2RWR0VEeDRqb3l4VHlSZEhGUEdpdTVqdGoxYUZwYTFaN0JCamVLVFFyM0VvUzhnbFZrdVRHaHhHdUg4bEpkM3RySFlsUVBnRVUzVW5SZXR0Qk5UWndpQlZpWitaMFRERVBPaWFoNllaQ1MrdG5TOHZUZ2hCV1RkcmRsN2doT1lHMTFvTTN6M2RQRGdFUEtueGhKRWQ1azFOaW43SDF0b1BxSW1yUmhhOSs5QjBybXpLTnlrUHJIdkdpdmYwRGk3YnY1MzkvVlhucHh0QXZPWVRLdW84dDVJRHlHM0g5OWR5K2UvTmtrVzYwSFRRbXdsSEx1TTUrS1JIM3BrTjI1UkZYRTVxMjFoV1BrTXgveWVwTW5sRHFKdHcraTJNZGVFclJKd0xzeCt1SldnOXRCMzBLOFMrUDJCaElWTldDVUkrNGlxeHB5ekR2cnRKejBxSEdDNkhhcFlYS0dzT3pTNFJUaEZJdHo5a2xsbzl0UkE5dEI5VUs4Zm90ZVVxaHBCQURIbkZsOS8xcnUwMktaN0RHMkoxQm45NTRjc1puRHlFaW1EcFQyMkZIZHRvT0VPS2JNcGNDQng3dkxkVWFobUNQV0wwUUIvVHRMZldlMTR0N0dYMEpRQzgvZnl0NUtscEFoYjdscFRmY2ZOdEJsWFp3U1NYRU0wSU1BWjdCVXNzK1lrOVk4OGk5cEJJdzFwYW5DVWJuenlsbjJEWlFqTGU3SkNyYURocXdnNi8xTXRrSDAvbTY2b0RxczZZRDY2ZG4zM0pucmFkdUxvRjUrSm1ibGdteUZjcGRuMjd6NmFudG9FNDdtT1JjaG1RS0R6MEpzYnJRdExFbGIzZUZOUXNMMWZFMnVoRGdEYzhsUGJTcmJWRzBIVFJrQjJXWGNnTzJQY1Nkc1FpdGRVVDFRaHd3dVN5NjNjNHo1bzRubnF6REcvNnEzTkExMzNaUXJUZjhsVVNJSmM1WVJJaTc4NGlQQ3BLMU5xMEhsSGoyeHM2dU5kVUF6Mnl1UFl1MzFiYURac1E0NWdTbU1jVEFQdDRYaFJEakVXdnBBd0VacmlyS3NYcTJRVGdGeDdOT2RkUmFmckdIdG9ObTdHRDBVWWgzQlQxV1BHSjQ0QkdyWEJ2elJIalVaUGdIekt4SG4wRy84eHBySFk4OXRSMVVid2VqNm03ODZCOUNaeEhqRWZmcEVSK2Fxd3ZkaUpSR3ovMHVLZW5TK3d1b0RWLzlBU3l0dGgwZ3hMZFY1cElYc1ladVBHSkZ5VnEzQmxKVFgvV012ZFYxSk9HTk4xYjlGcHFXMnc2YUUrSkR4Q01PbUlVaXhIRG5FYXNUNG9DdEJhcHFvbnN5aFBlN1JDM0grbkFMMmRMTnRoMDBaUWVqRGtseUhmcndXb2dKdzNRMUUxd3FFT0s1aGdwd0FkN3Q0RGd6ZDIzcE5LQWUyZzZhc29mUnh3YmZmVEFlTVlRWW5ocEMwMHNOSWhXdzNuVHJCUnJqOVdncFg2T0h0b082N2FBblIrUDlHakVlTVR6b2dLczE4MWVUTmUzeDJ0Vm1FenZXUlNmSEd2RjJOeFliakxnMDBYYlFsQzBjeEVQVHNjbGFDSEZYblZEMUdyRWpiS3Y1cU1aYlkzNTF6NDd4V20yMmJpOXRCM2pFbDMxRHlpT0c5anVnVDRneDVsSDMvWFFMVTVGdE02Y0JpcnA2Ymp0b3hoN0tDM0drUnp6VExGMTZ4S3IyRVFmc2lkZDZNTVhYRTYvS00xNXpDUEY2dHYzKzRqcXUra292YlFkNHhDbUZtTkEwSG5FVm9XbXRlenREMWhtTjkrOGFyOG5Hb2tBRnZsL3QwRnZiQVI3eGJkWTBRZ3d2UFdMTjI1ZVdHbW9BQjJUZXZrcldTaXpFV3lvaGJyM3RBSTg0YVdVdGhCaVBXTms5M2haWlVHck1nNnRrbGNvdTlweSs5VXFJYnlZWXpiWWROR1VQeDV0SUNBVTlJTHRIZkNqZFIrdzBqclZYMW5yNmI0UzlnZUUwUWxmWDFYL2JRenppSHRvT21oUGlKRm5US3dVOUlNRHdMSnBQWHpydjhTNXNwQ3BjK09ZNHZkS0ZKSjUrcmt1SWJ5WWF6YllkTkdVUDFSWDBXT2wwWFFseExlY1JielZFYnh6SlBwZjNXdHZKUDA4ODR0YmJEdHF3ZzU0enM2T0ZtR01RNGFrSGNIelhkeDZ4dHREbTlMUWVyV2ZNYnNyNnpXNzNsVHVQdUllMmcyWWNFcm56aUJGaWVORVIxWHZFSVVaU1VZYjMrbFIwUE91VHFoS0ZubnJFcmJjZDRCSDdoSGg1K2FGcTY4QkNOdU96S2gwd3UvSkp3OTA2VTlBOStrS2pwWi96cGcyOGU0SjdhRHVvWG9pbmwzcDVQVkgyaElPQ2hKZzE0dTQ5WWxWcllwN0paZkVNM0lESnIvZitBc0s0ZzVLMmVKbzEzWHpiUVJNT1NZd1FEMjg2RmtJTVZaeEhYSlBYNHZCbUgwV1lIQ0V5TFdWSGQvdW94cENLVXoyMEhYUXB4THRQaU9lSUQ2Ymo5ZE1CMXhveTV3TnlINHFzTjZhNEw4ZG5qYVhiNWFsSDNGdmJRYlYyVUZZdnBUNll6dGQrQi9RVjVWYzZZTzQ4cXkxM0xlQ0E5YVh0NWVjNm4xR1oxeEMwUnR4TDIwR2ZRdnlyM3dvc1BxdFpqNElzSFZGOVphMkxRYk9VenZnUEVKZkg2NHZXcVVWejZSQzFkVGpGRkZOM29QVzJnK3J0WUZSeTg1dVpYdERpTTE1eE56UEJLanppaS91L0sxZ3pwL2F1ckpPVE5zbHp2UzB4THZhTUY3YmtlRkpydXNlMmc2cnRvR3hPbGNDK3FJUFpZTGNlY1RWYk5qd1R6ZG4yNkJLSWs4dVFiMExmNGFwL085dkdKTkV6VHA3U2Y0L3pDVnB1TzJqS0RyNnZSQ20wUVpsS01uM09CSThhUE9MQWRSM1J2YmVXRVI4Y2hseGthU2N3bTNPeHp6V1crdDZBOS92S0krNmg3YUNaeU9EcjA4ZWt6bGNrVzdEdkRsaE5FUU5QU0duN0xMTzhmUjVybmRUbklSNVNoeGtFcmhkL25uRzh1dDgzejNqKytVNnNqb3RuZjUxaDMycmJRVDAyVU9MWTROcys0eWtpSDNMTk5GTTNuZEFweENVdVlZTyttMnVQVDU3TCtvNHhZTlk4SlRRVWkyYzVhYms2RS9qaE0zNUUvM0FJMVJhN1J0eEQyMEYxZHZDdFZpNGhYeElseE13TXUraUl6c3BhVjRlOUt4MUlTOEJ1Z0RrMDlHZ3Q4YXllNkZLU2V0QVg3MzhPZU1ibDZiMmN6N2c0N0lXWk43SUxlc1ROdGgxVVpRT0hKRm9wY0JRaVp4TDNIWnJlVHNOWDRob2pEUHY4SU5OeE9UMjh5VHI0ZmpvL1p3MGNuSnU1eXlCbHRtOWc4dFJIWEQ3UE9EdWVjUW13RVp1WnZQbW0xblR2YlFkVkNQRWhuazhsY1NZeEhuSFhIbkhKYTNtN3ptbDRkMXZ1ZTgwa3dpRUpSNUxYYXEvUlNuckVQYlFkVkJHV2xqMkwrS0pqY3dJVHZQR0lTMTZ2OTVKYTY0aHp4Q3pYemlLLzlCSnpHL0lMUVo0alFtcStVUEJraDhjVGU4Uk50eDJvdG9HVFZpSGVhYVp1T3VIaU1WeFZlTVQyY3hraHAwVlFyTFlyZ1Nvd2cwLzFqTHU5UC9uaTJsTFZKVys1N1VDMUxZd3Biem1FR05rMFh3QXRoV1hVaGFZbEp4cUdVWjhlckIxZXJiV3E5cUlNVC9McE0rN252NWw4aVhrM0hyRjQ5S3kzdG9QaXpraWFjeG1Femxna2s3Q1B6amdhaVM4YXJpSEZnTFBXVnovUHZKelhhbHgyZ3ROWEJRSnNiMW42UE9OODg0eTNpWEVCTmFQdDlocHpQRitMYlFkcWhIajlsaXh2ZWZFRlVZdlFkRjVvTUFJUWNuYnVsMHZzdEQvajIvZEMyMEduUXJ4OVN4NzRjT1B0UkpXNXBCUDNKMUFsTDAzUDJVT2J0dHBIR2Rud29IOXRNY3RvM3Y0bVVUR0VUZzJ0ejRpQnRvTnUrMUZVTVE5dmFGcWloaVlkSGdBQUdoYmlxS2l4TndJamtCWExYbUlBQUdoUmdDWHlxTnpMdDlZbS9EVW1OWnNtQXdDQTFvUTQ0R1F6Mzg2aUllaUx6cDlSZTRsSmZnQUFnRVk5NGlYSkh1S0xMMHBUdmdzQUFLQmViL2dyMlI3aUN5RWVJOG9YY2h3aUFBQzBLc2h2TTZhZkhZd1VlY1FUbWRNQUFOQ2lSNXptSEdMSEYzTWNJZ0FBSU1ReUdkUGhRaXdRQitjVUpnQUFhRkdJNXl6NVU0WVFMMlJPQXdBQVFpeVNNVDI4K2NLSm10TUFBQUIvOVRIdFlROFhRaHdkQ3djQUFFQ0kvMTNxZlg3QVNHUjJHSm5UQUFEUWtnaEhPYWR2UkZqa3pFV0VHQUFBS2hkZ2tlWGF4eDZ4VU0zcGdTWUVBSURhaFRpeXh2U2YwNXQrN1JIbi9XSUFBQUNkUXJ3VjJkSWI2WXJQQ0RFQUFEUWl5SHVScGRySWhLMlZwZ01BZ0pxOTRmUG5HRnYydVpRN3Z0R01BQUJRc3hDZlY1bTZHZ0tsTGc4cWJBRUFRQU5Ddk1TV3RveDF5V2NxYkFFQVFNZENYQ1l5TEZSaGk4SWVBQUJRc3hqSEhBdThSa2VGamRuQVRtRVBBQURveVJzK2Y1YmRQU1N4ZjRyQ0hnQUFVTEVRTHhFZWNkenlyS25pckJNREFFQ25nbHpXRVJWSzNWNW9TZ0FBcUZDRWg5aWxXZW1iT2RoUERBQUFIUWl3eFBxd1hMS3l3RWxNZjkxend0TUFBRkNSRUMreHk3SmlOeVJ3OGdUcnhBQUFVSnNnNjBoVWxsb25wc0lXQUFCVUpNTDZsbVJqYndvUkJnQ0Fpb1E0SmdvOGZ4elpGRGUyeHRiYlJKQUJBRUN4QUg4SjZGMjY1ZGpJaGV0ME13UUFBQUJCTVk3WXRyU25FbUNKdXROc1l3SUFnQnE4NFdpdFMrcDBSczRTS0hjSkFBRGFoWGpSdWo0Y2V6N3huelB6bXV4cEFBRFFMTWhiaE02bHE1c2hWR2xrUllnQkFFQ3hOeHdWbGs2dWNlY1h4R3hqSWp3TkFBQ2FoWGhXVWRiU0ljS3g1UzZwc2dVQUFKcUZlRk85L0ZyRmpBRUFBT0NkeGtWRmZIUFBHR0ppNkRzaURBQUFtcnhoZ1RNVjh1ZEFFWjRHQUlCV2hMaEtYWXZjWjBWNEdnQUFOSW54R0p1SW5FM1RKTVBUQ0RFQUFDanhoa1hDMHRsMUxhTEtGc1U5QUFCQWt5REhoS1huWW5wVzNjSTJaSnRoMmxkTDkzVDFXYVV1VGZkZHNpMjF2M3RRN3czSFJIaVBJdlV4aEtwc0hSVDNBR2h6RXNhYmdNcjZiVXpPMDFxOU8wOFhhTklRanhmWGw3SjdHbDU2bGNQTjg1VzRCaVgzUFZ3bHFraUxzcU52bGJxWWNMUmp0K3JVTVlGVEtvNHN4MFZCaVJEUGZyYnY1L3JmbjhmY2JXMkVFU2VqengxdnlxMGFuN1ZZbjFYcUN0cDlrUEcrOS9OYXp5V3J3ZTRiQXUwNVhQU3RrdGVJL1dyQ1prM1Yxc1VRaksyUGRJbm1oUGlxclVkbEEyMS80aFVMblQ0bWZhMFBoRGozZmUrbitJdXRxVVpXUFVweFRZejhKbXpXMmtTdVU2UmJ6NTdpOW9UNHVKdHdGZmFJWHg5QUVqbG9EK0gvOXNnakRyenZ0L2NZSXNpVFVEc09MM1pxSEFtZkdZKzRmcnNWTzdrcnYvdEhhUC9WVG5mb1I0Z1ZlY1JIUmlFdTZoRXJ1ZThGanhnVTJxdjV1NVY2R0JLekNtYVd6WFJ3RlI2eHRkVWsyaU0yUG5kMWhHSFhqRC9YSjBMZ3VXK0plOWtDYk1BUzJaWjNIdkVxOUJ4UGY3THJvMzU3RlJYTjFSU1dsbGlES2xlVkJKcjJpSDFDL0dTTjJDRm9TK0d4OTlZalRyR0dPM3ZDeDYrWG9od1QvaEhiQVM5dFZVeEVSTS9TaE1mWVBYb29CbEw3UXF6SUl6NGlQZUxqYmlLcHFhakVSZGIwbjB6M3ZVcEZ3QUk4NG9tQ0hwRFplZHpVOVFQandmYVNhMGlnVm9qL2FQV0lYenpmNmxxcjFXYWdQVVpIOUw1dGtYS3N2eDFQOTNFYlFueTRoQjJCaE1qb3lxTzl3K3BDMCtmdnl6Zm5GUGZld1VmWE5yVkcxNGpYbk0vMmNvSzA1dGg2Y1NIR3k5dEVzd2NlTWRuTDhMUi94aVJwSFZsUFducHBoRVZtR1hTWnBqeGlqV3ZFYjdPbUY1VWw3cDRKOFpINnZpMHgzbUpyQ0lSNHhBQVArdE9lY3JlQ2hnZU15VUxiNkNKTmVNVE5aVTJIQ0pybWdWblNrM2NreFFRbGJ1RVJnL0NrZEdvbVNTdmhReks3eFNQTzRSRkxaazNYNUJFZk9lL2I4OTUyNlRWaVJpSUU5TVd0NmJvWFFrbGJLNE1LanppRFIzeWtTTmJDSTM0OFFmZjJDenhpRUhZVS9qUzlmT3JaS3ZIWTlZZG1QT0pXczZZUDFvaUQ3K05PUklNT1ZNY2pob1NSbVNkSld2VnNYenNIVEhRNVBBWld0UjR4V2RONHhLRWh3VFdrS0FrZU1RallndGd0UzB0TklpdzE4NkI4WERzZU1WblQ1ZHVsMkgySGJxRUtFR004WW9peEEvMUZhaU9UdGc2ODRxbzk0bDZ5cHRWSGNEVGN0MmN5c09FUlE0WnhFT3NOMTV1N0ZKdWRobGVNUjV6UUl4YlBtcTZ4b0VjdUlYWjRKTnVEejhBamhyZjlmNDdkelZOdDVUYUJoNmZBQng1eEtvLzRZSTA0NzZIbWQydkV2bmVIUnd3QzN2RCtMWERjWWJWOVRPQUY0QlhYN3hGM2tUVmRrVWRjSk52N1JvaVhCMjJKUnd3bHZPSDZIVUplUXBjZU1WblRsWGpFdWU3Yk1VSHppaWdlTVVUYWdHaHZtTENBRVJhZ2ExWHJFZjhRNGdKWGlvSWV4OTBwUnBxTzNpdWROZTN4U29JbmFFOU9YK0xZUXhBNjNLRXRSMUFnYlJ5dnVDNlArTXBZRG5ZYnBxN281S25xSk9rUkw1b05Va21QMkRDSVcyU2lGaDR4NVBhR0h4L1hXWU5YZkxCVzNLMUgvS21nOUxtbXpMOHZpYk9tdC9PNXA4US94NmNHNGVZODRpeHJ4QUhsTGVjbjc5OWhSK1pNNzM5QTdMdnlodHZiUW90WDNMMUhyTzJTekpyT2RXMXZ4MEJ1ajlnUTRUc3ZObmh5SGVBUjU3cXdRZldJOEZla0hXcXpxSlNBVjN5d1hsTzFSNnp0ZXBzMXZkUWt4Q1ZPamJLV0JkWlliempBSTg1MVRkZ2Z2T0VXakhTc043RXdFS3J3aVA4MExNUXRlTVRIVlhuSkJOZmR1OXBlaUxBS2p4ajcwNFhUOTZmcHBWQWhyNWkxWWp6aTdLSHBBSEhKSXNSUGhTQ2t4R1dDdmpBNXF1b2RuN1h1cDgraHdDT2VHZWxWMktCRnl1RnJidElsNlJVM0Z6Sm96eU8rUzZpWmpKODVyeVZ4MXJTWnJKWHlHdCtNTzBkNXlmVVV0MUhnK3JTdHI2enQ0K0liQVI3eG5Pbjk0d1RvRDBsTE9IdGo4NUVQb1ZrdDJ4WHE4NGdIeDhENVN2am5WUHVJZjgyZ2xSdW8xV044WXE4UUEvZTZBcGJIeUk2RWpMRS9RaEdycFpjWEpYRWNWYjBuWWZUcEVmK1laZWE4akZCcDhzcGFGLzFjVTBHUDBpSDExNVBuQUkrWUpDcEUrRXNvUDJYb3dSczJCMVIwQmlOaVhKVkhySzJ5MXR0OXhJdHJZcWl0UHhZVzRsMXFYVFdrc3RaTHA0Q3FXdTFveXlhMTdObDhtd3N1cUc5MFA3VWVjUTIxcGlWRDAyc0Y3YkptVElKYkpBLzVlRkpaQ3hIdDBoUCtjaFNOZVZ4RnE3ZVhLTEVWZ1EzMmRYakVSNGwxZmVuVGwwcFZxRXJvRWUrbmFLNHZmMjYrL2JaUzdTM3BFVU9UZ3J5ek52ekNPSjYvendLaEw4ck82Zk9JYXppUFdIU05XSHNmVExGOXliRU1JVnFTTnRRamhtNG4vNHVBam54MSt4S2xaaktFb1BDSVgzakVYWVNtZmZjdGtBZzN1eElxaGRzeStqeGk3RVJ6OWtaaUYwNmZrVlZocjVqdFRIakVKVHppbzRZa2o0Qjl4TkhycVNFaDZod2VNZU8vUzBkdUpkZEk3cVZ1MzVrckRrRldqN2hJK0RCUjFuUjFIckhEWUVWdEE3VGEvRExrcDgwamhxWkVlUG9XckIvZWZmOFJlcUVrYnVueGlKdkxtcjd3aUM4OVM4VVRwQ3RQWG13L3ZtT2RMcm9TSGg0eDNQU0hYY3FCUTRUbDlqbFNoMXF2UjN4bzlZaUYrbW0xYThTWklsdlJRb2xIREZaL1hpU1hOT2s3YmsrS2lsdDF0bU12V2ROSExmM09sVFV0dU1Wb1NyRU9oMGNNQVpOOWtueVZ6WEtZSGVNUmgzakViN09tbDlZOFlzbXg0aGpEYzJ5cFRqeGk4RVJlSGtkUDZUUDNMM2xuVHhnZXNUYVBPTGVnSmZTSVU2MFJmM25XN2w3M0FUeGlFTjVsdzduU0VlRXRqa3FzTzJ4VWZkWjBnNVcxUkNjUUFkbXNLeDR4UlBSaGlUM0RPMjgwWUJBTGhSNFluR1U5NHU2eXBpdnlpSE1Jc1d0LzUyTnZCSThZQkhXQnZ2TFFxL3JEektjWmo1aXM2Zkx0c3VUdzVDM3ZaUmRNa3NNajd0dXV6Q1R6bG1tQUpYSXhuaEIxT1krNHU2enBRc2M3aWhRaWtXNlQwUEtYb2QvNzVEeGliZThmUk1hd1JFajY2T0tzNFVRTnNST2l4aU5PNUJGTDFwcGVydjVmWmUyUzFaTVBXR1o2TkM0OUJwbERIOXEyTFp0VVBXbDQxd0FTaVZ0a1VlTVJTeDZEdU54VTZKa0xYVVBnL1dkZDJ3NUlzTmtGUGVLbDBMdm4rTVgwNDFjaUpFMDlhWUVHV1ZnYnFONGpialZyV3NQbFBGZ2hwTVJsUVdPNlBIei9FaUZLeVdzbjFGbkVsank5MkRNczBDaFNnMjlpMEdUemlKdkxtaFlzeFpwVmlEMGVjZkljQ3FNTlhwZS9EUENJaXdveG96NVp2OW5ZTTZ4clppUVJvbWF4dnR3c3RzV3NhUzJlMlJSNDMwdUowcHdCT3lHMndJbUVSbzk0dzVZazZ5K0xWUHRnODJVYlptV3RvRnFQK0E4ZWNWb2h2bnF2QWZ0NnN5elpCQmhYcDJjdW5EMHI2aEV6NHJOTm5GL3RHVWFFNVJ0SUtpeTE4RWFUdDlWMGNYMFZITmpEeGYyOEdxVG52NXNVWGFIZTVOVjlqMHI2eHZoZ25WalR1eDh4OHVLVE5WRTdqeENuYWF4WktFVE5scVlPQi9tTnAvalYwclBWNmdWeDczQyswNDNJWngwenBsVW95WUpNdWo3RFh0MktzTWJucjdVZEVPRWt0bjJXQ2tuelZ0TTNtbFRvZ2xrVFhobzBOS2t5RERyOXJ6NFJsbG9YSmt1NjVrYWo0U0NIVUZCU2tVa2cvTExub3M0Vll5VnY0eTA1OTJFQ0FHSU1TZHByWTNzcURVZ0RBaURJVUxkRE5kUG1tUnRRK0xqRTRLSUNBQUFnWnN1bGtyTlczbVpoUVpadVRNUVlBQzhaa252Q1VuV2tLYXFpd1NzKy83d1MzZ0FBcUVLRUpXdUdzMVZKa1ZmOEpkaXdFMW1xQUFESjdQYUc0OVNvWnl5NFhueFFveFFBSUluVHRMQ1UySDRqUzYwWDczakZBQUF5OXZuOE9Vc2Z0b0Y5VnVnVm4zK1dXaSttOGhZQVFMeURKSG1pRXFjcTFURHJPbi9mU0lzSEFGQWh4S09nQ00rODJYcENJSklOdnhBQ0FRQjRKY0tTWjBoemhHMkZZanhKejhJUVl3Q0FZQnNzdVUySnBjS0tPOFFpS01iVXBBWUFDQkRoOC9kTk1IbVdZMnNyN3hpcnBCalRHUUFBc3RyZEVidmJScWZZSmZjWTB5a0FBTEtJTU9jTHR4SW1FVjZyMkRtdENRRGcwdFl1MG9teU9ENXRkUlRKNUMzRUdBRGdueVFGbGRnNjJ2aHNUVnFNcWI0RkFJaXdyQWlUSVUzbzVQazV4b1JPQUtCam16b1RiWVEzSFdlVkZtTTZEZ0IwNkFsTFJoazUxckREanJUaEdRTUFxUENFMmFhRUdDUEdBQUFQUkZqYUU2WjZZY2VkU25KYkUySU1BSGpDaURDODZGU1NSY2xaTXdhQTFrWDQ0RkFkRU90WWlVNXJ3ak1HQUR6aGdMM0NPQ3hnZHpKcE1kNnRnN0hwYkFDQUNGT3dBenllOFpSQWpOa1RCd0JWMnNVRXhUcCtMTi94cHVHdTA2VVFZOUx5QWFCRzI3aElpekJ2RmJ4Q25DZ01jNXloYjJhQkFLRGFGaHEvcjRnd3RCYU9PVGpQR0FCNkZlSC9MZE5oLytCTngwd2h4dXlaQXdETlRzaVdTb1FCM25aTWFUSCtlOWcxZ2d3QWlteWRkSUdqZjNOa3JqeHVnRWV6dzBTZU1ZZGVBNEFtTDNoTUlNSVVONElxUE9NTk1RYUF3clp0U21EYjlndXh4OGFCV3M5NFk2OHhBQlR5aEZQWk5NUVhxdk9NMmQ0RUFGbnNtUEg3bWpyS2h5QkR5czZjSXBUejl4UVNlOEFBQUFoN3dodWVNTFRRbVZPSk1VbGNBSkRLYnFWSXl2cFJPeG94aHF6aG5RUUhSWmlua3JCdURBQWl0dXI4WGZvSXcwc1I1cTFEQ1RFZUVzMHdkM1BkbUE0T0FCRWl2S1NPNEFFVUMvVWtGdU9EZFdNQWlIUVV0dFE1TFFBcXhQajhjNm9PVCtnSEFKNDZDRk1pQitHUFdhb1htd1FheFhoTjFQRTN0amdCZ004V0pkeG0rZXZ3R213UmFCNEVTOEpCUUtnYUFPN3NUOHBROU4rejFRRnFHUmdwWjZRclNWd0FZRVhqVW9haU9jWVFxcDJkcHRwci9HdDJ5dUFBNkZxRWw0UzJadVZ0UTdWQ2ZQNCtKSnlsVW8wTG9HOEJIaE9Hb3YrY0FrLzBEWnJ3aklmRWcrWEh3UkVNR0lBdVJEaFZnUTYySjBHYmd5WkQrSWhFTG9EMkovVTVKdllrWlVIekEycE9PSUErNVRGWk93YkFDeVlwQytCcVJuditQaVplTjk3eGpnR2FFdUF4WVkwQ0RweUJQZ1U1UTNqcHg5b3hnd3NBTDVpa1QyQndYU1JUSlY0M1p1MFlvRzR2T1BWay9lOTZNTFlCZWg5d1U0WVo3OFpwVGdDNkorbkc3MHNHbTBBTmU0Q0wvY2FwWjcrZmZZR0QvZjBBb0daU3ZtZXdBek9UY2dCTGpEUFVxWFltY3pFWUFjb0lzSkV6c21ZYSt5UGpIc0RoR1J1ejRpUERvTnpZNmdTZ1l2S2RZN3hUb3g3ZzRTdzUxd3o1TTBBSEJCa2d6L2cySnR4N3BqRSszVTM4QWNBL1dPZE1BL1g0ckJzaHlBQkpQZUF4VXo0STVXOEJCQWR2em9HNzJ6Vm1HYndBSXBQcU1XT1U2ODlWSGdoakdTQitJQzhaQi9GR09BdEFaTndPR2RlQkw3Y3FNbllCWkFkNFR1LzR4NkJHa0FFZUNmQW5FV3ZQT0Y0WHZHQ0FOcjNqeThNa0dPQUF0eDd3bkZtQU43WWxBV1FjOE5iaEVWc0pRY1pEQnJqMGdITUw4RzF4RHNZbFFGNERNR2NlK0hqSXdHUzRyQWRNMlZvQVRRWWhjMlVlWjFJWG9nd0ljSjZ0aGxkMmdGWUNLQ2pFbG5kY3dqQmNDakt0QkkxRm43NEtaRUgvcW83RkdBTlFQbHZQV0xQNnprT2U3VXBkR0F5b1dZRFBQMy8yQVpjUTRKMXl0QUIxenQ1TEpIT1pobU14QlJrREFqVk5hSTIvbXdxT284Tk94bUlNQWRRcHlGT0JjTFZwU0ZiV2thRW1BUzY0L250NVhyQjVqNHdiZ0xxTnkxelFxRnlHcmZHU1FkSDQrQ29jZm1aUE1FRHJCc2RLTkNrcHlMdTlINWtaUDVRUVg4djczUlNNQzhyS0FuUTAreDhWR0I2bmw0d1JnbFRpZS83OWRFNElkd1VDUERNWkJlaFhrQ2NsZ3Z4M0xSbFJob1RlNzNoR2hEVDArUisxb2VuckFCaXRTWUZuWUlldXB3dERpcUVDcC9EZWlPOG45SHhvRWVEUGhCTXZHQUEwQzdLNURXcTZTYTdCZ0NHK3ZuWGZRMUYvWHV3OTlyUWlBRng2bWdvRjJSYmxJY1FnUXgvQ3E5anpOU3RpRGZSVEFIaGs2TTVMb3lEYjRldnhpY0dHWnJ6ZVQvK2NGYTM1ZWoxZytpVUFQQkppeTBQV2F1d09JL3Q2dXZHV01JQVY5ei9MNjlXUzdlenFqNHZ0QWRQM0FFRFNROVlxeUxhM1BGOTV5eUVHSDlRSTczRDJ1VVZweVBuWDBzblY4OUhTQVBEYVNONFpFNk1DMFIvbDEyR3NMYzkyRVJHRVdZL29Xc0w3Q1RmdkZmU3huV01KQWFDa2NmMVU2cXJCWUpyQ3ZCckNQRGlFQVlGT0o3cGZScWg1cVVoNHZXZHgwMWNBSUp1aHRmNXVyaUJzZmVmUmJKYlhQSVNLVEk5Rzkrb2RCRXhtekREelo0MzNxS3l2Zk5aL3g2dm9FUUNBQ2xFMmttbU9Da1haRnVmVlNBSWJmUWIzVHFCcUZPeTN6M0VLN3RpQTZQNEtQN3NtYUFBQUtnejNoVUdlS3dzM2hvUzFyd1I2Q0JWYW4xaVh2QjYwdFNtMlptaDVxMXh3T2NJVEFKb1ZaZTFiVHFSRmVyR0VlalMzc3lodnUrRkdhRTJ4M1JzUzNLQ0RTQUFBV2doWmZ6eXZXdGVTSllSNk44UnNOUVJ1Tm9SN3NnVGNGUExSRUVyWG44ZUxhekl5a21manUwMkJiVjFrZlZYYldQc0ZnSzZFZVZCMkVvNTJJYmV2M2ZwcC8zN3czb0pLVDA1M3l3YU1XZ0JvVm93ZHg5UHRpRU0yWWU5YWZLOU9QMEo4QWFCN0x4bFI1a29vdnJQZDUxckliZ2NBU0MzVVk2ZHJ5bHh5aDRKdzZBSUF3TnZ3dFhXTmxaVSs1Q3AwVEdaSW4yS2tBUUE4RU9TTC96WVlXNkx3bHZ2MmV1ZXJiR2NFRndDZ1RBaDd4VnR1K3ZxVUlwMDg1eFFqeEFBQUNET1hZQTN3eVM2d2dlQUNBTlFseklOUnhHTDdabyt0OWxEejVLdHNoUWdEQU5RcHlLWVhOUmxlTSt2TVpiM2RFVkVGQUdoVWVHOUUrQzRCYkxURW1iQjJmT0VRczV6bjlPU0lTWG93QUVEN1huSG9zWDZURmRyR2c3NC9OdEwwY29lUTk0OEFBd0FnekxIbjdzN0cyYnViY2NCRGEwSzdXU2RMVFo4REo1NjhZM29kQUFBazg2Q3RmenRhWWowN1RqemFFeDNXWUI4Q3NRZWNCRFhkZWJXdWQ0Q1hDd0FBYXJ6cE4rSnpjYVNoZllUaGsrdnFHTVVoeGJOZS9iLzBEZ0FBS0NMTW9TSmR5bHQ4ZTA5NHVRQUEwSXdIN2ZNYW40ajRtNHVXQUFBQVNPQ0ZBMEJkL0FkbjRBUXNTQ09rakFBQUFBQkpSVTVFcmtKZ2dnPT0nO1xuXG5leHBvcnQgaW50ZXJmYWNlIE9lbVRoZW1lIHtcbiAgbWVudUJhY2tncm91bmQ6IHN0cmluZztcbiAgbWVudUFjdGl2ZTogc3RyaW5nO1xufVxuXG5jb25zdCBjb21wdXRlU3R5bGVzRm9yU3RvcnkgPSAoYXJnczogQXJncyk6IHN0cmluZyA9PiB7XG4gIHJldHVybiBjb21wdXRlU3R5bGVzKHsgbWVudUJhY2tncm91bmQ6IGFyZ3MubWVudUJhY2tncm91bmQsIG1lbnVBY3RpdmU6IGFyZ3MubWVudUFjdGl2ZSB9KVxuICAgIC5tYXAoc3R5bGUgPT4gYCR7c3R5bGUua2V5fTogJHtzdHlsZS52YWx1ZX07YClcbiAgICAuam9pbignICcpO1xufTtcblxuLyoqXG4gKiBNaW1pY3MgaG93IHN0eWxlcyBhcmUgaW5qZWN0ZWQgaW4gQ29uc29sZS5cbiAqIEl0IGlzIG5lY2Vzc2FyeSBpbiBvcmRlciB0byBhcHBseSBzdHlsZXMgdG8gZ2lvLW1lbnUtc2VsZWN0b3IgZHJvcC1kb3duIG92ZXJsYXkuXG4gKiBAcGFyYW0gYXJnc1xuICogQHBhcmFtIGRvY3VtZW50XG4gKi9cbmNvbnN0IGNvbXB1dGVBbmRJbmplY3RTdHlsZXNGb3JTdG9yeSA9IChhcmdzOiBBcmdzLCBkb2N1bWVudDogRG9jdW1lbnQpOiB2b2lkID0+IHtcbiAgaWYgKCFkb2N1bWVudCkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIHJlc2V0U3RvcnlTdHlsZUluamVjdGlvbihhcmdzKTtcblxuICBjb25zdCBzdHlsZXMgPSBjb21wdXRlU3R5bGVzKHtcbiAgICBtZW51QmFja2dyb3VuZDogYXJncy5tZW51QmFja2dyb3VuZCxcbiAgICBtZW51QWN0aXZlOiBhcmdzLm1lbnVBY3RpdmUsXG4gIH0pO1xuICBzdHlsZXMuZm9yRWFjaChzdHlsZSA9PiB7XG4gICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KHN0eWxlLmtleSwgc3R5bGUudmFsdWUpO1xuICB9KTtcbn07XG5cbmNvbnN0IHJlc2V0U3RvcnlTdHlsZUluamVjdGlvbiA9IChhcmdzOiBBcmdzKTogdm9pZCA9PiB7XG4gIGlmICghYXJncz8ubWVudUJhY2tncm91bmQpIHtcbiAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUucmVtb3ZlUHJvcGVydHkoJy0tZ2lvLW9lbS1wYWxldHRlLS1iYWNrZ3JvdW5kJyk7XG4gICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLnJlbW92ZVByb3BlcnR5KCctLWdpby1vZW0tcGFsZXR0ZS0tYmFja2dyb3VuZC1jb250cmFzdCcpO1xuICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgnLS1naW8tb2VtLXBhbGV0dGUtLXN1Yi1tZW51Jyk7XG4gIH1cblxuICBpZiAoIWFyZ3M/Lm1lbnVBY3RpdmUpIHtcbiAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUucmVtb3ZlUHJvcGVydHkoJy0tZ2lvLW9lbS1wYWxldHRlLS1hY3RpdmUnKTtcbiAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUucmVtb3ZlUHJvcGVydHkoJy0tZ2lvLW9lbS1wYWxldHRlLS1hY3RpdmUtY29udHJhc3QnKTtcbiAgfVxufTtcblxuY29uc3QgY29tcHV0ZVN0eWxlcyA9ICh0aGVtZTogT2VtVGhlbWUpOiB7IGtleTogc3RyaW5nOyB2YWx1ZTogc3RyaW5nIH1bXSA9PiB7XG4gIGNvbnN0IGJhY2tncm91bmRTdHlsZSA9IGNvbXB1dGVTdHlsZUFuZENvbnRyYXN0QnlQcmVmaXgoJ2JhY2tncm91bmQnLCB0aGVtZS5tZW51QmFja2dyb3VuZCk7XG4gIGNvbnN0IGFjdGl2ZVN0eWxlID0gY29tcHV0ZVN0eWxlQW5kQ29udHJhc3RCeVByZWZpeCgnYWN0aXZlJywgdGhlbWUubWVudUFjdGl2ZSk7XG4gIGxldCBzdWJNZW51OiB7IGtleTogc3RyaW5nOyB2YWx1ZTogc3RyaW5nIH1bXSA9IFtdO1xuICAvLyBJZiB0aGUgbWVudSBiYWNrZ3JvdW5kIGlzIGRlZmluZWQsIHRoZW4gZGVmaW5lIHRoZSBzdWItbWVudSBjb2xvclxuICBpZiAodGhlbWUubWVudUJhY2tncm91bmQpIHtcbiAgICBzdWJNZW51ID0gW3sga2V5OiBgLS1naW8tb2VtLXBhbGV0dGUtLXN1Yi1tZW51YCwgdmFsdWU6IGBjb2xvci1taXgoaW4gc3JnYiwgJHt0aGVtZS5tZW51QmFja2dyb3VuZH0gODAlLCBibGFjaylgIH1dO1xuICB9XG4gIHJldHVybiBbLi4uYmFja2dyb3VuZFN0eWxlLCAuLi5hY3RpdmVTdHlsZSwgLi4uc3ViTWVudV07XG59O1xuXG5jb25zdCBjb21wdXRlU3R5bGVBbmRDb250cmFzdEJ5UHJlZml4ID0gKHByZWZpeDogc3RyaW5nLCBjb2xvcjogc3RyaW5nKTogeyBrZXk6IHN0cmluZzsgdmFsdWU6IHN0cmluZyB9W10gPT4ge1xuICBpZiAoIWNvbG9yKSB7XG4gICAgcmV0dXJuIFtdO1xuICB9XG4gIGNvbnN0IHBhbGV0dGVDb2xvciA9IHsga2V5OiBgLS1naW8tb2VtLXBhbGV0dGUtLSR7cHJlZml4fWAsIHZhbHVlOiBjb2xvciB9O1xuICBjb25zdCBwYWxldHRlQ29sb3JDb250cmFzdCA9IHsga2V5OiBgLS1naW8tb2VtLXBhbGV0dGUtLSR7cHJlZml4fS1jb250cmFzdGAsIHZhbHVlOiAnI2ZmZicgfTtcbiAgcmV0dXJuIFtwYWxldHRlQ29sb3IsIHBhbGV0dGVDb2xvckNvbnRyYXN0XTtcbn07XG5leHBvcnQgeyBjb21wdXRlU3R5bGVzLCBjb21wdXRlU3R5bGVzRm9yU3RvcnksIGNvbXB1dGVBbmRJbmplY3RTdHlsZXNGb3JTdG9yeSwgcmVzZXRTdG9yeVN0eWxlSW5qZWN0aW9uIH07XG4iXX0=