@testgorilla/tgo-ui 2.23.55 → 2.24.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 (82) hide show
  1. package/components/alert-banner/alert-banner.component.d.ts +3 -13
  2. package/components/autocomplete/autocomplete.component.d.ts +3 -12
  3. package/components/button/button.component.d.ts +3 -12
  4. package/components/checkbox/checkbox.component.d.ts +3 -12
  5. package/components/checklist/checklist.component.d.ts +60 -0
  6. package/components/checklist/checklist.model.d.ts +7 -0
  7. package/components/datepicker/datepicker.component.d.ts +3 -12
  8. package/components/dialog/dialog.component.d.ts +3 -12
  9. package/components/dropdown/dropdown.component.d.ts +3 -12
  10. package/components/empty-state/empty-state.component.d.ts +3 -11
  11. package/components/field/field.component.d.ts +3 -12
  12. package/components/file-upload/file-upload.component.d.ts +3 -12
  13. package/components/icon/icon.config.d.ts +1 -1
  14. package/components/multi-input/multi-input.component.d.ts +3 -12
  15. package/components/navbar/mobile-navbar-side-sheet/mobile-navbar-side-sheet.component.d.ts +1 -2
  16. package/components/navbar/navbar.component.d.ts +3 -12
  17. package/components/overflow-menu/overflow-menu.component.d.ts +3 -12
  18. package/components/page-header/page-header.component.d.ts +3 -12
  19. package/components/password-criteria/password.component.d.ts +3 -12
  20. package/components/password-strength/password-strength.component.d.ts +3 -12
  21. package/components/phone-input/phone-input.component.d.ts +3 -12
  22. package/components/progress-bar/progress-bar.component.d.ts +7 -9
  23. package/components/side-panel/side-panel.component.d.ts +3 -5
  24. package/components/side-sheet/side-sheet.component.d.ts +3 -12
  25. package/components/slider/slider.component.d.ts +3 -12
  26. package/components/snackbar/snackbar.component.d.ts +3 -12
  27. package/components/spinner/spinner.component.d.ts +3 -12
  28. package/components/spinner/spinner.module.d.ts +1 -1
  29. package/components/stepper/stepper.component.d.ts +3 -12
  30. package/components/tag/tag.component.d.ts +3 -12
  31. package/components/toggle/toggle.component.d.ts +3 -12
  32. package/components/validation-error/validation-error.component.d.ts +2 -12
  33. package/esm2022/assets/i18n/en.json +2 -1
  34. package/esm2022/components/alert-banner/alert-banner.component.mjs +6 -28
  35. package/esm2022/components/autocomplete/autocomplete.component.mjs +6 -27
  36. package/esm2022/components/avatar/avatar.component.mjs +1 -1
  37. package/esm2022/components/button/button.component.mjs +5 -26
  38. package/esm2022/components/checkbox/checkbox.component.mjs +6 -27
  39. package/esm2022/components/checklist/checklist.component.mjs +133 -0
  40. package/esm2022/components/checklist/checklist.model.mjs +2 -0
  41. package/esm2022/components/confirm-dialog/confirm-dialog.component.mjs +5 -4
  42. package/esm2022/components/datepicker/datepicker.component.mjs +6 -27
  43. package/esm2022/components/dialog/dialog.component.mjs +5 -26
  44. package/esm2022/components/dropdown/dropdown.component.mjs +6 -27
  45. package/esm2022/components/empty-state/empty-state.component.mjs +5 -25
  46. package/esm2022/components/field/field.component.mjs +6 -27
  47. package/esm2022/components/file-upload/file-upload.component.mjs +6 -27
  48. package/esm2022/components/icon/icon.config.mjs +5 -1
  49. package/esm2022/components/multi-input/multi-input.component.mjs +6 -27
  50. package/esm2022/components/navbar/mobile-navbar-side-sheet/mobile-navbar-side-sheet.component.mjs +5 -8
  51. package/esm2022/components/navbar/navbar.component.mjs +6 -28
  52. package/esm2022/components/overflow-menu/overflow-menu.component.mjs +6 -27
  53. package/esm2022/components/page-header/page-header.component.mjs +5 -26
  54. package/esm2022/components/password-criteria/password.component.mjs +8 -29
  55. package/esm2022/components/password-strength/password-strength.component.mjs +5 -26
  56. package/esm2022/components/phone-input/phone-input.component.mjs +6 -27
  57. package/esm2022/components/progress-bar/progress-bar.component.mjs +10 -22
  58. package/esm2022/components/radial-progress/radial-progress.component.mjs +1 -1
  59. package/esm2022/components/side-panel/side-panel.component.mjs +8 -18
  60. package/esm2022/components/side-sheet/side-sheet.component.mjs +6 -27
  61. package/esm2022/components/slider/slider.component.mjs +6 -27
  62. package/esm2022/components/snackbar/snackbar.component.mjs +6 -27
  63. package/esm2022/components/spinner/spinner.component.mjs +5 -26
  64. package/esm2022/components/spinner/spinner.module.mjs +4 -4
  65. package/esm2022/components/stepper/stepper.component.mjs +5 -26
  66. package/esm2022/components/tag/tag.component.mjs +5 -26
  67. package/esm2022/components/toggle/toggle.component.mjs +5 -26
  68. package/esm2022/components/validation-error/validation-error.component.mjs +7 -28
  69. package/esm2022/pipes/ui-translate.pipe.mjs +19 -14
  70. package/esm2022/public-api.mjs +5 -3
  71. package/esm2022/utils/localization/language.service.mjs +12 -1
  72. package/fesm2022/testgorilla-tgo-ui.mjs +337 -674
  73. package/fesm2022/testgorilla-tgo-ui.mjs.map +1 -1
  74. package/package.json +1 -1
  75. package/pipes/ui-translate.pipe.d.ts +5 -1
  76. package/projects/tgo-canopy-ui/assets/i18n/en.json +2 -1
  77. package/projects/tgo-canopy-ui/assets/icons/rebrand/Circle-filled.svg +3 -0
  78. package/projects/tgo-canopy-ui/assets/icons/rebrand/Circle-in-line.svg +3 -0
  79. package/public-api.d.ts +3 -1
  80. package/utils/localization/language.service.d.ts +4 -0
  81. package/esm2022/tokens/app-lang.token.mjs +0 -3
  82. package/tokens/app-lang.token.d.ts +0 -2
@@ -1,19 +1,15 @@
1
1
  import { animate, style, transition, trigger } from '@angular/animations';
2
2
  import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Input, Output, ViewEncapsulation, forwardRef, Optional, Inject, ViewChild } from '@angular/core';
3
3
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
4
- import { LanguageService } from '../../utils/localization/language.service';
5
- import { CANOPY_UI_LANG } from '../../tokens/app-lang.token';
6
4
  import * as i0 from "@angular/core";
7
5
  import * as i1 from "@angular/common";
8
6
  import * as i2 from "../icon/icon.component";
9
7
  import * as i3 from "../progress-bar/progress-bar.component";
10
8
  import * as i4 from "../../directives/drag-drop.directive";
11
9
  import * as i5 from "../../pipes/ui-translate.pipe";
12
- import * as i6 from "../../utils/localization/language.model";
13
10
  export class FileUploadComponent {
14
- constructor(defaultAppTheme, appLang) {
11
+ constructor(defaultAppTheme) {
15
12
  this.defaultAppTheme = defaultAppTheme;
16
- this.appLang = appLang;
17
13
  this.class = 'ui-file-upload';
18
14
  /**
19
15
  * File upload disabled
@@ -29,13 +25,6 @@ export class FileUploadComponent {
29
25
  * @memberof FileUploadComponent
30
26
  */
31
27
  this.file = null;
32
- /**
33
- * The language to be used
34
- * @property language
35
- * @type {Language}
36
- * @memberof FileUploadComponent
37
- */
38
- this.language = LanguageService.defaultLanguage;
39
28
  /**
40
29
  * Color of the file upload.
41
30
  * Defaults to Test Gorilla primary color.
@@ -78,9 +67,6 @@ export class FileUploadComponent {
78
67
  if (defaultAppTheme) {
79
68
  this.applicationTheme = defaultAppTheme;
80
69
  }
81
- if (appLang) {
82
- this.language = appLang;
83
- }
84
70
  }
85
71
  ngOnInit() {
86
72
  this.browse = true;
@@ -175,14 +161,14 @@ export class FileUploadComponent {
175
161
  this.isCanceled = true;
176
162
  }
177
163
  }
178
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FileUploadComponent, deps: [{ token: 'CANOPYUI_DEFAULT_APPLICATION_THEME', optional: true }, { token: CANOPY_UI_LANG, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
179
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FileUploadComponent, selector: "ui-file-upload", inputs: { maxFileSizeMB: "maxFileSizeMB", minFileSizeMB: "minFileSizeMB", supportedFileTypes: "supportedFileTypes", uploadProgress: "uploadProgress", errors: "errors", disabled: "disabled", file: "file", language: "language", companyColor: "companyColor", applicationTheme: "applicationTheme", ariaLabel: "ariaLabel", ariaRequired: "ariaRequired" }, outputs: { OnDrop: "OnDrop" }, host: { properties: { "class": "this.class", "style.--color": "this.compColor" } }, providers: [
164
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FileUploadComponent, deps: [{ token: 'CANOPYUI_DEFAULT_APPLICATION_THEME', optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
165
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FileUploadComponent, selector: "ui-file-upload", inputs: { maxFileSizeMB: "maxFileSizeMB", minFileSizeMB: "minFileSizeMB", supportedFileTypes: "supportedFileTypes", uploadProgress: "uploadProgress", errors: "errors", disabled: "disabled", file: "file", companyColor: "companyColor", applicationTheme: "applicationTheme", ariaLabel: "ariaLabel", ariaRequired: "ariaRequired" }, outputs: { OnDrop: "OnDrop" }, host: { properties: { "class": "this.class", "style.--color": "this.compColor" } }, providers: [
180
166
  {
181
167
  provide: NG_VALUE_ACCESSOR,
182
168
  useExisting: forwardRef(() => FileUploadComponent),
183
169
  multi: true,
184
170
  },
185
- ], viewQueries: [{ propertyName: "fileDrop", first: true, predicate: ["fileDrop"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-container>\n <div\n class=\"upload-file-container\"\n uiDragDrop\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-required]=\"ariaRequired\"\n [attr.theme]=\"applicationTheme\"\n [ngClass]=\"{ 'upload-errors': !!errors || isMissedMinSize, 'upload-file-container-disabled': disabled }\"\n (fileDropped)=\"onFileDropped($event)\"\n [tabIndex]=\"0\"\n (keydown)=\"onKeydown($event)\"\n (click)=\"fileDrop.nativeElement.click()\"\n >\n <span style=\"position: absolute; left: -9999px;\" [attr.aria-live]=\"'polite'\">\n {{ success ? ('FILE_UPLOAD.FILE_UPLOADING_SUCCESS' | uiTranslate : language) : progress ? ('FILE_UPLOAD.UPLOADING' | uiTranslate : language) : '' }}\n </span>\n <div *ngIf=\"(browse && !(success && !!file && progress))\" [@inOutAnimation] class=\"upload-files\">\n <div class=\"upload-browse\">\n <ng-container [ngTemplateOutlet]=\"iconTpl\"></ng-container>\n\n <div class=\"errors\" *ngIf=\"!!errors || isMissedMinSize\" role=\"alert\">\n <ng-container *ngIf=\"!!errors\">\n <span *ngFor=\"let error of errors\"><ui-icon name=\"Error\" class=\"error-icon\"></ui-icon>\n {{ error }}</span>\n </ng-container>\n\n <span *ngIf=\"isMissedMinSize\">\n <ui-icon name=\"Error\" class=\"error-icon\"></ui-icon>\n {{ translationContext + 'MIN_SIZE_ERROR' | uiTranslate : language : { min: minFileSizeMB } }}\n </span>\n </div>\n <input\n [attr.aria-labelledby]=\"success || progress ? '' : 'drag-and-drop'\"\n [attr.aria-describedby]=\"'upload-supported-files'\"\n [tabIndex]=\"-1\"\n class=\"form-control\"\n #fileDrop\n type=\"file\"\n id=\"file\"\n [accept]=\"supportedFileTypes\"\n [disabled]=\"disabled\"\n (change)=\"onChangeUpload($event)\"\n />\n <label for=\"file\" class=\"transparent\">{{ !!file && success ? '' : (translationContext + 'CHOOSE_FILE') | uiTranslate : language }}</label>\n <p\n *ngIf=\"applicationTheme === 'classic'; else rebrandedDnDCopyTpl\">{{ (translationContext + 'DRAG_AND_DROP_OR') | uiTranslate : language }}\n <span\n class=\"semibold\"> {{ (translationContext + 'BROWSE') | uiTranslate : language | lowercase }}</span> {{ (translationContext + 'YOUR_FILES') | uiTranslate : language }}\n </p>\n <span class=\"upload-text\">{{ maxFileSizeMB }}{{ (translationContext + 'MAX_SIZE') | uiTranslate : language }}</span>\n <span *ngIf=\"minFileSizeMB\" class=\"upload-text\">{{ minFileSizeMB }}{{ (translationContext + 'MIN_SIZE') | uiTranslate : language }}</span>\n </div>\n </div>\n <div class=\"upload-change\" [@inOutAnimationChange] *ngIf=\"!!success && !!file && !!progress\">\n <ng-container [ngTemplateOutlet]=\"iconTpl\"></ng-container>\n <input\n [tabIndex]=\"-1\"\n [attr.aria-labelledby]=\"success || progress ? '' : 'drag-and-drop'\"\n [attr.aria-describedby]=\"success || progress ? '' : 'supported-file-types'\"\n class=\"form-control\"\n #fileDrop\n type=\"file\"\n id=\"fileTest\"\n [accept]=\"supportedFileTypes\"\n (change)=\"onChangeUpload($event)\"\n [disabled]=\"disabled\"\n />\n <label for=\"file\" class=\"transparent\">{{ !!file && success ? '' : (translationContext + 'CHOOSE_FILE') | uiTranslate : language }}</label>\n <p\n *ngIf=\"applicationTheme === 'classic'; else rebrandedDnDCopyTpl\">{{ (translationContext + 'DRAG_AND_DROP_OR') | uiTranslate : language }}&nbsp;<span\n class=\"semibold\">{{ (translationContext + 'CHANGE') | uiTranslate : language | lowercase }}</span> {{ (translationContext + 'YOUR_FILES') | uiTranslate : language }}\n </p>\n <span class=\"upload-text\"\n ><strong>{{ file.name }}</strong></span\n >\n </div>\n <div class=\"upload-progress\" [@inOutAnimationProgress] *ngIf=\"!!progress && !!file && !success\">\n <p>{{ file.name }}</p>\n <ui-progress-bar [progress]=\"uploadProgress\"\n [companyColor]=\"compColor\"\n [applicationTheme]=\"applicationTheme\"></ui-progress-bar>\n <p class=\"upload-text\">\n {{ (translationContext + 'UPLOADING') | uiTranslate : language }} <span>{{ uploadProgress }}</span\n >%\n </p>\n </div>\n\n <ng-template #iconTpl>\n <ui-icon *ngIf=\"applicationTheme === 'classic'; else rebrandedIconTpl\" class=\"upload-icon\"\n name=\"File-upload\"></ui-icon>\n <ng-template #rebrandedIconTpl>\n <ui-icon class=\"upload-icon\"\n name=\"Upload\"\n [size]=\"'24'\"\n [applicationTheme]=\"applicationTheme\"></ui-icon>\n </ng-template>\n </ng-template>\n <ng-template #rebrandedDnDCopyTpl>\n <p id=\"'drag-and-drop'\">{{ (translationContext + 'DRAG_AND_DROP') | uiTranslate : language }}</p>\n </ng-template>\n\n <div\n *ngIf=\"!!supportedFileTypes\"\n [attr.theme]=\"applicationTheme\"\n class=\"upload-supported-files\"\n id=\"upload-supported-files\">\n <span >{{ (translationContext + 'SUPPORTED_FILE_TYPES') | uiTranslate : language }}</span>{{ supportedFileTypes }}\n </div>\n </div>\n</ng-container>\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}.upload-file-container{border-radius:8px;border:1px dashed #888888;background:#fff;display:flex;justify-content:center;align-items:center;height:196px;flex-flow:column;position:relative;max-width:563px;cursor:pointer}.upload-file-container:focus-visible{outline-offset:2px;outline:2px solid #242424;animation:focus-ring-animation .4s forwards}@keyframes focus-ring-animation{0%{outline-width:4px}to{outline-width:2px}}.upload-file-container.upload-errors{border:1px dashed #cb7b7a}.upload-file-container .upload-files{display:flex;flex-flow:column;align-items:center;justify-content:center;width:100%;height:196px}.upload-file-container .upload-change,.upload-file-container .upload-browse{display:flex;flex-flow:column;align-items:center;justify-content:center;width:100%;position:relative;height:196px}.upload-file-container .upload-change ui-icon.upload-icon,.upload-file-container .upload-browse ui-icon.upload-icon{margin-bottom:16px}.upload-file-container .upload-change ui-icon.upload-icon mat-icon.size-16 svg,.upload-file-container .upload-browse ui-icon.upload-icon mat-icon.size-16 svg{width:32px;height:32px}.upload-file-container .upload-change input,.upload-file-container .upload-browse input{visibility:hidden;position:absolute;z-index:2;width:100%;height:100%;cursor:pointer}.upload-file-container .upload-change .upload-text,.upload-file-container .upload-browse .upload-text{margin-top:20px}.upload-file-container .upload-change p,.upload-file-container .upload-browse p{margin:0}.upload-file-container .upload-change p .semibold,.upload-file-container .upload-browse p .semibold{font-weight:400;text-decoration:underline;color:var(--color)}.upload-file-container .upload-change .errors,.upload-file-container .upload-browse .errors{width:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;margin-bottom:20px;font-size:12px;line-height:16px;color:#cb7b7a}.upload-file-container .upload-change .errors span,.upload-file-container .upload-browse .errors span{display:flex;align-items:center;margin-bottom:5px}.upload-file-container .upload-change .errors span:last-child,.upload-file-container .upload-browse .errors span:last-child{margin-bottom:0}.upload-file-container .upload-change .errors .error-icon,.upload-file-container .upload-browse .errors .error-icon{margin-right:4px}.upload-file-container .upload-change .errors .error-icon svg,.upload-file-container .upload-browse .errors .error-icon svg{color:#cb7b7a}.upload-file-container .upload-change .errors .error-icon mat-icon.size-16 svg,.upload-file-container .upload-browse .errors .error-icon mat-icon.size-16 svg{width:16px;height:16px}.upload-file-container .upload-progress{padding:0 32px;width:100%}.upload-file-container .upload-text{text-align:right}.upload-file-container[theme=dark],.upload-file-container[theme=light]{border-radius:10px;border-color:#242424}.upload-file-container[theme=dark].upload-file-container-disabled,.upload-file-container[theme=light].upload-file-container-disabled{border-color:#919191;color:#919191;background-color:#f4f4f4}.upload-file-container[theme=dark].upload-file-container-disabled .upload-icon svg,.upload-file-container[theme=light].upload-file-container-disabled .upload-icon svg{color:#919191}.upload-file-container[theme=dark].upload-errors,.upload-file-container[theme=light].upload-errors{border-color:#e02800}.upload-file-container[theme=dark]:not(.upload-file-container-disabled):hover,.upload-file-container[theme=light]:not(.upload-file-container-disabled):hover{background:#f4f4f4;border-style:solid}.upload-file-container[theme=dark]:not(.upload-file-container-disabled):active,.upload-file-container[theme=light]:not(.upload-file-container-disabled):active{background:#f4f4f4;transform:scale(.98)}.upload-file-container[theme=dark] .errors,.upload-file-container[theme=light] .errors{color:#e02800;font-size:14px}.upload-file-container[theme=dark] .errors .error-icon svg,.upload-file-container[theme=light] .errors .error-icon svg{color:#e02800}.upload-supported-files{left:0;position:absolute;top:100%;font-size:12px;line-height:16px;margin-top:8px;width:100%}.upload-supported-files[theme=dark],.upload-supported-files[theme=light]{max-width:563px}.upload-supported-files span{font-weight:700;margin-right:5px}@media (max-width: 600px){.upload-file-container,.upload-supported-files[theme=dark],.upload-supported-files[theme=light]{max-width:100%}}.transparent{opacity:0}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color", "filled", "applicationTheme", "useFullIconName"] }, { kind: "component", type: i3.ProgressBarComponent, selector: "ui-progress-bar", inputs: ["companyColor", "progress", "mode", "buffer", "applicationTheme", "ariaLabel", "ariaDescribedBy", "language"] }, { kind: "directive", type: i4.DragDropDirective, selector: "[uiDragDrop]", outputs: ["fileDropped"] }, { kind: "pipe", type: i1.LowerCasePipe, name: "lowercase" }, { kind: "pipe", type: i5.UiTranslatePipe, name: "uiTranslate" }], animations: [
171
+ ], viewQueries: [{ propertyName: "fileDrop", first: true, predicate: ["fileDrop"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-container>\n <div\n class=\"upload-file-container\"\n uiDragDrop\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-required]=\"ariaRequired\"\n [attr.theme]=\"applicationTheme\"\n [ngClass]=\"{ 'upload-errors': !!errors || isMissedMinSize, 'upload-file-container-disabled': disabled }\"\n (fileDropped)=\"onFileDropped($event)\"\n [tabIndex]=\"0\"\n (keydown)=\"onKeydown($event)\"\n (click)=\"fileDrop.nativeElement.click()\"\n >\n <span style=\"position: absolute; left: -9999px;\" [attr.aria-live]=\"'polite'\">\n {{ success ? ('FILE_UPLOAD.FILE_UPLOADING_SUCCESS' | uiTranslate | async) : progress ? ('FILE_UPLOAD.UPLOADING' | uiTranslate | async) : '' }}\n </span>\n <div *ngIf=\"(browse && !(success && !!file && progress))\" [@inOutAnimation] class=\"upload-files\">\n <div class=\"upload-browse\">\n <ng-container [ngTemplateOutlet]=\"iconTpl\"></ng-container>\n\n <div class=\"errors\" *ngIf=\"!!errors || isMissedMinSize\" role=\"alert\">\n <ng-container *ngIf=\"!!errors\">\n <span *ngFor=\"let error of errors\"><ui-icon name=\"Error\" class=\"error-icon\"></ui-icon>\n {{ error }}</span>\n </ng-container>\n\n <span *ngIf=\"isMissedMinSize\">\n <ui-icon name=\"Error\" class=\"error-icon\"></ui-icon>\n {{ translationContext + 'MIN_SIZE_ERROR' | uiTranslate : { min: minFileSizeMB } | async }}\n </span>\n </div>\n <input\n [attr.aria-labelledby]=\"success || progress ? '' : 'drag-and-drop'\"\n [attr.aria-describedby]=\"'upload-supported-files'\"\n [tabIndex]=\"-1\"\n class=\"form-control\"\n #fileDrop\n type=\"file\"\n id=\"file\"\n [accept]=\"supportedFileTypes\"\n [disabled]=\"disabled\"\n (change)=\"onChangeUpload($event)\"\n />\n <label for=\"file\" class=\"transparent\">{{ !!file && success ? '' : (translationContext + 'CHOOSE_FILE') | uiTranslate | async }}</label>\n <p\n *ngIf=\"applicationTheme === 'classic'; else rebrandedDnDCopyTpl\">{{ (translationContext + 'DRAG_AND_DROP_OR') | uiTranslate | async }}\n <span\n class=\"semibold\"> {{ (translationContext + 'BROWSE') | uiTranslate | async | lowercase }}</span> {{ (translationContext + 'YOUR_FILES') | uiTranslate | async }}\n </p>\n <span class=\"upload-text\">{{ maxFileSizeMB }}{{ (translationContext + 'MAX_SIZE') | uiTranslate | async }}</span>\n <span *ngIf=\"minFileSizeMB\" class=\"upload-text\">{{ minFileSizeMB }}{{ (translationContext + 'MIN_SIZE') | uiTranslate | async }}</span>\n </div>\n </div>\n <div class=\"upload-change\" [@inOutAnimationChange] *ngIf=\"!!success && !!file && !!progress\">\n <ng-container [ngTemplateOutlet]=\"iconTpl\"></ng-container>\n <input\n [tabIndex]=\"-1\"\n [attr.aria-labelledby]=\"success || progress ? '' : 'drag-and-drop'\"\n [attr.aria-describedby]=\"success || progress ? '' : 'supported-file-types'\"\n class=\"form-control\"\n #fileDrop\n type=\"file\"\n id=\"fileTest\"\n [accept]=\"supportedFileTypes\"\n (change)=\"onChangeUpload($event)\"\n [disabled]=\"disabled\"\n />\n <label for=\"file\" class=\"transparent\">{{ !!file && success ? '' : (translationContext + 'CHOOSE_FILE') | uiTranslate | async }}</label>\n <p\n *ngIf=\"applicationTheme === 'classic'; else rebrandedDnDCopyTpl\">{{ (translationContext + 'DRAG_AND_DROP_OR') | uiTranslate | async }}&nbsp;<span\n class=\"semibold\">{{ (translationContext + 'CHANGE') | uiTranslate | async | lowercase }}</span> {{ (translationContext + 'YOUR_FILES') | uiTranslate | async }}\n </p>\n <span class=\"upload-text\"\n ><strong>{{ file.name }}</strong></span\n >\n </div>\n <div class=\"upload-progress\" [@inOutAnimationProgress] *ngIf=\"!!progress && !!file && !success\">\n <p>{{ file.name }}</p>\n <ui-progress-bar [progress]=\"uploadProgress\"\n [companyColor]=\"compColor\"\n [applicationTheme]=\"applicationTheme\"></ui-progress-bar>\n <p class=\"upload-text\">\n {{ (translationContext + 'UPLOADING') | uiTranslate | async }} <span>{{ uploadProgress }}</span\n >%\n </p>\n </div>\n\n <ng-template #iconTpl>\n <ui-icon *ngIf=\"applicationTheme === 'classic'; else rebrandedIconTpl\" class=\"upload-icon\"\n name=\"File-upload\"></ui-icon>\n <ng-template #rebrandedIconTpl>\n <ui-icon class=\"upload-icon\"\n name=\"Upload\"\n [size]=\"'24'\"\n [applicationTheme]=\"applicationTheme\"></ui-icon>\n </ng-template>\n </ng-template>\n <ng-template #rebrandedDnDCopyTpl>\n <p id=\"'drag-and-drop'\">{{ (translationContext + 'DRAG_AND_DROP') | uiTranslate | async }}</p>\n </ng-template>\n\n <div\n *ngIf=\"!!supportedFileTypes\"\n [attr.theme]=\"applicationTheme\"\n class=\"upload-supported-files\"\n id=\"upload-supported-files\">\n <span >{{ (translationContext + 'SUPPORTED_FILE_TYPES') | uiTranslate | async }}</span>{{ supportedFileTypes }}\n </div>\n </div>\n</ng-container>\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}.upload-file-container{border-radius:8px;border:1px dashed #888888;background:#fff;display:flex;justify-content:center;align-items:center;height:196px;flex-flow:column;position:relative;max-width:563px;cursor:pointer}.upload-file-container:focus-visible{outline-offset:2px;outline:2px solid #242424;animation:focus-ring-animation .4s forwards}@keyframes focus-ring-animation{0%{outline-width:4px}to{outline-width:2px}}.upload-file-container.upload-errors{border:1px dashed #cb7b7a}.upload-file-container .upload-files{display:flex;flex-flow:column;align-items:center;justify-content:center;width:100%;height:196px}.upload-file-container .upload-change,.upload-file-container .upload-browse{display:flex;flex-flow:column;align-items:center;justify-content:center;width:100%;position:relative;height:196px}.upload-file-container .upload-change ui-icon.upload-icon,.upload-file-container .upload-browse ui-icon.upload-icon{margin-bottom:16px}.upload-file-container .upload-change ui-icon.upload-icon mat-icon.size-16 svg,.upload-file-container .upload-browse ui-icon.upload-icon mat-icon.size-16 svg{width:32px;height:32px}.upload-file-container .upload-change input,.upload-file-container .upload-browse input{visibility:hidden;position:absolute;z-index:2;width:100%;height:100%;cursor:pointer}.upload-file-container .upload-change .upload-text,.upload-file-container .upload-browse .upload-text{margin-top:20px}.upload-file-container .upload-change p,.upload-file-container .upload-browse p{margin:0}.upload-file-container .upload-change p .semibold,.upload-file-container .upload-browse p .semibold{font-weight:400;text-decoration:underline;color:var(--color)}.upload-file-container .upload-change .errors,.upload-file-container .upload-browse .errors{width:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;margin-bottom:20px;font-size:12px;line-height:16px;color:#cb7b7a}.upload-file-container .upload-change .errors span,.upload-file-container .upload-browse .errors span{display:flex;align-items:center;margin-bottom:5px}.upload-file-container .upload-change .errors span:last-child,.upload-file-container .upload-browse .errors span:last-child{margin-bottom:0}.upload-file-container .upload-change .errors .error-icon,.upload-file-container .upload-browse .errors .error-icon{margin-right:4px}.upload-file-container .upload-change .errors .error-icon svg,.upload-file-container .upload-browse .errors .error-icon svg{color:#cb7b7a}.upload-file-container .upload-change .errors .error-icon mat-icon.size-16 svg,.upload-file-container .upload-browse .errors .error-icon mat-icon.size-16 svg{width:16px;height:16px}.upload-file-container .upload-progress{padding:0 32px;width:100%}.upload-file-container .upload-text{text-align:right}.upload-file-container[theme=dark],.upload-file-container[theme=light]{border-radius:10px;border-color:#242424}.upload-file-container[theme=dark].upload-file-container-disabled,.upload-file-container[theme=light].upload-file-container-disabled{border-color:#919191;color:#919191;background-color:#f4f4f4}.upload-file-container[theme=dark].upload-file-container-disabled .upload-icon svg,.upload-file-container[theme=light].upload-file-container-disabled .upload-icon svg{color:#919191}.upload-file-container[theme=dark].upload-errors,.upload-file-container[theme=light].upload-errors{border-color:#e02800}.upload-file-container[theme=dark]:not(.upload-file-container-disabled):hover,.upload-file-container[theme=light]:not(.upload-file-container-disabled):hover{background:#f4f4f4;border-style:solid}.upload-file-container[theme=dark]:not(.upload-file-container-disabled):active,.upload-file-container[theme=light]:not(.upload-file-container-disabled):active{background:#f4f4f4;transform:scale(.98)}.upload-file-container[theme=dark] .errors,.upload-file-container[theme=light] .errors{color:#e02800;font-size:14px}.upload-file-container[theme=dark] .errors .error-icon svg,.upload-file-container[theme=light] .errors .error-icon svg{color:#e02800}.upload-supported-files{left:0;position:absolute;top:100%;font-size:12px;line-height:16px;margin-top:8px;width:100%}.upload-supported-files[theme=dark],.upload-supported-files[theme=light]{max-width:563px}.upload-supported-files span{font-weight:700;margin-right:5px}@media (max-width: 600px){.upload-file-container,.upload-supported-files[theme=dark],.upload-supported-files[theme=light]{max-width:100%}}.transparent{opacity:0}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color", "filled", "applicationTheme", "useFullIconName"] }, { kind: "component", type: i3.ProgressBarComponent, selector: "ui-progress-bar", inputs: ["companyColor", "progress", "mode", "buffer", "applicationTheme", "ariaLabel", "ariaDescribedBy", "showPercentage"] }, { kind: "directive", type: i4.DragDropDirective, selector: "[uiDragDrop]", outputs: ["fileDropped"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.LowerCasePipe, name: "lowercase" }, { kind: "pipe", type: i5.UiTranslatePipe, name: "uiTranslate" }], animations: [
186
172
  trigger('inOutAnimation', [
187
173
  transition(':enter', [
188
174
  style({ opacity: 0, height: 0 }),
@@ -254,17 +240,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
254
240
  animate('0.2s ease-in', style({ opacity: 0, height: 0 }))
255
241
  ])
256
242
  ])
257
- ], template: "<ng-container>\n <div\n class=\"upload-file-container\"\n uiDragDrop\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-required]=\"ariaRequired\"\n [attr.theme]=\"applicationTheme\"\n [ngClass]=\"{ 'upload-errors': !!errors || isMissedMinSize, 'upload-file-container-disabled': disabled }\"\n (fileDropped)=\"onFileDropped($event)\"\n [tabIndex]=\"0\"\n (keydown)=\"onKeydown($event)\"\n (click)=\"fileDrop.nativeElement.click()\"\n >\n <span style=\"position: absolute; left: -9999px;\" [attr.aria-live]=\"'polite'\">\n {{ success ? ('FILE_UPLOAD.FILE_UPLOADING_SUCCESS' | uiTranslate : language) : progress ? ('FILE_UPLOAD.UPLOADING' | uiTranslate : language) : '' }}\n </span>\n <div *ngIf=\"(browse && !(success && !!file && progress))\" [@inOutAnimation] class=\"upload-files\">\n <div class=\"upload-browse\">\n <ng-container [ngTemplateOutlet]=\"iconTpl\"></ng-container>\n\n <div class=\"errors\" *ngIf=\"!!errors || isMissedMinSize\" role=\"alert\">\n <ng-container *ngIf=\"!!errors\">\n <span *ngFor=\"let error of errors\"><ui-icon name=\"Error\" class=\"error-icon\"></ui-icon>\n {{ error }}</span>\n </ng-container>\n\n <span *ngIf=\"isMissedMinSize\">\n <ui-icon name=\"Error\" class=\"error-icon\"></ui-icon>\n {{ translationContext + 'MIN_SIZE_ERROR' | uiTranslate : language : { min: minFileSizeMB } }}\n </span>\n </div>\n <input\n [attr.aria-labelledby]=\"success || progress ? '' : 'drag-and-drop'\"\n [attr.aria-describedby]=\"'upload-supported-files'\"\n [tabIndex]=\"-1\"\n class=\"form-control\"\n #fileDrop\n type=\"file\"\n id=\"file\"\n [accept]=\"supportedFileTypes\"\n [disabled]=\"disabled\"\n (change)=\"onChangeUpload($event)\"\n />\n <label for=\"file\" class=\"transparent\">{{ !!file && success ? '' : (translationContext + 'CHOOSE_FILE') | uiTranslate : language }}</label>\n <p\n *ngIf=\"applicationTheme === 'classic'; else rebrandedDnDCopyTpl\">{{ (translationContext + 'DRAG_AND_DROP_OR') | uiTranslate : language }}\n <span\n class=\"semibold\"> {{ (translationContext + 'BROWSE') | uiTranslate : language | lowercase }}</span> {{ (translationContext + 'YOUR_FILES') | uiTranslate : language }}\n </p>\n <span class=\"upload-text\">{{ maxFileSizeMB }}{{ (translationContext + 'MAX_SIZE') | uiTranslate : language }}</span>\n <span *ngIf=\"minFileSizeMB\" class=\"upload-text\">{{ minFileSizeMB }}{{ (translationContext + 'MIN_SIZE') | uiTranslate : language }}</span>\n </div>\n </div>\n <div class=\"upload-change\" [@inOutAnimationChange] *ngIf=\"!!success && !!file && !!progress\">\n <ng-container [ngTemplateOutlet]=\"iconTpl\"></ng-container>\n <input\n [tabIndex]=\"-1\"\n [attr.aria-labelledby]=\"success || progress ? '' : 'drag-and-drop'\"\n [attr.aria-describedby]=\"success || progress ? '' : 'supported-file-types'\"\n class=\"form-control\"\n #fileDrop\n type=\"file\"\n id=\"fileTest\"\n [accept]=\"supportedFileTypes\"\n (change)=\"onChangeUpload($event)\"\n [disabled]=\"disabled\"\n />\n <label for=\"file\" class=\"transparent\">{{ !!file && success ? '' : (translationContext + 'CHOOSE_FILE') | uiTranslate : language }}</label>\n <p\n *ngIf=\"applicationTheme === 'classic'; else rebrandedDnDCopyTpl\">{{ (translationContext + 'DRAG_AND_DROP_OR') | uiTranslate : language }}&nbsp;<span\n class=\"semibold\">{{ (translationContext + 'CHANGE') | uiTranslate : language | lowercase }}</span> {{ (translationContext + 'YOUR_FILES') | uiTranslate : language }}\n </p>\n <span class=\"upload-text\"\n ><strong>{{ file.name }}</strong></span\n >\n </div>\n <div class=\"upload-progress\" [@inOutAnimationProgress] *ngIf=\"!!progress && !!file && !success\">\n <p>{{ file.name }}</p>\n <ui-progress-bar [progress]=\"uploadProgress\"\n [companyColor]=\"compColor\"\n [applicationTheme]=\"applicationTheme\"></ui-progress-bar>\n <p class=\"upload-text\">\n {{ (translationContext + 'UPLOADING') | uiTranslate : language }} <span>{{ uploadProgress }}</span\n >%\n </p>\n </div>\n\n <ng-template #iconTpl>\n <ui-icon *ngIf=\"applicationTheme === 'classic'; else rebrandedIconTpl\" class=\"upload-icon\"\n name=\"File-upload\"></ui-icon>\n <ng-template #rebrandedIconTpl>\n <ui-icon class=\"upload-icon\"\n name=\"Upload\"\n [size]=\"'24'\"\n [applicationTheme]=\"applicationTheme\"></ui-icon>\n </ng-template>\n </ng-template>\n <ng-template #rebrandedDnDCopyTpl>\n <p id=\"'drag-and-drop'\">{{ (translationContext + 'DRAG_AND_DROP') | uiTranslate : language }}</p>\n </ng-template>\n\n <div\n *ngIf=\"!!supportedFileTypes\"\n [attr.theme]=\"applicationTheme\"\n class=\"upload-supported-files\"\n id=\"upload-supported-files\">\n <span >{{ (translationContext + 'SUPPORTED_FILE_TYPES') | uiTranslate : language }}</span>{{ supportedFileTypes }}\n </div>\n </div>\n</ng-container>\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}.upload-file-container{border-radius:8px;border:1px dashed #888888;background:#fff;display:flex;justify-content:center;align-items:center;height:196px;flex-flow:column;position:relative;max-width:563px;cursor:pointer}.upload-file-container:focus-visible{outline-offset:2px;outline:2px solid #242424;animation:focus-ring-animation .4s forwards}@keyframes focus-ring-animation{0%{outline-width:4px}to{outline-width:2px}}.upload-file-container.upload-errors{border:1px dashed #cb7b7a}.upload-file-container .upload-files{display:flex;flex-flow:column;align-items:center;justify-content:center;width:100%;height:196px}.upload-file-container .upload-change,.upload-file-container .upload-browse{display:flex;flex-flow:column;align-items:center;justify-content:center;width:100%;position:relative;height:196px}.upload-file-container .upload-change ui-icon.upload-icon,.upload-file-container .upload-browse ui-icon.upload-icon{margin-bottom:16px}.upload-file-container .upload-change ui-icon.upload-icon mat-icon.size-16 svg,.upload-file-container .upload-browse ui-icon.upload-icon mat-icon.size-16 svg{width:32px;height:32px}.upload-file-container .upload-change input,.upload-file-container .upload-browse input{visibility:hidden;position:absolute;z-index:2;width:100%;height:100%;cursor:pointer}.upload-file-container .upload-change .upload-text,.upload-file-container .upload-browse .upload-text{margin-top:20px}.upload-file-container .upload-change p,.upload-file-container .upload-browse p{margin:0}.upload-file-container .upload-change p .semibold,.upload-file-container .upload-browse p .semibold{font-weight:400;text-decoration:underline;color:var(--color)}.upload-file-container .upload-change .errors,.upload-file-container .upload-browse .errors{width:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;margin-bottom:20px;font-size:12px;line-height:16px;color:#cb7b7a}.upload-file-container .upload-change .errors span,.upload-file-container .upload-browse .errors span{display:flex;align-items:center;margin-bottom:5px}.upload-file-container .upload-change .errors span:last-child,.upload-file-container .upload-browse .errors span:last-child{margin-bottom:0}.upload-file-container .upload-change .errors .error-icon,.upload-file-container .upload-browse .errors .error-icon{margin-right:4px}.upload-file-container .upload-change .errors .error-icon svg,.upload-file-container .upload-browse .errors .error-icon svg{color:#cb7b7a}.upload-file-container .upload-change .errors .error-icon mat-icon.size-16 svg,.upload-file-container .upload-browse .errors .error-icon mat-icon.size-16 svg{width:16px;height:16px}.upload-file-container .upload-progress{padding:0 32px;width:100%}.upload-file-container .upload-text{text-align:right}.upload-file-container[theme=dark],.upload-file-container[theme=light]{border-radius:10px;border-color:#242424}.upload-file-container[theme=dark].upload-file-container-disabled,.upload-file-container[theme=light].upload-file-container-disabled{border-color:#919191;color:#919191;background-color:#f4f4f4}.upload-file-container[theme=dark].upload-file-container-disabled .upload-icon svg,.upload-file-container[theme=light].upload-file-container-disabled .upload-icon svg{color:#919191}.upload-file-container[theme=dark].upload-errors,.upload-file-container[theme=light].upload-errors{border-color:#e02800}.upload-file-container[theme=dark]:not(.upload-file-container-disabled):hover,.upload-file-container[theme=light]:not(.upload-file-container-disabled):hover{background:#f4f4f4;border-style:solid}.upload-file-container[theme=dark]:not(.upload-file-container-disabled):active,.upload-file-container[theme=light]:not(.upload-file-container-disabled):active{background:#f4f4f4;transform:scale(.98)}.upload-file-container[theme=dark] .errors,.upload-file-container[theme=light] .errors{color:#e02800;font-size:14px}.upload-file-container[theme=dark] .errors .error-icon svg,.upload-file-container[theme=light] .errors .error-icon svg{color:#e02800}.upload-supported-files{left:0;position:absolute;top:100%;font-size:12px;line-height:16px;margin-top:8px;width:100%}.upload-supported-files[theme=dark],.upload-supported-files[theme=light]{max-width:563px}.upload-supported-files span{font-weight:700;margin-right:5px}@media (max-width: 600px){.upload-file-container,.upload-supported-files[theme=dark],.upload-supported-files[theme=light]{max-width:100%}}.transparent{opacity:0}\n"] }]
243
+ ], template: "<ng-container>\n <div\n class=\"upload-file-container\"\n uiDragDrop\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-required]=\"ariaRequired\"\n [attr.theme]=\"applicationTheme\"\n [ngClass]=\"{ 'upload-errors': !!errors || isMissedMinSize, 'upload-file-container-disabled': disabled }\"\n (fileDropped)=\"onFileDropped($event)\"\n [tabIndex]=\"0\"\n (keydown)=\"onKeydown($event)\"\n (click)=\"fileDrop.nativeElement.click()\"\n >\n <span style=\"position: absolute; left: -9999px;\" [attr.aria-live]=\"'polite'\">\n {{ success ? ('FILE_UPLOAD.FILE_UPLOADING_SUCCESS' | uiTranslate | async) : progress ? ('FILE_UPLOAD.UPLOADING' | uiTranslate | async) : '' }}\n </span>\n <div *ngIf=\"(browse && !(success && !!file && progress))\" [@inOutAnimation] class=\"upload-files\">\n <div class=\"upload-browse\">\n <ng-container [ngTemplateOutlet]=\"iconTpl\"></ng-container>\n\n <div class=\"errors\" *ngIf=\"!!errors || isMissedMinSize\" role=\"alert\">\n <ng-container *ngIf=\"!!errors\">\n <span *ngFor=\"let error of errors\"><ui-icon name=\"Error\" class=\"error-icon\"></ui-icon>\n {{ error }}</span>\n </ng-container>\n\n <span *ngIf=\"isMissedMinSize\">\n <ui-icon name=\"Error\" class=\"error-icon\"></ui-icon>\n {{ translationContext + 'MIN_SIZE_ERROR' | uiTranslate : { min: minFileSizeMB } | async }}\n </span>\n </div>\n <input\n [attr.aria-labelledby]=\"success || progress ? '' : 'drag-and-drop'\"\n [attr.aria-describedby]=\"'upload-supported-files'\"\n [tabIndex]=\"-1\"\n class=\"form-control\"\n #fileDrop\n type=\"file\"\n id=\"file\"\n [accept]=\"supportedFileTypes\"\n [disabled]=\"disabled\"\n (change)=\"onChangeUpload($event)\"\n />\n <label for=\"file\" class=\"transparent\">{{ !!file && success ? '' : (translationContext + 'CHOOSE_FILE') | uiTranslate | async }}</label>\n <p\n *ngIf=\"applicationTheme === 'classic'; else rebrandedDnDCopyTpl\">{{ (translationContext + 'DRAG_AND_DROP_OR') | uiTranslate | async }}\n <span\n class=\"semibold\"> {{ (translationContext + 'BROWSE') | uiTranslate | async | lowercase }}</span> {{ (translationContext + 'YOUR_FILES') | uiTranslate | async }}\n </p>\n <span class=\"upload-text\">{{ maxFileSizeMB }}{{ (translationContext + 'MAX_SIZE') | uiTranslate | async }}</span>\n <span *ngIf=\"minFileSizeMB\" class=\"upload-text\">{{ minFileSizeMB }}{{ (translationContext + 'MIN_SIZE') | uiTranslate | async }}</span>\n </div>\n </div>\n <div class=\"upload-change\" [@inOutAnimationChange] *ngIf=\"!!success && !!file && !!progress\">\n <ng-container [ngTemplateOutlet]=\"iconTpl\"></ng-container>\n <input\n [tabIndex]=\"-1\"\n [attr.aria-labelledby]=\"success || progress ? '' : 'drag-and-drop'\"\n [attr.aria-describedby]=\"success || progress ? '' : 'supported-file-types'\"\n class=\"form-control\"\n #fileDrop\n type=\"file\"\n id=\"fileTest\"\n [accept]=\"supportedFileTypes\"\n (change)=\"onChangeUpload($event)\"\n [disabled]=\"disabled\"\n />\n <label for=\"file\" class=\"transparent\">{{ !!file && success ? '' : (translationContext + 'CHOOSE_FILE') | uiTranslate | async }}</label>\n <p\n *ngIf=\"applicationTheme === 'classic'; else rebrandedDnDCopyTpl\">{{ (translationContext + 'DRAG_AND_DROP_OR') | uiTranslate | async }}&nbsp;<span\n class=\"semibold\">{{ (translationContext + 'CHANGE') | uiTranslate | async | lowercase }}</span> {{ (translationContext + 'YOUR_FILES') | uiTranslate | async }}\n </p>\n <span class=\"upload-text\"\n ><strong>{{ file.name }}</strong></span\n >\n </div>\n <div class=\"upload-progress\" [@inOutAnimationProgress] *ngIf=\"!!progress && !!file && !success\">\n <p>{{ file.name }}</p>\n <ui-progress-bar [progress]=\"uploadProgress\"\n [companyColor]=\"compColor\"\n [applicationTheme]=\"applicationTheme\"></ui-progress-bar>\n <p class=\"upload-text\">\n {{ (translationContext + 'UPLOADING') | uiTranslate | async }} <span>{{ uploadProgress }}</span\n >%\n </p>\n </div>\n\n <ng-template #iconTpl>\n <ui-icon *ngIf=\"applicationTheme === 'classic'; else rebrandedIconTpl\" class=\"upload-icon\"\n name=\"File-upload\"></ui-icon>\n <ng-template #rebrandedIconTpl>\n <ui-icon class=\"upload-icon\"\n name=\"Upload\"\n [size]=\"'24'\"\n [applicationTheme]=\"applicationTheme\"></ui-icon>\n </ng-template>\n </ng-template>\n <ng-template #rebrandedDnDCopyTpl>\n <p id=\"'drag-and-drop'\">{{ (translationContext + 'DRAG_AND_DROP') | uiTranslate | async }}</p>\n </ng-template>\n\n <div\n *ngIf=\"!!supportedFileTypes\"\n [attr.theme]=\"applicationTheme\"\n class=\"upload-supported-files\"\n id=\"upload-supported-files\">\n <span >{{ (translationContext + 'SUPPORTED_FILE_TYPES') | uiTranslate | async }}</span>{{ supportedFileTypes }}\n </div>\n </div>\n</ng-container>\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}.upload-file-container{border-radius:8px;border:1px dashed #888888;background:#fff;display:flex;justify-content:center;align-items:center;height:196px;flex-flow:column;position:relative;max-width:563px;cursor:pointer}.upload-file-container:focus-visible{outline-offset:2px;outline:2px solid #242424;animation:focus-ring-animation .4s forwards}@keyframes focus-ring-animation{0%{outline-width:4px}to{outline-width:2px}}.upload-file-container.upload-errors{border:1px dashed #cb7b7a}.upload-file-container .upload-files{display:flex;flex-flow:column;align-items:center;justify-content:center;width:100%;height:196px}.upload-file-container .upload-change,.upload-file-container .upload-browse{display:flex;flex-flow:column;align-items:center;justify-content:center;width:100%;position:relative;height:196px}.upload-file-container .upload-change ui-icon.upload-icon,.upload-file-container .upload-browse ui-icon.upload-icon{margin-bottom:16px}.upload-file-container .upload-change ui-icon.upload-icon mat-icon.size-16 svg,.upload-file-container .upload-browse ui-icon.upload-icon mat-icon.size-16 svg{width:32px;height:32px}.upload-file-container .upload-change input,.upload-file-container .upload-browse input{visibility:hidden;position:absolute;z-index:2;width:100%;height:100%;cursor:pointer}.upload-file-container .upload-change .upload-text,.upload-file-container .upload-browse .upload-text{margin-top:20px}.upload-file-container .upload-change p,.upload-file-container .upload-browse p{margin:0}.upload-file-container .upload-change p .semibold,.upload-file-container .upload-browse p .semibold{font-weight:400;text-decoration:underline;color:var(--color)}.upload-file-container .upload-change .errors,.upload-file-container .upload-browse .errors{width:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;margin-bottom:20px;font-size:12px;line-height:16px;color:#cb7b7a}.upload-file-container .upload-change .errors span,.upload-file-container .upload-browse .errors span{display:flex;align-items:center;margin-bottom:5px}.upload-file-container .upload-change .errors span:last-child,.upload-file-container .upload-browse .errors span:last-child{margin-bottom:0}.upload-file-container .upload-change .errors .error-icon,.upload-file-container .upload-browse .errors .error-icon{margin-right:4px}.upload-file-container .upload-change .errors .error-icon svg,.upload-file-container .upload-browse .errors .error-icon svg{color:#cb7b7a}.upload-file-container .upload-change .errors .error-icon mat-icon.size-16 svg,.upload-file-container .upload-browse .errors .error-icon mat-icon.size-16 svg{width:16px;height:16px}.upload-file-container .upload-progress{padding:0 32px;width:100%}.upload-file-container .upload-text{text-align:right}.upload-file-container[theme=dark],.upload-file-container[theme=light]{border-radius:10px;border-color:#242424}.upload-file-container[theme=dark].upload-file-container-disabled,.upload-file-container[theme=light].upload-file-container-disabled{border-color:#919191;color:#919191;background-color:#f4f4f4}.upload-file-container[theme=dark].upload-file-container-disabled .upload-icon svg,.upload-file-container[theme=light].upload-file-container-disabled .upload-icon svg{color:#919191}.upload-file-container[theme=dark].upload-errors,.upload-file-container[theme=light].upload-errors{border-color:#e02800}.upload-file-container[theme=dark]:not(.upload-file-container-disabled):hover,.upload-file-container[theme=light]:not(.upload-file-container-disabled):hover{background:#f4f4f4;border-style:solid}.upload-file-container[theme=dark]:not(.upload-file-container-disabled):active,.upload-file-container[theme=light]:not(.upload-file-container-disabled):active{background:#f4f4f4;transform:scale(.98)}.upload-file-container[theme=dark] .errors,.upload-file-container[theme=light] .errors{color:#e02800;font-size:14px}.upload-file-container[theme=dark] .errors .error-icon svg,.upload-file-container[theme=light] .errors .error-icon svg{color:#e02800}.upload-supported-files{left:0;position:absolute;top:100%;font-size:12px;line-height:16px;margin-top:8px;width:100%}.upload-supported-files[theme=dark],.upload-supported-files[theme=light]{max-width:563px}.upload-supported-files span{font-weight:700;margin-right:5px}@media (max-width: 600px){.upload-file-container,.upload-supported-files[theme=dark],.upload-supported-files[theme=light]{max-width:100%}}.transparent{opacity:0}\n"] }]
258
244
  }], ctorParameters: () => [{ type: undefined, decorators: [{
259
245
  type: Optional
260
246
  }, {
261
247
  type: Inject,
262
248
  args: ['CANOPYUI_DEFAULT_APPLICATION_THEME']
263
- }] }, { type: i6.Language, decorators: [{
264
- type: Optional
265
- }, {
266
- type: Inject,
267
- args: [CANOPY_UI_LANG]
268
249
  }] }], propDecorators: { class: [{
269
250
  type: HostBinding
270
251
  }], maxFileSizeMB: [{
@@ -281,8 +262,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
281
262
  type: Input
282
263
  }], file: [{
283
264
  type: Input
284
- }], language: [{
285
- type: Input
286
265
  }], companyColor: [{
287
266
  type: Input
288
267
  }], compColor: [{
@@ -300,4 +279,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
300
279
  type: ViewChild,
301
280
  args: ['fileDrop']
302
281
  }] } });
303
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGdvLWNhbm9weS11aS9jb21wb25lbnRzL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rnby1jYW5vcHktdWkvY29tcG9uZW50cy9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUUsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBR0wsTUFBTSxFQUVOLGlCQUFpQixFQUNqQixVQUFVLEVBQ1YsUUFBUSxFQUNSLE1BQU0sRUFDTixTQUFTLEVBRVYsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUU1RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7Ozs7Ozs7O0FBaUQ3RCxNQUFNLE9BQU8sbUJBQW1CO0lBOEg5QixZQUM2RSxlQUFpQyxFQUNyRCxPQUFpQjtRQURHLG9CQUFlLEdBQWYsZUFBZSxDQUFrQjtRQUNyRCxZQUFPLEdBQVAsT0FBTyxDQUFVO1FBL0gzRCxVQUFLLEdBQUcsZ0JBQWdCLENBQUM7UUF3Q3hDOzs7OztXQUtHO1FBQ00sYUFBUSxHQUFHLEtBQUssQ0FBQztRQUUxQjs7Ozs7V0FLRztRQUNNLFNBQUksR0FBZ0IsSUFBSSxDQUFDO1FBRWxDOzs7OztXQUtHO1FBQ00sYUFBUSxHQUFHLGVBQWUsQ0FBQyxlQUFlLENB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ZSxFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7NkJBQ2pFLENBQUM7NEJBQ0YsVUFBVSxDQUFDLFFBQVEsRUFBRTtnQ0FDbkIsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUM7Z0NBQ3RDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQzs2QkFDMUQsQ0FBQzt5QkFDSCxDQUFDO3FCQUNIOzswQkFpSUUsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxvQ0FBb0M7OzBCQUN2RCxRQUFROzswQkFBSSxNQUFNOzJCQUFDLGNBQWM7eUNBL0hyQixLQUFLO3NCQUFuQixXQUFXO2dCQU9ILGFBQWE7c0JBQXJCLEtBQUs7Z0JBT0csYUFBYTtzQkFBckIsS0FBSztnQkFRRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBUUcsY0FBYztzQkFBdEIsS0FBSztnQkFRRyxNQUFNO3NCQUFkLEtBQUs7Z0JBUUcsUUFBUTtzQkFBaEIsS0FBSztnQkFRRyxJQUFJO3NCQUFaLEtBQUs7Z0JBUUcsUUFBUTtzQkFBaEIsS0FBSztnQkFTRyxZQUFZO3NCQUFwQixLQUFLO2dCQUdOLFNBQVM7c0JBRFIsV0FBVzt1QkFBQyxlQUFlO2dCQVVuQixnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBUUcsU0FBUztzQkFBakIsS0FBSztnQkFRRyxZQUFZO3NCQUFwQixLQUFLO2dCQUVJLE1BQU07c0JBQWYsTUFBTTtnQkFFZ0IsUUFBUTtzQkFBOUIsU0FBUzt1QkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgZm9yd2FyZFJlZixcbiAgT3B0aW9uYWwsXG4gIEluamVjdCxcbiAgVmlld0NoaWxkLFxuICBFbGVtZW50UmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdXRpbHMvbG9jYWxpemF0aW9uL2xhbmd1YWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXBwbGljYXRpb25UaGVtZSB9IGZyb20gJy4uLy4uL21vZGVscy9hcHBsaWNhdGlvbi10aGVtZS5tb2RlbCc7XG5pbXBvcnQgeyBDQU5PUFlfVUlfTEFORyB9IGZyb20gJy4uLy4uL3Rva2Vucy9hcHAtbGFuZy50b2tlbic7XG5pbXBvcnQgeyBMYW5ndWFnZSB9IGZyb20gJy4uLy4uL3V0aWxzL2xvY2FsaXphdGlvbi9sYW5ndWFnZS5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3VpLWZpbGUtdXBsb2FkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmlsZS11cGxvYWQuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBGaWxlVXBsb2FkQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBhbmltYXRpb25zOiBbXG4gICAgdHJpZ2dlcignaW5PdXRBbmltYXRpb24nLCBbXG4gICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXG4gICAgICAgIHN0eWxlKHsgb3BhY2l0eTogMCwgaGVpZ2h0OiAwIH0pLFxuICAgICAgICBhbmltYXRlKCcwLjJzIGVhc2Utb3V0Jywgc3R5bGUoeyBvcGFjaXR5OiAxLCBoZWlnaHQ6ICcxOTZweCcgfSkpXG4gICAgICBdKSxcbiAgICAgIHRyYW5zaXRpb24oJzpsZWF2ZScsIFtcbiAgICAgICAgc3R5bGUoeyBvcGFjaXR5OiAxLCBoZWlnaHQ6ICcxOTZweCcgfSksXG4gICAgICAgIGFuaW1hdGUoJzAuMnMgZWFzZS1pbicsIHN0eWxlKHsgb3BhY2l0eTogMCwgaGVpZ2h0OiAwIH0pKVxuICAgICAgXSlcbiAgICBdKSxcbiAgICB0cmlnZ2VyKCdpbk91dEFuaW1hdGlvblByb2dyZXNzJywgW1xuICAgICAgdHJhbnNpdGlvbignOmVudGVyJywgW1xuICAgICAgICBzdHlsZSh7IG9wYWNpdHk6IDAsIGhlaWdodDogMCB9KSxcbiAgICAgICAgYW5pbWF0ZSgnMC4ycyBlYXNlLW91dCcsIHN0eWxlKHsgb3BhY2l0eTogMSwgaGVpZ2h0OiAnMTk2cHgnIH0pKVxuICAgICAgXSksXG4gICAgICB0cmFuc2l0aW9uKCc6bGVhdmUnLCBbXG4gICAgICAgIHN0eWxlKHsgb3BhY2l0eTogMSwgaGVpZ2h0OiAnMTk2cHgnIH0pLFxuICAgICAgICBhbmltYXRlKCcwLjJzIGVhc2UtaW4nLCBzdHlsZSh7IG9wYWNpdHk6IDAsIGhlaWdodDogMCB9KSlcbiAgICAgIF0pXG4gICAgXSksXG4gICAgdHJpZ2dlcignaW5PdXRBbmltYXRpb25DaGFuZ2UnLCBbXG4gICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXG4gICAgICAgIHN0eWxlKHsgb3BhY2l0eTogMCwgaGVpZ2h0OiAwIH0pLFxuICAgICAgICBhbmltYXRlKCcwLjJzIGVhc2Utb3V0Jywgc3R5bGUoeyBvcGFjaXR5OiAxLCBoZWlnaHQ6ICcxOTZweCcgfSkpXG4gICAgICBdKSxcbiAgICAgIHRyYW5zaXRpb24oJzpsZWF2ZScsIFtcbiAgICAgICAgc3R5bGUoeyBvcGFjaXR5OiAxLCBoZWlnaHQ6ICcxOTZweCcgfSksXG4gICAgICAgIGFuaW1hdGUoJzAuMnMgZWFzZS1pbicsIHN0eWxlKHsgb3BhY2l0eTogMCwgaGVpZ2h0OiAwIH0pKVxuICAgICAgXSlcbiAgICBdKVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEZpbGVVcGxvYWRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICBASG9zdEJpbmRpbmcoKSBjbGFzcyA9ICd1aS1maWxlLXVwbG9hZCc7XG5cbiAgLyoqXG4gICAqXG4gICAqIEB0eXBlIHtudW1iZXJ9XG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBtYXhGaWxlU2l6ZU1COiBudW1iZXI7XG5cbiAgLyoqXG4gICAqXG4gICAqIEB0eXBlIHtudW1iZXJ9XG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBtaW5GaWxlU2l6ZU1COiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFN1cHBvcnRlZCBmaWxlcyBmb3IgaW5wdXQgZmllbGRcbiAgICpcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIHN1cHBvcnRlZEZpbGVUeXBlcz86IHN0cmluZztcblxuICAvKipcbiAgICogVXBsb2FkIHByb2dyZXNzXG4gICAqXG4gICAqIEB0eXBlIHtudW1iZXJ9XG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSB1cGxvYWRQcm9ncmVzczogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBGaWxlIHVwbG9hZCBlcnJvcnNcbiAgICpcbiAgICogQHR5cGUge3N0cmluZ1tdfVxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgZXJyb3JzPzogc3RyaW5nW10gfCBudWxsO1xuXG4gIC8qKlxuICAgKiBGaWxlIHVwbG9hZCBkaXNhYmxlZFxuICAgKlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEV4aXN0aW5nIGZpbGUgaW5mb3JtYXRpb25cbiAgICpcbiAgICogQHR5cGUgeyhGaWxlIHwgbnVsbCl9XG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBmaWxlOiBGaWxlIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIFRoZSBsYW5ndWFnZSB0byBiZSB1c2VkXG4gICAqIEBwcm9wZXJ0eSBsYW5ndWFnZVxuICAgKiBAdHlwZSB7TGFuZ3VhZ2V9XG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBsYW5ndWFnZSA9IExhbmd1YWdlU2VydmljZS5kZWZhdWx0TGFuZ3VhZ2U7XG5cbiAgLyoqXG4gICAqIENvbG9yIG9mIHRoZSBmaWxlIHVwbG9hZC5cbiAgICogRGVmYXVsdHMgdG8gVGVzdCBHb3JpbGxhIHByaW1hcnkgY29sb3IuXG4gICAqXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBjb21wYW55Q29sb3I6IHN0cmluZyB8IG51bGwgPSAnJztcblxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLi0tY29sb3InKVxuICBjb21wQ29sb3I6IHN0cmluZztcblxuICAvKipcbiAgICpcbiAgICogRGVmaW5lcyB0aGUgYXBwbGljYXRpb24gdGhlbWVcbiAgICpcbiAgICogQHR5cGUge0FwcGxpY2F0aW9uVGhlbWV9XG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBhcHBsaWNhdGlvblRoZW1lOiBBcHBsaWNhdGlvblRoZW1lID0gJ2xpZ2h0JztcblxuICAvKipcbiAgICogQSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBBUklBIGxhYmVsIGZvciBhY2Nlc3NpYmlsaXR5LlxuICAgKiBUaGlzIGxhYmVsIGlzIHVzZWQgdG8gcHJvdmlkZSBhbiBhY2Nlc3NpYmxlIG5hbWUgZm9yIHRoZSBpbnB1dCBlbGVtZW50LlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgYXJpYUxhYmVsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgQVJJQSByZXF1aXJlbWVudCBmb3IgYWNjZXNzaWJpbGl0eS5cbiAgICogVGhpcyBhdHRyaWJ1dGUgaXMgdXNlZCB0byBpbmRpY2F0ZSB3aGV0aGVyIGFuIGlucHV0IGZpZWxkIGlzIHJlcXVpcmVkIGZvciBmb3JtIHN1Ym1pc3Npb24uXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgYXJpYVJlcXVpcmVkID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpIE9uRHJvcDogRXZlbnRFbWl0dGVyPEZpbGU+ID0gbmV3IEV2ZW50RW1pdHRlcjxGaWxlPigpO1xuXG4gIEBWaWV3Q2hpbGQoJ2ZpbGVEcm9wJykgZmlsZURyb3A6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHRyYW5zbGF0aW9uQ29udGV4dCA9ICdGSUxFX1VQTE9BRC4nO1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBvbkNoYW5nZSA9IChfOiBhbnkpID0+IHtcbiAgfTtcblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgb25Ub3VjaCA9ICgpID0+IHtcbiAgfTtcblxuICBpc01pc3NlZE1pblNpemUgPSBmYWxzZTtcbiAgcHJvZ3Jlc3MgPSBmYWxzZTtcbiAgc3VjY2VzcyA9IGZhbHNlO1xuICBicm93c2U6IGJvb2xlYW47XG4gIGlzQ2FuY2VsZWQgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KCdDQU5PUFlVSV9ERUZBVUxUX0FQUExJQ0FUSU9OX1RIRU1FJykgcHJpdmF0ZSByZWFkb25seSBkZWZhdWx0QXBwVGhlbWU6IEFwcGxpY2F0aW9uVGhlbWUsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChDQU5PUFlfVUlfTEFORykgcHJvdGVjdGVkIHJlYWRvbmx5IGFwcExhbmc6IExhbmd1YWdlLFxuICApIHtcbiAgICBpZiAoZGVmYXVsdEFwcFRoZW1lKSB7XG4gICAgICB0aGlzLmFwcGxpY2F0aW9uVGhlbWUgPSBkZWZhdWx0QXBwVGhlbWU7XG4gICAgfVxuXG4gICAgaWYgKGFwcExhbmcpIHtcbiAgICAgIHRoaXMubGFuZ3VhZ2UgPSBhcHBMYW5nO1xuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuYnJvd3NlID0gdHJ1ZTtcbiAgfVxuXG4gIC8vV2hlbiBmaWxlIGlzIGRyb3BwZWRcbiAgb25GaWxlRHJvcHBlZChmaWxlczogRmlsZUxpc3QpIHtcbiAgICB0aGlzLmVtaXRGaWxlKGZpbGVzKTtcbiAgfVxuXG4gIC8vV2hlbiBpbnB1dCBjaGFuZ2VzXG4gIG9uQ2hhbmdlVXBsb2FkKGV2ZW50OiBFdmVudCkge1xuICAgIHRoaXMuaXNDYW5jZWxlZCA9IGZhbHNlO1xuICAgIGNvbnN0IGVsZW1lbnQgPSBldmVudC5jdXJyZW50VGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgdGhpcy5lbWl0RmlsZShlbGVtZW50LmZpbGVzIHx8IG5ldyBGaWxlTGlzdCgpKTtcbiAgfVxuXG4gIC8vRW1pdCBkcm9wIGZpbGVcbiAgZW1pdEZpbGUoZmlsZXM6IEZpbGVMaXN0KSB7XG4gICAgY29uc3QgW2ZpbGVdID0gQXJyYXkuZnJvbShmaWxlcyk7XG4gICAgdGhpcy5maWxlID0gZmlsZTtcbiAgICB0aGlzLmVycm9ycyA9IG51bGw7XG4gICAgdGhpcy5vblRvdWNoKCk7XG4gICAgdGhpcy5pc01pc3NlZE1pblNpemUgPVxuICAgICAgIWZpbGU/LnNpemUgJiYgIXRoaXMubWluRmlsZVNpemVNQiA/IHRydWUgOiB0aGlzLmZpbGVTaXplVG9NQihmaWxlPy5zaXplID8/IDApIDw9IHRoaXMubWluRmlsZVNpemVNQjtcbiAgICBpZiAoIXRoaXMuaXNNaXNzZWRNaW5TaXplKSB7XG4gICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMuZmlsZSk7XG4gICAgICB0aGlzLk9uRHJvcC5lbWl0KGZpbGUpO1xuICAgIH1cbiAgfVxuXG4gIC8vU2hvdyBwcm9ncmVzcy1iYXJcbiAgc2hvd1Byb2dyZXNzKCk6IGJvb2xlYW4ge1xuICAgIHRoaXMuYnJvd3NlID0gZmFsc2U7XG4gICAgcmV0dXJuICEhKHRoaXMuZmlsZSAmJiAhdGhpcy5lcnJvcnMgJiYgIXRoaXMuaXNNaXNzZWRNaW5TaXplKTtcbiAgfVxuXG4gIC8vU2hvdyBzdWNjZXNzIGVsZW1lbnRzXG4gIHNob3dTdWNjZXNzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhISh0aGlzLmZpbGUgJiYgdGhpcy51cGxvYWRQcm9ncmVzcyA9PT0gMTAwICYmICF0aGlzLmVycm9ycyAmJiAhdGhpcy5pc01pc3NlZE1pblNpemUpO1xuICB9XG5cbiAgLy9TaG93IGJyb3dzZSB3aGVuIHRoZXJlIGFyZSBlcnJvclxuICBzaG93QnJvd3NlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhISh0aGlzLmVycm9ycyB8fCB0aGlzLmlzTWlzc2VkTWluU2l6ZSk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKCF0aGlzLmlzQ2FuY2VsZWQpIHtcbiAgICAgIGlmIChjaGFuZ2VzWyd1cGxvYWRQcm9ncmVzcyddIHx8IGNoYW5nZXNbJ2ZpbGUnXSkge1xuICAgICAgICB0aGlzLnByb2dyZXNzID0gdGhpcy5zaG93UHJvZ3Jlc3MoKTtcbiAgICAgICAgdGhpcy5zdWNjZXNzID0gdGhpcy5zaG93U3VjY2VzcygpO1xuICAgICAgICB0aGlzLmJyb3dzZSA9IHRoaXMuc2hvd0Jyb3dzZSgpO1xuICAgICAgfVxuICAgICAgaWYgKGNoYW5nZXNbJ2Vycm9ycyddKSB7XG4gICAgICAgIHRoaXMucHJvZ3Jlc3MgPSB0aGlzLnNob3dQcm9ncmVzcygpO1xuICAgICAgICB0aGlzLnN1Y2Nlc3MgPSB0aGlzLnNob3dTdWNjZXNzKCk7XG4gICAgICAgIHRoaXMuYnJvd3NlID0gdGhpcy5zaG93QnJvd3NlKCk7XG4gICAgICB9XG4gICAgICBpZiAoY2hhbmdlc1snYXBwbGljYXRpb25UaGVtZSddKSB7XG4gICAgICAgIHRoaXMuY29tcENvbG9yID0gdGhpcy5nZXRDb21wYW55Q29sb3IoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlPzogRmlsZSk6IHZvaWQge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5maWxlID0gdmFsdWUgfHwgbnVsbDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5maWxlID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoID0gZm47XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q29tcGFueUNvbG9yKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuY29tcGFueUNvbG9yIHx8ICh0aGlzLmFwcGxpY2F0aW9uVGhlbWUgPT09ICdjbGFzc2ljJyA/ICcjNDZBOTk3JyA6ICcjRDQxMEFBJyk7XG4gIH1cblxuICBwcml2YXRlIGZpbGVTaXplVG9NQihmaWxlU2l6ZTogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gZmlsZVNpemUgLyAxMDI0IC8gMTAyNDtcbiAgfVxuXG4gIG9uS2V5ZG93bihldjogS2V5Ym9hcmRFdmVudCkge1xuICAgIGlmIChldi5rZXkgPT09ICdFbnRlcicgfHwgZXYua2V5ID09PSAnICcpIHtcbiAgICAgIHRoaXMuZmlsZURyb3AubmF0aXZlRWxlbWVudC5jbGljaygpXG4gICAgfSBlbHNlIGlmICAoZXYua2V5ID09PSAnRXNjYXBlJykge1xuICAgICAgdGhpcy5maWxlID0gbnVsbDtcbiAgICAgIHRoaXMuc3VjY2VzcyA9IGZhbHNlO1xuICAgICAgdGhpcy5wcm9ncmVzcyA9IGZhbHNlO1xuICAgICAgdGhpcy5lcnJvcnMgPSBudWxsO1xuICAgICAgdGhpcy5pc01pc3NlZE1pblNpemUgPSBmYWxzZTtcbiAgICAgIHRoaXMuYnJvd3NlID0gdHJ1ZTtcbiAgICAgIHRoaXMuaXNDYW5jZWxlZCA9IHRydWU7XG4gICAgfVxuICB9XG59XG4iLCI8bmctY29udGFpbmVyPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJ1cGxvYWQtZmlsZS1jb250YWluZXJcIlxuICAgIHVpRHJhZ0Ryb3BcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbFwiXG4gICAgW2F0dHIuYXJpYS1yZXF1aXJlZF09XCJhcmlhUmVxdWlyZWRcIlxuICAgIFthdHRyLnRoZW1lXT1cImFwcGxpY2F0aW9uVGhlbWVcIlxuICAgIFtuZ0NsYXNzXT1cInsgJ3VwbG9hZC1lcnJvcnMnOiAhIWVycm9ycyB8fCBpc01pc3NlZE1pblNpemUsICd1cGxvYWQtZmlsZS1jb250YWluZXItZGlzYWJsZWQnOiBkaXNhYmxlZCB9XCJcbiAgICAoZmlsZURyb3BwZWQpPVwib25GaWxlRHJvcHBlZCgkZXZlbnQpXCJcbiAgICBbdGFiSW5kZXhdPVwiMFwiXG4gICAgKGtleWRvd24pPVwib25LZXlkb3duKCRldmVudClcIlxuICAgIChjbGljayk9XCJmaWxlRHJvcC5uYXRpdmVFbGVtZW50LmNsaWNrKClcIlxuICA+XG4gICAgPHNwYW4gc3R5bGU9XCJwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IC05OTk5cHg7XCIgW2F0dHIuYXJpYS1saXZlXT1cIidwb2xpdGUnXCI+XG4gICAgICB7eyBzdWNjZXNzID8gKCdGSUxFX1VQTE9BRC5GSUxFX1VQTE9BRElOR19TVUNDRVNTJyB8IHVpVHJhbnNsYXRlIDogbGFuZ3VhZ2UpIDogcHJvZ3Jlc3MgPyAoJ0ZJTEVfVVBMT0FELlVQTE9BRElORycgfCB1aVRyYW5zbGF0ZSA6IGxhbmd1YWdlKSA6ICcnIH19XG4gICAgPC9zcGFuPlxuICAgIDxkaXYgKm5nSWY9XCIoYnJvd3NlICYmICEoc3VjY2VzcyAmJiAhIWZpbGUgJiYgcHJvZ3Jlc3MpKVwiIFtAaW5PdXRBbmltYXRpb25dIGNsYXNzPVwidXBsb2FkLWZpbGVzXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwidXBsb2FkLWJyb3dzZVwiPlxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImljb25UcGxcIj48L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiZXJyb3JzXCIgKm5nSWY9XCIhIWVycm9ycyB8fCBpc01pc3NlZE1pblNpemVcIiByb2xlPVwiYWxlcnRcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiISFlcnJvcnNcIj5cbiAgICAgICAgICAgIDxzcGFuICpuZ0Zvcj1cImxldCBlcnJvciBvZiBlcnJvcnNcIj48dWktaWNvbiBuYW1lPVwiRXJyb3JcIiBjbGFzcz1cImVycm9yLWljb25cIj48L3VpLWljb24+XG4gICAgICAgICAgICAgIHt7IGVycm9yIH19PC9zcGFuPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgPHNwYW4gKm5nSWY9XCJpc01pc3NlZE1pblNpemVcIj5cbiAgICAgICAgICAgIDx1aS1pY29uIG5hbWU9XCJFcnJvclwiIGNsYXNzPVwiZXJyb3ItaWNvblwiPjwvdWktaWNvbj5cbiAgICAgICAgICAgIHt7IHRyYW5zbGF0aW9uQ29udGV4dCArICdNSU5fU0laRV9FUlJPUicgfCB1aVRyYW5zbGF0ZSA6IGxhbmd1YWdlIDogeyBtaW46IG1pbkZpbGVTaXplTUIgfSB9fVxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJzdWNjZXNzIHx8IHByb2dyZXNzID8gJycgOiAnZHJhZy1hbmQtZHJvcCdcIlxuICAgICAgICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiJ3VwbG9hZC1zdXBwb3J0ZWQtZmlsZXMnXCJcbiAgICAgICAgICBbdGFiSW5kZXhdPVwiLTFcIlxuICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAjZmlsZURyb3BcbiAgICAgICAgICB0eXBlPVwiZmlsZVwiXG4gICAgICAgICAgaWQ9XCJmaWxlXCJcbiAgICAgICAgICBbYWNjZXB0XT1cInN1cHBvcnRlZEZpbGVUeXBlc1wiXG4gICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAoY2hhbmdlKT1cIm9uQ2hhbmdlVXBsb2FkKCRldmVudClcIlxuICAgICAgICAvPlxuICAgICAgICA8bGFiZWwgZm9yPVwiZmlsZVwiIGNsYXNzPVwidHJhbnNwYXJlbnRcIj57eyAhIWZpbGUgJiYgc3VjY2VzcyA/ICcnIDogKHRyYW5zbGF0aW9uQ29udGV4dCArICdDSE9PU0VfRklMRScpIHwgdWlUcmFuc2xhdGUgOiBsYW5ndWFnZSB9fTwvbGFiZWw+XG4gICAgICAgIDxwXG4gICAgICAgICAgKm5nSWY9XCJhcHBsaWNhdGlvblRoZW1lID09PSAnY2xhc3NpYyc7IGVsc2UgcmVicmFuZGVkRG5EQ29weVRwbFwiPnt7ICh0cmFuc2xhdGlvbkNvbnRleHQgKyAnRFJBR19BTkRfRFJPUF9PUicpIHwgdWlUcmFuc2xhdGUgOiBsYW5ndWFnZSB9fVxuICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgIGNsYXNzPVwic2VtaWJvbGRcIj4ge3sgKHRyYW5zbGF0aW9uQ29udGV4dCArICdCUk9XU0UnKSB8IHVpVHJhbnNsYXRlIDogbGFuZ3VhZ2UgICB8IGxvd2VyY2FzZSB9fTwvc3Bhbj4ge3sgKHRyYW5zbGF0aW9uQ29udGV4dCArICdZT1VSX0ZJTEVTJykgfCB1aVRyYW5zbGF0ZSA6IGxhbmd1YWdlIH19XG4gICAgICAgIDwvcD5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ1cGxvYWQtdGV4dFwiPnt7IG1heEZpbGVTaXplTUIgfX17eyAodHJhbnNsYXRpb25Db250ZXh0ICsgJ01BWF9TSVpFJykgfCB1aVRyYW5zbGF0ZSA6IGxhbmd1YWdlIH19PC9zcGFuPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIm1pbkZpbGVTaXplTUJcIiBjbGFzcz1cInVwbG9hZC10ZXh0XCI+e3sgbWluRmlsZVNpemVNQiB9fXt7ICh0cmFuc2xhdGlvbkNvbnRleHQgKyAnTUlOX1NJWkUnKSB8IHVpVHJhbnNsYXRlIDogbGFuZ3VhZ2UgfX08L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwidXBsb2FkLWNoYW5nZVwiIFtAaW5PdXRBbmltYXRpb25DaGFuZ2VdICpuZ0lmPVwiISFzdWNjZXNzICYmICEhZmlsZSAmJiAhIXByb2dyZXNzXCI+XG4gICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImljb25UcGxcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDxpbnB1dFxuICAgICAgICBbdGFiSW5kZXhdPVwiLTFcIlxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwic3VjY2VzcyB8fCBwcm9ncmVzcyA/ICcnIDogJ2RyYWctYW5kLWRyb3AnXCJcbiAgICAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJzdWNjZXNzIHx8IHByb2dyZXNzID8gJycgOiAnc3VwcG9ydGVkLWZpbGUtdHlwZXMnXCJcbiAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAjZmlsZURyb3BcbiAgICAgICAgdHlwZT1cImZpbGVcIlxuICAgICAgICBpZD1cImZpbGVUZXN0XCJcbiAgICAgICAgW2FjY2VwdF09XCJzdXBwb3J0ZWRGaWxlVHlwZXNcIlxuICAgICAgICAoY2hhbmdlKT1cIm9uQ2hhbmdlVXBsb2FkKCRldmVudClcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgLz5cbiAgICAgIDxsYWJlbCBmb3I9XCJmaWxlXCIgY2xhc3M9XCJ0cmFuc3BhcmVudFwiPnt7ICEhZmlsZSAmJiBzdWNjZXNzID8gJycgOiAodHJhbnNsYXRpb25Db250ZXh0ICsgJ0NIT09TRV9GSUxFJykgfCB1aVRyYW5zbGF0ZSA6IGxhbmd1YWdlIH19PC9sYWJlbD5cbiAgICAgIDxwXG4gICAgICAgICpuZ0lmPVwiYXBwbGljYXRpb25UaGVtZSA9PT0gJ2NsYXNzaWMnOyBlbHNlIHJlYnJhbmRlZERuRENvcHlUcGxcIj57eyAodHJhbnNsYXRpb25Db250ZXh0ICsgJ0RSQUdfQU5EX0RST1BfT1InKSB8IHVpVHJhbnNsYXRlIDogbGFuZ3VhZ2UgfX0mbmJzcDs8c3BhblxuICAgICAgICBjbGFzcz1cInNlbWlib2xkXCI+e3sgKHRyYW5zbGF0aW9uQ29udGV4dCArICdDSEFOR0UnKSB8IHVpVHJhbnNsYXRlIDogbGFuZ3VhZ2UgfCBsb3dlcmNhc2UgfX08L3NwYW4+IHt7ICh0cmFuc2xhdGlvbkNvbnRleHQgKyAnWU9VUl9GSUxFUycpIHwgdWlUcmFuc2xhdGUgOiBsYW5ndWFnZSB9fVxuICAgICAgPC9wPlxuICAgICAgPHNwYW4gY2xhc3M9XCJ1cGxvYWQtdGV4dFwiXG4gICAgICA+PHN0cm9uZz57eyBmaWxlLm5hbWUgfX08L3N0cm9uZz48L3NwYW5cbiAgICAgID5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwidXBsb2FkLXByb2dyZXNzXCIgW0Bpbk91dEFuaW1hdGlvblByb2dyZXNzXSAqbmdJZj1cIiEhcHJvZ3Jlc3MgJiYgISFmaWxlICYmICFzdWNjZXNzXCI+XG4gICAgICA8cD57eyBmaWxlLm5hbWUgfX08L3A+XG4gICAgICA8dWktcHJvZ3Jlc3MtYmFyIFtwcm9ncmVzc109XCJ1cGxvYWRQcm9ncmVzc1wiXG4gICAgICAgICAgICAgICAgICAgICAgIFtjb21wYW55Q29sb3JdPVwiY29tcENvbG9yXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2FwcGxpY2F0aW9uVGhlbWVdPVwiYXBwbGljYXRpb25UaGVtZVwiPjwvdWktcHJvZ3Jlc3MtYmFyPlxuICAgICAgPHAgY2xhc3M9XCJ1cGxvYWQtdGV4dFwiPlxuICAgICAgICB7eyAodHJhbnNsYXRpb25Db250ZXh0ICsgJ1VQTE9BRElORycpIHwgdWlUcmFuc2xhdGUgOiBsYW5ndWFnZSB9fSA8c3Bhbj57eyB1cGxvYWRQcm9ncmVzcyB9fTwvc3BhblxuICAgICAgPiVcbiAgICAgIDwvcD5cbiAgICA8L2Rpdj5cblxuICAgIDxuZy10ZW1wbGF0ZSAjaWNvblRwbD5cbiAgICAgIDx1aS1pY29uICpuZ0lmPVwiYXBwbGljYXRpb25UaGVtZSA9PT0gJ2NsYXNzaWMnOyBlbHNlIHJlYnJhbmRlZEljb25UcGxcIiBjbGFzcz1cInVwbG9hZC1pY29uXCJcbiAgICAgICAgICAgICAgIG5hbWU9XCJGaWxlLXVwbG9hZFwiPjwvdWktaWNvbj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjcmVicmFuZGVkSWNvblRwbD5cbiAgICAgICAgPHVpLWljb24gY2xhc3M9XCJ1cGxvYWQtaWNvblwiXG4gICAgICAgICAgICAgICAgIG5hbWU9XCJVcGxvYWRcIlxuICAgICAgICAgICAgICAgICBbc2l6ZV09XCInMjQnXCJcbiAgICAgICAgICAgICAgICAgW2FwcGxpY2F0aW9uVGhlbWVdPVwiYXBwbGljYXRpb25UaGVtZVwiPjwvdWktaWNvbj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgI3JlYnJhbmRlZERuRENvcHlUcGw+XG4gICAgICA8cCBpZD1cIidkcmFnLWFuZC1kcm9wJ1wiPnt7ICh0cmFuc2xhdGlvbkNvbnRleHQgKyAnRFJBR19BTkRfRFJPUCcpIHwgdWlUcmFuc2xhdGUgOiBsYW5ndWFnZSB9fTwvcD5cbiAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgPGRpdlxuICAgICAgKm5nSWY9XCIhIXN1cHBvcnRlZEZpbGVUeXBlc1wiXG4gICAgICBbYXR0ci50aGVtZV09XCJhcHBsaWNhdGlvblRoZW1lXCJcbiAgICAgIGNsYXNzPVwidXBsb2FkLXN1cHBvcnRlZC1maWxlc1wiXG4gICAgICBpZD1cInVwbG9hZC1zdXBwb3J0ZWQtZmlsZXNcIj5cbiAgICAgIDxzcGFuID57eyAodHJhbnNsYXRpb25Db250ZXh0ICsgJ1NVUFBPUlRFRF9GSUxFX1RZUEVTJykgfCB1aVRyYW5zbGF0ZSA6IGxhbmd1YWdlIH19PC9zcGFuPnt7IHN1cHBvcnRlZEZpbGVUeXBlcyB9fVxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuIl19
282
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGdvLWNhbm9weS11aS9jb21wb25lbnRzL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rnby1jYW5vcHktdWkvY29tcG9uZW50cy9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUUsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBR0wsTUFBTSxFQUVOLGlCQUFpQixFQUNqQixVQUFVLEVBQ1YsUUFBUSxFQUNSLE1BQU0sRUFDTixTQUFTLEVBRVYsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7O0FBaUR6RSxNQUFNLE9BQU8sbUJBQW1CO0lBc0g5QixZQUM2RSxlQUFpQztRQUFqQyxvQkFBZSxHQUFmLGVBQWUsQ0FBa0I7UUF0SC9GLFVBQUssR0FBRyxnQkFBZ0IsQ0FBQztRQXdDeEM7Ozs7O1dBS0c7UUFDTSxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBRTFCOzs7OztXQUtHO1FBQ00sU0FBSSxHQUFnQixJQUFJLENBQUM7UUFFbEM7Ozs7OztXQU1HO1FBQ00saUJBQVksR0FBa0IsRUFBRSxDQUFDO1FBSzFDOzs7Ozs7V0FNRztRQUNNLHFCQUFnQixHQUFxQixPQUFPLENBQUM7UUFVdEQ7Ozs7O1dBS0c7UUFDTSxpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUVwQixXQUFNLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFJN0Ms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RSxDQUFDLENBQUM7NkJBQzFELENBQUM7eUJBQ0gsQ0FBQztxQkFDSDs7MEJBeUhFLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsb0NBQW9DO3lDQXRIM0MsS0FBSztzQkFBbkIsV0FBVztnQkFPSCxhQUFhO3NCQUFyQixLQUFLO2dCQU9HLGFBQWE7c0JBQXJCLEtBQUs7Z0JBUUcsa0JBQWtCO3NCQUExQixLQUFLO2dCQVFHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBUUcsTUFBTTtzQkFBZCxLQUFLO2dCQVFHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBUUcsSUFBSTtzQkFBWixLQUFLO2dCQVNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBR04sU0FBUztzQkFEUixXQUFXO3VCQUFDLGVBQWU7Z0JBVW5CLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFRRyxTQUFTO3NCQUFqQixLQUFLO2dCQVFHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBRUksTUFBTTtzQkFBZixNQUFNO2dCQUVnQixRQUFRO3NCQUE5QixTQUFTO3VCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhbmltYXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0QmluZGluZyxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxuICBmb3J3YXJkUmVmLFxuICBPcHRpb25hbCxcbiAgSW5qZWN0LFxuICBWaWV3Q2hpbGQsXG4gIEVsZW1lbnRSZWZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBcHBsaWNhdGlvblRoZW1lIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2FwcGxpY2F0aW9uLXRoZW1lLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndWktZmlsZS11cGxvYWQnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmlsZS11cGxvYWQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9maWxlLXVwbG9hZC5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEZpbGVVcGxvYWRDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCdpbk91dEFuaW1hdGlvbicsIFtcbiAgICAgIHRyYW5zaXRpb24oJzplbnRlcicsIFtcbiAgICAgICAgc3R5bGUoeyBvcGFjaXR5OiAwLCBoZWlnaHQ6IDAgfSksXG4gICAgICAgIGFuaW1hdGUoJzAuMnMgZWFzZS1vdXQnLCBzdHlsZSh7IG9wYWNpdHk6IDEsIGhlaWdodDogJzE5NnB4JyB9KSlcbiAgICAgIF0pLFxuICAgICAgdHJhbnNpdGlvbignOmxlYXZlJywgW1xuICAgICAgICBzdHlsZSh7IG9wYWNpdHk6IDEsIGhlaWdodDogJzE5NnB4JyB9KSxcbiAgICAgICAgYW5pbWF0ZSgnMC4ycyBlYXNlLWluJywgc3R5bGUoeyBvcGFjaXR5OiAwLCBoZWlnaHQ6IDAgfSkpXG4gICAgICBdKVxuICAgIF0pLFxuICAgIHRyaWdnZXIoJ2luT3V0QW5pbWF0aW9uUHJvZ3Jlc3MnLCBbXG4gICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXG4gICAgICAgIHN0eWxlKHsgb3BhY2l0eTogMCwgaGVpZ2h0OiAwIH0pLFxuICAgICAgICBhbmltYXRlKCcwLjJzIGVhc2Utb3V0Jywgc3R5bGUoeyBvcGFjaXR5OiAxLCBoZWlnaHQ6ICcxOTZweCcgfSkpXG4gICAgICBdKSxcbiAgICAgIHRyYW5zaXRpb24oJzpsZWF2ZScsIFtcbiAgICAgICAgc3R5bGUoeyBvcGFjaXR5OiAxLCBoZWlnaHQ6ICcxOTZweCcgfSksXG4gICAgICAgIGFuaW1hdGUoJzAuMnMgZWFzZS1pbicsIHN0eWxlKHsgb3BhY2l0eTogMCwgaGVpZ2h0OiAwIH0pKVxuICAgICAgXSlcbiAgICBdKSxcbiAgICB0cmlnZ2VyKCdpbk91dEFuaW1hdGlvbkNoYW5nZScsIFtcbiAgICAgIHRyYW5zaXRpb24oJzplbnRlcicsIFtcbiAgICAgICAgc3R5bGUoeyBvcGFjaXR5OiAwLCBoZWlnaHQ6IDAgfSksXG4gICAgICAgIGFuaW1hdGUoJzAuMnMgZWFzZS1vdXQnLCBzdHlsZSh7IG9wYWNpdHk6IDEsIGhlaWdodDogJzE5NnB4JyB9KSlcbiAgICAgIF0pLFxuICAgICAgdHJhbnNpdGlvbignOmxlYXZlJywgW1xuICAgICAgICBzdHlsZSh7IG9wYWNpdHk6IDEsIGhlaWdodDogJzE5NnB4JyB9KSxcbiAgICAgICAgYW5pbWF0ZSgnMC4ycyBlYXNlLWluJywgc3R5bGUoeyBvcGFjaXR5OiAwLCBoZWlnaHQ6IDAgfSkpXG4gICAgICBdKVxuICAgIF0pXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRmlsZVVwbG9hZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIEBIb3N0QmluZGluZygpIGNsYXNzID0gJ3VpLWZpbGUtdXBsb2FkJztcblxuICAvKipcbiAgICpcbiAgICogQHR5cGUge251bWJlcn1cbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIG1heEZpbGVTaXplTUI6IG51bWJlcjtcblxuICAvKipcbiAgICpcbiAgICogQHR5cGUge251bWJlcn1cbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIG1pbkZpbGVTaXplTUI6IG51bWJlcjtcblxuICAvKipcbiAgICogU3VwcG9ydGVkIGZpbGVzIGZvciBpbnB1dCBmaWVsZFxuICAgKlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgc3VwcG9ydGVkRmlsZVR5cGVzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVcGxvYWQgcHJvZ3Jlc3NcbiAgICpcbiAgICogQHR5cGUge251bWJlcn1cbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIHVwbG9hZFByb2dyZXNzOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEZpbGUgdXBsb2FkIGVycm9yc1xuICAgKlxuICAgKiBAdHlwZSB7c3RyaW5nW119XG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBlcnJvcnM/OiBzdHJpbmdbXSB8IG51bGw7XG5cbiAgLyoqXG4gICAqIEZpbGUgdXBsb2FkIGRpc2FibGVkXG4gICAqXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogRXhpc3RpbmcgZmlsZSBpbmZvcm1hdGlvblxuICAgKlxuICAgKiBAdHlwZSB7KEZpbGUgfCBudWxsKX1cbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGZpbGU6IEZpbGUgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogQ29sb3Igb2YgdGhlIGZpbGUgdXBsb2FkLlxuICAgKiBEZWZhdWx0cyB0byBUZXN0IEdvcmlsbGEgcHJpbWFyeSBjb2xvci5cbiAgICpcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGNvbXBhbnlDb2xvcjogc3RyaW5nIHwgbnVsbCA9ICcnO1xuXG4gIEBIb3N0QmluZGluZygnc3R5bGUuLS1jb2xvcicpXG4gIGNvbXBDb2xvcjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKlxuICAgKiBEZWZpbmVzIHRoZSBhcHBsaWNhdGlvbiB0aGVtZVxuICAgKlxuICAgKiBAdHlwZSB7QXBwbGljYXRpb25UaGVtZX1cbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGFwcGxpY2F0aW9uVGhlbWU6IEFwcGxpY2F0aW9uVGhlbWUgPSAnbGlnaHQnO1xuXG4gIC8qKlxuICAgKiBBIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIEFSSUEgbGFiZWwgZm9yIGFjY2Vzc2liaWxpdHkuXG4gICAqIFRoaXMgbGFiZWwgaXMgdXNlZCB0byBwcm92aWRlIGFuIGFjY2Vzc2libGUgbmFtZSBmb3IgdGhlIGlucHV0IGVsZW1lbnQuXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBhcmlhTGFiZWw6IHN0cmluZztcblxuICAvKipcbiAgICogQSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBBUklBIHJlcXVpcmVtZW50IGZvciBhY2Nlc3NpYmlsaXR5LlxuICAgKiBUaGlzIGF0dHJpYnV0ZSBpcyB1c2VkIHRvIGluZGljYXRlIHdoZXRoZXIgYW4gaW5wdXQgZmllbGQgaXMgcmVxdWlyZWQgZm9yIGZvcm0gc3VibWlzc2lvbi5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBhcmlhUmVxdWlyZWQgPSBmYWxzZTtcblxuICBAT3V0cHV0KCkgT25Ecm9wOiBFdmVudEVtaXR0ZXI8RmlsZT4gPSBuZXcgRXZlbnRFbWl0dGVyPEZpbGU+KCk7XG5cbiAgQFZpZXdDaGlsZCgnZmlsZURyb3AnKSBmaWxlRHJvcDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgdHJhbnNsYXRpb25Db250ZXh0ID0gJ0ZJTEVfVVBMT0FELic7XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIG9uQ2hhbmdlID0gKF86IGFueSkgPT4ge1xuICB9O1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBvblRvdWNoID0gKCkgPT4ge1xuICB9O1xuXG4gIGlzTWlzc2VkTWluU2l6ZSA9IGZhbHNlO1xuICBwcm9ncmVzcyA9IGZhbHNlO1xuICBzdWNjZXNzID0gZmFsc2U7XG4gIGJyb3dzZTogYm9vbGVhbjtcbiAgaXNDYW5jZWxlZCA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoJ0NBTk9QWVVJX0RFRkFVTFRfQVBQTElDQVRJT05fVEhFTUUnKSBwcml2YXRlIHJlYWRvbmx5IGRlZmF1bHRBcHBUaGVtZTogQXBwbGljYXRpb25UaGVtZSxcbiAgKSB7XG4gICAgaWYgKGRlZmF1bHRBcHBUaGVtZSkge1xuICAgICAgdGhpcy5hcHBsaWNhdGlvblRoZW1lID0gZGVmYXVsdEFwcFRoZW1lO1xuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuYnJvd3NlID0gdHJ1ZTtcbiAgfVxuXG4gIC8vV2hlbiBmaWxlIGlzIGRyb3BwZWRcbiAgb25GaWxlRHJvcHBlZChmaWxlczogRmlsZUxpc3QpIHtcbiAgICB0aGlzLmVtaXRGaWxlKGZpbGVzKTtcbiAgfVxuXG4gIC8vV2hlbiBpbnB1dCBjaGFuZ2VzXG4gIG9uQ2hhbmdlVXBsb2FkKGV2ZW50OiBFdmVudCkge1xuICAgIHRoaXMuaXNDYW5jZWxlZCA9IGZhbHNlO1xuICAgIGNvbnN0IGVsZW1lbnQgPSBldmVudC5jdXJyZW50VGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgdGhpcy5lbWl0RmlsZShlbGVtZW50LmZpbGVzIHx8IG5ldyBGaWxlTGlzdCgpKTtcbiAgfVxuXG4gIC8vRW1pdCBkcm9wIGZpbGVcbiAgZW1pdEZpbGUoZmlsZXM6IEZpbGVMaXN0KSB7XG4gICAgY29uc3QgW2ZpbGVdID0gQXJyYXkuZnJvbShmaWxlcyk7XG4gICAgdGhpcy5maWxlID0gZmlsZTtcbiAgICB0aGlzLmVycm9ycyA9IG51bGw7XG4gICAgdGhpcy5vblRvdWNoKCk7XG4gICAgdGhpcy5pc01pc3NlZE1pblNpemUgPVxuICAgICAgIWZpbGU/LnNpemUgJiYgIXRoaXMubWluRmlsZVNpemVNQiA/IHRydWUgOiB0aGlzLmZpbGVTaXplVG9NQihmaWxlPy5zaXplID8/IDApIDw9IHRoaXMubWluRmlsZVNpemVNQjtcbiAgICBpZiAoIXRoaXMuaXNNaXNzZWRNaW5TaXplKSB7XG4gICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMuZmlsZSk7XG4gICAgICB0aGlzLk9uRHJvcC5lbWl0KGZpbGUpO1xuICAgIH1cbiAgfVxuXG4gIC8vU2hvdyBwcm9ncmVzcy1iYXJcbiAgc2hvd1Byb2dyZXNzKCk6IGJvb2xlYW4ge1xuICAgIHRoaXMuYnJvd3NlID0gZmFsc2U7XG4gICAgcmV0dXJuICEhKHRoaXMuZmlsZSAmJiAhdGhpcy5lcnJvcnMgJiYgIXRoaXMuaXNNaXNzZWRNaW5TaXplKTtcbiAgfVxuXG4gIC8vU2hvdyBzdWNjZXNzIGVsZW1lbnRzXG4gIHNob3dTdWNjZXNzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhISh0aGlzLmZpbGUgJiYgdGhpcy51cGxvYWRQcm9ncmVzcyA9PT0gMTAwICYmICF0aGlzLmVycm9ycyAmJiAhdGhpcy5pc01pc3NlZE1pblNpemUpO1xuICB9XG5cbiAgLy9TaG93IGJyb3dzZSB3aGVuIHRoZXJlIGFyZSBlcnJvclxuICBzaG93QnJvd3NlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhISh0aGlzLmVycm9ycyB8fCB0aGlzLmlzTWlzc2VkTWluU2l6ZSk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKCF0aGlzLmlzQ2FuY2VsZWQpIHtcbiAgICAgIGlmIChjaGFuZ2VzWyd1cGxvYWRQcm9ncmVzcyddIHx8IGNoYW5nZXNbJ2ZpbGUnXSkge1xuICAgICAgICB0aGlzLnByb2dyZXNzID0gdGhpcy5zaG93UHJvZ3Jlc3MoKTtcbiAgICAgICAgdGhpcy5zdWNjZXNzID0gdGhpcy5zaG93U3VjY2VzcygpO1xuICAgICAgICB0aGlzLmJyb3dzZSA9IHRoaXMuc2hvd0Jyb3dzZSgpO1xuICAgICAgfVxuICAgICAgaWYgKGNoYW5nZXNbJ2Vycm9ycyddKSB7XG4gICAgICAgIHRoaXMucHJvZ3Jlc3MgPSB0aGlzLnNob3dQcm9ncmVzcygpO1xuICAgICAgICB0aGlzLnN1Y2Nlc3MgPSB0aGlzLnNob3dTdWNjZXNzKCk7XG4gICAgICAgIHRoaXMuYnJvd3NlID0gdGhpcy5zaG93QnJvd3NlKCk7XG4gICAgICB9XG4gICAgICBpZiAoY2hhbmdlc1snYXBwbGljYXRpb25UaGVtZSddKSB7XG4gICAgICAgIHRoaXMuY29tcENvbG9yID0gdGhpcy5nZXRDb21wYW55Q29sb3IoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlPzogRmlsZSk6IHZvaWQge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5maWxlID0gdmFsdWUgfHwgbnVsbDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5maWxlID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoID0gZm47XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q29tcGFueUNvbG9yKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuY29tcGFueUNvbG9yIHx8ICh0aGlzLmFwcGxpY2F0aW9uVGhlbWUgPT09ICdjbGFzc2ljJyA/ICcjNDZBOTk3JyA6ICcjRDQxMEFBJyk7XG4gIH1cblxuICBwcml2YXRlIGZpbGVTaXplVG9NQihmaWxlU2l6ZTogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gZmlsZVNpemUgLyAxMDI0IC8gMTAyNDtcbiAgfVxuXG4gIG9uS2V5ZG93bihldjogS2V5Ym9hcmRFdmVudCkge1xuICAgIGlmIChldi5rZXkgPT09ICdFbnRlcicgfHwgZXYua2V5ID09PSAnICcpIHtcbiAgICAgIHRoaXMuZmlsZURyb3AubmF0aXZlRWxlbWVudC5jbGljaygpXG4gICAgfSBlbHNlIGlmICAoZXYua2V5ID09PSAnRXNjYXBlJykge1xuICAgICAgdGhpcy5maWxlID0gbnVsbDtcbiAgICAgIHRoaXMuc3VjY2VzcyA9IGZhbHNlO1xuICAgICAgdGhpcy5wcm9ncmVzcyA9IGZhbHNlO1xuICAgICAgdGhpcy5lcnJvcnMgPSBudWxsO1xuICAgICAgdGhpcy5pc01pc3NlZE1pblNpemUgPSBmYWxzZTtcbiAgICAgIHRoaXMuYnJvd3NlID0gdHJ1ZTtcbiAgICAgIHRoaXMuaXNDYW5jZWxlZCA9IHRydWU7XG4gICAgfVxuICB9XG59XG4iLCI8bmctY29udGFpbmVyPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJ1cGxvYWQtZmlsZS1jb250YWluZXJcIlxuICAgIHVpRHJhZ0Ryb3BcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbFwiXG4gICAgW2F0dHIuYXJpYS1yZXF1aXJlZF09XCJhcmlhUmVxdWlyZWRcIlxuICAgIFthdHRyLnRoZW1lXT1cImFwcGxpY2F0aW9uVGhlbWVcIlxuICAgIFtuZ0NsYXNzXT1cInsgJ3VwbG9hZC1lcnJvcnMnOiAhIWVycm9ycyB8fCBpc01pc3NlZE1pblNpemUsICd1cGxvYWQtZmlsZS1jb250YWluZXItZGlzYWJsZWQnOiBkaXNhYmxlZCB9XCJcbiAgICAoZmlsZURyb3BwZWQpPVwib25GaWxlRHJvcHBlZCgkZXZlbnQpXCJcbiAgICBbdGFiSW5kZXhdPVwiMFwiXG4gICAgKGtleWRvd24pPVwib25LZXlkb3duKCRldmVudClcIlxuICAgIChjbGljayk9XCJmaWxlRHJvcC5uYXRpdmVFbGVtZW50LmNsaWNrKClcIlxuICA+XG4gICAgPHNwYW4gc3R5bGU9XCJwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IC05OTk5cHg7XCIgW2F0dHIuYXJpYS1saXZlXT1cIidwb2xpdGUnXCI+XG4gICAgICB7eyBzdWNjZXNzID8gKCdGSUxFX1VQTE9BRC5GSUxFX1VQTE9BRElOR19TVUNDRVNTJyB8IHVpVHJhbnNsYXRlIHwgYXN5bmMpIDogcHJvZ3Jlc3MgPyAoJ0ZJTEVfVVBMT0FELlVQTE9BRElORycgfCB1aVRyYW5zbGF0ZSB8IGFzeW5jKSA6ICcnIH19XG4gICAgPC9zcGFuPlxuICAgIDxkaXYgKm5nSWY9XCIoYnJvd3NlICYmICEoc3VjY2VzcyAmJiAhIWZpbGUgJiYgcHJvZ3Jlc3MpKVwiIFtAaW5PdXRBbmltYXRpb25dIGNsYXNzPVwidXBsb2FkLWZpbGVzXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwidXBsb2FkLWJyb3dzZVwiPlxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImljb25UcGxcIj48L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiZXJyb3JzXCIgKm5nSWY9XCIhIWVycm9ycyB8fCBpc01pc3NlZE1pblNpemVcIiByb2xlPVwiYWxlcnRcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiISFlcnJvcnNcIj5cbiAgICAgICAgICAgIDxzcGFuICpuZ0Zvcj1cImxldCBlcnJvciBvZiBlcnJvcnNcIj48dWktaWNvbiBuYW1lPVwiRXJyb3JcIiBjbGFzcz1cImVycm9yLWljb25cIj48L3VpLWljb24+XG4gICAgICAgICAgICAgIHt7IGVycm9yIH19PC9zcGFuPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgPHNwYW4gKm5nSWY9XCJpc01pc3NlZE1pblNpemVcIj5cbiAgICAgICAgICAgIDx1aS1pY29uIG5hbWU9XCJFcnJvclwiIGNsYXNzPVwiZXJyb3ItaWNvblwiPjwvdWktaWNvbj5cbiAgICAgICAgICAgIHt7IHRyYW5zbGF0aW9uQ29udGV4dCArICdNSU5fU0laRV9FUlJPUicgfCB1aVRyYW5zbGF0ZSA6IHsgbWluOiBtaW5GaWxlU2l6ZU1CIH0gfCBhc3luYyB9fVxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJzdWNjZXNzIHx8IHByb2dyZXNzID8gJycgOiAnZHJhZy1hbmQtZHJvcCdcIlxuICAgICAgICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiJ3VwbG9hZC1zdXBwb3J0ZWQtZmlsZXMnXCJcbiAgICAgICAgICBbdGFiSW5kZXhdPVwiLTFcIlxuICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAjZmlsZURyb3BcbiAgICAgICAgICB0eXBlPVwiZmlsZVwiXG4gICAgICAgICAgaWQ9XCJmaWxlXCJcbiAgICAgICAgICBbYWNjZXB0XT1cInN1cHBvcnRlZEZpbGVUeXBlc1wiXG4gICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAoY2hhbmdlKT1cIm9uQ2hhbmdlVXBsb2FkKCRldmVudClcIlxuICAgICAgICAvPlxuICAgICAgICA8bGFiZWwgZm9yPVwiZmlsZVwiIGNsYXNzPVwidHJhbnNwYXJlbnRcIj57eyAhIWZpbGUgJiYgc3VjY2VzcyA/ICcnIDogKHRyYW5zbGF0aW9uQ29udGV4dCArICdDSE9PU0VfRklMRScpIHwgdWlUcmFuc2xhdGUgfCBhc3luYyB9fTwvbGFiZWw+XG4gICAgICAgIDxwXG4gICAgICAgICAgKm5nSWY9XCJhcHBsaWNhdGlvblRoZW1lID09PSAnY2xhc3NpYyc7IGVsc2UgcmVicmFuZGVkRG5EQ29weVRwbFwiPnt7ICh0cmFuc2xhdGlvbkNvbnRleHQgKyAnRFJBR19BTkRfRFJPUF9PUicpIHwgdWlUcmFuc2xhdGUgfCBhc3luYyB9fVxuICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgIGNsYXNzPVwic2VtaWJvbGRcIj4ge3sgKHRyYW5zbGF0aW9uQ29udGV4dCArICdCUk9XU0UnKSB8IHVpVHJhbnNsYXRlIHwgYXN5bmMgfCBsb3dlcmNhc2UgfX08L3NwYW4+IHt7ICh0cmFuc2xhdGlvbkNvbnRleHQgKyAnWU9VUl9GSUxFUycpIHwgdWlUcmFuc2xhdGUgfCBhc3luYyB9fVxuICAgICAgICA8L3A+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwidXBsb2FkLXRleHRcIj57eyBtYXhGaWxlU2l6ZU1CIH19e3sgKHRyYW5zbGF0aW9uQ29udGV4dCArICdNQVhfU0laRScpIHwgdWlUcmFuc2xhdGUgfCBhc3luYyB9fTwvc3Bhbj5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCJtaW5GaWxlU2l6ZU1CXCIgY2xhc3M9XCJ1cGxvYWQtdGV4dFwiPnt7IG1pbkZpbGVTaXplTUIgfX17eyAodHJhbnNsYXRpb25Db250ZXh0ICsgJ01JTl9TSVpFJykgfCB1aVRyYW5zbGF0ZSB8IGFzeW5jIH19PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInVwbG9hZC1jaGFuZ2VcIiBbQGluT3V0QW5pbWF0aW9uQ2hhbmdlXSAqbmdJZj1cIiEhc3VjY2VzcyAmJiAhIWZpbGUgJiYgISFwcm9ncmVzc1wiPlxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJpY29uVHBsXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8aW5wdXRcbiAgICAgICAgW3RhYkluZGV4XT1cIi0xXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cInN1Y2Nlc3MgfHwgcHJvZ3Jlc3MgPyAnJyA6ICdkcmFnLWFuZC1kcm9wJ1wiXG4gICAgICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwic3VjY2VzcyB8fCBwcm9ncmVzcyA/ICcnIDogJ3N1cHBvcnRlZC1maWxlLXR5cGVzJ1wiXG4gICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgI2ZpbGVEcm9wXG4gICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgaWQ9XCJmaWxlVGVzdFwiXG4gICAgICAgIFthY2NlcHRdPVwic3VwcG9ydGVkRmlsZVR5cGVzXCJcbiAgICAgICAgKGNoYW5nZSk9XCJvbkNoYW5nZVVwbG9hZCgkZXZlbnQpXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIC8+XG4gICAgICA8bGFiZWwgZm9yPVwiZmlsZVwiIGNsYXNzPVwidHJhbnNwYXJlbnRcIj57eyAhIWZpbGUgJiYgc3VjY2VzcyA/ICcnIDogKHRyYW5zbGF0aW9uQ29udGV4dCArICdDSE9PU0VfRklMRScpIHwgdWlUcmFuc2xhdGUgfCBhc3luYyB9fTwvbGFiZWw+XG4gICAgICA8cFxuICAgICAgICAqbmdJZj1cImFwcGxpY2F0aW9uVGhlbWUgPT09ICdjbGFzc2ljJzsgZWxzZSByZWJyYW5kZWREbkRDb3B5VHBsXCI+e3sgKHRyYW5zbGF0aW9uQ29udGV4dCArICdEUkFHX0FORF9EUk9QX09SJykgfCB1aVRyYW5zbGF0ZSB8IGFzeW5jIH19Jm5ic3A7PHNwYW5cbiAgICAgICAgY2xhc3M9XCJzZW1pYm9sZFwiPnt7ICh0cmFuc2xhdGlvbkNvbnRleHQgKyAnQ0hBTkdFJykgfCB1aVRyYW5zbGF0ZSB8IGFzeW5jIHwgbG93ZXJjYXNlIH19PC9zcGFuPiB7eyAodHJhbnNsYXRpb25Db250ZXh0ICsgJ1lPVVJfRklMRVMnKSB8IHVpVHJhbnNsYXRlIHwgYXN5bmMgfX1cbiAgICAgIDwvcD5cbiAgICAgIDxzcGFuIGNsYXNzPVwidXBsb2FkLXRleHRcIlxuICAgICAgPjxzdHJvbmc+e3sgZmlsZS5uYW1lIH19PC9zdHJvbmc+PC9zcGFuXG4gICAgICA+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInVwbG9hZC1wcm9ncmVzc1wiIFtAaW5PdXRBbmltYXRpb25Qcm9ncmVzc10gKm5nSWY9XCIhIXByb2dyZXNzICYmICEhZmlsZSAmJiAhc3VjY2Vzc1wiPlxuICAgICAgPHA+e3sgZmlsZS5uYW1lIH19PC9wPlxuICAgICAgPHVpLXByb2dyZXNzLWJhciBbcHJvZ3Jlc3NdPVwidXBsb2FkUHJvZ3Jlc3NcIlxuICAgICAgICAgICAgICAgICAgICAgICBbY29tcGFueUNvbG9yXT1cImNvbXBDb2xvclwiXG4gICAgICAgICAgICAgICAgICAgICAgIFthcHBsaWNhdGlvblRoZW1lXT1cImFwcGxpY2F0aW9uVGhlbWVcIj48L3VpLXByb2dyZXNzLWJhcj5cbiAgICAgIDxwIGNsYXNzPVwidXBsb2FkLXRleHRcIj5cbiAgICAgICAge3sgKHRyYW5zbGF0aW9uQ29udGV4dCArICdVUExPQURJTkcnKSB8IHVpVHJhbnNsYXRlIHwgYXN5bmMgfX0gPHNwYW4+e3sgdXBsb2FkUHJvZ3Jlc3MgfX08L3NwYW5cbiAgICAgID4lXG4gICAgICA8L3A+XG4gICAgPC9kaXY+XG5cbiAgICA8bmctdGVtcGxhdGUgI2ljb25UcGw+XG4gICAgICA8dWktaWNvbiAqbmdJZj1cImFwcGxpY2F0aW9uVGhlbWUgPT09ICdjbGFzc2ljJzsgZWxzZSByZWJyYW5kZWRJY29uVHBsXCIgY2xhc3M9XCJ1cGxvYWQtaWNvblwiXG4gICAgICAgICAgICAgICBuYW1lPVwiRmlsZS11cGxvYWRcIj48L3VpLWljb24+XG4gICAgICA8bmctdGVtcGxhdGUgI3JlYnJhbmRlZEljb25UcGw+XG4gICAgICAgIDx1aS1pY29uIGNsYXNzPVwidXBsb2FkLWljb25cIlxuICAgICAgICAgICAgICAgICBuYW1lPVwiVXBsb2FkXCJcbiAgICAgICAgICAgICAgICAgW3NpemVdPVwiJzI0J1wiXG4gICAgICAgICAgICAgICAgIFthcHBsaWNhdGlvblRoZW1lXT1cImFwcGxpY2F0aW9uVGhlbWVcIj48L3VpLWljb24+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXRlbXBsYXRlICNyZWJyYW5kZWREbkRDb3B5VHBsPlxuICAgICAgPHAgaWQ9XCInZHJhZy1hbmQtZHJvcCdcIj57eyAodHJhbnNsYXRpb25Db250ZXh0ICsgJ0RSQUdfQU5EX0RST1AnKSB8IHVpVHJhbnNsYXRlIHwgYXN5bmMgfX08L3A+XG4gICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgIDxkaXZcbiAgICAgICpuZ0lmPVwiISFzdXBwb3J0ZWRGaWxlVHlwZXNcIlxuICAgICAgW2F0dHIudGhlbWVdPVwiYXBwbGljYXRpb25UaGVtZVwiXG4gICAgICBjbGFzcz1cInVwbG9hZC1zdXBwb3J0ZWQtZmlsZXNcIlxuICAgICAgaWQ9XCJ1cGxvYWQtc3VwcG9ydGVkLWZpbGVzXCI+XG4gICAgICA8c3BhbiA+e3sgKHRyYW5zbGF0aW9uQ29udGV4dCArICdTVVBQT1JURURfRklMRV9UWVBFUycpIHwgdWlUcmFuc2xhdGUgfCBhc3luYyB9fTwvc3Bhbj57eyBzdXBwb3J0ZWRGaWxlVHlwZXMgfX1cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
@@ -197,6 +197,8 @@ export const tgoRebrandIcons = [
197
197
  'Check-in-line',
198
198
  'Check-round-filled',
199
199
  'Check-round-in-line',
200
+ 'Circle-filled',
201
+ 'Circle-in-line',
200
202
  'Clone-filled',
201
203
  'Clone-in-line',
202
204
  'Close-filled',
@@ -617,6 +619,8 @@ export const groupedIcons = {
617
619
  'Calendar-in-line',
618
620
  'Chat-filled',
619
621
  'Chat-in-line',
622
+ 'Circle-filled',
623
+ 'Circle-in-line',
620
624
  'Company-filled',
621
625
  'Company-in-line',
622
626
  'Devices-filled',
@@ -682,4 +686,4 @@ export const groupedIcons = {
682
686
  'Volume-in-line',
683
687
  ],
684
688
  };
685
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90Z28tY2Fub3B5LXVpL2NvbXBvbmVudHMvaWNvbi9pY29uLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1QkFBdUI7QUFDdkIsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHO0lBQ3RCLEtBQUs7SUFDTCxTQUFTO0lBQ1QsWUFBWTtJQUNaLFlBQVk7SUFDWixhQUFhO0lBQ2IsVUFBVTtJQUNWLFlBQVk7SUFDWixVQUFVO0lBQ1YsTUFBTTtJQUNOLFVBQVU7SUFDVixZQUFZO0lBQ1osb0JBQW9CO0lBQ3BCLE1BQU07SUFDTixPQUFPO0lBQ1AsT0FBTztJQUNQLE9BQU87SUFDUCxNQUFNO0lBQ04sU0FBUztJQUNULE1BQU07SUFDTixrQkFBa0I7SUFDbEIsUUFBUTtJQUNSLFNBQVM7SUFDVCxVQUFVO0lBQ1YsS0FBSztJQUNMLFVBQVU7SUFDVixNQUFNO0lBQ04sZUFBZTtJQUNmLG1CQUFtQjtJQUNuQixPQUFPO0lBQ1AsT0FBTztJQUNQLFVBQVU7SUFDVixVQUFVO0lBQ1YsWUFBWTtJQUNaLFlBQVk7SUFDWixZQUFZO0lBQ1osWUFBWTtJQUNaLFlBQVk7SUFDWixhQUFhO0lBQ2IsYUFBYTtJQUNiLFFBQVE7SUFDUixRQUFRO0lBQ1IsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixnQkFBZ0I7SUFDaEIsZ0JBQWdCO0lBQ2hCLHFCQUFxQjtJQUNyQixzQkFBc0I7SUFDdEIsYUFBYTtJQUNiLG9CQUFvQjtJQUNwQixtQkFBbUI7SUFDbkIsbUJBQW1CO0lBQ25CLGVBQWU7SUFDZixpQkFBaUI7SUFDakIsZ0JBQWdCO0lBQ2hCLHNCQUFzQjtJQUN0QixzQkFBc0I7SUFDdEIsZUFBZTtJQUNmLGNBQWM7SUFDZCxrQkFBa0I7SUFDbEIsb0JBQW9CO0lBQ3BCLHlCQUF5QjtJQUN6Qix5QkFBeUI7SUFDekIsa0JBQWtCO0lBQ2xC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ZXhwb3J0IGNvbnN0IHRnb0ljb25zID0gW1xuICAnQWRkJyxcbiAgJ0FyY2hpdmUnLFxuICAnQXJyb3dfZG93bicsXG4gICdBcnJvd19sZWZ0JyxcbiAgJ0Fycm93X3JpZ2h0JyxcbiAgJ0Fycm93X3VwJyxcbiAgJ0Fzc2Vzc21lbnQnLFxuICAnQXR0ZW1wdHMnLFxuICAnQm9vaycsXG4gICdDYWxlbmRhcicsXG4gICdDYW5kaWRhdGVzJyxcbiAgJ0NoYXQtbm90aWZpY2F0aW9ucycsXG4gICdDaGF0JyxcbiAgJ0NoZWNrJyxcbiAgJ0Nsb25lJyxcbiAgJ0Nsb3NlJyxcbiAgJ0NvZGUnLFxuICAnQ29tcGFueScsXG4gICdDb3B5JyxcbiAgJ0N1c3RvbS1xdWVzdGlvbnMnLFxuICAnRGVsZXRlJyxcbiAgJ0RldmljZXMnLFxuICAnRG9jdW1lbnQnLFxuICAnRG90JyxcbiAgJ0Rvd25sb2FkJyxcbiAgJ0VkaXQnLFxuICAnRW1haWwtbWVzc2FnZScsXG4gICdFbXB0eS1wbGFjZWhvbGRlcicsXG4gICdFcnJvcicsXG4gICdFc3NheScsXG4gICdFeWUtaGlkZScsXG4gICdFeWUtdmlldycsXG4gICdGZWVkYmFjay0xJyxcbiAgJ0ZlZWRiYWNrLTInLFxuICAnRmVlZGJhY2stMycsXG4gICdGZWVkYmFjay00JyxcbiAgJ0ZlZWRiYWNrLTUnLFxuICAnRmlsZS1hdHRhY2gnLFxuICAnRmlsZS11cGxvYWQnLFxuICAnRmlsdGVyJyxcbiAgJ0ZvbGRlcicsXG4gICdGb3JtYXQtYWRkLWZpbGUnLFxuICAnRm9ybWF0LWFkZC10YWJsZScsXG4gICdGb3JtYXQtYWxpZ24tTCcsXG4gICdGb3JtYXQtYWxpZ24tUicsXG4gICdGb3JtYXQtYWxpZ24tY2VudGVyJyxcbiAgJ0Zvcm1hdC1hbGlnbi1qdXN0aWZ5JyxcbiAgJ0Zvcm1hdC1ib2xkJyxcbiAgJ0Zvcm1hdC1jb2RlLWFjdGl2ZScsXG4gICdGb3JtYXQtY29kZS1ibG9jaycsXG4gICdGb3JtYXQtZWRpdC10YWJsZScsXG4gICdGb3JtYXQtZm9ybWF0JyxcbiAgJ0Zvcm1hdC1mdW5jdGlvbicsXG4gICdGb3JtYXQtaXRhbGljcycsXG4gICdGb3JtYXQtbGlzdC1idWxsZXRlZCcsXG4gICdGb3JtYXQtbGlzdC1udW1iZXJlZCcsXG4gICdGb3JtYXQtcGlja2VyJyxcbiAgJ0Zvcm1hdC1xdW90ZScsXG4gICdGb3JtYXQtc3Vic2NyaXB0JyxcbiAgJ0Zvcm1hdC1zdXBlcnNjcmlwdCcsXG4gICdGb3JtYXQtdGV4dC1kaXJlY3Rpb24tTCcsXG4gICdGb3JtYXQtdGV4dC1kaXJlY3Rpb24tUicsXG4gICdGb3JtYXQtdGV4dC1zaXplJyxcbiAgJ0Zvcm1hdC11bmRlcmxpbmUnLFxuICAnRm9ybWF0LXZhcmlhYmxlJyxcbiAgJ0Z1bGwtc2NyZWVuJyxcbiAgJ0dlbmRlci1mZW1hbGUnLFxuICAnR2VuZGVyLW1hbGUnLFxuICAnSGVscC0yJyxcbiAgJ0hlbHAnLFxuICAnSW1hZ2UnLFxuICAnSW5mbycsXG4gICdJbnRlZ3JhdGlvbicsXG4gICdMYW5ndWFnZScsXG4gICdMYXlvdXQnLFxuICAnTGVhcm4nLFxuICAnTGV2ZWwnLFxuICAnTGlnaHQtYnVsYicsXG4gICdMaW5rJyxcbiAgJ0xvYWRpbmctc3Bpbm5lcicsXG4gICdMb2NhbGlzYXRpb24nLFxuICAnTG9jYXRpb24nLFxuICAnTG9jaycsXG4gICdMb2ctb3V0JyxcbiAgJ01lbnUtYnVyZ2VyJyxcbiAgJ01lbnUtZWxsaXBzaXMnLFxuICAnTWljcm9waG9uZScsXG4gICdNaW51cycsXG4gICdNb3VzZS1jdXJzb3InLFxuICAnTW91c2UtZ3JhYi1jdXJzb3InLFxuICAnTW91c2UnLFxuICAnTXVsdGktY2hvaWNlJyxcbiAgJ05vdGlmaWNhdGlvbnMnLFxuICAnUGFzc3dvcmQnLFxuICAnUGF0aCcsXG4gICdQaW4tbWFya2VyJyxcbiAgJ1BsYW4tYmlsbGluZycsXG4gICdQbHVzJyxcbiAgJ1ByZW1pdW0nLFxuICAnUHJvbW90aW9uJyxcbiAgJ1F1ZXN0aW9uLWNvdW50JyxcbiAgJ1JlZmVyJyxcbiAgJ1Jlc2V0JyxcbiAgJ1JldmlldycsXG4gICdSb3VuZC1jaGVjay1maWxsZWQnLFxuICAnUm91bmQtY2hlY2snLFxuICAnU2VhcmNoJyxcbiAgJ1NlY3VyZS1jaGVja291dCcsXG4gICdTZW5kJyxcbiAgJ1NldHRpbmdzJyxcbiAgJ1NvY2lhbC1mYWNlYm9vaycsXG4gICdTb2NpYWwtaW5zdGFncmFtJyxcbiAgJ1NvY2lhbC1saW5rZWRpbicsXG4gICdTb3J0aW5nLWRvd24tMScsXG4gICdTb3J0aW5nLWRvd24nLFxuICAnU3BlZWRvbWV0ZXInLFxuICAnU3Rhci1maWxsZWQnLFxuICAnU3Rhci1oYWxmJyxcbiAgJ1N0YXItb3V0bGluZScsXG4gICdTdXBwb3J0JyxcbiAgJ1N5bmMnLFxuICAnVGVhbScsXG4gICdUZXN0JyxcbiAgJ1RodW5kZXInLFxuICAnVGltZXInLFxuICAnVHJvcGh5JyxcbiAgJ1R5cGUnLFxuICAnVW5hcmNoaXZlJyxcbiAgJ1VubG9jaycsXG4gICdVcGdyYWRlJyxcbiAgJ1VwbG9hZCcsXG4gICdVc2VyLWFjY2VzcycsXG4gICdVc2VyLWFkZCcsXG4gICdVc2VyLWludml0ZScsXG4gICdVc2VyLXByb2ZpbGUnLFxuICAnVXNlci1yZWplY3QnLFxuICAnVXNlci1zd2l0Y2gnLFxuICAnVmlkZW8tcGF1c2UnLFxuICAnVmlkZW8tcGxheScsXG4gICdWaWRlby1yZWNvcmQnLFxuICAnVmlkZW8nLFxuICAnVm9sdW1lJyxcbiAgJ1dhcm5pbmcnLFxuICAnWm9vbS1pbicsXG4gICdab29tLW91dCcsXG4gICdGaXJlJyxcbiAgJ0dpZnQnLFxuICAnR3JhYicsXG4gICdTaGFyZScsXG4gICdTcGFya2xlcycsXG4gICdWaWRlby1zdG9wJyxcbiAgJ01pbmltaXplJyxcbiAgJ0VtcGxveWVlJyxcbiAgJ01vbmV5LWJhZycsXG4gICdTdWl0Y2FzZScsXG4gICdHb29nbGUnLFxuICAnRmFzdC1mb3J3YXJkJyxcbiAgJ0Zhc3QtcmV3aW5kJyxcbiAgJ1NraXAtbmV4dCcsXG4gICdTa2lwLXByZXZpb3VzJyxcbiAgJ1Rlc3RHb3JpbGxhJyxcbl0gYXMgY29uc3Q7XG5cbmV4cG9ydCBjb25zdCB0Z29SZWJyYW5kSWNvbnMgPSBbXG4gICdBcmNoaXZlLWZpbGxlZCcsXG4gICdBcmNoaXZlLWluLWxpbmUnLFxuICAnQWRkLWluLWxpbmUnLFxuICAnQWRkLWZpbGxlZCcsXG4gICdBcnJvdy1jaGV2cm9uLWRvd24tZmlsbGVkJyxcbiAgJ0Fycm93LWNoZXZyb24tZG93bi1pbi1saW5lJyxcbiAgJ0Fycm93LWNoZXZyb24tbGVmdC1maWxsZWQnLFxuICAnQXJyb3ctY2hldnJvbi1sZWZ0LWluLWxpbmUnLFxuICAnQXJyb3ctY2hldnJvbi1yaWdodC1maWxsZWQnLFxuICAnQXJyb3ctY2hldnJvbi1yaWdodC1pbi1saW5lJyxcbiAgJ0Fycm93LWNoZXZyb24tdXAtZmlsbGVkJyxcbiAgJ0Fycm93LWNoZXZyb24tdXAtaW4tbGluZScsXG4gICdBcnJvdy1kb3duLWZpbGxlZCcsXG4gICdBcnJvdy1kb3duLWluLWxpbmUnLFxuICAnQXJyb3ctdXAtZmlsbGVkJyxcbiAgJ0Fycm93LXVwLWluLWxpbmUnLFxuICAnQXNzZXNzbWVudC1maWxsZWQnLFxuICAnQXNzZXNzbWVudC1pbi1saW5lJyxcbiAgJ0F0dGFjaC1maWxsZWQnLFxuICAnQXR0YWNoLWluLWxpbmUnLFxuICAnQXR0ZW1wdHMtZmlsbGVkJyxcbiAgJ0F0dGVtcHRzLWluLWxpbmUnLFxuICAnQm9vay1maWxsZWQnLFxuICAnQm9vay1pbi1saW5lJyxcbiAgJ0NhbGVuZGFyLWZpbGxlZCcsXG4gICdDYWxlbmRhci1pbi1saW5lJyxcbiAgJ0NhbmRpZGF0ZXMtZmlsbGVkJyxcbiAgJ0NhbmRpZGF0ZXMtaW4tbGluZScsXG4gICdDaGF0LWZpbGxlZCcsXG4gICdDaGF0LWluLWxpbmUnLFxuICAnQ2hlY2stZmlsbGVkJyxcbiAgJ0NoZWNrLWluLWxpbmUnLFxuICAnQ2hlY2stcm91bmQtZmlsbGVkJyxcbiAgJ0NoZWNrLXJvdW5kLWluLWxpbmUnLFxuICAnQ2xvbmUtZmlsbGVkJyxcbiAgJ0Nsb25lLWluLWxpbmUnLFxuICAnQ2xvc2UtZmlsbGVkJyxcbiAgJ0Nsb3NlLWluLWxpbmUnLFxuICAnQ29kZS1maWxsZWQnLFxuICAnQ29kZS1pbi1saW5lJyxcbiAgJ0NvbXBhbnktZmlsbGVkJyxcbiAgJ0NvbXBhbnktaW4tbGluZScsXG4gICdDb3B5LWZpbGxlZCcsXG4gICdDb3B5LWluLWxpbmUnLFxuICAnRGVsZXRlLWZpbGxlZCcsXG4gICdEZWxldGUtaW4tbGluZScsXG4gICdEZXZpY2VzLWZpbGxlZCcsXG4gICdEZXZpY2VzLWluLWxpbmUnLFxuICAnRG9jdW1lbnQtZmlsbGVkJyxcbiAgJ0RvY3VtZW50LWluLWxpbmUnLFxuICAnRG90LWZpbGxlZCcsXG4gICdEb3QtaW4tbGluZScsXG4gICdEb3dubG9hZC1maWxsZWQnLFxuICAnRG93bmxvYWQtaW4tbGluZScsXG4gICdFZGl0LWZpbGxlZCcsXG4gICdFZGl0LWluLWxpbmUnLFxuICAnRWRpdC10ZXh0LWZpbGxlZCcsXG4gICdFZGl0LXRleHQtaW4tbGluZScsXG4gICdFbXBsb3llZS1maWxsZWQnLFxuICAnRW1wbG95ZWUtaW4tbGluZScsXG4gICdFcnJvci1maWxsZWQnLFxuICAnRXJyb3ItaW4tbGluZScsXG4gICdFc3NheS1maWxsZWQnLFxuICAnRXNzYXktaW4tbGluZScsXG4gICdFeHBlcmllbmNlLWZpbGxlZCcsXG4gICdFeHBlcmllbmNlLWluLWxpbmUnLFxuICAnRmFjZWJvb2stZmlsbGVkJyxcbiAgJ0ZhY2Vib29rLWluLWxpbmUnLFxuICAnRmFzdC1mb3J3YXJkLWZpbGxlZCcsXG4gICdGYXN0LWZvcndhcmQtaW4tbGluZScsXG4gICdGYXN0LXJld2luZC1maWxsZWQnLFxuICAnRmFzdC1yZXdpbmQtaW4tbGluZScsXG4gICdGaWx0ZXItZmlsbGVkJyxcbiAgJ0ZpbHRlci1pbi1saW5lJyxcbiAgJ0ZpcmUtZmlsbGVkJyxcbiAgJ0ZpcmUtaW4tbGluZScsXG4gICdGb2xkZXItZmlsbGVkJyxcbiAgJ0ZvbGRlci1pbi1saW5lJyxcbiAgJ0Z1bGwtc2NyZWVuLWZpbGxlZCcsXG4gICdGdWxsLXNjcmVlbi1pbi1saW5lJyxcbiAgJ0dlbmRlci1tYWxlLWZpbGxlZCcsXG4gICdHZW5kZXItbWFsZS1pbi1saW5lJyxcbiAgJ0dlbmRlci1mZW1hbGUtZmlsbGVkJyxcbiAgJ0dlbmRlci1mZW1hbGUtaW4tbGluZScsXG4gICdHaWZ0LWZpbGxlZCcsXG4gICdHaWZ0LWluLWxpbmUnLFxuICAnR29vZ2xlLWZpbGxlZCcsXG4gICdHb29nbGUtaW4tbGluZScsXG4gICdHcmFiLWZpbGxlZCcsXG4gICdHcmFiLWluLWxpbmUnLFxuICAnSGVscC1maWxsZWQnLFxuICAnSGVscC1pbi1saW5lJyxcbiAgJ0hpZGUtZmlsbGVkJyxcbiAgJ0hpZGUtaW4tbGluZScsXG4gICdJbWFnZS1maWxsZWQnLFxuICAnSW1hZ2UtaW4tbGluZScsXG4gICdJbmZvLWZpbGxlZCcsXG4gICdJbmZvLWluLWxpbmUnLFxuICAnSW5zdGFncmFtLWZpbGxlZCcsXG4gICdJbnN0YWdyYW0taW4tbGluZScsXG4gICdJbnRlZ3JhdGlvbi1maWxsZWQnLFxuICAnSW50ZWdyYXRpb24taW4tbGluZScsXG4gICdJbnZpdGUtZmlsbGVkJyxcbiAgJ0ludml0ZS1pbi1saW5lJyxcbiAgJ0xhbmd1YWdlLWZpbGxlZCcsXG4gICdMYW5ndWFnZS1pbi1saW5lJyxcbiAgJ0xheW91dC1maWxsZWQnLFxuICAnTGF5b3V0LWluLWxpbmUnLFxuICAnTGVhcm4tZmlsbGVkJyxcbiAgJ0xlYXJuLWluLWxpbmUnLFxuICAnTGV2ZWwtZmlsbGVkJyxcbiAgJ0xldmVsLWluLWxpbmUnLFxuICAnTGlnaHQtYnVsYi1maWxsZWQnLFxuICAnTGlnaHQtYnVsYi1pbi1saW5lJyxcbiAgJ0xpbmstZmlsbGVkJyxcbiAgJ0xpbmstaW4tbGluZScsXG4gICdMaW5rZWRpbi1maWxsZWQnLFxuICAnTGlua2VkaW4taW4tbGluZScsXG4gICdMb2NhbGl6YXRpb24tZmlsbGVkJyxcbiAgJ0xvY2FsaXphdGlvbi1pbi1saW5lJyxcbiAgJ0xvY2F0aW9uLWZpbGxlZCcsXG4gICdMb2NhdGlvbi1pbi1saW5lJyxcbiAgJ0xvY2stZmlsbGVkJyxcbiAgJ0xvY2staW4tbGluZScsXG4gICdMb2dvdXQtZmlsbGVkJyxcbiAgJ0xvZ291dC1pbi1saW5lJyxcbiAgJ01lZGFsLWZpbGxlZCcsXG4gICdNZWRhbC1pbi1saW5lJyxcbiAgJ01lbnUtYnVyZ2VyLWZpbGxlZCcsXG4gICdNZW51LWJ1cmdlci1pbi1saW5lJyxcbiAgJ01lbnUtZWxsaXBzaXMtZmlsbGVkJyxcbiAgJ01lbnUtZWxsaXBzaXMtaW4tbGluZScsXG4gICdNaWMtZmlsbGVkJyxcbiAgJ01pYy1pbi1saW5lJyxcbiAgJ01pbmltaXplLWZpbGxlZCcsXG4gICdNaW5pbWl6ZS1pbi1saW5lJyxcbiAgJ01pbnVzLWZpbGxlZCcsXG4gICdNaW51cy1pbi1saW5lJyxcbiAgJ01vdXNlLWZpbGxlZCcsXG4gICdNb3VzZS1pbi1saW5lJyxcbiAgJ011bHRpLWNob2ljZS1maWxsZWQnLFxuICAnTXVsdGktY2hvaWNlLWluLWxpbmUnLFxuICAnTm90aWZpY2F0aW9uLWJlbGwtZmlsbGVkJyxcbiAgJ05vdGlmaWNhdGlvbi1iZWxsLWluLWxpbmUnLFxuICAnUGFzc3dvcmQtZmlsbGVkJyxcbiAgJ1Bhc3N3b3JkLWluLWxpbmUnLFxuICAnUGF0aC1maWxsZWQnLFxuICAnUGF0aC1pbi1saW5lJyxcbiAgJ1BhdXNlLWZpbGxlZCcsXG4gICdQYXVzZS1pbi1saW5lJyxcbiAgJ1Bpbi1tYXJrZXItZmlsbGVkJyxcbiAgJ1Bpbi1tYXJrZXItaW4tbGluZScsXG4gICdQbGFuLWJpbGxpbmctZmlsbGVkJyxcbiAgJ1BsYW4tYmlsbGluZy1pbi1saW5lJyxcbiAgJ1BsYXktZmlsbGVkJyxcbiAgJ1BsYXktaW4tbGluZScsXG4gICdQbHVzLWZpbGxlZCcsXG4gICdQbHVzLWluLWxpbmUnLFxuICAnUHJlbWl1bS1maWxsZWQnLFxuICAnUHJlbWl1bS1pbi1saW5lJyxcbiAgJ1ByZW1pdW0tY2lyY2xlLWluLWxpbmUnLFxuICAnUXVlc3Rpb24tY291bnQtZmlsbGVkJyxcbiAgJ1F1ZXN0aW9uLWNvdW50LWluLWxpbmUnLFxuICAnUXVlc3Rpb24tZmlsbGVkJyxcbiAgJ1F1ZXN0aW9uLWluLWxpbmUnLFxuICAnUmVjb3JkLWZpbGxlZCcsXG4gICdSZWNvcmQtaW4tbGluZScsXG4gICdSZWplY3QtZmlsbGVkJyxcbiAgJ1JlZmVyLWluLWxpbmUnLFxuICAnUmVmZXItZmlsbGVkJyxcbiAgJ1JlamVjdC1pbi1saW5lJyxcbiAgJ1Jlc2V0LWZpbGxlZCcsXG4gICdSZXNldC1pbi1saW5lJyxcbiAgJ1Jldmlldy1lbW9qaS0xLWZpbGxlZCcsXG4gICdSZXZpZXctZW1vamktMS1pbi1saW5lJyxcbiAgJ1Jldmlldy1lbW9qaS0yLWZpbGxlZCcsXG4gICdSZXZpZXctZW1vamktMi1pbi1saW5lJyxcbiAgJ1Jldmlldy1lbW9qaS0zLWZpbGxlZCcsXG4gICdSZXZpZXctZW1vamktMy1pbi1saW5lJyxcbiAgJ1Jldmlldy1lbW9qaS00LWZpbGxlZCcsXG4gICdSZXZpZXctZW1vamktNC1pbi1saW5lJyxcbiAgJ1Jldmlldy1lbW9qaS01LWZpbGxlZCcsXG4gICdSZXZpZXctZW1vamktNS1pbi1saW5lJyxcbiAgJ1Jldmlldy1maWxsZWQnLFxuICAnUmV2aWV3LWhhbGYtc3Rhci1maWxsZWQnLFxuICAnUmV2aWV3LWhhbGYtc3Rhci1pbi1saW5lJyxcbiAgJ1Jldmlldy1pbi1saW5lJyxcbiAgJ1Jldmlldy1zdGFyLWZpbGxlZCcsXG4gICdSZXZpZXctc3Rhci1pbi1saW5lJyxcbiAgJ1NlYXJjaC1maWxsZWQnLFxuICAnU2VhcmNoLWluLWxpbmUnLFxuICAnU2VjdXJlLWZpbGxlZCcsXG4gICdTZWN1cmUtaW4tbGluZScsXG4gICdTZW5kLWZpbGxlZCcsXG4gICdTZW5kLWluLWxpbmUnLFxuICAnU2V0dGluZ3MtZmlsbGVkJyxcbiAgJ1NldHRpbmdzLWluLWxpbmUnLFxuICAnU2hhcmUtZmlsbGVkJyxcbiAgJ1NoYXJlLWluLWxpbmUnLFxuICAnU2tpcC1uZXh0LWZpbGxlZCcsXG4gICdTa2lwLW5leHQtaW4tbGluZScsXG4gICdTa2lwLXByZXZpb3VzLWZpbGxlZCcsXG4gICdTa2lwLXByZXZpb3VzLWluLWxpbmUnLFxuICAnU3BhcmtsZS1maWxsZWQnLFxuICAnU3BhcmtsZS1pbi1saW5lJyxcbiAgJ1NwZWVkb21ldGVyLWZpbGxlZCcsXG4gICdTcGVlZG9tZXRlci1pbi1saW5lJyxcbiAgJ1N0b3AtZmlsbGVkJyxcbiAgJ1N0b3AtaW4tbGluZScsXG4gICdTd2l0Y2gtZmlsbGVkJyxcbiAgJ1N3aXRjaC1pbi1saW5lJyxcbiAgJ1N5bmMtZmlsbGVkJyxcbiAgJ1N5bmMtaW4tbGluZScsXG4gICdUZWFtLWZpbGxlZCcsXG4gICdUZWFtLWluLWxpbmUnLFxuICAnVGVzdC1maWxsZWQnLFxuICAnVGVzdC1pbi1saW5lJyxcbiAgJ1RpbWVyLWZpbGxlZCcsXG4gICdUaW1lci1pbi1saW5lJyxcbiAgJ1Ryb3BoeS1maWxsZWQnLFxuICAnVHJvcGh5LWluLWxpbmUnLFxuICAnVHlwZS1maWxsZWQnLFxuICAnVHlwZS1pbi1saW5lJyxcbiAgJ1VuYXJjaGl2ZS1maWxsZWQnLFxuICAnVW5hcmNoaXZlLWluLWxpbmUnLFxuICAnVW5sb2NrLWZpbGxlZCcsXG4gICdVbmxvY2staW4tbGluZScsXG4gICdVcGdyYWRlLWZpbGxlZCcsXG4gICdVcGdyYWRlLWluLWxpbmUnLFxuICAnVXBsb2FkLWZpbGxlZCcsXG4gICdVcGxvYWQtaW4tbGluZScsXG4gICdVc2VyLWFjY2Vzcy1maWxsZWQnLFxuICAnVXNlci1hY2Nlc3MtaW4tbGluZScsXG4gICdVc2VyLWFkZC1maWxsZWQnLFxuICAnVXNlci1hZGQtaW4tbGluZScsXG4gICdVc2VyLXByb2ZpbGUtZmlsbGVkJyxcbiAgJ1VzZXItcHJvZmlsZS1pbi1saW5lJyxcbiAgJ1ZpZGVvLWZpbGxlZCcsXG4gICdWaWRlby1pbi1saW5lJyxcbiAgJ1ZpZXctZmlsbGVkJyxcbiAgJ1ZpZXctaW4tbGluZScsXG4gICdWb2x1bWUtZmlsbGVkJyxcbiAgJ1ZvbHVtZS1pbi1saW5lJyxcbiAgJ1dhcm5pbmctZmlsbGVkJyxcbiAgJ1dhcm5pbmctaW4tbGluZScsXG4gICdWYWxpZGF0ZWQtZmlsbGVkJyxcbiAgJ1ZhbGlkYXRlZC1pbi1saW5lJyxcbiAgJ1pvb20taW4tZmlsbGVkJyxcbiAgJ1pvb20taW4taW4tbGluZScsXG4gICdab29tLW91dC1maWxsZWQnLFxuICAnWm9vbS1vdXQtaW4tbGluZScsXG4gICdUZXN0R29yaWxsYS1maWxsZWQnLFxuICAnVGVzdEdvcmlsbGEtaW4tbGluZScsXG5dIGFzIGNvbnN0O1xuXG5leHBvcnQgY29uc3QgZ3JvdXBlZEljb25zID0ge1xuICBkaXJlY3Rpb25hbDogW1xuICAgICdBcnJvdy1jaGV2cm9uLWRvd24tZmlsbGVkJyxcbiAgICAnQXJyb3ctY2hldnJvbi1kb3duLWluLWxpbmUnLFxuICAgICdBcnJvdy1jaGV2cm9uLWxlZnQtZmlsbGVkJyxcbiAgICAnQXJyb3ctY2hldnJvbi1sZWZ0LWluLWxpbmUnLFxuICAgICdBcnJvdy1jaGV2cm9uLXJpZ2h0LWZpbGxlZCcsXG4gICAgJ0Fycm93LWNoZXZyb24tcmlnaHQtaW4tbGluZScsXG4gICAgJ0Fycm93LWNoZXZyb24tdXAtZmlsbGVkJyxcbiAgICAnQXJyb3ctY2hldnJvbi11cC1pbi1saW5lJyxcbiAgICAnQXJyb3ctZG93bi1maWxsZWQnLFxuICAgICdBcnJvdy1kb3duLWluLWxpbmUnLFxuICAgICdBcnJvdy11cC1maWxsZWQnLFxuICAgICdBcnJvdy11cC1pbi1saW5lJyxcbiAgICAnRmFzdC1mb3J3YXJkLWZpbGxlZCcsXG4gICAgJ0Zhc3QtZm9yd2FyZC1pbi1saW5lJyxcbiAgICAnRmFzdC1yZXdpbmQtZmlsbGVkJyxcbiAgICAnRmFzdC1yZXdpbmQtaW4tbGluZScsXG4gICAgJ01pbnVzLWZpbGxlZCcsXG4gICAgJ01pbnVzLWluLWxpbmUnLFxuICAgICdQbHVzLWZpbGxlZCcsXG4gICAgJ1BsdXMtaW4tbGluZScsXG4gICAgJ1NraXAtbmV4dC1maWxsZWQnLFxuICAgICdTa2lwLW5leHQtaW4tbGluZScsXG4gICAgJ1NraXAtcHJldmlvdXMtZmlsbGVkJyxcbiAgICAnU2tpcC1wcmV2aW91cy1pbi1saW5lJyxcbiAgXSxcbiAgYXNzZXNzbWVudDogW1xuICAgICdBc3Nlc3NtZW50LWZpbGxlZCcsXG4gICAgJ0Fzc2Vzc21lbnQtaW4tbGluZScsXG4gICAgJ0F0dGVtcHRzLWZpbGxlZCcsXG4gICAgJ0F0dGVtcHRzLWluLWxpbmUnLFxuICAgICdDYW5kaWRhdGVzLWZpbGxlZCcsXG4gICAgJ0NhbmRpZGF0ZXMtaW4tbGluZScsXG4gICAgJ0NvZGUtZmlsbGVkJyxcbiAgICAnQ29kZS1pbi1saW5lJyxcbiAgICAnRXNzYXktZmlsbGVkJyxcbiAgICAnRXNzYXktaW4tbGluZScsXG4gICAgJ0xhbmd1YWdlLWZpbGxlZCcsXG4gICAgJ0xhbmd1YWdlLWluLWxpbmUnLFxuICAgICdMZWFybi1maWxsZWQnLFxuICAgICdMZWFybi1pbi1saW5lJyxcbiAgICAnTGV2ZWwtZmlsbGVkJyxcbiAgICAnTGV2ZWwtaW4tbGluZScsXG4gICAgJ0xvY2FsaXphdGlvbi1maWxsZWQnLFxuICAgICdMb2NhbGl6YXRpb24taW4tbGluZScsXG4gICAgJ01lZGFsLWZpbGxlZCcsXG4gICAgJ01lZGFsLWluLWxpbmUnLFxuICAgICdNaWMtZmlsbGVkJyxcbiAgICAnTWljLWluLWxpbmUnLFxuICAgICdNdWx0aS1jaG9pY2UtZmlsbGVkJyxcbiAgICAnTXVsdGktY2hvaWNlLWluLWxpbmUnLFxuICAgICdRdWVzdGlvbi1jb3VudC1maWxsZWQnLFxuICAgICdRdWVzdGlvbi1jb3VudC1pbi1saW5lJyxcbiAgICAnUXVlc3Rpb24tZmlsbGVkJyxcbiAgICAnUXVlc3Rpb24taW4tbGluZScsXG4gICAgJ1NwZWVkb21ldGVyLWZpbGxlZCcsXG4gICAgJ1NwZWVkb21ldGVyLWluLWxpbmUnLFxuICAgICdUZXN0LWZpbGxlZCcsXG4gICAgJ1Rlc3QtaW4tbGluZScsXG4gICAgJ1RpbWVyLWZpbGxlZCcsXG4gICAgJ1RpbWVyLWluLWxpbmUnLFxuICAgICdUeXBlLWZpbGxlZCcsXG4gICAgJ1R5cGUtaW4tbGluZScsXG4gICAgJ1ZpZGVvLWZpbGxlZCcsXG4gICAgJ1ZpZGVvLWluLWxpbmUnLFxuICBdLFxuICBzdGF0dXM6IFtcbiAgICAnQ2hlY2stZmlsbGVkJyxcbiAgICAnQ2hlY2staW4tbGluZScsXG4gICAgJ0NoZWNrLXJvdW5kLWZpbGxlZCcsXG4gICAgJ0NoZWNrLXJvdW5kLWluLWxpbmUnLFxuICAgICdFcnJvci1maWxsZWQnLFxuICAgICdFcnJvci1pbi1saW5lJyxcbiAgICAnSGVscC1maWxsZWQnLFxuICAgICdIZWxwLWluLWxpbmUnLFxuICAgICdJbmZvLWZpbGxlZCcsXG4gICAgJ0luZm8taW4tbGluZScsXG4gICAgJ1JlZmVyLWluLWxpbmUnLFxuICAgICdSZWZlci1maWxsZWQnLFxuICAgICdSZXZpZXctZW1vamktMS1maWxsZWQnLFxuICAgICdSZXZpZXctZW1vamktMS1pbi1saW5lJyxcbiAgICAnUmV2aWV3LWVtb2ppLTItZmlsbGVkJyxcbiAgICAnUmV2aWV3LWVtb2ppLTItaW4tbGluZScsXG4gICAgJ1Jldmlldy1lbW9qaS0zLWZpbGxlZCcsXG4gICAgJ1Jldmlldy1lbW9qaS0zLWluLWxpbmUnLFxuICAgICdSZXZpZXctZW1vamktNC1maWxsZWQnLFxuICAgICdSZXZpZXctZW1vamktNC1pbi1saW5lJyxcbiAgICAnUmV2aWV3LWVtb2ppLTUtZmlsbGVkJyxcbiAgICAnUmV2aWV3LWVtb2ppLTUtaW4tbGluZScsXG4gICAgJ1Jldmlldy1oYWxmLXN0YXItZmlsbGVkJyxcbiAgICAnUmV2aWV3LWhhbGYtc3Rhci1pbi1saW5lJyxcbiAgICAnUmV2aWV3LXN0YXItZmlsbGVkJyxcbiAgICAnUmV2aWV3LXN0YXItaW4tbGluZScsXG4gICAgJ1dhcm5pbmctZmlsbGVkJyxcbiAgICAnV2FybmluZy1pbi1saW5lJyxcbiAgICAnVmFsaWRhdGVkLWZpbGxlZCcsXG4gICAgJ1ZhbGlkYXRlZC1pbi1saW5lJyxcbiAgXSxcbiAgc29jaWFsOiBbXG4gICAgJ0ZhY2Vib29rLWZpbGxlZCcsXG4gICAgJ0ZhY2Vib29rLWluLWxpbmUnLFxuICAgICdHb29nbGUtZmlsbGVkJyxcbiAgICAnR29vZ2xlLWluLWxpbmUnLFxuICAgICdJbnN0YWdyYW0tZmlsbGVkJyxcbiAgICAnSW5zdGFncmFtLWluLWxpbmUnLFxuICAgICdMaW5rZWRpbi1maWxsZWQnLFxuICAgICdMaW5rZWRpbi1pbi1saW5lJyxcbiAgICAnVGVzdEdvcmlsbGEtZmlsbGVkJyxcbiAgICAnVGVzdEdvcmlsbGEtaW4tbGluZScsXG4gIF0sXG4gIGFjdGlvbnM6IFtcbiAgICAnQXJjaGl2ZS1maWxsZWQnLFxuICAgICdBcmNoaXZlLWluLWxpbmUnLFxuICAgICdBdHRhY2gtZmlsbGVkJyxcbiAgICAnQXR0YWNoLWluLWxpbmUnLFxuICAgICdDbG9uZS1maWxsZWQnLFxuICAgICdDbG9uZS1pbi1saW5lJyxcbiAgICAnQ2xvc2UtZmlsbGVkJyxcbiAgICAnQ2xvc2UtaW4tbGluZScsXG4gICAgJ0NvcHktZmlsbGVkJyxcbiAgICAnQ29weS1pbi1saW5lJyxcbiAgICAnRGVsZXRlLWZpbGxlZCcsXG4gICAgJ0RlbGV0ZS1pbi1saW5lJyxcbiAgICAnRG93bmxvYWQtZmlsbGVkJyxcbiAgICAnRG93bmxvYWQtaW4tbGluZScsXG4gICAgJ0VkaXQtZmlsbGVkJyxcbiAgICAnRWRpdC1pbi1saW5lJyxcbiAgICAnRWRpdC10ZXh0LWZpbGxlZCcsXG4gICAgJ0VkaXQtdGV4dC1pbi1saW5lJyxcbiAgICAnRmlsdGVyLWZpbGxlZCcsXG4gICAgJ0ZpbHRlci1pbi1saW5lJyxcbiAgICAnRnVsbC1zY3JlZW4tZmlsbGVkJyxcbiAgICAnRnVsbC1zY3JlZW4taW4tbGluZScsXG4gICAgJ0dyYWItZmlsbGVkJyxcbiAgICAnR3JhYi1pbi1saW5lJyxcbiAgICAnSGlkZS1maWxsZWQnLFxuICAgICdIaWRlLWluLWxpbmUnLFxuICAgICdJbnZpdGUtZmlsbGVkJyxcbiAgICAnSW52aXRlLWluLWxpbmUnLFxuICAgICdMaW5rLWZpbGxlZCcsXG4gICAgJ0xpbmstaW4tbGluZScsXG4gICAgJ0xvY2stZmlsbGVkJyxcbiAgICAnTG9jay1pbi1saW5lJyxcbiAgICAnTG9nb3V0LWZpbGxlZCcsXG4gICAgJ0xvZ291dC1pbi1saW5lJyxcbiAgICAnTWVudS1idXJnZXItZmlsbGVkJyxcbiAgICAnTWVudS1idXJnZXItaW4tbGluZScsXG4gICAgJ01lbnUtZWxsaXBzaXMtZmlsbGVkJyxcbiAgICAnTWVudS1lbGxpcHNpcy1pbi1saW5lJyxcbiAgICAnTWluaW1pemUtZmlsbGVkJyxcbiAgICAnTWluaW1pemUtaW4tbGluZScsXG4gICAgJ1BhdXNlLWZpbGxlZCcsXG4gICAgJ1BhdXNlLWluLWxpbmUnLFxuICAgICdQbGF5LWZpbGxlZCcsXG4gICAgJ1BsYXktaW4tbGluZScsXG4gICAgJ1JlY29yZC1maWxsZWQnLFxuICAgICdSZWNvcmQtaW4tbGluZScsXG4gICAgJ1JlamVjdC1maWxsZWQnLFxuICAgICdSZWplY3QtaW4tbGluZScsXG4gICAgJ1Jlc2V0LWZpbGxlZCcsXG4gICAgJ1Jlc2V0LWluLWxpbmUnLFxuICAgICdSZXZpZXctZmlsbGVkJyxcbiAgICAnUmV2aWV3LWhhbGYtc3Rhci1maWxsZWQnLFxuICAgICdTZWFyY2gtZmlsbGVkJyxcbiAgICAnU2VhcmNoLWluLWxpbmUnLFxuICAgICdTZW5kLWZpbGxlZCcsXG4gICAgJ1NlbmQtaW4tbGluZScsXG4gICAgJ1NldHRpbmdzLWZpbGxlZCcsXG4gICAgJ1NldHRpbmdzLWluLWxpbmUnLFxuICAgICdTaGFyZS1maWxsZWQnLFxuICAgICdTaGFyZS1pbi1saW5lJyxcbiAgICAnU3RvcC1maWxsZWQnLFxuICAgICdTdG9wLWluLWxpbmUnLFxuICAgICdTd2l0Y2gtZmlsbGVkJyxcbiAgICAnU3dpdGNoLWluLWxpbmUnLFxuICAgICdVbmFyY2hpdmUtZmlsbGVkJyxcbiAgICAnVW5hcmNoaXZlLWluLWxpbmUnLFxuICAgICdVbmxvY2stZmlsbGVkJyxcbiAgICAnVW5sb2NrLWluLWxpbmUnLFxuICAgICdVcGdyYWRlLWZpbGxlZCcsXG4gICAgJ1VwZ3JhZGUtaW4tbGluZScsXG4gICAgJ1VwbG9hZC1maWxsZWQnLFxuICAgICdVcGxvYWQtaW4tbGluZScsXG4gICAgJ1VzZXItYWRkLWZpbGxlZCcsXG4gICAgJ1VzZXItYWRkLWluLWxpbmUnLFxuICAgICdWaWV3LWZpbGxlZCcsXG4gICAgJ1ZpZXctaW4tbGluZScsXG4gICAgJ1pvb20taW4tZmlsbGVkJyxcbiAgICAnWm9vbS1pbi1pbi1saW5lJyxcbiAgICAnWm9vbS1vdXQtZmlsbGVkJyxcbiAgICAnWm9vbS1vdXQtaW4tbGluZScsXG4gIF0sXG4gIGNvbW11bmljYXRpb246IFtcbiAgICAnQm9vay1maWxsZWQnLFxuICAgICdCb29rLWluLWxpbmUnLFxuICAgICdDYWxlbmRhci1maWxsZWQnLFxuICAgICdDYWxlbmRhci1pbi1saW5lJyxcbiAgICAnQ2hhdC1maWxsZWQnLFxuICAgICdDaGF0LWluLWxpbmUnLFxuICAgICdDb21wYW55LWZpbGxlZCcsXG4gICAgJ0NvbXBhbnktaW4tbGluZScsXG4gICAgJ0RldmljZXMtZmlsbGVkJyxcbiAgICAnRGV2aWNlcy1pbi1saW5lJyxcbiAgICAnRG9jdW1lbnQtZmlsbGVkJyxcbiAgICAnRG9jdW1lbnQtaW4tbGluZScsXG4gICAgJ0RvdC1maWxsZWQnLFxuICAgICdEb3QtaW4tbGluZScsXG4gICAgJ0VtcGxveWVlLWZpbGxlZCcsXG4gICAgJ0VtcGxveWVlLWluLWxpbmUnLFxuICAgICdFeHBlcmllbmNlLWZpbGxlZCcsXG4gICAgJ0V4cGVyaWVuY2UtaW4tbGluZScsXG4gICAgJ0ZpcmUtZmlsbGVkJyxcbiAgICAnRmlyZS1pbi1saW5lJyxcbiAgICAnRm9sZGVyLWZpbGxlZCcsXG4gICAgJ0ZvbGRlci1pbi1saW5lJyxcbiAgICAnR2VuZGVyLWZlbWFsZS1maWxsZWQnLFxuICAgICdHZW5kZXItZmVtYWxlLWluLWxpbmUnLFxuICAgICdHZW5kZXItbWFsZS1maWxsZWQnLFxuICAgICdHZW5kZXItbWFsZS1pbi1saW5lJyxcbiAgICAnR2lmdC1maWxsZWQnLFxuICAgICdHaWZ0LWluLWxpbmUnLFxuICAgICdJbWFnZS1maWxsZWQnLFxuICAgICdJbWFnZS1pbi1saW5lJyxcbiAgICAnSW50ZWdyYXRpb24tZmlsbGVkJyxcbiAgICAnSW50ZWdyYXRpb24taW4tbGluZScsXG4gICAgJ0xheW91dC1maWxsZWQnLFxuICAgICdMYXlvdXQtaW4tbGluZScsXG4gICAgJ0xpZ2h0LWJ1bGItZmlsbGVkJyxcbiAgICAnTGlnaHQtYnVsYi1pbi1saW5lJyxcbiAgICAnTG9jYXRpb24tZmlsbGVkJyxcbiAgICAnTG9jYXRpb24taW4tbGluZScsXG4gICAgJ01vdXNlLWZpbGxlZCcsXG4gICAgJ01vdXNlLWluLWxpbmUnLFxuICAgICdOb3RpZmljYXRpb24tYmVsbC1maWxsZWQnLFxuICAgICdOb3RpZmljYXRpb24tYmVsbC1pbi1saW5lJyxcbiAgICAnUGFzc3dvcmQtZmlsbGVkJyxcbiAgICAnUGFzc3dvcmQtaW4tbGluZScsXG4gICAgJ1BhdGgtZmlsbGVkJyxcbiAgICAnUGF0aC1pbi1saW5lJyxcbiAgICAnUGluLW1hcmtlci1maWxsZWQnLFxuICAgICdQaW4tbWFya2VyLWluLWxpbmUnLFxuICAgICdQbGFuLWJpbGxpbmctZmlsbGVkJyxcbiAgICAnUGxhbi1iaWxsaW5nLWluLWxpbmUnLFxuICAgICdQcmVtaXVtLWZpbGxlZCcsXG4gICAgJ1ByZW1pdW0taW4tbGluZScsXG4gICAgJ1ByZW1pdW0tY2lyY2xlLWluLWxpbmUnLFxuICAgICdTZWN1cmUtZmlsbGVkJyxcbiAgICAnU2VjdXJlLWluLWxpbmUnLFxuICAgICdTcGFya2xlLWZpbGxlZCcsXG4gICAgJ1NwYXJrbGUtaW4tbGluZScsXG4gICAgJ1N5bmMtZmlsbGVkJyxcbiAgICAnU3luYy1pbi1saW5lJyxcbiAgICAnVGVhbS1maWxsZWQnLFxuICAgICdUZWFtLWluLWxpbmUnLFxuICAgICdUcm9waHktZmlsbGVkJyxcbiAgICAnVHJvcGh5LWluLWxpbmUnLFxuICAgICdVc2VyLWFjY2Vzcy1maWxsZWQnLFxuICAgICdVc2VyLWFjY2Vzcy1pbi1saW5lJyxcbiAgICAnVXNlci1wcm9maWxlLWZpbGxlZCcsXG4gICAgJ1VzZXItcHJvZmlsZS1pbi1saW5lJyxcbiAgICAnVm9sdW1lLWZpbGxlZCcsXG4gICAgJ1ZvbHVtZS1pbi1saW5lJyxcbiAgXSxcbn07XG4iXX0=
689
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90Z28tY2Fub3B5LXVpL2NvbXBvbmVudHMvaWNvbi9pY29uLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1QkFBdUI7QUFDdkIsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHO0lBQ3RCLEtBQUs7SUFDTCxTQUFTO0lBQ1QsWUFBWTtJQUNaLFlBQVk7SUFDWixhQUFhO0lBQ2IsVUFBVTtJQUNWLFlBQVk7SUFDWixVQUFVO0lBQ1YsTUFBTTtJQUNOLFVBQVU7SUFDVixZQUFZO0lBQ1osb0JBQW9CO0lBQ3BCLE1BQU07SUFDTixPQUFPO0lBQ1AsT0FBTztJQUNQLE9BQU87SUFDUCxNQUFNO0lBQ04sU0FBUztJQUNULE1BQU07SUFDTixrQkFBa0I7SUFDbEIsUUFBUTtJQUNSLFNBQVM7SUFDVCxVQUFVO0lBQ1YsS0FBSztJQUNMLFVBQVU7SUFDVixNQUFNO0lBQ04sZUFBZTtJQUNmLG1CQUFtQjtJQUNuQixPQUFPO0lBQ1AsT0FBTztJQUNQLFVBQVU7SUFDVixVQUFVO0lBQ1YsWUFBWTtJQUNaLFlBQVk7SUFDWixZQUFZO0lBQ1osWUFBWTtJQUNaLFlBQVk7SUFDWixhQUFhO0lBQ2IsYUFBYTtJQUNiLFFBQVE7SUFDUixRQUFRO0lBQ1IsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixnQkFBZ0I7SUFDaEIsZ0JBQWdCO0lBQ2hCLHFCQUFxQjtJQUNyQixzQkFBc0I7SUFDdEIsYUFBYTtJQUNiLG9CQUFvQjtJQUNwQixtQkFBbUI7SUFDbkIsbUJBQW1CO0lBQ25CLGVBQWU7SUFDZixpQkFBaUI7SUFDakIsZ0JBQWdCO0lBQ2hCLHNCQUFzQjtJQUN0QixzQkFBc0I7SUFDdEIsZUFBZTtJQUNmLGNBQWM7SUFDZCxrQkFBa0I7SUFDbEIsb0JBQW9CO0lBQ3BCLHlCQUF5QjtJQUN6Qix5QkFBeUI7SUFDekIsa0JBQWtCO0lBQ2xC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Iiwic291cmNlc0NvbnRlbnQiOlsiLy8gRGF0YSBvZiBhbGwgdGdvSWNvbnNcbmV4cG9ydCBjb25zdCB0Z29JY29ucyA9IFtcbiAgJ0FkZCcsXG4gICdBcmNoaXZlJyxcbiAgJ0Fycm93X2Rvd24nLFxuICAnQXJyb3dfbGVmdCcsXG4gICdBcnJvd19yaWdodCcsXG4gICdBcnJvd191cCcsXG4gICdBc3Nlc3NtZW50JyxcbiAgJ0F0dGVtcHRzJyxcbiAgJ0Jvb2snLFxuICAnQ2FsZW5kYXInLFxuICAnQ2FuZGlkYXRlcycsXG4gICdDaGF0LW5vdGlmaWNhdGlvbnMnLFxuICAnQ2hhdCcsXG4gICdDaGVjaycsXG4gICdDbG9uZScsXG4gICdDbG9zZScsXG4gICdDb2RlJyxcbiAgJ0NvbXBhbnknLFxuICAnQ29weScsXG4gICdDdXN0b20tcXVlc3Rpb25zJyxcbiAgJ0RlbGV0ZScsXG4gICdEZXZpY2VzJyxcbiAgJ0RvY3VtZW50JyxcbiAgJ0RvdCcsXG4gICdEb3dubG9hZCcsXG4gICdFZGl0JyxcbiAgJ0VtYWlsLW1lc3NhZ2UnLFxuICAnRW1wdHktcGxhY2Vob2xkZXInLFxuICAnRXJyb3InLFxuICAnRXNzYXknLFxuICAnRXllLWhpZGUnLFxuICAnRXllLXZpZXcnLFxuICAnRmVlZGJhY2stMScsXG4gICdGZWVkYmFjay0yJyxcbiAgJ0ZlZWRiYWNrLTMnLFxuICAnRmVlZGJhY2stNCcsXG4gICdGZWVkYmFjay01JyxcbiAgJ0ZpbGUtYXR0YWNoJyxcbiAgJ0ZpbGUtdXBsb2FkJyxcbiAgJ0ZpbHRlcicsXG4gICdGb2xkZXInLFxuICAnRm9ybWF0LWFkZC1maWxlJyxcbiAgJ0Zvcm1hdC1hZGQtdGFibGUnLFxuICAnRm9ybWF0LWFsaWduLUwnLFxuICAnRm9ybWF0LWFsaWduLVInLFxuICAnRm9ybWF0LWFsaWduLWNlbnRlcicsXG4gICdGb3JtYXQtYWxpZ24tanVzdGlmeScsXG4gICdGb3JtYXQtYm9sZCcsXG4gICdGb3JtYXQtY29kZS1hY3RpdmUnLFxuICAnRm9ybWF0LWNvZGUtYmxvY2snLFxuICAnRm9ybWF0LWVkaXQtdGFibGUnLFxuICAnRm9ybWF0LWZvcm1hdCcsXG4gICdGb3JtYXQtZnVuY3Rpb24nLFxuICAnRm9ybWF0LWl0YWxpY3MnLFxuICAnRm9ybWF0LWxpc3QtYnVsbGV0ZWQnLFxuICAnRm9ybWF0LWxpc3QtbnVtYmVyZWQnLFxuICAnRm9ybWF0LXBpY2tlcicsXG4gICdGb3JtYXQtcXVvdGUnLFxuICAnRm9ybWF0LXN1YnNjcmlwdCcsXG4gICdGb3JtYXQtc3VwZXJzY3JpcHQnLFxuICAnRm9ybWF0LXRleHQtZGlyZWN0aW9uLUwnLFxuICAnRm9ybWF0LXRleHQtZGlyZWN0aW9uLVInLFxuICAnRm9ybWF0LXRleHQtc2l6ZScsXG4gICdGb3JtYXQtdW5kZXJsaW5lJyxcbiAgJ0Zvcm1hdC12YXJpYWJsZScsXG4gICdGdWxsLXNjcmVlbicsXG4gICdHZW5kZXItZmVtYWxlJyxcbiAgJ0dlbmRlci1tYWxlJyxcbiAgJ0hlbHAtMicsXG4gICdIZWxwJyxcbiAgJ0ltYWdlJyxcbiAgJ0luZm8nLFxuICAnSW50ZWdyYXRpb24nLFxuICAnTGFuZ3VhZ2UnLFxuICAnTGF5b3V0JyxcbiAgJ0xlYXJuJyxcbiAgJ0xldmVsJyxcbiAgJ0xpZ2h0LWJ1bGInLFxuICAnTGluaycsXG4gICdMb2FkaW5nLXNwaW5uZXInLFxuICAnTG9jYWxpc2F0aW9uJyxcbiAgJ0xvY2F0aW9uJyxcbiAgJ0xvY2snLFxuICAnTG9nLW91dCcsXG4gICdNZW51LWJ1cmdlcicsXG4gICdNZW51LWVsbGlwc2lzJyxcbiAgJ01pY3JvcGhvbmUnLFxuICAnTWludXMnLFxuICAnTW91c2UtY3Vyc29yJyxcbiAgJ01vdXNlLWdyYWItY3Vyc29yJyxcbiAgJ01vdXNlJyxcbiAgJ011bHRpLWNob2ljZScsXG4gICdOb3RpZmljYXRpb25zJyxcbiAgJ1Bhc3N3b3JkJyxcbiAgJ1BhdGgnLFxuICAnUGluLW1hcmtlcicsXG4gICdQbGFuLWJpbGxpbmcnLFxuICAnUGx1cycsXG4gICdQcmVtaXVtJyxcbiAgJ1Byb21vdGlvbicsXG4gICdRdWVzdGlvbi1jb3VudCcsXG4gICdSZWZlcicsXG4gICdSZXNldCcsXG4gICdSZXZpZXcnLFxuICAnUm91bmQtY2hlY2stZmlsbGVkJyxcbiAgJ1JvdW5kLWNoZWNrJyxcbiAgJ1NlYXJjaCcsXG4gICdTZWN1cmUtY2hlY2tvdXQnLFxuICAnU2VuZCcsXG4gICdTZXR0aW5ncycsXG4gICdTb2NpYWwtZmFjZWJvb2snLFxuICAnU29jaWFsLWluc3RhZ3JhbScsXG4gICdTb2NpYWwtbGlua2VkaW4nLFxuICAnU29ydGluZy1kb3duLTEnLFxuICAnU29ydGluZy1kb3duJyxcbiAgJ1NwZWVkb21ldGVyJyxcbiAgJ1N0YXItZmlsbGVkJyxcbiAgJ1N0YXItaGFsZicsXG4gICdTdGFyLW91dGxpbmUnLFxuICAnU3VwcG9ydCcsXG4gICdTeW5jJyxcbiAgJ1RlYW0nLFxuICAnVGVzdCcsXG4gICdUaHVuZGVyJyxcbiAgJ1RpbWVyJyxcbiAgJ1Ryb3BoeScsXG4gICdUeXBlJyxcbiAgJ1VuYXJjaGl2ZScsXG4gICdVbmxvY2snLFxuICAnVXBncmFkZScsXG4gICdVcGxvYWQnLFxuICAnVXNlci1hY2Nlc3MnLFxuICAnVXNlci1hZGQnLFxuICAnVXNlci1pbnZpdGUnLFxuICAnVXNlci1wcm9maWxlJyxcbiAgJ1VzZXItcmVqZWN0JyxcbiAgJ1VzZXItc3dpdGNoJyxcbiAgJ1ZpZGVvLXBhdXNlJyxcbiAgJ1ZpZGVvLXBsYXknLFxuICAnVmlkZW8tcmVjb3JkJyxcbiAgJ1ZpZGVvJyxcbiAgJ1ZvbHVtZScsXG4gICdXYXJuaW5nJyxcbiAgJ1pvb20taW4nLFxuICAnWm9vbS1vdXQnLFxuICAnRmlyZScsXG4gICdHaWZ0JyxcbiAgJ0dyYWInLFxuICAnU2hhcmUnLFxuICAnU3BhcmtsZXMnLFxuICAnVmlkZW8tc3RvcCcsXG4gICdNaW5pbWl6ZScsXG4gICdFbXBsb3llZScsXG4gICdNb25leS1iYWcnLFxuICAnU3VpdGNhc2UnLFxuICAnR29vZ2xlJyxcbiAgJ0Zhc3QtZm9yd2FyZCcsXG4gICdGYXN0LXJld2luZCcsXG4gICdTa2lwLW5leHQnLFxuICAnU2tpcC1wcmV2aW91cycsXG4gICdUZXN0R29yaWxsYScsXG5dIGFzIGNvbnN0O1xuXG5leHBvcnQgY29uc3QgdGdvUmVicmFuZEljb25zID0gW1xuICAnQXJjaGl2ZS1maWxsZWQnLFxuICAnQXJjaGl2ZS1pbi1saW5lJyxcbiAgJ0FkZC1pbi1saW5lJyxcbiAgJ0FkZC1maWxsZWQnLFxuICAnQXJyb3ctY2hldnJvbi1kb3duLWZpbGxlZCcsXG4gICdBcnJvdy1jaGV2cm9uLWRvd24taW4tbGluZScsXG4gICdBcnJvdy1jaGV2cm9uLWxlZnQtZmlsbGVkJyxcbiAgJ0Fycm93LWNoZXZyb24tbGVmdC1pbi1saW5lJyxcbiAgJ0Fycm93LWNoZXZyb24tcmlnaHQtZmlsbGVkJyxcbiAgJ0Fycm93LWNoZXZyb24tcmlnaHQtaW4tbGluZScsXG4gICdBcnJvdy1jaGV2cm9uLXVwLWZpbGxlZCcsXG4gICdBcnJvdy1jaGV2cm9uLXVwLWluLWxpbmUnLFxuICAnQXJyb3ctZG93bi1maWxsZWQnLFxuICAnQXJyb3ctZG93bi1pbi1saW5lJyxcbiAgJ0Fycm93LXVwLWZpbGxlZCcsXG4gICdBcnJvdy11cC1pbi1saW5lJyxcbiAgJ0Fzc2Vzc21lbnQtZmlsbGVkJyxcbiAgJ0Fzc2Vzc21lbnQtaW4tbGluZScsXG4gICdBdHRhY2gtZmlsbGVkJyxcbiAgJ0F0dGFjaC1pbi1saW5lJyxcbiAgJ0F0dGVtcHRzLWZpbGxlZCcsXG4gICdBdHRlbXB0cy1pbi1saW5lJyxcbiAgJ0Jvb2stZmlsbGVkJyxcbiAgJ0Jvb2staW4tbGluZScsXG4gICdDYWxlbmRhci1maWxsZWQnLFxuICAnQ2FsZW5kYXItaW4tbGluZScsXG4gICdDYW5kaWRhdGVzLWZpbGxlZCcsXG4gICdDYW5kaWRhdGVzLWluLWxpbmUnLFxuICAnQ2hhdC1maWxsZWQnLFxuICAnQ2hhdC1pbi1saW5lJyxcbiAgJ0NoZWNrLWZpbGxlZCcsXG4gICdDaGVjay1pbi1saW5lJyxcbiAgJ0NoZWNrLXJvdW5kLWZpbGxlZCcsXG4gICdDaGVjay1yb3VuZC1pbi1saW5lJyxcbiAgJ0NpcmNsZS1maWxsZWQnLFxuICAnQ2lyY2xlLWluLWxpbmUnLFxuICAnQ2xvbmUtZmlsbGVkJyxcbiAgJ0Nsb25lLWluLWxpbmUnLFxuICAnQ2xvc2UtZmlsbGVkJyxcbiAgJ0Nsb3NlLWluLWxpbmUnLFxuICAnQ29kZS1maWxsZWQnLFxuICAnQ29kZS1pbi1saW5lJyxcbiAgJ0NvbXBhbnktZmlsbGVkJyxcbiAgJ0NvbXBhbnktaW4tbGluZScsXG4gICdDb3B5LWZpbGxlZCcsXG4gICdDb3B5LWluLWxpbmUnLFxuICAnRGVsZXRlLWZpbGxlZCcsXG4gICdEZWxldGUtaW4tbGluZScsXG4gICdEZXZpY2VzLWZpbGxlZCcsXG4gICdEZXZpY2VzLWluLWxpbmUnLFxuICAnRG9jdW1lbnQtZmlsbGVkJyxcbiAgJ0RvY3VtZW50LWluLWxpbmUnLFxuICAnRG90LWZpbGxlZCcsXG4gICdEb3QtaW4tbGluZScsXG4gICdEb3dubG9hZC1maWxsZWQnLFxuICAnRG93bmxvYWQtaW4tbGluZScsXG4gICdFZGl0LWZpbGxlZCcsXG4gICdFZGl0LWluLWxpbmUnLFxuICAnRWRpdC10ZXh0LWZpbGxlZCcsXG4gICdFZGl0LXRleHQtaW4tbGluZScsXG4gICdFbXBsb3llZS1maWxsZWQnLFxuICAnRW1wbG95ZWUtaW4tbGluZScsXG4gICdFcnJvci1maWxsZWQnLFxuICAnRXJyb3ItaW4tbGluZScsXG4gICdFc3NheS1maWxsZWQnLFxuICAnRXNzYXktaW4tbGluZScsXG4gICdFeHBlcmllbmNlLWZpbGxlZCcsXG4gICdFeHBlcmllbmNlLWluLWxpbmUnLFxuICAnRmFjZWJvb2stZmlsbGVkJyxcbiAgJ0ZhY2Vib29rLWluLWxpbmUnLFxuICAnRmFzdC1mb3J3YXJkLWZpbGxlZCcsXG4gICdGYXN0LWZvcndhcmQtaW4tbGluZScsXG4gICdGYXN0LXJld2luZC1maWxsZWQnLFxuICAnRmFzdC1yZXdpbmQtaW4tbGluZScsXG4gICdGaWx0ZXItZmlsbGVkJyxcbiAgJ0ZpbHRlci1pbi1saW5lJyxcbiAgJ0ZpcmUtZmlsbGVkJyxcbiAgJ0ZpcmUtaW4tbGluZScsXG4gICdGb2xkZXItZmlsbGVkJyxcbiAgJ0ZvbGRlci1pbi1saW5lJyxcbiAgJ0Z1bGwtc2NyZWVuLWZpbGxlZCcsXG4gICdGdWxsLXNjcmVlbi1pbi1saW5lJyxcbiAgJ0dlbmRlci1tYWxlLWZpbGxlZCcsXG4gICdHZW5kZXItbWFsZS1pbi1saW5lJyxcbiAgJ0dlbmRlci1mZW1hbGUtZmlsbGVkJyxcbiAgJ0dlbmRlci1mZW1hbGUtaW4tbGluZScsXG4gICdHaWZ0LWZpbGxlZCcsXG4gICdHaWZ0LWluLWxpbmUnLFxuICAnR29vZ2xlLWZpbGxlZCcsXG4gICdHb29nbGUtaW4tbGluZScsXG4gICdHcmFiLWZpbGxlZCcsXG4gICdHcmFiLWluLWxpbmUnLFxuICAnSGVscC1maWxsZWQnLFxuICAnSGVscC1pbi1saW5lJyxcbiAgJ0hpZGUtZmlsbGVkJyxcbiAgJ0hpZGUtaW4tbGluZScsXG4gICdJbWFnZS1maWxsZWQnLFxuICAnSW1hZ2UtaW4tbGluZScsXG4gICdJbmZvLWZpbGxlZCcsXG4gICdJbmZvLWluLWxpbmUnLFxuICAnSW5zdGFncmFtLWZpbGxlZCcsXG4gICdJbnN0YWdyYW0taW4tbGluZScsXG4gICdJbnRlZ3JhdGlvbi1maWxsZWQnLFxuICAnSW50ZWdyYXRpb24taW4tbGluZScsXG4gICdJbnZpdGUtZmlsbGVkJyxcbiAgJ0ludml0ZS1pbi1saW5lJyxcbiAgJ0xhbmd1YWdlLWZpbGxlZCcsXG4gICdMYW5ndWFnZS1pbi1saW5lJyxcbiAgJ0xheW91dC1maWxsZWQnLFxuICAnTGF5b3V0LWluLWxpbmUnLFxuICAnTGVhcm4tZmlsbGVkJyxcbiAgJ0xlYXJuLWluLWxpbmUnLFxuICAnTGV2ZWwtZmlsbGVkJyxcbiAgJ0xldmVsLWluLWxpbmUnLFxuICAnTGlnaHQtYnVsYi1maWxsZWQnLFxuICAnTGlnaHQtYnVsYi1pbi1saW5lJyxcbiAgJ0xpbmstZmlsbGVkJyxcbiAgJ0xpbmstaW4tbGluZScsXG4gICdMaW5rZWRpbi1maWxsZWQnLFxuICAnTGlua2VkaW4taW4tbGluZScsXG4gICdMb2NhbGl6YXRpb24tZmlsbGVkJyxcbiAgJ0xvY2FsaXphdGlvbi1pbi1saW5lJyxcbiAgJ0xvY2F0aW9uLWZpbGxlZCcsXG4gICdMb2NhdGlvbi1pbi1saW5lJyxcbiAgJ0xvY2stZmlsbGVkJyxcbiAgJ0xvY2staW4tbGluZScsXG4gICdMb2dvdXQtZmlsbGVkJyxcbiAgJ0xvZ291dC1pbi1saW5lJyxcbiAgJ01lZGFsLWZpbGxlZCcsXG4gICdNZWRhbC1pbi1saW5lJyxcbiAgJ01lbnUtYnVyZ2VyLWZpbGxlZCcsXG4gICdNZW51LWJ1cmdlci1pbi1saW5lJyxcbiAgJ01lbnUtZWxsaXBzaXMtZmlsbGVkJyxcbiAgJ01lbnUtZWxsaXBzaXMtaW4tbGluZScsXG4gICdNaWMtZmlsbGVkJyxcbiAgJ01pYy1pbi1saW5lJyxcbiAgJ01pbmltaXplLWZpbGxlZCcsXG4gICdNaW5pbWl6ZS1pbi1saW5lJyxcbiAgJ01pbnVzLWZpbGxlZCcsXG4gICdNaW51cy1pbi1saW5lJyxcbiAgJ01vdXNlLWZpbGxlZCcsXG4gICdNb3VzZS1pbi1saW5lJyxcbiAgJ011bHRpLWNob2ljZS1maWxsZWQnLFxuICAnTXVsdGktY2hvaWNlLWluLWxpbmUnLFxuICAnTm90aWZpY2F0aW9uLWJlbGwtZmlsbGVkJyxcbiAgJ05vdGlmaWNhdGlvbi1iZWxsLWluLWxpbmUnLFxuICAnUGFzc3dvcmQtZmlsbGVkJyxcbiAgJ1Bhc3N3b3JkLWluLWxpbmUnLFxuICAnUGF0aC1maWxsZWQnLFxuICAnUGF0aC1pbi1saW5lJyxcbiAgJ1BhdXNlLWZpbGxlZCcsXG4gICdQYXVzZS1pbi1saW5lJyxcbiAgJ1Bpbi1tYXJrZXItZmlsbGVkJyxcbiAgJ1Bpbi1tYXJrZXItaW4tbGluZScsXG4gICdQbGFuLWJpbGxpbmctZmlsbGVkJyxcbiAgJ1BsYW4tYmlsbGluZy1pbi1saW5lJyxcbiAgJ1BsYXktZmlsbGVkJyxcbiAgJ1BsYXktaW4tbGluZScsXG4gICdQbHVzLWZpbGxlZCcsXG4gICdQbHVzLWluLWxpbmUnLFxuICAnUHJlbWl1bS1maWxsZWQnLFxuICAnUHJlbWl1bS1pbi1saW5lJyxcbiAgJ1ByZW1pdW0tY2lyY2xlLWluLWxpbmUnLFxuICAnUXVlc3Rpb24tY291bnQtZmlsbGVkJyxcbiAgJ1F1ZXN0aW9uLWNvdW50LWluLWxpbmUnLFxuICAnUXVlc3Rpb24tZmlsbGVkJyxcbiAgJ1F1ZXN0aW9uLWluLWxpbmUnLFxuICAnUmVjb3JkLWZpbGxlZCcsXG4gICdSZWNvcmQtaW4tbGluZScsXG4gICdSZWplY3QtZmlsbGVkJyxcbiAgJ1JlZmVyLWluLWxpbmUnLFxuICAnUmVmZXItZmlsbGVkJyxcbiAgJ1JlamVjdC1pbi1saW5lJyxcbiAgJ1Jlc2V0LWZpbGxlZCcsXG4gICdSZXNldC1pbi1saW5lJyxcbiAgJ1Jldmlldy1lbW9qaS0xLWZpbGxlZCcsXG4gICdSZXZpZXctZW1vamktMS1pbi1saW5lJyxcbiAgJ1Jldmlldy1lbW9qaS0yLWZpbGxlZCcsXG4gICdSZXZpZXctZW1vamktMi1pbi1saW5lJyxcbiAgJ1Jldmlldy1lbW9qaS0zLWZpbGxlZCcsXG4gICdSZXZpZXctZW1vamktMy1pbi1saW5lJyxcbiAgJ1Jldmlldy1lbW9qaS00LWZpbGxlZCcsXG4gICdSZXZpZXctZW1vamktNC1pbi1saW5lJyxcbiAgJ1Jldmlldy1lbW9qaS01LWZpbGxlZCcsXG4gICdSZXZpZXctZW1vamktNS1pbi1saW5lJyxcbiAgJ1Jldmlldy1maWxsZWQnLFxuICAnUmV2aWV3LWhhbGYtc3Rhci1maWxsZWQnLFxuICAnUmV2aWV3LWhhbGYtc3Rhci1pbi1saW5lJyxcbiAgJ1Jldmlldy1pbi1saW5lJyxcbiAgJ1Jldmlldy1zdGFyLWZpbGxlZCcsXG4gICdSZXZpZXctc3Rhci1pbi1saW5lJyxcbiAgJ1NlYXJjaC1maWxsZWQnLFxuICAnU2VhcmNoLWluLWxpbmUnLFxuICAnU2VjdXJlLWZpbGxlZCcsXG4gICdTZWN1cmUtaW4tbGluZScsXG4gICdTZW5kLWZpbGxlZCcsXG4gICdTZW5kLWluLWxpbmUnLFxuICAnU2V0dGluZ3MtZmlsbGVkJyxcbiAgJ1NldHRpbmdzLWluLWxpbmUnLFxuICAnU2hhcmUtZmlsbGVkJyxcbiAgJ1NoYXJlLWluLWxpbmUnLFxuICAnU2tpcC1uZXh0LWZpbGxlZCcsXG4gICdTa2lwLW5leHQtaW4tbGluZScsXG4gICdTa2lwLXByZXZpb3VzLWZpbGxlZCcsXG4gICdTa2lwLXByZXZpb3VzLWluLWxpbmUnLFxuICAnU3BhcmtsZS1maWxsZWQnLFxuICAnU3BhcmtsZS1pbi1saW5lJyxcbiAgJ1NwZWVkb21ldGVyLWZpbGxlZCcsXG4gICdTcGVlZG9tZXRlci1pbi1saW5lJyxcbiAgJ1N0b3AtZmlsbGVkJyxcbiAgJ1N0b3AtaW4tbGluZScsXG4gICdTd2l0Y2gtZmlsbGVkJyxcbiAgJ1N3aXRjaC1pbi1saW5lJyxcbiAgJ1N5bmMtZmlsbGVkJyxcbiAgJ1N5bmMtaW4tbGluZScsXG4gICdUZWFtLWZpbGxlZCcsXG4gICdUZWFtLWluLWxpbmUnLFxuICAnVGVzdC1maWxsZWQnLFxuICAnVGVzdC1pbi1saW5lJyxcbiAgJ1RpbWVyLWZpbGxlZCcsXG4gICdUaW1lci1pbi1saW5lJyxcbiAgJ1Ryb3BoeS1maWxsZWQnLFxuICAnVHJvcGh5LWluLWxpbmUnLFxuICAnVHlwZS1maWxsZWQnLFxuICAnVHlwZS1pbi1saW5lJyxcbiAgJ1VuYXJjaGl2ZS1maWxsZWQnLFxuICAnVW5hcmNoaXZlLWluLWxpbmUnLFxuICAnVW5sb2NrLWZpbGxlZCcsXG4gICdVbmxvY2staW4tbGluZScsXG4gICdVcGdyYWRlLWZpbGxlZCcsXG4gICdVcGdyYWRlLWluLWxpbmUnLFxuICAnVXBsb2FkLWZpbGxlZCcsXG4gICdVcGxvYWQtaW4tbGluZScsXG4gICdVc2VyLWFjY2Vzcy1maWxsZWQnLFxuICAnVXNlci1hY2Nlc3MtaW4tbGluZScsXG4gICdVc2VyLWFkZC1maWxsZWQnLFxuICAnVXNlci1hZGQtaW4tbGluZScsXG4gICdVc2VyLXByb2ZpbGUtZmlsbGVkJyxcbiAgJ1VzZXItcHJvZmlsZS1pbi1saW5lJyxcbiAgJ1ZpZGVvLWZpbGxlZCcsXG4gICdWaWRlby1pbi1saW5lJyxcbiAgJ1ZpZXctZmlsbGVkJyxcbiAgJ1ZpZXctaW4tbGluZScsXG4gICdWb2x1bWUtZmlsbGVkJyxcbiAgJ1ZvbHVtZS1pbi1saW5lJyxcbiAgJ1dhcm5pbmctZmlsbGVkJyxcbiAgJ1dhcm5pbmctaW4tbGluZScsXG4gICdWYWxpZGF0ZWQtZmlsbGVkJyxcbiAgJ1ZhbGlkYXRlZC1pbi1saW5lJyxcbiAgJ1pvb20taW4tZmlsbGVkJyxcbiAgJ1pvb20taW4taW4tbGluZScsXG4gICdab29tLW91dC1maWxsZWQnLFxuICAnWm9vbS1vdXQtaW4tbGluZScsXG4gICdUZXN0R29yaWxsYS1maWxsZWQnLFxuICAnVGVzdEdvcmlsbGEtaW4tbGluZScsXG5dIGFzIGNvbnN0O1xuXG5leHBvcnQgY29uc3QgZ3JvdXBlZEljb25zID0ge1xuICBkaXJlY3Rpb25hbDogW1xuICAgICdBcnJvdy1jaGV2cm9uLWRvd24tZmlsbGVkJyxcbiAgICAnQXJyb3ctY2hldnJvbi1kb3duLWluLWxpbmUnLFxuICAgICdBcnJvdy1jaGV2cm9uLWxlZnQtZmlsbGVkJyxcbiAgICAnQXJyb3ctY2hldnJvbi1sZWZ0LWluLWxpbmUnLFxuICAgICdBcnJvdy1jaGV2cm9uLXJpZ2h0LWZpbGxlZCcsXG4gICAgJ0Fycm93LWNoZXZyb24tcmlnaHQtaW4tbGluZScsXG4gICAgJ0Fycm93LWNoZXZyb24tdXAtZmlsbGVkJyxcbiAgICAnQXJyb3ctY2hldnJvbi11cC1pbi1saW5lJyxcbiAgICAnQXJyb3ctZG93bi1maWxsZWQnLFxuICAgICdBcnJvdy1kb3duLWluLWxpbmUnLFxuICAgICdBcnJvdy11cC1maWxsZWQnLFxuICAgICdBcnJvdy11cC1pbi1saW5lJyxcbiAgICAnRmFzdC1mb3J3YXJkLWZpbGxlZCcsXG4gICAgJ0Zhc3QtZm9yd2FyZC1pbi1saW5lJyxcbiAgICAnRmFzdC1yZXdpbmQtZmlsbGVkJyxcbiAgICAnRmFzdC1yZXdpbmQtaW4tbGluZScsXG4gICAgJ01pbnVzLWZpbGxlZCcsXG4gICAgJ01pbnVzLWluLWxpbmUnLFxuICAgICdQbHVzLWZpbGxlZCcsXG4gICAgJ1BsdXMtaW4tbGluZScsXG4gICAgJ1NraXAtbmV4dC1maWxsZWQnLFxuICAgICdTa2lwLW5leHQtaW4tbGluZScsXG4gICAgJ1NraXAtcHJldmlvdXMtZmlsbGVkJyxcbiAgICAnU2tpcC1wcmV2aW91cy1pbi1saW5lJyxcbiAgXSxcbiAgYXNzZXNzbWVudDogW1xuICAgICdBc3Nlc3NtZW50LWZpbGxlZCcsXG4gICAgJ0Fzc2Vzc21lbnQtaW4tbGluZScsXG4gICAgJ0F0dGVtcHRzLWZpbGxlZCcsXG4gICAgJ0F0dGVtcHRzLWluLWxpbmUnLFxuICAgICdDYW5kaWRhdGVzLWZpbGxlZCcsXG4gICAgJ0NhbmRpZGF0ZXMtaW4tbGluZScsXG4gICAgJ0NvZGUtZmlsbGVkJyxcbiAgICAnQ29kZS1pbi1saW5lJyxcbiAgICAnRXNzYXktZmlsbGVkJyxcbiAgICAnRXNzYXktaW4tbGluZScsXG4gICAgJ0xhbmd1YWdlLWZpbGxlZCcsXG4gICAgJ0xhbmd1YWdlLWluLWxpbmUnLFxuICAgICdMZWFybi1maWxsZWQnLFxuICAgICdMZWFybi1pbi1saW5lJyxcbiAgICAnTGV2ZWwtZmlsbGVkJyxcbiAgICAnTGV2ZWwtaW4tbGluZScsXG4gICAgJ0xvY2FsaXphdGlvbi1maWxsZWQnLFxuICAgICdMb2NhbGl6YXRpb24taW4tbGluZScsXG4gICAgJ01lZGFsLWZpbGxlZCcsXG4gICAgJ01lZGFsLWluLWxpbmUnLFxuICAgICdNaWMtZmlsbGVkJyxcbiAgICAnTWljLWluLWxpbmUnLFxuICAgICdNdWx0aS1jaG9pY2UtZmlsbGVkJyxcbiAgICAnTXVsdGktY2hvaWNlLWluLWxpbmUnLFxuICAgICdRdWVzdGlvbi1jb3VudC1maWxsZWQnLFxuICAgICdRdWVzdGlvbi1jb3VudC1pbi1saW5lJyxcbiAgICAnUXVlc3Rpb24tZmlsbGVkJyxcbiAgICAnUXVlc3Rpb24taW4tbGluZScsXG4gICAgJ1NwZWVkb21ldGVyLWZpbGxlZCcsXG4gICAgJ1NwZWVkb21ldGVyLWluLWxpbmUnLFxuICAgICdUZXN0LWZpbGxlZCcsXG4gICAgJ1Rlc3QtaW4tbGluZScsXG4gICAgJ1RpbWVyLWZpbGxlZCcsXG4gICAgJ1RpbWVyLWluLWxpbmUnLFxuICAgICdUeXBlLWZpbGxlZCcsXG4gICAgJ1R5cGUtaW4tbGluZScsXG4gICAgJ1ZpZGVvLWZpbGxlZCcsXG4gICAgJ1ZpZGVvLWluLWxpbmUnLFxuICBdLFxuICBzdGF0dXM6IFtcbiAgICAnQ2hlY2stZmlsbGVkJyxcbiAgICAnQ2hlY2staW4tbGluZScsXG4gICAgJ0NoZWNrLXJvdW5kLWZpbGxlZCcsXG4gICAgJ0NoZWNrLXJvdW5kLWluLWxpbmUnLFxuICAgICdFcnJvci1maWxsZWQnLFxuICAgICdFcnJvci1pbi1saW5lJyxcbiAgICAnSGVscC1maWxsZWQnLFxuICAgICdIZWxwLWluLWxpbmUnLFxuICAgICdJbmZvLWZpbGxlZCcsXG4gICAgJ0luZm8taW4tbGluZScsXG4gICAgJ1JlZmVyLWluLWxpbmUnLFxuICAgICdSZWZlci1maWxsZWQnLFxuICAgICdSZXZpZXctZW1vamktMS1maWxsZWQnLFxuICAgICdSZXZpZXctZW1vamktMS1pbi1saW5lJyxcbiAgICAnUmV2aWV3LWVtb2ppLTItZmlsbGVkJyxcbiAgICAnUmV2aWV3LWVtb2ppLTItaW4tbGluZScsXG4gICAgJ1Jldmlldy1lbW9qaS0zLWZpbGxlZCcsXG4gICAgJ1Jldmlldy1lbW9qaS0zLWluLWxpbmUnLFxuICAgICdSZXZpZXctZW1vamktNC1maWxsZWQnLFxuICAgICdSZXZpZXctZW1vamktNC1pbi1saW5lJyxcbiAgICAnUmV2aWV3LWVtb2ppLTUtZmlsbGVkJyxcbiAgICAnUmV2aWV3LWVtb2ppLTUtaW4tbGluZScsXG4gICAgJ1Jldmlldy1oYWxmLXN0YXItZmlsbGVkJyxcbiAgICAnUmV2aWV3LWhhbGYtc3Rhci1pbi1saW5lJyxcbiAgICAnUmV2aWV3LXN0YXItZmlsbGVkJyxcbiAgICAnUmV2aWV3LXN0YXItaW4tbGluZScsXG4gICAgJ1dhcm5pbmctZmlsbGVkJyxcbiAgICAnV2FybmluZy1pbi1saW5lJyxcbiAgICAnVmFsaWRhdGVkLWZpbGxlZCcsXG4gICAgJ1ZhbGlkYXRlZC1pbi1saW5lJyxcbiAgXSxcbiAgc29jaWFsOiBbXG4gICAgJ0ZhY2Vib29rLWZpbGxlZCcsXG4gICAgJ0ZhY2Vib29rLWluLWxpbmUnLFxuICAgICdHb29nbGUtZmlsbGVkJyxcbiAgICAnR29vZ2xlLWluLWxpbmUnLFxuICAgICdJbnN0YWdyYW0tZmlsbGVkJyxcbiAgICAnSW5zdGFncmFtLWluLWxpbmUnLFxuICAgICdMaW5rZWRpbi1maWxsZWQnLFxuICAgICdMaW5rZWRpbi1pbi1saW5lJyxcbiAgICAnVGVzdEdvcmlsbGEtZmlsbGVkJyxcbiAgICAnVGVzdEdvcmlsbGEtaW4tbGluZScsXG4gIF0sXG4gIGFjdGlvbnM6IFtcbiAgICAnQXJjaGl2ZS1maWxsZWQnLFxuICAgICdBcmNoaXZlLWluLWxpbmUnLFxuICAgICdBdHRhY2gtZmlsbGVkJyxcbiAgICAnQXR0YWNoLWluLWxpbmUnLFxuICAgICdDbG9uZS1maWxsZWQnLFxuICAgICdDbG9uZS1pbi1saW5lJyxcbiAgICAnQ2xvc2UtZmlsbGVkJyxcbiAgICAnQ2xvc2UtaW4tbGluZScsXG4gICAgJ0NvcHktZmlsbGVkJyxcbiAgICAnQ29weS1pbi1saW5lJyxcbiAgICAnRGVsZXRlLWZpbGxlZCcsXG4gICAgJ0RlbGV0ZS1pbi1saW5lJyxcbiAgICAnRG93bmxvYWQtZmlsbGVkJyxcbiAgICAnRG93bmxvYWQtaW4tbGluZScsXG4gICAgJ0VkaXQtZmlsbGVkJyxcbiAgICAnRWRpdC1pbi1saW5lJyxcbiAgICAnRWRpdC10ZXh0LWZpbGxlZCcsXG4gICAgJ0VkaXQtdGV4dC1pbi1saW5lJyxcbiAgICAnRmlsdGVyLWZpbGxlZCcsXG4gICAgJ0ZpbHRlci1pbi1saW5lJyxcbiAgICAnRnVsbC1zY3JlZW4tZmlsbGVkJyxcbiAgICAnRnVsbC1zY3JlZW4taW4tbGluZScsXG4gICAgJ0dyYWItZmlsbGVkJyxcbiAgICAnR3JhYi1pbi1saW5lJyxcbiAgICAnSGlkZS1maWxsZWQnLFxuICAgICdIaWRlLWluLWxpbmUnLFxuICAgICdJbnZpdGUtZmlsbGVkJyxcbiAgICAnSW52aXRlLWluLWxpbmUnLFxuICAgICdMaW5rLWZpbGxlZCcsXG4gICAgJ0xpbmstaW4tbGluZScsXG4gICAgJ0xvY2stZmlsbGVkJyxcbiAgICAnTG9jay1pbi1saW5lJyxcbiAgICAnTG9nb3V0LWZpbGxlZCcsXG4gICAgJ0xvZ291dC1pbi1saW5lJyxcbiAgICAnTWVudS1idXJnZXItZmlsbGVkJyxcbiAgICAnTWVudS1idXJnZXItaW4tbGluZScsXG4gICAgJ01lbnUtZWxsaXBzaXMtZmlsbGVkJyxcbiAgICAnTWVudS1lbGxpcHNpcy1pbi1saW5lJyxcbiAgICAnTWluaW1pemUtZmlsbGVkJyxcbiAgICAnTWluaW1pemUtaW4tbGluZScsXG4gICAgJ1BhdXNlLWZpbGxlZCcsXG4gICAgJ1BhdXNlLWluLWxpbmUnLFxuICAgICdQbGF5LWZpbGxlZCcsXG4gICAgJ1BsYXktaW4tbGluZScsXG4gICAgJ1JlY29yZC1maWxsZWQnLFxuICAgICdSZWNvcmQtaW4tbGluZScsXG4gICAgJ1JlamVjdC1maWxsZWQnLFxuICAgICdSZWplY3QtaW4tbGluZScsXG4gICAgJ1Jlc2V0LWZpbGxlZCcsXG4gICAgJ1Jlc2V0LWluLWxpbmUnLFxuICAgICdSZXZpZXctZmlsbGVkJyxcbiAgICAnUmV2aWV3LWhhbGYtc3Rhci1maWxsZWQnLFxuICAgICdTZWFyY2gtZmlsbGVkJyxcbiAgICAnU2VhcmNoLWluLWxpbmUnLFxuICAgICdTZW5kLWZpbGxlZCcsXG4gICAgJ1NlbmQtaW4tbGluZScsXG4gICAgJ1NldHRpbmdzLWZpbGxlZCcsXG4gICAgJ1NldHRpbmdzLWluLWxpbmUnLFxuICAgICdTaGFyZS1maWxsZWQnLFxuICAgICdTaGFyZS1pbi1saW5lJyxcbiAgICAnU3RvcC1maWxsZWQnLFxuICAgICdTdG9wLWluLWxpbmUnLFxuICAgICdTd2l0Y2gtZmlsbGVkJyxcbiAgICAnU3dpdGNoLWluLWxpbmUnLFxuICAgICdVbmFyY2hpdmUtZmlsbGVkJyxcbiAgICAnVW5hcmNoaXZlLWluLWxpbmUnLFxuICAgICdVbmxvY2stZmlsbGVkJyxcbiAgICAnVW5sb2NrLWluLWxpbmUnLFxuICAgICdVcGdyYWRlLWZpbGxlZCcsXG4gICAgJ1VwZ3JhZGUtaW4tbGluZScsXG4gICAgJ1VwbG9hZC1maWxsZWQnLFxuICAgICdVcGxvYWQtaW4tbGluZScsXG4gICAgJ1VzZXItYWRkLWZpbGxlZCcsXG4gICAgJ1VzZXItYWRkLWluLWxpbmUnLFxuICAgICdWaWV3LWZpbGxlZCcsXG4gICAgJ1ZpZXctaW4tbGluZScsXG4gICAgJ1pvb20taW4tZmlsbGVkJyxcbiAgICAnWm9vbS1pbi1pbi1saW5lJyxcbiAgICAnWm9vbS1vdXQtZmlsbGVkJyxcbiAgICAnWm9vbS1vdXQtaW4tbGluZScsXG4gIF0sXG4gIGNvbW11bmljYXRpb246IFtcbiAgICAnQm9vay1maWxsZWQnLFxuICAgICdCb29rLWluLWxpbmUnLFxuICAgICdDYWxlbmRhci1maWxsZWQnLFxuICAgICdDYWxlbmRhci1pbi1saW5lJyxcbiAgICAnQ2hhdC1maWxsZWQnLFxuICAgICdDaGF0LWluLWxpbmUnLFxuICAgICdDaXJjbGUtZmlsbGVkJyxcbiAgICAnQ2lyY2xlLWluLWxpbmUnLFxuICAgICdDb21wYW55LWZpbGxlZCcsXG4gICAgJ0NvbXBhbnktaW4tbGluZScsXG4gICAgJ0RldmljZXMtZmlsbGVkJyxcbiAgICAnRGV2aWNlcy1pbi1saW5lJyxcbiAgICAnRG9jdW1lbnQtZmlsbGVkJyxcbiAgICAnRG9jdW1lbnQtaW4tbGluZScsXG4gICAgJ0RvdC1maWxsZWQnLFxuICAgICdEb3QtaW4tbGluZScsXG4gICAgJ0VtcGxveWVlLWZpbGxlZCcsXG4gICAgJ0VtcGxveWVlLWluLWxpbmUnLFxuICAgICdFeHBlcmllbmNlLWZpbGxlZCcsXG4gICAgJ0V4cGVyaWVuY2UtaW4tbGluZScsXG4gICAgJ0ZpcmUtZmlsbGVkJyxcbiAgICAnRmlyZS1pbi1saW5lJyxcbiAgICAnRm9sZGVyLWZpbGxlZCcsXG4gICAgJ0ZvbGRlci1pbi1saW5lJyxcbiAgICAnR2VuZGVyLWZlbWFsZS1maWxsZWQnLFxuICAgICdHZW5kZXItZmVtYWxlLWluLWxpbmUnLFxuICAgICdHZW5kZXItbWFsZS1maWxsZWQnLFxuICAgICdHZW5kZXItbWFsZS1pbi1saW5lJyxcbiAgICAnR2lmdC1maWxsZWQnLFxuICAgICdHaWZ0LWluLWxpbmUnLFxuICAgICdJbWFnZS1maWxsZWQnLFxuICAgICdJbWFnZS1pbi1saW5lJyxcbiAgICAnSW50ZWdyYXRpb24tZmlsbGVkJyxcbiAgICAnSW50ZWdyYXRpb24taW4tbGluZScsXG4gICAgJ0xheW91dC1maWxsZWQnLFxuICAgICdMYXlvdXQtaW4tbGluZScsXG4gICAgJ0xpZ2h0LWJ1bGItZmlsbGVkJyxcbiAgICAnTGlnaHQtYnVsYi1pbi1saW5lJyxcbiAgICAnTG9jYXRpb24tZmlsbGVkJyxcbiAgICAnTG9jYXRpb24taW4tbGluZScsXG4gICAgJ01vdXNlLWZpbGxlZCcsXG4gICAgJ01vdXNlLWluLWxpbmUnLFxuICAgICdOb3RpZmljYXRpb24tYmVsbC1maWxsZWQnLFxuICAgICdOb3RpZmljYXRpb24tYmVsbC1pbi1saW5lJyxcbiAgICAnUGFzc3dvcmQtZmlsbGVkJyxcbiAgICAnUGFzc3dvcmQtaW4tbGluZScsXG4gICAgJ1BhdGgtZmlsbGVkJyxcbiAgICAnUGF0aC1pbi1saW5lJyxcbiAgICAnUGluLW1hcmtlci1maWxsZWQnLFxuICAgICdQaW4tbWFya2VyLWluLWxpbmUnLFxuICAgICdQbGFuLWJpbGxpbmctZmlsbGVkJyxcbiAgICAnUGxhbi1iaWxsaW5nLWluLWxpbmUnLFxuICAgICdQcmVtaXVtLWZpbGxlZCcsXG4gICAgJ1ByZW1pdW0taW4tbGluZScsXG4gICAgJ1ByZW1pdW0tY2lyY2xlLWluLWxpbmUnLFxuICAgICdTZWN1cmUtZmlsbGVkJyxcbiAgICAnU2VjdXJlLWluLWxpbmUnLFxuICAgICdTcGFya2xlLWZpbGxlZCcsXG4gICAgJ1NwYXJrbGUtaW4tbGluZScsXG4gICAgJ1N5bmMtZmlsbGVkJyxcbiAgICAnU3luYy1pbi1saW5lJyxcbiAgICAnVGVhbS1maWxsZWQnLFxuICAgICdUZWFtLWluLWxpbmUnLFxuICAgICdUcm9waHktZmlsbGVkJyxcbiAgICAnVHJvcGh5LWluLWxpbmUnLFxuICAgICdVc2VyLWFjY2Vzcy1maWxsZWQnLFxuICAgICdVc2VyLWFjY2Vzcy1pbi1saW5lJyxcbiAgICAnVXNlci1wcm9maWxlLWZpbGxlZCcsXG4gICAgJ1VzZXItcHJvZmlsZS1pbi1saW5lJyxcbiAgICAnVm9sdW1lLWZpbGxlZCcsXG4gICAgJ1ZvbHVtZS1pbi1saW5lJyxcbiAgXSxcbn07XG4iXX0=