@porsche-design-system/components-angular 3.21.0-rc.0 → 3.22.0-rc.0

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 (89) hide show
  1. package/CHANGELOG.md +27 -2
  2. package/ag-grid/theme.css +17 -8
  3. package/esm/lib/components/pin-code.wrapper.d.ts +2 -1
  4. package/esm/lib/types.d.ts +33 -33
  5. package/esm/utils.d.ts +2 -2
  6. package/fesm2022/porsche-design-system-components-angular.mjs +380 -306
  7. package/fesm2022/porsche-design-system-components-angular.mjs.map +1 -1
  8. package/package.json +4 -6
  9. package/styles/_index.scss +1 -1
  10. package/esm2022/lib/components/accordion.wrapper.mjs +0 -29
  11. package/esm2022/lib/components/banner.wrapper.mjs +0 -29
  12. package/esm2022/lib/components/barrel.mjs +0 -222
  13. package/esm2022/lib/components/button-group.wrapper.mjs +0 -17
  14. package/esm2022/lib/components/button-pure.wrapper.mjs +0 -33
  15. package/esm2022/lib/components/button-tile.wrapper.mjs +0 -31
  16. package/esm2022/lib/components/button.wrapper.mjs +0 -28
  17. package/esm2022/lib/components/canvas.wrapper.mjs +0 -22
  18. package/esm2022/lib/components/carousel.wrapper.mjs +0 -40
  19. package/esm2022/lib/components/checkbox-wrapper.wrapper.mjs +0 -22
  20. package/esm2022/lib/components/checkbox.wrapper.mjs +0 -33
  21. package/esm2022/lib/components/content-wrapper.wrapper.mjs +0 -22
  22. package/esm2022/lib/components/crest.wrapper.mjs +0 -19
  23. package/esm2022/lib/components/display.wrapper.mjs +0 -22
  24. package/esm2022/lib/components/divider.wrapper.mjs +0 -21
  25. package/esm2022/lib/components/fieldset-wrapper.wrapper.mjs +0 -23
  26. package/esm2022/lib/components/fieldset.wrapper.mjs +0 -22
  27. package/esm2022/lib/components/flex-item.wrapper.mjs +0 -23
  28. package/esm2022/lib/components/flex.wrapper.mjs +0 -23
  29. package/esm2022/lib/components/flyout-multilevel-item.wrapper.mjs +0 -18
  30. package/esm2022/lib/components/flyout-multilevel.wrapper.mjs +0 -23
  31. package/esm2022/lib/components/flyout.wrapper.mjs +0 -26
  32. package/esm2022/lib/components/grid-item.wrapper.mjs +0 -19
  33. package/esm2022/lib/components/grid.wrapper.mjs +0 -21
  34. package/esm2022/lib/components/heading.wrapper.mjs +0 -22
  35. package/esm2022/lib/components/headline.wrapper.mjs +0 -23
  36. package/esm2022/lib/components/icon.wrapper.mjs +0 -24
  37. package/esm2022/lib/components/inline-notification.wrapper.mjs +0 -30
  38. package/esm2022/lib/components/link-pure.wrapper.mjs +0 -32
  39. package/esm2022/lib/components/link-social.wrapper.mjs +0 -25
  40. package/esm2022/lib/components/link-tile-model-signature.wrapper.mjs +0 -23
  41. package/esm2022/lib/components/link-tile-product.wrapper.mjs +0 -29
  42. package/esm2022/lib/components/link-tile.wrapper.mjs +0 -30
  43. package/esm2022/lib/components/link.wrapper.mjs +0 -27
  44. package/esm2022/lib/components/marque.wrapper.mjs +0 -23
  45. package/esm2022/lib/components/modal.wrapper.mjs +0 -33
  46. package/esm2022/lib/components/model-signature.wrapper.mjs +0 -23
  47. package/esm2022/lib/components/multi-select-option.wrapper.mjs +0 -18
  48. package/esm2022/lib/components/multi-select.wrapper.mjs +0 -30
  49. package/esm2022/lib/components/optgroup.wrapper.mjs +0 -18
  50. package/esm2022/lib/components/pagination.wrapper.mjs +0 -36
  51. package/esm2022/lib/components/pin-code.wrapper.mjs +0 -31
  52. package/esm2022/lib/components/popover.wrapper.mjs +0 -20
  53. package/esm2022/lib/components/radio-button-wrapper.wrapper.mjs +0 -22
  54. package/esm2022/lib/components/scroller.wrapper.mjs +0 -26
  55. package/esm2022/lib/components/segmented-control-item.wrapper.mjs +0 -22
  56. package/esm2022/lib/components/segmented-control.wrapper.mjs +0 -25
  57. package/esm2022/lib/components/select-option.wrapper.mjs +0 -18
  58. package/esm2022/lib/components/select-wrapper.wrapper.mjs +0 -25
  59. package/esm2022/lib/components/select.wrapper.mjs +0 -30
  60. package/esm2022/lib/components/spinner.wrapper.mjs +0 -19
  61. package/esm2022/lib/components/stepper-horizontal-item.wrapper.mjs +0 -18
  62. package/esm2022/lib/components/stepper-horizontal.wrapper.mjs +0 -22
  63. package/esm2022/lib/components/switch.wrapper.mjs +0 -27
  64. package/esm2022/lib/components/table-body.wrapper.mjs +0 -15
  65. package/esm2022/lib/components/table-cell.wrapper.mjs +0 -17
  66. package/esm2022/lib/components/table-head-cell.wrapper.mjs +0 -19
  67. package/esm2022/lib/components/table-head-row.wrapper.mjs +0 -15
  68. package/esm2022/lib/components/table-head.wrapper.mjs +0 -15
  69. package/esm2022/lib/components/table-row.wrapper.mjs +0 -15
  70. package/esm2022/lib/components/table.wrapper.mjs +0 -22
  71. package/esm2022/lib/components/tabs-bar.wrapper.mjs +0 -27
  72. package/esm2022/lib/components/tabs-item.wrapper.mjs +0 -17
  73. package/esm2022/lib/components/tabs.wrapper.mjs +0 -27
  74. package/esm2022/lib/components/tag-dismissible.wrapper.mjs +0 -20
  75. package/esm2022/lib/components/tag.wrapper.mjs +0 -21
  76. package/esm2022/lib/components/text-field-wrapper.wrapper.mjs +0 -33
  77. package/esm2022/lib/components/text-list-item.wrapper.mjs +0 -15
  78. package/esm2022/lib/components/text-list.wrapper.mjs +0 -22
  79. package/esm2022/lib/components/text.wrapper.mjs +0 -23
  80. package/esm2022/lib/components/textarea-wrapper.wrapper.mjs +0 -25
  81. package/esm2022/lib/components/textarea.wrapper.mjs +0 -41
  82. package/esm2022/lib/components/toast.wrapper.mjs +0 -17
  83. package/esm2022/lib/components/wordmark.wrapper.mjs +0 -21
  84. package/esm2022/lib/types.mjs +0 -2
  85. package/esm2022/porsche-design-system-components-angular.mjs +0 -5
  86. package/esm2022/porsche-design-system.module.mjs +0 -128
  87. package/esm2022/public-api.mjs +0 -7
  88. package/esm2022/toast-manager.mjs +0 -17
  89. package/esm2022/utils.mjs +0 -44
@@ -1,21 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import { BaseComponentWithTheme } from '../../utils';
3
- import * as i0 from "@angular/core";
4
- export class PWordmark extends BaseComponentWithTheme {
5
- aria;
6
- href;
7
- size;
8
- target;
9
- theme;
10
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: PWordmark, deps: null, target: i0.ɵɵFactoryTarget.Component });
11
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.0", type: PWordmark, selector: "p-wordmark,[p-wordmark]", inputs: { aria: "aria", href: "href", size: "size", target: "target", theme: "theme" }, usesInheritance: true, ngImport: i0, template: '<ng-content />', isInline: true });
12
- }
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: PWordmark, decorators: [{
14
- type: Component,
15
- args: [{
16
- selector: 'p-wordmark,[p-wordmark]',
17
- template: '<ng-content />',
18
- inputs: ['aria', 'href', 'size', 'target', 'theme']
19
- }]
20
- }] });
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29yZG1hcmsud3JhcHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItd3JhcHBlci9zcmMvbGliL2NvbXBvbmVudHMvd29yZG1hcmsud3JhcHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFRckQsTUFBTSxPQUFPLFNBQVUsU0FBUSxzQkFBc0I7SUFDbkQsSUFBSSxDQUFpRDtJQUNyRCxJQUFJLENBQVU7SUFDZCxJQUFJLENBQWdCO0lBQ3BCLE1BQU0sQ0FBa0I7SUFDaEIsS0FBSyxDQUFTO3VHQUxYLFNBQVM7MkZBQVQsU0FBUyw4S0FIVixnQkFBZ0I7OzJGQUdmLFNBQVM7a0JBTHJCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHlCQUF5QjtvQkFDbkMsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsTUFBTSxFQUFFLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQztpQkFDcEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhc2VDb21wb25lbnRXaXRoVGhlbWUgfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQgdHlwZSB7IFNlbGVjdGVkQXJpYUF0dHJpYnV0ZXMsIFdvcmRtYXJrQXJpYUF0dHJpYnV0ZSwgV29yZG1hcmtTaXplLCBXb3JkbWFya1RhcmdldCwgVGhlbWUgfSBmcm9tICcuLi90eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3Atd29yZG1hcmssW3Atd29yZG1hcmtdJyxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudCAvPicsXG4gIGlucHV0czogWydhcmlhJywgJ2hyZWYnLCAnc2l6ZScsICd0YXJnZXQnLCAndGhlbWUnXVxufSlcbmV4cG9ydCBjbGFzcyBQV29yZG1hcmsgZXh0ZW5kcyBCYXNlQ29tcG9uZW50V2l0aFRoZW1lIHtcbiAgYXJpYT86IFNlbGVjdGVkQXJpYUF0dHJpYnV0ZXM8V29yZG1hcmtBcmlhQXR0cmlidXRlPjtcbiAgaHJlZj86IHN0cmluZztcbiAgc2l6ZT86IFdvcmRtYXJrU2l6ZTtcbiAgdGFyZ2V0PzogV29yZG1hcmtUYXJnZXQ7XG4gIGRlY2xhcmUgdGhlbWU/OiBUaGVtZTtcbn0iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXdyYXBwZXIvc3JjL2xpYi90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyogQXV0byBHZW5lcmF0ZWQgQmVsb3cgKi9cbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9xdW90ZXMgKi9cbmV4cG9ydCB0eXBlIEJvb2xlYW5pc2ggPSBib29sZWFuIHwgXCJ0cnVlXCIgfCBcImZhbHNlXCI7XG5leHBvcnQgdHlwZSBBcmlhQXR0cmlidXRlcyA9IHtcblx0LyoqIElkZW50aWZpZXMgdGhlIGN1cnJlbnRseSBhY3RpdmUgZWxlbWVudCB3aGVuIERPTSBmb2N1cyBpcyBvbiBhIGNvbXBvc2l0ZSB3aWRnZXQsIHRleHRib3gsIGdyb3VwLCBvciBhcHBsaWNhdGlvbi4gKi9cblx0XCJhcmlhLWFjdGl2ZWRlc2NlbmRhbnRcIj86IHN0cmluZyB8IHVuZGVmaW5lZDtcblx0LyoqIEluZGljYXRlcyB3aGV0aGVyIGFzc2lzdGl2ZSB0ZWNobm9sb2dpZXMgd2lsbCBwcmVzZW50IGFsbCwgb3Igb25seSBwYXJ0cyBvZiwgdGhlIGNoYW5nZWQgcmVnaW9uIGJhc2VkIG9uIHRoZSBjaGFuZ2Ugbm90aWZpY2F0aW9ucyBkZWZpbmVkIGJ5IHRoZSBhcmlhLXJlbGV2YW50IGF0dHJpYnV0ZS4gKi9cblx0XCJhcmlhLWF0b21pY1wiPzogQm9vbGVhbmlzaCB8IHVuZGVmaW5lZDtcblx0LyoqXG5cdCAqIEluZGljYXRlcyB3aGV0aGVyIGlucHV0dGluZyB0ZXh0IGNvdWxkIHRyaWdnZXIgZGlzcGxheSBvZiBvbmUgb3IgbW9yZSBwcmVkaWN0aW9ucyBvZiB0aGUgdXNlcidzIGludGVuZGVkIHZhbHVlIGZvciBhbiBpbnB1dCBhbmQgc3BlY2lmaWVzIGhvdyBwcmVkaWN0aW9ucyB3b3VsZCBiZVxuXHQgKiBwcmVzZW50ZWQgaWYgdGhleSBhcmUgbWFkZS5cblx0ICovXG5cdFwiYXJpYS1hdXRvY29tcGxldGVcIj86IFwibm9uZVwiIHwgXCJpbmxpbmVcIiB8IFwibGlzdFwiIHwgXCJib3RoXCIgfCB1bmRlZmluZWQ7XG5cdC8qKiBJbmRpY2F0ZXMgYW4gZWxlbWVudCBpcyBiZWluZyBtb2RpZmllZCBhbmQgdGhhdCBhc3Npc3RpdmUgdGVjaG5vbG9naWVzIE1BWSB3YW50IHRvIHdhaXQgdW50aWwgdGhlIG1vZGlmaWNhdGlvbnMgYXJlIGNvbXBsZXRlIGJlZm9yZSBleHBvc2luZyB0aGVtIHRvIHRoZSB1c2VyLiAqL1xuXHQvKipcblx0ICogRGVmaW5lcyBhIHN0cmluZyB2YWx1ZSB0aGF0IGxhYmVscyB0aGUgY3VycmVudCBlbGVtZW50LCB3aGljaCBpcyBpbnRlbmRlZCB0byBiZSBjb252ZXJ0ZWQgaW50byBCcmFpbGxlLlxuXHQgKiBAc2VlIGFyaWEtbGFiZWwuXG5cdCAqL1xuXHRcImFyaWEtYnJhaWxsZWxhYmVsXCI/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cdC8qKlxuXHQgKiBEZWZpbmVzIGEgaHVtYW4tcmVhZGFibGUsIGF1dGhvci1sb2NhbGl6ZWQgYWJicmV2aWF0ZWQgZGVzY3JpcHRpb24gZm9yIHRoZSByb2xlIG9mIGFuIGVsZW1lbnQsIHdoaWNoIGlzIGludGVuZGVkIHRvIGJlIGNvbnZlcnRlZCBpbnRvIEJyYWlsbGUuXG5cdCAqIEBzZWUgYXJpYS1yb2xlZGVzY3JpcHRpb24uXG5cdCAqL1xuXHRcImFyaWEtYnJhaWxsZXJvbGVkZXNjcmlwdGlvblwiPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXHRcImFyaWEtYnVzeVwiPzogQm9vbGVhbmlzaCB8IHVuZGVmaW5lZDtcblx0LyoqXG5cdCAqIEluZGljYXRlcyB0aGUgY3VycmVudCBcImNoZWNrZWRcIiBzdGF0ZSBvZiBjaGVja2JveGVzLCByYWRpbyBidXR0b25zLCBhbmQgb3RoZXIgd2lkZ2V0cy5cblx0ICogQHNlZSBhcmlhLXByZXNzZWQgQHNlZSBhcmlhLXNlbGVjdGVkLlxuXHQgKi9cblx0XCJhcmlhLWNoZWNrZWRcIj86IGJvb2xlYW4gfCBcImZhbHNlXCIgfCBcIm1peGVkXCIgfCBcInRydWVcIiB8IHVuZGVmaW5lZDtcblx0LyoqXG5cdCAqIERlZmluZXMgdGhlIHRvdGFsIG51bWJlciBvZiBjb2x1bW5zIGluIGEgdGFibGUsIGdyaWQsIG9yIHRyZWVncmlkLlxuXHQgKiBAc2VlIGFyaWEtY29saW5kZXguXG5cdCAqL1xuXHRcImFyaWEtY29sY291bnRcIj86IG51bWJlciB8IHVuZGVmaW5lZDtcblx0LyoqXG5cdCAqIERlZmluZXMgYW4gZWxlbWVudCdzIGNvbHVtbiBpbmRleCBvciBwb3NpdGlvbiB3aXRoIHJlc3BlY3QgdG8gdGhlIHRvdGFsIG51bWJlciBvZiBjb2x1bW5zIHdpdGhpbiBhIHRhYmxlLCBncmlkLCBvciB0cmVlZ3JpZC5cblx0ICogQHNlZSBhcmlhLWNvbGNvdW50IEBzZWUgYXJpYS1jb2xzcGFuLlxuXHQgKi9cblx0XCJhcmlhLWNvbGluZGV4XCI/OiBudW1iZXIgfCB1bmRlZmluZWQ7XG5cdC8qKlxuXHQgKiBEZWZpbmVzIGEgaHVtYW4gcmVhZGFibGUgdGV4dCBhbHRlcm5hdGl2ZSBvZiBhcmlhLWNvbGluZGV4LlxuXHQgKiBAc2VlIGFyaWEtcm93aW5kZXh0ZXh0LlxuXHQgKi9cblx0XCJhcmlhLWNvbGluZGV4dGV4dFwiPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXHQvKipcblx0ICogRGVmaW5lcyB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgc3Bhbm5lZCBieSBhIGNlbGwgb3IgZ3JpZGNlbGwgd2l0aGluIGEgdGFibGUsIGdyaWQsIG9yIHRyZWVncmlkLlxuXHQgKiBAc2VlIGFyaWEtY29saW5kZXggQHNlZSBhcmlhLXJvd3NwYW4uXG5cdCAqL1xuXHRcImFyaWEtY29sc3BhblwiPzogbnVtYmVyIHwgdW5kZWZpbmVkO1xuXHQvKipcblx0ICogSWRlbnRpZmllcyB0aGUgZWxlbWVudCAob3IgZWxlbWVudHMpIHdob3NlIGNvbnRlbnRzIG9yIHByZXNlbmNlIGFyZSBjb250cm9sbGVkIGJ5IHRoZSBjdXJyZW50IGVsZW1lbnQuXG5cdCAqIEBzZWUgYXJpYS1vd25zLlxuXHQgKi9cblx0XCJhcmlhLWNvbnRyb2xzXCI/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cdC8qKiBJbmRpY2F0ZXMgdGhlIGVsZW1lbnQgdGhhdCByZXByZXNlbnRzIHRoZSBjdXJyZW50IGl0ZW0gd2l0aGluIGEgY29udGFpbmVyIG9yIHNldCBvZiByZWxhdGVkIGVsZW1lbnRzLiAqL1xuXHRcImFyaWEtY3VycmVudFwiPzogYm9vbGVhbiB8IFwiZmFsc2VcIiB8IFwidHJ1ZVwiIHwgXCJwYWdlXCIgfCBcInN0ZXBcIiB8IFwibG9jYXRpb25cIiB8IFwiZGF0ZVwiIHwgXCJ0aW1lXCIgfCB1bmRlZmluZWQ7XG5cdC8qKlxuXHQgKiBJZGVudGlmaWVzIHRoZSBlbGVtZW50IChvciBlbGVtZW50cykgdGhhdCBkZXNjcmliZXMgdGhlIG9iamVjdC5cblx0ICogQHNlZSBhcmlhLWxhYmVsbGVkYnlcblx0ICovXG5cdFwiYXJpYS1kZXNjcmliZWRieVwiPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXHQvKipcblx0ICogRGVmaW5lcyBhIHN0cmluZyB2YWx1ZSB0aGF0IGRlc2NyaWJlcyBvciBhbm5vdGF0ZXMgdGhlIGN1cnJlbnQgZWxlbWVudC5cblx0ICogQHNlZSByZWxhdGVkIGFyaWEtZGVzY3JpYmVkYnkuXG5cdCAqL1xuXHRcImFyaWEtZGVzY3JpcHRpb25cIj86IHN0cmluZyB8IHVuZGVmaW5lZDtcblx0LyoqXG5cdCAqIElkZW50aWZpZXMgdGhlIGVsZW1lbnQgdGhhdCBwcm92aWRlcyBhIGRldGFpbGVkLCBleHRlbmRlZCBkZXNjcmlwdGlvbiBmb3IgdGhlIG9iamVjdC5cblx0ICogQHNlZSBhcmlhLWRlc2NyaWJlZGJ5LlxuXHQgKi9cblx0XCJhcmlhLWRldGFpbHNcIj86IHN0cmluZyB8IHVuZGVmaW5lZDtcblx0LyoqXG5cdCAqIEluZGljYXRlcyB0aGF0IHRoZSBlbGVtZW50IGlzIHBlcmNlaXZhYmxlIGJ1dCBkaXNhYmxlZCwgc28gaXQgaXMgbm90IGVkaXRhYmxlIG9yIG90aGVyd2lzZSBvcGVyYWJsZS5cblx0ICogQHNlZSBhcmlhLWhpZGRlbiBAc2VlIGFyaWEtcmVhZG9ubHkuXG5cdCAqL1xuXHRcImFyaWEtZGlzYWJsZWRcIj86IEJvb2xlYW5pc2ggfCB1bmRlZmluZWQ7XG5cdC8qKlxuXHQgKiBJbmRpY2F0ZXMgd2hhdCBmdW5jdGlvbnMgY2FuIGJlIHBlcmZvcm1lZCB3aGVuIGEgZHJhZ2dlZCBvYmplY3QgaXMgcmVsZWFzZWQgb24gdGhlIGRyb3AgdGFyZ2V0LlxuXHQgKiBAZGVwcmVjYXRlZCBpbiBBUklBIDEuMVxuXHQgKi9cblx0XCJhcmlhLWRyb3BlZmZlY3RcIj86IFwibm9uZVwiIHwgXCJjb3B5XCIgfCBcImV4ZWN1dGVcIiB8IFwibGlua1wiIHwgXCJtb3ZlXCIgfCBcInBvcHVwXCIgfCB1bmRlZmluZWQ7XG5cdC8qKlxuXHQgKiBJZGVudGlmaWVzIHRoZSBlbGVtZW50IHRoYXQgcHJvdmlkZXMgYW4gZXJyb3IgbWVzc2FnZSBmb3IgdGhlIG9iamVjdC5cblx0ICogQHNlZSBhcmlhLWludmFsaWQgQHNlZSBhcmlhLWRlc2NyaWJlZGJ5LlxuXHQgKi9cblx0XCJhcmlhLWVycm9ybWVzc2FnZVwiPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXHQvKiogSW5kaWNhdGVzIHdoZXRoZXIgdGhlIGVsZW1lbnQsIG9yIGFub3RoZXIgZ3JvdXBpbmcgZWxlbWVudCBpdCBjb250cm9scywgaXMgY3VycmVudGx5IGV4cGFuZGVkIG9yIGNvbGxhcHNlZC4gKi9cblx0XCJhcmlhLWV4cGFuZGVkXCI/OiBCb29sZWFuaXNoIHwgdW5kZWZpbmVkO1xuXHQvKipcblx0ICogSWRlbnRpZmllcyB0aGUgbmV4dCBlbGVtZW50IChvciBlbGVtZW50cykgaW4gYW4gYWx0ZXJuYXRlIHJlYWRpbmcgb3JkZXIgb2YgY29udGVudCB3aGljaCwgYXQgdGhlIHVzZXIncyBkaXNjcmV0aW9uLFxuXHQgKiBhbGxvd3MgYXNzaXN0aXZlIHRlY2hub2xvZ3kgdG8gb3ZlcnJpZGUgdGhlIGdlbmVyYWwgZGVmYXVsdCBvZiByZWFkaW5nIGluIGRvY3VtZW50IHNvdXJjZSBvcmRlci5cblx0ICovXG5cdFwiYXJpYS1mbG93dG9cIj86IHN0cmluZyB8IHVuZGVmaW5lZDtcblx0LyoqXG5cdCAqIEluZGljYXRlcyBhbiBlbGVtZW50J3MgXCJncmFiYmVkXCIgc3RhdGUgaW4gYSBkcmFnLWFuZC1kcm9wIG9wZXJhdGlvbi5cblx0ICogQGRlcHJlY2F0ZWQgaW4gQVJJQSAxLjFcblx0ICovXG5cdFwiYXJpYS1ncmFiYmVkXCI/OiBCb29sZWFuaXNoIHwgdW5kZWZpbmVkO1xuXHQvKiogSW5kaWNhdGVzIHRoZSBhdmFpbGFiaWxpdHkgYW5kIHR5cGUgb2YgaW50ZXJhY3RpdmUgcG9wdXAgZWxlbWVudCwgc3VjaCBhcyBtZW51IG9yIGRpYWxvZywgdGhhdCBjYW4gYmUgdHJpZ2dlcmVkIGJ5IGFuIGVsZW1lbnQuICovXG5cdFwiYXJpYS1oYXNwb3B1cFwiPzogYm9vbGVhbiB8IFwiZmFsc2VcIiB8IFwidHJ1ZVwiIHwgXCJtZW51XCIgfCBcImxpc3Rib3hcIiB8IFwidHJlZVwiIHwgXCJncmlkXCIgfCBcImRpYWxvZ1wiIHwgdW5kZWZpbmVkO1xuXHQvKipcblx0ICogSW5kaWNhdGVzIHdoZXRoZXIgdGhlIGVsZW1lbnQgaXMgZXhwb3NlZCB0byBhbiBhY2Nlc3NpYmlsaXR5IEFQSS5cblx0ICogQHNlZSBhcmlhLWRpc2FibGVkLlxuXHQgKi9cblx0XCJhcmlhLWhpZGRlblwiPzogQm9vbGVhbmlzaCB8IHVuZGVmaW5lZDtcblx0LyoqXG5cdCAqIEluZGljYXRlcyB0aGUgZW50ZXJlZCB2YWx1ZSBkb2VzIG5vdCBjb25mb3JtIHRvIHRoZSBmb3JtYXQgZXhwZWN0ZWQgYnkgdGhlIGFwcGxpY2F0aW9uLlxuXHQgKiBAc2VlIGFyaWEtZXJyb3JtZXNzYWdlLlxuXHQgKi9cblx0XCJhcmlhLWludmFsaWRcIj86IGJvb2xlYW4gfCBcImZhbHNlXCIgfCBcInRydWVcIiB8IFwiZ3JhbW1hclwiIHwgXCJzcGVsbGluZ1wiIHwgdW5kZWZpbmVkO1xuXHQvKiogSW5kaWNhdGVzIGtleWJvYXJkIHNob3J0Y3V0cyB0aGF0IGFuIGF1dGhvciBoYXMgaW1wbGVtZW50ZWQgdG8gYWN0aXZhdGUgb3IgZ2l2ZSBmb2N1cyB0byBhbiBlbGVtZW50LiAqL1xuXHRcImFyaWEta2V5c2hvcnRjdXRzXCI/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cdC8qKlxuXHQgKiBEZWZpbmVzIGEgc3RyaW5nIHZhbHVlIHRoYXQgbGFiZWxzIHRoZSBjdXJyZW50IGVsZW1lbnQuXG5cdCAqIEBzZWUgYXJpYS1sYWJlbGxlZGJ5LlxuXHQgKi9cblx0XCJhcmlhLWxhYmVsXCI/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cdC8qKlxuXHQgKiBJZGVudGlmaWVzIHRoZSBlbGVtZW50IChvciBlbGVtZW50cykgdGhhdCBsYWJlbHMgdGhlIGN1cnJlbnQgZWxlbWVudC5cblx0ICogQHNlZSBhcmlhLWRlc2NyaWJlZGJ5LlxuXHQgKi9cblx0XCJhcmlhLWxhYmVsbGVkYnlcIj86IHN0cmluZyB8IHVuZGVmaW5lZDtcblx0LyoqIERlZmluZXMgdGhlIGhpZXJhcmNoaWNhbCBsZXZlbCBvZiBhbiBlbGVtZW50IHdpdGhpbiBhIHN0cnVjdHVyZS4gKi9cblx0XCJhcmlhLWxldmVsXCI/OiBudW1iZXIgfCB1bmRlZmluZWQ7XG5cdC8qKiBJbmRpY2F0ZXMgdGhhdCBhbiBlbGVtZW50IHdpbGwgYmUgdXBkYXRlZCwgYW5kIGRlc2NyaWJlcyB0aGUgdHlwZXMgb2YgdXBkYXRlcyB0aGUgdXNlciBhZ2VudHMsIGFzc2lzdGl2ZSB0ZWNobm9sb2dpZXMsIGFuZCB1c2VyIGNhbiBleHBlY3QgZnJvbSB0aGUgbGl2ZSByZWdpb24uICovXG5cdFwiYXJpYS1saXZlXCI/OiBcIm9mZlwiIHwgXCJhc3NlcnRpdmVcIiB8IFwicG9saXRlXCIgfCB1bmRlZmluZWQ7XG5cdC8qKiBJbmRpY2F0ZXMgd2hldGhlciBhbiBlbGVtZW50IGlzIG1vZGFsIHdoZW4gZGlzcGxheWVkLiAqL1xuXHRcImFyaWEtbW9kYWxcIj86IEJvb2xlYW5pc2ggfCB1bmRlZmluZWQ7XG5cdC8qKiBJbmRpY2F0ZXMgd2hldGhlciBhIHRleHQgYm94IGFjY2VwdHMgbXVsdGlwbGUgbGluZXMgb2YgaW5wdXQgb3Igb25seSBhIHNpbmdsZSBsaW5lLiAqL1xuXHRcImFyaWEtbXVsdGlsaW5lXCI/OiBCb29sZWFuaXNoIHwgdW5kZWZpbmVkO1xuXHQvKiogSW5kaWNhdGVzIHRoYXQgdGhlIHVzZXIgbWF5IHNlbGVjdCBtb3JlIHRoYW4gb25lIGl0ZW0gZnJvbSB0aGUgY3VycmVudCBzZWxlY3RhYmxlIGRlc2NlbmRhbnRzLiAqL1xuXHRcImFyaWEtbXVsdGlzZWxlY3RhYmxlXCI/OiBCb29sZWFuaXNoIHwgdW5kZWZpbmVkO1xuXHQvKiogSW5kaWNhdGVzIHdoZXRoZXIgdGhlIGVsZW1lbnQncyBvcmllbnRhdGlvbiBpcyBob3Jpem9udGFsLCB2ZXJ0aWNhbCwgb3IgdW5rbm93bi9hbWJpZ3VvdXMuICovXG5cdFwiYXJpYS1vcmllbnRhdGlvblwiPzogXCJob3Jpem9udGFsXCIgfCBcInZlcnRpY2FsXCIgfCB1bmRlZmluZWQ7XG5cdC8qKlxuXHQgKiBJZGVudGlmaWVzIGFuIGVsZW1lbnQgKG9yIGVsZW1lbnRzKSBpbiBvcmRlciB0byBkZWZpbmUgYSB2aXN1YWwsIGZ1bmN0aW9uYWwsIG9yIGNvbnRleHR1YWwgcGFyZW50L2NoaWxkIHJlbGF0aW9uc2hpcFxuXHQgKiBiZXR3ZWVuIERPTSBlbGVtZW50cyB3aGVyZSB0aGUgRE9NIGhpZXJhcmNoeSBjYW5ub3QgYmUgdXNlZCB0byByZXByZXNlbnQgdGhlIHJlbGF0aW9uc2hpcC5cblx0ICogQHNlZSBhcmlhLWNvbnRyb2xzLlxuXHQgKi9cblx0XCJhcmlhLW93bnNcIj86IHN0cmluZyB8IHVuZGVmaW5lZDtcblx0LyoqXG5cdCAqIERlZmluZXMgYSBzaG9ydCBoaW50IChhIHdvcmQgb3Igc2hvcnQgcGhyYXNlKSBpbnRlbmRlZCB0byBhaWQgdGhlIHVzZXIgd2l0aCBkYXRhIGVudHJ5IHdoZW4gdGhlIGNvbnRyb2wgaGFzIG5vIHZhbHVlLlxuXHQgKiBBIGhpbnQgY291bGQgYmUgYSBzYW1wbGUgdmFsdWUgb3IgYSBicmllZiBkZXNjcmlwdGlvbiBvZiB0aGUgZXhwZWN0ZWQgZm9ybWF0LlxuXHQgKi9cblx0XCJhcmlhLXBsYWNlaG9sZGVyXCI/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cdC8qKlxuXHQgKiBEZWZpbmVzIGFuIGVsZW1lbnQncyBudW1iZXIgb3IgcG9zaXRpb24gaW4gdGhlIGN1cnJlbnQgc2V0IG9mIGxpc3RpdGVtcyBvciB0cmVlaXRlbXMuIE5vdCByZXF1aXJlZCBpZiBhbGwgZWxlbWVudHMgaW4gdGhlIHNldCBhcmUgcHJlc2VudCBpbiB0aGUgRE9NLlxuXHQgKiBAc2VlIGFyaWEtc2V0c2l6ZS5cblx0ICovXG5cdFwiYXJpYS1wb3NpbnNldFwiPzogbnVtYmVyIHwgdW5kZWZpbmVkO1xuXHQvKipcblx0ICogSW5kaWNhdGVzIHRoZSBjdXJyZW50IFwicHJlc3NlZFwiIHN0YXRlIG9mIHRvZ2dsZSBidXR0b25zLlxuXHQgKiBAc2VlIGFyaWEtY2hlY2tlZCBAc2VlIGFyaWEtc2VsZWN0ZWQuXG5cdCAqL1xuXHRcImFyaWEtcHJlc3NlZFwiPzogYm9vbGVhbiB8IFwiZmFsc2VcIiB8IFwibWl4ZWRcIiB8IFwidHJ1ZVwiIHwgdW5kZWZpbmVkO1xuXHQvKipcblx0ICogSW5kaWNhdGVzIHRoYXQgdGhlIGVsZW1lbnQgaXMgbm90IGVkaXRhYmxlLCBidXQgaXMgb3RoZXJ3aXNlIG9wZXJhYmxlLlxuXHQgKiBAc2VlIGFyaWEtZGlzYWJsZWQuXG5cdCAqL1xuXHRcImFyaWEtcmVhZG9ubHlcIj86IEJvb2xlYW5pc2ggfCB1bmRlZmluZWQ7XG5cdC8qKlxuXHQgKiBJbmRpY2F0ZXMgd2hhdCBub3RpZmljYXRpb25zIHRoZSB1c2VyIGFnZW50IHdpbGwgdHJpZ2dlciB3aGVuIHRoZSBhY2Nlc3NpYmlsaXR5IHRyZWUgd2l0aGluIGEgbGl2ZSByZWdpb24gaXMgbW9kaWZpZWQuXG5cdCAqIEBzZWUgYXJpYS1hdG9taWMuXG5cdCAqL1xuXHRcImFyaWEtcmVsZXZhbnRcIj86IFwiYWRkaXRpb25zXCIgfCBcImFkZGl0aW9ucyByZW1vdmFsc1wiIHwgXCJhZGRpdGlvbnMgdGV4dFwiIHwgXCJhbGxcIiB8IFwicmVtb3ZhbHNcIiB8IFwicmVtb3ZhbHMgYWRkaXRpb25zXCIgfCBcInJlbW92YWxzIHRleHRcIiB8IFwidGV4dFwiIHwgXCJ0ZXh0IGFkZGl0aW9uc1wiIHwgXCJ0ZXh0IHJlbW92YWxzXCIgfCB1bmRlZmluZWQ7XG5cdC8qKiBJbmRpY2F0ZXMgdGhhdCB1c2VyIGlucHV0IGlzIHJlcXVpcmVkIG9uIHRoZSBlbGVtZW50IGJlZm9yZSBhIGZvcm0gbWF5IGJlIHN1Ym1pdHRlZC4gKi9cblx0XCJhcmlhLXJlcXVpcmVkXCI/OiBCb29sZWFuaXNoIHwgdW5kZWZpbmVkO1xuXHQvKiogRGVmaW5lcyBhIGh1bWFuLXJlYWRhYmxlLCBhdXRob3ItbG9jYWxpemVkIGRlc2NyaXB0aW9uIGZvciB0aGUgcm9sZSBvZiBhbiBlbGVtZW50LiAqL1xuXHRcImFyaWEtcm9sZWRlc2NyaXB0aW9uXCI/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cdC8qKlxuXHQgKiBEZWZpbmVzIHRoZSB0b3RhbCBudW1iZXIgb2Ygcm93cyBpbiBhIHRhYmxlLCBncmlkLCBvciB0cmVlZ3JpZC5cblx0ICogQHNlZSBhcmlhLXJvd2luZGV4LlxuXHQgKi9cblx0XCJhcmlhLXJvd2NvdW50XCI/OiBudW1iZXIgfCB1bmRlZmluZWQ7XG5cdC8qKlxuXHQgKiBEZWZpbmVzIGFuIGVsZW1lbnQncyByb3cgaW5kZXggb3IgcG9zaXRpb24gd2l0aCByZXNwZWN0IHRvIHRoZSB0b3RhbCBudW1iZXIgb2Ygcm93cyB3aXRoaW4gYSB0YWJsZSwgZ3JpZCwgb3IgdHJlZWdyaWQuXG5cdCAqIEBzZWUgYXJpYS1yb3djb3VudCBAc2VlIGFyaWEtcm93c3Bhbi5cblx0ICovXG5cdFwiYXJpYS1yb3dpbmRleFwiPzogbnVtYmVyIHwgdW5kZWZpbmVkO1xuXHQvKipcblx0ICogRGVmaW5lcyBhIGh1bWFuIHJlYWRhYmxlIHRleHQgYWx0ZXJuYXRpdmUgb2YgYXJpYS1yb3dpbmRleC5cblx0ICogQHNlZSBhcmlhLWNvbGluZGV4dGV4dC5cblx0ICovXG5cdFwiYXJpYS1yb3dpbmRleHRleHRcIj86IHN0cmluZyB8IHVuZGVmaW5lZDtcblx0LyoqXG5cdCAqIERlZmluZXMgdGhlIG51bWJlciBvZiByb3dzIHNwYW5uZWQgYnkgYSBjZWxsIG9yIGdyaWRjZWxsIHdpdGhpbiBhIHRhYmxlLCBncmlkLCBvciB0cmVlZ3JpZC5cblx0ICogQHNlZSBhcmlhLXJvd2luZGV4IEBzZWUgYXJpYS1jb2xzcGFuLlxuXHQgKi9cblx0XCJhcmlhLXJvd3NwYW5cIj86IG51bWJlciB8IHVuZGVmaW5lZDtcblx0LyoqXG5cdCAqIEluZGljYXRlcyB0aGUgY3VycmVudCBcInNlbGVjdGVkXCIgc3RhdGUgb2YgdmFyaW91cyB3aWRnZXRzLlxuXHQgKiBAc2VlIGFyaWEtY2hlY2tlZCBAc2VlIGFyaWEtcHJlc3NlZC5cblx0ICovXG5cdFwiYXJpYS1zZWxlY3RlZFwiPzogQm9vbGVhbmlzaCB8IHVuZGVmaW5lZDtcblx0LyoqXG5cdCAqIERlZmluZXMgdGhlIG51bWJlciBvZiBpdGVtcyBpbiB0aGUgY3VycmVudCBzZXQgb2YgbGlzdGl0ZW1zIG9yIHRyZWVpdGVtcy4gTm90IHJlcXVpcmVkIGlmIGFsbCBlbGVtZW50cyBpbiB0aGUgc2V0IGFyZSBwcmVzZW50IGluIHRoZSBET00uXG5cdCAqIEBzZWUgYXJpYS1wb3NpbnNldC5cblx0ICovXG5cdFwiYXJpYS1zZXRzaXplXCI/OiBudW1iZXIgfCB1bmRlZmluZWQ7XG5cdC8qKiBJbmRpY2F0ZXMgaWYgaXRlbXMgaW4gYSB0YWJsZSBvciBncmlkIGFyZSBzb3J0ZWQgaW4gYXNjZW5kaW5nIG9yIGRlc2NlbmRpbmcgb3JkZXIuICovXG5cdFwiYXJpYS1zb3J0XCI/OiBcIm5vbmVcIiB8IFwiYXNjZW5kaW5nXCIgfCBcImRlc2NlbmRpbmdcIiB8IFwib3RoZXJcIiB8IHVuZGVmaW5lZDtcblx0LyoqIERlZmluZXMgdGhlIG1heGltdW0gYWxsb3dlZCB2YWx1ZSBmb3IgYSByYW5nZSB3aWRnZXQuICovXG5cdFwiYXJpYS12YWx1ZW1heFwiPzogbnVtYmVyIHwgdW5kZWZpbmVkO1xuXHQvKiogRGVmaW5lcyB0aGUgbWluaW11bSBhbGxvd2VkIHZhbHVlIGZvciBhIHJhbmdlIHdpZGdldC4gKi9cblx0XCJhcmlhLXZhbHVlbWluXCI/OiBudW1iZXIgfCB1bmRlZmluZWQ7XG5cdC8qKlxuXHQgKiBEZWZpbmVzIHRoZSBjdXJyZW50IHZhbHVlIGZvciBhIHJhbmdlIHdpZGdldC5cblx0ICogQHNlZSBhcmlhLXZhbHVldGV4dC5cblx0ICovXG5cdFwiYXJpYS12YWx1ZW5vd1wiPzogbnVtYmVyIHwgdW5kZWZpbmVkO1xuXHQvKiogRGVmaW5lcyB0aGUgaHVtYW4gcmVhZGFibGUgdGV4dCBhbHRlcm5hdGl2ZSBvZiBhcmlhLXZhbHVlbm93IGZvciBhIHJhbmdlIHdpZGdldC4gKi9cblx0XCJhcmlhLXZhbHVldGV4dFwiPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXHQvKiogQWxsIHRoZSBXQUktQVJJQSAxLjEgcm9sZSBhdHRyaWJ1dGUgdmFsdWVzIGZyb20gaHR0cHM6Ly93My5vcmcvVFIvd2FpLWFyaWEtMS4xLyNyb2xlX2RlZmluaXRpb25zICovXG5cdHJvbGU/OiBBcmlhUm9sZTtcbn07XG5leHBvcnQgdHlwZSBBcmlhUm9sZSA9IFwiYWxlcnRcIiB8IFwiYWxlcnRkaWFsb2dcIiB8IFwiYXBwbGljYXRpb25cIiB8IFwiYXJ0aWNsZVwiIHwgXCJiYW5uZXJcIiB8IFwiYnV0dG9uXCIgfCBcImNlbGxcIiB8IFwiY2hlY2tib3hcIiB8IFwiY29sdW1uaGVhZGVyXCIgfCBcImNvbWJvYm94XCIgfCBcImNvbXBsZW1lbnRhcnlcIiB8IFwiY29udGVudGluZm9cIiB8IFwiZGVmaW5pdGlvblwiIHwgXCJkaWFsb2dcIiB8IFwiZGlyZWN0b3J5XCIgfCBcImRvY3VtZW50XCIgfCBcImZlZWRcIiB8IFwiZmlndXJlXCIgfCBcImZvcm1cIiB8IFwiZ3JpZFwiIHwgXCJncmlkY2VsbFwiIHwgXCJncm91cFwiIHwgXCJoZWFkaW5nXCIgfCBcImltZ1wiIHwgXCJsaW5rXCIgfCBcImxpc3RcIiB8IFwibGlzdGJveFwiIHwgXCJsaXN0aXRlbVwiIHwgXCJsb2dcIiB8IFwibWFpblwiIHwgXCJtYXJxdWVlXCIgfCBcIm1hdGhcIiB8IFwibWVudVwiIHwgXCJtZW51YmFyXCIgfCBcIm1lbnVpdGVtXCIgfCBcIm1lbnVpdGVtY2hlY2tib3hcIiB8IFwibWVudWl0ZW1yYWRpb1wiIHwgXCJuYXZpZ2F0aW9uXCIgfCBcIm5vbmVcIiB8IFwibm90ZVwiIHwgXCJvcHRpb25cIiB8IFwicHJlc2VudGF0aW9uXCIgfCBcInByb2dyZXNzYmFyXCIgfCBcInJhZGlvXCIgfCBcInJhZGlvZ3JvdXBcIiB8IFwicmVnaW9uXCIgfCBcInJvd1wiIHwgXCJyb3dncm91cFwiIHwgXCJyb3doZWFkZXJcIiB8IFwic2Nyb2xsYmFyXCIgfCBcInNlYXJjaFwiIHwgXCJzZWFyY2hib3hcIiB8IFwic2VwYXJhdG9yXCIgfCBcInNsaWRlclwiIHwgXCJzcGluYnV0dG9uXCIgfCBcInN0YXR1c1wiIHwgXCJzd2l0Y2hcIiB8IFwidGFiXCIgfCBcInRhYmxlXCIgfCBcInRhYmxpc3RcIiB8IFwidGFicGFuZWxcIiB8IFwidGVybVwiIHwgXCJ0ZXh0Ym94XCIgfCBcInRpbWVyXCIgfCBcInRvb2xiYXJcIiB8IFwidG9vbHRpcFwiIHwgXCJ0cmVlXCIgfCBcInRyZWVncmlkXCIgfCBcInRyZWVpdGVtXCI7XG5kZWNsYXJlIGNvbnN0IElDT05fTkFNRVM6IHJlYWRvbmx5IFtcblx0XCIzNjBcIixcblx0XCJhY2Nlc3NpYmlsaXR5XCIsXG5cdFwiYWN0aXZlLWNhYmluLXZlbnRpbGF0aW9uXCIsXG5cdFwiYWRkXCIsXG5cdFwiYWRqdXN0XCIsXG5cdFwiYXJyb3ctZG91YmxlLWRvd25cIixcblx0XCJhcnJvdy1kb3VibGUtbGVmdFwiLFxuXHRcImFycm93LWRvdWJsZS1yaWdodFwiLFxuXHRcImFycm93LWRvdWJsZS11cFwiLFxuXHRcImFycm93LWRvd25cIixcblx0XCJhcnJvdy1maXJzdFwiLFxuXHRcImFycm93LWhlYWQtZG93blwiLFxuXHRcImFycm93LWhlYWQtbGVmdFwiLFxuXHRcImFycm93LWhlYWQtcmlnaHRcIixcblx0XCJhcnJvdy1oZWFkLXVwXCIsXG5cdFwiYXJyb3ctbGFzdFwiLFxuXHRcImFycm93LWxlZnRcIixcblx0XCJhcnJvdy1yaWdodFwiLFxuXHRcImFycm93LXVwXCIsXG5cdFwiYXR0YWNobWVudFwiLFxuXHRcImF1Z21lbnRlZC1yZWFsaXR5XCIsXG5cdFwiYmF0dGVyeS1lbXB0eVwiLFxuXHRcImJhdHRlcnktZW1wdHktY28yXCIsXG5cdFwiYmF0dGVyeS1lbXB0eS1mdWVsXCIsXG5cdFwiYmF0dGVyeS1mdWxsXCIsXG5cdFwiYmVsbFwiLFxuXHRcImJvb2ttYXJrXCIsXG5cdFwiYm9va21hcmstZmlsbGVkXCIsXG5cdFwiYnJvYWRjYXN0XCIsXG5cdFwiY2FsY3VsYXRvclwiLFxuXHRcImNhbGVuZGFyXCIsXG5cdFwiY2FtZXJhXCIsXG5cdFwiY2FyXCIsXG5cdFwiY2FyLWJhdHRlcnlcIixcblx0XCJjYXJkXCIsXG5cdFwiY2hhcmdpbmctYWN0aXZlXCIsXG5cdFwiY2hhcmdpbmctc3RhdGVcIixcblx0XCJjaGFyZ2luZy1zdGF0aW9uXCIsXG5cdFwiY2hhcnRcIixcblx0XCJjaGF0XCIsXG5cdFwiY2hlY2tcIixcblx0XCJjaXR5XCIsXG5cdFwiY2xpbWF0ZVwiLFxuXHRcImNsaW1hdGUtY29udHJvbFwiLFxuXHRcImNsb2NrXCIsXG5cdFwiY2xvc2VcIixcblx0XCJjbG9zZWQtY2FwdGlvblwiLFxuXHRcImNvMi1jbGFzc1wiLFxuXHRcImNvMi1lbWlzc2lvblwiLFxuXHRcImNvbXBhcmVcIixcblx0XCJjb25maWd1cmF0ZVwiLFxuXHRcImNvcHlcIixcblx0XCJjb3VudHJ5LXJvYWRcIixcblx0XCJjdWJpYy1jYXBhY2l0eVwiLFxuXHRcImRlbGV0ZVwiLFxuXHRcImRpc2FibGVcIixcblx0XCJkaXNsaWtlXCIsXG5cdFwiZGlzbGlrZS1maWxsZWRcIixcblx0XCJkb2N1bWVudFwiLFxuXHRcImRvd25sb2FkXCIsXG5cdFwiZHVyYXRpb25cIixcblx0XCJlZGl0XCIsXG5cdFwiZW1haWxcIixcblx0XCJlcnJvci1maWxsZWRcIixcblx0XCJleGNsYW1hdGlvblwiLFxuXHRcImV4dGVybmFsXCIsXG5cdFwiZmlsdGVyXCIsXG5cdFwiZmluZ2VycHJpbnRcIixcblx0XCJmbGFzaFwiLFxuXHRcImZ1ZWwtc3RhdGlvblwiLFxuXHRcImdhcmFnZVwiLFxuXHRcImdpZnRcIixcblx0XCJnbG9iZVwiLFxuXHRcImdyaWRcIixcblx0XCJoZWFydFwiLFxuXHRcImhlYXJ0LWZpbGxlZFwiLFxuXHRcImhpZ2h3YXlcIixcblx0XCJob21lXCIsXG5cdFwiaG9yblwiLFxuXHRcImltYWdlXCIsXG5cdFwiaW5jcmVhc2VcIixcblx0XCJpbmZvcm1hdGlvblwiLFxuXHRcImluZm9ybWF0aW9uLWZpbGxlZFwiLFxuXHRcImtleVwiLFxuXHRcImxlYWZcIixcblx0XCJsZWF0aGVyXCIsXG5cdFwibGlnaHRcIixcblx0XCJsaWtlXCIsXG5cdFwibGlrZS1maWxsZWRcIixcblx0XCJsaXN0XCIsXG5cdFwibG9jYXRlXCIsXG5cdFwibG9ja1wiLFxuXHRcImxvY2stb3BlblwiLFxuXHRcImxvZ28tYXBwbGUtcG9kY2FzdFwiLFxuXHRcImxvZ28tYmFpZHVcIixcblx0XCJsb2dvLWRlbGljaW91c1wiLFxuXHRcImxvZ28tZGlnZ1wiLFxuXHRcImxvZ28tZmFjZWJvb2tcIixcblx0XCJsb2dvLWZvdXJzcXVhcmVcIixcblx0XCJsb2dvLWdtYWlsXCIsXG5cdFwibG9nby1nb29nbGVcIixcblx0XCJsb2dvLWhhdGVuYVwiLFxuXHRcImxvZ28taW5zdGFncmFtXCIsXG5cdFwibG9nby1rYWl4aW5cIixcblx0XCJsb2dvLWtha2FvdGFsa1wiLFxuXHRcImxvZ28tbGlua2VkaW5cIixcblx0XCJsb2dvLW5hdmVyXCIsXG5cdFwibG9nby1waW50ZXJlc3RcIixcblx0XCJsb2dvLXFxXCIsXG5cdFwibG9nby1xcS1zaGFyZVwiLFxuXHRcImxvZ28tcmVkZGl0XCIsXG5cdFwibG9nby1za3lyb2NrXCIsXG5cdFwibG9nby1zb2h1XCIsXG5cdFwibG9nby1zcG90aWZ5XCIsXG5cdFwibG9nby10ZWNlbnRcIixcblx0XCJsb2dvLXRlbGVncmFtXCIsXG5cdFwibG9nby10aWt0b2tcIixcblx0XCJsb2dvLXR1bWJsclwiLFxuXHRcImxvZ28tdHdpdHRlclwiLFxuXHRcImxvZ28tdmliZXJcIixcblx0XCJsb2dvLXZrXCIsXG5cdFwibG9nby13ZWNoYXRcIixcblx0XCJsb2dvLXdlaWJvXCIsXG5cdFwibG9nby13aGF0c2FwcFwiLFxuXHRcImxvZ28teFwiLFxuXHRcImxvZ28teGluZ1wiLFxuXHRcImxvZ28teWFob29cIixcblx0XCJsb2dvLXlvdWt1XCIsXG5cdFwibG9nby15b3V0dWJlXCIsXG5cdFwibG9nb3V0XCIsXG5cdFwibWFwXCIsXG5cdFwibWVudS1kb3RzLWhvcml6b250YWxcIixcblx0XCJtZW51LWRvdHMtdmVydGljYWxcIixcblx0XCJtZW51LWxpbmVzXCIsXG5cdFwibWludXNcIixcblx0XCJtb2JpbGVcIixcblx0XCJtb29uXCIsXG5cdFwibmV3LWNoYXRcIixcblx0XCJvaWwtY2FuXCIsXG5cdFwicGFya2luZy1icmFrZVwiLFxuXHRcInBhcmtpbmctbGlnaHRcIixcblx0XCJwYXVzZVwiLFxuXHRcInBob25lXCIsXG5cdFwicGluXCIsXG5cdFwicGluLWZpbGxlZFwiLFxuXHRcInBsYXlcIixcblx0XCJwbHVnXCIsXG5cdFwicGx1c1wiLFxuXHRcInByZWhlYXRpbmdcIixcblx0XCJwcmludGVyXCIsXG5cdFwicHVyY2hhc2VcIixcblx0XCJwdXNoLXBpblwiLFxuXHRcInB1c2gtcGluLW9mZlwiLFxuXHRcInFyXCIsXG5cdFwicXVlc3Rpb25cIixcblx0XCJyYWNpbmctZmxhZ1wiLFxuXHRcInJlZnJlc2hcIixcblx0XCJyZXBsYXlcIixcblx0XCJyZXNldFwiLFxuXHRcInJvb2YtY2xvc2VkXCIsXG5cdFwicm9vZi1vcGVuXCIsXG5cdFwicm91dGVcIixcblx0XCJyc3NcIixcblx0XCJzYXZlXCIsXG5cdFwic2NyZWVuXCIsXG5cdFwic2VhcmNoXCIsXG5cdFwic2VuZFwiLFxuXHRcInNoYXJlXCIsXG5cdFwic2hvcHBpbmctYmFnXCIsXG5cdFwic2hvcHBpbmctYmFnLWZpbGxlZFwiLFxuXHRcInNob3BwaW5nLWNhcnRcIixcblx0XCJzaG9wcGluZy1jYXJ0LWZpbGxlZFwiLFxuXHRcInNpZGViYXJcIixcblx0XCJzaWRlbGlnaHRzXCIsXG5cdFwic25vd2ZsYWtlXCIsXG5cdFwic29ydFwiLFxuXHRcInN0YWNrXCIsXG5cdFwic3RhclwiLFxuXHRcInN0YXItZmlsbGVkXCIsXG5cdFwic3RlZXJpbmctd2hlZWxcIixcblx0XCJzdG9wd2F0Y2hcIixcblx0XCJzdWJ0cmFjdFwiLFxuXHRcInN1Y2Nlc3NcIixcblx0XCJzdWNjZXNzLWZpbGxlZFwiLFxuXHRcInN1blwiLFxuXHRcInN3aXRjaFwiLFxuXHRcInRhYmxldFwiLFxuXHRcInRhY2hvbWV0ZXJcIixcblx0XCJ0aXJlXCIsXG5cdFwidHJ1Y2tcIixcblx0XCJ1cGxvYWRcIixcblx0XCJ1c2VyXCIsXG5cdFwidXNlci1maWxsZWRcIixcblx0XCJ1c2VyLWdyb3VwXCIsXG5cdFwidXNlci1tYW51YWxcIixcblx0XCJ2aWRlb1wiLFxuXHRcInZpZXdcIixcblx0XCJ2aWV3LW9mZlwiLFxuXHRcInZvbHVtZS1vZmZcIixcblx0XCJ2b2x1bWUtdXBcIixcblx0XCJ3YXJuaW5nXCIsXG5cdFwid2FybmluZy1maWxsZWRcIixcblx0XCJ3ZWlnaHRcIixcblx0XCJ3aWZpXCIsXG5cdFwid29ya1wiLFxuXHRcIndyZW5jaFwiLFxuXHRcIndyZW5jaGVzXCIsXG5cdFwiem9vbS1pblwiLFxuXHRcInpvb20tb3V0XCJcbl07XG5leHBvcnQgdHlwZSBJY29uTmFtZSA9IHR5cGVvZiBJQ09OX05BTUVTW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IEZPUk1fU1RBVEVTOiByZWFkb25seSBbXG5cdFwibm9uZVwiLFxuXHRcImVycm9yXCIsXG5cdFwic3VjY2Vzc1wiXG5dO1xuZXhwb3J0IHR5cGUgRm9ybVN0YXRlID0gdHlwZW9mIEZPUk1fU1RBVEVTW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IEJVVFRPTl9BUklBX0FUVFJJQlVURVM6IHJlYWRvbmx5IFtcblx0XCJhcmlhLWxhYmVsXCIsXG5cdFwiYXJpYS1leHBhbmRlZFwiLFxuXHRcImFyaWEtcHJlc3NlZFwiLFxuXHRcImFyaWEtaGFzcG9wdXBcIlxuXTtcbmV4cG9ydCB0eXBlIEJ1dHRvbkFyaWFBdHRyaWJ1dGUgPSB0eXBlb2YgQlVUVE9OX0FSSUFfQVRUUklCVVRFU1tudW1iZXJdO1xuZGVjbGFyZSBjb25zdCBMSU5LX0FSSUFfQVRUUklCVVRFUzogcmVhZG9ubHkgW1xuXHRcImFyaWEtbGFiZWxcIixcblx0XCJhcmlhLWN1cnJlbnRcIixcblx0XCJhcmlhLWhhc3BvcHVwXCJcbl07XG5leHBvcnQgdHlwZSBMaW5rQXJpYUF0dHJpYnV0ZSA9ICh0eXBlb2YgTElOS19BUklBX0FUVFJJQlVURVMpW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IGJyZWFrcG9pbnRzOiByZWFkb25seSBbXG5cdFwiYmFzZVwiLFxuXHRcInhzXCIsXG5cdFwic1wiLFxuXHRcIm1cIixcblx0XCJsXCIsXG5cdFwieGxcIixcblx0XCJ4eGxcIlxuXTtcbmV4cG9ydCB0eXBlIEJyZWFrcG9pbnQgPSAodHlwZW9mIGJyZWFrcG9pbnRzKVtudW1iZXJdO1xuZXhwb3J0IHR5cGUgQnJlYWtwb2ludFZhbHVlczxUPiA9IHtcblx0W2tleSBpbiBCcmVha3BvaW50XT86IFQ7XG59ICYge1xuXHRiYXNlOiBUO1xufTtcbmV4cG9ydCB0eXBlIEJyZWFrcG9pbnRDdXN0b21pemFibGU8VD4gPSBUIHwgQnJlYWtwb2ludFZhbHVlczxUPjtcbmRlY2xhcmUgY29uc3QgTElOS19UQVJHRVRTOiByZWFkb25seSBbXG5cdFwiX3NlbGZcIixcblx0XCJfYmxhbmtcIixcblx0XCJfcGFyZW50XCIsXG5cdFwiX3RvcFwiXG5dO1xuZXhwb3J0IHR5cGUgTGlua1RhcmdldCA9ICh0eXBlb2YgTElOS19UQVJHRVRTKVtudW1iZXJdIHwgc3RyaW5nO1xuZGVjbGFyZSBjb25zdCBUSEVNRVM6IHJlYWRvbmx5IFtcblx0XCJsaWdodFwiLFxuXHRcImRhcmtcIixcblx0XCJhdXRvXCJcbl07XG5leHBvcnQgdHlwZSBUaGVtZSA9ICh0eXBlb2YgVEhFTUVTKVtudW1iZXJdO1xuZGVjbGFyZSBjb25zdCBUSUxFX0FTUEVDVF9SQVRJT1M6IHJlYWRvbmx5IFtcblx0XCIxLzFcIixcblx0XCI0LzNcIixcblx0XCIzLzRcIixcblx0XCIxNi85XCIsXG5cdFwiOS8xNlwiLFxuXHRcIjE6MVwiLFxuXHRcIjQ6M1wiLFxuXHRcIjM6NFwiLFxuXHRcIjE2OjlcIixcblx0XCI5OjE2XCJcbl07XG5leHBvcnQgdHlwZSBUaWxlQXNwZWN0UmF0aW8gPSAodHlwZW9mIFRJTEVfQVNQRUNUX1JBVElPUylbbnVtYmVyXTtcbmRlY2xhcmUgY29uc3QgVElMRV9TSVpFUzogcmVhZG9ubHkgW1xuXHRcIm1lZGl1bVwiLFxuXHRcImxhcmdlXCIsXG5cdFwiaW5oZXJpdFwiLFxuXHRcImRlZmF1bHRcIlxuXTtcbmV4cG9ydCB0eXBlIFRpbGVTaXplID0gKHR5cGVvZiBUSUxFX1NJWkVTKVtudW1iZXJdO1xuZGVjbGFyZSBjb25zdCBUSUxFX1dFSUdIVFM6IHJlYWRvbmx5IFtcblx0XCJyZWd1bGFyXCIsXG5cdFwic2VtaS1ib2xkXCJcbl07XG5leHBvcnQgdHlwZSBUaWxlV2VpZ2h0ID0gKHR5cGVvZiBUSUxFX1dFSUdIVFMpW251bWJlcl07XG5leHBvcnQgdHlwZSBUaWxlQmFja2dyb3VuZCA9ICh0eXBlb2YgVEhFTUVTKVtudW1iZXJdO1xuZGVjbGFyZSBjb25zdCBUSUxFX0FMSUdOUzogcmVhZG9ubHkgW1xuXHRcInRvcFwiLFxuXHRcImJvdHRvbVwiXG5dO1xuZXhwb3J0IHR5cGUgVGlsZUFsaWduID0gKHR5cGVvZiBUSUxFX0FMSUdOUylbbnVtYmVyXTtcbmRlY2xhcmUgY29uc3QgU0NST0xMRVJfQVJJQV9BVFRSSUJVVEVTOiByZWFkb25seSBbXG5cdFwicm9sZVwiXG5dO1xuZXhwb3J0IHR5cGUgU2Nyb2xsZXJBcmlhQXR0cmlidXRlID0gKHR5cGVvZiBTQ1JPTExFUl9BUklBX0FUVFJJQlVURVMpW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IEdSQURJRU5UX0NPTE9SX1NDSEVNRVM6IHJlYWRvbmx5IFtcblx0XCJkZWZhdWx0XCIsXG5cdFwic3VyZmFjZVwiXG5dO1xuLyoqIEBkZXByZWNhdGVkICovXG5leHBvcnQgdHlwZSBTY3JvbGxlckdyYWRpZW50Q29sb3JTY2hlbWUgPSAodHlwZW9mIEdSQURJRU5UX0NPTE9SX1NDSEVNRVMpW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IEdSQURJRU5UX0NPTE9SUzogcmVhZG9ubHkgW1xuXHRcImJhY2tncm91bmQtYmFzZVwiLFxuXHRcImJhY2tncm91bmQtc3VyZmFjZVwiXG5dO1xuZXhwb3J0IHR5cGUgU2Nyb2xsZXJHcmFkaWVudENvbG9yID0gKHR5cGVvZiBHUkFESUVOVF9DT0xPUlMpW251bWJlcl07XG5leHBvcnQgdHlwZSBTY3JvbGxlclNjcm9sbFRvUG9zaXRpb24gPSB7XG5cdHNjcm9sbFBvc2l0aW9uOiBudW1iZXI7XG5cdGlzU21vb3RoPzogYm9vbGVhbjtcbn0gfCBzdHJpbmc7XG5kZWNsYXJlIGNvbnN0IFNDUk9MTF9JTkRJQ0FUT1JfUE9TSVRJT05TOiByZWFkb25seSBbXG5cdFwidG9wXCIsXG5cdFwiY2VudGVyXCJcbl07XG4vKiogQGRlcHJlY2F0ZWQgKi9cbmV4cG9ydCB0eXBlIFNjcm9sbGVyU2Nyb2xsSW5kaWNhdG9yUG9zaXRpb24gPSAodHlwZW9mIFNDUk9MTF9JTkRJQ0FUT1JfUE9TSVRJT05TKVtudW1iZXJdO1xuZXhwb3J0IHR5cGUgU2Nyb2xsZXJBbGlnblNjcm9sbEluZGljYXRvciA9IFNjcm9sbGVyU2Nyb2xsSW5kaWNhdG9yUG9zaXRpb247XG5kZWNsYXJlIGNvbnN0IFNFTEVDVF9EUk9QRE9XTl9ESVJFQ1RJT05TOiByZWFkb25seSBbXG5cdFwiZG93blwiLFxuXHRcInVwXCIsXG5cdFwiYXV0b1wiXG5dO1xuZXhwb3J0IHR5cGUgU2VsZWN0Q29tcG9uZW50c0Ryb3Bkb3duRGlyZWN0aW9uID0gKHR5cGVvZiBTRUxFQ1RfRFJPUERPV05fRElSRUNUSU9OUylbbnVtYmVyXTtcbmRlY2xhcmUgY29uc3QgSEVBRElOR19TSVpFUzogcmVhZG9ubHkgW1xuXHRcInNtYWxsXCIsXG5cdFwibWVkaXVtXCIsXG5cdFwibGFyZ2VcIixcblx0XCJ4LWxhcmdlXCIsXG5cdFwieHgtbGFyZ2VcIixcblx0XCJpbmhlcml0XCJcbl07XG5leHBvcnQgdHlwZSBIZWFkaW5nU2l6ZSA9ICh0eXBlb2YgSEVBRElOR19TSVpFUylbbnVtYmVyXTtcbmRlY2xhcmUgY29uc3QgSEVBRElOR19UQUdTOiByZWFkb25seSBbXG5cdFwiaDFcIixcblx0XCJoMlwiLFxuXHRcImgzXCIsXG5cdFwiaDRcIixcblx0XCJoNVwiLFxuXHRcImg2XCJcbl07XG5leHBvcnQgdHlwZSBIZWFkaW5nVGFnID0gdHlwZW9mIEhFQURJTkdfVEFHU1tudW1iZXJdO1xuZGVjbGFyZSBjb25zdCBURVhUX1NJWkVTOiByZWFkb25seSBbXG5cdFwieHgtc21hbGxcIixcblx0XCJ4LXNtYWxsXCIsXG5cdFwic21hbGxcIixcblx0XCJtZWRpdW1cIixcblx0XCJsYXJnZVwiLFxuXHRcIngtbGFyZ2VcIixcblx0XCJpbmhlcml0XCJcbl07XG5leHBvcnQgdHlwZSBUZXh0U2l6ZSA9ICh0eXBlb2YgVEVYVF9TSVpFUylbbnVtYmVyXTtcbmRlY2xhcmUgY29uc3QgVFlQT0dSQVBIWV9BTElHTlM6IHJlYWRvbmx5IFtcblx0XCJzdGFydFwiLFxuXHRcImNlbnRlclwiLFxuXHRcImVuZFwiLFxuXHRcImluaGVyaXRcIixcblx0XCJsZWZ0XCIsXG5cdFwicmlnaHRcIlxuXTtcbmV4cG9ydCB0eXBlIFR5cG9ncmFwaHlBbGlnbiA9ICh0eXBlb2YgVFlQT0dSQVBIWV9BTElHTlMpW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IFRZUE9HUkFQSFlfVEVYVF9DT0xPUlM6IHJlYWRvbmx5IFtcblx0XCJwcmltYXJ5XCIsXG5cdFwiY29udHJhc3QtbG93XCIsXG5cdFwiY29udHJhc3QtbWVkaXVtXCIsXG5cdFwiY29udHJhc3QtaGlnaFwiLFxuXHRcIm5vdGlmaWNhdGlvbi1zdWNjZXNzXCIsXG5cdFwibm90aWZpY2F0aW9uLXdhcm5pbmdcIixcblx0XCJub3RpZmljYXRpb24tZXJyb3JcIixcblx0XCJub3RpZmljYXRpb24taW5mb1wiLFxuXHRcImluaGVyaXRcIixcblx0XCJicmFuZFwiLFxuXHRcImRlZmF1bHRcIixcblx0XCJuZXV0cmFsLWNvbnRyYXN0LWxvd1wiLFxuXHRcIm5ldXRyYWwtY29udHJhc3QtbWVkaXVtXCIsXG5cdFwibmV1dHJhbC1jb250cmFzdC1oaWdoXCIsXG5cdFwibm90aWZpY2F0aW9uLW5ldXRyYWxcIlxuXTtcbmV4cG9ydCB0eXBlIFR5cG9ncmFwaHlUZXh0Q29sb3IgPSAodHlwZW9mIFRZUE9HUkFQSFlfVEVYVF9DT0xPUlMpW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IFRZUE9HUkFQSFlfVEVYVF9XRUlHSFRTOiByZWFkb25seSBbXG5cdFwicmVndWxhclwiLFxuXHRcInNlbWktYm9sZFwiLFxuXHRcImJvbGRcIixcblx0XCJ0aGluXCIsXG5cdFwic2VtaWJvbGRcIlxuXTtcbmV4cG9ydCB0eXBlIFR5cG9ncmFwaHlUZXh0V2VpZ2h0ID0gKHR5cGVvZiBUWVBPR1JBUEhZX1RFWFRfV0VJR0hUUylbbnVtYmVyXTtcbmRlY2xhcmUgY29uc3QgQUxJR05fTEFCRUxTOiByZWFkb25seSBbXG5cdFwic3RhcnRcIixcblx0XCJlbmRcIixcblx0XCJsZWZ0XCIsXG5cdFwicmlnaHRcIlxuXTtcbmV4cG9ydCB0eXBlIEFsaWduTGFiZWwgPSAodHlwZW9mIEFMSUdOX0xBQkVMUylbbnVtYmVyXTtcbmRlY2xhcmUgY29uc3QgQlVUVE9OX1RZUEVTOiByZWFkb25seSBbXG5cdFwiYnV0dG9uXCIsXG5cdFwic3VibWl0XCIsXG5cdFwicmVzZXRcIlxuXTtcbmV4cG9ydCB0eXBlIEJ1dHRvblR5cGUgPSB0eXBlb2YgQlVUVE9OX1RZUEVTW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IExJTktfQlVUVE9OX1ZBUklBTlRTOiByZWFkb25seSBbXG5cdFwicHJpbWFyeVwiLFxuXHRcInNlY29uZGFyeVwiLFxuXHRcImdob3N0XCIsXG5cdFwidGVydGlhcnlcIlxuXTtcbmV4cG9ydCB0eXBlIExpbmtCdXR0b25WYXJpYW50ID0gKHR5cGVvZiBMSU5LX0JVVFRPTl9WQVJJQU5UUylbbnVtYmVyXTtcbmV4cG9ydCB0eXBlIExpbmtCdXR0b25JY29uTmFtZSA9IEljb25OYW1lIHwgXCJub25lXCI7XG5leHBvcnQgdHlwZSBCdXR0b25WYXJpYW50ID0gTGlua0J1dHRvblZhcmlhbnQ7XG5leHBvcnQgdHlwZSBMaW5rVmFyaWFudCA9IExpbmtCdXR0b25WYXJpYW50O1xuLy8gVE9ETzogU2hhcmUgdHlwZSBhY3Jvc3MgcmVwb1xuZXhwb3J0IHR5cGUgUG9yc2NoZURlc2lnblN5c3RlbSA9IHtcblx0W2tleTogYCR7bnVtYmVyfS4ke251bWJlcn0uJHtudW1iZXJ9JHtgLXJjLiR7bnVtYmVyfWAgfCBcIlwifWBdOiB7XG5cdFx0cHJlZml4ZXM6IHN0cmluZ1tdO1xuXHRcdGlzUmVhZHk6ICgpID0+IFByb21pc2U8dm9pZD47XG5cdFx0cmVhZHlSZXNvbHZlOiAoKSA9PiB2b2lkO1xuXHR9O1xuXHRjZG46IHtcblx0XHR1cmw6IHN0cmluZztcblx0XHRwcmVmaXhlczogc3RyaW5nW107IC8vIHRvIG5vdCBicmVhayBvbGRlciB2ZXJzaW9uc1xuXHR9O1xufTtcbi8vIFJPTExVUF9SRVBMQUNFX1ZBUklBQkxFUyBhcmUgcmVwbGFjZWQgdmlhIHJvbGx1cFxuZXhwb3J0IHR5cGUgU2VsZWN0ZWRBcmlhQXR0cmlidXRlczxUIGV4dGVuZHMga2V5b2YgQXJpYUF0dHJpYnV0ZXM+ID0gUGljazxBcmlhQXR0cmlidXRlcywgVD47XG5kZWNsYXJlIGNvbnN0IEFDQ09SRElPTl9TSVpFUzogcmVhZG9ubHkgW1xuXHRcInNtYWxsXCIsXG5cdFwibWVkaXVtXCJcbl07XG5leHBvcnQgdHlwZSBBY2NvcmRpb25TaXplID0gKHR5cGVvZiBBQ0NPUkRJT05fU0laRVMpW251bWJlcl07XG4vKiogQGRlcHJlY2F0ZWQgKi9cbmV4cG9ydCB0eXBlIEFjY29yZGlvblVwZGF0ZUV2ZW50ID0ge1xuXHRvcGVuOiBib29sZWFuO1xufTtcbmV4cG9ydCB0eXBlIEFjY29yZGlvblVwZGF0ZUV2ZW50RGV0YWlsID0gQWNjb3JkaW9uVXBkYXRlRXZlbnQ7XG4vKiogQGRlcHJlY2F0ZWQgKi9cbmV4cG9ydCB0eXBlIEFjY29yZGlvblRhZyA9IEhlYWRpbmdUYWc7XG5leHBvcnQgdHlwZSBBY2NvcmRpb25IZWFkaW5nVGFnID0gSGVhZGluZ1RhZztcbmRlY2xhcmUgY29uc3QgSU5MSU5FX05PVElGSUNBVElPTl9TVEFURVM6IHJlYWRvbmx5IFtcblx0XCJzdWNjZXNzXCIsXG5cdFwiaW5mb1wiLFxuXHRcIndhcm5pbmdcIixcblx0XCJlcnJvclwiLFxuXHRcIm5ldXRyYWxcIlxuXTtcbmV4cG9ydCB0eXBlIElubGluZU5vdGlmaWNhdGlvblN0YXRlID0gKHR5cGVvZiBJTkxJTkVfTk9USUZJQ0FUSU9OX1NUQVRFUylbbnVtYmVyXTtcbmV4cG9ydCB0eXBlIElubGluZU5vdGlmaWNhdGlvbkFjdGlvbkljb24gPSBJY29uTmFtZTtcbmV4cG9ydCB0eXBlIElubGluZU5vdGlmaWNhdGlvbkhlYWRpbmdUYWcgPSBIZWFkaW5nVGFnO1xuZGVjbGFyZSBjb25zdCBCQU5ORVJfU1RBVEVTOiByZWFkb25seSBbXG5cdFwiaW5mb1wiLFxuXHRcIndhcm5pbmdcIixcblx0XCJlcnJvclwiLFxuXHRcIm5ldXRyYWxcIlxuXTtcbmV4cG9ydCB0eXBlIEJhbm5lclN0YXRlID0gKHR5cGVvZiBCQU5ORVJfU1RBVEVTKVtudW1iZXJdO1xuZGVjbGFyZSBjb25zdCBCQU5ORVJfV0lEVEhTOiByZWFkb25seSBbXG5cdFwiZXh0ZW5kZWRcIixcblx0XCJiYXNpY1wiLFxuXHRcImZsdWlkXCJcbl07XG4vKiogQGRlcHJlY2F0ZWQgKi9cbmV4cG9ydCB0eXBlIEJhbm5lcldpZHRoID0gKHR5cGVvZiBCQU5ORVJfV0lEVEhTKVtudW1iZXJdO1xuZXhwb3J0IHR5cGUgQmFubmVySGVhZGluZ1RhZyA9IElubGluZU5vdGlmaWNhdGlvbkhlYWRpbmdUYWc7XG5leHBvcnQgdHlwZSBCdXR0b25JY29uID0gTGlua0J1dHRvbkljb25OYW1lO1xuZGVjbGFyZSBjb25zdCBHUk9VUF9ESVJFQ1RJT05TOiByZWFkb25seSBbXG5cdFwicm93XCIsXG5cdFwiY29sdW1uXCJcbl07XG5leHBvcnQgdHlwZSBHcm91cERpcmVjdGlvbiA9ICh0eXBlb2YgR1JPVVBfRElSRUNUSU9OUylbbnVtYmVyXTtcbmV4cG9ydCB0eXBlIEJ1dHRvbkdyb3VwRGlyZWN0aW9uID0gR3JvdXBEaXJlY3Rpb247XG5leHBvcnQgdHlwZSBCdXR0b25QdXJlVHlwZSA9IEJ1dHRvblR5cGU7XG5leHBvcnQgdHlwZSBCdXR0b25QdXJlSWNvbiA9IExpbmtCdXR0b25JY29uTmFtZTtcbmV4cG9ydCB0eXBlIEJ1dHRvblB1cmVBcmlhQXR0cmlidXRlID0gQnV0dG9uQXJpYUF0dHJpYnV0ZTtcbmV4cG9ydCB0eXBlIEJ1dHRvblB1cmVBbGlnbkxhYmVsID0gQWxpZ25MYWJlbDtcbmV4cG9ydCB0eXBlIEJ1dHRvblB1cmVXZWlnaHQgPSBUeXBvZ3JhcGh5VGV4dFdlaWdodDtcbmV4cG9ydCB0eXBlIEJ1dHRvblB1cmVTaXplID0gVGV4dFNpemU7XG5leHBvcnQgdHlwZSBCdXR0b25UaWxlQXJpYUF0dHJpYnV0ZSA9IEJ1dHRvbkFyaWFBdHRyaWJ1dGU7XG5leHBvcnQgdHlwZSBCdXR0b25UaWxlSWNvbiA9IExpbmtCdXR0b25JY29uTmFtZTtcbmV4cG9ydCB0eXBlIEJ1dHRvblRpbGVUeXBlID0gQnV0dG9uVHlwZTtcbmV4cG9ydCB0eXBlIEJ1dHRvblRpbGVBc3BlY3RSYXRpbyA9IFRpbGVBc3BlY3RSYXRpbztcbmV4cG9ydCB0eXBlIEJ1dHRvblRpbGVTaXplID0gVGlsZVNpemU7XG5leHBvcnQgdHlwZSBCdXR0b25UaWxlQmFja2dyb3VuZCA9IFRpbGVCYWNrZ3JvdW5kO1xuZXhwb3J0IHR5cGUgQnV0dG9uVGlsZVdlaWdodCA9IFRpbGVXZWlnaHQ7XG5leHBvcnQgdHlwZSBCdXR0b25UaWxlQWxpZ24gPSBUaWxlQWxpZ247XG5leHBvcnQgdHlwZSBDYW52YXNTaWRlYmFyU3RhcnRVcGRhdGVFdmVudERldGFpbCA9IHtcblx0b3BlbjogYm9vbGVhbjtcbn07XG5kZWNsYXJlIGNvbnN0IENBUk9VU0VMX1dJRFRIUzogcmVhZG9ubHkgW1xuXHRcImJhc2ljXCIsXG5cdFwiZXh0ZW5kZWRcIlxuXTtcbmV4cG9ydCB0eXBlIENhcm91c2VsV2lkdGggPSAodHlwZW9mIENBUk9VU0VMX1dJRFRIUylbbnVtYmVyXTtcbmRlY2xhcmUgY29uc3QgQ0FST1VTRUxfR1JBRElFTlRfQ09MT1JTOiByZWFkb25seSBbXG5cdFwiYmFja2dyb3VuZC1iYXNlXCIsXG5cdFwiYmFja2dyb3VuZC1zdXJmYWNlXCIsXG5cdFwibm9uZVwiXG5dO1xuZXhwb3J0IHR5cGUgQ2Fyb3VzZWxHcmFkaWVudENvbG9yID0gKHR5cGVvZiBDQVJPVVNFTF9HUkFESUVOVF9DT0xPUlMpW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IENBUk9VU0VMX0FMSUdOX0hFQURFUlM6IHJlYWRvbmx5IFtcblx0XCJzdGFydFwiLFxuXHRcImNlbnRlclwiLFxuXHRcImxlZnRcIlxuXTtcbmV4cG9ydCB0eXBlIENhcm91c2VsQWxpZ25IZWFkZXIgPSAodHlwZW9mIENBUk9VU0VMX0FMSUdOX0hFQURFUlMpW251bWJlcl07XG5leHBvcnQgdHlwZSBDYXJvdXNlbEhlYWRpbmdTaXplID0gRXh0cmFjdDxIZWFkaW5nU2l6ZSwgXCJ4LWxhcmdlXCIgfCBcInh4LWxhcmdlXCI+O1xuZGVjbGFyZSBjb25zdCBDQVJPVVNFTF9BUklBX0FUVFJJQlVURVM6IHJlYWRvbmx5IFtcblx0XCJhcmlhLWxhYmVsXCJcbl07XG5leHBvcnQgdHlwZSBDYXJvdXNlbEFyaWFBdHRyaWJ1dGUgPSAodHlwZW9mIENBUk9VU0VMX0FSSUFfQVRUUklCVVRFUylbbnVtYmVyXTtcbmV4cG9ydCB0eXBlIENhcm91c2VsSW50ZXJuYXRpb25hbGl6YXRpb24gPSBQYXJ0aWFsPFJlY29yZDxcInByZXZcIiB8IFwibmV4dFwiIHwgXCJmaXJzdFwiIHwgXCJsYXN0XCIgfCBcInNsaWRlTGFiZWxcIiB8IFwic2xpZGVcIiwgc3RyaW5nPj47XG4vKiogQGRlcHJlY2F0ZWQgKi9cbmV4cG9ydCB0eXBlIENhcm91c2VsVXBkYXRlRXZlbnQgPSB7XG5cdGFjdGl2ZUluZGV4OiBudW1iZXI7XG5cdHByZXZpb3VzSW5kZXg6IG51bWJlcjtcbn07XG5leHBvcnQgdHlwZSBDYXJvdXNlbFVwZGF0ZUV2ZW50RGV0YWlsID0gQ2Fyb3VzZWxVcGRhdGVFdmVudDtcbmV4cG9ydCB0eXBlIENoZWNrYm94U3RhdGUgPSBGb3JtU3RhdGU7XG5leHBvcnQgdHlwZSBDaGVja2JveFVwZGF0ZUV2ZW50RGV0YWlsID0ge1xuXHRuYW1lOiBzdHJpbmc7XG5cdHZhbHVlPzogc3RyaW5nO1xuXHRjaGVja2VkOiBib29sZWFuO1xufTtcbmV4cG9ydCB0eXBlIENoZWNrYm94Qmx1ckV2ZW50RGV0YWlsID0gRXZlbnQ7XG5leHBvcnQgdHlwZSBDaGVja2JveFdyYXBwZXJTdGF0ZSA9IEZvcm1TdGF0ZTtcbmRlY2xhcmUgY29uc3QgQ09OVEVOVF9XUkFQUEVSX0JBQ0tHUk9VTkRfQ09MT1JTOiByZWFkb25seSBbXG5cdFwidHJhbnNwYXJlbnRcIixcblx0XCJkZWZhdWx0XCJcbl07XG5leHBvcnQgdHlwZSBDb250ZW50V3JhcHBlckJhY2tncm91bmRDb2xvciA9IHR5cGVvZiBDT05URU5UX1dSQVBQRVJfQkFDS0dST1VORF9DT0xPUlNbbnVtYmVyXTtcbmRlY2xhcmUgY29uc3QgQ09OVEVOVF9XUkFQUEVSX1dJRFRIUzogcmVhZG9ubHkgW1xuXHRcIm5hcnJvd1wiLFxuXHRcImJhc2ljXCIsXG5cdFwiZXh0ZW5kZWRcIixcblx0XCJmbHVpZFwiLFxuXHRcImZ1bGxcIlxuXTtcbmV4cG9ydCB0eXBlIENvbnRlbnRXcmFwcGVyV2lkdGggPSB0eXBlb2YgQ09OVEVOVF9XUkFQUEVSX1dJRFRIU1tudW1iZXJdO1xuZXhwb3J0IHR5cGUgQ3Jlc3RUYXJnZXQgPSBMaW5rVGFyZ2V0O1xuZXhwb3J0IHR5cGUgQ3Jlc3RBcmlhQXR0cmlidXRlID0gTGlua0FyaWFBdHRyaWJ1dGU7XG5kZWNsYXJlIGNvbnN0IERJU1BMQVlfVEFHUzogcmVhZG9ubHkgW1xuXHRcImgxXCIsXG5cdFwiaDJcIixcblx0XCJoM1wiLFxuXHRcImg0XCIsXG5cdFwiaDVcIixcblx0XCJoNlwiXG5dO1xuZXhwb3J0IHR5cGUgRGlzcGxheVRhZyA9ICh0eXBlb2YgRElTUExBWV9UQUdTKVtudW1iZXJdO1xuZGVjbGFyZSBjb25zdCBESVNQTEFZX1NJWkVTOiByZWFkb25seSBbXG5cdFwic21hbGxcIixcblx0XCJtZWRpdW1cIixcblx0XCJsYXJnZVwiLFxuXHRcImluaGVyaXRcIlxuXTtcbmV4cG9ydCB0eXBlIERpc3BsYXlTaXplID0gKHR5cGVvZiBESVNQTEFZX1NJWkVTKVtudW1iZXJdO1xuZGVjbGFyZSBjb25zdCBESVNQTEFZX0NPTE9SUzogcmVhZG9ubHkgW1xuXHRcInByaW1hcnlcIixcblx0XCJpbmhlcml0XCJcbl07XG5leHBvcnQgdHlwZSBEaXNwbGF5Q29sb3IgPSAodHlwZW9mIERJU1BMQVlfQ09MT1JTKVtudW1iZXJdO1xuZXhwb3J0IHR5cGUgRGlzcGxheUFsaWduID0gVHlwb2dyYXBoeUFsaWduO1xuZGVjbGFyZSBjb25zdCBESVZJREVSX0NPTE9SUzogcmVhZG9ubHkgW1xuXHRcImNvbnRyYXN0LWxvd1wiLFxuXHRcImNvbnRyYXN0LW1lZGl1bVwiLFxuXHRcImNvbnRyYXN0LWhpZ2hcIixcblx0XCJuZXV0cmFsLWNvbnRyYXN0LWhpZ2hcIixcblx0XCJuZXV0cmFsLWNvbnRyYXN0LW1lZGl1bVwiLFxuXHRcIm5ldXRyYWwtY29udHJhc3QtbG93XCJcbl07XG5leHBvcnQgdHlwZSBEaXZpZGVyQ29sb3IgPSB0eXBlb2YgRElWSURFUl9DT0xPUlNbbnVtYmVyXTtcbmRlY2xhcmUgY29uc3QgRElWSURFUl9ESVJFQ1RJT05TOiByZWFkb25seSBbXG5cdFwidmVydGljYWxcIixcblx0XCJob3Jpem9udGFsXCJcbl07XG5leHBvcnQgdHlwZSBEaXZpZGVyRGlyZWN0aW9uID0gdHlwZW9mIERJVklERVJfRElSRUNUSU9OU1tudW1iZXJdO1xuZXhwb3J0IHR5cGUgRGl2aWRlck9yaWVudGF0aW9uID0gRGl2aWRlckRpcmVjdGlvbjtcbmRlY2xhcmUgY29uc3QgRklFTERTRVRfTEFCRUxfU0laRVM6IHJlYWRvbmx5IFtcblx0XCJzbWFsbFwiLFxuXHRcIm1lZGl1bVwiXG5dO1xuZXhwb3J0IHR5cGUgRmllbGRzZXRMYWJlbFNpemUgPSAodHlwZW9mIEZJRUxEU0VUX0xBQkVMX1NJWkVTKVtudW1iZXJdO1xuZXhwb3J0IHR5cGUgRmllbGRzZXRTdGF0ZSA9IEZvcm1TdGF0ZTtcbmV4cG9ydCB0eXBlIEZpZWxkc2V0V3JhcHBlckxhYmVsU2l6ZSA9IEZpZWxkc2V0TGFiZWxTaXplO1xuZXhwb3J0IHR5cGUgRmllbGRzZXRXcmFwcGVyU3RhdGUgPSBGaWVsZHNldFN0YXRlO1xuZXhwb3J0IHR5cGUgRmxleElubGluZSA9IGJvb2xlYW47XG5kZWNsYXJlIGNvbnN0IEZMRVhfV1JBUFM6IHJlYWRvbmx5IFtcblx0XCJub3dyYXBcIixcblx0XCJ3cmFwXCIsXG5cdFwid3JhcC1yZXZlcnNlXCJcbl07XG5leHBvcnQgdHlwZSBGbGV4V3JhcCA9IHR5cGVvZiBGTEVYX1dSQVBTW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IEZMRVhfRElSRUNUSU9OUzogcmVhZG9ubHkgW1xuXHRcInJvd1wiLFxuXHRcInJvdy1yZXZlcnNlXCIsXG5cdFwiY29sdW1uXCIsXG5cdFwiY29sdW1uLXJldmVyc2VcIlxuXTtcbmV4cG9ydCB0eXBlIEZsZXhEaXJlY3Rpb24gPSB0eXBlb2YgRkxFWF9ESVJFQ1RJT05TW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IEZMRVhfSlVTVElGWV9DT05URU5UUzogcmVhZG9ubHkgW1xuXHRcImZsZXgtc3RhcnRcIixcblx0XCJmbGV4LWVuZFwiLFxuXHRcImNlbnRlclwiLFxuXHRcInNwYWNlLWJldHdlZW5cIixcblx0XCJzcGFjZS1hcm91bmRcIixcblx0XCJzcGFjZS1ldmVubHlcIlxuXTtcbmV4cG9ydCB0eXBlIEZsZXhKdXN0aWZ5Q29udGVudCA9IHR5cGVvZiBGTEVYX0pVU1RJRllfQ09OVEVOVFNbbnVtYmVyXTtcbmRlY2xhcmUgY29uc3QgRkxFWF9BTElHTl9JVEVNUzogcmVhZG9ubHkgW1xuXHRcInN0cmV0Y2hcIixcblx0XCJmbGV4LXN0YXJ0XCIsXG5cdFwiZmxleC1lbmRcIixcblx0XCJjZW50ZXJcIixcblx0XCJiYXNlbGluZVwiXG5dO1xuZXhwb3J0IHR5cGUgRmxleEFsaWduSXRlbXMgPSB0eXBlb2YgRkxFWF9BTElHTl9JVEVNU1tudW1iZXJdO1xuZGVjbGFyZSBjb25zdCBGTEVYX0FMSUdOX0NPTlRFTlRTOiByZWFkb25seSBbXG5cdFwic3RyZXRjaFwiLFxuXHRcImZsZXgtc3RhcnRcIixcblx0XCJmbGV4LWVuZFwiLFxuXHRcImNlbnRlclwiLFxuXHRcInNwYWNlLWJldHdlZW5cIixcblx0XCJzcGFjZS1hcm91bmRcIixcblx0XCJzcGFjZS1ldmVubHlcIlxuXTtcbmV4cG9ydCB0eXBlIEZsZXhBbGlnbkNvbnRlbnQgPSB0eXBlb2YgRkxFWF9BTElHTl9DT05URU5UU1tudW1iZXJdO1xuZGVjbGFyZSBjb25zdCBGTEVYX0lURU1fV0lEVEhTOiByZWFkb25seSBbXG5cdFwiYXV0b1wiLFxuXHRcIm9uZS1xdWFydGVyXCIsXG5cdFwib25lLXRoaXJkXCIsXG5cdFwiaGFsZlwiLFxuXHRcInR3by10aGlyZHNcIixcblx0XCJ0aHJlZS1xdWFydGVyc1wiLFxuXHRcImZ1bGxcIlxuXTtcbmV4cG9ydCB0eXBlIEZsZXhJdGVtV2lkdGggPSB0eXBlb2YgRkxFWF9JVEVNX1dJRFRIU1tudW1iZXJdO1xuZGVjbGFyZSBjb25zdCBGTEVYX0lURU1fT0ZGU0VUUzogcmVhZG9ubHkgW1xuXHRcIm5vbmVcIixcblx0XCJvbmUtcXVhcnRlclwiLFxuXHRcIm9uZS10aGlyZFwiLFxuXHRcImhhbGZcIixcblx0XCJ0d28tdGhpcmRzXCIsXG5cdFwidGhyZWUtcXVhcnRlcnNcIlxuXTtcbmV4cG9ydCB0eXBlIEZsZXhJdGVtT2Zmc2V0ID0gdHlwZW9mIEZMRVhfSVRFTV9PRkZTRVRTW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IEZMRVhfSVRFTV9BTElHTl9TRUxGUzogcmVhZG9ubHkgW1xuXHRcImF1dG9cIixcblx0XCJmbGV4LXN0YXJ0XCIsXG5cdFwiZmxleC1lbmRcIixcblx0XCJjZW50ZXJcIixcblx0XCJiYXNlbGluZVwiLFxuXHRcInN0cmV0Y2hcIlxuXTtcbmV4cG9ydCB0eXBlIEZsZXhJdGVtQWxpZ25TZWxmID0gdHlwZW9mIEZMRVhfSVRFTV9BTElHTl9TRUxGU1tudW1iZXJdO1xuZGVjbGFyZSBjb25zdCBGTEVYX0lURU1fR1JPV1M6IHJlYWRvbmx5IFtcblx0MCxcblx0MVxuXTtcbmV4cG9ydCB0eXBlIEZsZXhJdGVtR3JvdyA9IHR5cGVvZiBGTEVYX0lURU1fR1JPV1NbbnVtYmVyXTtcbmRlY2xhcmUgY29uc3QgRkxFWF9JVEVNX1NIUklOS1M6IHJlYWRvbmx5IFtcblx0MCxcblx0MVxuXTtcbmV4cG9ydCB0eXBlIEZsZXhJdGVtU2hyaW5rID0gdHlwZW9mIEZMRVhfSVRFTV9TSFJJTktTW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IEZMRVhfSVRFTV9GTEVYUzogcmVhZG9ubHkgW1xuXHRcImluaXRpYWxcIixcblx0XCJhdXRvXCIsXG5cdFwibm9uZVwiLFxuXHRcImVxdWFsXCJcbl07XG5leHBvcnQgdHlwZSBGbGV4SXRlbUZsZXggPSB0eXBlb2YgRkxFWF9JVEVNX0ZMRVhTW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IEZMWU9VVF9QT1NJVElPTlM6IHJlYWRvbmx5IFtcblx0XCJzdGFydFwiLFxuXHRcImVuZFwiLFxuXHRcImxlZnRcIixcblx0XCJyaWdodFwiXG5dO1xuZXhwb3J0IHR5cGUgRmx5b3V0UG9zaXRpb24gPSAodHlwZW9mIEZMWU9VVF9QT1NJVElPTlMpW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IEZMWU9VVF9GT09URVJfQkVIQVZJT1I6IHJlYWRvbmx5IFtcblx0XCJzdGlja3lcIixcblx0XCJmaXhlZFwiXG5dO1xuZXhwb3J0IHR5cGUgRmx5b3V0Rm9vdGVyQmVoYXZpb3IgPSAodHlwZW9mIEZMWU9VVF9GT09URVJfQkVIQVZJT1IpW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IEZMWU9VVF9BUklBX0FUVFJJQlVURVM6IHJlYWRvbmx5IFtcblx0XCJhcmlhLWxhYmVsXCJcbl07XG5leHBvcnQgdHlwZSBGbHlvdXRBcmlhQXR0cmlidXRlID0gKHR5cGVvZiBGTFlPVVRfQVJJQV9BVFRSSUJVVEVTKVtudW1iZXJdO1xuZXhwb3J0IHR5cGUgRmx5b3V0TW90aW9uVmlzaWJsZUVuZEV2ZW50RGV0YWlsID0gVHJhbnNpdGlvbkV2ZW50O1xuZXhwb3J0IHR5cGUgRmx5b3V0TW90aW9uSGlkZGVuRW5kRXZlbnREZXRhaWwgPSBUcmFuc2l0aW9uRXZlbnQ7XG5kZWNsYXJlIGNvbnN0IEZMWU9VVF9NVUxUSUxFVkVMX0FSSUFfQVRUUklCVVRFUzogcmVhZG9ubHkgW1xuXHRcImFyaWEtbGFiZWxcIlxuXTtcbmV4cG9ydCB0eXBlIEZseW91dE11bHRpbGV2ZWxBcmlhQXR0cmlidXRlID0gKHR5cGVvZiBGTFlPVVRfTVVMVElMRVZFTF9BUklBX0FUVFJJQlVURVMpW251bWJlcl07XG5leHBvcnQgdHlwZSBGbHlvdXRNdWx0aWxldmVsVXBkYXRlID0ge1xuXHRhY3RpdmVJZGVudGlmaWVyOiBzdHJpbmc7XG59O1xuLyoqIEBkZXByZWNhdGVkICovXG5leHBvcnQgdHlwZSBGbHlvdXRNdWx0aWxldmVsVXBkYXRlRXZlbnQgPSBGbHlvdXRNdWx0aWxldmVsVXBkYXRlO1xuZXhwb3J0IHR5cGUgRmx5b3V0TXVsdGlsZXZlbFVwZGF0ZUV2ZW50RGV0YWlsID0gRmx5b3V0TXVsdGlsZXZlbFVwZGF0ZUV2ZW50O1xuZGVjbGFyZSBjb25zdCBHUklEX0RJUkVDVElPTlM6IHJlYWRvbmx5IFtcblx0XCJyb3dcIixcblx0XCJyb3ctcmV2ZXJzZVwiLFxuXHRcImNvbHVtblwiLFxuXHRcImNvbHVtbi1yZXZlcnNlXCJcbl07XG5leHBvcnQgdHlwZSBHcmlkRGlyZWN0aW9uID0gdHlwZW9mIEdSSURfRElSRUNUSU9OU1tudW1iZXJdO1xuZGVjbGFyZSBjb25zdCBHUklEX1dSQVBTOiByZWFkb25seSBbXG5cdFwibm93cmFwXCIsXG5cdFwid3JhcFwiXG5dO1xuZXhwb3J0IHR5cGUgR3JpZFdyYXAgPSB0eXBlb2YgR1JJRF9XUkFQU1tudW1iZXJdO1xuZGVjbGFyZSBjb25zdCBHUklEX0dVVFRFUlM6IHJlYWRvbmx5IFtcblx0MTYsXG5cdDI0LFxuXHQzNlxuXTtcbmV4cG9ydCB0eXBlIEdyaWRHdXR0ZXIgPSB0eXBlb2YgR1JJRF9HVVRURVJTW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IEdSSURfSVRFTV9TSVpFUzogcmVhZG9ubHkgW1xuXHQxLFxuXHQyLFxuXHQzLFxuXHQ0LFxuXHQ1LFxuXHQ2LFxuXHQ3LFxuXHQ4LFxuXHQ5LFxuXHQxMCxcblx0MTEsXG5cdDEyXG5dO1xuZXhwb3J0IHR5cGUgR3JpZEl0ZW1TaXplID0gdHlwZW9mIEdSSURfSVRFTV9TSVpFU1tudW1iZXJdO1xuZGVjbGFyZSBjb25zdCBHUklEX0lURU1fT0ZGU0VUUzogcmVhZG9ubHkgW1xuXHQwLFxuXHQxLFxuXHQyLFxuXHQzLFxuXHQ0LFxuXHQ1LFxuXHQ2LFxuXHQ3LFxuXHQ4LFxuXHQ5LFxuXHQxMCxcblx0MTFcbl07XG5leHBvcnQgdHlwZSBHcmlkSXRlbU9mZnNldCA9IHR5cGVvZiBHUklEX0lURU1fT0ZGU0VUU1tudW1iZXJdO1xuZGVjbGFyZSBjb25zdCBIRUFESU5HX0NPTE9SUzogcmVhZG9ubHkgW1xuXHRcInByaW1hcnlcIixcblx0XCJpbmhlcml0XCJcbl07XG5leHBvcnQgdHlwZSBIZWFkaW5nQ29sb3IgPSAodHlwZW9mIEhFQURJTkdfQ09MT1JTKVtudW1iZXJdO1xuZXhwb3J0IHR5cGUgSGVhZGluZ0FsaWduID0gVHlwb2dyYXBoeUFsaWduO1xuZGVjbGFyZSBjb25zdCBIRUFETElORV9WQVJJQU5UUzogcmVhZG9ubHkgW1xuXHRcImxhcmdlLXRpdGxlXCIsXG5cdFwiaGVhZGxpbmUtMVwiLFxuXHRcImhlYWRsaW5lLTJcIixcblx0XCJoZWFkbGluZS0zXCIsXG5cdFwiaGVhZGxpbmUtNFwiLFxuXHRcImhlYWRsaW5lLTVcIlxuXTtcbmV4cG9ydCB0eXBlIEhlYWRsaW5lVmFyaWFudFR5cGUgPSAodHlwZW9mIEhFQURMSU5FX1ZBUklBTlRTKVtudW1iZXJdO1xuZXhwb3J0IHR5cGUgSGVhZGxpbmVWYXJpYW50Q3VzdG9tID0gRXhjbHVkZTxCcmVha3BvaW50Q3VzdG9taXphYmxlPFRleHRTaXplPiwgVGV4dFNpemU+O1xuZXhwb3J0IHR5cGUgSGVhZGxpbmVWYXJpYW50ID0gSGVhZGxpbmVWYXJpYW50VHlwZSB8IEhlYWRsaW5lVmFyaWFudEN1c3RvbSB8IEV4dHJhY3Q8VGV4dFNpemUsIFwiaW5oZXJpdFwiPjtcbmRlY2xhcmUgY29uc3QgSEVBRExJTkVfVEFHUzogcmVhZG9ubHkgW1xuXHRcImgxXCIsXG5cdFwiaDJcIixcblx0XCJoM1wiLFxuXHRcImg0XCIsXG5cdFwiaDVcIixcblx0XCJoNlwiXG5dO1xuZXhwb3J0IHR5cGUgSGVhZGxpbmVUYWcgPSAodHlwZW9mIEhFQURMSU5FX1RBR1MpW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IEhFQURMSU5FX0NPTE9SUzogcmVhZG9ubHkgW1xuXHRcInByaW1hcnlcIixcblx0XCJkZWZhdWx0XCIsXG5cdFwiaW5oZXJpdFwiXG5dO1xuZXhwb3J0IHR5cGUgSGVhZGxpbmVDb2xvciA9ICh0eXBlb2YgSEVBRExJTkVfQ09MT1JTKVtudW1iZXJdO1xuZXhwb3J0IHR5cGUgSGVhZGxpbmVBbGlnbiA9IFR5cG9ncmFwaHlBbGlnbjtcbmRlY2xhcmUgY29uc3QgSUNPTl9BUklBX0FUVFJJQlVURVM6IHJlYWRvbmx5IFtcblx0XCJhcmlhLWxhYmVsXCJcbl07XG5leHBvcnQgdHlwZSBJY29uQXJpYUF0dHJpYnV0ZSA9ICh0eXBlb2YgSUNPTl9BUklBX0FUVFJJQlVURVMpW251bWJlcl07XG5leHBvcnQgdHlwZSBJY29uU2l6ZSA9IFRleHRTaXplO1xuZGVjbGFyZSBjb25zdCBJQ09OX0NPTE9SUzogcmVhZG9ubHkgW1xuXHRcInByaW1hcnlcIixcblx0XCJjb250cmFzdC1sb3dcIixcblx0XCJjb250cmFzdC1tZWRpdW1cIixcblx0XCJjb250cmFzdC1oaWdoXCIsXG5cdFwibm90aWZpY2F0aW9uLXN1Y2Nlc3NcIixcblx0XCJub3RpZmljYXRpb24td2FybmluZ1wiLFxuXHRcIm5vdGlmaWNhdGlvbi1lcnJvclwiLFxuXHRcIm5vdGlmaWNhdGlvbi1pbmZvXCIsXG5cdFwiaW5oZXJpdFwiLFxuXHRcImJyYW5kXCIsXG5cdFwiZGVmYXVsdFwiLFxuXHRcIm5ldXRyYWwtY29udHJhc3QtbG93XCIsXG5cdFwibmV1dHJhbC1jb250cmFzdC1tZWRpdW1cIixcblx0XCJuZXV0cmFsLWNvbnRyYXN0LWhpZ2hcIixcblx0XCJub3RpZmljYXRpb24tbmV1dHJhbFwiLFxuXHRcInN0YXRlLWRpc2FibGVkXCJcbl07XG5leHBvcnQgdHlwZSBJY29uQ29sb3IgPSAodHlwZW9mIElDT05fQ09MT1JTKVtudW1iZXJdO1xuZXhwb3J0IHR5cGUgTGlua0ljb24gPSBMaW5rQnV0dG9uSWNvbk5hbWU7XG5leHBvcnQgdHlwZSBMaW5rUHVyZUljb24gPSBMaW5rQnV0dG9uSWNvbk5hbWU7XG5leHBvcnQgdHlwZSBMaW5rUHVyZUFyaWFBdHRyaWJ1dGUgPSBMaW5rQXJpYUF0dHJpYnV0ZTtcbmV4cG9ydCB0eXBlIExpbmtQdXJlQWxpZ25MYWJlbCA9IEFsaWduTGFiZWw7XG5leHBvcnQgdHlwZSBMaW5rUHVyZVdlaWdodCA9IFR5cG9ncmFwaHlUZXh0V2VpZ2h0O1xuZXhwb3J0IHR5cGUgTGlua1B1cmVTaXplID0gVGV4dFNpemU7XG5leHBvcnQgdHlwZSBMaW5rUHVyZVRhcmdldCA9IExpbmtUYXJnZXQ7XG5leHBvcnQgdHlwZSBMaW5rU29jaWFsSWNvbiA9IEV4dHJhY3Q8SWNvbk5hbWUsIFwibG9nby1mYWNlYm9va1wiIHwgXCJsb2dvLWdvb2dsZVwiIHwgXCJsb2dvLWluc3RhZ3JhbVwiIHwgXCJsb2dvLWxpbmtlZGluXCIgfCBcImxvZ28tcGludGVyZXN0XCIgfCBcImxvZ28tdHdpdHRlclwiIHwgXCJsb2dvLXdlY2hhdFwiIHwgXCJsb2dvLXdoYXRzYXBwXCIgfCBcImxvZ28teGluZ1wiIHwgXCJsb2dvLXlvdXR1YmVcIiB8IFwibG9nby1iYWlkdVwiIHwgXCJsb2dvLWRlbGljaW91c1wiIHwgXCJsb2dvLWRpZ2dcIiB8IFwibG9nby1mb3Vyc3F1YXJlXCIgfCBcImxvZ28tZ21haWxcIiB8IFwibG9nby1oYXRlbmFcIiB8IFwibG9nby1rYWl4aW5cIiB8IFwibG9nby1rYWthb3RhbGtcIiB8IFwibG9nby1uYXZlclwiIHwgXCJsb2dvLXFxLXNoYXJlXCIgfCBcImxvZ28tcXFcIiB8IFwibG9nby1yZWRkaXRcIiB8IFwibG9nby1za3lyb2NrXCIgfCBcImxvZ28tc29odVwiIHwgXCJsb2dvLXRlY2VudFwiIHwgXCJsb2dvLXRlbGVncmFtXCIgfCBcImxvZ28tdGlrdG9rXCIgfCBcImxvZ28tdHVtYmxyXCIgfCBcImxvZ28tdmliZXJcIiB8IFwibG9nby12a1wiIHwgXCJsb2dvLXdlaWJvXCIgfCBcImxvZ28teWFob29cIiB8IFwibG9nby15b3VrdVwiPjtcbmV4cG9ydCB0eXBlIExpbmtTb2NpYWxUYXJnZXQgPSBMaW5rVGFyZ2V0O1xuZXhwb3J0IHR5cGUgTGlua1RpbGVUYXJnZXQgPSBMaW5rVGFyZ2V0O1xuZXhwb3J0IHR5cGUgTGlua1RpbGVBcmlhQXR0cmlidXRlID0gTGlua0FyaWFBdHRyaWJ1dGU7XG5leHBvcnQgdHlwZSBMaW5rVGlsZUFzcGVjdFJhdGlvID0gVGlsZUFzcGVjdFJhdGlvO1xuZXhwb3J0IHR5cGUgTGlua1RpbGVTaXplID0gVGlsZVNpemU7XG5leHBvcnQgdHlwZSBMaW5rVGlsZUJhY2tncm91bmQgPSBUaWxlQmFja2dyb3VuZDtcbmV4cG9ydCB0eXBlIExpbmtUaWxlQWxpZ24gPSBUaWxlQWxpZ247XG5kZWNsYXJlIGNvbnN0IExJTktfVElMRV9XRUlHSFRTOiByZWFkb25seSBbXG5cdFwicmVndWxhclwiLFxuXHRcInNlbWktYm9sZFwiLFxuXHRcInNlbWlib2xkXCJcbl07XG5leHBvcnQgdHlwZSBMaW5rVGlsZVdlaWdodCA9ICh0eXBlb2YgTElOS19USUxFX1dFSUdIVFMpW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IExJTktfVElMRV9NT0RFTF9TSUdOQVRVUkVfTU9ERUxTOiByZWFkb25seSBbXG5cdFwiNzE4XCIsXG5cdFwiOTExXCIsXG5cdFwiYm94c3RlclwiLFxuXHRcImNheWVubmVcIixcblx0XCJjYXltYW5cIixcblx0XCJtYWNhblwiLFxuXHRcInBhbmFtZXJhXCIsXG5cdFwidGF5Y2FuXCIsXG5cdFwidHVyYm8tc1wiLFxuXHRcInR1cmJvXCJcbl07XG5leHBvcnQgdHlwZSBMaW5rVGlsZU1vZGVsU2lnbmF0dXJlTW9kZWwgPSAodHlwZW9mIExJTktfVElMRV9NT0RFTF9TSUdOQVRVUkVfTU9ERUxTKVtudW1iZXJdO1xuZGVjbGFyZSBjb25zdCBMSU5LX1RJTEVfTU9ERUxfU0lHTkFUVVJFX0hFQURJTkdfVEFHUzogcmVhZG9ubHkgW1xuXHRcImgyXCIsXG5cdFwiaDNcIixcblx0XCJoNFwiLFxuXHRcImg1XCIsXG5cdFwiaDZcIlxuXTtcbmV4cG9ydCB0eXBlIExpbmtUaWxlTW9kZWxTaWduYXR1cmVIZWFkaW5nVGFnID0gKHR5cGVvZiBMSU5LX1RJTEVfTU9ERUxfU0lHTkFUVVJFX0hFQURJTkdfVEFHUylbbnVtYmVyXTtcbmV4cG9ydCB0eXBlIExpbmtUaWxlTW9kZWxTaWduYXR1cmVXZWlnaHQgPSBUaWxlV2VpZ2h0O1xuZXhwb3J0IHR5cGUgTGlua1RpbGVNb2RlbFNpZ25hdHVyZUFzcGVjdFJhdGlvID0gVGlsZUFzcGVjdFJhdGlvO1xuZXhwb3J0IHR5cGUgTGlua1RpbGVNb2RlbFNpZ25hdHVyZUxpbmtEaXJlY3Rpb24gPSBHcm91cERpcmVjdGlvbjtcbmV4cG9ydCB0eXBlIExpbmtUaWxlUHJvZHVjdFRhcmdldCA9IExpbmtUYXJnZXQ7XG4vKiogQGRlcHJlY2F0ZWQgKi9cbmV4cG9ydCB0eXBlIExpbmtUaWxlUHJvZHVjdExpa2VFdmVudCA9IHtcblx0bGlrZWQ6IGJvb2xlYW47XG59O1xuZXhwb3J0IHR5cGUgTGlua1RpbGVQcm9kdWN0TGlrZUV2ZW50RGV0YWlsID0gTGlua1RpbGVQcm9kdWN0TGlrZUV2ZW50O1xuZGVjbGFyZSBjb25zdCBUSUxFX1BST0RVQ1RfQVNQRUNUX1JBVElPUzogcmVhZG9ubHkgW1xuXHRcIjM6NFwiLFxuXHRcIjk6MTZcIlxuXTtcbmV4cG9ydCB0eXBlIExpbmtUaWxlUHJvZHVjdEFzcGVjdFJhdGlvID0gRXh0cmFjdDxUaWxlQXNwZWN0UmF0aW8sICh0eXBlb2YgVElMRV9QUk9EVUNUX0FTUEVDVF9SQVRJT1MpW251bWJlcl0+O1xuZGVjbGFyZSBjb25zdCBNT0RFTF9TSUdOQVRVUkVTX01BTklGRVNUOiB7XG5cdFwiNzE4XCI6IHtcblx0XHRzcmM6IHN0cmluZztcblx0XHR3aWR0aDogbnVtYmVyO1xuXHRcdGhlaWdodDogbnVtYmVyO1xuXHR9O1xuXHRcIjkxMVwiOiB7XG5cdFx0c3JjOiBzdHJpbmc7XG5cdFx0d2lkdGg6IG51bWJlcjtcblx0XHRoZWlnaHQ6IG51bWJlcjtcblx0fTtcblx0Ym94c3Rlcjoge1xuXHRcdHNyYzogc3RyaW5nO1xuXHRcdHdpZHRoOiBudW1iZXI7XG5cdFx0aGVpZ2h0OiBudW1iZXI7XG5cdH07XG5cdGNheWVubmU6IHtcblx0XHRzcmM6IHN0cmluZztcblx0XHR3aWR0aDogbnVtYmVyO1xuXHRcdGhlaWdodDogbnVtYmVyO1xuXHR9O1xuXHRjYXltYW46IHtcblx0XHRzcmM6IHN0cmluZztcblx0XHR3aWR0aDogbnVtYmVyO1xuXHRcdGhlaWdodDogbnVtYmVyO1xuXHR9O1xuXHRtYWNhbjoge1xuXHRcdHNyYzogc3RyaW5nO1xuXHRcdHdpZHRoOiBudW1iZXI7XG5cdFx0aGVpZ2h0OiBudW1iZXI7XG5cdH07XG5cdHBhbmFtZXJhOiB7XG5cdFx0c3JjOiBzdHJpbmc7XG5cdFx0d2lkdGg6IG51bWJlcjtcblx0XHRoZWlnaHQ6IG51bWJlcjtcblx0fTtcblx0dGF5Y2FuOiB7XG5cdFx0c3JjOiBzdHJpbmc7XG5cdFx0d2lkdGg6IG51bWJlcjtcblx0XHRoZWlnaHQ6IG51bWJlcjtcblx0fTtcblx0XCJ0dXJiby1zXCI6IHtcblx0XHRzcmM6IHN0cmluZztcblx0XHR3aWR0aDogbnVtYmVyO1xuXHRcdGhlaWdodDogbnVtYmVyO1xuXHR9O1xuXHR0dXJibzoge1xuXHRcdHNyYzogc3RyaW5nO1xuXHRcdHdpZHRoOiBudW1iZXI7XG5cdFx0aGVpZ2h0OiBudW1iZXI7XG5cdH07XG59O1xuZGVjbGFyZSBjb25zdCBNQVJRVUVfVkFSSUFOVFM6IHJlYWRvbmx5IFtcblx0XCI3NS15ZWFyc1wiLFxuXHRcImRlZmF1bHRcIlxuXTtcbmV4cG9ydCB0eXBlIE1hcnF1ZVZhcmlhbnQgPSAodHlwZW9mIE1BUlFVRV9WQVJJQU5UUylbbnVtYmVyXTtcbmV4cG9ydCB0eXBlIE1hcnF1ZVRhcmdldCA9IExpbmtUYXJnZXQ7XG5leHBvcnQgdHlwZSBNYXJxdWVBcmlhQXR0cmlidXRlID0gTGlua0FyaWFBdHRyaWJ1dGU7XG5kZWNsYXJlIGNvbnN0IE1BUlFVRV9TSVpFUzogcmVhZG9ubHkgW1xuXHRcInJlc3BvbnNpdmVcIixcblx0XCJzbWFsbFwiLFxuXHRcIm1lZGl1bVwiXG5dO1xuZXhwb3J0IHR5cGUgTWFycXVlU2l6ZSA9IHR5cGVvZiBNQVJRVUVfU0laRVNbbnVtYmVyXTtcbmRlY2xhcmUgY29uc3QgQkFDS0RST1BTOiByZWFkb25seSBbXG5cdFwiYmx1clwiLFxuXHRcInNoYWRpbmdcIlxuXTtcbmV4cG9ydCB0eXBlIEJhY2tkcm9wID0gKHR5cGVvZiBCQUNLRFJPUFMpW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IE1PREFMX0FSSUFfQVRUUklCVVRFUzogcmVhZG9ubHkgW1xuXHRcImFyaWEtbGFiZWxcIlxuXTtcbmV4cG9ydCB0eXBlIE1vZGFsQXJpYUF0dHJpYnV0ZSA9ICh0eXBlb2YgTU9EQUxfQVJJQV9BVFRSSUJVVEVTKVtudW1iZXJdO1xuZXhwb3J0IHR5cGUgTW9kYWxCYWNrZHJvcCA9IEJhY2tkcm9wO1xuZXhwb3J0IHR5cGUgTW9kYWxNb3Rpb25WaXNpYmxlRW5kRXZlbnREZXRhaWwgPSBUcmFuc2l0aW9uRXZlbnQ7XG5leHBvcnQgdHlwZSBNb2RhbE1vdGlvbkhpZGRlbkVuZEV2ZW50RGV0YWlsID0gVHJhbnNpdGlvbkV2ZW50O1xuZGVjbGFyZSBjb25zdCBNT0RFTF9TSUdOQVRVUkVfRkVUQ0hfUFJJT1JJVFk6IHJlYWRvbmx5IFtcblx0XCJsb3dcIixcblx0XCJoaWdoXCIsXG5cdFwiYXV0b1wiXG5dO1xuZXhwb3J0IHR5cGUgTW9kZWxTaWduYXR1cmVGZXRjaFByaW9yaXR5ID0gKHR5cGVvZiBNT0RFTF9TSUdOQVRVUkVfRkVUQ0hfUFJJT1JJVFkpW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IE1PREVMX1NJR05BVFVSRV9TSVpFUzogcmVhZG9ubHkgW1xuXHRcInNtYWxsXCIsXG5cdFwiaW5oZXJpdFwiXG5dO1xuZXhwb3J0IHR5cGUgTW9kZWxTaWduYXR1cmVTaXplID0gKHR5cGVvZiBNT0RFTF9TSUdOQVRVUkVfU0laRVMpW251bWJlcl07XG5leHBvcnQgdHlwZSBNb2RlbFNpZ25hdHVyZU1vZGVsID0ga2V5b2YgdHlwZW9mIE1PREVMX1NJR05BVFVSRVNfTUFOSUZFU1Q7XG5kZWNsYXJlIGNvbnN0IE1PREVMX1NJR05BVFVSRV9DT0xPUlM6IHJlYWRvbmx5IFtcblx0XCJwcmltYXJ5XCIsXG5cdFwiY29udHJhc3QtbG93XCIsXG5cdFwiY29udHJhc3QtbWVkaXVtXCIsXG5cdFwiY29udHJhc3QtaGlnaFwiLFxuXHRcImluaGVyaXRcIlxuXTtcbmV4cG9ydCB0eXBlIE1vZGVsU2lnbmF0dXJlQ29sb3IgPSAodHlwZW9mIE1PREVMX1NJR05BVFVSRV9DT0xPUlMpW251bWJlcl07XG5leHBvcnQgdHlwZSBNdWx0aVNlbGVjdFN0YXRlID0gRm9ybVN0YXRlO1xuZXhwb3J0IHR5cGUgTXVsdGlTZWxlY3REcm9wZG93bkRpcmVjdGlvbiA9IFNlbGVjdENvbXBvbmVudHNEcm9wZG93bkRpcmVjdGlvbjtcbi8qKiBAZGVwcmVjYXRlZCAqL1xuZXhwb3J0IHR5cGUgTXVsdGlTZWxlY3RVcGRhdGVFdmVudCA9IHtcblx0bmFtZTogc3RyaW5nO1xuXHR2YWx1ZTogc3RyaW5nW107XG59O1xuZXhwb3J0IHR5cGUgTXVsdGlTZWxlY3RVcGRhdGVFdmVudERldGFpbCA9IE11bHRpU2VsZWN0VXBkYXRlRXZlbnQ7XG5kZWNsYXJlIGNvbnN0IFBBR0lOQVRJT05fTlVNQkVSX09GX1BBR0VfTElOS1M6IHJlYWRvbmx5IFtcblx0NSxcblx0N1xuXTtcbi8qKiBAZGVwcmVjYXRlZCAqL1xuZXhwb3J0IHR5cGUgUGFnaW5hdGlvbk1heE51bWJlck9mUGFnZUxpbmtzID0gKHR5cGVvZiBQQUdJTkFUSU9OX05VTUJFUl9PRl9QQUdFX0xJTktTKVtudW1iZXJdO1xuLyoqIEBkZXByZWNhdGVkICovXG5leHBvcnQgdHlwZSBQYWdpbmF0aW9uVXBkYXRlRXZlbnQgPSB7XG5cdHBhZ2U6IG51bWJlcjtcblx0cHJldmlvdXNQYWdlOiBudW1iZXI7XG59O1xuZXhwb3J0IHR5cGUgUGFnaW5hdGlvblVwZGF0ZUV2ZW50RGV0YWlsID0gUGFnaW5hdGlvblVwZGF0ZUV2ZW50O1xuZXhwb3J0IHR5cGUgUGFnaW5hdGlvbkludGVybmF0aW9uYWxpemF0aW9uID0gUGFydGlhbDxSZWNvcmQ8XCJyb290XCIgfCBcInByZXZcIiB8IFwibmV4dFwiIHwgXCJwYWdlXCIsIHN0cmluZz4+O1xuZGVjbGFyZSBjb25zdCBQSU5fQ09ERV9UWVBFUzogcmVhZG9ubHkgW1xuXHRcIm51bWJlclwiLFxuXHRcInBhc3N3b3JkXCJcbl07XG5leHBvcnQgdHlwZSBQaW5Db2RlVHlwZSA9ICh0eXBlb2YgUElOX0NPREVfVFlQRVMpW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IFBJTl9DT0RFX0xFTkdUSFM6IHJlYWRvbmx5IFtcblx0MSxcblx0Mixcblx0Myxcblx0NCxcblx0NSxcblx0NlxuXTtcbmV4cG9ydCB0eXBlIFBpbkNvZGVMZW5ndGggPSAodHlwZW9mIFBJTl9DT0RFX0xFTkdUSFMpW251bWJlcl07XG4vKiogQGRlcHJlY2F0ZWQgKi9cbmV4cG9ydCB0eXBlIFBpbkNvZGVVcGRhdGVFdmVudCA9IHtcblx0dmFsdWU6IHN0cmluZztcblx0aXNDb21wbGV0ZTogYm9vbGVhbjtcbn07XG5leHBvcnQgdHlwZSBQaW5Db2RlVXBkYXRlRXZlbnREZXRhaWwgPSBQaW5Db2RlVXBkYXRlRXZlbnQ7XG5leHBvcnQgdHlwZSBQaW5Db2RlU3RhdGUgPSBGb3JtU3RhdGU7XG5kZWNsYXJlIGNvbnN0IFBPUE9WRVJfRElSRUNUSU9OUzogcmVhZG9ubHkgW1xuXHRcInRvcFwiLFxuXHRcInJpZ2h0XCIsXG5cdFwiYm90dG9tXCIsXG5cdFwibGVmdFwiXG5dO1xuZXhwb3J0IHR5cGUgUG9wb3ZlckRpcmVjdGlvbiA9ICh0eXBlb2YgUE9QT1ZFUl9ESVJFQ1RJT05TKVtudW1iZXJdO1xuZGVjbGFyZSBjb25zdCBQT1BPVkVSX0FSSUFfQVRUUklCVVRFUzogcmVhZG9ubHkgW1xuXHRcImFyaWEtbGFiZWxcIlxuXTtcbmV4cG9ydCB0eXBlIFBvcG92ZXJBcmlhQXR0cmlidXRlID0gKHR5cGVvZiBQT1BPVkVSX0FSSUFfQVRUUklCVVRFUylbbnVtYmVyXTtcbmV4cG9ydCB0eXBlIFJhZGlvQnV0dG9uV3JhcHBlclN0YXRlID0gRm9ybVN0YXRlO1xuZGVjbGFyZSBjb25zdCBTRUdNRU5URURfQ09OVFJPTF9CQUNLR1JPVU5EX0NPTE9SUzogcmVhZG9ubHkgW1xuXHRcImJhY2tncm91bmQtc3VyZmFjZVwiLFxuXHRcImJhY2tncm91bmQtZGVmYXVsdFwiXG5dO1xuZXhwb3J0IHR5cGUgU2VnbWVudGVkQ29udHJvbEJhY2tncm91bmRDb2xvciA9ICh0eXBlb2YgU0VHTUVOVEVEX0NPTlRST0xfQkFDS0dST1VORF9DT0xPUlMpW251bWJlcl07XG4vKiogQGRlcHJlY2F0ZWQgKi9cbmV4cG9ydCB0eXBlIFNlZ21lbnRlZENvbnRyb2xVcGRhdGVFdmVudCA9IHtcblx0dmFsdWU6IHN0cmluZyB8IG51bWJlcjtcbn07XG5leHBvcnQgdHlwZSBTZWdtZW50ZWRDb250cm9sVXBkYXRlRXZlbnREZXRhaWwgPSBTZWdtZW50ZWRDb250cm9sVXBkYXRlRXZlbnQ7XG5kZWNsYXJlIGNvbnN0IFNFR01FTlRFRF9DT05UUk9MX0NPTFVNTlM6IChzdHJpbmcgfCBudW1iZXIpW107XG5leHBvcnQgdHlwZSBTZWdtZW50ZWRDb250cm9sQ29sdW1ucyA9ICh0eXBlb2YgU0VHTUVOVEVEX0NPTlRST0xfQ09MVU1OUylbbnVtYmVyXTtcbmV4cG9ydCB0eXBlIFNlZ21lbnRlZENvbnRyb2xJdGVtSWNvbiA9IExpbmtCdXR0b25JY29uTmFtZTtcbmRlY2xhcmUgY29uc3QgU0VHTUVOVEVEX0NPTlRST0xfSVRFTV9BUklBX0FUVFJJQlVURVM6IHJlYWRvbmx5IFtcblx0XCJhcmlhLWxhYmVsXCJcbl07XG5leHBvcnQgdHlwZSBTZWdtZW50ZWRDb250cm9sSXRlbUFyaWFBdHRyaWJ1dGUgPSAodHlwZW9mIFNFR01FTlRFRF9DT05UUk9MX0lURU1fQVJJQV9BVFRSSUJVVEVTKVtudW1iZXJdO1xuZXhwb3J0IHR5cGUgU2VsZWN0U3RhdGUgPSBGb3JtU3RhdGU7XG5leHBvcnQgdHlwZSBTZWxlY3REcm9wZG93bkRpcmVjdGlvbiA9IFNlbGVjdENvbXBvbmVudHNEcm9wZG93bkRpcmVjdGlvbjtcbmV4cG9ydCB0eXBlIFNlbGVjdFVwZGF0ZUV2ZW50RGV0YWlsID0ge1xuXHRuYW1lOiBzdHJpbmc7XG5cdHZhbHVlOiBzdHJpbmc7XG59O1xuZGVjbGFyZSBjb25zdCBEUk9QRE9XTl9ESVJFQ1RJT05TOiByZWFkb25seSBbXG5cdFwiZG93blwiLFxuXHRcInVwXCIsXG5cdFwiYXV0b1wiXG5dO1xuZXhwb3J0IHR5cGUgU2VsZWN0V3JhcHBlckRyb3Bkb3duRGlyZWN0aW9uID0gKHR5cGVvZiBEUk9QRE9XTl9ESVJFQ1RJT05TKVtudW1iZXJdO1xuZXhwb3J0IHR5cGUgU2VsZWN0V3JhcHBlclN0YXRlID0gRm9ybVN0YXRlO1xuZGVjbGFyZSBjb25zdCBTUElOTkVSX1NJWkVTOiByZWFkb25seSBbXG5cdFwic21hbGxcIixcblx0XCJtZWRpdW1cIixcblx0XCJsYXJnZVwiLFxuXHRcImluaGVyaXRcIlxuXTtcbmV4cG9ydCB0eXBlIFNwaW5uZXJTaXplID0gdHlwZW9mIFNQSU5ORVJfU0laRVNbbnVtYmVyXTtcbmRlY2xhcmUgY29uc3QgU1BJTk5FUl9BUklBX0FUVFJJQlVURVM6IHJlYWRvbmx5IFtcblx0XCJhcmlhLWxhYmVsXCJcbl07XG5leHBvcnQgdHlwZSBTcGlubmVyQXJpYUF0dHJpYnV0ZSA9IHR5cGVvZiBTUElOTkVSX0FSSUFfQVRUUklCVVRFU1tudW1iZXJdO1xuZGVjbGFyZSBjb25zdCBTVEVQUEVSX0hPUklaT05UQUxfU0laRVM6IHJlYWRvbmx5IFtcblx0XCJzbWFsbFwiLFxuXHRcIm1lZGl1bVwiXG5dO1xuZXhwb3J0IHR5cGUgU3RlcHBlckhvcml6b250YWxTaXplID0gKHR5cGVvZiBTVEVQUEVSX0hPUklaT05UQUxfU0laRVMpW251bWJlcl07XG4vKiogQGRlcHJlY2F0ZWQgKi9cbmV4cG9ydCB0eXBlIFN0ZXBwZXJIb3Jpem9udGFsVXBkYXRlRXZlbnQgPSB7XG5cdGFjdGl2ZVN0ZXBJbmRleDogbnVtYmVyO1xufTtcbmV4cG9ydCB0eXBlIFN0ZXBwZXJIb3Jpem9udGFsVXBkYXRlRXZlbnREZXRhaWwgPSBTdGVwcGVySG9yaXpvbnRhbFVwZGF0ZUV2ZW50O1xuZGVjbGFyZSBjb25zdCBTVEVQUEVSX0lURU1fU1RBVEVTOiByZWFkb25seSBbXG5cdFwiY3VycmVudFwiLFxuXHRcImNvbXBsZXRlXCIsXG5cdFwid2FybmluZ1wiXG5dO1xuZXhwb3J0IHR5cGUgU3RlcHBlckhvcml6b250YWxJdGVtU3RhdGUgPSAodHlwZW9mIFNURVBQRVJfSVRFTV9TVEFURVMpW251bWJlcl07XG5leHBvcnQgdHlwZSBTd2l0Y2hBbGlnbkxhYmVsID0gQWxpZ25MYWJlbDtcbi8qKiBAZGVwcmVjYXRlZCAqL1xuZXhwb3J0IHR5cGUgU3dpdGNoVXBkYXRlRXZlbnQgPSB7XG5cdGNoZWNrZWQ6IGJvb2xlYW47XG59O1xuZXhwb3J0IHR5cGUgU3dpdGNoVXBkYXRlRXZlbnREZXRhaWwgPSBTd2l0Y2hVcGRhdGVFdmVudDtcbmV4cG9ydCB0eXBlIERpcmVjdGlvbiA9IFwiYXNjXCIgfCBcImRlc2NcIjtcbmV4cG9ydCB0eXBlIFRhYmxlSGVhZENlbGxTb3J0ID0ge1xuXHRpZDogc3RyaW5nO1xuXHRhY3RpdmU/OiBib29sZWFuO1xuXHRkaXJlY3Rpb24/OiBEaXJlY3Rpb247XG59O1xuLyoqIEBkZXByZWNhdGVkICovXG5leHBvcnQgdHlwZSBUYWJsZVVwZGF0ZUV2ZW50ID0gVGFibGVIZWFkQ2VsbFNvcnQ7XG5leHBvcnQgdHlwZSBUYWJsZVVwZGF0ZUV2ZW50RGV0YWlsID0gVGFibGVVcGRhdGVFdmVudDtcbmRlY2xhcmUgY29uc3QgVEFCU19CQVJfU0laRVM6IHJlYWRvbmx5IFtcblx0XCJzbWFsbFwiLFxuXHRcIm1lZGl1bVwiXG5dO1xuZXhwb3J0IHR5cGUgVGFic0JhclNpemUgPSAodHlwZW9mIFRBQlNfQkFSX1NJWkVTKVtudW1iZXJdO1xuZGVjbGFyZSBjb25zdCBUQUJTX0JBUl9XRUlHSFRTOiByZWFkb25seSBbXG5cdFwicmVndWxhclwiLFxuXHRcInNlbWktYm9sZFwiLFxuXHRcInNlbWlib2xkXCJcbl07XG5leHBvcnQgdHlwZSBUYWJzQmFyV2VpZ2h0ID0gKHR5cGVvZiBUQUJTX0JBUl9XRUlHSFRTKVtudW1iZXJdO1xuLyoqIEBkZXByZWNhdGVkICovXG5leHBvcnQgdHlwZSBUYWJzQmFyVXBkYXRlRXZlbnQgPSB7XG5cdGFjdGl2ZVRhYkluZGV4OiBudW1iZXI7XG59O1xuZXhwb3J0IHR5cGUgVGFic0JhclVwZGF0ZUV2ZW50RGV0YWlsID0gVGFic0JhclVwZGF0ZUV2ZW50O1xuLyoqIEBkZXByZWNhdGVkICovXG5leHBvcnQgdHlwZSBUYWJzQmFyR3JhZGllbnRDb2xvclNjaGVtZSA9IFNjcm9sbGVyR3JhZGllbnRDb2xvclNjaGVtZTtcbmV4cG9ydCB0eXBlIFRhYnNCYXJHcmFkaWVudENvbG9yID0gU2Nyb2xsZXJHcmFkaWVudENvbG9yO1xuZXhwb3J0IHR5cGUgVGFic1NpemUgPSBUYWJzQmFyU2l6ZTtcbmV4cG9ydCB0eXBlIFRhYnNXZWlnaHQgPSBUYWJzQmFyV2VpZ2h0O1xuLyoqIEBkZXByZWNhdGVkICovXG5leHBvcnQgdHlwZSBUYWJzR3JhZGllbnRDb2xvclNjaGVtZSA9IFRhYnNCYXJHcmFkaWVudENvbG9yU2NoZW1lO1xuZXhwb3J0IHR5cGUgVGFic0dyYWRpZW50Q29sb3IgPSBUYWJzQmFyR3JhZGllbnRDb2xvcjtcbi8qKiBAZGVwcmVjYXRlZCAqL1xuZXhwb3J0IHR5cGUgVGFic1VwZGF0ZUV2ZW50ID0gVGFic0JhclVwZGF0ZUV2ZW50O1xuZXhwb3J0IHR5cGUgVGFic1VwZGF0ZUV2ZW50RGV0YWlsID0gVGFic1VwZGF0ZUV2ZW50O1xuZGVjbGFyZSBjb25zdCBUQUdfRElTTUlTU0lCTEVfQ09MT1JTOiByZWFkb25seSBbXG5cdFwiYmFja2dyb3VuZC1iYXNlXCIsXG5cdFwiYmFja2dyb3VuZC1zdXJmYWNlXCIsXG5cdFwiYmFja2dyb3VuZC1kZWZhdWx0XCJcbl07XG5leHBvcnQgdHlwZSBUYWdEaXNtaXNzaWJsZUNvbG9yID0gdHlwZW9mIFRBR19ESVNNSVNTSUJMRV9DT0xPUlNbbnVtYmVyXTtcbmRlY2xhcmUgY29uc3QgVEFHX0RJU01JU1NJQkxFX0FSSUFfQVRUUklCVVRFUzogcmVhZG9ubHkgW1xuXHRcImFyaWEtbGFiZWxcIlxuXTtcbmV4cG9ydCB0eXBlIFRhZ0Rpc21pc3NpYmxlQXJpYUF0dHJpYnV0ZSA9IHR5cGVvZiBUQUdfRElTTUlTU0lCTEVfQVJJQV9BVFRSSUJVVEVTW251bWJlcl07XG5leHBvcnQgdHlwZSBUYWdJY29uID0gSWNvbk5hbWU7XG5kZWNsYXJlIGNvbnN0IFRBR19DT0xPUlM6IHJlYWRvbmx5IFtcblx0XCJiYWNrZ3JvdW5kLWJhc2VcIixcblx0XCJiYWNrZ3JvdW5kLXN1cmZhY2VcIixcblx0XCJiYWNrZ3JvdW5kLWRlZmF1bHRcIixcblx0XCJiYWNrZ3JvdW5kLWZyb3N0ZWRcIixcblx0XCJwcmltYXJ5XCIsXG5cdFwibm90aWZpY2F0aW9uLWluZm8tc29mdFwiLFxuXHRcIm5vdGlmaWNhdGlvbi13YXJuaW5nLXNvZnRcIixcblx0XCJub3RpZmljYXRpb24tc3VjY2Vzcy1zb2Z0XCIsXG5cdFwibm90aWZpY2F0aW9uLWVycm9yLXNvZnRcIixcblx0XCJuZXV0cmFsLWNvbnRyYXN0LWhpZ2hcIixcblx0XCJub3RpZmljYXRpb24tbmV1dHJhbFwiLFxuXHRcIm5vdGlmaWNhdGlvbi13YXJuaW5nXCIsXG5cdFwibm90aWZpY2F0aW9uLXN1Y2Nlc3NcIixcblx0XCJub3RpZmljYXRpb24tZXJyb3JcIlxuXTtcbmV4cG9ydCB0eXBlIFRhZ0NvbG9yID0gKHR5cGVvZiBUQUdfQ09MT1JTKVtudW1iZXJdO1xuZGVjbGFyZSBjb25zdCBURVhUX1RBR1M6IHJlYWRvbmx5IFtcblx0XCJwXCIsXG5cdFwic3BhblwiLFxuXHRcImRpdlwiLFxuXHRcImFkZHJlc3NcIixcblx0XCJibG9ja3F1b3RlXCIsXG5cdFwiZmlnY2FwdGlvblwiLFxuXHRcImNpdGVcIixcblx0XCJ0aW1lXCIsXG5cdFwibGVnZW5kXCJcbl07XG5leHBvcnQgdHlwZSBUZXh0VGFnID0gKHR5cGVvZiBURVhUX1RBR1MpW251bWJlcl07XG5leHBvcnQgdHlwZSBUZXh0QWxpZ24gPSBUeXBvZ3JhcGh5QWxpZ247XG5leHBvcnQgdHlwZSBUZXh0Q29sb3IgPSBUeXBvZ3JhcGh5VGV4dENvbG9yO1xuZXhwb3J0IHR5cGUgVGV4dFdlaWdodCA9IFR5cG9ncmFwaHlUZXh0V2VpZ2h0O1xuZGVjbGFyZSBjb25zdCBVTklUX1BPU0lUSU9OUzogcmVhZG9ubHkgW1xuXHRcInByZWZpeFwiLFxuXHRcInN1ZmZpeFwiXG5dO1xuZXhwb3J0IHR5cGUgVGV4dEZpZWxkV3JhcHBlclVuaXRQb3NpdGlvbiA9ICh0eXBlb2YgVU5JVF9QT1NJVElPTlMpW251bWJlcl07XG5leHBvcnQgdHlwZSBUZXh0RmllbGRXcmFwcGVyQWN0aW9uSWNvbiA9IEV4dHJhY3Q8SWNvbk5hbWUsIFwibG9jYXRlXCI+O1xuZXhwb3J0IHR5cGUgVGV4dEZpZWxkV3JhcHBlclN0YXRlID0gRm9ybVN0YXRlO1xuZGVjbGFyZSBjb25zdCBMSVNUX1RZUEVTOiByZWFkb25seSBbXG5cdFwidW5vcmRlcmVkXCIsXG5cdFwib3JkZXJlZFwiXG5dO1xuLyoqIEBkZXByZWNhdGVkICovXG5leHBvcnQgdHlwZSBUZXh0TGlzdExpc3RUeXBlID0gdHlwZW9mIExJU1RfVFlQRVNbbnVtYmVyXTtcbmRlY2xhcmUgY29uc3QgT1JERVJfVFlQRVM6IHJlYWRvbmx5IFtcblx0XCJudW1iZXJlZFwiLFxuXHRcImFscGhhYmV0aWNhbGx5XCJcbl07XG4vKiogQGRlcHJlY2F0ZWQgKi9cbmV4cG9ydCB0eXBlIFRleHRMaXN0T3JkZXJUeXBlID0gdHlwZW9mIE9SREVSX1RZUEVTW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IFRFWFRfTElTVF9UWVBFUzogcmVhZG9ubHkgW1xuXHRcInVub3JkZXJlZFwiLFxuXHRcIm51bWJlcmVkXCIsXG5cdFwiYWxwaGFiZXRpY2FsbHlcIlxuXTtcbmV4cG9ydCB0eXBlIFRleHRMaXN0VHlwZSA9IHR5cGVvZiBURVhUX0xJU1RfVFlQRVNbbnVtYmVyXTtcbmV4cG9ydCB0eXBlIFRleHRhcmVhU3RhdGUgPSBGb3JtU3RhdGU7XG5kZWNsYXJlIGNvbnN0IEFVVE9fQ09NUExFVEU6IHJlYWRvbmx5IFtcblx0XCJvZmZcIixcblx0XCJvblwiLFxuXHRcIlwiXG5dO1xuZXhwb3J0IHR5cGUgVGV4dGFyZWFBdXRvQ29tcGxldGUgPSAodHlwZW9mIEFVVE9fQ09NUExFVEUpW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IFRFWFRBUkVBX1dSQVBTOiByZWFkb25seSBbXG5cdFwiaGFyZFwiLFxuXHRcInNvZnRcIixcblx0XCJvZmZcIlxuXTtcbmV4cG9ydCB0eXBlIFRleHRhcmVhV3JhcCA9ICh0eXBlb2YgVEVYVEFSRUFfV1JBUFMpW251bWJlcl07XG5kZWNsYXJlIGNvbnN0IFRFWFRBUkVBX1JFU0laRTogcmVhZG9ubHkgW1xuXHRcIm5vbmVcIixcblx0XCJib3RoXCIsXG5cdFwiaG9yaXpvbnRhbFwiLFxuXHRcInZlcnRpY2FsXCIsXG5cdFwiYmxvY2tcIixcblx0XCJpbmxpbmVcIlxuXTtcbmV4cG9ydCB0eXBlIFRleHRhcmVhUmVzaXplID0gKHR5cGVvZiBURVhUQVJFQV9SRVNJWkUpW251bWJlcl07XG5leHBvcnQgdHlwZSBUZXh0YXJlYUNoYW5nZUV2ZW50RGV0YWlsID0gRXZlbnQ7XG5leHBvcnQgdHlwZSBUZXh0YXJlYUJsdXJFdmVudERldGFpbCA9IEV2ZW50O1xuZXhwb3J0IHR5cGUgVGV4dGFyZWFJbnB1dEV2ZW50RGV0YWlsID0gSW5wdXRFdmVudDtcbmV4cG9ydCB0eXBlIFRleHRhcmVhV3JhcHBlclN0YXRlID0gRm9ybVN0YXRlO1xuZGVjbGFyZSBjb25zdCBUT0FTVF9TVEFURVM6IHJlYWRvbmx5IFtcblx0XCJpbmZvXCIsXG5cdFwic3VjY2Vzc1wiLFxuXHRcIm5ldXRyYWxcIlxuXTtcbmV4cG9ydCB0eXBlIFRvYXN0U3RhdGUgPSB0eXBlb2YgVE9BU1RfU1RBVEVTW251bWJlcl07XG5leHBvcnQgdHlwZSBUb2FzdE1lc3NhZ2UgPSB7XG5cdHRleHQ6IHN0cmluZztcblx0c3RhdGU/OiBUb2FzdFN0YXRlO1xufTtcbmRlY2xhcmUgY29uc3QgV09SRE1BUktfU0laRVM6IHJlYWRvbmx5IFtcblx0XCJzbWFsbFwiLFxuXHRcImluaGVyaXRcIlxuXTtcbmV4cG9ydCB0eXBlIFdvcmRtYXJrU2l6ZSA9ICh0eXBlb2YgV09SRE1BUktfU0laRVMpW251bWJlcl07XG5leHBvcnQgdHlwZSBXb3JkbWFya1RhcmdldCA9IExpbmtUYXJnZXQ7XG5leHBvcnQgdHlwZSBXb3JkbWFya0FyaWFBdHRyaWJ1dGUgPSBMaW5rQXJpYUF0dHJpYnV0ZTtcbiJdfQ==
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9yc2NoZS1kZXNpZ24tc3lzdGVtLWNvbXBvbmVudHMtYW5ndWxhci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItd3JhcHBlci9zcmMvcG9yc2NoZS1kZXNpZ24tc3lzdGVtLWNvbXBvbmVudHMtYW5ndWxhci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
@@ -1,128 +0,0 @@
1
- import { inject, NgModule, Optional } from '@angular/core';
2
- import { BehaviorSubject } from 'rxjs';
3
- import { load } from '@porsche-design-system/components-js';
4
- import { DECLARATIONS } from './lib/components/barrel';
5
- import { THEME_TOKEN } from './utils';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "./lib/components/accordion.wrapper";
8
- import * as i2 from "./lib/components/banner.wrapper";
9
- import * as i3 from "./lib/components/button.wrapper";
10
- import * as i4 from "./lib/components/button-group.wrapper";
11
- import * as i5 from "./lib/components/button-pure.wrapper";
12
- import * as i6 from "./lib/components/button-tile.wrapper";
13
- import * as i7 from "./lib/components/canvas.wrapper";
14
- import * as i8 from "./lib/components/carousel.wrapper";
15
- import * as i9 from "./lib/components/checkbox.wrapper";
16
- import * as i10 from "./lib/components/checkbox-wrapper.wrapper";
17
- import * as i11 from "./lib/components/content-wrapper.wrapper";
18
- import * as i12 from "./lib/components/crest.wrapper";
19
- import * as i13 from "./lib/components/display.wrapper";
20
- import * as i14 from "./lib/components/divider.wrapper";
21
- import * as i15 from "./lib/components/fieldset.wrapper";
22
- import * as i16 from "./lib/components/fieldset-wrapper.wrapper";
23
- import * as i17 from "./lib/components/flex.wrapper";
24
- import * as i18 from "./lib/components/flex-item.wrapper";
25
- import * as i19 from "./lib/components/flyout.wrapper";
26
- import * as i20 from "./lib/components/flyout-multilevel.wrapper";
27
- import * as i21 from "./lib/components/flyout-multilevel-item.wrapper";
28
- import * as i22 from "./lib/components/grid.wrapper";
29
- import * as i23 from "./lib/components/grid-item.wrapper";
30
- import * as i24 from "./lib/components/heading.wrapper";
31
- import * as i25 from "./lib/components/headline.wrapper";
32
- import * as i26 from "./lib/components/icon.wrapper";
33
- import * as i27 from "./lib/components/inline-notification.wrapper";
34
- import * as i28 from "./lib/components/link.wrapper";
35
- import * as i29 from "./lib/components/link-pure.wrapper";
36
- import * as i30 from "./lib/components/link-social.wrapper";
37
- import * as i31 from "./lib/components/link-tile.wrapper";
38
- import * as i32 from "./lib/components/link-tile-model-signature.wrapper";
39
- import * as i33 from "./lib/components/link-tile-product.wrapper";
40
- import * as i34 from "./lib/components/marque.wrapper";
41
- import * as i35 from "./lib/components/modal.wrapper";
42
- import * as i36 from "./lib/components/model-signature.wrapper";
43
- import * as i37 from "./lib/components/multi-select.wrapper";
44
- import * as i38 from "./lib/components/multi-select-option.wrapper";
45
- import * as i39 from "./lib/components/optgroup.wrapper";
46
- import * as i40 from "./lib/components/pagination.wrapper";
47
- import * as i41 from "./lib/components/pin-code.wrapper";
48
- import * as i42 from "./lib/components/popover.wrapper";
49
- import * as i43 from "./lib/components/radio-button-wrapper.wrapper";
50
- import * as i44 from "./lib/components/scroller.wrapper";
51
- import * as i45 from "./lib/components/segmented-control.wrapper";
52
- import * as i46 from "./lib/components/segmented-control-item.wrapper";
53
- import * as i47 from "./lib/components/select.wrapper";
54
- import * as i48 from "./lib/components/select-option.wrapper";
55
- import * as i49 from "./lib/components/select-wrapper.wrapper";
56
- import * as i50 from "./lib/components/spinner.wrapper";
57
- import * as i51 from "./lib/components/stepper-horizontal.wrapper";
58
- import * as i52 from "./lib/components/stepper-horizontal-item.wrapper";
59
- import * as i53 from "./lib/components/switch.wrapper";
60
- import * as i54 from "./lib/components/table.wrapper";
61
- import * as i55 from "./lib/components/table-body.wrapper";
62
- import * as i56 from "./lib/components/table-cell.wrapper";
63
- import * as i57 from "./lib/components/table-head.wrapper";
64
- import * as i58 from "./lib/components/table-head-cell.wrapper";
65
- import * as i59 from "./lib/components/table-head-row.wrapper";
66
- import * as i60 from "./lib/components/table-row.wrapper";
67
- import * as i61 from "./lib/components/tabs.wrapper";
68
- import * as i62 from "./lib/components/tabs-bar.wrapper";
69
- import * as i63 from "./lib/components/tabs-item.wrapper";
70
- import * as i64 from "./lib/components/tag.wrapper";
71
- import * as i65 from "./lib/components/tag-dismissible.wrapper";
72
- import * as i66 from "./lib/components/text.wrapper";
73
- import * as i67 from "./lib/components/text-field-wrapper.wrapper";
74
- import * as i68 from "./lib/components/text-list.wrapper";
75
- import * as i69 from "./lib/components/text-list-item.wrapper";
76
- import * as i70 from "./lib/components/textarea.wrapper";
77
- import * as i71 from "./lib/components/textarea-wrapper.wrapper";
78
- import * as i72 from "./lib/components/toast.wrapper";
79
- import * as i73 from "./lib/components/wordmark.wrapper";
80
- export class DefaultConfig {
81
- prefix = '';
82
- theme; // since theme exists on almost every component, it is defined here kind of like a global prop
83
- }
84
- // TODO: unit tests are missing
85
- export class PorscheDesignSystemModule {
86
- theme$ = inject(THEME_TOKEN);
87
- constructor(configParam) {
88
- const configs = configParam || [new DefaultConfig()];
89
- this.theme$.next(configs[0].theme || 'light'); // first config sets the theme
90
- configs.forEach(load);
91
- }
92
- static load(config) {
93
- return {
94
- ngModule: PorscheDesignSystemModule,
95
- providers: [
96
- {
97
- provide: DefaultConfig,
98
- multi: true, // to support multiple prefixes in same module
99
- useValue: config,
100
- },
101
- ],
102
- };
103
- }
104
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: PorscheDesignSystemModule, deps: [{ token: DefaultConfig, optional: true }], target: i0.ɵɵFactoryTarget.NgModule });
105
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.0", ngImport: i0, type: PorscheDesignSystemModule, declarations: [i1.PAccordion, i2.PBanner, i3.PButton, i4.PButtonGroup, i5.PButtonPure, i6.PButtonTile, i7.PCanvas, i8.PCarousel, i9.PCheckbox, i10.PCheckboxWrapper, i11.PContentWrapper, i12.PCrest, i13.PDisplay, i14.PDivider, i15.PFieldset, i16.PFieldsetWrapper, i17.PFlex, i18.PFlexItem, i19.PFlyout, i20.PFlyoutMultilevel, i21.PFlyoutMultilevelItem, i22.PGrid, i23.PGridItem, i24.PHeading, i25.PHeadline, i26.PIcon, i27.PInlineNotification, i28.PLink, i29.PLinkPure, i30.PLinkSocial, i31.PLinkTile, i32.PLinkTileModelSignature, i33.PLinkTileProduct, i34.PMarque, i35.PModal, i36.PModelSignature, i37.PMultiSelect, i38.PMultiSelectOption, i39.POptgroup, i40.PPagination, i41.PPinCode, i42.PPopover, i43.PRadioButtonWrapper, i44.PScroller, i45.PSegmentedControl, i46.PSegmentedControlItem, i47.PSelect, i48.PSelectOption, i49.PSelectWrapper, i50.PSpinner, i51.PStepperHorizontal, i52.PStepperHorizontalItem, i53.PSwitch, i54.PTable, i55.PTableBody, i56.PTableCell, i57.PTableHead, i58.PTableHeadCell, i59.PTableHeadRow, i60.PTableRow, i61.PTabs, i62.PTabsBar, i63.PTabsItem, i64.PTag, i65.PTagDismissible, i66.PText, i67.PTextFieldWrapper, i68.PTextList, i69.PTextListItem, i70.PTextarea, i71.PTextareaWrapper, i72.PToast, i73.PWordmark], exports: [i1.PAccordion, i2.PBanner, i3.PButton, i4.PButtonGroup, i5.PButtonPure, i6.PButtonTile, i7.PCanvas, i8.PCarousel, i9.PCheckbox, i10.PCheckboxWrapper, i11.PContentWrapper, i12.PCrest, i13.PDisplay, i14.PDivider, i15.PFieldset, i16.PFieldsetWrapper, i17.PFlex, i18.PFlexItem, i19.PFlyout, i20.PFlyoutMultilevel, i21.PFlyoutMultilevelItem, i22.PGrid, i23.PGridItem, i24.PHeading, i25.PHeadline, i26.PIcon, i27.PInlineNotification, i28.PLink, i29.PLinkPure, i30.PLinkSocial, i31.PLinkTile, i32.PLinkTileModelSignature, i33.PLinkTileProduct, i34.PMarque, i35.PModal, i36.PModelSignature, i37.PMultiSelect, i38.PMultiSelectOption, i39.POptgroup, i40.PPagination, i41.PPinCode, i42.PPopover, i43.PRadioButtonWrapper, i44.PScroller, i45.PSegmentedControl, i46.PSegmentedControlItem, i47.PSelect, i48.PSelectOption, i49.PSelectWrapper, i50.PSpinner, i51.PStepperHorizontal, i52.PStepperHorizontalItem, i53.PSwitch, i54.PTable, i55.PTableBody, i56.PTableCell, i57.PTableHead, i58.PTableHeadCell, i59.PTableHeadRow, i60.PTableRow, i61.PTabs, i62.PTabsBar, i63.PTabsItem, i64.PTag, i65.PTagDismissible, i66.PText, i67.PTextFieldWrapper, i68.PTextList, i69.PTextListItem, i70.PTextarea, i71.PTextareaWrapper, i72.PToast, i73.PWordmark] });
106
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: PorscheDesignSystemModule, providers: [
107
- {
108
- provide: THEME_TOKEN,
109
- useValue: new BehaviorSubject('light'),
110
- },
111
- ] });
112
- }
113
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: PorscheDesignSystemModule, decorators: [{
114
- type: NgModule,
115
- args: [{
116
- declarations: DECLARATIONS,
117
- exports: DECLARATIONS,
118
- providers: [
119
- {
120
- provide: THEME_TOKEN,
121
- useValue: new BehaviorSubject('light'),
122
- },
123
- ],
124
- }]
125
- }], ctorParameters: () => [{ type: DefaultConfig, decorators: [{
126
- type: Optional
127
- }] }] });
128
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9yc2NoZS1kZXNpZ24tc3lzdGVtLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItd3JhcHBlci9zcmMvcG9yc2NoZS1kZXNpZ24tc3lzdGVtLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUE0QixRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdkMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzVELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV2RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sU0FBUyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFRdEMsTUFBTSxPQUFPLGFBQWE7SUFDeEIsTUFBTSxHQUFHLEVBQUUsQ0FBQztJQUNaLEtBQUssQ0FBVSxDQUFDLDhGQUE4RjtDQUcvRztBQUVELCtCQUErQjtBQVcvQixNQUFNLE9BQU8seUJBQXlCO0lBQzVCLE1BQU0sR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFFckMsWUFBd0IsV0FBMEI7UUFDaEQsTUFBTSxPQUFPLEdBQUksV0FBMEMsSUFBSSxDQUFDLElBQUksYUFBYSxFQUFFLENBQUMsQ0FBQztRQUNyRixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxJQUFJLE9BQU8sQ0FBQyxDQUFDLENBQUMsOEJBQThCO1FBQzdFLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUVELE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBdUM7UUFDakQsT0FBTztZQUNMLFFBQVEsRUFBRSx5QkFBeUI7WUFDbkMsU0FBUyxFQUFFO2dCQUNUO29CQUNFLE9BQU8sRUFBRSxhQUFhO29CQUN0QixLQUFLLEVBQUUsSUFBSSxFQUFFLDhDQUE4QztvQkFDM0QsUUFBUSxFQUFFLE1BQU07aUJBQ2pCO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQzt1R0FwQlUseUJBQXlCO3dHQUF6Qix5QkFBeUI7d0dBQXpCLHlCQUF5QixhQVB6QjtZQUNUO2dCQUNFLE9BQU8sRUFBRSxXQUFXO2dCQUNwQixRQUFRLEVBQUUsSUFBSSxlQUFlLENBQUMsT0FBTyxDQUFDO2FBQ3ZDO1NBQ0Y7OzJGQUVVLHlCQUF5QjtrQkFWckMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsWUFBWTtvQkFDMUIsT0FBTyxFQUFFLFlBQVk7b0JBQ3JCLFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsV0FBVzs0QkFDcEIsUUFBUSxFQUFFLElBQUksZUFBZSxDQUFDLE9BQU8sQ0FBQzt5QkFDdkM7cUJBQ0Y7aUJBQ0Y7OzBCQUljLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIHR5cGUgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGxvYWQgfSBmcm9tICdAcG9yc2NoZS1kZXNpZ24tc3lzdGVtL2NvbXBvbmVudHMtanMnO1xuaW1wb3J0IHsgREVDTEFSQVRJT05TIH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9iYXJyZWwnO1xuaW1wb3J0IHR5cGUgeyBUaGVtZSB9IGZyb20gJy4vbGliL3R5cGVzJztcbmltcG9ydCB7IFRIRU1FX1RPS0VOIH0gZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCB0eXBlIFBvcnNjaGVEZXNpZ25TeXN0ZW1Nb2R1bGVDb25maWcgPSB7XG4gIHByZWZpeD86IHN0cmluZztcbiAgY2RuPzogJ2F1dG8nIHwgJ2NuJztcbiAgdGhlbWU/OiBUaGVtZTtcbn07XG5cbmV4cG9ydCBjbGFzcyBEZWZhdWx0Q29uZmlnIGltcGxlbWVudHMgUG9yc2NoZURlc2lnblN5c3RlbU1vZHVsZUNvbmZpZyB7XG4gIHByZWZpeCA9ICcnO1xuICB0aGVtZTogJ2xpZ2h0JzsgLy8gc2luY2UgdGhlbWUgZXhpc3RzIG9uIGFsbW9zdCBldmVyeSBjb21wb25lbnQsIGl0IGlzIGRlZmluZWQgaGVyZSBraW5kIG9mIGxpa2UgYSBnbG9iYWwgcHJvcFxuICAvLyBvdGhlciBjb21wb25lbnQgY29uZmlndXJhdGlvbnMgc2hvdWxkIHByb2JhYmx5IGdvIGludG8gYSBzZXBhcmF0ZSBgY29tcG9uZW50c2AsIGBjb21wb25lbnRQcm9wc2Agb3IgYGNvbXBvbmVudERlZmF1bHRzYFxuICAvLyBwcm9wZXJ0eSBzaW1pbGFyIHRvIGh0dHBzOi8vbXVpLmNvbS9tYXRlcmlhbC11aS9jdXN0b21pemF0aW9uL3RoZW1lLWNvbXBvbmVudHMvXG59XG5cbi8vIFRPRE86IHVuaXQgdGVzdHMgYXJlIG1pc3NpbmdcbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogREVDTEFSQVRJT05TLFxuICBleHBvcnRzOiBERUNMQVJBVElPTlMsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IFRIRU1FX1RPS0VOLFxuICAgICAgdXNlVmFsdWU6IG5ldyBCZWhhdmlvclN1YmplY3QoJ2xpZ2h0JyksXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgUG9yc2NoZURlc2lnblN5c3RlbU1vZHVsZSB7XG4gIHByaXZhdGUgdGhlbWUkID0gaW5qZWN0KFRIRU1FX1RPS0VOKTtcblxuICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBjb25maWdQYXJhbTogRGVmYXVsdENvbmZpZykge1xuICAgIGNvbnN0IGNvbmZpZ3MgPSAoY29uZmlnUGFyYW0gYXMgdW5rbm93biBhcyBEZWZhdWx0Q29uZmlnW10pIHx8IFtuZXcgRGVmYXVsdENvbmZpZygpXTtcbiAgICB0aGlzLnRoZW1lJC5uZXh0KGNvbmZpZ3NbMF0udGhlbWUgfHwgJ2xpZ2h0Jyk7IC8vIGZpcnN0IGNvbmZpZyBzZXRzIHRoZSB0aGVtZVxuICAgIGNvbmZpZ3MuZm9yRWFjaChsb2FkKTtcbiAgfVxuXG4gIHN0YXRpYyBsb2FkKGNvbmZpZzogUG9yc2NoZURlc2lnblN5c3RlbU1vZHVsZUNvbmZpZyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8UG9yc2NoZURlc2lnblN5c3RlbU1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogUG9yc2NoZURlc2lnblN5c3RlbU1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogRGVmYXVsdENvbmZpZyxcbiAgICAgICAgICBtdWx0aTogdHJ1ZSwgLy8gdG8gc3VwcG9ydCBtdWx0aXBsZSBwcmVmaXhlcyBpbiBzYW1lIG1vZHVsZVxuICAgICAgICAgIHVzZVZhbHVlOiBjb25maWcsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
@@ -1,7 +0,0 @@
1
- export { componentsReady } from '@porsche-design-system/components-js';
2
- export * from './lib/components/barrel';
3
- export * from './lib/types';
4
- export { PorscheDesignSystemModule } from './porsche-design-system.module';
5
- export { THEME_TOKEN } from './utils';
6
- export { ToastManager } from './toast-manager';
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItd3JhcHBlci9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDdkUsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLGFBQWEsQ0FBQztBQUM1QixPQUFPLEVBQUUseUJBQXlCLEVBQXdDLE1BQU0sZ0NBQWdDLENBQUM7QUFDakgsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUN0QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBjb21wb25lbnRzUmVhZHkgfSBmcm9tICdAcG9yc2NoZS1kZXNpZ24tc3lzdGVtL2NvbXBvbmVudHMtanMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9iYXJyZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdHlwZXMnO1xuZXhwb3J0IHsgUG9yc2NoZURlc2lnblN5c3RlbU1vZHVsZSwgdHlwZSBQb3JzY2hlRGVzaWduU3lzdGVtTW9kdWxlQ29uZmlnIH0gZnJvbSAnLi9wb3JzY2hlLWRlc2lnbi1zeXN0ZW0ubW9kdWxlJztcbmV4cG9ydCB7IFRIRU1FX1RPS0VOIH0gZnJvbSAnLi91dGlscyc7XG5leHBvcnQgeyBUb2FzdE1hbmFnZXIgfSBmcm9tICcuL3RvYXN0LW1hbmFnZXInO1xuIl19
@@ -1,17 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class ToastManager {
4
- addMessage(message) {
5
- const toast = document.body.querySelector('p-toast,[p-toast]');
6
- customElements.whenDefined(toast.tagName.toLowerCase()).then(() => toast.addMessage(message));
7
- }
8
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: ToastManager, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
9
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: ToastManager, providedIn: 'root' });
10
- }
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: ToastManager, decorators: [{
12
- type: Injectable,
13
- args: [{
14
- providedIn: 'root',
15
- }]
16
- }] });
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QtbWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItd3JhcHBlci9zcmMvdG9hc3QtbWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU0zQyxNQUFNLE9BQU8sWUFBWTtJQUNoQixVQUFVLENBQUMsT0FBcUI7UUFDckMsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsbUJBQW1CLENBRTVELENBQUM7UUFDRixjQUFjLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ2hHLENBQUM7dUdBTlUsWUFBWTsyR0FBWixZQUFZLGNBRlgsTUFBTTs7MkZBRVAsWUFBWTtrQkFIeEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgdHlwZSB7IFRvYXN0TWVzc2FnZSB9IGZyb20gJy4vcHVibGljLWFwaSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBUb2FzdE1hbmFnZXIge1xuICBwdWJsaWMgYWRkTWVzc2FnZShtZXNzYWdlOiBUb2FzdE1lc3NhZ2UpOiB2b2lkIHtcbiAgICBjb25zdCB0b2FzdCA9IGRvY3VtZW50LmJvZHkucXVlcnlTZWxlY3RvcigncC10b2FzdCxbcC10b2FzdF0nKSBhcyBIVE1MRWxlbWVudCAmIHtcbiAgICAgIGFkZE1lc3NhZ2UobWVzc2FnZTogVG9hc3RNZXNzYWdlKTogdm9pZDtcbiAgICB9O1xuICAgIGN1c3RvbUVsZW1lbnRzLndoZW5EZWZpbmVkKHRvYXN0LnRhZ05hbWUudG9Mb3dlckNhc2UoKSkudGhlbigoKSA9PiB0b2FzdC5hZGRNZXNzYWdlKG1lc3NhZ2UpKTtcbiAgfVxufVxuIl19
package/esm2022/utils.mjs DELETED
@@ -1,44 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, inject, InjectionToken, } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export const THEME_TOKEN = new InjectionToken('pdsTheme');
4
- export class BaseComponent {
5
- el;
6
- constructor(cdr, elementRef) {
7
- cdr.detach();
8
- this.el = elementRef.nativeElement;
9
- }
10
- ngOnChanges(props) {
11
- for (const prop in props) {
12
- this.el[prop] = props[prop].currentValue;
13
- }
14
- }
15
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BaseComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
16
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.0", type: BaseComponent, selector: "ng-component", usesOnChanges: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
17
- }
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BaseComponent, decorators: [{
19
- type: Component,
20
- args: [{
21
- template: '',
22
- changeDetection: ChangeDetectionStrategy.OnPush,
23
- }]
24
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }] });
25
- export class BaseComponentWithTheme extends BaseComponent {
26
- theme;
27
- themeSubscription = inject(THEME_TOKEN).subscribe((theme) => {
28
- this.el.theme = this.theme || theme;
29
- });
30
- ngOnDestroy() {
31
- // need to manually unsubscribe or otherwise subscription is still active even after unmount
32
- // https://rafaelneto.dev/en/blog/unsubscribing-behaviorsubject-observable-angular/
33
- this.themeSubscription.unsubscribe();
34
- }
35
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BaseComponentWithTheme, deps: null, target: i0.ɵɵFactoryTarget.Component });
36
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.0", type: BaseComponentWithTheme, selector: "ng-component", usesInheritance: true, ngImport: i0, template: '', isInline: true });
37
- }
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BaseComponentWithTheme, decorators: [{
39
- type: Component,
40
- args: [{
41
- template: '',
42
- }]
43
- }] });
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXdyYXBwZXIvc3JjL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUVULE1BQU0sRUFDTixjQUFjLEdBR2YsTUFBTSxlQUFlLENBQUM7O0FBSXZCLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxJQUFJLGNBQWMsQ0FBeUIsVUFBVSxDQUFDLENBQUM7QUFNbEYsTUFBTSxPQUFnQixhQUFhO0lBQ3ZCLEVBQUUsQ0FBYztJQUUxQixZQUFZLEdBQXNCLEVBQUUsVUFBc0I7UUFDeEQsR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2IsSUFBSSxDQUFDLEVBQUUsR0FBRyxVQUFVLENBQUMsYUFBYSxDQUFDO0lBQ3JDLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBc0Y7UUFDaEcsS0FBSyxNQUFNLElBQUksSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxZQUFZLENBQUM7UUFDM0MsQ0FBQztJQUNILENBQUM7dUdBWm1CLGFBQWE7MkZBQWIsYUFBYSx5RUFIdkIsRUFBRTs7MkZBR1EsYUFBYTtrQkFKbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsRUFBRTtvQkFDWixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQ7O0FBbUJELE1BQU0sT0FBZ0Isc0JBQXVCLFNBQVEsYUFBYTtJQUNoRSxLQUFLLENBQVM7SUFDTixpQkFBaUIsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7UUFDakUsSUFBSSxDQUFDLEVBQXFDLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLElBQUksS0FBSyxDQUFDO0lBQzFFLENBQUMsQ0FBQyxDQUFDO0lBRUgsV0FBVztRQUNULDRGQUE0RjtRQUM1RixtRkFBbUY7UUFDbkYsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3ZDLENBQUM7dUdBVm1CLHNCQUFzQjsyRkFBdEIsc0JBQXNCLDJFQUZoQyxFQUFFOzsyRkFFUSxzQkFBc0I7a0JBSDNDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLEVBQUU7aUJBQ2IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgaW5qZWN0LFxuICBJbmplY3Rpb25Ub2tlbixcbiAgdHlwZSBPbkNoYW5nZXMsXG4gIHR5cGUgT25EZXN0cm95LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHR5cGUgeyBUaGVtZSB9IGZyb20gJy4vbGliL3R5cGVzJztcblxuZXhwb3J0IGNvbnN0IFRIRU1FX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPEJlaGF2aW9yU3ViamVjdDxUaGVtZT4+KCdwZHNUaGVtZScpO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6ICcnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG5cbiAgY29uc3RydWN0b3IoY2RyOiBDaGFuZ2VEZXRlY3RvclJlZiwgZWxlbWVudFJlZjogRWxlbWVudFJlZikge1xuICAgIGNkci5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgbmdPbkNoYW5nZXMocHJvcHM6IFJlY29yZDxzdHJpbmcsIHsgcHJldmlvdXNWYWx1ZTogYW55OyBjdXJyZW50VmFsdWU6IGFueTsgZmlyc3RDaGFuZ2U6IGJvb2xlYW4gfT4pOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IHByb3AgaW4gcHJvcHMpIHtcbiAgICAgIHRoaXMuZWxbcHJvcF0gPSBwcm9wc1twcm9wXS5jdXJyZW50VmFsdWU7XG4gICAgfVxuICB9XG59XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZTogJycsXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VDb21wb25lbnRXaXRoVGhlbWUgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgdGhlbWU/OiBUaGVtZTtcbiAgcHJpdmF0ZSB0aGVtZVN1YnNjcmlwdGlvbiA9IGluamVjdChUSEVNRV9UT0tFTikuc3Vic2NyaWJlKCh0aGVtZSkgPT4ge1xuICAgICh0aGlzLmVsIGFzIEhUTUxFbGVtZW50ICYgeyB0aGVtZTogVGhlbWUgfSkudGhlbWUgPSB0aGlzLnRoZW1lIHx8IHRoZW1lO1xuICB9KTtcblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAvLyBuZWVkIHRvIG1hbnVhbGx5IHVuc3Vic2NyaWJlIG9yIG90aGVyd2lzZSBzdWJzY3JpcHRpb24gaXMgc3RpbGwgYWN0aXZlIGV2ZW4gYWZ0ZXIgdW5tb3VudFxuICAgIC8vIGh0dHBzOi8vcmFmYWVsbmV0by5kZXYvZW4vYmxvZy91bnN1YnNjcmliaW5nLWJlaGF2aW9yc3ViamVjdC1vYnNlcnZhYmxlLWFuZ3VsYXIvXG4gICAgdGhpcy50aGVtZVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iXX0=