@provoly/dashboard 0.23.3 → 0.23.5

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 (53) hide show
  1. package/admin/components/admin-dataset/admin-select-dataset/admin-select-dataset.component.d.ts +16 -8
  2. package/admin/i18n/fr.translations.d.ts +1 -0
  3. package/assets/svgs/six_dot.svg +15 -0
  4. package/esm2022/admin/components/admin-dataset/admin-select-dataset/admin-select-dataset.component.mjs +28 -6
  5. package/esm2022/admin/i18n/fr.translations.mjs +3 -2
  6. package/esm2022/dataset/components/dataset-detail/dataset-detail.component.mjs +3 -3
  7. package/esm2022/lib/core/components/share/group-share/group-share.component.mjs +34 -15
  8. package/esm2022/lib/core/components/share/share.utils.mjs +19 -0
  9. package/esm2022/lib/core/model/filter.interface.mjs +1 -1
  10. package/esm2022/lib/core/model/manifest.interface.mjs +1 -1
  11. package/esm2022/lib/core/model/widget.interface.mjs +1 -1
  12. package/esm2022/lib/core/public-api.mjs +2 -1
  13. package/esm2022/lib/core/store/config/config.service.mjs +2 -1
  14. package/esm2022/lib/core/toolbox/toolbox-menu.service.mjs +1 -2
  15. package/esm2022/lib/dashboard/store/dashboard.actions.mjs +1 -1
  16. package/esm2022/lib/dashboard/store/dashboard.effects.mjs +3 -3
  17. package/esm2022/lib/dashboard/store/manifest.service.mjs +3 -3
  18. package/esm2022/presentation/components/add-edit-presentation/add-edit-presentation.component.mjs +5 -9
  19. package/esm2022/presentation/components/presentation.component.mjs +43 -5
  20. package/esm2022/presentation/i18n/fr.translations.mjs +1 -2
  21. package/esm2022/restitution/components/restitution/restitution.component.mjs +5 -11
  22. package/esm2022/restitution/components/restitution-catalog/restitution-catalog.component.mjs +3 -3
  23. package/esm2022/restitution/components/restitution-list-item/restitution-list-item.component.mjs +3 -3
  24. package/esm2022/toolbox/components/filter-settings/filter-settings.component.mjs +14 -5
  25. package/esm2022/toolbox/components/save-view/save-view.component.mjs +5 -7
  26. package/esm2022/toolbox/components/share/share.component.mjs +2 -3
  27. package/fesm2022/provoly-dashboard-admin.mjs +28 -5
  28. package/fesm2022/provoly-dashboard-admin.mjs.map +1 -1
  29. package/fesm2022/provoly-dashboard-dataset.mjs +2 -2
  30. package/fesm2022/provoly-dashboard-dataset.mjs.map +1 -1
  31. package/fesm2022/provoly-dashboard-presentation.mjs +47 -14
  32. package/fesm2022/provoly-dashboard-presentation.mjs.map +1 -1
  33. package/fesm2022/provoly-dashboard-restitution.mjs +7 -13
  34. package/fesm2022/provoly-dashboard-restitution.mjs.map +1 -1
  35. package/fesm2022/provoly-dashboard-toolbox.mjs +18 -11
  36. package/fesm2022/provoly-dashboard-toolbox.mjs.map +1 -1
  37. package/fesm2022/provoly-dashboard.mjs +57 -19
  38. package/fesm2022/provoly-dashboard.mjs.map +1 -1
  39. package/lib/core/components/share/group-share/group-share.component.d.ts +14 -4
  40. package/lib/core/components/share/share.utils.d.ts +4 -0
  41. package/lib/core/model/filter.interface.d.ts +1 -0
  42. package/lib/core/model/manifest.interface.d.ts +0 -2
  43. package/lib/core/model/widget.interface.d.ts +0 -1
  44. package/lib/core/public-api.d.ts +1 -0
  45. package/lib/dashboard/components/widgets/widget-placement/widget-placement.utils.d.ts +0 -1
  46. package/lib/dashboard/store/dashboard.actions.d.ts +0 -2
  47. package/lib/dashboard/store/manifest.service.d.ts +2 -6
  48. package/package.json +36 -36
  49. package/presentation/components/presentation.component.d.ts +10 -1
  50. package/presentation/i18n/fr.translations.d.ts +0 -1
  51. package/styles/components/_a-label.scss +4 -0
  52. package/styles-theme/components-theme/_a-btn.theme.scss +0 -1
  53. package/toolbox/components/filter-settings/filter-settings.component.d.ts +4 -14
@@ -1,10 +1,16 @@
1
1
  import { OnDestroy, OnInit } from '@angular/core';
2
2
  import { ActivatedRoute, Router } from '@angular/router';
3
3
  import { Store } from '@ngrx/store';
4
- import { Associations, Dataset, MetadataValue, PryI18nService, SubscriptionnerDirective } from '@provoly/dashboard';
4
+ import { Associations, Dataset, MetadataValue, MissingGroupsByEntity, PryI18nService, PryVisibilityType, SubscriptionnerDirective } from '@provoly/dashboard';
5
5
  import { MetaEventType } from '@provoly/dashboard/components/metadata-editor';
6
- import { Observable, Subscription } from 'rxjs';
6
+ import { BehaviorSubject, Observable, Subscription } from 'rxjs';
7
7
  import * as i0 from "@angular/core";
8
+ interface MissingGroups {
9
+ [key: string]: {
10
+ groups: string[];
11
+ entityName: string;
12
+ };
13
+ }
8
14
  export declare class AdminSelectDatasetComponent extends SubscriptionnerDirective implements OnInit, OnDestroy {
9
15
  private store;
10
16
  private router;
@@ -18,12 +24,10 @@ export declare class AdminSelectDatasetComponent extends SubscriptionnerDirectiv
18
24
  datasetMetadata$: Observable<MetadataValue[]>;
19
25
  editable$: Observable<boolean>;
20
26
  accessGroups: string[];
21
- missingGroups$: Observable<{
22
- [key: string]: {
23
- groups: string[];
24
- entityName: string;
25
- };
26
- } | undefined>;
27
+ selectedDatasetMissingGroups$: Observable<MissingGroupsByEntity | undefined>;
28
+ missingGroups$: Observable<MissingGroups | undefined>;
29
+ shareRadioValue$: BehaviorSubject<PryVisibilityType | undefined>;
30
+ disableShareButton$: BehaviorSubject<boolean>;
27
31
  constructor(store: Store<any>, router: Router, route: ActivatedRoute, i18n: PryI18nService);
28
32
  ngOnInit(): void;
29
33
  closePanel(): void;
@@ -31,6 +35,10 @@ export declare class AdminSelectDatasetComponent extends SubscriptionnerDirectiv
31
35
  addDatasetMetadata(metadata: MetaEventType): void;
32
36
  share(dataset: Dataset): void;
33
37
  getGroupLabel(groupName: string): string;
38
+ changeGroup($event: string[]): void;
39
+ updateVisibility($event: PryVisibilityType): void;
40
+ updateDisableButtonValue(): void;
34
41
  static ɵfac: i0.ɵɵFactoryDeclaration<AdminSelectDatasetComponent, never>;
35
42
  static ɵcmp: i0.ɵɵComponentDeclaration<AdminSelectDatasetComponent, "pry-admin-select-dataset", never, {}, {}, never, never, false, never>;
36
43
  }
44
+ export {};
@@ -150,6 +150,7 @@ export declare const frTranslations: {
150
150
  OPEN: string;
151
151
  CLOSED: string;
152
152
  MODIFIABLE: string;
153
+ success: string;
153
154
  conflict: string;
154
155
  entities: {
155
156
  dashboard: string;
@@ -0,0 +1,15 @@
1
+ <svg width="16" height="18" viewBox="0 0 16 18" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <g clip-path="url(#clip0_3549_15316)">
3
+ <mask id="mask0_3549_15316" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="4" y="3" width="8" height="12">
4
+ <path d="M7.33335 13.1991C7.33335 13.4797 7.25516 13.754 7.10865 13.9873C6.96214 14.2206 6.7539 14.4025 6.51027 14.5098C6.26663 14.6172 5.99854 14.6453 5.7399 14.5906C5.48126 14.5358 5.24368 14.4007 5.05721 14.2023C4.87074 14.0039 4.74375 13.7511 4.69231 13.4758C4.64086 13.2006 4.66726 12.9154 4.76818 12.6561C4.8691 12.3969 5.04 12.1753 5.25926 12.0194C5.47853 11.8635 5.73631 11.7803 6.00002 11.7803C6.35364 11.7803 6.69278 11.9298 6.94283 12.1958C7.19288 12.4619 7.33335 12.8228 7.33335 13.1991ZM6.00002 7.52393C5.73631 7.52393 5.47853 7.60714 5.25926 7.76303C5.04 7.91893 4.8691 8.14051 4.76818 8.39976C4.66726 8.65901 4.64086 8.94428 4.69231 9.2195C4.74375 9.49471 4.87074 9.74752 5.05721 9.94594C5.24368 10.1444 5.48126 10.2795 5.7399 10.3342C5.99854 10.389 6.26663 10.3609 6.51027 10.2535C6.7539 10.1461 6.96214 9.96426 7.10865 9.73094C7.25516 9.49762 7.33335 9.22332 7.33335 8.94271C7.33335 8.56642 7.19288 8.20555 6.94283 7.93948C6.69278 7.6734 6.35364 7.52393 6.00002 7.52393ZM6.00002 3.26758C5.73631 3.26758 5.47853 3.35079 5.25926 3.50669C5.04 3.66258 4.8691 3.88417 4.76818 4.14342C4.66726 4.40267 4.64086 4.68793 4.69231 4.96315C4.74375 5.23837 4.87074 5.49117 5.05721 5.68959C5.24368 5.88801 5.48126 6.02314 5.7399 6.07788C5.99854 6.13263 6.26663 6.10453 6.51027 5.99714C6.7539 5.88976 6.96214 5.70791 7.10865 5.47459C7.25516 5.24128 7.33335 4.96697 7.33335 4.68636C7.33335 4.31008 7.19288 3.9492 6.94283 3.68313C6.69278 3.41706 6.35364 3.26758 6.00002 3.26758V3.26758ZM10 6.10514C10.2637 6.10514 10.5215 6.02193 10.7408 5.86604C10.96 5.71014 11.1309 5.48855 11.2319 5.22931C11.3328 4.97006 11.3592 4.68479 11.3077 4.40957C11.2563 4.13435 11.1293 3.88155 10.9428 3.68313C10.7564 3.48471 10.5188 3.34958 10.2601 3.29484C10.0015 3.2401 9.73341 3.26819 9.48978 3.37558C9.24614 3.48296 9.0379 3.66481 8.8914 3.89813C8.74489 4.13145 8.66669 4.40575 8.66669 4.68636C8.66669 5.06265 8.80716 5.42352 9.05721 5.68959C9.30726 5.95566 9.6464 6.10514 10 6.10514ZM10 7.52393C9.73631 7.52393 9.47853 7.60714 9.25926 7.76303C9.04 7.91893 8.8691 8.14051 8.76818 8.39976C8.66726 8.65901 8.64086 8.94428 8.69231 9.2195C8.74375 9.49471 8.87074 9.74752 9.05721 9.94594C9.24368 10.1444 9.48126 10.2795 9.7399 10.3342C9.99854 10.389 10.2666 10.3609 10.5103 10.2535C10.7539 10.1461 10.9621 9.96426 11.1086 9.73094C11.2552 9.49762 11.3334 9.22332 11.3334 8.94271C11.3334 8.56642 11.1929 8.20555 10.9428 7.93948C10.6928 7.6734 10.3536 7.52393 10 7.52393ZM10 11.7803C9.73631 11.7803 9.47853 11.8635 9.25926 12.0194C9.04 12.1753 8.8691 12.3969 8.76818 12.6561C8.66726 12.9154 8.64086 13.2006 8.69231 13.4758C8.74375 13.7511 8.87074 14.0039 9.05721 14.2023C9.24368 14.4007 9.48126 14.5358 9.7399 14.5906C9.99854 14.6453 10.2666 14.6172 10.5103 14.5098C10.7539 14.4025 10.9621 14.2206 11.1086 13.9873C11.2552 13.754 11.3334 13.4797 11.3334 13.1991C11.3334 12.8228 11.1929 12.4619 10.9428 12.1958C10.6928 11.9298 10.3536 11.7803 10 11.7803Z" fill="black"/>
5
+ </mask>
6
+ <g mask="url(#mask0_3549_15316)">
7
+ <rect y="0.429688" width="16" height="17.0254" fill="#4E6C8C"/>
8
+ </g>
9
+ </g>
10
+ <defs>
11
+ <clipPath id="clip0_3549_15316">
12
+ <rect width="16" height="17.0254" fill="white" transform="translate(0 0.429688)"/>
13
+ </clipPath>
14
+ </defs>
15
+ </svg>
@@ -1,7 +1,7 @@
1
1
  import { Component } from '@angular/core';
2
- import { DashboardSelectors, DataSourceActions, DataSourceSelectors, SubscriptionnerDirective } from '@provoly/dashboard';
2
+ import { DashboardSelectors, DataSourceActions, DataSourceSelectors, PryVisibilityType, SubscriptionnerDirective } from '@provoly/dashboard';
3
3
  import { MetadataActions, MetadataSelectors } from '@provoly/dashboard/components/metadata-editor';
4
- import { map, Subscription, withLatestFrom } from 'rxjs';
4
+ import { BehaviorSubject, map, Subscription, withLatestFrom } from 'rxjs';
5
5
  import { AdminActions } from '../../../store/admin.actions';
6
6
  import { AdminSelectors } from '../../../store/admin.selectors';
7
7
  import * as i0 from "@angular/core";
@@ -23,12 +23,15 @@ export class AdminSelectDatasetComponent extends SubscriptionnerDirective {
23
23
  this.sub = new Subscription();
24
24
  this.currentTypeTranslation = '';
25
25
  this.accessGroups = [];
26
+ this.shareRadioValue$ = new BehaviorSubject(undefined);
27
+ this.disableShareButton$ = new BehaviorSubject(false);
26
28
  this.store.dispatch(MetadataActions.loadMetadata());
27
29
  this.selectedDataset$ = this.store.select(DataSourceSelectors.selectedDataset);
28
30
  this.datasetMetadata$ = this.store.select(DataSourceSelectors.selectedDatasetMetadata);
29
31
  this.associations$ = this.store.select(AdminSelectors.selectedAssociation);
30
32
  this.editable$ = this.store.select(MetadataSelectors.editable);
31
- this.missingGroups$ = this.store.select(DataSourceSelectors.selectedDatasetMissingGroups).pipe(withLatestFrom(this.store.select(DashboardSelectors.manifestsList)), map(([conflict, manifests]) => {
33
+ this.selectedDatasetMissingGroups$ = this.store.select(DataSourceSelectors.selectedDatasetMissingGroups);
34
+ this.missingGroups$ = this.selectedDatasetMissingGroups$.pipe(withLatestFrom(this.store.select(DashboardSelectors.manifestsList)), map(([conflict, manifests]) => {
32
35
  const result = {};
33
36
  Object.keys(conflict ?? {}).forEach((entityId) => {
34
37
  result[entityId] = {
@@ -117,11 +120,30 @@ export class AdminSelectDatasetComponent extends SubscriptionnerDirective {
117
120
  const label = this.i18n.instant(i18nBase + groupName);
118
121
  return label.startsWith(i18nBase) ? groupName : label;
119
122
  }
123
+ changeGroup($event) {
124
+ this.accessGroups = $event;
125
+ this.updateDisableButtonValue();
126
+ this.store.dispatch(DataSourceActions.dataset.setMissingGroups({ missingGroups: undefined }));
127
+ }
128
+ updateVisibility($event) {
129
+ this.shareRadioValue$.next($event);
130
+ this.updateDisableButtonValue();
131
+ }
132
+ updateDisableButtonValue() {
133
+ if (this.shareRadioValue$.getValue() === PryVisibilityType.RESTRICTED && this.accessGroups.length === 0) {
134
+ this.disableShareButton$.next(true);
135
+ }
136
+ else {
137
+ if (this.disableShareButton$.getValue()) {
138
+ this.disableShareButton$.next(false);
139
+ }
140
+ }
141
+ }
120
142
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: AdminSelectDatasetComponent, deps: [{ token: i1.Store }, { token: i2.Router }, { token: i2.ActivatedRoute }, { token: i3.PryI18nService }], target: i0.ɵɵFactoryTarget.Component }); }
121
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.3", type: AdminSelectDatasetComponent, selector: "pry-admin-select-dataset", usesInheritance: true, ngImport: i0, template: "<div\n *ngIf=\"selectedDataset$ | async as dataset\"\n [id]=\"'panel-dataset-' + dataset.id\"\n [attr.aria-labelledby]=\"'button-dataset-' + dataset.id\"\n class=\"o-panel o-pry-admin-dataset-select\"\n>\n <div class=\"o-panel__header\">\n <button type=\"button\" class=\"a-btn a-btn--icon-only\" (click)=\"closePanel()\">\n <span class=\"u-visually-hidden\">{{ '@pry.action.closePanel' | i18n }}</span>\n <pry-icon iconSvg=\"close\"></pry-icon>\n </button>\n\n <h3 class=\"a-h3\">\n {{ '@pry.admin.dataset.details' | i18n }}\n </h3>\n </div>\n\n <pry-tab-group translationStringBase=\"@pry.admin.\">\n <pry-tab [templateRef]=\"datasetMetadata\" name=\"metadata.title\"></pry-tab>\n <pry-tab [templateRef]=\"datasetAssociations\" name=\"classes.associations\"></pry-tab>\n <pry-tab *ngIf=\"dataset.owner\" [templateRef]=\"shareDataset\" name=\"share\"></pry-tab>\n </pry-tab-group>\n\n <ng-template #datasetMetadata>\n <pry-metadata-editor\n [targetId]=\"(selectedDataset$ | async)?.id ?? ''\"\n [isModification]=\"(editable$ | async) ?? false\"\n [metadata]=\"(datasetMetadata$ | async) ?? []\"\n (removeMeta)=\"removeMetadata($event)\"\n (addMeta)=\"addDatasetMetadata($event)\"\n [type]=\"'meta'\"\n ></pry-metadata-editor>\n </ng-template>\n\n <ng-template #datasetAssociations>\n <div *ngIf=\"associations$ | async as associations\" class=\"o-tabs__panels__item__content\">\n <h4 class=\"a-h4\">{{ '@pry.admin.classes.associations' | i18n }}</h4>\n <pry-association [associations]=\"associations\"></pry-association>\n </div>\n </ng-template>\n\n <ng-template #shareDataset>\n <div class=\"o-pry-admin-dataset-select__share\">\n <pry-group-share [ngModel]=\"dataset.groups\" (ngModelChange)=\"accessGroups = $event\"></pry-group-share>\n <button type=\"submit\" class=\"a-btn a-btn--primary u-self-end\" #submit (click)=\"share(dataset)\">\n {{ '@pry.admin.validate' | i18n }}\n </button>\n @if(missingGroups$ | async; as missingGroups) {\n <div class=\"u-display-flex -column\">\n <span>{{ '@pry.admin.dataset.conflict' | i18n }}</span>\n @for(missing of missingGroups | keyvalue; track missing.key) {\n <div>\n {{ '@pry.admin.dataset.entities.dashboard' | i18n }} <strong>{{ missing.value.entityName }}</strong>\n <div class=\"u-display-flex\">\n @for(group of missing.value.groups; track group) {\n <span class=\"a-chip\">{{ getGroupLabel(group) }}</span>\n }\n </div>\n </div>\n }\n </div>\n }\n </div>\n </ng-template>\n</div>\n", dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.TabGroupComponent, selector: "pry-tab-group", inputs: ["translationStringBase"] }, { kind: "component", type: i3.TabComponent, selector: "pry-tab", inputs: ["name", "templateRef", "index"] }, { kind: "component", type: i3.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.PryMetadataEditorComponent, selector: "pry-metadata-editor", inputs: ["isModification", "targetId", "type", "metadata"], outputs: ["addMeta", "removeMeta"] }, { kind: "component", type: i3.PryGroupShareComponent, selector: "pry-group-share" }, { kind: "component", type: i7.PryAssociationComponent, selector: "pry-association", inputs: ["associations"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.KeyValuePipe, name: "keyvalue" }, { kind: "pipe", type: i3.I18nPipe, name: "i18n" }] }); }
143
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.3", type: AdminSelectDatasetComponent, selector: "pry-admin-select-dataset", usesInheritance: true, ngImport: i0, template: "<div\n *ngIf=\"selectedDataset$ | async as dataset\"\n [id]=\"'panel-dataset-' + dataset.id\"\n [attr.aria-labelledby]=\"'button-dataset-' + dataset.id\"\n class=\"o-panel o-pry-admin-dataset-select\"\n>\n <div class=\"o-panel__header\">\n <button type=\"button\" class=\"a-btn a-btn--icon-only\" (click)=\"closePanel()\">\n <span class=\"u-visually-hidden\">{{ '@pry.action.closePanel' | i18n }}</span>\n <pry-icon iconSvg=\"close\"></pry-icon>\n </button>\n\n <h3 class=\"a-h3\">\n {{ '@pry.admin.dataset.details' | i18n }}\n </h3>\n </div>\n\n <pry-tab-group translationStringBase=\"@pry.admin.\">\n <pry-tab [templateRef]=\"datasetMetadata\" name=\"metadata.title\"></pry-tab>\n <pry-tab [templateRef]=\"datasetAssociations\" name=\"classes.associations\"></pry-tab>\n <pry-tab *ngIf=\"dataset.owner\" [templateRef]=\"shareDataset\" name=\"share\"></pry-tab>\n </pry-tab-group>\n\n <ng-template #datasetMetadata>\n <pry-metadata-editor\n [targetId]=\"(selectedDataset$ | async)?.id ?? ''\"\n [isModification]=\"(editable$ | async) ?? false\"\n [metadata]=\"(datasetMetadata$ | async) ?? []\"\n (removeMeta)=\"removeMetadata($event)\"\n (addMeta)=\"addDatasetMetadata($event)\"\n [type]=\"'meta'\"\n ></pry-metadata-editor>\n </ng-template>\n\n <ng-template #datasetAssociations>\n <div *ngIf=\"associations$ | async as associations\" class=\"o-tabs__panels__item__content\">\n <h4 class=\"a-h4\">{{ '@pry.admin.classes.associations' | i18n }}</h4>\n <pry-association [associations]=\"associations\"></pry-association>\n </div>\n </ng-template>\n\n <ng-template #shareDataset>\n <div class=\"o-pry-admin-dataset-select__share\">\n <pry-group-share [ngModel]=\"dataset.groups\" (ngModelChange)=\"changeGroup($event)\" (radioValueChange)=\"updateVisibility($event)\"></pry-group-share>\n <button type=\"submit\" class=\"a-btn a-btn--primary u-self-end\" #submit (click)=\"share(dataset)\" [disabled]=\"disableShareButton$ | async\">\n {{ '@pry.admin.validate' | i18n }}\n </button>\n @if(selectedDatasetMissingGroups$ | async) {\n <h4 class=\"a-h4\">{{ '@pry.admin.dataset.success' | i18n }}</h4>\n }\n @if(missingGroups$ | async; as missingGroups) {\n <div class=\"u-display-flex -column\">\n <span>{{ '@pry.admin.dataset.conflict' | i18n }}</span>\n @for(missing of missingGroups | keyvalue; track missing.key) {\n <div>\n {{ '@pry.admin.dataset.entities.dashboard' | i18n }} <strong>{{ missing.value.entityName }}</strong>\n <div class=\"u-display-flex\">\n @for(group of missing.value.groups; track group) {\n <span class=\"a-chip\">{{ getGroupLabel(group) }}</span>\n }\n </div>\n </div>\n }\n </div>\n }\n </div>\n </ng-template>\n</div>\n", dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.TabGroupComponent, selector: "pry-tab-group", inputs: ["translationStringBase"] }, { kind: "component", type: i3.TabComponent, selector: "pry-tab", inputs: ["name", "templateRef", "index"] }, { kind: "component", type: i3.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.PryMetadataEditorComponent, selector: "pry-metadata-editor", inputs: ["isModification", "targetId", "type", "metadata"], outputs: ["addMeta", "removeMeta"] }, { kind: "component", type: i3.PryGroupShareComponent, selector: "pry-group-share", inputs: ["disableRadios", "allowedGroups"], outputs: ["radioValueChange"] }, { kind: "component", type: i7.PryAssociationComponent, selector: "pry-association", inputs: ["associations"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.KeyValuePipe, name: "keyvalue" }, { kind: "pipe", type: i3.I18nPipe, name: "i18n" }] }); }
122
144
  }
123
145
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: AdminSelectDatasetComponent, decorators: [{
124
146
  type: Component,
125
- args: [{ selector: 'pry-admin-select-dataset', template: "<div\n *ngIf=\"selectedDataset$ | async as dataset\"\n [id]=\"'panel-dataset-' + dataset.id\"\n [attr.aria-labelledby]=\"'button-dataset-' + dataset.id\"\n class=\"o-panel o-pry-admin-dataset-select\"\n>\n <div class=\"o-panel__header\">\n <button type=\"button\" class=\"a-btn a-btn--icon-only\" (click)=\"closePanel()\">\n <span class=\"u-visually-hidden\">{{ '@pry.action.closePanel' | i18n }}</span>\n <pry-icon iconSvg=\"close\"></pry-icon>\n </button>\n\n <h3 class=\"a-h3\">\n {{ '@pry.admin.dataset.details' | i18n }}\n </h3>\n </div>\n\n <pry-tab-group translationStringBase=\"@pry.admin.\">\n <pry-tab [templateRef]=\"datasetMetadata\" name=\"metadata.title\"></pry-tab>\n <pry-tab [templateRef]=\"datasetAssociations\" name=\"classes.associations\"></pry-tab>\n <pry-tab *ngIf=\"dataset.owner\" [templateRef]=\"shareDataset\" name=\"share\"></pry-tab>\n </pry-tab-group>\n\n <ng-template #datasetMetadata>\n <pry-metadata-editor\n [targetId]=\"(selectedDataset$ | async)?.id ?? ''\"\n [isModification]=\"(editable$ | async) ?? false\"\n [metadata]=\"(datasetMetadata$ | async) ?? []\"\n (removeMeta)=\"removeMetadata($event)\"\n (addMeta)=\"addDatasetMetadata($event)\"\n [type]=\"'meta'\"\n ></pry-metadata-editor>\n </ng-template>\n\n <ng-template #datasetAssociations>\n <div *ngIf=\"associations$ | async as associations\" class=\"o-tabs__panels__item__content\">\n <h4 class=\"a-h4\">{{ '@pry.admin.classes.associations' | i18n }}</h4>\n <pry-association [associations]=\"associations\"></pry-association>\n </div>\n </ng-template>\n\n <ng-template #shareDataset>\n <div class=\"o-pry-admin-dataset-select__share\">\n <pry-group-share [ngModel]=\"dataset.groups\" (ngModelChange)=\"accessGroups = $event\"></pry-group-share>\n <button type=\"submit\" class=\"a-btn a-btn--primary u-self-end\" #submit (click)=\"share(dataset)\">\n {{ '@pry.admin.validate' | i18n }}\n </button>\n @if(missingGroups$ | async; as missingGroups) {\n <div class=\"u-display-flex -column\">\n <span>{{ '@pry.admin.dataset.conflict' | i18n }}</span>\n @for(missing of missingGroups | keyvalue; track missing.key) {\n <div>\n {{ '@pry.admin.dataset.entities.dashboard' | i18n }} <strong>{{ missing.value.entityName }}</strong>\n <div class=\"u-display-flex\">\n @for(group of missing.value.groups; track group) {\n <span class=\"a-chip\">{{ getGroupLabel(group) }}</span>\n }\n </div>\n </div>\n }\n </div>\n }\n </div>\n </ng-template>\n</div>\n" }]
147
+ args: [{ selector: 'pry-admin-select-dataset', template: "<div\n *ngIf=\"selectedDataset$ | async as dataset\"\n [id]=\"'panel-dataset-' + dataset.id\"\n [attr.aria-labelledby]=\"'button-dataset-' + dataset.id\"\n class=\"o-panel o-pry-admin-dataset-select\"\n>\n <div class=\"o-panel__header\">\n <button type=\"button\" class=\"a-btn a-btn--icon-only\" (click)=\"closePanel()\">\n <span class=\"u-visually-hidden\">{{ '@pry.action.closePanel' | i18n }}</span>\n <pry-icon iconSvg=\"close\"></pry-icon>\n </button>\n\n <h3 class=\"a-h3\">\n {{ '@pry.admin.dataset.details' | i18n }}\n </h3>\n </div>\n\n <pry-tab-group translationStringBase=\"@pry.admin.\">\n <pry-tab [templateRef]=\"datasetMetadata\" name=\"metadata.title\"></pry-tab>\n <pry-tab [templateRef]=\"datasetAssociations\" name=\"classes.associations\"></pry-tab>\n <pry-tab *ngIf=\"dataset.owner\" [templateRef]=\"shareDataset\" name=\"share\"></pry-tab>\n </pry-tab-group>\n\n <ng-template #datasetMetadata>\n <pry-metadata-editor\n [targetId]=\"(selectedDataset$ | async)?.id ?? ''\"\n [isModification]=\"(editable$ | async) ?? false\"\n [metadata]=\"(datasetMetadata$ | async) ?? []\"\n (removeMeta)=\"removeMetadata($event)\"\n (addMeta)=\"addDatasetMetadata($event)\"\n [type]=\"'meta'\"\n ></pry-metadata-editor>\n </ng-template>\n\n <ng-template #datasetAssociations>\n <div *ngIf=\"associations$ | async as associations\" class=\"o-tabs__panels__item__content\">\n <h4 class=\"a-h4\">{{ '@pry.admin.classes.associations' | i18n }}</h4>\n <pry-association [associations]=\"associations\"></pry-association>\n </div>\n </ng-template>\n\n <ng-template #shareDataset>\n <div class=\"o-pry-admin-dataset-select__share\">\n <pry-group-share [ngModel]=\"dataset.groups\" (ngModelChange)=\"changeGroup($event)\" (radioValueChange)=\"updateVisibility($event)\"></pry-group-share>\n <button type=\"submit\" class=\"a-btn a-btn--primary u-self-end\" #submit (click)=\"share(dataset)\" [disabled]=\"disableShareButton$ | async\">\n {{ '@pry.admin.validate' | i18n }}\n </button>\n @if(selectedDatasetMissingGroups$ | async) {\n <h4 class=\"a-h4\">{{ '@pry.admin.dataset.success' | i18n }}</h4>\n }\n @if(missingGroups$ | async; as missingGroups) {\n <div class=\"u-display-flex -column\">\n <span>{{ '@pry.admin.dataset.conflict' | i18n }}</span>\n @for(missing of missingGroups | keyvalue; track missing.key) {\n <div>\n {{ '@pry.admin.dataset.entities.dashboard' | i18n }} <strong>{{ missing.value.entityName }}</strong>\n <div class=\"u-display-flex\">\n @for(group of missing.value.groups; track group) {\n <span class=\"a-chip\">{{ getGroupLabel(group) }}</span>\n }\n </div>\n </div>\n }\n </div>\n }\n </div>\n </ng-template>\n</div>\n" }]
126
148
  }], ctorParameters: () => [{ type: i1.Store }, { type: i2.Router }, { type: i2.ActivatedRoute }, { type: i3.PryI18nService }] });
127
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4tc2VsZWN0LWRhdGFzZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvYWRtaW4vY29tcG9uZW50cy9hZG1pbi1kYXRhc2V0L2FkbWluLXNlbGVjdC1kYXRhc2V0L2FkbWluLXNlbGVjdC1kYXRhc2V0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2FkbWluL2NvbXBvbmVudHMvYWRtaW4tZGF0YXNldC9hZG1pbi1zZWxlY3QtZGF0YXNldC9hZG1pbi1zZWxlY3QtZGF0YXNldC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUc3RCxPQUFPLEVBRUwsa0JBQWtCLEVBRWxCLGlCQUFpQixFQUNqQixtQkFBbUIsRUFHbkIsd0JBQXdCLEVBQ3pCLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBaUIsTUFBTSwrQ0FBK0MsQ0FBQztBQUNsSCxPQUFPLEVBQUUsR0FBRyxFQUFjLFlBQVksRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzVELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7Ozs7Ozs7O0FBTWhFLE1BQU0sT0FBTywyQkFBNEIsU0FBUSx3QkFBd0I7YUFDaEUsT0FBRSxHQUFHLDZCQUE2QixBQUFoQyxDQUFpQztJQVUxQyxZQUNVLEtBQWlCLEVBQ2pCLE1BQWMsRUFDZCxLQUFxQixFQUNyQixJQUFvQjtRQUU1QixLQUFLLEVBQUUsQ0FBQztRQUxBLFVBQUssR0FBTCxLQUFLLENBQVk7UUFDakIsV0FB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Q0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQWdCO1FBQ3BCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUNqQixpQkFBaUIsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsT0FBTyxFQUFFLEVBQUUsR0FBRyxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxZQUFZLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FDcEcsQ0FBQztJQUNKLENBQUM7SUFFRCxhQUFhLENBQUMsU0FBaUI7UUFDN0IsTUFBTSxRQUFRLEdBQUcsNkNBQTZDLENBQUM7UUFDL0QsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxHQUFHLFNBQVMsQ0FBQyxDQUFDO1FBQ3RELE9BQU8sS0FBSyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDeEQsQ0FBQzs4R0FySVUsMkJBQTJCO2tHQUEzQiwyQkFBMkIsdUZDdEJ4Qyx5cUZBaUVBOzsyRkQzQ2EsMkJBQTJCO2tCQUp2QyxTQUFTOytCQUNFLDBCQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQge1xuICBBc3NvY2lhdGlvbnMsXG4gIERhc2hib2FyZFNlbGVjdG9ycyxcbiAgRGF0YXNldCxcbiAgRGF0YVNvdXJjZUFjdGlvbnMsXG4gIERhdGFTb3VyY2VTZWxlY3RvcnMsXG4gIE1ldGFkYXRhVmFsdWUsXG4gIFByeUkxOG5TZXJ2aWNlLFxuICBTdWJzY3JpcHRpb25uZXJEaXJlY3RpdmVcbn0gZnJvbSAnQHByb3ZvbHkvZGFzaGJvYXJkJztcbmltcG9ydCB7IE1ldGFkYXRhQWN0aW9ucywgTWV0YWRhdGFTZWxlY3RvcnMsIE1ldGFFdmVudFR5cGUgfSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQvY29tcG9uZW50cy9tZXRhZGF0YS1lZGl0b3InO1xuaW1wb3J0IHsgbWFwLCBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24sIHdpdGhMYXRlc3RGcm9tIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBZG1pbkFjdGlvbnMgfSBmcm9tICcuLi8uLi8uLi9zdG9yZS9hZG1pbi5hY3Rpb25zJztcbmltcG9ydCB7IEFkbWluU2VsZWN0b3JzIH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvYWRtaW4uc2VsZWN0b3JzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncHJ5LWFkbWluLXNlbGVjdC1kYXRhc2V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FkbWluLXNlbGVjdC1kYXRhc2V0LmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBBZG1pblNlbGVjdERhdGFzZXRDb21wb25lbnQgZXh0ZW5kcyBTdWJzY3JpcHRpb25uZXJEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHN0YXRpYyBpZCA9ICdBZG1pblNlbGVjdERhdGFzZXRDb21wb25lbnQnO1xuICBzZWxlY3RlZERhdGFzZXQkOiBPYnNlcnZhYmxlPERhdGFzZXQgfCBudWxsPjtcbiAgYXNzb2NpYXRpb25zJDogT2JzZXJ2YWJsZTxBc3NvY2lhdGlvbnMgfCB1bmRlZmluZWQ+O1xuICBzdWIgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG4gIGN1cnJlbnRUeXBlVHJhbnNsYXRpb24gPSAnJztcbiAgZGF0YXNldE1ldGFkYXRhJDogT2JzZXJ2YWJsZTxNZXRhZGF0YVZhbHVlW10+O1xuICBlZGl0YWJsZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIGFjY2Vzc0dyb3Vwczogc3RyaW5nW10gPSBbXTtcbiAgbWlzc2luZ0dyb3VwcyQ6IE9ic2VydmFibGU8eyBba2V5OiBzdHJpbmddOiB7IGdyb3Vwczogc3RyaW5nW107IGVudGl0eU5hbWU6IHN0cmluZyB9IH0gfCB1bmRlZmluZWQ+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlPGFueT4sXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIGkxOG46IFByeUkxOG5TZXJ2aWNlXG4gICkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChNZXRhZGF0YUFjdGlvbnMubG9hZE1ldGFkYXRhKCkpO1xuICAgIHRoaXMuc2VsZWN0ZWREYXRhc2V0JCA9IHRoaXMuc3RvcmUuc2VsZWN0KERhdGFTb3VyY2VTZWxlY3RvcnMuc2VsZWN0ZWREYXRhc2V0KTtcbiAgICB0aGlzLmRhdGFzZXRNZXRhZGF0YSQgPSB0aGlzLnN0b3JlLnNlbGVjdChEYXRhU291cmNlU2VsZWN0b3JzLnNlbGVjdGVkRGF0YXNldE1ldGFkYXRhKTtcbiAgICB0aGlzLmFzc29jaWF0aW9ucyQgPSB0aGlzLnN0b3JlLnNlbGVjdChBZG1pblNlbGVjdG9ycy5zZWxlY3RlZEFzc29jaWF0aW9uKTtcbiAgICB0aGlzLmVkaXRhYmxlJCA9IHRoaXMuc3RvcmUuc2VsZWN0KE1ldGFkYXRhU2VsZWN0b3JzLmVkaXRhYmxlKTtcbiAgICB0aGlzLm1pc3NpbmdHcm91cHMkID0gdGhpcy5zdG9yZS5zZWxlY3QoRGF0YVNvdXJjZVNlbGVjdG9ycy5zZWxlY3RlZERhdGFzZXRNaXNzaW5nR3JvdXBzKS5waXBlKFxuICAgICAgd2l0aExhdGVzdEZyb20odGhpcy5zdG9yZS5zZWxlY3QoRGFzaGJvYXJkU2VsZWN0b3JzLm1hbmlmZXN0c0xpc3QpKSxcbiAgICAgIG1hcCgoW2NvbmZsaWN0LCBtYW5pZmVzdHNdKSA9PiB7XG4gICAgICAgIGNvbnN0IHJlc3VsdDogeyBba2V5OiBzdHJpbmddOiB7IGdyb3Vwczogc3RyaW5nW107IGVudGl0eU5hbWU6IHN0cmluZyB9IH0gPSB7fTtcbiAgICAgICAgT2JqZWN0LmtleXMoY29uZmxpY3QgPz8ge30pLmZvckVhY2goKGVudGl0eUlkKSA9PiB7XG4gICAgICAgICAgcmVzdWx0W2VudGl0eUlkXSA9IHtcbiAgICAgICAgICAgIGdyb3VwczogY29uZmxpY3Q/LltlbnRpdHlJZF0gPz8gW10sXG4gICAgICAgICAgICBlbnRpdHlOYW1lOiBtYW5pZmVzdHMuZmluZCgobSkgPT4gbS5pZCA9PT0gZW50aXR5SWQpPy5uYW1lID8/IGVudGl0eUlkXG4gICAgICAgICAgfTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBPYmplY3Qua2V5cyhyZXN1bHQpLmxlbmd0aCA+IDAgPyByZXN1bHQgOiB1bmRlZmluZWQ7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMuYWRkKFxuICAgICAgdGhpcy5zZWxlY3RlZERhdGFzZXQkLnN1YnNjcmliZSgoZGF0YXNldCkgPT4ge1xuICAgICAgICBpZiAoZGF0YXNldCkge1xuICAgICAgICAgIHRoaXMuYWNjZXNzR3JvdXBzID0gZGF0YXNldD8uZ3JvdXBzID8/IFtdO1xuICAgICAgICAgIGNvbnN0IGVkaXRQYXRoID0gdGhpcy5yb3V0ZXIuY3JlYXRlVXJsVHJlZShbJy4nLCAnZGF0YXNldCcsICdlZGl0JywgZGF0YXNldC5pZF0sIHtcbiAgICAgICAgICAgIHJlbGF0aXZlVG86IHRoaXMucm91dGVcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBpZiAoZGF0YXNldC5vd25lcikge1xuICAgICAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgICAgICAgQWRtaW5BY3Rpb25zLm1haW5BY3Rpb25zKHtcbiAgICAgICAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbjogQWRtaW5BY3Rpb25zLnJvdXRlVG8oeyBwYXRoOiBlZGl0UGF0aC50b1N0cmluZygpIH0pLFxuICAgICAgICAgICAgICAgICAgICBsYWJlbDogJ2VkaXQnLFxuICAgICAgICAgICAgICAgICAgICBpY29uOiAnZWRpdCcsXG4gICAgICAgICAgICAgICAgICAgIG1vZHVsZUFjY2VzczogJ2FkbWluJyxcbiAgICAgICAgICAgICAgICAgICAgcGFnZUFjY2VzczogJ2RhdGFzZXQnLFxuICAgICAgICAgICAgICAgICAgICBhY3Rpb25BY2Nlc3M6ICd3cml0ZSdcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbjogRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5jb25maXJtRGF0YVNvdXJjZURlbGV0aW9uKHtcbiAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBkYXRhc2V0LmlkLFxuICAgICAgICAgICAgICAgICAgICAgIHJvdXRlOiB0aGlzLnJvdXRlci5jcmVhdGVVcmxUcmVlKFsnLicsICdkYXRhc2V0J10sIHsgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZSB9KS50b1N0cmluZygpLFxuICAgICAgICAgICAgICAgICAgICAgIGFkZFJvdXRlOiB0aGlzLnJvdXRlclxuICAgICAgICAgICAgICAgICAgICAgICAgLmNyZWF0ZVVybFRyZWUoWycuJywgJ2RhdGFzZXQnLCAnbmV3J10sIHsgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZSB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgLnRvU3RyaW5nKClcbiAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsOiAnZGVsZXRlJyxcbiAgICAgICAgICAgICAgICAgICAgaWNvbjogJ2RlbGV0ZScsXG4gICAgICAgICAgICAgICAgICAgIG1vZHVsZUFjY2VzczogJ2FkbWluJyxcbiAgICAgICAgICAgICAgICAgICAgcGFnZUFjY2VzczogJ2RhdGFzZXQnLFxuICAgICAgICAgICAgICAgICAgICBhY3Rpb25BY2Nlc3M6ICd3cml0ZSdcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgICAgICBBZG1pbkFjdGlvbnMubWFpbkFjdGlvbnMoe1xuICAgICAgICAgICAgICAgIGFjdGlvbnM6IFtdXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgY2xvc2VQYW5lbCgpIHtcbiAgICBjb25zdCBwYXRoID0gdGhpcy5yb3V0ZXIuY3JlYXRlVXJsVHJlZShbJy4nLCAnZGF0YXNldCcsICduZXcnXSwgeyByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlIH0pO1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC51bnNlbGVjdERhdGFzZXQoKSk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChBZG1pbkFjdGlvbnMudG9nZ2xlUGFuZWwoeyBwYW5lbE9wZW46IGZhbHNlIH0pKTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgQWRtaW5BY3Rpb25zLm1haW5BY3Rpb25zKHtcbiAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGFjdGlvbjogQWRtaW5BY3Rpb25zLnJvdXRlVG8oeyBwYXRoOiBwYXRoLnRvU3RyaW5nKCkgfSksXG4gICAgICAgICAgICBsYWJlbDogJ2FkZCcsXG4gICAgICAgICAgICBpY29uOiAnYWRkX2NvbHVtbicsXG4gICAgICAgICAgICBtb2R1bGVBY2Nlc3M6ICdhZG1pbicsXG4gICAgICAgICAgICBwYWdlQWNjZXNzOiAnbWV0YWRhdGFfcnVsZXMnLFxuICAgICAgICAgICAgYWN0aW9uQWNjZXNzOiAnd3JpdGUnXG4gICAgICAgICAgfVxuICAgICAgICBdXG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICByZW1vdmVNZXRhZGF0YShtZXRhZGF0YTogTWV0YUV2ZW50VHlwZSkge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICBNZXRhZGF0YUFjdGlvbnMuZGVsZXRlRGF0YXNldE1ldGFkYXRhKHsgZGF0YXNldElkOiBtZXRhZGF0YS5pZCwgbWV0YWRhdGFJZDogbWV0YWRhdGEubWV0YWRhdGFJZCB9KVxuICAgICk7XG4gIH1cblxuICBhZGREYXRhc2V0TWV0YWRhdGEobWV0YWRhdGE6IE1ldGFFdmVudFR5cGUpIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgTWV0YWRhdGFBY3Rpb25zLmFkZERhdGFzZXRNZXRhZGF0YSh7XG4gICAgICAgIGRhdGFzZXRJZDogbWV0YWRhdGEuaWQsXG4gICAgICAgIG1ldGFkYXRhSWQ6IG1ldGFkYXRhLm1ldGFkYXRhSWQsXG4gICAgICAgIHZhbHVlOiBtZXRhZGF0YS52YWx1ZVxuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgc2hhcmUoZGF0YXNldDogRGF0YXNldCkge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICBEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LnVwZGF0ZSh7IGRhdGFzZXQ6IHsgLi4uZGF0YXNldCwgZ3JvdXBzOiB0aGlzLmFjY2Vzc0dyb3VwcyB9LCByb3V0ZTogJycgfSlcbiAgICApO1xuICB9XG5cbiAgZ2V0R3JvdXBMYWJlbChncm91cE5hbWU6IHN0cmluZykge1xuICAgIGNvbnN0IGkxOG5CYXNlID0gJ0BwcnkuY29tcG9uZW50cy5jaGlwc1NlbGVjdG9yLnNoYXJlLmdyb3Vwcy4nO1xuICAgIGNvbnN0IGxhYmVsID0gdGhpcy5pMThuLmluc3RhbnQoaTE4bkJhc2UgKyBncm91cE5hbWUpO1xuICAgIHJldHVybiBsYWJlbC5zdGFydHNXaXRoKGkxOG5CYXNlKSA/IGdyb3VwTmFtZSA6IGxhYmVsO1xuICB9XG59XG4iLCI8ZGl2XG4gICpuZ0lmPVwic2VsZWN0ZWREYXRhc2V0JCB8IGFzeW5jIGFzIGRhdGFzZXRcIlxuICBbaWRdPVwiJ3BhbmVsLWRhdGFzZXQtJyArIGRhdGFzZXQuaWRcIlxuICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiJ2J1dHRvbi1kYXRhc2V0LScgKyBkYXRhc2V0LmlkXCJcbiAgY2xhc3M9XCJvLXBhbmVsIG8tcHJ5LWFkbWluLWRhdGFzZXQtc2VsZWN0XCJcbj5cbiAgPGRpdiBjbGFzcz1cIm8tcGFuZWxfX2hlYWRlclwiPlxuICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYS1idG4gYS1idG4tLWljb24tb25seVwiIChjbGljayk9XCJjbG9zZVBhbmVsKClcIj5cbiAgICAgIDxzcGFuIGNsYXNzPVwidS12aXN1YWxseS1oaWRkZW5cIj57eyAnQHByeS5hY3Rpb24uY2xvc2VQYW5lbCcgfCBpMThuIH19PC9zcGFuPlxuICAgICAgPHByeS1pY29uIGljb25Tdmc9XCJjbG9zZVwiPjwvcHJ5LWljb24+XG4gICAgPC9idXR0b24+XG5cbiAgICA8aDMgY2xhc3M9XCJhLWgzXCI+XG4gICAgICB7eyAnQHByeS5hZG1pbi5kYXRhc2V0LmRldGFpbHMnIHwgaTE4biB9fVxuICAgIDwvaDM+XG4gIDwvZGl2PlxuXG4gIDxwcnktdGFiLWdyb3VwIHRyYW5zbGF0aW9uU3RyaW5nQmFzZT1cIkBwcnkuYWRtaW4uXCI+XG4gICAgPHByeS10YWIgW3RlbXBsYXRlUmVmXT1cImRhdGFzZXRNZXRhZGF0YVwiIG5hbWU9XCJtZXRhZGF0YS50aXRsZVwiPjwvcHJ5LXRhYj5cbiAgICA8cHJ5LXRhYiBbdGVtcGxhdGVSZWZdPVwiZGF0YXNldEFzc29jaWF0aW9uc1wiIG5hbWU9XCJjbGFzc2VzLmFzc29jaWF0aW9uc1wiPjwvcHJ5LXRhYj5cbiAgICA8cHJ5LXRhYiAqbmdJZj1cImRhdGFzZXQub3duZXJcIiBbdGVtcGxhdGVSZWZdPVwic2hhcmVEYXRhc2V0XCIgbmFtZT1cInNoYXJlXCI+PC9wcnktdGFiPlxuICA8L3ByeS10YWItZ3JvdXA+XG5cbiAgPG5nLXRlbXBsYXRlICNkYXRhc2V0TWV0YWRhdGE+XG4gICAgPHByeS1tZXRhZGF0YS1lZGl0b3JcbiAgICAgIFt0YXJnZXRJZF09XCIoc2VsZWN0ZWREYXRhc2V0JCB8IGFzeW5jKT8uaWQgPz8gJydcIlxuICAgICAgW2lzTW9kaWZpY2F0aW9uXT1cIihlZGl0YWJsZSQgfCBhc3luYykgPz8gZmFsc2VcIlxuICAgICAgW21ldGFkYXRhXT1cIihkYXRhc2V0TWV0YWRhdGEkIHwgYXN5bmMpID8/IFtdXCJcbiAgICAgIChyZW1vdmVNZXRhKT1cInJlbW92ZU1ldGFkYXRhKCRldmVudClcIlxuICAgICAgKGFkZE1ldGEpPVwiYWRkRGF0YXNldE1ldGFkYXRhKCRldmVudClcIlxuICAgICAgW3R5cGVdPVwiJ21ldGEnXCJcbiAgICA+PC9wcnktbWV0YWRhdGEtZWRpdG9yPlxuICA8L25nLXRlbXBsYXRlPlxuXG4gIDxuZy10ZW1wbGF0ZSAjZGF0YXNldEFzc29jaWF0aW9ucz5cbiAgICA8ZGl2ICpuZ0lmPVwiYXNzb2NpYXRpb25zJCB8IGFzeW5jIGFzIGFzc29jaWF0aW9uc1wiIGNsYXNzPVwiby10YWJzX19wYW5lbHNfX2l0ZW1fX2NvbnRlbnRcIj5cbiAgICAgIDxoNCBjbGFzcz1cImEtaDRcIj57eyAnQHByeS5hZG1pbi5jbGFzc2VzLmFzc29jaWF0aW9ucycgfCBpMThuIH19PC9oND5cbiAgICAgIDxwcnktYXNzb2NpYXRpb24gW2Fzc29jaWF0aW9uc109XCJhc3NvY2lhdGlvbnNcIj48L3ByeS1hc3NvY2lhdGlvbj5cbiAgICA8L2Rpdj5cbiAgPC9uZy10ZW1wbGF0ZT5cblxuICA8bmctdGVtcGxhdGUgI3NoYXJlRGF0YXNldD5cbiAgICA8ZGl2IGNsYXNzPVwiby1wcnktYWRtaW4tZGF0YXNldC1zZWxlY3RfX3NoYXJlXCI+XG4gICAgICA8cHJ5LWdyb3VwLXNoYXJlIFtuZ01vZGVsXT1cImRhdGFzZXQuZ3JvdXBzXCIgKG5nTW9kZWxDaGFuZ2UpPVwiYWNjZXNzR3JvdXBzID0gJGV2ZW50XCI+PC9wcnktZ3JvdXAtc2hhcmU+XG4gICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBjbGFzcz1cImEtYnRuIGEtYnRuLS1wcmltYXJ5IHUtc2VsZi1lbmRcIiAjc3VibWl0IChjbGljayk9XCJzaGFyZShkYXRhc2V0KVwiPlxuICAgICAgICB7eyAnQHByeS5hZG1pbi52YWxpZGF0ZScgfCBpMThuIH19XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIEBpZihtaXNzaW5nR3JvdXBzJCB8IGFzeW5jOyBhcyBtaXNzaW5nR3JvdXBzKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ1LWRpc3BsYXktZmxleCAtY29sdW1uXCI+XG4gICAgICAgICAgPHNwYW4+e3sgJ0BwcnkuYWRtaW4uZGF0YXNldC5jb25mbGljdCcgfCBpMThuIH19PC9zcGFuPlxuICAgICAgICAgIEBmb3IobWlzc2luZyBvZiBtaXNzaW5nR3JvdXBzIHwga2V5dmFsdWU7IHRyYWNrIG1pc3Npbmcua2V5KSB7XG4gICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICB7eyAnQHByeS5hZG1pbi5kYXRhc2V0LmVudGl0aWVzLmRhc2hib2FyZCcgfCBpMThuIH19IDxzdHJvbmc+e3sgbWlzc2luZy52YWx1ZS5lbnRpdHlOYW1lIH19PC9zdHJvbmc+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1LWRpc3BsYXktZmxleFwiPlxuICAgICAgICAgICAgICAgIEBmb3IoZ3JvdXAgb2YgbWlzc2luZy52YWx1ZS5ncm91cHM7IHRyYWNrIGdyb3VwKSB7XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImEtY2hpcFwiPnt7IGdldEdyb3VwTGFiZWwoZ3JvdXApIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgIDwvZGl2PlxuICA8L25nLXRlbXBsYXRlPlxuPC9kaXY+XG4iXX0=
149
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4tc2VsZWN0LWRhdGFzZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvYWRtaW4vY29tcG9uZW50cy9hZG1pbi1kYXRhc2V0L2FkbWluLXNlbGVjdC1kYXRhc2V0L2FkbWluLXNlbGVjdC1kYXRhc2V0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2FkbWluL2NvbXBvbmVudHMvYWRtaW4tZGF0YXNldC9hZG1pbi1zZWxlY3QtZGF0YXNldC9hZG1pbi1zZWxlY3QtZGF0YXNldC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUc3RCxPQUFPLEVBRUwsa0JBQWtCLEVBRWxCLGlCQUFpQixFQUNqQixtQkFBbUIsRUFJbkIsaUJBQWlCLEVBQ2pCLHdCQUF3QixFQUN6QixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQWlCLE1BQU0sK0NBQStDLENBQUM7QUFDbEgsT0FBTyxFQUFFLGVBQWUsRUFBRSxHQUFHLEVBQWMsWUFBWSxFQUFFLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0RixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7Ozs7Ozs7QUFVaEUsTUFBTSxPQUFPLDJCQUE0QixTQUFRLHdCQUF3QjthQUNoRSxPQUFFLEdBQUcsNkJBQTZCLEFBQWhDLENBQWlDO0lBYTFDLFlBQ1UsS0FBaUIsRUFDakIsTUFBYyxFQUNkLEtBQXFCLEVBQ3JCLElBQW9CO1FBRTVCLEtBQUssRUFBRSxDQUFDO1FBTEEsVUFBSyxH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TUFBTSxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUVELHdCQUF3QjtRQUN0QixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsS0FBSyxpQkFBaUIsQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDeEcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QyxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksSUFBSSxDQUFDLG1CQUFtQixDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUM7Z0JBQ3hDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDdkMsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDOzhHQTlKVSwyQkFBMkI7a0dBQTNCLDJCQUEyQix1RkM1QnhDLDA0RkFvRUE7OzJGRHhDYSwyQkFBMkI7a0JBSnZDLFNBQVM7K0JBQ0UsMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7XG4gIEFzc29jaWF0aW9ucyxcbiAgRGFzaGJvYXJkU2VsZWN0b3JzLFxuICBEYXRhc2V0LFxuICBEYXRhU291cmNlQWN0aW9ucyxcbiAgRGF0YVNvdXJjZVNlbGVjdG9ycyxcbiAgTWV0YWRhdGFWYWx1ZSxcbiAgTWlzc2luZ0dyb3Vwc0J5RW50aXR5LFxuICBQcnlJMThuU2VydmljZSxcbiAgUHJ5VmlzaWJpbGl0eVR5cGUsXG4gIFN1YnNjcmlwdGlvbm5lckRpcmVjdGl2ZVxufSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQnO1xuaW1wb3J0IHsgTWV0YWRhdGFBY3Rpb25zLCBNZXRhZGF0YVNlbGVjdG9ycywgTWV0YUV2ZW50VHlwZSB9IGZyb20gJ0Bwcm92b2x5L2Rhc2hib2FyZC9jb21wb25lbnRzL21ldGFkYXRhLWVkaXRvcic7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIG1hcCwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uLCB3aXRoTGF0ZXN0RnJvbSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQWRtaW5BY3Rpb25zIH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvYWRtaW4uYWN0aW9ucyc7XG5pbXBvcnQgeyBBZG1pblNlbGVjdG9ycyB9IGZyb20gJy4uLy4uLy4uL3N0b3JlL2FkbWluLnNlbGVjdG9ycyc7XG5cbmludGVyZmFjZSBNaXNzaW5nR3JvdXBzIHtcbiAgW2tleTogc3RyaW5nXTogeyBncm91cHM6IHN0cmluZ1tdOyBlbnRpdHlOYW1lOiBzdHJpbmcgfTtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncHJ5LWFkbWluLXNlbGVjdC1kYXRhc2V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FkbWluLXNlbGVjdC1kYXRhc2V0LmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBBZG1pblNlbGVjdERhdGFzZXRDb21wb25lbnQgZXh0ZW5kcyBTdWJzY3JpcHRpb25uZXJEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHN0YXRpYyBpZCA9ICdBZG1pblNlbGVjdERhdGFzZXRDb21wb25lbnQnO1xuICBzZWxlY3RlZERhdGFzZXQkOiBPYnNlcnZhYmxlPERhdGFzZXQgfCBudWxsPjtcbiAgYXNzb2NpYXRpb25zJDogT2JzZXJ2YWJsZTxBc3NvY2lhdGlvbnMgfCB1bmRlZmluZWQ+O1xuICBzdWIgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG4gIGN1cnJlbnRUeXBlVHJhbnNsYXRpb24gPSAnJztcbiAgZGF0YXNldE1ldGFkYXRhJDogT2JzZXJ2YWJsZTxNZXRhZGF0YVZhbHVlW10+O1xuICBlZGl0YWJsZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIGFjY2Vzc0dyb3Vwczogc3RyaW5nW10gPSBbXTtcbiAgc2VsZWN0ZWREYXRhc2V0TWlzc2luZ0dyb3VwcyQ6IE9ic2VydmFibGU8TWlzc2luZ0dyb3Vwc0J5RW50aXR5IHwgdW5kZWZpbmVkPjtcbiAgbWlzc2luZ0dyb3VwcyQ6IE9ic2VydmFibGU8TWlzc2luZ0dyb3VwcyB8IHVuZGVmaW5lZD47XG4gIHNoYXJlUmFkaW9WYWx1ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFByeVZpc2liaWxpdHlUeXBlIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xuICBkaXNhYmxlU2hhcmVCdXR0b24kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmU8YW55PixcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgaTE4bjogUHJ5STE4blNlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKE1ldGFkYXRhQWN0aW9ucy5sb2FkTWV0YWRhdGEoKSk7XG4gICAgdGhpcy5zZWxlY3RlZERhdGFzZXQkID0gdGhpcy5zdG9yZS5zZWxlY3QoRGF0YVNvdXJjZVNlbGVjdG9ycy5zZWxlY3RlZERhdGFzZXQpO1xuICAgIHRoaXMuZGF0YXNldE1ldGFkYXRhJCA9IHRoaXMuc3RvcmUuc2VsZWN0KERhdGFTb3VyY2VTZWxlY3RvcnMuc2VsZWN0ZWREYXRhc2V0TWV0YWRhdGEpO1xuICAgIHRoaXMuYXNzb2NpYXRpb25zJCA9IHRoaXMuc3RvcmUuc2VsZWN0KEFkbWluU2VsZWN0b3JzLnNlbGVjdGVkQXNzb2NpYXRpb24pO1xuICAgIHRoaXMuZWRpdGFibGUkID0gdGhpcy5zdG9yZS5zZWxlY3QoTWV0YWRhdGFTZWxlY3RvcnMuZWRpdGFibGUpO1xuICAgIHRoaXMuc2VsZWN0ZWREYXRhc2V0TWlzc2luZ0dyb3VwcyQgPSB0aGlzLnN0b3JlLnNlbGVjdChEYXRhU291cmNlU2VsZWN0b3JzLnNlbGVjdGVkRGF0YXNldE1pc3NpbmdHcm91cHMpO1xuICAgIHRoaXMubWlzc2luZ0dyb3VwcyQgPSB0aGlzLnNlbGVjdGVkRGF0YXNldE1pc3NpbmdHcm91cHMkLnBpcGUoXG4gICAgICB3aXRoTGF0ZXN0RnJvbSh0aGlzLnN0b3JlLnNlbGVjdChEYXNoYm9hcmRTZWxlY3RvcnMubWFuaWZlc3RzTGlzdCkpLFxuICAgICAgbWFwKChbY29uZmxpY3QsIG1hbmlmZXN0c10pID0+IHtcbiAgICAgICAgY29uc3QgcmVzdWx0OiB7IFtrZXk6IHN0cmluZ106IHsgZ3JvdXBzOiBzdHJpbmdbXTsgZW50aXR5TmFtZTogc3RyaW5nIH0gfSA9IHt9O1xuICAgICAgICBPYmplY3Qua2V5cyhjb25mbGljdCA/PyB7fSkuZm9yRWFjaCgoZW50aXR5SWQpID0+IHtcbiAgICAgICAgICByZXN1bHRbZW50aXR5SWRdID0ge1xuICAgICAgICAgICAgZ3JvdXBzOiBjb25mbGljdD8uW2VudGl0eUlkXSA/PyBbXSxcbiAgICAgICAgICAgIGVudGl0eU5hbWU6IG1hbmlmZXN0cy5maW5kKChtKSA9PiBtLmlkID09PSBlbnRpdHlJZCk/Lm5hbWUgPz8gZW50aXR5SWRcbiAgICAgICAgICB9O1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKHJlc3VsdCkubGVuZ3RoID4gMCA/IHJlc3VsdCA6IHVuZGVmaW5lZDtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLnNlbGVjdGVkRGF0YXNldCQuc3Vic2NyaWJlKChkYXRhc2V0KSA9PiB7XG4gICAgICAgIGlmIChkYXRhc2V0KSB7XG4gICAgICAgICAgdGhpcy5hY2Nlc3NHcm91cHMgPSBkYXRhc2V0Py5ncm91cHMgPz8gW107XG4gICAgICAgICAgY29uc3QgZWRpdFBhdGggPSB0aGlzLnJvdXRlci5jcmVhdGVVcmxUcmVlKFsnLicsICdkYXRhc2V0JywgJ2VkaXQnLCBkYXRhc2V0LmlkXSwge1xuICAgICAgICAgICAgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZVxuICAgICAgICAgIH0pO1xuICAgICAgICAgIGlmIChkYXRhc2V0Lm93bmVyKSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgICAgICBBZG1pbkFjdGlvbnMubWFpbkFjdGlvbnMoe1xuICAgICAgICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgYWN0aW9uOiBBZG1pbkFjdGlvbnMucm91dGVUbyh7IHBhdGg6IGVkaXRQYXRoLnRvU3RyaW5nKCkgfSksXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsOiAnZWRpdCcsXG4gICAgICAgICAgICAgICAgICAgIGljb246ICdlZGl0JyxcbiAgICAgICAgICAgICAgICAgICAgbW9kdWxlQWNjZXNzOiAnYWRtaW4nLFxuICAgICAgICAgICAgICAgICAgICBwYWdlQWNjZXNzOiAnZGF0YXNldCcsXG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbkFjY2VzczogJ3dyaXRlJ1xuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgYWN0aW9uOiBEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmNvbmZpcm1EYXRhU291cmNlRGVsZXRpb24oe1xuICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IGRhdGFzZXQuaWQsXG4gICAgICAgICAgICAgICAgICAgICAgcm91dGU6IHRoaXMucm91dGVyLmNyZWF0ZVVybFRyZWUoWycuJywgJ2RhdGFzZXQnXSwgeyByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlIH0pLnRvU3RyaW5nKCksXG4gICAgICAgICAgICAgICAgICAgICAgYWRkUm91dGU6IHRoaXMucm91dGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAuY3JlYXRlVXJsVHJlZShbJy4nLCAnZGF0YXNldCcsICduZXcnXSwgeyByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAudG9TdHJpbmcoKVxuICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgbGFiZWw6ICdkZWxldGUnLFxuICAgICAgICAgICAgICAgICAgICBpY29uOiAnZGVsZXRlJyxcbiAgICAgICAgICAgICAgICAgICAgbW9kdWxlQWNjZXNzOiAnYWRtaW4nLFxuICAgICAgICAgICAgICAgICAgICBwYWdlQWNjZXNzOiAnZGF0YXNldCcsXG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbkFjY2VzczogJ3dyaXRlJ1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgICAgIEFkbWluQWN0aW9ucy5tYWluQWN0aW9ucyh7XG4gICAgICAgICAgICAgICAgYWN0aW9uczogW11cbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBjbG9zZVBhbmVsKCkge1xuICAgIGNvbnN0IHBhdGggPSB0aGlzLnJvdXRlci5jcmVhdGVVcmxUcmVlKFsnLicsICdkYXRhc2V0JywgJ25ldyddLCB7IHJlbGF0aXZlVG86IHRoaXMucm91dGUgfSk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LnVuc2VsZWN0RGF0YXNldCgpKTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKEFkbWluQWN0aW9ucy50b2dnbGVQYW5lbCh7IHBhbmVsT3BlbjogZmFsc2UgfSkpO1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICBBZG1pbkFjdGlvbnMubWFpbkFjdGlvbnMoe1xuICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgYWN0aW9uOiBBZG1pbkFjdGlvbnMucm91dGVUbyh7IHBhdGg6IHBhdGgudG9TdHJpbmcoKSB9KSxcbiAgICAgICAgICAgIGxhYmVsOiAnYWRkJyxcbiAgICAgICAgICAgIGljb246ICdhZGRfY29sdW1uJyxcbiAgICAgICAgICAgIG1vZHVsZUFjY2VzczogJ2FkbWluJyxcbiAgICAgICAgICAgIHBhZ2VBY2Nlc3M6ICdtZXRhZGF0YV9ydWxlcycsXG4gICAgICAgICAgICBhY3Rpb25BY2Nlc3M6ICd3cml0ZSdcbiAgICAgICAgICB9XG4gICAgICAgIF1cbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHJlbW92ZU1ldGFkYXRhKG1ldGFkYXRhOiBNZXRhRXZlbnRUeXBlKSB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgIE1ldGFkYXRhQWN0aW9ucy5kZWxldGVEYXRhc2V0TWV0YWRhdGEoeyBkYXRhc2V0SWQ6IG1ldGFkYXRhLmlkLCBtZXRhZGF0YUlkOiBtZXRhZGF0YS5tZXRhZGF0YUlkIH0pXG4gICAgKTtcbiAgfVxuXG4gIGFkZERhdGFzZXRNZXRhZGF0YShtZXRhZGF0YTogTWV0YUV2ZW50VHlwZSkge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICBNZXRhZGF0YUFjdGlvbnMuYWRkRGF0YXNldE1ldGFkYXRhKHtcbiAgICAgICAgZGF0YXNldElkOiBtZXRhZGF0YS5pZCxcbiAgICAgICAgbWV0YWRhdGFJZDogbWV0YWRhdGEubWV0YWRhdGFJZCxcbiAgICAgICAgdmFsdWU6IG1ldGFkYXRhLnZhbHVlXG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBzaGFyZShkYXRhc2V0OiBEYXRhc2V0KSB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgIERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQudXBkYXRlKHsgZGF0YXNldDogeyAuLi5kYXRhc2V0LCBncm91cHM6IHRoaXMuYWNjZXNzR3JvdXBzIH0sIHJvdXRlOiAnJyB9KVxuICAgICk7XG4gIH1cblxuICBnZXRHcm91cExhYmVsKGdyb3VwTmFtZTogc3RyaW5nKSB7XG4gICAgY29uc3QgaTE4bkJhc2UgPSAnQHByeS5jb21wb25lbnRzLmNoaXBzU2VsZWN0b3Iuc2hhcmUuZ3JvdXBzLic7XG4gICAgY29uc3QgbGFiZWwgPSB0aGlzLmkxOG4uaW5zdGFudChpMThuQmFzZSArIGdyb3VwTmFtZSk7XG4gICAgcmV0dXJuIGxhYmVsLnN0YXJ0c1dpdGgoaTE4bkJhc2UpID8gZ3JvdXBOYW1lIDogbGFiZWw7XG4gIH1cblxuICBjaGFuZ2VHcm91cCgkZXZlbnQ6IHN0cmluZ1tdKSB7XG4gICAgdGhpcy5hY2Nlc3NHcm91cHMgPSAkZXZlbnQ7XG4gICAgdGhpcy51cGRhdGVEaXNhYmxlQnV0dG9uVmFsdWUoKTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQuc2V0TWlzc2luZ0dyb3Vwcyh7IG1pc3NpbmdHcm91cHM6IHVuZGVmaW5lZCB9KSk7XG4gIH1cblxuICB1cGRhdGVWaXNpYmlsaXR5KCRldmVudDogUHJ5VmlzaWJpbGl0eVR5cGUpIHtcbiAgICB0aGlzLnNoYXJlUmFkaW9WYWx1ZSQubmV4dCgkZXZlbnQpO1xuICAgIHRoaXMudXBkYXRlRGlzYWJsZUJ1dHRvblZhbHVlKCk7XG4gIH1cblxuICB1cGRhdGVEaXNhYmxlQnV0dG9uVmFsdWUoKSB7XG4gICAgaWYgKHRoaXMuc2hhcmVSYWRpb1ZhbHVlJC5nZXRWYWx1ZSgpID09PSBQcnlWaXNpYmlsaXR5VHlwZS5SRVNUUklDVEVEICYmIHRoaXMuYWNjZXNzR3JvdXBzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5kaXNhYmxlU2hhcmVCdXR0b24kLm5leHQodHJ1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0aGlzLmRpc2FibGVTaGFyZUJ1dHRvbiQuZ2V0VmFsdWUoKSkge1xuICAgICAgICB0aGlzLmRpc2FibGVTaGFyZUJ1dHRvbiQubmV4dChmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2XG4gICpuZ0lmPVwic2VsZWN0ZWREYXRhc2V0JCB8IGFzeW5jIGFzIGRhdGFzZXRcIlxuICBbaWRdPVwiJ3BhbmVsLWRhdGFzZXQtJyArIGRhdGFzZXQuaWRcIlxuICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiJ2J1dHRvbi1kYXRhc2V0LScgKyBkYXRhc2V0LmlkXCJcbiAgY2xhc3M9XCJvLXBhbmVsIG8tcHJ5LWFkbWluLWRhdGFzZXQtc2VsZWN0XCJcbj5cbiAgPGRpdiBjbGFzcz1cIm8tcGFuZWxfX2hlYWRlclwiPlxuICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYS1idG4gYS1idG4tLWljb24tb25seVwiIChjbGljayk9XCJjbG9zZVBhbmVsKClcIj5cbiAgICAgIDxzcGFuIGNsYXNzPVwidS12aXN1YWxseS1oaWRkZW5cIj57eyAnQHByeS5hY3Rpb24uY2xvc2VQYW5lbCcgfCBpMThuIH19PC9zcGFuPlxuICAgICAgPHByeS1pY29uIGljb25Tdmc9XCJjbG9zZVwiPjwvcHJ5LWljb24+XG4gICAgPC9idXR0b24+XG5cbiAgICA8aDMgY2xhc3M9XCJhLWgzXCI+XG4gICAgICB7eyAnQHByeS5hZG1pbi5kYXRhc2V0LmRldGFpbHMnIHwgaTE4biB9fVxuICAgIDwvaDM+XG4gIDwvZGl2PlxuXG4gIDxwcnktdGFiLWdyb3VwIHRyYW5zbGF0aW9uU3RyaW5nQmFzZT1cIkBwcnkuYWRtaW4uXCI+XG4gICAgPHByeS10YWIgW3RlbXBsYXRlUmVmXT1cImRhdGFzZXRNZXRhZGF0YVwiIG5hbWU9XCJtZXRhZGF0YS50aXRsZVwiPjwvcHJ5LXRhYj5cbiAgICA8cHJ5LXRhYiBbdGVtcGxhdGVSZWZdPVwiZGF0YXNldEFzc29jaWF0aW9uc1wiIG5hbWU9XCJjbGFzc2VzLmFzc29jaWF0aW9uc1wiPjwvcHJ5LXRhYj5cbiAgICA8cHJ5LXRhYiAqbmdJZj1cImRhdGFzZXQub3duZXJcIiBbdGVtcGxhdGVSZWZdPVwic2hhcmVEYXRhc2V0XCIgbmFtZT1cInNoYXJlXCI+PC9wcnktdGFiPlxuICA8L3ByeS10YWItZ3JvdXA+XG5cbiAgPG5nLXRlbXBsYXRlICNkYXRhc2V0TWV0YWRhdGE+XG4gICAgPHByeS1tZXRhZGF0YS1lZGl0b3JcbiAgICAgIFt0YXJnZXRJZF09XCIoc2VsZWN0ZWREYXRhc2V0JCB8IGFzeW5jKT8uaWQgPz8gJydcIlxuICAgICAgW2lzTW9kaWZpY2F0aW9uXT1cIihlZGl0YWJsZSQgfCBhc3luYykgPz8gZmFsc2VcIlxuICAgICAgW21ldGFkYXRhXT1cIihkYXRhc2V0TWV0YWRhdGEkIHwgYXN5bmMpID8/IFtdXCJcbiAgICAgIChyZW1vdmVNZXRhKT1cInJlbW92ZU1ldGFkYXRhKCRldmVudClcIlxuICAgICAgKGFkZE1ldGEpPVwiYWRkRGF0YXNldE1ldGFkYXRhKCRldmVudClcIlxuICAgICAgW3R5cGVdPVwiJ21ldGEnXCJcbiAgICA+PC9wcnktbWV0YWRhdGEtZWRpdG9yPlxuICA8L25nLXRlbXBsYXRlPlxuXG4gIDxuZy10ZW1wbGF0ZSAjZGF0YXNldEFzc29jaWF0aW9ucz5cbiAgICA8ZGl2ICpuZ0lmPVwiYXNzb2NpYXRpb25zJCB8IGFzeW5jIGFzIGFzc29jaWF0aW9uc1wiIGNsYXNzPVwiby10YWJzX19wYW5lbHNfX2l0ZW1fX2NvbnRlbnRcIj5cbiAgICAgIDxoNCBjbGFzcz1cImEtaDRcIj57eyAnQHByeS5hZG1pbi5jbGFzc2VzLmFzc29jaWF0aW9ucycgfCBpMThuIH19PC9oND5cbiAgICAgIDxwcnktYXNzb2NpYXRpb24gW2Fzc29jaWF0aW9uc109XCJhc3NvY2lhdGlvbnNcIj48L3ByeS1hc3NvY2lhdGlvbj5cbiAgICA8L2Rpdj5cbiAgPC9uZy10ZW1wbGF0ZT5cblxuICA8bmctdGVtcGxhdGUgI3NoYXJlRGF0YXNldD5cbiAgICA8ZGl2IGNsYXNzPVwiby1wcnktYWRtaW4tZGF0YXNldC1zZWxlY3RfX3NoYXJlXCI+XG4gICAgICA8cHJ5LWdyb3VwLXNoYXJlIFtuZ01vZGVsXT1cImRhdGFzZXQuZ3JvdXBzXCIgKG5nTW9kZWxDaGFuZ2UpPVwiY2hhbmdlR3JvdXAoJGV2ZW50KVwiIChyYWRpb1ZhbHVlQ2hhbmdlKT1cInVwZGF0ZVZpc2liaWxpdHkoJGV2ZW50KVwiPjwvcHJ5LWdyb3VwLXNoYXJlPlxuICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgY2xhc3M9XCJhLWJ0biBhLWJ0bi0tcHJpbWFyeSB1LXNlbGYtZW5kXCIgI3N1Ym1pdCAoY2xpY2spPVwic2hhcmUoZGF0YXNldClcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZVNoYXJlQnV0dG9uJCB8IGFzeW5jXCI+XG4gICAgICAgIHt7ICdAcHJ5LmFkbWluLnZhbGlkYXRlJyB8IGkxOG4gfX1cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgQGlmKHNlbGVjdGVkRGF0YXNldE1pc3NpbmdHcm91cHMkIHwgYXN5bmMpIHtcbiAgICAgICAgPGg0IGNsYXNzPVwiYS1oNFwiPnt7ICdAcHJ5LmFkbWluLmRhdGFzZXQuc3VjY2VzcycgfCBpMThuIH19PC9oND5cbiAgICAgIH1cbiAgICAgIEBpZihtaXNzaW5nR3JvdXBzJCB8IGFzeW5jOyBhcyBtaXNzaW5nR3JvdXBzKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ1LWRpc3BsYXktZmxleCAtY29sdW1uXCI+XG4gICAgICAgICAgPHNwYW4+e3sgJ0BwcnkuYWRtaW4uZGF0YXNldC5jb25mbGljdCcgfCBpMThuIH19PC9zcGFuPlxuICAgICAgICAgIEBmb3IobWlzc2luZyBvZiBtaXNzaW5nR3JvdXBzIHwga2V5dmFsdWU7IHRyYWNrIG1pc3Npbmcua2V5KSB7XG4gICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICB7eyAnQHByeS5hZG1pbi5kYXRhc2V0LmVudGl0aWVzLmRhc2hib2FyZCcgfCBpMThuIH19IDxzdHJvbmc+e3sgbWlzc2luZy52YWx1ZS5lbnRpdHlOYW1lIH19PC9zdHJvbmc+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1LWRpc3BsYXktZmxleFwiPlxuICAgICAgICAgICAgICAgIEBmb3IoZ3JvdXAgb2YgbWlzc2luZy52YWx1ZS5ncm91cHM7IHRyYWNrIGdyb3VwKSB7XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImEtY2hpcFwiPnt7IGdldEdyb3VwTGFiZWwoZ3JvdXApIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgIDwvZGl2PlxuICA8L25nLXRlbXBsYXRlPlxuPC9kaXY+XG4iXX0=
@@ -150,7 +150,8 @@ export const frTranslations = {
150
150
  OPEN: 'Ouvert',
151
151
  CLOSED: 'Fermé',
152
152
  MODIFIABLE: 'Modifiable',
153
- conflict: "Attention les tableaux de bord suivant sont partagés à des groupes qui n'auront plus accès aux données :",
153
+ success: 'Modification effectuée avec succès',
154
+ conflict: "Attention, les tableaux de bord suivants sont partagés à des groupes qui n'auront plus accès aux données :",
154
155
  entities: {
155
156
  dashboard: 'Tableaux de bord'
156
157
  }
@@ -373,4 +374,4 @@ export const frTranslations = {
373
374
  }
374
375
  }
375
376
  };
376
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnIudHJhbnNsYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvYWRtaW4vaTE4bi9mci50cmFuc2xhdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHO0lBQzVCLE1BQU0sRUFBRTtRQUNOLEtBQUssRUFBRTtZQUNMLEtBQUssRUFBRSxnQkFBZ0I7WUFDdkIsZUFBZSxFQUFFLCtCQUErQjtZQUNoRCxjQUFjLEVBQUUsYUFBYTtZQUM3QixXQUFXLEVBQUUsUUFBUTtZQUNyQixJQUFJLEVBQUUsVUFBVTtZQUNoQixNQUFNLEVBQUUsVUFBVTtZQUNsQixNQUFNLEVBQUUsV0FBVztZQUNuQixHQUFHLEVBQUUsU0FBUztZQUNkLFFBQVEsRUFBRSxTQUFTO1lBQ25CLFFBQVEsRUFBRSxxQkFBcUI7WUFDL0IsWUFBWSxFQUFFLHFCQUFxQjtZQUNuQyxNQUFNLEVBQUUsT0FBTztZQUNmLE1BQU0sRUFBRSxtQkFBbUI7WUFDM0IsS0FBSyxFQUFFLFVBQVU7WUFDakIsTUFBTSxFQUFFLFNBQVM7WUFDakIsSUFBSSxFQUFFLFFBQVE7WUFDZCxJQUFJLEVBQUUsU0FBUztZQUNmLFVBQVUsRUFBRSxZQUFZO1lBQ3hCLE9BQU8sRUFBRSxTQUFTO1lBQ2xCLFFBQVEsRUFBRSxVQUFVO1lBQ3BCLFFBQVEsRUFBRSxzQkFBc0I7WUFDaEMsTUFBTSxFQUFFLHlCQUF5QjtZQUNqQyxTQUFTLEVBQUUsd0NBQXdDO1lBQ25ELFNBQVMsRUFBRSx5Q0FBeUM7WUFDcEQsWUFBWSxFQUFFLHlEQUF5RDtZQUN2RSxJQUFJLEVBQUUsZ0JBQWdCO1lBQ3RCLFdBQVcsRUFBRSwwRUFBMEU7WUFDdkYsZ0JBQWdCLEVBQUUsNkJBQTZCO1lBQy9DLElBQUksRUFBRSxtQkFBbUI7WUFDekIsNkJBQTZCLEVBQzNCLGtHQUFrRztZQUNwRyxRQUFR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LHNCQUFzQjtnQkFDbkMsZUFBZSxFQUFFLGlCQUFpQjtnQkFDbEMsZ0JBQWdCLEVBQUUsOEJBQThCO2dCQUNoRCxvQkFBb0IsRUFBRSx5QkFBeUI7Z0JBQy9DLFlBQVksRUFBRSxrQkFBa0I7Z0JBQ2hDLGtCQUFrQixFQUFFLGtDQUFrQzthQUN2RDtZQUNELFdBQVcsRUFBRTtnQkFDWCxJQUFJLEVBQUUsWUFBWTtnQkFDbEIsSUFBSSxFQUFFLFVBQVU7Z0JBQ2hCLFdBQVcsRUFBRSxnQkFBZ0I7Z0JBQzdCLE1BQU0sRUFBRSxhQUFhO2dCQUNyQixPQUFPLEVBQUUsZ0JBQWdCO2dCQUN6QixNQUFNLEVBQUUsbUJBQW1CO2dCQUMzQixTQUFTLEVBQUUsY0FBYztnQkFDekIsS0FBSyxFQUFFLGFBQWE7YUFDckI7WUFDRCxPQUFPLEVBQUU7Z0JBQ1AsS0FBSyxFQUFFLGtCQUFrQjtnQkFDekIsV0FBVyxFQUFFO29CQUNYLE9BQU8sRUFDTCwyU0FBMlM7b0JBQzdTLE9BQU8sRUFDTCwyVkFBMlY7aUJBQzlWO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxPQUFPLEVBQUUsU0FBUztvQkFDbEIsT0FBTyxFQUFFLGVBQWU7aUJBQ3pCO2FBQ0Y7U0FDRjtRQUNELE9BQU8sRUFBRTtZQUNQLE9BQU8sRUFBRSxvQkFBb0I7WUFDN0IsU0FBUyxFQUFFLHNDQUFzQztZQUNqRCxPQUFPLEVBQUUscUNBQXFDO1lBQzlDLElBQUksRUFBRSxrQ0FBa0M7WUFDeEMsSUFBSSxFQUFFLGdCQUFnQjtTQUN2QjtLQUNGO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBmclRyYW5zbGF0aW9ucyA9IHtcbiAgJ0BwcnknOiB7XG4gICAgYWRtaW46IHtcbiAgICAgIHRpdGxlOiAnQWRtaW5pc3RyYXRpb24nLFxuICAgICAgdGl0bGVJbmRpY2F0aW9uOiAnRmVybWVyIGxlIG1lbnUgQWRtaW5pc3RyYXRpb24nLFxuICAgICAgaW5mb01vZGFsVGl0bGU6ICdJbmZvcm1hdGlvbicsXG4gICAgICBjbG9zZU1vZGFsZTogJ0Zlcm1lcicsXG4gICAgICBlZGl0OiAnTW9kaWZpZXInLFxuICAgICAgcmVuYW1lOiAnUmVub21tZXInLFxuICAgICAgZGVsZXRlOiAnU3VwcHJpbWVyJyxcbiAgICAgIGFkZDogJ05vdXZlYXUnLFxuICAgICAgdmFsaWRhdGU6ICdWYWxpZGVyJyxcbiAgICAgIGFkZENsYXNzOiAnVmFsaWRlciBsYSBjcsOpYXRpb24nLFxuICAgICAgYWRkQXR0cmlidXRlOiAnQWpvdXRlciB1biBhdHRyaWJ1dCcsXG4gICAgICBjcmVhdGU6ICdDcsOpZXInLFxuICAgICAgdXBsb2FkOiAnQWpvdXRlciB1bmUgaW1hZ2UnLFxuICAgICAgc2hhcmU6ICdQYXJ0YWdlcicsXG4gICAgICBjYW5jZWw6ICdBbm51bGVyJyxcbiAgICAgIGJhY2s6ICdSZXRvdXInLFxuICAgICAgbmV4dDogJ1N1aXZhbnQnLFxuICAgICAgcHJvcGVydGllczogJ1Byb3ByacOpdMOpcycsXG4gICAgICBkZXRhaWxzOiAnRMOpdGFpbHMnLFxuICAgICAgYWN0aXZpdHk6ICdBY3Rpdml0w6knLFxuICAgICAgcmVxdWlyZWQ6ICdMZSBjaGFtcHMgZXN0IHJlcXVpcycsXG4gICAgICBleGlzdHM6ICdDZSBub20gZXN0IGTDqWrDoCB1dGlsaXPDqScsXG4gICAgICBtaW5MZW5ndGg6ICdOb21icmUgbWluaW1hbCBkZSBjYXJhY3TDqHJlcyA6IHt7bGVufX0nLFxuICAgICAgbWF4TGVuZ3RoOiAnTm9tYnJlIGRlIGNhcmFjdMOocmVzIGF1dG9yaXPDqSA6IHt7bGVufX0nLFxuICAgICAgbm9XaGl0ZXNwYWNlOiAnTGEgdmFsZXVyIG5lIHBldXQgcGFzIGNvbW1lbmNlciBvdSBmaW5pciBwYXIgdW4gZXNwYWNlLicsXG4gICAgICBydWxlOiAnUsOoZ2xlIG7CsHt7aWR9fScsXG4gICAgICBkZWZhdWx0UnVsZTogXCJSw6hnbGUgcGFyIGTDqWZhdXQgKG5lIHMnYXBwbGlxdWUgcXVlIHNpIGF1Y3VuZSBhdXRyZSByw6hnbGUgbidlc3QgdmFsaWTDqWUpXCIsXG4gICAgICBkaXNwbGF5TW9kZUltYWdlOiBcIk1vZGUgZCdhZmZpY2hhZ2UgZGUgbCdpbWFnZVwiLFxuICAgICAgc2l6ZTogXCJUYWlsbGUgZGUgbCdpbWFnZVwiLFxuICAgICAgZGVsZXRlQXR0cmlidXRlQ29uZmlybU1lc3NhZ2U6XG4gICAgICAgICdDZXQgYXR0cmlidXQgbmUgc2VyYSBwbHVzIHZpc2libGUgcG91ciBsZXMgZG9ubsOpZXMgbGUgcG9zc8OpZGFudC4gQ29uZmlybWV6LXZvdXMgbGEgc3VwcHJlc3Npb24gPycsXG4gICAgICBwb3NpdGlvbjoge1xuICAgICAgICBGVUxMOiAnSWNvbmUgcGxlaW5lJyxcbiAgICAgICAgVE9QX0xFRlQ6ICdFbiBoYXV0IMOgIGdhdWNoZScsXG4gICAgICAgIFRPUF9SSUdIVDogJ0VuIGhhdXQgw6AgZHJvaXRlJyxcbiAgICAgICAgQk9UVE9NX0xFRlQ6ICdFbiBiYXMgw6AgZ2F1Y2hlJyxcbiAgICAgICAgQk9UVE9NX1JJR0hUOiAnRW4gYmFzIMOgIGRyb2l0ZSdcbiAgICAgIH0sXG4gICAgICBjdXN0b21pemU6IHtcbiAgICAgICAgdGl0bGU6ICdQZXJzb25uYWxpc2VyJyxcbiAgICAgICAgdGVtcGxhdGU6ICdUb29sdGlwIChDYXJ0ZSAmIEdyYXBoZSknLFxuICAgICAgICB1cGRhdGU6ICdNZXR0cmUgw6Agam91ciBsZSB0b29sdGlwJyxcbiAgICAgICAgYWR2YW5jZWQ6ICdNb2RlIGF2YW5jw6knLFxuICAgICAgICBuYW1lOiAnTW9kw6hsZSBtw6l0aWVyJyxcbiAgICAgICAgdGVjaG5pY2FsSWQ6ICdJZCB0ZWNobmlxdWUnLFxuICAgICAgICB0eXBlOiAnQ2hvaXNpc3NleiBsZSB0eXBlIGRlIHRvb2x0aXAgw6AgdXRpbGlzZXInLFxuICAgICAgICBzaW1wbGlmaWVkOiAnQ2hvaXNpc3NleiBsZXMgYXR0cmlidXRzIMOgIGFmZmljaGVyJyxcbiAgICAgICAgZXhlbXBsZTogJ3ZhbGV1ciBkZSB7e2V4cHJ9fScsXG4gICAgICAgIHRhYmxlOiAnQXR0cmlidXRzIHBhciBkw6lmYXV0IChUYWJsZSknLFxuICAgICAgICB0aWxlOiAnQXR0cmlidXRzIGFmZmljaMOpcyBzdXIgbGEgdHVpbGUnLFxuICAgICAgICB0aWxlSGludDogJ1NldWxlbWVudCBlbnRyZSAxIGV0IHt7bWF4fX0gYXR0cmlidXRzIHBldXZlbnQgw6p0cmUgYWZmaWNow6lzIGRhbnMgdW5lIHR1aWxlJyxcbiAgICAgICAgdGFibGVBdHRyczogJ0F0dHJpYnV0cyBkYW5zIGxhIHRhYmxlIHBhciBkw6lmYXV0JyxcbiAgICAgICAgdGlsZUF0dHJzOiAnQXR0cmlidXRzIHByw6lzZW50w6lzIGRhbnMgbGVzIHR1aWxlcycsXG4gICAgICAgIG5vVGFibGVBdHRyczogJ0F1dHJlcyBhdHRyaWJ1dHMnLFxuICAgICAgICBub1RpbGVBdHRyczogJ0F0dHJpYnV0cyBub24gYWZmaWNow6lzJyxcbiAgICAgICAgdXBkYXRlVGFibGU6IFwiTWV0dHJlIMOgIGpvdXIgbGVzIGF0dHJpYnV0cyBwYXIgZMOpZmF1dCBkJ3VuZSB0YWJsZVwiLFxuICAgICAgICB1cGRhdGVUaWxlOiAnTWV0dHJlIMOgIGpvdXIgbGVzIGF0dHJpYnV0cyBkZXMgdHVpbGVzJyxcbiAgICAgICAgdXBkYXRlSWNvbnM6ICdNZXR0cmUgw6Agam91ciBsZXMgcsOoZ2xlcyBkZSBzeW1ib2xlcydcbiAgICAgIH0sXG4gICAgICB2YXJUeXBlOiB7XG4gICAgICAgIGludDogJ05vbWJyZSBlbnRpZXInLFxuICAgICAgICBkb3VibGU6ICdOb21icmUgZMOpY2ltYWwnLFxuICAgICAgICBzdHJpbmc6ICdUZXh0ZScsXG4gICAgICAgIHV1aWQ6ICdJZGVudGlmaWFudCB1dWlkJyxcbiAgICAgICAgZGF0ZTogJ0RhdGUnLFxuICAgICAgICBsaXN0OiAnTGlzdGUgZGUgdmFsZXVycydcbiAgICAgIH0sXG4gICAgICBtZW51czoge1xuICAgICAgICBlbnZpcm9ubWVudDogXCJDb250ZXh0ZXMgZCdleMOpY3V0aW9uXCIsXG4gICAgICAgIHVzZXI6ICdVdGlsaXNhdGV1cnMnLFxuICAgICAgICAnbWV0YWRhdGEtdXNlcic6ICdQcm9maWwgdXRpbGlzYXRldXInLFxuICAgICAgICAnYWJhYy1ydWxlcyc6ICdSw6hnbGVzIEFCQUMnLFxuICAgICAgICAnbWV0YWRhdGEtcnVsZXMnOiAnUsOoZ2xlcyBNw6l0YWRvbm7DqWVzJyxcbiAgICAgICAgZGF0YXNldDogJ0pldXggZGUgZG9ubsOpZXMnLFxuICAgICAgICBjbGFzc2VzOiAnTW9kw6hsZXMgZGUgZG9ubsOpZXMnLFxuICAgICAgICBwcmVkaWNhdGVzOiAnUHLDqWRpY2F0cycsXG4gICAgICAgIG1ldGFkYXRhOiAnTcOpdGFkb25uw6llcycsXG4gICAgICAgIGZpZWxkczogJ1R5cGVzIG3DqXRpZXInLFxuICAgICAgICAncmVsYXRpb24tdHlwZXMnOiAnVHlwZXMgZGUgcmVsYXRpb24nLFxuICAgICAgICBsaW5rczogJ0xpZW4gZW50cmUgYXR0cmlidXRzJyxcbiAgICAgICAgbW9kZWw6ICdNb2TDqGxlIG3DqXRpZXInLFxuICAgICAgICBhY2Nlc3M6ICdBY2PDqHMgYXV4IGRvbm7DqWVzJ1xuICAgICAgfSxcbiAgICAgIHByZWRpY2F0ZXM6IHtcbiAgICAgICAgbGlzdDogJ1Byw6lkaWNhdHMnLFxuICAgICAgICBhZGQ6ICdDcsOpZXIgdW4gbm91dmVhdSBwcsOpZGljYXQnLFxuICAgICAgICBlZGl0OiAnTW9kaWZpZXIgdW4gcHLDqWRpY2F0JyxcbiAgICAgICAgaW5mbzogJ0TDqXRhaWxzIGR1IHByw6lkaWNhdCcsXG4gICAgICAgIG51bTogJ0lkLicsXG4gICAgICAgIG5hbWU6ICdOb20nLFxuICAgICAgICB2YWx1ZTogJ0V4cHJlc3Npb24gY29uZGl0aW9ubmVsbGUgZGUgZMOpY2xlbmNoZW1lbnQnLFxuICAgICAgICB2YWxpZEVkaXQ6ICdJbmZvcm1hdGlvbicsXG4gICAgICAgIHZhbGlkRWRpdE1lc3NhZ2U6ICdDZSBwcsOpZGljYXQgZXN0IHV0aWxpc8OpIGRhbnMge3t1c2VkfX0gcsOoZ2xlcy4gVm91bGV6LXZvdXMgdnJhaW1lbnQgbGUgbW9kaWZpZXIgPydcbiAgICAgIH0sXG4gICAgICBtZXRhZGF0YToge1xuICAgICAgICB0aXRsZTogJ01ldGFkb25uw6llcycsXG4gICAgICAgIGFkZDogJ0Nyw6llciB1bmUgbWV0YWRvbm7DqWUnLFxuICAgICAgICBlZGl0OiAnTW9kaWZpZXIgdW5lIG1ldGFkb25uw6llJyxcbiAgICAgICAgZGV0YWlsczogJ0TDqXRhaWxzIGRlIGxhIG1ldGFkb25uw6llJyxcbiAgICAgICAgZGV0YWlsc1VzZXI6ICdEw6l0YWlscyBkdSBwcm9maWwgdXRpbGlzYXRldXInLFxuICAgICAgICBpZDogJ0lEJyxcbiAgICAgICAgbGFiZWw6ICdOb20nLFxuICAgICAgICB0eXBlOiAnVHlwZScsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24nLFxuICAgICAgICBpbnZhbGlkOiAnTGUgY2hhbXBzIGVzdCByZXF1aXMnLFxuICAgICAgICBsaXN0TGFiZWw6ICdOb20gZGUgbGEgdmFsZXVyJyxcbiAgICAgICAgYWRkVmFsdWU6ICdBam91dGVyIHVuZSBub3V2ZWxsZSB2YWxldXInLFxuICAgICAgICByZW1vdmVWYWx1ZTogJ1N1cHByaW1lciBjZXR0ZSB2YWxldXInLFxuICAgICAgICBzeXN0ZW06ICdNw6l0YWRvbm7DqWUgc3lzdMOobWUnXG4gICAgICB9LFxuICAgICAgJ21ldGFkYXRhLXJ1bGVzJzoge1xuICAgICAgICB0aXRsZTogJ1LDqGdsZXMgTWV0YWRvbm7DqWVzJyxcbiAgICAgICAgbGFiZWw6ICdOb20nLFxuICAgICAgICAnaXMtc2FtZS1uYW1lJzogJ0xlIG5vbSBkZSBsYSByw6hnbGUgZXN0IGTDqWrDoCBwcmlzIHBvdXIgdW5lIGF1dHJlIHLDqGdsZSwgdmV1aWxsZXogZW4gdXRpbGlzZXIgdW4gYXV0cmUnLFxuICAgICAgICAnaXMtc2FtZS1ydWxlcyc6IFwiTGEgbcOqbWUgcsOoZ2xlIGEgZMOpasOgIMOpdMOpIGNvbmZpZ3Vyw6llIGV0IGVucmVnaXN0csOpZSwgdm91cyBwb3V2ZXogbCd1dGlsaXNlclwiLFxuICAgICAgICAnbWV0YWRhdGEtaXRlbSc6IHtcbiAgICAgICAgICBuYW1lOiAnTWV0YWRvbm7DqWVzIGNpYmxlJyxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJ0Rlc2NyaXB0aW9uIGRlIGxhIG1ldGFkb25uw6llIGNpYmxlJyxcbiAgICAgICAgICB0eXBlOiAnVHlwZSBkZSBsYSBtZXRhZG9ubsOpZSBjaWJsZSdcbiAgICAgICAgfSxcbiAgICAgICAgJ21ldGFkYXRhLXVzZXInOiB7XG4gICAgICAgICAgbmFtZTogJ1Byb2ZpbCB1dGlsaXNhdGV1ciBzb3VyY2UnLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24gZHUgcHJvZmlsIHV0aWxpc2F0ZXVyIHNvdXJjZScsXG4gICAgICAgICAgdHlwZTogJ1R5cGUgZHUgcHJvZmlsIHV0aWxpc2F0ZXVyIHNvdXJjZSdcbiAgICAgICAgfSxcbiAgICAgICAgZWRpdDoge1xuICAgICAgICAgIHRpdGxlOiAnTW9kaWZpZXIgdW5lIHLDqGdsZSBkZSBtZXRhZG9ubsOpZXMnXG4gICAgICAgIH0sXG4gICAgICAgIGFkZDoge1xuICAgICAgICAgIHRpdGxlOiAnQ3LDqWVyIHVuZSBub3V2ZWxsZSByw6hnbGUgZGUgbWV0YWRvbm7DqWVzJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgZGF0YXNldDoge1xuICAgICAgICBkZWxldGU6XG4gICAgICAgICAgXCJMJ2Vuc2VtYmxlIGRlcyB2ZXJzaW9ucyBldCBkZXMgZG9ubsOpZXMgYXNzb2Npw6llcyBzZXJvbnQgc3VwcHJpbcOpZXMuIExlcyByZXN0aXR1dGlvbnMgZXQgcHLDqXNlbnRhdGlvbnMgdXRpbGlzYW50IGNlIGpldSBkZSBkb25uw6llcyBuJ2FmZmljaGVyb250IHBsdXMgbGVzIGRvbm7DqWVzIGNvcnJlc3BvbmRhbnRlcy4gQ29uZmlybWV6LXZvdXMgbGEgc3VwcHJlc3Npb24gP1wiLFxuICAgICAgICB0aXRsZTogJ0pldXggZGUgZG9ubsOpZXMnLFxuICAgICAgICBkZXRhaWxzOiAnRMOpdGFpbHMgZHUgamV1IGRlIGRvbm7DqWVzJyxcbiAgICAgICAgaWQ6ICdJZGVudGlmaWFudCcsXG4gICAgICAgIG5hbWU6ICdOb20nLFxuICAgICAgICBvQ2xhc3M6ICdNb2TDqGxlIG3DqXRpZXInLFxuICAgICAgICB0eXBlOiAnVHlwZScsXG4gICAgICAgICdpcy1zYW1lLW5hbWUnOiAnTGUgbm9tIGR1IGpldSBkZSBkb25uw6llcyBlc3QgZMOpasOgIHByaXMsIHZldWlsbGV6IGVuIHV0aWxpc2VyIHVuIGF1dHJlJyxcbiAgICAgICAgYWRkOiB7XG4gICAgICAgICAgdGl0bGU6ICdDcsOpZXIgdW4gamV1IGRlIGRvbm7DqWVzJ1xuICAgICAgICB9LFxuICAgICAgICBlZGl0OiB7XG4gICAgICAgICAgdGl0bGU6ICdNb2RpZmllciB1biBqZXUgZGUgZG9ubsOpZXMnXG4gICAgICAgIH0sXG4gICAgICAgIE9QRU46ICdPdXZlcnQnLFxuICAgICAgICBDTE9TRUQ6ICdGZXJtw6knLFxuICAgICAgICBNT0RJRklBQkxFOiAnTW9kaWZpYWJsZScsXG4gICAgICAgIGNvbmZsaWN0OlxuICAgICAgICAgIFwiQXR0ZW50aW9uIGxlcyB0YWJsZWF1eCBkZSBib3JkIHN1aXZhbnQgc29udCBwYXJ0YWfDqXMgw6AgZGVzIGdyb3VwZXMgcXVpIG4nYXVyb250IHBsdXMgYWNjw6hzIGF1eCBkb25uw6llcyA6XCIsXG4gICAgICAgIGVudGl0aWVzOiB7XG4gICAgICAgICAgZGFzaGJvYXJkOiAnVGFibGVhdXggZGUgYm9yZCdcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgICdhYmFjLXJ1bGVzJzoge1xuICAgICAgICBkZWxldGU6ICdTdXBwcmltZXInLFxuICAgICAgICBtZXRhZGF0YVVzZXI6ICdQcm9maWwgdXRpbGlzYXRldXInLFxuICAgICAgICB0aXRsZToge1xuICAgICAgICAgIGxpc3Q6ICdSw6hnbGVzIEFiYWMnLFxuICAgICAgICAgIGFkZDogJ0Nyw6llciB1bmUgcsOoZ2xlIGFiYWMnLFxuICAgICAgICAgIHZpZXc6IFwiRMOpdGFpbHMgZCd1bmUgcsOoZ2xlIGFiYWNcIixcbiAgICAgICAgICBlZGl0OiAnTW9kaWZpZXIgdW5lIHLDqGdsZSBhYmFjJ1xuICAgICAgICB9LFxuICAgICAgICBmb3JtOiB7XG4gICAgICAgICAgaWQ6ICdOdW3DqXJvJyxcbiAgICAgICAgICBuYW1lOiAnTm9tJyxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJ0Rlc2NyaXB0aW9uJyxcbiAgICAgICAgICBzdGF0dXM6ICdTdGF0dXQnLFxuICAgICAgICAgIHN0YXR1c0FjdGl2ZTogJ0FjdGlmJyxcbiAgICAgICAgICBzdGF0dXNJbmFjdGl2ZTogJ0luYWN0aWYnLFxuICAgICAgICAgIHByZWRpY2F0ZTogJ1Byw6lkaWNhdCBkZSBkw6ljbGVuY2hlbWVudCcsXG4gICAgICAgICAgdHlwZTogJ1R5cGUnLFxuICAgICAgICAgIHR5cGVNZXRhZGF0YTogJ01ldGFkb25uw6llJyxcbiAgICAgICAgICB0eXBlQXR0cmlidXRlOiAnQXR0cmlidXQnLFxuICAgICAgICAgIHR5cGVTZWxlY3RlZDogJ1ZvdXMgbmUgcG91dmV6IHBhcyBjaGFuZ2VyIGxlIHR5cGUgYXZlYyBsZXMgY29uZGl0aW9ucyBleGlzdGFudGVzJyxcbiAgICAgICAgICBhZGRNZXRhZGF0YTogJ0Fqb3V0ZXIgdW5lIGNvbmRpdGlvbiBzdXIgdW5lIG1ldGFkb25uw6llJyxcbiAgICAgICAgICBhZGRBdHRyaWJ1dGU6ICdBam91dGVyIHVuZSBjb25kaXRpb24gc3VyIHVuIGF0dHJpYnV0JyxcbiAgICAgICAgICB0b2dnbGVBbmQ6ICdFVCcsXG4gICAgICAgICAgdG9nZ2xlT3I6ICdPVScsXG4gICAgICAgICAgYWRkR3JvdXA6ICdBam91dGVyIHVuIHNvdXMtZ3JvdXBlJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgdXNlcjoge1xuICAgICAgICB0aXRsZTogJ1Byb2ZpbCB1dGlsaXNhdGV1cicsXG4gICAgICAgIGFkZDogJ0Nyw6llciB1biBub3V2ZWF1IHByb2ZpbCB1dGlsaXNhdGV1cicsXG4gICAgICAgIGxhYmVsOiAnTm9tJyxcbiAgICAgICAgdHlwZTogJ1R5cGUnLFxuICAgICAgICBpbnZhbGlkOiAnTGUgY2hhbXAgZXN0IHJlcXVpcycsXG4gICAgICAgIGVkaXQ6ICdNb2RpZmllciB1biBwcm9maWwgdXRpbGlzYXRldXInXG4gICAgICB9LFxuICAgICAgZW52aXJvbm1lbnQ6IHtcbiAgICAgICAgbGlzdDogXCJDb250ZXh0ZXMgZCdleMOpY3V0aW9uXCIsXG4gICAgICAgIGFkZDogXCJDcsOpZXIgdW4gbm91dmVhdSBjb250ZXh0ZSBkJ2V4w6ljdXRpb25cIixcbiAgICAgICAgZWRpdDogXCJNb2RpZmllciB1biBjb250ZXh0ZSBkJ2V4w6ljdXRpb25cIixcbiAgICAgICAgaW5mbzogXCJEw6l0YWlscyBkdSBjb250ZXh0ZSBkJ2V4w6ljdXRpb25cIixcbiAgICAgICAgZm9ybWF0SW50OiAnTGEgdmFsZXVyIGRvaXQgw6p0cmUgdW4gZW50aWVyLicsXG4gICAgICAgIGZvcm1hdERvdWJsZTogXCJMYSB2YWxldXIgZG9pdCDDqnRyZSB1biBlbnRpZXIsIGxlIHPDqXBhcmF0ZXVyIGF1dG9yaXPDqSBlc3QgdW4gJy4nXCIsXG4gICAgICAgIGZvcm1hdE5hbWU6ICdDYXJhY3TDqHJlcyBzcGVjaWF1eCBhdXRvcmlzw6lzOiBbIC0sIF8gXSAnLFxuICAgICAgICBuYW1lOiAnTm9tJyxcbiAgICAgICAgdHlwZTogJ1R5cGUnLFxuICAgICAgICB2YWx1ZTogJ1ZhbGV1ciBkZSBsYSB2YXJpYWJsZSdcbiAgICAgIH0sXG4gICAgICBjbGFzc2VzOiB7XG4gICAgICAgIGxpc3Q6ICdNb2TDqGxlcyBkZSBkb25uw6llcycsXG4gICAgICAgIG5hbWU6ICdOb20nLFxuICAgICAgICB0aXRsZTogJ01vZMOobGUgZGUgZG9ubsOpZXMge3tjbGFzc319JyxcbiAgICAgICAgaW1hZ2U6ICdJbWFnZScsXG4gICAgICAgIGZvcm1hdE5hbWU6ICdDYXJhY3TDqHJlcyBhdXRvcmlzw6lzOiBbIG1pbnVzY3VsZSwgLSwgXyBdJyxcbiAgICAgICAgbW9kZWw6ICdNb2TDqGxlJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbicsXG4gICAgICAgIGxpbmVzOiAnTGlnbmVzJyxcbiAgICAgICAgYWRkOiAnQ3LDqWVyIHVuIG5vdXZlYXUgbW9kw6hsZSBkZSBkb25uw6llcycsXG4gICAgICAgIGVkaXQ6ICdNb2RpZmllciBsZSBtb2TDqGxlIGRlIGRvbm7DqWVzJyxcbiAgICAgICAgcmVuYW1lOiAnUmVub21tZXIgbGUgbW9kw6hsZSBkZSBkb25uw6llcycsXG4gICAgICAgIGFkZEF0dHI6ICdBdHRyaWJ1dCcsXG4gICAgICAgIGluZm9BdHRyOiAnTW9kw6hsZSBkZSBkb25uw6llcyB7e2NsYXNzfX0gPiBBdHRyaWJ1dHMnLFxuICAgICAgICBpbmZvOiAnRMOpdGFpbCBkdSBtb2TDqGxlIGRlIGRvbm7DqWVzJyxcbiAgICAgICAgcnVsZXM6ICdSw6hnbGVzIGRlIGTDqWZpbml0aW9uIGRlIHN5bWJvbGVzJyxcbiAgICAgICAgY29uZGl0aW9uOiAnQWN0aWYgc2Vsb24gdW5lIGNvbmRpdGlvbicsXG4gICAgICAgIGF0dHJOYW1lOiAnQXR0cmlidXRlIMOgIHbDqXJpZmllcicsXG4gICAgICAgIHZhbHVlOiAnVmFsZXVyIGRlIGNvbXBhcmFpc29uJyxcbiAgICAgICAgb3BlcmF0aW9uOiAnT3DDqXJhdGlvbiBkZSBjb21wYXJhaXNvbicsXG4gICAgICAgIG9wZXJhdGlvbnM6IHtcbiAgICAgICAgICBFUVVBTFM6ICdlc3Qgw6lnYWwnLFxuICAgICAgICAgIEdSRUFURVI6ICdlc3QgcGx1cyBncmFuZCcsXG4gICAgICAgICAgR1JFQVRFUl9PUl9FUVVBTDogJ2VzdCBwbHVzIGdyYW5kIG91IMOpZ2FsJyxcbiAgICAgICAgICBMT1dFUjogJ3BsdXMgcGV0aXQnLFxuICAgICAgICAgIExPV0VSX09SX0VRVUFMOiAncGx1cyBwZXRpdCBvdSDDqWdhbCcsXG4gICAgICAgICAgQ09OVEFJTlM6ICdjb250aWVudCB0ZXh0dWVsbGVtZW50J1xuICAgICAgICB9LFxuICAgICAgICBjcmVhdGVDbGFzc01vZGFsTWVzc2FnZTpcbiAgICAgICAgICAnSW1wb3NzaWJsZSBkZSBjcsOpZXIgdW4gbW9kw6hsZSBkZSBkb25uw6llcyBzYW5zIGF0dHJpYnV0cy4gVmV1aWxsZXogZW4gYWpvdXRlciBhdSBtb2lucyB1biBlbiBjbGlxdWFudCBzdXIgXCJBam91dGVyIHVuIGF0dHJpYnV0XCIuJyxcbiAgICAgICAgY3JlYXRlQ2xhc3NDb25maXJtTWVzc2FnZTogJ1ZvdWxlei12b3VzIGNvbmZpcm1lciBsYSBjcsOpYXRpb24gZHUgbW9kw6hsZSBkZSBkb25uw6llcyA/JyxcbiAgICAgICAgZGVsZXRlQ2xhc3NDb25maXJtTWVzc2FnZTogJ0NvbmZpcm1lei12b3VzIGxhIHN1cHByZXNzaW9uIGRlIGNlIG1vZMOobGUgbcOpdGllciA/JyxcbiAgICAgICAgbGlua2VkT2JqZWN0czogJ09iamV0cyBsacOpcycsXG4gICAgICAgIHVzZWRFbHNld2hlcmU6IFwiVXRpbGlzw6kgcGFyIGRlcyBvYmpldHMgZCdhdXRyZXMgdXRpbGlzYXRldXJzXCIsXG4gICAgICAgIGFzc29jaWF0aW9uczogJ0Fzc29jaWF0aW9ucycsXG4gICAgICAgIHR5cGU6ICdUeXBlJyxcbiAgICAgICAgYXR0cmlidXRlczoge1xuICAgICAgICAgIGFkZDogJ05vdXZlbCBhdHRyaWJ1dCcsXG4gICAgICAgICAgZWRpdDogXCJNb2RpZmllciBsJ2F0dHJpYnV0XCIsXG4gICAgICAgICAgaW5mbzogXCJEw6l0YWlsIGRlIGwnYXR0cmlidXRcIixcbiAgICAgICAgICBkZWxldGU6IFwiU3VwcHJpbWVyIGwnYXR0cmlidXRcIixcbiAgICAgICAgICBuYW1lOiBcIkxpYmVsbMOpIGRlIGwnYXR0cmlidXRcIixcbiAgICAgICAgICB0ZWNobmljYWxOYW1lOiAnTm9tIHRlY2huaXF1ZScsXG4gICAgICAgICAgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbicsXG4gICAgICAgICAgZmllbGQ6ICdUeXBlJyxcbiAgICAgICAgICBjYXRlZ29yeTogJ0NhdMOpZ29yaWUnLFxuICAgICAgICAgIG11bHRpVmFsdWVkOiAnTXVsdGkgdmFsdcOpJ1xuICAgICAgICB9LFxuICAgICAgICBjYXRlZ29yeToge1xuICAgICAgICAgIHNlbGVjdDogJ1PDqWxlY3Rpb25uZXIgdW5lIGNhdMOpZ29yaWUnLFxuICAgICAgICAgIHNlYXJjaE9yQ3JlYXRlOiAnUmVjaGVyY2hlciB1bmUgY2F0w6lnb3JpZSBleGlzdGFudGUgT1UgZW4gY3LDqWVyIHVuZSBub3V2ZWxsZScsXG4gICAgICAgICAgbmFtZTogJ0NhdMOpZ29yaWUnLFxuICAgICAgICAgIHNlbGVjdEl0OiAnU8OpbGVjdGlvbm5lciBsYSBjYXTDqWdvcmllJyxcbiAgICAgICAgICBjcmVhdGU6ICdDcsOpZXIgbGEgY2F0w6lnb3JpZScsXG4gICAgICAgICAgYWRkOiBcIm4nZXhpc3RlIHBhcyBlbmNvcmUuIDxicj5JbCBlc3QgcG9zc2libGUgXFxuIGRlIGxhIGNyw6llciBpY2kuIDxicj5FbGxlIHNlcmEgYXV0b21hdGlxdWVtZW50IHPDqWxlY3Rpb25uw6llIGV0IGFqb3V0w6llIMOgIGxhIGxpc3RlIGRlcyBjYXTDqWdvcmllcy5cIlxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgZmllbGRzOiB7XG4gICAgICAgIGFkZDogJ0Nyw6llciB1biBub3V2ZWF1IHR5cGUgbcOpdGllcicsXG4gICAgICAgIGNyczogJ0NSUyAoY29kZSBFUFNHKSA6JyxcbiAgICAgICAgaW5mbzogJ0TDqXRhaWwgZHUgdHlwZSBtw6l0aWVyJyxcbiAgICAgICAgbGlzdDogJ1R5cGVzIG3DqXRpZXInLFxuICAgICAgICBlZGl0OiAnTW9kaWZpZXIgbGUgdHlwZSBtw6l0aWVyJyxcbiAgICAgICAgbmFtZTogJ05vbScsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24nLFxuICAgICAgICB0eXBlOiAnVHlwZSB0ZWNobmlxdWUnLFxuICAgICAgICBhdHRyaWJ1dGVzOiAnUHLDqXNlbmNlIGRhbnMgZGVzIGF0dHJpYnV0cycsXG4gICAgICAgIGF0dHJpYnV0ZXNUYWI6ICdBdHRyaWJ1dHMnLFxuICAgICAgICBhdHRyaWJ1dGVOYW1lOiBcIk5vbSBkJ2F0dHJpYnV0XCIsXG4gICAgICAgIGNsYXNzTmFtZTogJ0NsYXNzZScsXG4gICAgICAgIGNvbmZpcm1GaWVsZERlbGV0aW9uOiAnQ29uZmlybWV6LXZvdXMgbGEgc3VwcHJlc3Npb24gZGUgY2UgdHlwZSBtw6l0aWVyID8nLFxuICAgICAgICBmaWVsZFR5cGU6IHtcbiAgICAgICAgICBpbnQ6ICdOb21icmUgZW50aWVyJyxcbiAgICAgICAgICBsb25nOiAnTm9tYnJlIGVudGllciBsb25nJyxcbiAgICAgICAgICBkZWNpbWFsOiAnTm9tYnJlIGTDqWNpbWFsJyxcbiAgICAgICAgICBzdHJpbmc6ICdUZXh0ZSBicnV0JyxcbiAgICAgICAgICBrZXl3b3JkOiAnVGV4dGUgaW5kZXjDqScsXG4gICAgICAgICAgaW5zdGFudDogJ0RhdGUnLFxuICAgICAgICAgIHJhdzogJ0Rvbm7DqWUgbm9uIHN0cnVjdHVyw6llJyxcbiAgICAgICAgICBwb2ludDogJ1BvaW50JyxcbiAgICAgICAgICBtdWx0aXBvaW50OiAnTXVsdGktcG9pbnRzJyxcbiAgICAgICAgICBsaW5lOiAnTGlnbmUnLFxuICAgICAgICAgIG11bHRpbGluZTogJ011bHRpLWxpZ25lcycsXG4gICAgICAgICAgcG9seWdvbjogJ1BvbHlnb25lJyxcbiAgICAgICAgICBtdWx0aXBvbHlnb246ICdNdWx0aS1wb2x5Z29uZXMnLFxuICAgICAgICAgIGluZm9ybWF0aW9uOiB7XG4gICAgICAgICAgICBpbnQ6ICdQZXJtZXQgZGUgc3RvY2tlciBkZXMgZG9ubsOpZXMgbnVtw6lyaXF1ZXMgZW50acOocmVzIGluZsOpcmlldXJlcyDDoCAyXjMyJyxcbiAgICAgICAgICAgIGxvbmc6ICdQZXJtZXQgZGUgc3RvY2tlciBkZXMgZG9ubsOpZXMgbnVtw6lyaXF1ZXMgZW50acOocmVzIHBvdXZhbnQgZMOpcGFzc2VyIDJeMzInLFxuICAgICAgICAgICAgZGVjaW1hbDogJ1Blcm1ldCBkZSBzdG9ja2VyIGRlcyBkb25uw6llcyBudW3DqXJpcXVlcyBhdmVjIGRlcyBkw6ljaW1hbGVzJyxcbiAgICAgICAgICAgIHN0cmluZzpcbiAgICAgICAgICAgICAgXCJQZXJtZXQgZGUgc3RvY2tlciBkZXMgZG9ubsOpZXMgYXUgZm9ybWF0IGFscGhhbnVtw6lyaXF1ZS4gQ2VzIGRvbm7DqWVzIG5lIHNvbnQgcGFzIGluZGV4w6llcyA6IGlsIGVzdCBwb3NzaWJsZSBkZSBmYWlyZSB1bmUgcmVjaGVyY2hlIGRlc3N1cyBtYWlzIHBhcyBkJ2FncsOpZ2F0aW9uXCIsXG4gICAgICAgICAgICBrZXl3b3JkOlxuICAgICAgICAgICAgICAnUGVybWV0IGRlIHN0b2NrZXIgZGVzIGRvbm7DqWVzIGF1IGZvcm1hdCBhbHBoYW51bcOpcmlxdWUuIENlcyBkb25uw6llcyBzb250IGluZGV4w6llcyA6IGlsIGVzdCBwb3NzaWJsZSBkZSBmYWlyZSB1bmUgcmVjaGVyY2hlIGRlc3N1cyBhaW5zaSBxdWUgZGVzIGFncsOpZ2F0aW9ucy4nLFxuICAgICAgICAgICAgaW5zdGFudDogJ1Blcm1ldCBkZSBzdG9ja2VyIHVuZSBkYXRlJyxcbiAgICAgICAgICAgIHJhdzogJ3Blcm1ldCBkZSBzdG9ja2VyIGRlcyBkb25uw6llcyBkZSB0eXBlIGltYWdlIG91IGZpY2hpZXInLFxuICAgICAgICAgICAgcG9pbnQ6XG4gICAgICAgICAgICAgIFwiUGVybWV0IGRlIHN0b2NrZXIgZGVzIGNvb3Jkb25uw6llcyBnw6lvZ3JhcGhpcXVlcyBkJ3VuIG9iamV0IHJlcHLDqXNlbnTDqSBwYXIgdW4gcG9pbnQgKGZvcm1hdCBnw6lvanNvbilcIixcbiAgICAgICAgICAgIG11bHRpcG9pbnQ6XG4gICAgICAgICAgICAgIFwiUGVybWV0IGRlIHN0b2NrZXIgZGVzIGNvb3Jkb25uw6llcyBnw6lvZ3JhcGhpcXVlcyBkJ3VuIG9iamV0IGNvbXBvc8OpIGRlIHBsdXNpZXVycyBwb2ludHMgbm9uIHJlbGnDqXMgKGZvcm1hdCBnw6lvanNvbilcIixcbiAgICAgICAgICAgIGxpbmU6IFwiUGVybWV0IGRlIHN0b2NrZXIgZGVzIGNvb3Jkb25uw6llcyBnw6lvZ3JhcGhpcXVlcyBkJ3VuIG9iamV0IHJlcHLDqXNlbnTDqSBjb21tZSB1bmUgbGlnbmUgKGZvcm1hdCBnw6lvanNvbilcIixcbiAgICAgICAgICAgIG11bHRpbGluZTpcbiAgICAgICAgICAgICAgXCJQZXJtZXQgZGUgc3RvY2tlciBkZXMgY29vcmRvbm7DqWVzIGfDqW9ncmFwaGlxdWVzIGQndW4gb2JqZXQgcmVwcsOpc2VudMOpIGF2ZWMgcGx1c2lldXJzIGxpZ25lcyBub24gcmVsacOpZXMgZW50cmUgZWxsZXMgKGxvbmdpdHVkZSBldCBsYXRpdHVkZSBmb3JtYXQgZ8Opb2pzb24pXCIsXG4gICAgICAgICAgICBwb2x5Z29uOlxuICAgICAgICAgICAgICBcIlBlcm1ldCBkZSBzdG9ja2VyIGRlcyBjb29yZG9ubsOpZXMgZ8Opb2dyYXBoaXF1ZXMgZCd1biBvYmpldCByZXByw6lzZW50w6kgcGFyIHVuIHBvbHlnb25lIChmb3JtYXQgZ8Opb2pzb24pXCIsXG4gICAgICAgICAgICBtdWx0aXBvbHlnb246XG4gICAgICAgICAgICAgIFwiUGVybWV0IGRlIHN0b2NrZXIgZGVzIGNvb3Jkb25uw6llcyBnw6lvZ3JhcGhpcXVlcyBkJ3VuIG9iamV0IHJlcHLDqXNlbnTDqSBwYXIgcGx1c2lldXJzIHBvbHlnb25lcyBpbWJyaXF1w6lzIG91IG5vbiAoZm9ybWF0IGfDqW9qc29uKVwiXG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICByYXdNZXRob2RzOiB7XG4gICAgICAgICAgaHR0cDogJ0RlcHVpcyB1bmUgdXJsJyxcbiAgICAgICAgICB1cGxvYWQ6ICdUw6lsw6l2ZXJzZXIgZGVwdWlzIG1vbiBvcmRpbmF0ZXVyJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgdXNlckluZm86IHtcbiAgICAgICAgbGlzdDogJ1V0aWxpc2F0ZXVycycsXG4gICAgICAgIGluZm86IFwiRMOpdGFpbCBkZSBsJ3V0aWxpc2F0ZXVyXCIsXG4gICAgICAgIHByb2ZpbGU6ICdQcm9maWwnLFxuICAgICAgICBhZGRNZXRhZGF0YTogJ0Fqb3V0ZXInLFxuICAgICAgICBlZGl0TWV0YWRhdGE6ICdNb2RpZmllciBsYSBtw6l0YWRvbm7DqWUnLFxuICAgICAgICBuYW1lOiAnUHLDqW5vbScsXG4gICAgICAgIGZhbWlseU5hbWU6ICdOb20gZGUgZmFtaWxsZScsXG4gICAgICAgIGVtYWlsOiAnQWRyZXNzZSBtYWlsJyxcbiAgICAgICAgbWV0YWRhdGE6ICdNw6l0YWRvbm7DqWVzJyxcbiAgICAgICAgcm9sZXM6ICcgUsO0bGVzJ1xuICAgICAgfSxcbiAgICAgIHJlbGF0aW9uVHlwZXM6IHtcbiAgICAgICAgbGlzdDogJ1R5cGVzIGRlIHJlbGF0aW9ucycsXG4gICAgICAgIGFkZDogJ0Fqb3V0ZXIgbGUgdHlwZSBkZSByZWxhdGlvbicsXG4gICAgICAgIGVkaXQ6ICdNb2RpZmllciBsZSB0eXBlIGRlIHJlbGF0aW9uJyxcbiAgICAgICAgaW5mbzogJ0TDqXRhaWwgZHUgdHlwZSBkZSByZWxhdGlvbicsXG4gICAgICAgIG5hbWU6ICdOb20nLFxuICAgICAgICBuYlJlbGF0aW9uOiAnTm9tYnJlIGRlIHJlbGF0aW9ucyBkZSBjZSB0eXBlJyxcbiAgICAgICAgbmJMaW5rOiAnTm9tYnJlIGRlIGxpZW5zIHV0aWxpc2FudCBjZSB0eXBlIGRlIHJlbGF0aW9uJyxcbiAgICAgICAgZGF0ZU1vZGlmaWNhdGlvbjogJ0RhdGUgZGUgbW9kaWZpY2F0aW9uJyxcbiAgICAgICAgZGVsZXRhYmxlOiAnUGV1dCDDqnRyZSBzdXBwcmltw6knLFxuICAgICAgICBkZWxldGVNb2RhbE1lc3NhZ2U6ICdDZSB0eXBlIGRlIHJlbGF0aW9uIG5lIHBldXQgw6p0cmUgc3VwcHJpbcOpIGNhciB1dGlsaXPDqS4nXG4gICAgICB9LFxuICAgICAgbGlua3M6IHtcbiAgICAgICAgbGlzdDogJ0xpZW5zIGVudHJlIGF0dHJpYnV0cycsXG4gICAgICAgIGFkZDogJ0Fqb3V0ZXIgdW4gbm91dmVhdSBsaWVuIGVudHJlIGF0dHJpYnV0cycsXG4gICAgICAgIGNsYXNzU291cmNlOiAnTW9kw6hsZSBtw6l0aWVyIHNvdXJjZScsXG4gICAgICAgIGF0dHJpYnV0ZVNvdXJjZTogJ0F0dHJpYnV0IHNvdXJjZScsXG4gICAgICAgIGNsYXNzRGVzdGluYXRpb246ICdNb2TDqGxlIG3DqXRpZXIgZGUgZGVzdGluYXRpb24nLFxuICAgICAgICBhdHRyaWJ1dGVEZXN0aW5hdGlvbjogJ0F0dHJpYnV0IGRlIGRlc3RpbmF0aW9uJyxcbiAgICAgICAgcmVsYXRpb25UeXBlOiAnVHlwZSBkZSByZWxhdGlvbicsXG4gICAgICAgIHNlbGVjdFJlbGF0aW9uVHlwZTogJ1NlbGVjdGlvbm5leiB1biB0eXBlIGRlIHJlbGF0aW9uJ1xuICAgICAgfSxcbiAgICAgIGFzc29jaWF0aW9uOiB7XG4gICAgICAgIEFCQUM6ICdSw6hnbGUgQUJBQycsXG4gICAgICAgIExJTks6ICdSZWxhdGlvbicsXG4gICAgICAgIE5BTUVEX1FVRVJZOiAnUmVxdcOqdGUgbm9tbcOpZScsXG4gICAgICAgIFdJREdFVDogJ1Jlc3RpdHV0aW9uJyxcbiAgICAgICAgREFUQVNFVDogJ0pldSBkZSBkb25uw6llcycsXG4gICAgICAgIE9DTEFTUzogJ01vZMOobGUgZGUgZG9ubsOpZXMnLFxuICAgICAgICBEQVNIQk9BUkQ6ICdQcsOpc2VudGF0aW9uJyxcbiAgICAgICAgRklFTEQ6ICdUeXBlIG3DqXRpZXInXG4gICAgICB9LFxuICAgICAgc3RvcmFnZToge1xuICAgICAgICBsYWJlbDogJ0Jhc2UgZGUgc3RvY2thZ2UnLFxuICAgICAgICBkZXNjcmlwdGlvbjoge1xuICAgICAgICAgIFBPU1RHSVM6XG4gICAgICAgICAgICBcIkNlIHN0b2NrYWdlIGVzdCBjb25zZWlsbMOpIGVuIGNhcyBkZSBzdG9ja2FnZSBkZSBkb25uw6llcyBnw6lvZ3JhcGhpcXVlIGNvbXBsZXhlcyBvdSBkYW5zIGRlcyBzeXN0w6htZXMgZGUgY29vcmRvbm7DqWVzIGRpZmbDqXJlbnRzIGRlIFdHUyA4NC4gSWwgZXN0IHJlY29tbWFuZMOpIGRlIG5lIHN0b2NrZXIgZGFucyBjZXR0ZSBiYXNlIHF1ZSBkZXMgbW9kw6hsZXMgbcOpdGllciBkb250IGxhIHZvbHVtw6l0cmllIGRlIGRvbm7DqWVzIGVzdGltw6llIChlbiB0ZXJtZSBkZSBub21icmUgZCdpdGVtcykgbidlc3QgcGFzIHRyb3Agw6lsZXbDqWUuXCIsXG4gICAgICAgICAgRUxBU1RJQzpcbiAgICAgICAgICAgIFwiQ2Ugc3RvY2thZ2UgZXN0IGNvbnNlaWxsw6kgZW4gY2FzIGRlIGZvcnRlIHZvbHVtw6l0cmllIGRlIGRvbm7DqWVzIHByw6l2dWUgcG91ciBjZSBtb2TDqGxlIG3DqXRpZXIgKGdyYW5kIG5vbWJyZSBkJ2l0ZW1zKS4gU2kgdm91cyBzb3VoYWl0ZXogc3RvY2tlciBkZXMgZG9ubsOpZXMgZ8Opb2dyYXBoaXF1ZXMgZGFucyBjZSBtb2TDqGxlLCBkZXMgZm9ybWVzIHNpbXBsZXMgc29udCBjb25zZWlsbMOpZXMgZXQgbGUgc3lzdMOobWUgZGUgY29vcmRvbm7DqWVzIGRlIHLDqWbDqXJlbmNlIHV0aWxpc8OpIGRvaXQgw6p0cmUgV0dTIDg0LiBDZSBzeXN0w6htZSBkZSBzdG9ja2FnZSBvZmZyZSB1bmUgc2NhbGFiaWxpdMOpIGhvcml6b250YWxlXCJcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIFBPU1RHSVM6ICdQb3N0R0lTJyxcbiAgICAgICAgICBFTEFTVElDOiAnRWxhc3RpY1NlYXJjaCdcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgdG9vbHRpcDoge1xuICAgICAgZGVmYXVsdDogJ1Rvb2x0aXAgcGFyIGTDqWZhdXQnLFxuICAgICAgYXR0cmlidXRlOiAnVG9vbHRpcCBhZmZpY2hhbnQgY2VydGFpbnMgYXR0cmlidXRzJyxcbiAgICAgIGNsdXN0ZXI6ICdUb29sdGlwIHBvdXIgbGVzIGNsdXN0ZXJzIChncmFwaGVzKScsXG4gICAgICBsaW5rOiAnVG9vbHRpcCBwb3VyIGxlcyBsaWVucyAoZ3JhcGhlcyknLFxuICAgICAgbm9uZTogJ1BhcyBkZSB0b29sdGlwJ1xuICAgIH1cbiAgfVxufTtcbiJdfQ==
377
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnIudHJhbnNsYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvYWRtaW4vaTE4bi9mci50cmFuc2xhdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHO0lBQzVCLE1BQU0sRUFBRTtRQUNOLEtBQUssRUFBRTtZQUNMLEtBQUssRUFBRSxnQkFBZ0I7WUFDdkIsZUFBZSxFQUFFLCtCQUErQjtZQUNoRCxjQUFjLEVBQUUsYUFBYTtZQUM3QixXQUFXLEVBQUUsUUFBUTtZQUNyQixJQUFJLEVBQUUsVUFBVTtZQUNoQixNQUFNLEVBQUUsVUFBVTtZQUNsQixNQUFNLEVBQUUsV0FBVztZQUNuQixHQUFHLEVBQUUsU0FBUztZQUNkLFFBQVEsRUFBRSxTQUFTO1lBQ25CLFFBQVEsRUFBRSxxQkFBcUI7WUFDL0IsWUFBWSxFQUFFLHFCQUFxQjtZQUNuQyxNQUFNLEVBQUUsT0FBTztZQUNmLE1BQU0sRUFBRSxtQkFBbUI7WUFDM0IsS0FBSyxFQUFFLFVBQVU7WUFDakIsTUFBTSxFQUFFLFNBQVM7WUFDakIsSUFBSSxFQUFFLFFBQVE7WUFDZCxJQUFJLEVBQUUsU0FBUztZQUNmLFVBQVUsRUFBRSxZQUFZO1lBQ3hCLE9BQU8sRUFBRSxTQUFTO1lBQ2xCLFFBQVEsRUFBRSxVQUFVO1lBQ3BCLFFBQVEsRUFBRSxzQkFBc0I7WUFDaEMsTUFBTSxFQUFFLHlCQUF5QjtZQUNqQyxTQUFTLEVBQUUsd0NBQXdDO1lBQ25ELFNBQVMsRUFBRSx5Q0FBeUM7WUFDcEQsWUFBWSxFQUFFLHlEQUF5RDtZQUN2RSxJQUFJLEVBQUUsZ0JBQWdCO1lBQ3RCLFdBQVcsRUFBRSwwRUFBMEU7WUFDdkYsZ0JBQWdCLEVBQUUsNkJBQTZCO1lBQy9DLElBQUksRUFBRSxtQkFBbUI7WUFDekIsNkJBQTZCLEVBQzNCLGtHQUFrRztZQUNwRyxRQUFR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LHlDQUF5QztnQkFDOUMsV0FBVyxFQUFFLHNCQUFzQjtnQkFDbkMsZUFBZSxFQUFFLGlCQUFpQjtnQkFDbEMsZ0JBQWdCLEVBQUUsOEJBQThCO2dCQUNoRCxvQkFBb0IsRUFBRSx5QkFBeUI7Z0JBQy9DLFlBQVksRUFBRSxrQkFBa0I7Z0JBQ2hDLGtCQUFrQixFQUFFLGtDQUFrQzthQUN2RDtZQUNELFdBQVcsRUFBRTtnQkFDWCxJQUFJLEVBQUUsWUFBWTtnQkFDbEIsSUFBSSxFQUFFLFVBQVU7Z0JBQ2hCLFdBQVcsRUFBRSxnQkFBZ0I7Z0JBQzdCLE1BQU0sRUFBRSxhQUFhO2dCQUNyQixPQUFPLEVBQUUsZ0JBQWdCO2dCQUN6QixNQUFNLEVBQUUsbUJBQW1CO2dCQUMzQixTQUFTLEVBQUUsY0FBYztnQkFDekIsS0FBSyxFQUFFLGFBQWE7YUFDckI7WUFDRCxPQUFPLEVBQUU7Z0JBQ1AsS0FBSyxFQUFFLGtCQUFrQjtnQkFDekIsV0FBVyxFQUFFO29CQUNYLE9BQU8sRUFDTCwyU0FBMlM7b0JBQzdTLE9BQU8sRUFDTCwyVkFBMlY7aUJBQzlWO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxPQUFPLEVBQUUsU0FBUztvQkFDbEIsT0FBTyxFQUFFLGVBQWU7aUJBQ3pCO2FBQ0Y7U0FDRjtRQUNELE9BQU8sRUFBRTtZQUNQLE9BQU8sRUFBRSxvQkFBb0I7WUFDN0IsU0FBUyxFQUFFLHNDQUFzQztZQUNqRCxPQUFPLEVBQUUscUNBQXFDO1lBQzlDLElBQUksRUFBRSxrQ0FBa0M7WUFDeEMsSUFBSSxFQUFFLGdCQUFnQjtTQUN2QjtLQUNGO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBmclRyYW5zbGF0aW9ucyA9IHtcbiAgJ0BwcnknOiB7XG4gICAgYWRtaW46IHtcbiAgICAgIHRpdGxlOiAnQWRtaW5pc3RyYXRpb24nLFxuICAgICAgdGl0bGVJbmRpY2F0aW9uOiAnRmVybWVyIGxlIG1lbnUgQWRtaW5pc3RyYXRpb24nLFxuICAgICAgaW5mb01vZGFsVGl0bGU6ICdJbmZvcm1hdGlvbicsXG4gICAgICBjbG9zZU1vZGFsZTogJ0Zlcm1lcicsXG4gICAgICBlZGl0OiAnTW9kaWZpZXInLFxuICAgICAgcmVuYW1lOiAnUmVub21tZXInLFxuICAgICAgZGVsZXRlOiAnU3VwcHJpbWVyJyxcbiAgICAgIGFkZDogJ05vdXZlYXUnLFxuICAgICAgdmFsaWRhdGU6ICdWYWxpZGVyJyxcbiAgICAgIGFkZENsYXNzOiAnVmFsaWRlciBsYSBjcsOpYXRpb24nLFxuICAgICAgYWRkQXR0cmlidXRlOiAnQWpvdXRlciB1biBhdHRyaWJ1dCcsXG4gICAgICBjcmVhdGU6ICdDcsOpZXInLFxuICAgICAgdXBsb2FkOiAnQWpvdXRlciB1bmUgaW1hZ2UnLFxuICAgICAgc2hhcmU6ICdQYXJ0YWdlcicsXG4gICAgICBjYW5jZWw6ICdBbm51bGVyJyxcbiAgICAgIGJhY2s6ICdSZXRvdXInLFxuICAgICAgbmV4dDogJ1N1aXZhbnQnLFxuICAgICAgcHJvcGVydGllczogJ1Byb3ByacOpdMOpcycsXG4gICAgICBkZXRhaWxzOiAnRMOpdGFpbHMnLFxuICAgICAgYWN0aXZpdHk6ICdBY3Rpdml0w6knLFxuICAgICAgcmVxdWlyZWQ6ICdMZSBjaGFtcHMgZXN0IHJlcXVpcycsXG4gICAgICBleGlzdHM6ICdDZSBub20gZXN0IGTDqWrDoCB1dGlsaXPDqScsXG4gICAgICBtaW5MZW5ndGg6ICdOb21icmUgbWluaW1hbCBkZSBjYXJhY3TDqHJlcyA6IHt7bGVufX0nLFxuICAgICAgbWF4TGVuZ3RoOiAnTm9tYnJlIGRlIGNhcmFjdMOocmVzIGF1dG9yaXPDqSA6IHt7bGVufX0nLFxuICAgICAgbm9XaGl0ZXNwYWNlOiAnTGEgdmFsZXVyIG5lIHBldXQgcGFzIGNvbW1lbmNlciBvdSBmaW5pciBwYXIgdW4gZXNwYWNlLicsXG4gICAgICBydWxlOiAnUsOoZ2xlIG7CsHt7aWR9fScsXG4gICAgICBkZWZhdWx0UnVsZTogXCJSw6hnbGUgcGFyIGTDqWZhdXQgKG5lIHMnYXBwbGlxdWUgcXVlIHNpIGF1Y3VuZSBhdXRyZSByw6hnbGUgbidlc3QgdmFsaWTDqWUpXCIsXG4gICAgICBkaXNwbGF5TW9kZUltYWdlOiBcIk1vZGUgZCdhZmZpY2hhZ2UgZGUgbCdpbWFnZVwiLFxuICAgICAgc2l6ZTogXCJUYWlsbGUgZGUgbCdpbWFnZVwiLFxuICAgICAgZGVsZXRlQXR0cmlidXRlQ29uZmlybU1lc3NhZ2U6XG4gICAgICAgICdDZXQgYXR0cmlidXQgbmUgc2VyYSBwbHVzIHZpc2libGUgcG91ciBsZXMgZG9ubsOpZXMgbGUgcG9zc8OpZGFudC4gQ29uZmlybWV6LXZvdXMgbGEgc3VwcHJlc3Npb24gPycsXG4gICAgICBwb3NpdGlvbjoge1xuICAgICAgICBGVUxMOiAnSWNvbmUgcGxlaW5lJyxcbiAgICAgICAgVE9QX0xFRlQ6ICdFbiBoYXV0IMOgIGdhdWNoZScsXG4gICAgICAgIFRPUF9SSUdIVDogJ0VuIGhhdXQgw6AgZHJvaXRlJyxcbiAgICAgICAgQk9UVE9NX0xFRlQ6ICdFbiBiYXMgw6AgZ2F1Y2hlJyxcbiAgICAgICAgQk9UVE9NX1JJR0hUOiAnRW4gYmFzIMOgIGRyb2l0ZSdcbiAgICAgIH0sXG4gICAgICBjdXN0b21pemU6IHtcbiAgICAgICAgdGl0bGU6ICdQZXJzb25uYWxpc2VyJyxcbiAgICAgICAgdGVtcGxhdGU6ICdUb29sdGlwIChDYXJ0ZSAmIEdyYXBoZSknLFxuICAgICAgICB1cGRhdGU6ICdNZXR0cmUgw6Agam91ciBsZSB0b29sdGlwJyxcbiAgICAgICAgYWR2YW5jZWQ6ICdNb2RlIGF2YW5jw6knLFxuICAgICAgICBuYW1lOiAnTW9kw6hsZSBtw6l0aWVyJyxcbiAgICAgICAgdGVjaG5pY2FsSWQ6ICdJZCB0ZWNobmlxdWUnLFxuICAgICAgICB0eXBlOiAnQ2hvaXNpc3NleiBsZSB0eXBlIGRlIHRvb2x0aXAgw6AgdXRpbGlzZXInLFxuICAgICAgICBzaW1wbGlmaWVkOiAnQ2hvaXNpc3NleiBsZXMgYXR0cmlidXRzIMOgIGFmZmljaGVyJyxcbiAgICAgICAgZXhlbXBsZTogJ3ZhbGV1ciBkZSB7e2V4cHJ9fScsXG4gICAgICAgIHRhYmxlOiAnQXR0cmlidXRzIHBhciBkw6lmYXV0IChUYWJsZSknLFxuICAgICAgICB0aWxlOiAnQXR0cmlidXRzIGFmZmljaMOpcyBzdXIgbGEgdHVpbGUnLFxuICAgICAgICB0aWxlSGludDogJ1NldWxlbWVudCBlbnRyZSAxIGV0IHt7bWF4fX0gYXR0cmlidXRzIHBldXZlbnQgw6p0cmUgYWZmaWNow6lzIGRhbnMgdW5lIHR1aWxlJyxcbiAgICAgICAgdGFibGVBdHRyczogJ0F0dHJpYnV0cyBkYW5zIGxhIHRhYmxlIHBhciBkw6lmYXV0JyxcbiAgICAgICAgdGlsZUF0dHJzOiAnQXR0cmlidXRzIHByw6lzZW50w6lzIGRhbnMgbGVzIHR1aWxlcycsXG4gICAgICAgIG5vVGFibGVBdHRyczogJ0F1dHJlcyBhdHRyaWJ1dHMnLFxuICAgICAgICBub1RpbGVBdHRyczogJ0F0dHJpYnV0cyBub24gYWZmaWNow6lzJyxcbiAgICAgICAgdXBkYXRlVGFibGU6IFwiTWV0dHJlIMOgIGpvdXIgbGVzIGF0dHJpYnV0cyBwYXIgZMOpZmF1dCBkJ3VuZSB0YWJsZVwiLFxuICAgICAgICB1cGRhdGVUaWxlOiAnTWV0dHJlIMOgIGpvdXIgbGVzIGF0dHJpYnV0cyBkZXMgdHVpbGVzJyxcbiAgICAgICAgdXBkYXRlSWNvbnM6ICdNZXR0cmUgw6Agam91ciBsZXMgcsOoZ2xlcyBkZSBzeW1ib2xlcydcbiAgICAgIH0sXG4gICAgICB2YXJUeXBlOiB7XG4gICAgICAgIGludDogJ05vbWJyZSBlbnRpZXInLFxuICAgICAgICBkb3VibGU6ICdOb21icmUgZMOpY2ltYWwnLFxuICAgICAgICBzdHJpbmc6ICdUZXh0ZScsXG4gICAgICAgIHV1aWQ6ICdJZGVudGlmaWFudCB1dWlkJyxcbiAgICAgICAgZGF0ZTogJ0RhdGUnLFxuICAgICAgICBsaXN0OiAnTGlzdGUgZGUgdmFsZXVycydcbiAgICAgIH0sXG4gICAgICBtZW51czoge1xuICAgICAgICBlbnZpcm9ubWVudDogXCJDb250ZXh0ZXMgZCdleMOpY3V0aW9uXCIsXG4gICAgICAgIHVzZXI6ICdVdGlsaXNhdGV1cnMnLFxuICAgICAgICAnbWV0YWRhdGEtdXNlcic6ICdQcm9maWwgdXRpbGlzYXRldXInLFxuICAgICAgICAnYWJhYy1ydWxlcyc6ICdSw6hnbGVzIEFCQUMnLFxuICAgICAgICAnbWV0YWRhdGEtcnVsZXMnOiAnUsOoZ2xlcyBNw6l0YWRvbm7DqWVzJyxcbiAgICAgICAgZGF0YXNldDogJ0pldXggZGUgZG9ubsOpZXMnLFxuICAgICAgICBjbGFzc2VzOiAnTW9kw6hsZXMgZGUgZG9ubsOpZXMnLFxuICAgICAgICBwcmVkaWNhdGVzOiAnUHLDqWRpY2F0cycsXG4gICAgICAgIG1ldGFkYXRhOiAnTcOpdGFkb25uw6llcycsXG4gICAgICAgIGZpZWxkczogJ1R5cGVzIG3DqXRpZXInLFxuICAgICAgICAncmVsYXRpb24tdHlwZXMnOiAnVHlwZXMgZGUgcmVsYXRpb24nLFxuICAgICAgICBsaW5rczogJ0xpZW4gZW50cmUgYXR0cmlidXRzJyxcbiAgICAgICAgbW9kZWw6ICdNb2TDqGxlIG3DqXRpZXInLFxuICAgICAgICBhY2Nlc3M6ICdBY2PDqHMgYXV4IGRvbm7DqWVzJ1xuICAgICAgfSxcbiAgICAgIHByZWRpY2F0ZXM6IHtcbiAgICAgICAgbGlzdDogJ1Byw6lkaWNhdHMnLFxuICAgICAgICBhZGQ6ICdDcsOpZXIgdW4gbm91dmVhdSBwcsOpZGljYXQnLFxuICAgICAgICBlZGl0OiAnTW9kaWZpZXIgdW4gcHLDqWRpY2F0JyxcbiAgICAgICAgaW5mbzogJ0TDqXRhaWxzIGR1IHByw6lkaWNhdCcsXG4gICAgICAgIG51bTogJ0lkLicsXG4gICAgICAgIG5hbWU6ICdOb20nLFxuICAgICAgICB2YWx1ZTogJ0V4cHJlc3Npb24gY29uZGl0aW9ubmVsbGUgZGUgZMOpY2xlbmNoZW1lbnQnLFxuICAgICAgICB2YWxpZEVkaXQ6ICdJbmZvcm1hdGlvbicsXG4gICAgICAgIHZhbGlkRWRpdE1lc3NhZ2U6ICdDZSBwcsOpZGljYXQgZXN0IHV0aWxpc8OpIGRhbnMge3t1c2VkfX0gcsOoZ2xlcy4gVm91bGV6LXZvdXMgdnJhaW1lbnQgbGUgbW9kaWZpZXIgPydcbiAgICAgIH0sXG4gICAgICBtZXRhZGF0YToge1xuICAgICAgICB0aXRsZTogJ01ldGFkb25uw6llcycsXG4gICAgICAgIGFkZDogJ0Nyw6llciB1bmUgbWV0YWRvbm7DqWUnLFxuICAgICAgICBlZGl0OiAnTW9kaWZpZXIgdW5lIG1ldGFkb25uw6llJyxcbiAgICAgICAgZGV0YWlsczogJ0TDqXRhaWxzIGRlIGxhIG1ldGFkb25uw6llJyxcbiAgICAgICAgZGV0YWlsc1VzZXI6ICdEw6l0YWlscyBkdSBwcm9maWwgdXRpbGlzYXRldXInLFxuICAgICAgICBpZDogJ0lEJyxcbiAgICAgICAgbGFiZWw6ICdOb20nLFxuICAgICAgICB0eXBlOiAnVHlwZScsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24nLFxuICAgICAgICBpbnZhbGlkOiAnTGUgY2hhbXBzIGVzdCByZXF1aXMnLFxuICAgICAgICBsaXN0TGFiZWw6ICdOb20gZGUgbGEgdmFsZXVyJyxcbiAgICAgICAgYWRkVmFsdWU6ICdBam91dGVyIHVuZSBub3V2ZWxsZSB2YWxldXInLFxuICAgICAgICByZW1vdmVWYWx1ZTogJ1N1cHByaW1lciBjZXR0ZSB2YWxldXInLFxuICAgICAgICBzeXN0ZW06ICdNw6l0YWRvbm7DqWUgc3lzdMOobWUnXG4gICAgICB9LFxuICAgICAgJ21ldGFkYXRhLXJ1bGVzJzoge1xuICAgICAgICB0aXRsZTogJ1LDqGdsZXMgTWV0YWRvbm7DqWVzJyxcbiAgICAgICAgbGFiZWw6ICdOb20nLFxuICAgICAgICAnaXMtc2FtZS1uYW1lJzogJ0xlIG5vbSBkZSBsYSByw6hnbGUgZXN0IGTDqWrDoCBwcmlzIHBvdXIgdW5lIGF1dHJlIHLDqGdsZSwgdmV1aWxsZXogZW4gdXRpbGlzZXIgdW4gYXV0cmUnLFxuICAgICAgICAnaXMtc2FtZS1ydWxlcyc6IFwiTGEgbcOqbWUgcsOoZ2xlIGEgZMOpasOgIMOpdMOpIGNvbmZpZ3Vyw6llIGV0IGVucmVnaXN0csOpZSwgdm91cyBwb3V2ZXogbCd1dGlsaXNlclwiLFxuICAgICAgICAnbWV0YWRhdGEtaXRlbSc6IHtcbiAgICAgICAgICBuYW1lOiAnTWV0YWRvbm7DqWVzIGNpYmxlJyxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJ0Rlc2NyaXB0aW9uIGRlIGxhIG1ldGFkb25uw6llIGNpYmxlJyxcbiAgICAgICAgICB0eXBlOiAnVHlwZSBkZSBsYSBtZXRhZG9ubsOpZSBjaWJsZSdcbiAgICAgICAgfSxcbiAgICAgICAgJ21ldGFkYXRhLXVzZXInOiB7XG4gICAgICAgICAgbmFtZTogJ1Byb2ZpbCB1dGlsaXNhdGV1ciBzb3VyY2UnLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24gZHUgcHJvZmlsIHV0aWxpc2F0ZXVyIHNvdXJjZScsXG4gICAgICAgICAgdHlwZTogJ1R5cGUgZHUgcHJvZmlsIHV0aWxpc2F0ZXVyIHNvdXJjZSdcbiAgICAgICAgfSxcbiAgICAgICAgZWRpdDoge1xuICAgICAgICAgIHRpdGxlOiAnTW9kaWZpZXIgdW5lIHLDqGdsZSBkZSBtZXRhZG9ubsOpZXMnXG4gICAgICAgIH0sXG4gICAgICAgIGFkZDoge1xuICAgICAgICAgIHRpdGxlOiAnQ3LDqWVyIHVuZSBub3V2ZWxsZSByw6hnbGUgZGUgbWV0YWRvbm7DqWVzJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgZGF0YXNldDoge1xuICAgICAgICBkZWxldGU6XG4gICAgICAgICAgXCJMJ2Vuc2VtYmxlIGRlcyB2ZXJzaW9ucyBldCBkZXMgZG9ubsOpZXMgYXNzb2Npw6llcyBzZXJvbnQgc3VwcHJpbcOpZXMuIExlcyByZXN0aXR1dGlvbnMgZXQgcHLDqXNlbnRhdGlvbnMgdXRpbGlzYW50IGNlIGpldSBkZSBkb25uw6llcyBuJ2FmZmljaGVyb250IHBsdXMgbGVzIGRvbm7DqWVzIGNvcnJlc3BvbmRhbnRlcy4gQ29uZmlybWV6LXZvdXMgbGEgc3VwcHJlc3Npb24gP1wiLFxuICAgICAgICB0aXRsZTogJ0pldXggZGUgZG9ubsOpZXMnLFxuICAgICAgICBkZXRhaWxzOiAnRMOpdGFpbHMgZHUgamV1IGRlIGRvbm7DqWVzJyxcbiAgICAgICAgaWQ6ICdJZGVudGlmaWFudCcsXG4gICAgICAgIG5hbWU6ICdOb20nLFxuICAgICAgICBvQ2xhc3M6ICdNb2TDqGxlIG3DqXRpZXInLFxuICAgICAgICB0eXBlOiAnVHlwZScsXG4gICAgICAgICdpcy1zYW1lLW5hbWUnOiAnTGUgbm9tIGR1IGpldSBkZSBkb25uw6llcyBlc3QgZMOpasOgIHByaXMsIHZldWlsbGV6IGVuIHV0aWxpc2VyIHVuIGF1dHJlJyxcbiAgICAgICAgYWRkOiB7XG4gICAgICAgICAgdGl0bGU6ICdDcsOpZXIgdW4gamV1IGRlIGRvbm7DqWVzJ1xuICAgICAgICB9LFxuICAgICAgICBlZGl0OiB7XG4gICAgICAgICAgdGl0bGU6ICdNb2RpZmllciB1biBqZXUgZGUgZG9ubsOpZXMnXG4gICAgICAgIH0sXG4gICAgICAgIE9QRU46ICdPdXZlcnQnLFxuICAgICAgICBDTE9TRUQ6ICdGZXJtw6knLFxuICAgICAgICBNT0RJRklBQkxFOiAnTW9kaWZpYWJsZScsXG4gICAgICAgIHN1Y2Nlc3M6ICdNb2RpZmljYXRpb24gZWZmZWN0dcOpZSBhdmVjIHN1Y2PDqHMnLFxuICAgICAgICBjb25mbGljdDpcbiAgICAgICAgICBcIkF0dGVudGlvbiwgbGVzIHRhYmxlYXV4IGRlIGJvcmQgc3VpdmFudHMgc29udCBwYXJ0YWfDqXMgw6AgZGVzIGdyb3VwZXMgcXVpIG4nYXVyb250IHBsdXMgYWNjw6hzIGF1eCBkb25uw6llcyA6XCIsXG4gICAgICAgIGVudGl0aWVzOiB7XG4gICAgICAgICAgZGFzaGJvYXJkOiAnVGFibGVhdXggZGUgYm9yZCdcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgICdhYmFjLXJ1bGVzJzoge1xuICAgICAgICBkZWxldGU6ICdTdXBwcmltZXInLFxuICAgICAgICBtZXRhZGF0YVVzZXI6ICdQcm9maWwgdXRpbGlzYXRldXInLFxuICAgICAgICB0aXRsZToge1xuICAgICAgICAgIGxpc3Q6ICdSw6hnbGVzIEFiYWMnLFxuICAgICAgICAgIGFkZDogJ0Nyw6llciB1bmUgcsOoZ2xlIGFiYWMnLFxuICAgICAgICAgIHZpZXc6IFwiRMOpdGFpbHMgZCd1bmUgcsOoZ2xlIGFiYWNcIixcbiAgICAgICAgICBlZGl0OiAnTW9kaWZpZXIgdW5lIHLDqGdsZSBhYmFjJ1xuICAgICAgICB9LFxuICAgICAgICBmb3JtOiB7XG4gICAgICAgICAgaWQ6ICdOdW3DqXJvJyxcbiAgICAgICAgICBuYW1lOiAnTm9tJyxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJ0Rlc2NyaXB0aW9uJyxcbiAgICAgICAgICBzdGF0dXM6ICdTdGF0dXQnLFxuICAgICAgICAgIHN0YXR1c0FjdGl2ZTogJ0FjdGlmJyxcbiAgICAgICAgICBzdGF0dXNJbmFjdGl2ZTogJ0luYWN0aWYnLFxuICAgICAgICAgIHByZWRpY2F0ZTogJ1Byw6lkaWNhdCBkZSBkw6ljbGVuY2hlbWVudCcsXG4gICAgICAgICAgdHlwZTogJ1R5cGUnLFxuICAgICAgICAgIHR5cGVNZXRhZGF0YTogJ01ldGFkb25uw6llJyxcbiAgICAgICAgICB0eXBlQXR0cmlidXRlOiAnQXR0cmlidXQnLFxuICAgICAgICAgIHR5cGVTZWxlY3RlZDogJ1ZvdXMgbmUgcG91dmV6IHBhcyBjaGFuZ2VyIGxlIHR5cGUgYXZlYyBsZXMgY29uZGl0aW9ucyBleGlzdGFudGVzJyxcbiAgICAgICAgICBhZGRNZXRhZGF0YTogJ0Fqb3V0ZXIgdW5lIGNvbmRpdGlvbiBzdXIgdW5lIG1ldGFkb25uw6llJyxcbiAgICAgICAgICBhZGRBdHRyaWJ1dGU6ICdBam91dGVyIHVuZSBjb25kaXRpb24gc3VyIHVuIGF0dHJpYnV0JyxcbiAgICAgICAgICB0b2dnbGVBbmQ6ICdFVCcsXG4gICAgICAgICAgdG9nZ2xlT3I6ICdPVScsXG4gICAgICAgICAgYWRkR3JvdXA6ICdBam91dGVyIHVuIHNvdXMtZ3JvdXBlJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgdXNlcjoge1xuICAgICAgICB0aXRsZTogJ1Byb2ZpbCB1dGlsaXNhdGV1cicsXG4gICAgICAgIGFkZDogJ0Nyw6llciB1biBub3V2ZWF1IHByb2ZpbCB1dGlsaXNhdGV1cicsXG4gICAgICAgIGxhYmVsOiAnTm9tJyxcbiAgICAgICAgdHlwZTogJ1R5cGUnLFxuICAgICAgICBpbnZhbGlkOiAnTGUgY2hhbXAgZXN0IHJlcXVpcycsXG4gICAgICAgIGVkaXQ6ICdNb2RpZmllciB1biBwcm9maWwgdXRpbGlzYXRldXInXG4gICAgICB9LFxuICAgICAgZW52aXJvbm1lbnQ6IHtcbiAgICAgICAgbGlzdDogXCJDb250ZXh0ZXMgZCdleMOpY3V0aW9uXCIsXG4gICAgICAgIGFkZDogXCJDcsOpZXIgdW4gbm91dmVhdSBjb250ZXh0ZSBkJ2V4w6ljdXRpb25cIixcbiAgICAgICAgZWRpdDogXCJNb2RpZmllciB1biBjb250ZXh0ZSBkJ2V4w6ljdXRpb25cIixcbiAgICAgICAgaW5mbzogXCJEw6l0YWlscyBkdSBjb250ZXh0ZSBkJ2V4w6ljdXRpb25cIixcbiAgICAgICAgZm9ybWF0SW50OiAnTGEgdmFsZXVyIGRvaXQgw6p0cmUgdW4gZW50aWVyLicsXG4gICAgICAgIGZvcm1hdERvdWJsZTogXCJMYSB2YWxldXIgZG9pdCDDqnRyZSB1biBlbnRpZXIsIGxlIHPDqXBhcmF0ZXVyIGF1dG9yaXPDqSBlc3QgdW4gJy4nXCIsXG4gICAgICAgIGZvcm1hdE5hbWU6ICdDYXJhY3TDqHJlcyBzcGVjaWF1eCBhdXRvcmlzw6lzOiBbIC0sIF8gXSAnLFxuICAgICAgICBuYW1lOiAnTm9tJyxcbiAgICAgICAgdHlwZTogJ1R5cGUnLFxuICAgICAgICB2YWx1ZTogJ1ZhbGV1ciBkZSBsYSB2YXJpYWJsZSdcbiAgICAgIH0sXG4gICAgICBjbGFzc2VzOiB7XG4gICAgICAgIGxpc3Q6ICdNb2TDqGxlcyBkZSBkb25uw6llcycsXG4gICAgICAgIG5hbWU6ICdOb20nLFxuICAgICAgICB0aXRsZTogJ01vZMOobGUgZGUgZG9ubsOpZXMge3tjbGFzc319JyxcbiAgICAgICAgaW1hZ2U6ICdJbWFnZScsXG4gICAgICAgIGZvcm1hdE5hbWU6ICdDYXJhY3TDqHJlcyBhdXRvcmlzw6lzOiBbIG1pbnVzY3VsZSwgLSwgXyBdJyxcbiAgICAgICAgbW9kZWw6ICdNb2TDqGxlJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbicsXG4gICAgICAgIGxpbmVzOiAnTGlnbmVzJyxcbiAgICAgICAgYWRkOiAnQ3LDqWVyIHVuIG5vdXZlYXUgbW9kw6hsZSBkZSBkb25uw6llcycsXG4gICAgICAgIGVkaXQ6ICdNb2RpZmllciBsZSBtb2TDqGxlIGRlIGRvbm7DqWVzJyxcbiAgICAgICAgcmVuYW1lOiAnUmVub21tZXIgbGUgbW9kw6hsZSBkZSBkb25uw6llcycsXG4gICAgICAgIGFkZEF0dHI6ICdBdHRyaWJ1dCcsXG4gICAgICAgIGluZm9BdHRyOiAnTW9kw6hsZSBkZSBkb25uw6llcyB7e2NsYXNzfX0gPiBBdHRyaWJ1dHMnLFxuICAgICAgICBpbmZvOiAnRMOpdGFpbCBkdSBtb2TDqGxlIGRlIGRvbm7DqWVzJyxcbiAgICAgICAgcnVsZXM6ICdSw6hnbGVzIGRlIGTDqWZpbml0aW9uIGRlIHN5bWJvbGVzJyxcbiAgICAgICAgY29uZGl0aW9uOiAnQWN0aWYgc2Vsb24gdW5lIGNvbmRpdGlvbicsXG4gICAgICAgIGF0dHJOYW1lOiAnQXR0cmlidXRlIMOgIHbDqXJpZmllcicsXG4gICAgICAgIHZhbHVlOiAnVmFsZXVyIGRlIGNvbXBhcmFpc29uJyxcbiAgICAgICAgb3BlcmF0aW9uOiAnT3DDqXJhdGlvbiBkZSBjb21wYXJhaXNvbicsXG4gICAgICAgIG9wZXJhdGlvbnM6IHtcbiAgICAgICAgICBFUVVBTFM6ICdlc3Qgw6lnYWwnLFxuICAgICAgICAgIEdSRUFURVI6ICdlc3QgcGx1cyBncmFuZCcsXG4gICAgICAgICAgR1JFQVRFUl9PUl9FUVVBTDogJ2VzdCBwbHVzIGdyYW5kIG91IMOpZ2FsJyxcbiAgICAgICAgICBMT1dFUjogJ3BsdXMgcGV0aXQnLFxuICAgICAgICAgIExPV0VSX09SX0VRVUFMOiAncGx1cyBwZXRpdCBvdSDDqWdhbCcsXG4gICAgICAgICAgQ09OVEFJTlM6ICdjb250aWVudCB0ZXh0dWVsbGVtZW50J1xuICAgICAgICB9LFxuICAgICAgICBjcmVhdGVDbGFzc01vZGFsTWVzc2FnZTpcbiAgICAgICAgICAnSW1wb3NzaWJsZSBkZSBjcsOpZXIgdW4gbW9kw6hsZSBkZSBkb25uw6llcyBzYW5zIGF0dHJpYnV0cy4gVmV1aWxsZXogZW4gYWpvdXRlciBhdSBtb2lucyB1biBlbiBjbGlxdWFudCBzdXIgXCJBam91dGVyIHVuIGF0dHJpYnV0XCIuJyxcbiAgICAgICAgY3JlYXRlQ2xhc3NDb25maXJtTWVzc2FnZTogJ1ZvdWxlei12b3VzIGNvbmZpcm1lciBsYSBjcsOpYXRpb24gZHUgbW9kw6hsZSBkZSBkb25uw6llcyA/JyxcbiAgICAgICAgZGVsZXRlQ2xhc3NDb25maXJtTWVzc2FnZTogJ0NvbmZpcm1lei12b3VzIGxhIHN1cHByZXNzaW9uIGRlIGNlIG1vZMOobGUgbcOpdGllciA/JyxcbiAgICAgICAgbGlua2VkT2JqZWN0czogJ09iamV0cyBsacOpcycsXG4gICAgICAgIHVzZWRFbHNld2hlcmU6IFwiVXRpbGlzw6kgcGFyIGRlcyBvYmpldHMgZCdhdXRyZXMgdXRpbGlzYXRldXJzXCIsXG4gICAgICAgIGFzc29jaWF0aW9uczogJ0Fzc29jaWF0aW9ucycsXG4gICAgICAgIHR5cGU6ICdUeXBlJyxcbiAgICAgICAgYXR0cmlidXRlczoge1xuICAgICAgICAgIGFkZDogJ05vdXZlbCBhdHRyaWJ1dCcsXG4gICAgICAgICAgZWRpdDogXCJNb2RpZmllciBsJ2F0dHJpYnV0XCIsXG4gICAgICAgICAgaW5mbzogXCJEw6l0YWlsIGRlIGwnYXR0cmlidXRcIixcbiAgICAgICAgICBkZWxldGU6IFwiU3VwcHJpbWVyIGwnYXR0cmlidXRcIixcbiAgICAgICAgICBuYW1lOiBcIkxpYmVsbMOpIGRlIGwnYXR0cmlidXRcIixcbiAgICAgICAgICB0ZWNobmljYWxOYW1lOiAnTm9tIHRlY2huaXF1ZScsXG4gICAgICAgICAgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbicsXG4gICAgICAgICAgZmllbGQ6ICdUeXBlJyxcbiAgICAgICAgICBjYXRlZ29yeTogJ0NhdMOpZ29yaWUnLFxuICAgICAgICAgIG11bHRpVmFsdWVkOiAnTXVsdGkgdmFsdcOpJ1xuICAgICAgICB9LFxuICAgICAgICBjYXRlZ29yeToge1xuICAgICAgICAgIHNlbGVjdDogJ1PDqWxlY3Rpb25uZXIgdW5lIGNhdMOpZ29yaWUnLFxuICAgICAgICAgIHNlYXJjaE9yQ3JlYXRlOiAnUmVjaGVyY2hlciB1bmUgY2F0w6lnb3JpZSBleGlzdGFudGUgT1UgZW4gY3LDqWVyIHVuZSBub3V2ZWxsZScsXG4gICAgICAgICAgbmFtZTogJ0NhdMOpZ29yaWUnLFxuICAgICAgICAgIHNlbGVjdEl0OiAnU8OpbGVjdGlvbm5lciBsYSBjYXTDqWdvcmllJyxcbiAgICAgICAgICBjcmVhdGU6ICdDcsOpZXIgbGEgY2F0w6lnb3JpZScsXG4gICAgICAgICAgYWRkOiBcIm4nZXhpc3RlIHBhcyBlbmNvcmUuIDxicj5JbCBlc3QgcG9zc2libGUgXFxuIGRlIGxhIGNyw6llciBpY2kuIDxicj5FbGxlIHNlcmEgYXV0b21hdGlxdWVtZW50IHPDqWxlY3Rpb25uw6llIGV0IGFqb3V0w6llIMOgIGxhIGxpc3RlIGRlcyBjYXTDqWdvcmllcy5cIlxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgZmllbGRzOiB7XG4gICAgICAgIGFkZDogJ0Nyw6llciB1biBub3V2ZWF1IHR5cGUgbcOpdGllcicsXG4gICAgICAgIGNyczogJ0NSUyAoY29kZSBFUFNHKSA6JyxcbiAgICAgICAgaW5mbzogJ0TDqXRhaWwgZHUgdHlwZSBtw6l0aWVyJyxcbiAgICAgICAgbGlzdDogJ1R5cGVzIG3DqXRpZXInLFxuICAgICAgICBlZGl0OiAnTW9kaWZpZXIgbGUgdHlwZSBtw6l0aWVyJyxcbiAgICAgICAgbmFtZTogJ05vbScsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24nLFxuICAgICAgICB0eXBlOiAnVHlwZSB0ZWNobmlxdWUnLFxuICAgICAgICBhdHRyaWJ1dGVzOiAnUHLDqXNlbmNlIGRhbnMgZGVzIGF0dHJpYnV0cycsXG4gICAgICAgIGF0dHJpYnV0ZXNUYWI6ICdBdHRyaWJ1dHMnLFxuICAgICAgICBhdHRyaWJ1dGVOYW1lOiBcIk5vbSBkJ2F0dHJpYnV0XCIsXG4gICAgICAgIGNsYXNzTmFtZTogJ0NsYXNzZScsXG4gICAgICAgIGNvbmZpcm1GaWVsZERlbGV0aW9uOiAnQ29uZmlybWV6LXZvdXMgbGEgc3VwcHJlc3Npb24gZGUgY2UgdHlwZSBtw6l0aWVyID8nLFxuICAgICAgICBmaWVsZFR5cGU6IHtcbiAgICAgICAgICBpbnQ6ICdOb21icmUgZW50aWVyJyxcbiAgICAgICAgICBsb25nOiAnTm9tYnJlIGVudGllciBsb25nJyxcbiAgICAgICAgICBkZWNpbWFsOiAnTm9tYnJlIGTDqWNpbWFsJyxcbiAgICAgICAgICBzdHJpbmc6ICdUZXh0ZSBicnV0JyxcbiAgICAgICAgICBrZXl3b3JkOiAnVGV4dGUgaW5kZXjDqScsXG4gICAgICAgICAgaW5zdGFudDogJ0RhdGUnLFxuICAgICAgICAgIHJhdzogJ0Rvbm7DqWUgbm9uIHN0cnVjdHVyw6llJyxcbiAgICAgICAgICBwb2ludDogJ1BvaW50JyxcbiAgICAgICAgICBtdWx0aXBvaW50OiAnTXVsdGktcG9pbnRzJyxcbiAgICAgICAgICBsaW5lOiAnTGlnbmUnLFxuICAgICAgICAgIG11bHRpbGluZTogJ011bHRpLWxpZ25lcycsXG4gICAgICAgICAgcG9seWdvbjogJ1BvbHlnb25lJyxcbiAgICAgICAgICBtdWx0aXBvbHlnb246ICdNdWx0aS1wb2x5Z29uZXMnLFxuICAgICAgICAgIGluZm9ybWF0aW9uOiB7XG4gICAgICAgICAgICBpbnQ6ICdQZXJtZXQgZGUgc3RvY2tlciBkZXMgZG9ubsOpZXMgbnVtw6lyaXF1ZXMgZW50acOocmVzIGluZsOpcmlldXJlcyDDoCAyXjMyJyxcbiAgICAgICAgICAgIGxvbmc6ICdQZXJtZXQgZGUgc3RvY2tlciBkZXMgZG9ubsOpZXMgbnVtw6lyaXF1ZXMgZW50acOocmVzIHBvdXZhbnQgZMOpcGFzc2VyIDJeMzInLFxuICAgICAgICAgICAgZGVjaW1hbDogJ1Blcm1ldCBkZSBzdG9ja2VyIGRlcyBkb25uw6llcyBudW3DqXJpcXVlcyBhdmVjIGRlcyBkw6ljaW1hbGVzJyxcbiAgICAgICAgICAgIHN0cmluZzpcbiAgICAgICAgICAgICAgXCJQZXJtZXQgZGUgc3RvY2tlciBkZXMgZG9ubsOpZXMgYXUgZm9ybWF0IGFscGhhbnVtw6lyaXF1ZS4gQ2VzIGRvbm7DqWVzIG5lIHNvbnQgcGFzIGluZGV4w6llcyA6IGlsIGVzdCBwb3NzaWJsZSBkZSBmYWlyZSB1bmUgcmVjaGVyY2hlIGRlc3N1cyBtYWlzIHBhcyBkJ2FncsOpZ2F0aW9uXCIsXG4gICAgICAgICAgICBrZXl3b3JkOlxuICAgICAgICAgICAgICAnUGVybWV0IGRlIHN0b2NrZXIgZGVzIGRvbm7DqWVzIGF1IGZvcm1hdCBhbHBoYW51bcOpcmlxdWUuIENlcyBkb25uw6llcyBzb250IGluZGV4w6llcyA6IGlsIGVzdCBwb3NzaWJsZSBkZSBmYWlyZSB1bmUgcmVjaGVyY2hlIGRlc3N1cyBhaW5zaSBxdWUgZGVzIGFncsOpZ2F0aW9ucy4nLFxuICAgICAgICAgICAgaW5zdGFudDogJ1Blcm1ldCBkZSBzdG9ja2VyIHVuZSBkYXRlJyxcbiAgICAgICAgICAgIHJhdzogJ3Blcm1ldCBkZSBzdG9ja2VyIGRlcyBkb25uw6llcyBkZSB0eXBlIGltYWdlIG91IGZpY2hpZXInLFxuICAgICAgICAgICAgcG9pbnQ6XG4gICAgICAgICAgICAgIFwiUGVybWV0IGRlIHN0b2NrZXIgZGVzIGNvb3Jkb25uw6llcyBnw6lvZ3JhcGhpcXVlcyBkJ3VuIG9iamV0IHJlcHLDqXNlbnTDqSBwYXIgdW4gcG9pbnQgKGZvcm1hdCBnw6lvanNvbilcIixcbiAgICAgICAgICAgIG11bHRpcG9pbnQ6XG4gICAgICAgICAgICAgIFwiUGVybWV0IGRlIHN0b2NrZXIgZGVzIGNvb3Jkb25uw6llcyBnw6lvZ3JhcGhpcXVlcyBkJ3VuIG9iamV0IGNvbXBvc8OpIGRlIHBsdXNpZXVycyBwb2ludHMgbm9uIHJlbGnDqXMgKGZvcm1hdCBnw6lvanNvbilcIixcbiAgICAgICAgICAgIGxpbmU6IFwiUGVybWV0IGRlIHN0b2NrZXIgZGVzIGNvb3Jkb25uw6llcyBnw6lvZ3JhcGhpcXVlcyBkJ3VuIG9iamV0IHJlcHLDqXNlbnTDqSBjb21tZSB1bmUgbGlnbmUgKGZvcm1hdCBnw6lvanNvbilcIixcbiAgICAgICAgICAgIG11bHRpbGluZTpcbiAgICAgICAgICAgICAgXCJQZXJtZXQgZGUgc3RvY2tlciBkZXMgY29vcmRvbm7DqWVzIGfDqW9ncmFwaGlxdWVzIGQndW4gb2JqZXQgcmVwcsOpc2VudMOpIGF2ZWMgcGx1c2lldXJzIGxpZ25lcyBub24gcmVsacOpZXMgZW50cmUgZWxsZXMgKGxvbmdpdHVkZSBldCBsYXRpdHVkZSBmb3JtYXQgZ8Opb2pzb24pXCIsXG4gICAgICAgICAgICBwb2x5Z29uOlxuICAgICAgICAgICAgICBcIlBlcm1ldCBkZSBzdG9ja2VyIGRlcyBjb29yZG9ubsOpZXMgZ8Opb2dyYXBoaXF1ZXMgZCd1biBvYmpldCByZXByw6lzZW50w6kgcGFyIHVuIHBvbHlnb25lIChmb3JtYXQgZ8Opb2pzb24pXCIsXG4gICAgICAgICAgICBtdWx0aXBvbHlnb246XG4gICAgICAgICAgICAgIFwiUGVybWV0IGRlIHN0b2NrZXIgZGVzIGNvb3Jkb25uw6llcyBnw6lvZ3JhcGhpcXVlcyBkJ3VuIG9iamV0IHJlcHLDqXNlbnTDqSBwYXIgcGx1c2lldXJzIHBvbHlnb25lcyBpbWJyaXF1w6lzIG91IG5vbiAoZm9ybWF0IGfDqW9qc29uKVwiXG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICByYXdNZXRob2RzOiB7XG4gICAgICAgICAgaHR0cDogJ0RlcHVpcyB1bmUgdXJsJyxcbiAgICAgICAgICB1cGxvYWQ6ICdUw6lsw6l2ZXJzZXIgZGVwdWlzIG1vbiBvcmRpbmF0ZXVyJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgdXNlckluZm86IHtcbiAgICAgICAgbGlzdDogJ1V0aWxpc2F0ZXVycycsXG4gICAgICAgIGluZm86IFwiRMOpdGFpbCBkZSBsJ3V0aWxpc2F0ZXVyXCIsXG4gICAgICAgIHByb2ZpbGU6ICdQcm9maWwnLFxuICAgICAgICBhZGRNZXRhZGF0YTogJ0Fqb3V0ZXInLFxuICAgICAgICBlZGl0TWV0YWRhdGE6ICdNb2RpZmllciBsYSBtw6l0YWRvbm7DqWUnLFxuICAgICAgICBuYW1lOiAnUHLDqW5vbScsXG4gICAgICAgIGZhbWlseU5hbWU6ICdOb20gZGUgZmFtaWxsZScsXG4gICAgICAgIGVtYWlsOiAnQWRyZXNzZSBtYWlsJyxcbiAgICAgICAgbWV0YWRhdGE6ICdNw6l0YWRvbm7DqWVzJyxcbiAgICAgICAgcm9sZXM6ICcgUsO0bGVzJ1xuICAgICAgfSxcbiAgICAgIHJlbGF0aW9uVHlwZXM6IHtcbiAgICAgICAgbGlzdDogJ1R5cGVzIGRlIHJlbGF0aW9ucycsXG4gICAgICAgIGFkZDogJ0Fqb3V0ZXIgbGUgdHlwZSBkZSByZWxhdGlvbicsXG4gICAgICAgIGVkaXQ6ICdNb2RpZmllciBsZSB0eXBlIGRlIHJlbGF0aW9uJyxcbiAgICAgICAgaW5mbzogJ0TDqXRhaWwgZHUgdHlwZSBkZSByZWxhdGlvbicsXG4gICAgICAgIG5hbWU6ICdOb20nLFxuICAgICAgICBuYlJlbGF0aW9uOiAnTm9tYnJlIGRlIHJlbGF0aW9ucyBkZSBjZSB0eXBlJyxcbiAgICAgICAgbmJMaW5rOiAnTm9tYnJlIGRlIGxpZW5zIHV0aWxpc2FudCBjZSB0eXBlIGRlIHJlbGF0aW9uJyxcbiAgICAgICAgZGF0ZU1vZGlmaWNhdGlvbjogJ0RhdGUgZGUgbW9kaWZpY2F0aW9uJyxcbiAgICAgICAgZGVsZXRhYmxlOiAnUGV1dCDDqnRyZSBzdXBwcmltw6knLFxuICAgICAgICBkZWxldGVNb2RhbE1lc3NhZ2U6ICdDZSB0eXBlIGRlIHJlbGF0aW9uIG5lIHBldXQgw6p0cmUgc3VwcHJpbcOpIGNhciB1dGlsaXPDqS4nXG4gICAgICB9LFxuICAgICAgbGlua3M6IHtcbiAgICAgICAgbGlzdDogJ0xpZW5zIGVudHJlIGF0dHJpYnV0cycsXG4gICAgICAgIGFkZDogJ0Fqb3V0ZXIgdW4gbm91dmVhdSBsaWVuIGVudHJlIGF0dHJpYnV0cycsXG4gICAgICAgIGNsYXNzU291cmNlOiAnTW9kw6hsZSBtw6l0aWVyIHNvdXJjZScsXG4gICAgICAgIGF0dHJpYnV0ZVNvdXJjZTogJ0F0dHJpYnV0IHNvdXJjZScsXG4gICAgICAgIGNsYXNzRGVzdGluYXRpb246ICdNb2TDqGxlIG3DqXRpZXIgZGUgZGVzdGluYXRpb24nLFxuICAgICAgICBhdHRyaWJ1dGVEZXN0aW5hdGlvbjogJ0F0dHJpYnV0IGRlIGRlc3RpbmF0aW9uJyxcbiAgICAgICAgcmVsYXRpb25UeXBlOiAnVHlwZSBkZSByZWxhdGlvbicsXG4gICAgICAgIHNlbGVjdFJlbGF0aW9uVHlwZTogJ1NlbGVjdGlvbm5leiB1biB0eXBlIGRlIHJlbGF0aW9uJ1xuICAgICAgfSxcbiAgICAgIGFzc29jaWF0aW9uOiB7XG4gICAgICAgIEFCQUM6ICdSw6hnbGUgQUJBQycsXG4gICAgICAgIExJTks6ICdSZWxhdGlvbicsXG4gICAgICAgIE5BTUVEX1FVRVJZOiAnUmVxdcOqdGUgbm9tbcOpZScsXG4gICAgICAgIFdJREdFVDogJ1Jlc3RpdHV0aW9uJyxcbiAgICAgICAgREFUQVNFVDogJ0pldSBkZSBkb25uw6llcycsXG4gICAgICAgIE9DTEFTUzogJ01vZMOobGUgZGUgZG9ubsOpZXMnLFxuICAgICAgICBEQVNIQk9BUkQ6ICdQcsOpc2VudGF0aW9uJyxcbiAgICAgICAgRklFTEQ6ICdUeXBlIG3DqXRpZXInXG4gICAgICB9LFxuICAgICAgc3RvcmFnZToge1xuICAgICAgICBsYWJlbDogJ0Jhc2UgZGUgc3RvY2thZ2UnLFxuICAgICAgICBkZXNjcmlwdGlvbjoge1xuICAgICAgICAgIFBPU1RHSVM6XG4gICAgICAgICAgICBcIkNlIHN0b2NrYWdlIGVzdCBjb25zZWlsbMOpIGVuIGNhcyBkZSBzdG9ja2FnZSBkZSBkb25uw6llcyBnw6lvZ3JhcGhpcXVlIGNvbXBsZXhlcyBvdSBkYW5zIGRlcyBzeXN0w6htZXMgZGUgY29vcmRvbm7DqWVzIGRpZmbDqXJlbnRzIGRlIFdHUyA4NC4gSWwgZXN0IHJlY29tbWFuZMOpIGRlIG5lIHN0b2NrZXIgZGFucyBjZXR0ZSBiYXNlIHF1ZSBkZXMgbW9kw6hsZXMgbcOpdGllciBkb250IGxhIHZvbHVtw6l0cmllIGRlIGRvbm7DqWVzIGVzdGltw6llIChlbiB0ZXJtZSBkZSBub21icmUgZCdpdGVtcykgbidlc3QgcGFzIHRyb3Agw6lsZXbDqWUuXCIsXG4gICAgICAgICAgRUxBU1RJQzpcbiAgICAgICAgICAgIFwiQ2Ugc3RvY2thZ2UgZXN0IGNvbnNlaWxsw6kgZW4gY2FzIGRlIGZvcnRlIHZvbHVtw6l0cmllIGRlIGRvbm7DqWVzIHByw6l2dWUgcG91ciBjZSBtb2TDqGxlIG3DqXRpZXIgKGdyYW5kIG5vbWJyZSBkJ2l0ZW1zKS4gU2kgdm91cyBzb3VoYWl0ZXogc3RvY2tlciBkZXMgZG9ubsOpZXMgZ8Opb2dyYXBoaXF1ZXMgZGFucyBjZSBtb2TDqGxlLCBkZXMgZm9ybWVzIHNpbXBsZXMgc29udCBjb25zZWlsbMOpZXMgZXQgbGUgc3lzdMOobWUgZGUgY29vcmRvbm7DqWVzIGRlIHLDqWbDqXJlbmNlIHV0aWxpc8OpIGRvaXQgw6p0cmUgV0dTIDg0LiBDZSBzeXN0w6htZSBkZSBzdG9ja2FnZSBvZmZyZSB1bmUgc2NhbGFiaWxpdMOpIGhvcml6b250YWxlXCJcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIFBPU1RHSVM6ICdQb3N0R0lTJyxcbiAgICAgICAgICBFTEFTVElDOiAnRWxhc3RpY1NlYXJjaCdcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgdG9vbHRpcDoge1xuICAgICAgZGVmYXVsdDogJ1Rvb2x0aXAgcGFyIGTDqWZhdXQnLFxuICAgICAgYXR0cmlidXRlOiAnVG9vbHRpcCBhZmZpY2hhbnQgY2VydGFpbnMgYXR0cmlidXRzJyxcbiAgICAgIGNsdXN0ZXI6ICdUb29sdGlwIHBvdXIgbGVzIGNsdXN0ZXJzIChncmFwaGVzKScsXG4gICAgICBsaW5rOiAnVG9vbHRpcCBwb3VyIGxlcyBsaWVucyAoZ3JhcGhlcyknLFxuICAgICAgbm9uZTogJ1BhcyBkZSB0b29sdGlwJ1xuICAgIH1cbiAgfVxufTtcbiJdfQ==