@provoly/dashboard 0.23.2 → 0.23.4

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 (45) hide show
  1. package/admin/components/admin-dataset/admin-select-dataset/admin-select-dataset.component.d.ts +11 -7
  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 +9 -4
  5. package/esm2022/admin/i18n/fr.translations.mjs +3 -2
  6. package/esm2022/admin/store/admin.effects.mjs +2 -2
  7. package/esm2022/lib/core/components/share/group-share/group-share.component.mjs +28 -15
  8. package/esm2022/lib/core/components/share/share.model.mjs +1 -1
  9. package/esm2022/lib/core/components/share/share.utils.mjs +19 -0
  10. package/esm2022/lib/core/i18n/en.translations.mjs +7 -2
  11. package/esm2022/lib/core/i18n/fr.translations.mjs +7 -2
  12. package/esm2022/lib/core/public-api.mjs +2 -1
  13. package/esm2022/lib/core/store/data-source/data-source.actions.mjs +2 -2
  14. package/esm2022/lib/core/store/data-source/data-source.effects.mjs +2 -2
  15. package/esm2022/lib/core/store/data-source/data-source.reducer.mjs +3 -3
  16. package/esm2022/lib/core/store/data-source/data-source.selectors.mjs +3 -3
  17. package/esm2022/lib/core/store/data-source/data-source.service.mjs +1 -1
  18. package/esm2022/lib/dashboard/store/dashboard.effects.mjs +32 -9
  19. package/esm2022/lib/dashboard/store/manifest.service.mjs +14 -12
  20. package/esm2022/presentation/components/presentation.component.mjs +23 -4
  21. package/esm2022/toolbox/components/save-view/save-view.component.mjs +1 -1
  22. package/esm2022/toolbox/components/share/share.component.mjs +1 -1
  23. package/fesm2022/provoly-dashboard-admin.mjs +11 -5
  24. package/fesm2022/provoly-dashboard-admin.mjs.map +1 -1
  25. package/fesm2022/provoly-dashboard-presentation.mjs +22 -3
  26. package/fesm2022/provoly-dashboard-presentation.mjs.map +1 -1
  27. package/fesm2022/provoly-dashboard-toolbox.mjs +2 -2
  28. package/fesm2022/provoly-dashboard-toolbox.mjs.map +1 -1
  29. package/fesm2022/provoly-dashboard.mjs +107 -41
  30. package/fesm2022/provoly-dashboard.mjs.map +1 -1
  31. package/lib/core/components/share/group-share/group-share.component.d.ts +12 -3
  32. package/lib/core/components/share/share.model.d.ts +2 -2
  33. package/lib/core/components/share/share.utils.d.ts +4 -0
  34. package/lib/core/i18n/en.translations.d.ts +5 -0
  35. package/lib/core/i18n/fr.translations.d.ts +5 -0
  36. package/lib/core/public-api.d.ts +1 -0
  37. package/lib/core/store/data-source/data-source.actions.d.ts +5 -5
  38. package/lib/core/store/data-source/data-source.effects.d.ts +3 -3
  39. package/lib/core/store/data-source/data-source.reducer.d.ts +2 -2
  40. package/lib/core/store/data-source/data-source.selectors.d.ts +1 -1
  41. package/lib/dashboard/store/dashboard.effects.d.ts +2 -1
  42. package/lib/dashboard/store/manifest.service.d.ts +2 -5
  43. package/package.json +43 -43
  44. package/presentation/components/presentation.component.d.ts +5 -1
  45. package/styles-theme/components-theme/_a-btn.theme.scss +0 -1
@@ -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, SubscriptionnerDirective } from '@provoly/dashboard';
5
5
  import { MetaEventType } from '@provoly/dashboard/components/metadata-editor';
6
6
  import { 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,8 @@ export declare class AdminSelectDatasetComponent extends SubscriptionnerDirectiv
18
24
  datasetMetadata$: Observable<MetadataValue[]>;
19
25
  editable$: Observable<boolean>;
20
26
  accessGroups: string[];
21
- conflictGroups$: Observable<{
22
- [key: string]: {
23
- groups: string[];
24
- entityName: string;
25
- };
26
- } | undefined>;
27
+ selectedDatasetMissingGroups$: Observable<MissingGroupsByEntity | undefined>;
28
+ missingGroups$: Observable<MissingGroups | undefined>;
27
29
  constructor(store: Store<any>, router: Router, route: ActivatedRoute, i18n: PryI18nService);
28
30
  ngOnInit(): void;
29
31
  closePanel(): void;
@@ -31,6 +33,8 @@ export declare class AdminSelectDatasetComponent extends SubscriptionnerDirectiv
31
33
  addDatasetMetadata(metadata: MetaEventType): void;
32
34
  share(dataset: Dataset): void;
33
35
  getGroupLabel(groupName: string): string;
36
+ changeGroup($event: any[]): void;
34
37
  static ɵfac: i0.ɵɵFactoryDeclaration<AdminSelectDatasetComponent, never>;
35
38
  static ɵcmp: i0.ɵɵComponentDeclaration<AdminSelectDatasetComponent, "pry-admin-select-dataset", never, {}, {}, never, never, false, never>;
36
39
  }
40
+ 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>
@@ -28,7 +28,8 @@ export class AdminSelectDatasetComponent extends SubscriptionnerDirective {
28
28
  this.datasetMetadata$ = this.store.select(DataSourceSelectors.selectedDatasetMetadata);
29
29
  this.associations$ = this.store.select(AdminSelectors.selectedAssociation);
30
30
  this.editable$ = this.store.select(MetadataSelectors.editable);
31
- this.conflictGroups$ = this.store.select(DataSourceSelectors.selectedDatasetConflictGroups).pipe(withLatestFrom(this.store.select(DashboardSelectors.manifestsList)), map(([conflict, manifests]) => {
31
+ this.selectedDatasetMissingGroups$ = this.store.select(DataSourceSelectors.selectedDatasetMissingGroups);
32
+ this.missingGroups$ = this.selectedDatasetMissingGroups$.pipe(withLatestFrom(this.store.select(DashboardSelectors.manifestsList)), map(([conflict, manifests]) => {
32
33
  const result = {};
33
34
  Object.keys(conflict ?? {}).forEach((entityId) => {
34
35
  result[entityId] = {
@@ -117,11 +118,15 @@ export class AdminSelectDatasetComponent extends SubscriptionnerDirective {
117
118
  const label = this.i18n.instant(i18nBase + groupName);
118
119
  return label.startsWith(i18nBase) ? groupName : label;
119
120
  }
121
+ changeGroup($event) {
122
+ this.accessGroups = $event;
123
+ this.store.dispatch(DataSourceActions.dataset.setMissingGroups({ missingGroups: undefined }));
124
+ }
120
125
  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(conflictGroups$ | async; as conflictGroups) {\n <div class=\"u-display-flex -column\">\n <span>{{ '@pry.admin.dataset.conflict' | i18n }}</span>\n @for(conflict of conflictGroups | keyvalue; track conflict.key) {\n <div>\n {{ '@pry.admin.dataset.entities.dashboard' | i18n }} <strong>{{ conflict.value.entityName }}</strong>\n <div class=\"u-display-flex\">\n @for(group of conflict.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" }] }); }
126
+ 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)\"></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(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"] }, { 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
127
  }
123
128
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: AdminSelectDatasetComponent, decorators: [{
124
129
  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(conflictGroups$ | async; as conflictGroups) {\n <div class=\"u-display-flex -column\">\n <span>{{ '@pry.admin.dataset.conflict' | i18n }}</span>\n @for(conflict of conflictGroups | keyvalue; track conflict.key) {\n <div>\n {{ '@pry.admin.dataset.entities.dashboard' | i18n }} <strong>{{ conflict.value.entityName }}</strong>\n <div class=\"u-display-flex\">\n @for(group of conflict.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" }]
130
+ 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)\"></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(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
131
  }], ctorParameters: () => [{ type: i1.Store }, { type: i2.Router }, { type: i2.ActivatedRoute }, { type: i3.PryI18nService }] });
127
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4tc2VsZWN0LWRhdGFzZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvYWRtaW4vY29tcG9uZW50cy9hZG1pbi1kYXRhc2V0L2FkbWluLXNlbGVjdC1kYXRhc2V0L2FkbWluLXNlbGVjdC1kYXRhc2V0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2FkbWluL2NvbXBvbmVudHMvYWRtaW4tZGF0YXNldC9hZG1pbi1zZWxlY3QtZGF0YXNldC9hZG1pbi1zZWxlY3QtZGF0YXNldC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUc3RCxPQUFPLEVBRUwsa0JBQWtCLEVBRWxCLGlCQUFpQixFQUNqQixtQkFBbUIsRUFHbkIsd0JBQXdCLEVBQ3pCLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBaUIsTUFBTSwrQ0FBK0MsQ0FBQztBQUNsSCxPQUFPLEVBQUUsR0FBRyxFQUFjLFlBQVksRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzVELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7Ozs7Ozs7O0FBTWhFLE1BQU0sT0FBTywyQkFBNEIsU0FBUSx3QkFBd0I7YUFDaEUsT0FBRSxHQUFHLDZCQUE2QixBQUFoQyxDQUFpQztJQVUxQyxZQUNVLEtBQWlCLEVBQ2pCLE1BQWMsRUFDZCxLQUFxQixFQUNyQixJQUFvQjtRQUU1QixLQUFLLEVBQUUsQ0FBQztRQUxBLFVBQUssR0FBTCxLQUFLLENBQVk7UUFDakIsV0FB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Q0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQWdCO1FBQ3BCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUNqQixpQkFBaUIsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsT0FBTyxFQUFFLEVBQUUsR0FBRyxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxZQUFZLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FDcEcsQ0FBQztJQUNKLENBQUM7SUFFRCxhQUFhLENBQUMsU0FBaUI7UUFDN0IsTUFBTSxRQUFRLEdBQUcsNkNBQTZDLENBQUM7UUFDL0QsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxHQUFHLFNBQVMsQ0FBQyxDQUFDO1FBQ3RELE9BQU8sS0FBSyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDeEQsQ0FBQzs4R0FySVUsMkJBQTJCO2tHQUEzQiwyQkFBMkIsdUZDdEJ4QyxnckZBaUVBOzsyRkQzQ2EsMkJBQTJCO2tCQUp2QyxTQUFTOytCQUNFLDBCQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQge1xuICBBc3NvY2lhdGlvbnMsXG4gIERhc2hib2FyZFNlbGVjdG9ycyxcbiAgRGF0YXNldCxcbiAgRGF0YVNvdXJjZUFjdGlvbnMsXG4gIERhdGFTb3VyY2VTZWxlY3RvcnMsXG4gIE1ldGFkYXRhVmFsdWUsXG4gIFByeUkxOG5TZXJ2aWNlLFxuICBTdWJzY3JpcHRpb25uZXJEaXJlY3RpdmVcbn0gZnJvbSAnQHByb3ZvbHkvZGFzaGJvYXJkJztcbmltcG9ydCB7IE1ldGFkYXRhQWN0aW9ucywgTWV0YWRhdGFTZWxlY3RvcnMsIE1ldGFFdmVudFR5cGUgfSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQvY29tcG9uZW50cy9tZXRhZGF0YS1lZGl0b3InO1xuaW1wb3J0IHsgbWFwLCBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24sIHdpdGhMYXRlc3RGcm9tIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBZG1pbkFjdGlvbnMgfSBmcm9tICcuLi8uLi8uLi9zdG9yZS9hZG1pbi5hY3Rpb25zJztcbmltcG9ydCB7IEFkbWluU2VsZWN0b3JzIH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvYWRtaW4uc2VsZWN0b3JzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncHJ5LWFkbWluLXNlbGVjdC1kYXRhc2V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FkbWluLXNlbGVjdC1kYXRhc2V0LmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBBZG1pblNlbGVjdERhdGFzZXRDb21wb25lbnQgZXh0ZW5kcyBTdWJzY3JpcHRpb25uZXJEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHN0YXRpYyBpZCA9ICdBZG1pblNlbGVjdERhdGFzZXRDb21wb25lbnQnO1xuICBzZWxlY3RlZERhdGFzZXQkOiBPYnNlcnZhYmxlPERhdGFzZXQgfCBudWxsPjtcbiAgYXNzb2NpYXRpb25zJDogT2JzZXJ2YWJsZTxBc3NvY2lhdGlvbnMgfCB1bmRlZmluZWQ+O1xuICBzdWIgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG4gIGN1cnJlbnRUeXBlVHJhbnNsYXRpb24gPSAnJztcbiAgZGF0YXNldE1ldGFkYXRhJDogT2JzZXJ2YWJsZTxNZXRhZGF0YVZhbHVlW10+O1xuICBlZGl0YWJsZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIGFjY2Vzc0dyb3Vwczogc3RyaW5nW10gPSBbXTtcbiAgY29uZmxpY3RHcm91cHMkOiBPYnNlcnZhYmxlPHsgW2tleTogc3RyaW5nXTogeyBncm91cHM6IHN0cmluZ1tdOyBlbnRpdHlOYW1lOiBzdHJpbmcgfSB9IHwgdW5kZWZpbmVkPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHN0b3JlOiBTdG9yZTxhbnk+LFxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSBpMThuOiBQcnlJMThuU2VydmljZVxuICApIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goTWV0YWRhdGFBY3Rpb25zLmxvYWRNZXRhZGF0YSgpKTtcbiAgICB0aGlzLnNlbGVjdGVkRGF0YXNldCQgPSB0aGlzLnN0b3JlLnNlbGVjdChEYXRhU291cmNlU2VsZWN0b3JzLnNlbGVjdGVkRGF0YXNldCk7XG4gICAgdGhpcy5kYXRhc2V0TWV0YWRhdGEkID0gdGhpcy5zdG9yZS5zZWxlY3QoRGF0YVNvdXJjZVNlbGVjdG9ycy5zZWxlY3RlZERhdGFzZXRNZXRhZGF0YSk7XG4gICAgdGhpcy5hc3NvY2lhdGlvbnMkID0gdGhpcy5zdG9yZS5zZWxlY3QoQWRtaW5TZWxlY3RvcnMuc2VsZWN0ZWRBc3NvY2lhdGlvbik7XG4gICAgdGhpcy5lZGl0YWJsZSQgPSB0aGlzLnN0b3JlLnNlbGVjdChNZXRhZGF0YVNlbGVjdG9ycy5lZGl0YWJsZSk7XG4gICAgdGhpcy5jb25mbGljdEdyb3VwcyQgPSB0aGlzLnN0b3JlLnNlbGVjdChEYXRhU291cmNlU2VsZWN0b3JzLnNlbGVjdGVkRGF0YXNldENvbmZsaWN0R3JvdXBzKS5waXBlKFxuICAgICAgd2l0aExhdGVzdEZyb20odGhpcy5zdG9yZS5zZWxlY3QoRGFzaGJvYXJkU2VsZWN0b3JzLm1hbmlmZXN0c0xpc3QpKSxcbiAgICAgIG1hcCgoW2NvbmZsaWN0LCBtYW5pZmVzdHNdKSA9PiB7XG4gICAgICAgIGNvbnN0IHJlc3VsdDogeyBba2V5OiBzdHJpbmddOiB7IGdyb3Vwczogc3RyaW5nW107IGVudGl0eU5hbWU6IHN0cmluZyB9IH0gPSB7fTtcbiAgICAgICAgT2JqZWN0LmtleXMoY29uZmxpY3QgPz8ge30pLmZvckVhY2goKGVudGl0eUlkKSA9PiB7XG4gICAgICAgICAgcmVzdWx0W2VudGl0eUlkXSA9IHtcbiAgICAgICAgICAgIGdyb3VwczogY29uZmxpY3Q/LltlbnRpdHlJZF0gPz8gW10sXG4gICAgICAgICAgICBlbnRpdHlOYW1lOiBtYW5pZmVzdHMuZmluZCgobSkgPT4gbS5pZCA9PT0gZW50aXR5SWQpPy5uYW1lID8/IGVudGl0eUlkXG4gICAgICAgICAgfTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBPYmplY3Qua2V5cyhyZXN1bHQpLmxlbmd0aCA+IDAgPyByZXN1bHQgOiB1bmRlZmluZWQ7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMuYWRkKFxuICAgICAgdGhpcy5zZWxlY3RlZERhdGFzZXQkLnN1YnNjcmliZSgoZGF0YXNldCkgPT4ge1xuICAgICAgICBpZiAoZGF0YXNldCkge1xuICAgICAgICAgIHRoaXMuYWNjZXNzR3JvdXBzID0gZGF0YXNldD8uZ3JvdXBzID8/IFtdO1xuICAgICAgICAgIGNvbnN0IGVkaXRQYXRoID0gdGhpcy5yb3V0ZXIuY3JlYXRlVXJsVHJlZShbJy4nLCAnZGF0YXNldCcsICdlZGl0JywgZGF0YXNldC5pZF0sIHtcbiAgICAgICAgICAgIHJlbGF0aXZlVG86IHRoaXMucm91dGVcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBpZiAoZGF0YXNldC5vd25lcikge1xuICAgICAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgICAgICAgQWRtaW5BY3Rpb25zLm1haW5BY3Rpb25zKHtcbiAgICAgICAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbjogQWRtaW5BY3Rpb25zLnJvdXRlVG8oeyBwYXRoOiBlZGl0UGF0aC50b1N0cmluZygpIH0pLFxuICAgICAgICAgICAgICAgICAgICBsYWJlbDogJ2VkaXQnLFxuICAgICAgICAgICAgICAgICAgICBpY29uOiAnZWRpdCcsXG4gICAgICAgICAgICAgICAgICAgIG1vZHVsZUFjY2VzczogJ2FkbWluJyxcbiAgICAgICAgICAgICAgICAgICAgcGFnZUFjY2VzczogJ2RhdGFzZXQnLFxuICAgICAgICAgICAgICAgICAgICBhY3Rpb25BY2Nlc3M6ICd3cml0ZSdcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbjogRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5jb25maXJtRGF0YVNvdXJjZURlbGV0aW9uKHtcbiAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBkYXRhc2V0LmlkLFxuICAgICAgICAgICAgICAgICAgICAgIHJvdXRlOiB0aGlzLnJvdXRlci5jcmVhdGVVcmxUcmVlKFsnLicsICdkYXRhc2V0J10sIHsgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZSB9KS50b1N0cmluZygpLFxuICAgICAgICAgICAgICAgICAgICAgIGFkZFJvdXRlOiB0aGlzLnJvdXRlclxuICAgICAgICAgICAgICAgICAgICAgICAgLmNyZWF0ZVVybFRyZWUoWycuJywgJ2RhdGFzZXQnLCAnbmV3J10sIHsgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZSB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgLnRvU3RyaW5nKClcbiAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsOiAnZGVsZXRlJyxcbiAgICAgICAgICAgICAgICAgICAgaWNvbjogJ2RlbGV0ZScsXG4gICAgICAgICAgICAgICAgICAgIG1vZHVsZUFjY2VzczogJ2FkbWluJyxcbiAgICAgICAgICAgICAgICAgICAgcGFnZUFjY2VzczogJ2RhdGFzZXQnLFxuICAgICAgICAgICAgICAgICAgICBhY3Rpb25BY2Nlc3M6ICd3cml0ZSdcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgICAgICBBZG1pbkFjdGlvbnMubWFpbkFjdGlvbnMoe1xuICAgICAgICAgICAgICAgIGFjdGlvbnM6IFtdXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgY2xvc2VQYW5lbCgpIHtcbiAgICBjb25zdCBwYXRoID0gdGhpcy5yb3V0ZXIuY3JlYXRlVXJsVHJlZShbJy4nLCAnZGF0YXNldCcsICduZXcnXSwgeyByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlIH0pO1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC51bnNlbGVjdERhdGFzZXQoKSk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChBZG1pbkFjdGlvbnMudG9nZ2xlUGFuZWwoeyBwYW5lbE9wZW46IGZhbHNlIH0pKTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgQWRtaW5BY3Rpb25zLm1haW5BY3Rpb25zKHtcbiAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGFjdGlvbjogQWRtaW5BY3Rpb25zLnJvdXRlVG8oeyBwYXRoOiBwYXRoLnRvU3RyaW5nKCkgfSksXG4gICAgICAgICAgICBsYWJlbDogJ2FkZCcsXG4gICAgICAgICAgICBpY29uOiAnYWRkX2NvbHVtbicsXG4gICAgICAgICAgICBtb2R1bGVBY2Nlc3M6ICdhZG1pbicsXG4gICAgICAgICAgICBwYWdlQWNjZXNzOiAnbWV0YWRhdGFfcnVsZXMnLFxuICAgICAgICAgICAgYWN0aW9uQWNjZXNzOiAnd3JpdGUnXG4gICAgICAgICAgfVxuICAgICAgICBdXG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICByZW1vdmVNZXRhZGF0YShtZXRhZGF0YTogTWV0YUV2ZW50VHlwZSkge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICBNZXRhZGF0YUFjdGlvbnMuZGVsZXRlRGF0YXNldE1ldGFkYXRhKHsgZGF0YXNldElkOiBtZXRhZGF0YS5pZCwgbWV0YWRhdGFJZDogbWV0YWRhdGEubWV0YWRhdGFJZCB9KVxuICAgICk7XG4gIH1cblxuICBhZGREYXRhc2V0TWV0YWRhdGEobWV0YWRhdGE6IE1ldGFFdmVudFR5cGUpIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgTWV0YWRhdGFBY3Rpb25zLmFkZERhdGFzZXRNZXRhZGF0YSh7XG4gICAgICAgIGRhdGFzZXRJZDogbWV0YWRhdGEuaWQsXG4gICAgICAgIG1ldGFkYXRhSWQ6IG1ldGFkYXRhLm1ldGFkYXRhSWQsXG4gICAgICAgIHZhbHVlOiBtZXRhZGF0YS52YWx1ZVxuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgc2hhcmUoZGF0YXNldDogRGF0YXNldCkge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICBEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LnVwZGF0ZSh7IGRhdGFzZXQ6IHsgLi4uZGF0YXNldCwgZ3JvdXBzOiB0aGlzLmFjY2Vzc0dyb3VwcyB9LCByb3V0ZTogJycgfSlcbiAgICApO1xuICB9XG5cbiAgZ2V0R3JvdXBMYWJlbChncm91cE5hbWU6IHN0cmluZykge1xuICAgIGNvbnN0IGkxOG5CYXNlID0gJ0BwcnkuY29tcG9uZW50cy5jaGlwc1NlbGVjdG9yLnNoYXJlLmdyb3Vwcy4nO1xuICAgIGNvbnN0IGxhYmVsID0gdGhpcy5pMThuLmluc3RhbnQoaTE4bkJhc2UgKyBncm91cE5hbWUpO1xuICAgIHJldHVybiBsYWJlbC5zdGFydHNXaXRoKGkxOG5CYXNlKSA/IGdyb3VwTmFtZSA6IGxhYmVsO1xuICB9XG59XG4iLCI8ZGl2XG4gICpuZ0lmPVwic2VsZWN0ZWREYXRhc2V0JCB8IGFzeW5jIGFzIGRhdGFzZXRcIlxuICBbaWRdPVwiJ3BhbmVsLWRhdGFzZXQtJyArIGRhdGFzZXQuaWRcIlxuICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiJ2J1dHRvbi1kYXRhc2V0LScgKyBkYXRhc2V0LmlkXCJcbiAgY2xhc3M9XCJvLXBhbmVsIG8tcHJ5LWFkbWluLWRhdGFzZXQtc2VsZWN0XCJcbj5cbiAgPGRpdiBjbGFzcz1cIm8tcGFuZWxfX2hlYWRlclwiPlxuICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYS1idG4gYS1idG4tLWljb24tb25seVwiIChjbGljayk9XCJjbG9zZVBhbmVsKClcIj5cbiAgICAgIDxzcGFuIGNsYXNzPVwidS12aXN1YWxseS1oaWRkZW5cIj57eyAnQHByeS5hY3Rpb24uY2xvc2VQYW5lbCcgfCBpMThuIH19PC9zcGFuPlxuICAgICAgPHByeS1pY29uIGljb25Tdmc9XCJjbG9zZVwiPjwvcHJ5LWljb24+XG4gICAgPC9idXR0b24+XG5cbiAgICA8aDMgY2xhc3M9XCJhLWgzXCI+XG4gICAgICB7eyAnQHByeS5hZG1pbi5kYXRhc2V0LmRldGFpbHMnIHwgaTE4biB9fVxuICAgIDwvaDM+XG4gIDwvZGl2PlxuXG4gIDxwcnktdGFiLWdyb3VwIHRyYW5zbGF0aW9uU3RyaW5nQmFzZT1cIkBwcnkuYWRtaW4uXCI+XG4gICAgPHByeS10YWIgW3RlbXBsYXRlUmVmXT1cImRhdGFzZXRNZXRhZGF0YVwiIG5hbWU9XCJtZXRhZGF0YS50aXRsZVwiPjwvcHJ5LXRhYj5cbiAgICA8cHJ5LXRhYiBbdGVtcGxhdGVSZWZdPVwiZGF0YXNldEFzc29jaWF0aW9uc1wiIG5hbWU9XCJjbGFzc2VzLmFzc29jaWF0aW9uc1wiPjwvcHJ5LXRhYj5cbiAgICA8cHJ5LXRhYiAqbmdJZj1cImRhdGFzZXQub3duZXJcIiBbdGVtcGxhdGVSZWZdPVwic2hhcmVEYXRhc2V0XCIgbmFtZT1cInNoYXJlXCI+PC9wcnktdGFiPlxuICA8L3ByeS10YWItZ3JvdXA+XG5cbiAgPG5nLXRlbXBsYXRlICNkYXRhc2V0TWV0YWRhdGE+XG4gICAgPHByeS1tZXRhZGF0YS1lZGl0b3JcbiAgICAgIFt0YXJnZXRJZF09XCIoc2VsZWN0ZWREYXRhc2V0JCB8IGFzeW5jKT8uaWQgPz8gJydcIlxuICAgICAgW2lzTW9kaWZpY2F0aW9uXT1cIihlZGl0YWJsZSQgfCBhc3luYykgPz8gZmFsc2VcIlxuICAgICAgW21ldGFkYXRhXT1cIihkYXRhc2V0TWV0YWRhdGEkIHwgYXN5bmMpID8/IFtdXCJcbiAgICAgIChyZW1vdmVNZXRhKT1cInJlbW92ZU1ldGFkYXRhKCRldmVudClcIlxuICAgICAgKGFkZE1ldGEpPVwiYWRkRGF0YXNldE1ldGFkYXRhKCRldmVudClcIlxuICAgICAgW3R5cGVdPVwiJ21ldGEnXCJcbiAgICA+PC9wcnktbWV0YWRhdGEtZWRpdG9yPlxuICA8L25nLXRlbXBsYXRlPlxuXG4gIDxuZy10ZW1wbGF0ZSAjZGF0YXNldEFzc29jaWF0aW9ucz5cbiAgICA8ZGl2ICpuZ0lmPVwiYXNzb2NpYXRpb25zJCB8IGFzeW5jIGFzIGFzc29jaWF0aW9uc1wiIGNsYXNzPVwiby10YWJzX19wYW5lbHNfX2l0ZW1fX2NvbnRlbnRcIj5cbiAgICAgIDxoNCBjbGFzcz1cImEtaDRcIj57eyAnQHByeS5hZG1pbi5jbGFzc2VzLmFzc29jaWF0aW9ucycgfCBpMThuIH19PC9oND5cbiAgICAgIDxwcnktYXNzb2NpYXRpb24gW2Fzc29jaWF0aW9uc109XCJhc3NvY2lhdGlvbnNcIj48L3ByeS1hc3NvY2lhdGlvbj5cbiAgICA8L2Rpdj5cbiAgPC9uZy10ZW1wbGF0ZT5cblxuICA8bmctdGVtcGxhdGUgI3NoYXJlRGF0YXNldD5cbiAgICA8ZGl2IGNsYXNzPVwiby1wcnktYWRtaW4tZGF0YXNldC1zZWxlY3RfX3NoYXJlXCI+XG4gICAgICA8cHJ5LWdyb3VwLXNoYXJlIFtuZ01vZGVsXT1cImRhdGFzZXQuZ3JvdXBzXCIgKG5nTW9kZWxDaGFuZ2UpPVwiYWNjZXNzR3JvdXBzID0gJGV2ZW50XCI+PC9wcnktZ3JvdXAtc2hhcmU+XG4gICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBjbGFzcz1cImEtYnRuIGEtYnRuLS1wcmltYXJ5IHUtc2VsZi1lbmRcIiAjc3VibWl0IChjbGljayk9XCJzaGFyZShkYXRhc2V0KVwiPlxuICAgICAgICB7eyAnQHByeS5hZG1pbi52YWxpZGF0ZScgfCBpMThuIH19XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIEBpZihjb25mbGljdEdyb3VwcyQgfCBhc3luYzsgYXMgY29uZmxpY3RHcm91cHMpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cInUtZGlzcGxheS1mbGV4IC1jb2x1bW5cIj5cbiAgICAgICAgICA8c3Bhbj57eyAnQHByeS5hZG1pbi5kYXRhc2V0LmNvbmZsaWN0JyB8IGkxOG4gfX08L3NwYW4+XG4gICAgICAgICAgQGZvcihjb25mbGljdCBvZiBjb25mbGljdEdyb3VwcyB8IGtleXZhbHVlOyB0cmFjayBjb25mbGljdC5rZXkpIHtcbiAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgIHt7ICdAcHJ5LmFkbWluLmRhdGFzZXQuZW50aXRpZXMuZGFzaGJvYXJkJyB8IGkxOG4gfX0gPHN0cm9uZz57eyBjb25mbGljdC52YWx1ZS5lbnRpdHlOYW1lIH19PC9zdHJvbmc+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1LWRpc3BsYXktZmxleFwiPlxuICAgICAgICAgICAgICAgIEBmb3IoZ3JvdXAgb2YgY29uZmxpY3QudmFsdWUuZ3JvdXBzOyB0cmFjayBncm91cCkge1xuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJhLWNoaXBcIj57eyBnZXRHcm91cExhYmVsKGdyb3VwKSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvZGl2PlxuIl19
132
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4tc2VsZWN0LWRhdGFzZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvYWRtaW4vY29tcG9uZW50cy9hZG1pbi1kYXRhc2V0L2FkbWluLXNlbGVjdC1kYXRhc2V0L2FkbWluLXNlbGVjdC1kYXRhc2V0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2FkbWluL2NvbXBvbmVudHMvYWRtaW4tZGF0YXNldC9hZG1pbi1zZWxlY3QtZGF0YXNldC9hZG1pbi1zZWxlY3QtZGF0YXNldC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUc3RCxPQUFPLEVBRUwsa0JBQWtCLEVBRWxCLGlCQUFpQixFQUNqQixtQkFBbUIsRUFJbkIsd0JBQXdCLEVBQ3pCLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBaUIsTUFBTSwrQ0FBK0MsQ0FBQztBQUNsSCxPQUFPLEVBQUUsR0FBRyxFQUFjLFlBQVksRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzVELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7Ozs7Ozs7O0FBVWhFLE1BQU0sT0FBTywyQkFBNEIsU0FBUSx3QkFBd0I7YUFDaEUsT0FBRSxHQUFHLDZCQUE2QixBQUFoQyxDQUFpQztJQVcxQyxZQUNVLEtBQWlCLEVBQ2pCLE1BQWMsRUFDZCxLQUFxQixFQUNyQixJQUFvQjtRQUU1QixLQUFLLEVBQUUsQ0FBQztRQUxBLFVBQUssR0FBTCxLQUFLLENBQVk7UUFDakIsV0FB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QVEsQ0FBQyxVQUFVO1lBQy9CLEtBQUssRUFBRSxRQUFRLENBQUMsS0FBSztTQUN0QixDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRCxLQUFLLENBQUMsT0FBZ0I7UUFDcEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQ2pCLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxPQUFPLEVBQUUsRUFBRSxHQUFHLE9BQU8sRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUNwRyxDQUFDO0lBQ0osQ0FBQztJQUVELGFBQWEsQ0FBQyxTQUFpQjtRQUM3QixNQUFNLFFBQVEsR0FBRyw2Q0FBNkMsQ0FBQztRQUMvRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEdBQUcsU0FBUyxDQUFDLENBQUM7UUFDdEQsT0FBTyxLQUFLLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUN4RCxDQUFDO0lBRUQsV0FBVyxDQUFDLE1BQWE7UUFDdkIsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUM7UUFDM0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNoRyxDQUFDOzhHQTVJVSwyQkFBMkI7a0dBQTNCLDJCQUEyQix1RkMzQnhDLCt5RkFvRUE7OzJGRHpDYSwyQkFBMkI7a0JBSnZDLFNBQVM7K0JBQ0UsMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7XG4gIEFzc29jaWF0aW9ucyxcbiAgRGFzaGJvYXJkU2VsZWN0b3JzLFxuICBEYXRhc2V0LFxuICBEYXRhU291cmNlQWN0aW9ucyxcbiAgRGF0YVNvdXJjZVNlbGVjdG9ycyxcbiAgTWV0YWRhdGFWYWx1ZSxcbiAgTWlzc2luZ0dyb3Vwc0J5RW50aXR5LFxuICBQcnlJMThuU2VydmljZSxcbiAgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlXG59IGZyb20gJ0Bwcm92b2x5L2Rhc2hib2FyZCc7XG5pbXBvcnQgeyBNZXRhZGF0YUFjdGlvbnMsIE1ldGFkYXRhU2VsZWN0b3JzLCBNZXRhRXZlbnRUeXBlIH0gZnJvbSAnQHByb3ZvbHkvZGFzaGJvYXJkL2NvbXBvbmVudHMvbWV0YWRhdGEtZWRpdG9yJztcbmltcG9ydCB7IG1hcCwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uLCB3aXRoTGF0ZXN0RnJvbSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQWRtaW5BY3Rpb25zIH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvYWRtaW4uYWN0aW9ucyc7XG5pbXBvcnQgeyBBZG1pblNlbGVjdG9ycyB9IGZyb20gJy4uLy4uLy4uL3N0b3JlL2FkbWluLnNlbGVjdG9ycyc7XG5cbmludGVyZmFjZSBNaXNzaW5nR3JvdXBzIHtcbiAgW2tleTogc3RyaW5nXTogeyBncm91cHM6IHN0cmluZ1tdOyBlbnRpdHlOYW1lOiBzdHJpbmcgfTtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncHJ5LWFkbWluLXNlbGVjdC1kYXRhc2V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FkbWluLXNlbGVjdC1kYXRhc2V0LmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBBZG1pblNlbGVjdERhdGFzZXRDb21wb25lbnQgZXh0ZW5kcyBTdWJzY3JpcHRpb25uZXJEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHN0YXRpYyBpZCA9ICdBZG1pblNlbGVjdERhdGFzZXRDb21wb25lbnQnO1xuICBzZWxlY3RlZERhdGFzZXQkOiBPYnNlcnZhYmxlPERhdGFzZXQgfCBudWxsPjtcbiAgYXNzb2NpYXRpb25zJDogT2JzZXJ2YWJsZTxBc3NvY2lhdGlvbnMgfCB1bmRlZmluZWQ+O1xuICBzdWIgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG4gIGN1cnJlbnRUeXBlVHJhbnNsYXRpb24gPSAnJztcbiAgZGF0YXNldE1ldGFkYXRhJDogT2JzZXJ2YWJsZTxNZXRhZGF0YVZhbHVlW10+O1xuICBlZGl0YWJsZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIGFjY2Vzc0dyb3Vwczogc3RyaW5nW10gPSBbXTtcbiAgc2VsZWN0ZWREYXRhc2V0TWlzc2luZ0dyb3VwcyQ6IE9ic2VydmFibGU8TWlzc2luZ0dyb3Vwc0J5RW50aXR5IHwgdW5kZWZpbmVkPjtcbiAgbWlzc2luZ0dyb3VwcyQ6IE9ic2VydmFibGU8TWlzc2luZ0dyb3VwcyB8IHVuZGVmaW5lZD47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmU8YW55PixcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgaTE4bjogUHJ5STE4blNlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKE1ldGFkYXRhQWN0aW9ucy5sb2FkTWV0YWRhdGEoKSk7XG4gICAgdGhpcy5zZWxlY3RlZERhdGFzZXQkID0gdGhpcy5zdG9yZS5zZWxlY3QoRGF0YVNvdXJjZVNlbGVjdG9ycy5zZWxlY3RlZERhdGFzZXQpO1xuICAgIHRoaXMuZGF0YXNldE1ldGFkYXRhJCA9IHRoaXMuc3RvcmUuc2VsZWN0KERhdGFTb3VyY2VTZWxlY3RvcnMuc2VsZWN0ZWREYXRhc2V0TWV0YWRhdGEpO1xuICAgIHRoaXMuYXNzb2NpYXRpb25zJCA9IHRoaXMuc3RvcmUuc2VsZWN0KEFkbWluU2VsZWN0b3JzLnNlbGVjdGVkQXNzb2NpYXRpb24pO1xuICAgIHRoaXMuZWRpdGFibGUkID0gdGhpcy5zdG9yZS5zZWxlY3QoTWV0YWRhdGFTZWxlY3RvcnMuZWRpdGFibGUpO1xuICAgIHRoaXMuc2VsZWN0ZWREYXRhc2V0TWlzc2luZ0dyb3VwcyQgPSB0aGlzLnN0b3JlLnNlbGVjdChEYXRhU291cmNlU2VsZWN0b3JzLnNlbGVjdGVkRGF0YXNldE1pc3NpbmdHcm91cHMpO1xuICAgIHRoaXMubWlzc2luZ0dyb3VwcyQgPSB0aGlzLnNlbGVjdGVkRGF0YXNldE1pc3NpbmdHcm91cHMkLnBpcGUoXG4gICAgICB3aXRoTGF0ZXN0RnJvbSh0aGlzLnN0b3JlLnNlbGVjdChEYXNoYm9hcmRTZWxlY3RvcnMubWFuaWZlc3RzTGlzdCkpLFxuICAgICAgbWFwKChbY29uZmxpY3QsIG1hbmlmZXN0c10pID0+IHtcbiAgICAgICAgY29uc3QgcmVzdWx0OiB7IFtrZXk6IHN0cmluZ106IHsgZ3JvdXBzOiBzdHJpbmdbXTsgZW50aXR5TmFtZTogc3RyaW5nIH0gfSA9IHt9O1xuICAgICAgICBPYmplY3Qua2V5cyhjb25mbGljdCA/PyB7fSkuZm9yRWFjaCgoZW50aXR5SWQpID0+IHtcbiAgICAgICAgICByZXN1bHRbZW50aXR5SWRdID0ge1xuICAgICAgICAgICAgZ3JvdXBzOiBjb25mbGljdD8uW2VudGl0eUlkXSA/PyBbXSxcbiAgICAgICAgICAgIGVudGl0eU5hbWU6IG1hbmlmZXN0cy5maW5kKChtKSA9PiBtLmlkID09PSBlbnRpdHlJZCk/Lm5hbWUgPz8gZW50aXR5SWRcbiAgICAgICAgICB9O1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKHJlc3VsdCkubGVuZ3RoID4gMCA/IHJlc3VsdCA6IHVuZGVmaW5lZDtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLnNlbGVjdGVkRGF0YXNldCQuc3Vic2NyaWJlKChkYXRhc2V0KSA9PiB7XG4gICAgICAgIGlmIChkYXRhc2V0KSB7XG4gICAgICAgICAgdGhpcy5hY2Nlc3NHcm91cHMgPSBkYXRhc2V0Py5ncm91cHMgPz8gW107XG4gICAgICAgICAgY29uc3QgZWRpdFBhdGggPSB0aGlzLnJvdXRlci5jcmVhdGVVcmxUcmVlKFsnLicsICdkYXRhc2V0JywgJ2VkaXQnLCBkYXRhc2V0LmlkXSwge1xuICAgICAgICAgICAgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZVxuICAgICAgICAgIH0pO1xuICAgICAgICAgIGlmIChkYXRhc2V0Lm93bmVyKSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICAgICAgICBBZG1pbkFjdGlvbnMubWFpbkFjdGlvbnMoe1xuICAgICAgICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgYWN0aW9uOiBBZG1pbkFjdGlvbnMucm91dGVUbyh7IHBhdGg6IGVkaXRQYXRoLnRvU3RyaW5nKCkgfSksXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsOiAnZWRpdCcsXG4gICAgICAgICAgICAgICAgICAgIGljb246ICdlZGl0JyxcbiAgICAgICAgICAgICAgICAgICAgbW9kdWxlQWNjZXNzOiAnYWRtaW4nLFxuICAgICAgICAgICAgICAgICAgICBwYWdlQWNjZXNzOiAnZGF0YXNldCcsXG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbkFjY2VzczogJ3dyaXRlJ1xuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgYWN0aW9uOiBEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LmNvbmZpcm1EYXRhU291cmNlRGVsZXRpb24oe1xuICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IGRhdGFzZXQuaWQsXG4gICAgICAgICAgICAgICAgICAgICAgcm91dGU6IHRoaXMucm91dGVyLmNyZWF0ZVVybFRyZWUoWycuJywgJ2RhdGFzZXQnXSwgeyByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlIH0pLnRvU3RyaW5nKCksXG4gICAgICAgICAgICAgICAgICAgICAgYWRkUm91dGU6IHRoaXMucm91dGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAuY3JlYXRlVXJsVHJlZShbJy4nLCAnZGF0YXNldCcsICduZXcnXSwgeyByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAudG9TdHJpbmcoKVxuICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgbGFiZWw6ICdkZWxldGUnLFxuICAgICAgICAgICAgICAgICAgICBpY29uOiAnZGVsZXRlJyxcbiAgICAgICAgICAgICAgICAgICAgbW9kdWxlQWNjZXNzOiAnYWRtaW4nLFxuICAgICAgICAgICAgICAgICAgICBwYWdlQWNjZXNzOiAnZGF0YXNldCcsXG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbkFjY2VzczogJ3dyaXRlJ1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgICAgICAgIEFkbWluQWN0aW9ucy5tYWluQWN0aW9ucyh7XG4gICAgICAgICAgICAgICAgYWN0aW9uczogW11cbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBjbG9zZVBhbmVsKCkge1xuICAgIGNvbnN0IHBhdGggPSB0aGlzLnJvdXRlci5jcmVhdGVVcmxUcmVlKFsnLicsICdkYXRhc2V0JywgJ25ldyddLCB7IHJlbGF0aXZlVG86IHRoaXMucm91dGUgfSk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LnVuc2VsZWN0RGF0YXNldCgpKTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKEFkbWluQWN0aW9ucy50b2dnbGVQYW5lbCh7IHBhbmVsT3BlbjogZmFsc2UgfSkpO1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICBBZG1pbkFjdGlvbnMubWFpbkFjdGlvbnMoe1xuICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgYWN0aW9uOiBBZG1pbkFjdGlvbnMucm91dGVUbyh7IHBhdGg6IHBhdGgudG9TdHJpbmcoKSB9KSxcbiAgICAgICAgICAgIGxhYmVsOiAnYWRkJyxcbiAgICAgICAgICAgIGljb246ICdhZGRfY29sdW1uJyxcbiAgICAgICAgICAgIG1vZHVsZUFjY2VzczogJ2FkbWluJyxcbiAgICAgICAgICAgIHBhZ2VBY2Nlc3M6ICdtZXRhZGF0YV9ydWxlcycsXG4gICAgICAgICAgICBhY3Rpb25BY2Nlc3M6ICd3cml0ZSdcbiAgICAgICAgICB9XG4gICAgICAgIF1cbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHJlbW92ZU1ldGFkYXRhKG1ldGFkYXRhOiBNZXRhRXZlbnRUeXBlKSB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgIE1ldGFkYXRhQWN0aW9ucy5kZWxldGVEYXRhc2V0TWV0YWRhdGEoeyBkYXRhc2V0SWQ6IG1ldGFkYXRhLmlkLCBtZXRhZGF0YUlkOiBtZXRhZGF0YS5tZXRhZGF0YUlkIH0pXG4gICAgKTtcbiAgfVxuXG4gIGFkZERhdGFzZXRNZXRhZGF0YShtZXRhZGF0YTogTWV0YUV2ZW50VHlwZSkge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICBNZXRhZGF0YUFjdGlvbnMuYWRkRGF0YXNldE1ldGFkYXRhKHtcbiAgICAgICAgZGF0YXNldElkOiBtZXRhZGF0YS5pZCxcbiAgICAgICAgbWV0YWRhdGFJZDogbWV0YWRhdGEubWV0YWRhdGFJZCxcbiAgICAgICAgdmFsdWU6IG1ldGFkYXRhLnZhbHVlXG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBzaGFyZShkYXRhc2V0OiBEYXRhc2V0KSB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgIERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQudXBkYXRlKHsgZGF0YXNldDogeyAuLi5kYXRhc2V0LCBncm91cHM6IHRoaXMuYWNjZXNzR3JvdXBzIH0sIHJvdXRlOiAnJyB9KVxuICAgICk7XG4gIH1cblxuICBnZXRHcm91cExhYmVsKGdyb3VwTmFtZTogc3RyaW5nKSB7XG4gICAgY29uc3QgaTE4bkJhc2UgPSAnQHByeS5jb21wb25lbnRzLmNoaXBzU2VsZWN0b3Iuc2hhcmUuZ3JvdXBzLic7XG4gICAgY29uc3QgbGFiZWwgPSB0aGlzLmkxOG4uaW5zdGFudChpMThuQmFzZSArIGdyb3VwTmFtZSk7XG4gICAgcmV0dXJuIGxhYmVsLnN0YXJ0c1dpdGgoaTE4bkJhc2UpID8gZ3JvdXBOYW1lIDogbGFiZWw7XG4gIH1cblxuICBjaGFuZ2VHcm91cCgkZXZlbnQ6IGFueVtdKSB7XG4gICAgdGhpcy5hY2Nlc3NHcm91cHMgPSAkZXZlbnQ7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LnNldE1pc3NpbmdHcm91cHMoeyBtaXNzaW5nR3JvdXBzOiB1bmRlZmluZWQgfSkpO1xuICB9XG59XG4iLCI8ZGl2XG4gICpuZ0lmPVwic2VsZWN0ZWREYXRhc2V0JCB8IGFzeW5jIGFzIGRhdGFzZXRcIlxuICBbaWRdPVwiJ3BhbmVsLWRhdGFzZXQtJyArIGRhdGFzZXQuaWRcIlxuICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiJ2J1dHRvbi1kYXRhc2V0LScgKyBkYXRhc2V0LmlkXCJcbiAgY2xhc3M9XCJvLXBhbmVsIG8tcHJ5LWFkbWluLWRhdGFzZXQtc2VsZWN0XCJcbj5cbiAgPGRpdiBjbGFzcz1cIm8tcGFuZWxfX2hlYWRlclwiPlxuICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYS1idG4gYS1idG4tLWljb24tb25seVwiIChjbGljayk9XCJjbG9zZVBhbmVsKClcIj5cbiAgICAgIDxzcGFuIGNsYXNzPVwidS12aXN1YWxseS1oaWRkZW5cIj57eyAnQHByeS5hY3Rpb24uY2xvc2VQYW5lbCcgfCBpMThuIH19PC9zcGFuPlxuICAgICAgPHByeS1pY29uIGljb25Tdmc9XCJjbG9zZVwiPjwvcHJ5LWljb24+XG4gICAgPC9idXR0b24+XG5cbiAgICA8aDMgY2xhc3M9XCJhLWgzXCI+XG4gICAgICB7eyAnQHByeS5hZG1pbi5kYXRhc2V0LmRldGFpbHMnIHwgaTE4biB9fVxuICAgIDwvaDM+XG4gIDwvZGl2PlxuXG4gIDxwcnktdGFiLWdyb3VwIHRyYW5zbGF0aW9uU3RyaW5nQmFzZT1cIkBwcnkuYWRtaW4uXCI+XG4gICAgPHByeS10YWIgW3RlbXBsYXRlUmVmXT1cImRhdGFzZXRNZXRhZGF0YVwiIG5hbWU9XCJtZXRhZGF0YS50aXRsZVwiPjwvcHJ5LXRhYj5cbiAgICA8cHJ5LXRhYiBbdGVtcGxhdGVSZWZdPVwiZGF0YXNldEFzc29jaWF0aW9uc1wiIG5hbWU9XCJjbGFzc2VzLmFzc29jaWF0aW9uc1wiPjwvcHJ5LXRhYj5cbiAgICA8cHJ5LXRhYiAqbmdJZj1cImRhdGFzZXQub3duZXJcIiBbdGVtcGxhdGVSZWZdPVwic2hhcmVEYXRhc2V0XCIgbmFtZT1cInNoYXJlXCI+PC9wcnktdGFiPlxuICA8L3ByeS10YWItZ3JvdXA+XG5cbiAgPG5nLXRlbXBsYXRlICNkYXRhc2V0TWV0YWRhdGE+XG4gICAgPHByeS1tZXRhZGF0YS1lZGl0b3JcbiAgICAgIFt0YXJnZXRJZF09XCIoc2VsZWN0ZWREYXRhc2V0JCB8IGFzeW5jKT8uaWQgPz8gJydcIlxuICAgICAgW2lzTW9kaWZpY2F0aW9uXT1cIihlZGl0YWJsZSQgfCBhc3luYykgPz8gZmFsc2VcIlxuICAgICAgW21ldGFkYXRhXT1cIihkYXRhc2V0TWV0YWRhdGEkIHwgYXN5bmMpID8/IFtdXCJcbiAgICAgIChyZW1vdmVNZXRhKT1cInJlbW92ZU1ldGFkYXRhKCRldmVudClcIlxuICAgICAgKGFkZE1ldGEpPVwiYWRkRGF0YXNldE1ldGFkYXRhKCRldmVudClcIlxuICAgICAgW3R5cGVdPVwiJ21ldGEnXCJcbiAgICA+PC9wcnktbWV0YWRhdGEtZWRpdG9yPlxuICA8L25nLXRlbXBsYXRlPlxuXG4gIDxuZy10ZW1wbGF0ZSAjZGF0YXNldEFzc29jaWF0aW9ucz5cbiAgICA8ZGl2ICpuZ0lmPVwiYXNzb2NpYXRpb25zJCB8IGFzeW5jIGFzIGFzc29jaWF0aW9uc1wiIGNsYXNzPVwiby10YWJzX19wYW5lbHNfX2l0ZW1fX2NvbnRlbnRcIj5cbiAgICAgIDxoNCBjbGFzcz1cImEtaDRcIj57eyAnQHByeS5hZG1pbi5jbGFzc2VzLmFzc29jaWF0aW9ucycgfCBpMThuIH19PC9oND5cbiAgICAgIDxwcnktYXNzb2NpYXRpb24gW2Fzc29jaWF0aW9uc109XCJhc3NvY2lhdGlvbnNcIj48L3ByeS1hc3NvY2lhdGlvbj5cbiAgICA8L2Rpdj5cbiAgPC9uZy10ZW1wbGF0ZT5cblxuICA8bmctdGVtcGxhdGUgI3NoYXJlRGF0YXNldD5cbiAgICA8ZGl2IGNsYXNzPVwiby1wcnktYWRtaW4tZGF0YXNldC1zZWxlY3RfX3NoYXJlXCI+XG4gICAgICA8cHJ5LWdyb3VwLXNoYXJlIFtuZ01vZGVsXT1cImRhdGFzZXQuZ3JvdXBzXCIgKG5nTW9kZWxDaGFuZ2UpPVwiY2hhbmdlR3JvdXAoJGV2ZW50KVwiPjwvcHJ5LWdyb3VwLXNoYXJlPlxuICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgY2xhc3M9XCJhLWJ0biBhLWJ0bi0tcHJpbWFyeSB1LXNlbGYtZW5kXCIgI3N1Ym1pdCAoY2xpY2spPVwic2hhcmUoZGF0YXNldClcIj5cbiAgICAgICAge3sgJ0BwcnkuYWRtaW4udmFsaWRhdGUnIHwgaTE4biB9fVxuICAgICAgPC9idXR0b24+XG4gICAgICBAaWYoc2VsZWN0ZWREYXRhc2V0TWlzc2luZ0dyb3VwcyQgfCBhc3luYykge1xuICAgICAgICA8aDQgY2xhc3M9XCJhLWg0XCI+e3sgJ0BwcnkuYWRtaW4uZGF0YXNldC5zdWNjZXNzJyB8IGkxOG4gfX08L2g0PlxuICAgICAgfVxuICAgICAgQGlmKG1pc3NpbmdHcm91cHMkIHwgYXN5bmM7IGFzIG1pc3NpbmdHcm91cHMpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cInUtZGlzcGxheS1mbGV4IC1jb2x1bW5cIj5cbiAgICAgICAgICA8c3Bhbj57eyAnQHByeS5hZG1pbi5kYXRhc2V0LmNvbmZsaWN0JyB8IGkxOG4gfX08L3NwYW4+XG4gICAgICAgICAgQGZvcihtaXNzaW5nIG9mIG1pc3NpbmdHcm91cHMgfCBrZXl2YWx1ZTsgdHJhY2sgbWlzc2luZy5rZXkpIHtcbiAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgIHt7ICdAcHJ5LmFkbWluLmRhdGFzZXQuZW50aXRpZXMuZGFzaGJvYXJkJyB8IGkxOG4gfX0gPHN0cm9uZz57eyBtaXNzaW5nLnZhbHVlLmVudGl0eU5hbWUgfX08L3N0cm9uZz5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInUtZGlzcGxheS1mbGV4XCI+XG4gICAgICAgICAgICAgICAgQGZvcihncm91cCBvZiBtaXNzaW5nLnZhbHVlLmdyb3VwczsgdHJhY2sgZ3JvdXApIHtcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYS1jaGlwXCI+e3sgZ2V0R3JvdXBMYWJlbChncm91cCkgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIDwvbmctdGVtcGxhdGU+XG48L2Rpdj5cbiJdfQ==
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnIudHJhbnNsYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvYWRtaW4vaTE4bi9mci50cmFuc2xhdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHO0lBQzVCLE1BQU0sRUFBRTtRQUNOLEtBQUssRUFBRTtZQUNMLEtBQUssRUFBRSxnQkFBZ0I7WUFDdkIsZUFBZSxFQUFFLCtCQUErQjtZQUNoRCxjQUFjLEVBQUUsYUFBYTtZQUM3QixXQUFXLEVBQUUsUUFBUTtZQUNyQixJQUFJLEVBQUUsVUFBVTtZQUNoQixNQUFNLEVBQUUsVUFBVTtZQUNsQixNQUFNLEVBQUUsV0FBVztZQUNuQixHQUFHLEVBQUUsU0FBUztZQUNkLFFBQVEsRUFBRSxTQUFTO1lBQ25CLFFBQVEsRUFBRSxxQkFBcUI7WUFDL0IsWUFBWSxFQUFFLHFCQUFxQjtZQUNuQyxNQUFNLEVBQUUsT0FBTztZQUNmLE1BQU0sRUFBRSxtQkFBbUI7WUFDM0IsS0FBSyxFQUFFLFVBQVU7WUFDakIsTUFBTSxFQUFFLFNBQVM7WUFDakIsSUFBSSxFQUFFLFFBQVE7WUFDZCxJQUFJLEVBQUUsU0FBUztZQUNmLFVBQVUsRUFBRSxZQUFZO1lBQ3hCLE9BQU8sRUFBRSxTQUFTO1lBQ2xCLFFBQVEsRUFBRSxVQUFVO1lBQ3BCLFFBQVEsRUFBRSxzQkFBc0I7WUFDaEMsTUFBTSxFQUFFLHlCQUF5QjtZQUNqQyxTQUFTLEVBQUUsd0NBQXdDO1lBQ25ELFNBQVMsRUFBRSx5Q0FBeUM7WUFDcEQsWUFBWSxFQUFFLHlEQUF5RDtZQUN2RSxJQUFJLEVBQUUsZ0JBQWdCO1lBQ3RCLFdBQVcsRUFBRSwwRUFBMEU7WUFDdkYsZ0JBQWdCLEVBQUUsNkJBQTZCO1lBQy9DLElBQUksRUFBRSxtQkFBbUI7WUFDekIsNkJBQTZCLEVBQzNCLGtHQUFrRztZQUNwRyxRQUFRLEVBQUU7Z0JBQ1IsSUFBSSxFQUFFLGNBQWM7Z0JBQ3BCLFFBQVEsRUFBRSxrQkFBa0I7Z0JBQzVCLFNBQVMsRUFBRSxrQkFBa0I7Z0JBQzdCLFdBQVcsRUFBRSxpQkFBaUI7Z0JBQzlCLFlBQVksRUFBRSxpQkFBaUI7YUFDaEM7WUFDRCxTQUFTLEVBQUU7Z0JBQ1QsS0FBSyxFQUFFLGVBQWU7Z0JBQ3RCLFFBQVEsRUFBRSwwQkFBMEI7Z0JBQ3BDLE1BQU0sRUFBRSwwQkFBMEI7Z0JBQ2xDLFFBQVEsRUFBRSxhQUFhO2dCQUN2QixJQUFJLEVBQUUsZUFBZTtnQkFDckIsV0FBVyxFQUFFLGNBQWM7Z0JBQzNCLElBQUksRUFBRSwwQ0FBMEM7Z0JBQ2hELFVBQVUsRUFBRSxxQ0FBcUM7Z0JBQ2pELE9BQU8sRUFBRSxvQkFBb0I7Z0JBQzdCLEtBQUssRUFBRSw4QkFBOEI7Z0JBQ3JDLElBQUksRUFBRSxpQ0FBaUM7Z0JBQ3ZDLFFBQVEsRUFBRSw2RUFBNkU7Z0JBQ3ZGLFVBQVUsRUFBRSxvQ0FBb0M7Z0JBQ2hELFNBQVMsRUFBRSxxQ0FBcUM7Z0JBQ2hELFlBQVksRUFBRSxrQkFBa0I7Z0JBQ2hDLFdBQVcsRUFBRSx3QkFBd0I7Z0JBQ3JDLFdBQVcsRUFBRSxvREFBb0Q7Z0JBQ2pFLFVBQVUsRUFBRSx3Q0FBd0M7Z0JBQ3BELFdBQVcsRUFBRSxzQ0FBc0M7YUFDcEQ7WUFDRCxPQUFPLEVBQUU7Z0JBQ1AsR0FBRyxFQUFFLGVBQWU7Z0JBQ3BCLE1BQU0sRUFBRSxnQkFBZ0I7Z0JBQ3hCLE1BQU0sRUFBRSxPQUFPO2dCQUNmLElBQUksRUFBRSxrQkFBa0I7Z0JBQ3hCLElBQUksRUFBRSxNQUFNO2dCQUNaLElBQUksRUFBRSxrQkFBa0I7YUFDekI7WUFDRCxLQUFLLEVBQUU7Z0JBQ0wsV0FBVyxFQUFFLHVCQUF1QjtnQkFDcEMsSUFBSSxFQUFFLGNBQWM7Z0JBQ3BCLGVBQWUsRUFBRSxvQkFBb0I7Z0JBQ3JDLFlBQVksRUFBRSxhQUFhO2dCQUMzQixnQkFBZ0IsRUFBRSxvQkFBb0I7Z0JBQ3RDLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLE9BQU8sRUFBRSxvQkFBb0I7Z0JBQzdCLFVBQVUsRUFBRSxXQUFXO2dCQUN2QixRQUFRLEVBQUUsYUFBYTtnQkFDdkIsTUFBTSxFQUFFLGNBQWM7Z0JBQ3RCLGdCQUFnQixFQUFFLG1CQUFtQjtnQkFDckMsS0FBSyxFQUFFLHNCQUFzQjtnQkFDN0IsS0FBSyxFQUFFLGVBQWU7Z0JBQ3RCLE1BQU0sRUFBRSxtQkFBbUI7YUFDNUI7WUFDRCxVQUFVLEVBQUU7Z0JBQ1YsSUFBSSxFQUFFLFdBQVc7Z0JBQ2pCLEdBQUcsRUFBRSwyQkFBMkI7Z0JBQ2hDLElBQUksRUFBRSxzQkFBc0I7Z0JBQzVCLElBQUksRUFBRSxxQkFBcUI7Z0JBQzNCLEdBQUcsRUFBRSxLQUFLO2dCQUNWLElBQUksRUFBRSxLQUFLO2dCQUNYLEtBQUssRUFBRSw0Q0FBNEM7Z0JBQ25ELFNBQVMsRUFBRSxhQUFhO2dCQUN4QixnQkFBZ0IsRUFBRSxrRkFBa0Y7YUFDckc7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsS0FBSyxFQUFFLGFBQWE7Z0JBQ3BCLEdBQUcsRUFBRSxzQkFBc0I7Z0JBQzNCLElBQUksRUFBRSx5QkFBeUI7Z0JBQy9CLE9BQU8sRUFBRSwwQkFBMEI7Z0JBQ25DLFdBQVcsRUFBRSwrQkFBK0I7Z0JBQzVDLEVBQUUsRUFBRSxJQUFJO2dCQUNSLEtBQUssRUFBRSxLQUFLO2dCQUNaLElBQUksRUFBRSxNQUFNO2dCQUNaLFdBQVcsRUFBRSxhQUFhO2dCQUMxQixPQUFPLEVBQUUsc0JBQXNCO2dCQUMvQixTQUFTLEVBQUUsa0JBQWtCO2dCQUM3QixRQUFRLEVBQUUsNkJBQTZCO2dCQUN2QyxXQUFXLEVBQUUsd0JBQXdCO2dCQUNyQyxNQUFNLEVBQUUsb0JBQW9CO2FBQzdCO1lBQ0QsZ0JBQWdCLEVBQUU7Z0JBQ2hCLEtBQUssRUFBRSxvQkFBb0I7Z0JBQzNCLEtBQUssRUFBRSxLQUFLO2dCQUNaLGNBQWMsRUFBRSxzRkFBc0Y7Z0JBQ3RHLGVBQWUsRUFBRSw0RUFBNEU7Z0JBQzdGLGVBQWUsRUFBRTtvQkFDZixJQUFJLEVBQUUsbUJBQW1CO29CQUN6QixXQUFXLEVBQUUsb0NBQW9DO29CQUNqRCxJQUFJLEVBQUUsNkJBQTZCO2lCQUNwQztnQkFDRCxlQUFlLEVBQUU7b0JBQ2YsSUFBSSxFQUFFLDJCQUEyQjtvQkFDakMsV0FBVyxFQUFFLDBDQUEwQztvQkFDdkQsSUFBSSxFQUFFLG1DQUFtQztpQkFDMUM7Z0JBQ0QsSUFBSSxFQUFFO29CQUNKLEtBQUssRUFBRSxtQ0FBbUM7aUJBQzNDO2dCQUNELEdBQUcsRUFBRTtvQkFDSCxLQUFLLEVBQUUseUNBQXlDO2lCQUNqRDthQUNGO1lBQ0QsT0FBTyxFQUFFO2dCQUNQLE1BQU0sRUFDSixtTkFBbU47Z0JBQ3JOLEtBQUssRUFBRSxpQkFBaUI7Z0JBQ3hCLE9BQU8sRUFBRSwyQkFBMkI7Z0JBQ3BDLEVBQUUsRUFBRSxhQUFhO2dCQUNqQixJQUFJLEVBQUUsS0FBSztnQkFDWCxNQUFNLEVBQUUsZUFBZTtnQkFDdkIsSUFBSSxFQUFFLE1BQU07Z0JBQ1osY0FBYyxFQUFFLHVFQUF1RTtnQkFDdkYsR0FBRyxFQUFFO29CQUNILEtBQUssRUFBRSx5QkFBeUI7aUJBQ2pDO2dCQUNELElBQUksRUFBRTtvQkFDSixLQUFLLEVBQUUsNEJBQTRCO2lCQUNwQztnQkFDRCxJQUFJLEVBQUUsUUFBUTtnQkFDZCxNQUFNLEVBQUUsT0FBTztnQkFDZixVQUFVLEVBQUUsWUFBWTtnQkFDeEIsUUFBUSxFQUNOLDBHQUEwRztnQkFDNUcsUUFBUSxFQUFFO29CQUNSLFNBQVMsRUFBRSxrQkFBa0I7aUJBQzlCO2FBQ0Y7WUFDRCxZQUFZLEVBQUU7Z0JBQ1osTUFBTSxFQUFFLFdBQVc7Z0JBQ25CLFlBQVksRUFBRSxvQkFBb0I7Z0JBQ2xDLEtBQUssRUFBRTtvQkFDTCxJQUFJLEVBQUUsYUFBYTtvQkFDbkIsR0FBRyxFQUFFLHNCQUFzQjtvQkFDM0IsSUFBSSxFQUFFLDBCQUEwQjtvQkFDaEMsSUFBSSxFQUFFLHlCQUF5QjtpQkFDaEM7Z0JBQ0QsSUFBSSxFQUFFO29CQUNKLEVBQUUsRUFBRSxRQUFRO29CQUNaLElBQUksRUFBRSxLQUFLO29CQUNYLFdBQVcsRUFBRSxhQUFhO29CQUMxQixNQUFNLEVBQUUsUUFBUTtvQkFDaEIsWUFBWSxFQUFFLE9BQU87b0JBQ3JCLGNBQWMsRUFBRSxTQUFTO29CQUN6QixTQUFTLEVBQUUsMkJBQTJCO29CQUN0QyxJQUFJLEVBQUUsTUFBTTtvQkFDWixZQUFZLEVBQUUsWUFBWTtvQkFDMUIsYUFBYSxFQUFFLFVBQVU7b0JBQ3pCLFlBQVksRUFBRSxtRUFBbUU7b0JBQ2pGLFdBQVcsRUFBRSwwQ0FBMEM7b0JBQ3ZELFlBQVksRUFBRSx1Q0FBdUM7b0JBQ3JELFNBQVMsRUFBRSxJQUFJO29CQUNmLFFBQVEsRUFBRSxJQUFJO29CQUNkLFFBQVEsRUFBRSx3QkFBd0I7aUJBQ25DO2FBQ0Y7WUFDRCxJQUFJLEVBQUU7Z0JBQ0osS0FBSyxFQUFFLG9CQUFvQjtnQkFDM0IsR0FBRyxFQUFFLHFDQUFxQztnQkFDMUMsS0FBSyxFQUFFLEtBQUs7Z0JBQ1osSUFBSSxFQUFFLE1BQU07Z0JBQ1osT0FBTyxFQUFFLHFCQUFxQjtnQkFDOUIsSUFBSSxFQUFFLGdDQUFnQzthQUN2QztZQUNELFdBQVcsRUFBRTtnQkFDWCxJQUFJLEVBQUUsdUJBQXVCO2dCQUM3QixHQUFHLEVBQUUsdUNBQXVDO2dCQUM1QyxJQUFJLEVBQUUsa0NBQWtDO2dCQUN4QyxJQUFJLEVBQUUsaUNBQWlDO2dCQUN2QyxTQUFTLEVBQUUsZ0NBQWdDO2dCQUMzQyxZQUFZLEVBQUUsa0VBQWtFO2dCQUNoRixVQUFVLEVBQUUsMENBQTBDO2dCQUN0RCxJQUFJLEVBQUUsS0FBSztnQkFDWCxJQUFJLEVBQUUsTUFBTTtnQkFDWixLQUFLLEVBQUUsdUJBQXVCO2FBQy9CO1lBQ0QsT0FBTyxFQUFFO2dCQUNQLElBQUksRUFBRSxvQkFBb0I7Z0JBQzFCLElBQUksRUFBRSxLQUFLO2dCQUNYLEtBQUssRUFBRSw2QkFBNkI7Z0JBQ3BDLEtBQUssRUFBRSxPQUFPO2dCQUNkLFVBQVUsRUFBRSwyQ0FBMkM7Z0JBQ3ZELEtBQUssRUFBRSxRQUFRO2dCQUNmLFdBQVcsRUFBRSxhQUFhO2dCQUMxQixLQUFLLEVBQUUsUUFBUTtnQkFDZixHQUFHLEVBQUUsb0NBQW9DO2dCQUN6QyxJQUFJLEVBQUUsK0JBQStCO2dCQUNyQyxNQUFNLEVBQUUsK0JBQStCO2dCQUN2QyxPQUFPLEVBQUUsVUFBVTtnQkFDbkIsUUFBUSxFQUFFLHlDQUF5QztnQkFDbkQsSUFBSSxFQUFFLDZCQUE2QjtnQkFDbkMsS0FBSyxFQUFFLGtDQUFrQztnQkFDekMsU0FBUyxFQUFFLDJCQUEyQjtnQkFDdEMsUUFBUSxFQUFFLHNCQUFzQjtnQkFDaEMsS0FBSyxFQUFFLHVCQUF1QjtnQkFDOUIsU0FBUyxFQUFFLDBCQUEwQjtnQkFDckMsVUFBVSxFQUFFO29CQUNWLE1BQU0sRUFBRSxVQUFVO29CQUNsQixPQUFPLEVBQUUsZ0JBQWdCO29CQUN6QixnQkFBZ0IsRUFBRSx3QkFBd0I7b0JBQzFDLEtBQUssRUFBRSxZQUFZO29CQUNuQixjQUFjLEVBQUUsb0JBQW9CO29CQUNwQyxRQUFRLEVBQUUsd0JBQXdCO2lCQUNuQztnQkFDRCx1QkFBdUIsRUFDckIsaUlBQWlJO2dCQUNuSSx5QkFBeUIsRUFBRSwwREFBMEQ7Z0JBQ3JGLHlCQUF5QixFQUFFLHFEQUFxRDtnQkFDaEYsYUFBYSxFQUFFLGFBQWE7Z0JBQzVCLGFBQWEsRUFBRSw4Q0FBOEM7Z0JBQzdELFlBQVksRUFBRSxjQUFjO2dCQUM1QixJQUFJLEVBQUUsTUFBTTtnQkFDWixVQUFVLEVBQUU7b0JBQ1YsR0FBRyxFQUFFLGlCQUFpQjtvQkFDdEIsSUFBSSxFQUFFLHFCQUFxQjtvQkFDM0IsSUFBSSxFQUFFLHNCQUFzQjtvQkFDNUIsTUFBTSxFQUFFLHNCQUFzQjtvQkFDOUIsSUFBSSxFQUFFLHVCQUF1QjtvQkFDN0IsYUFBYSxFQUFFLGVBQWU7b0JBQzlCLFdBQVcsRUFBRSxhQUFhO29CQUMxQixLQUFLLEVBQUUsTUFBTTtvQkFDYixRQUFRLEVBQUUsV0FBVztvQkFDckIsV0FBVyxFQUFFLGFBQWE7aUJBQzNCO2dCQUNELFFBQVEsRUFBRTtvQkFDUixNQUFNLEVBQUUsNEJBQTRCO29CQUNwQyxjQUFjLEVBQUUsNkRBQTZEO29CQUM3RSxJQUFJLEVBQUUsV0FBVztvQkFDakIsUUFBUSxFQUFFLDJCQUEyQjtvQkFDckMsTUFBTSxFQUFFLG9CQUFvQjtvQkFDNUIsR0FBRyxFQUFFLCtJQUErSTtpQkFDcko7YUFDRjtZQUNELE1BQU0sRUFBRTtnQkFDTixHQUFHLEVBQUUsOEJBQThCO2dCQUNuQyxHQUFHLEVBQUUsbUJBQW1CO2dCQUN4QixJQUFJLEVBQUUsdUJBQXVCO2dCQUM3QixJQUFJLEVBQUUsY0FBYztnQkFDcEIsSUFBSSxFQUFFLHlCQUF5QjtnQkFDL0IsSUFBSSxFQUFFLEtBQUs7Z0JBQ1gsV0FBVyxFQUFFLGFBQWE7Z0JBQzFCLElBQUksRUFBRSxnQkFBZ0I7Z0JBQ3RCLFVBQVUsRUFBRSw2QkFBNkI7Z0JBQ3pDLGFBQWEsRUFBRSxXQUFXO2dCQUMxQixhQUFhLEVBQUUsZ0JBQWdCO2dCQUMvQixTQUFTLEVBQUUsUUFBUTtnQkFDbkIsb0JBQW9CLEVBQUUsbURBQW1EO2dCQUN6RSxTQUFTLEVBQUU7b0JBQ1QsR0FBRyxFQUFFLGVBQWU7b0JBQ3BCLElBQUksRUFBRSxvQkFBb0I7b0JBQzFCLE9BQU8sRUFBRSxnQkFBZ0I7b0JBQ3pCLE1BQU0sRUFBRSxZQUFZO29CQUNwQixPQUFPLEVBQUUsY0FBYztvQkFDdkIsT0FBTyxFQUFFLE1BQU07b0JBQ2YsR0FBRyxFQUFFLHVCQUF1QjtvQkFDNUIsS0FBSyxFQUFFLE9BQU87b0JBQ2QsVUFBVSxFQUFFLGNBQWM7b0JBQzFCLElBQUksRUFBRSxPQUFPO29CQUNiLFNBQVMsRUFBRSxjQUFjO29CQUN6QixPQUFPLEVBQUUsVUFBVTtvQkFDbkIsWUFBWSxFQUFFLGlCQUFpQjtvQkFDL0IsV0FBVyxFQUFFO3dCQUNYLEdBQUcsRUFBRSxzRUFBc0U7d0JBQzNFLElBQUksRUFBRSx5RUFBeUU7d0JBQy9FLE9BQU8sRUFBRSw2REFBNkQ7d0JBQ3RFLE1BQU0sRUFDSixnS0FBZ0s7d0JBQ2xLLE9BQU8sRUFDTCw4SkFBOEo7d0JBQ2hLLE9BQU8sRUFBRSw0QkFBNEI7d0JBQ3JDLEdBQUcsRUFBRSx3REFBd0Q7d0JBQzdELEtBQUssRUFDSCxxR0FBcUc7d0JBQ3ZHLFVBQVUsRUFDUixvSEFBb0g7d0JBQ3RILElBQUksRUFBRSx3R0FBd0c7d0JBQzlHLFNBQVMsRUFDUCw0SkFBNEo7d0JBQzlKLE9BQU8sRUFDTCx3R0FBd0c7d0JBQzFHLFlBQVksRUFDVixpSUFBaUk7cUJBQ3BJO2lCQUNGO2dCQUNELFVBQVUsRUFBRTtvQkFDVixJQUFJLEVBQUUsZ0JBQWdCO29CQUN0QixNQUFNLEVBQUUsa0NBQWtDO2lCQUMzQzthQUNGO1lBQ0QsUUFBUSxFQUFFO2dCQUNSLElBQUksRUFBRSxjQUFjO2dCQUNwQixJQUFJLEVBQUUseUJBQXlCO2dCQUMvQixPQUFPLEVBQUUsUUFBUTtnQkFDakIsV0FBVyxFQUFFLFNBQVM7Z0JBQ3RCLFlBQVksRUFBRSx3QkFBd0I7Z0JBQ3RDLElBQUksRUFBRSxRQUFRO2dCQUNkLFVBQVUsRUFBRSxnQkFBZ0I7Z0JBQzVCLEtBQUssRUFBRSxjQUFjO2dCQUNyQixRQUFRLEVBQUUsYUFBYTtnQkFDdkIsS0FBSyxFQUFFLFFBQVE7YUFDaEI7WUFDRCxhQUFhLEVBQUU7Z0JBQ2IsSUFBSSxFQUFFLG9CQUFvQjtnQkFDMUIsR0FBRyxFQUFFLDZCQUE2QjtnQkFDbEMsSUFBSSxFQUFFLDhCQUE4QjtnQkFDcEMsSUFBSSxFQUFFLDRCQUE0QjtnQkFDbEMsSUFBSSxFQUFFLEtBQUs7Z0JBQ1gsVUFBVSxFQUFFLGdDQUFnQztnQkFDNUMsTUFBTSxFQUFFLCtDQUErQztnQkFDdkQsZ0JBQWdCLEVBQUUsc0JBQXNCO2dCQUN4QyxTQUFTLEVBQUUsb0JBQW9CO2dCQUMvQixrQkFBa0IsRUFBRSx3REFBd0Q7YUFDN0U7WUFDRCxLQUFLLEVBQUU7Z0JBQ0wsSUFBSSxFQUFFLHVCQUF1QjtnQkFDN0IsR0FBRyxFQUFFLHlDQUF5QztnQkFDOUMsV0FBVyxFQUFFLHNCQUFzQjtnQkFDbkMsZUFBZSxFQUFFLGlCQUFpQjtnQkFDbEMsZ0JBQWdCLEVBQUUsOEJBQThCO2dCQUNoRCxvQkFBb0IsRUFBRSx5QkFBeUI7Z0JBQy9DLFlBQVksRUFBRSxrQkFBa0I7Z0JBQ2hDLGtCQUFrQixFQUFFLGtDQUFrQzthQUN2RDtZQUNELFdBQVcsRUFBRTtnQkFDWCxJQUFJLEVBQUUsWUFBWTtnQkFDbEIsSUFBSSxFQUFFLFVBQVU7Z0JBQ2hCLFdBQVcsRUFBRSxnQkFBZ0I7Z0JBQzdCLE1BQU0sRUFBRSxhQUFhO2dCQUNyQixPQUFPLEVBQUUsZ0JBQWdCO2dCQUN6QixNQUFNLEVBQUUsbUJBQW1CO2dCQUMzQixTQUFTLEVBQUUsY0FBYztnQkFDekIsS0FBSyxFQUFFLGFBQWE7YUFDckI7WUFDRCxPQUFPLEVBQUU7Z0JBQ1AsS0FBSyxFQUFFLGtCQUFrQjtnQkFDekIsV0FBVyxFQUFFO29CQUNYLE9BQU8sRUFDTCwyU0FBMlM7b0JBQzdTLE9BQU8sRUFDTCwyVkFBMlY7aUJBQzlWO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxPQUFPLEVBQUUsU0FBUztvQkFDbEIsT0FBTyxFQUFFLGVBQWU7aUJBQ3pCO2FBQ0Y7U0FDRjtRQUNELE9BQU8sRUFBRTtZQUNQLE9BQU8sRUFBRSxvQkFBb0I7WUFDN0IsU0FBUyxFQUFFLHNDQUFzQztZQUNqRCxPQUFPLEVBQUUscUNBQXFDO1lBQzlDLElBQUksRUFBRSxrQ0FBa0M7WUFDeEMsSUFBSSxFQUFFLGdCQUFnQjtTQUN2QjtLQUNGO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBmclRyYW5zbGF0aW9ucyA9IHtcbiAgJ0BwcnknOiB7XG4gICAgYWRtaW46IHtcbiAgICAgIHRpdGxlOiAnQWRtaW5pc3RyYXRpb24nLFxuICAgICAgdGl0bGVJbmRpY2F0aW9uOiAnRmVybWVyIGxlIG1lbnUgQWRtaW5pc3RyYXRpb24nLFxuICAgICAgaW5mb01vZGFsVGl0bGU6ICdJbmZvcm1hdGlvbicsXG4gICAgICBjbG9zZU1vZGFsZTogJ0Zlcm1lcicsXG4gICAgICBlZGl0OiAnTW9kaWZpZXInLFxuICAgICAgcmVuYW1lOiAnUmVub21tZXInLFxuICAgICAgZGVsZXRlOiAnU3VwcHJpbWVyJyxcbiAgICAgIGFkZDogJ05vdXZlYXUnLFxuICAgICAgdmFsaWRhdGU6ICdWYWxpZGVyJyxcbiAgICAgIGFkZENsYXNzOiAnVmFsaWRlciBsYSBjcsOpYXRpb24nLFxuICAgICAgYWRkQXR0cmlidXRlOiAnQWpvdXRlciB1biBhdHRyaWJ1dCcsXG4gICAgICBjcmVhdGU6ICdDcsOpZXInLFxuICAgICAgdXBsb2FkOiAnQWpvdXRlciB1bmUgaW1hZ2UnLFxuICAgICAgc2hhcmU6ICdQYXJ0YWdlcicsXG4gICAgICBjYW5jZWw6ICdBbm51bGVyJyxcbiAgICAgIGJhY2s6ICdSZXRvdXInLFxuICAgICAgbmV4dDogJ1N1aXZhbnQnLFxuICAgICAgcHJvcGVydGllczogJ1Byb3ByacOpdMOpcycsXG4gICAgICBkZXRhaWxzOiAnRMOpdGFpbHMnLFxuICAgICAgYWN0aXZpdHk6ICdBY3Rpdml0w6knLFxuICAgICAgcmVxdWlyZWQ6ICdMZSBjaGFtcHMgZXN0IHJlcXVpcycsXG4gICAgICBleGlzdHM6ICdDZSBub20gZXN0IGTDqWrDoCB1dGlsaXPDqScsXG4gICAgICBtaW5MZW5ndGg6ICdOb21icmUgbWluaW1hbCBkZSBjYXJhY3TDqHJlcyA6IHt7bGVufX0nLFxuICAgICAgbWF4TGVuZ3RoOiAnTm9tYnJlIGRlIGNhcmFjdMOocmVzIGF1dG9yaXPDqSA6IHt7bGVufX0nLFxuICAgICAgbm9XaGl0ZXNwYWNlOiAnTGEgdmFsZXVyIG5lIHBldXQgcGFzIGNvbW1lbmNlciBvdSBmaW5pciBwYXIgdW4gZXNwYWNlLicsXG4gICAgICBydWxlOiAnUsOoZ2xlIG7CsHt7aWR9fScsXG4gICAgICBkZWZhdWx0UnVsZTogXCJSw6hnbGUgcGFyIGTDqWZhdXQgKG5lIHMnYXBwbGlxdWUgcXVlIHNpIGF1Y3VuZSBhdXRyZSByw6hnbGUgbidlc3QgdmFsaWTDqWUpXCIsXG4gICAgICBkaXNwbGF5TW9kZUltYWdlOiBcIk1vZGUgZCdhZmZpY2hhZ2UgZGUgbCdpbWFnZVwiLFxuICAgICAgc2l6ZTogXCJUYWlsbGUgZGUgbCdpbWFnZVwiLFxuICAgICAgZGVsZXRlQXR0cmlidXRlQ29uZmlybU1lc3NhZ2U6XG4gICAgICAgICdDZXQgYXR0cmlidXQgbmUgc2VyYSBwbHVzIHZpc2libGUgcG91ciBsZXMgZG9ubsOpZXMgbGUgcG9zc8OpZGFudC4gQ29uZmlybWV6LXZvdXMgbGEgc3VwcHJlc3Npb24gPycsXG4gICAgICBwb3NpdGlvbjoge1xuICAgICAgICBGVUxMOiAnSWNvbmUgcGxlaW5lJyxcbiAgICAgICAgVE9QX0xFRlQ6ICdFbiBoYXV0IMOgIGdhdWNoZScsXG4gICAgICAgIFRPUF9SSUdIVDogJ0VuIGhhdXQgw6AgZHJvaXRlJyxcbiAgICAgICAgQk9UVE9NX0xFRlQ6ICdFbiBiYXMgw6AgZ2F1Y2hlJyxcbiAgICAgICAgQk9UVE9NX1JJR0hUOiAnRW4gYmFzIMOgIGRyb2l0ZSdcbiAgICAgIH0sXG4gICAgICBjdXN0b21pemU6IHtcbiAgICAgICAgdGl0bGU6ICdQZXJzb25uYWxpc2VyJyxcbiAgICAgICAgdGVtcGxhdGU6ICdUb29sdGlwIChDYXJ0ZSAmIEdyYXBoZSknLFxuICAgICAgICB1cGRhdGU6ICdNZXR0cmUgw6Agam91ciBsZSB0b29sdGlwJyxcbiAgICAgICAgYWR2YW5jZWQ6ICdNb2RlIGF2YW5jw6knLFxuICAgICAgICBuYW1lOiAnTW9kw6hsZSBtw6l0aWVyJyxcbiAgICAgICAgdGVjaG5pY2FsSWQ6ICdJZCB0ZWNobmlxdWUnLFxuICAgICAgICB0eXBlOiAnQ2hvaXNpc3NleiBsZSB0eXBlIGRlIHRvb2x0aXAgw6AgdXRpbGlzZXInLFxuICAgICAgICBzaW1wbGlmaWVkOiAnQ2hvaXNpc3NleiBsZXMgYXR0cmlidXRzIMOgIGFmZmljaGVyJyxcbiAgICAgICAgZXhlbXBsZTogJ3ZhbGV1ciBkZSB7e2V4cHJ9fScsXG4gICAgICAgIHRhYmxlOiAnQXR0cmlidXRzIHBhciBkw6lmYXV0IChUYWJsZSknLFxuICAgICAgICB0aWxlOiAnQXR0cmlidXRzIGFmZmljaMOpcyBzdXIgbGEgdHVpbGUnLFxuICAgICAgICB0aWxlSGludDogJ1NldWxlbWVudCBlbnRyZSAxIGV0IHt7bWF4fX0gYXR0cmlidXRzIHBldXZlbnQgw6p0cmUgYWZmaWNow6lzIGRhbnMgdW5lIHR1aWxlJyxcbiAgICAgICAgdGFibGVBdHRyczogJ0F0dHJpYnV0cyBkYW5zIGxhIHRhYmxlIHBhciBkw6lmYXV0JyxcbiAgICAgICAgdGlsZUF0dHJzOiAnQXR0cmlidXRzIHByw6lzZW50w6lzIGRhbnMgbGVzIHR1aWxlcycsXG4gICAgICAgIG5vVGFibGVBdHRyczogJ0F1dHJlcyBhdHRyaWJ1dHMnLFxuICAgICAgICBub1RpbGVBdHRyczogJ0F0dHJpYnV0cyBub24gYWZmaWNow6lzJyxcbiAgICAgICAgdXBkYXRlVGFibGU6IFwiTWV0dHJlIMOgIGpvdXIgbGVzIGF0dHJpYnV0cyBwYXIgZMOpZmF1dCBkJ3VuZSB0YWJsZVwiLFxuICAgICAgICB1cGRhdGVUaWxlOiAnTWV0dHJlIMOgIGpvdXIgbGVzIGF0dHJpYnV0cyBkZXMgdHVpbGVzJyxcbiAgICAgICAgdXBkYXRlSWNvbnM6ICdNZXR0cmUgw6Agam91ciBsZXMgcsOoZ2xlcyBkZSBzeW1ib2xlcydcbiAgICAgIH0sXG4gICAgICB2YXJUeXBlOiB7XG4gICAgICAgIGludDogJ05vbWJyZSBlbnRpZXInLFxuICAgICAgICBkb3VibGU6ICdOb21icmUgZMOpY2ltYWwnLFxuICAgICAgICBzdHJpbmc6ICdUZXh0ZScsXG4gICAgICAgIHV1aWQ6ICdJZGVudGlmaWFudCB1dWlkJyxcbiAgICAgICAgZGF0ZTogJ0RhdGUnLFxuICAgICAgICBsaXN0OiAnTGlzdGUgZGUgdmFsZXVycydcbiAgICAgIH0sXG4gICAgICBtZW51czoge1xuICAgICAgICBlbnZpcm9ubWVudDogXCJDb250ZXh0ZXMgZCdleMOpY3V0aW9uXCIsXG4gICAgICAgIHVzZXI6ICdVdGlsaXNhdGV1cnMnLFxuICAgICAgICAnbWV0YWRhdGEtdXNlcic6ICdQcm9maWwgdXRpbGlzYXRldXInLFxuICAgICAgICAnYWJhYy1ydWxlcyc6ICdSw6hnbGVzIEFCQUMnLFxuICAgICAgICAnbWV0YWRhdGEtcnVsZXMnOiAnUsOoZ2xlcyBNw6l0YWRvbm7DqWVzJyxcbiAgICAgICAgZGF0YXNldDogJ0pldXggZGUgZG9ubsOpZXMnLFxuICAgICAgICBjbGFzc2VzOiAnTW9kw6hsZXMgZGUgZG9ubsOpZXMnLFxuICAgICAgICBwcmVkaWNhdGVzOiAnUHLDqWRpY2F0cycsXG4gICAgICAgIG1ldGFkYXRhOiAnTcOpdGFkb25uw6llcycsXG4gICAgICAgIGZpZWxkczogJ1R5cGVzIG3DqXRpZXInLFxuICAgICAgICAncmVsYXRpb24tdHlwZXMnOiAnVHlwZXMgZGUgcmVsYXRpb24nLFxuICAgICAgICBsaW5rczogJ0xpZW4gZW50cmUgYXR0cmlidXRzJyxcbiAgICAgICAgbW9kZWw6ICdNb2TDqGxlIG3DqXRpZXInLFxuICAgICAgICBhY2Nlc3M6ICdBY2PDqHMgYXV4IGRvbm7DqWVzJ1xuICAgICAgfSxcbiAgICAgIHByZWRpY2F0ZXM6IHtcbiAgICAgICAgbGlzdDogJ1Byw6lkaWNhdHMnLFxuICAgICAgICBhZGQ6ICdDcsOpZXIgdW4gbm91dmVhdSBwcsOpZGljYXQnLFxuICAgICAgICBlZGl0OiAnTW9kaWZpZXIgdW4gcHLDqWRpY2F0JyxcbiAgICAgICAgaW5mbzogJ0TDqXRhaWxzIGR1IHByw6lkaWNhdCcsXG4gICAgICAgIG51bTogJ0lkLicsXG4gICAgICAgIG5hbWU6ICdOb20nLFxuICAgICAgICB2YWx1ZTogJ0V4cHJlc3Npb24gY29uZGl0aW9ubmVsbGUgZGUgZMOpY2xlbmNoZW1lbnQnLFxuICAgICAgICB2YWxpZEVkaXQ6ICdJbmZvcm1hdGlvbicsXG4gICAgICAgIHZhbGlkRWRpdE1lc3NhZ2U6ICdDZSBwcsOpZGljYXQgZXN0IHV0aWxpc8OpIGRhbnMge3t1c2VkfX0gcsOoZ2xlcy4gVm91bGV6LXZvdXMgdnJhaW1lbnQgbGUgbW9kaWZpZXIgPydcbiAgICAgIH0sXG4gICAgICBtZXRhZGF0YToge1xuICAgICAgICB0aXRsZTogJ01ldGFkb25uw6llcycsXG4gICAgICAgIGFkZDogJ0Nyw6llciB1bmUgbWV0YWRvbm7DqWUnLFxuICAgICAgICBlZGl0OiAnTW9kaWZpZXIgdW5lIG1ldGFkb25uw6llJyxcbiAgICAgICAgZGV0YWlsczogJ0TDqXRhaWxzIGRlIGxhIG1ldGFkb25uw6llJyxcbiAgICAgICAgZGV0YWlsc1VzZXI6ICdEw6l0YWlscyBkdSBwcm9maWwgdXRpbGlzYXRldXInLFxuICAgICAgICBpZDogJ0lEJyxcbiAgICAgICAgbGFiZWw6ICdOb20nLFxuICAgICAgICB0eXBlOiAnVHlwZScsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24nLFxuICAgICAgICBpbnZhbGlkOiAnTGUgY2hhbXBzIGVzdCByZXF1aXMnLFxuICAgICAgICBsaXN0TGFiZWw6ICdOb20gZGUgbGEgdmFsZXVyJyxcbiAgICAgICAgYWRkVmFsdWU6ICdBam91dGVyIHVuZSBub3V2ZWxsZSB2YWxldXInLFxuICAgICAgICByZW1vdmVWYWx1ZTogJ1N1cHByaW1lciBjZXR0ZSB2YWxldXInLFxuICAgICAgICBzeXN0ZW06ICdNw6l0YWRvbm7DqWUgc3lzdMOobWUnXG4gICAgICB9LFxuICAgICAgJ21ldGFkYXRhLXJ1bGVzJzoge1xuICAgICAgICB0aXRsZTogJ1LDqGdsZXMgTWV0YWRvbm7DqWVzJyxcbiAgICAgICAgbGFiZWw6ICdOb20nLFxuICAgICAgICAnaXMtc2FtZS1uYW1lJzogJ0xlIG5vbSBkZSBsYSByw6hnbGUgZXN0IGTDqWrDoCBwcmlzIHBvdXIgdW5lIGF1dHJlIHLDqGdsZSwgdmV1aWxsZXogZW4gdXRpbGlzZXIgdW4gYXV0cmUnLFxuICAgICAgICAnaXMtc2FtZS1ydWxlcyc6IFwiTGEgbcOqbWUgcsOoZ2xlIGEgZMOpasOgIMOpdMOpIGNvbmZpZ3Vyw6llIGV0IGVucmVnaXN0csOpZSwgdm91cyBwb3V2ZXogbCd1dGlsaXNlclwiLFxuICAgICAgICAnbWV0YWRhdGEtaXRlbSc6IHtcbiAgICAgICAgICBuYW1lOiAnTWV0YWRvbm7DqWVzIGNpYmxlJyxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJ0Rlc2NyaXB0aW9uIGRlIGxhIG1ldGFkb25uw6llIGNpYmxlJyxcbiAgICAgICAgICB0eXBlOiAnVHlwZSBkZSBsYSBtZXRhZG9ubsOpZSBjaWJsZSdcbiAgICAgICAgfSxcbiAgICAgICAgJ21ldGFkYXRhLXVzZXInOiB7XG4gICAgICAgICAgbmFtZTogJ1Byb2ZpbCB1dGlsaXNhdGV1ciBzb3VyY2UnLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24gZHUgcHJvZmlsIHV0aWxpc2F0ZXVyIHNvdXJjZScsXG4gICAgICAgICAgdHlwZTogJ1R5cGUgZHUgcHJvZmlsIHV0aWxpc2F0ZXVyIHNvdXJjZSdcbiAgICAgICAgfSxcbiAgICAgICAgZWRpdDoge1xuICAgICAgICAgIHRpdGxlOiAnTW9kaWZpZXIgdW5lIHLDqGdsZSBkZSBtZXRhZG9ubsOpZXMnXG4gICAgICAgIH0sXG4gICAgICAgIGFkZDoge1xuICAgICAgICAgIHRpdGxlOiAnQ3LDqWVyIHVuZSBub3V2ZWxsZSByw6hnbGUgZGUgbWV0YWRvbm7DqWVzJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgZGF0YXNldDoge1xuICAgICAgICBkZWxldGU6XG4gICAgICAgICAgXCJMJ2Vuc2VtYmxlIGRlcyB2ZXJzaW9ucyBldCBkZXMgZG9ubsOpZXMgYXNzb2Npw6llcyBzZXJvbnQgc3VwcHJpbcOpZXMuIExlcyByZXN0aXR1dGlvbnMgZXQgcHLDqXNlbnRhdGlvbnMgdXRpbGlzYW50IGNlIGpldSBkZSBkb25uw6llcyBuJ2FmZmljaGVyb250IHBsdXMgbGVzIGRvbm7DqWVzIGNvcnJlc3BvbmRhbnRlcy4gQ29uZmlybWV6LXZvdXMgbGEgc3VwcHJlc3Npb24gP1wiLFxuICAgICAgICB0aXRsZTogJ0pldXggZGUgZG9ubsOpZXMnLFxuICAgICAgICBkZXRhaWxzOiAnRMOpdGFpbHMgZHUgamV1IGRlIGRvbm7DqWVzJyxcbiAgICAgICAgaWQ6ICdJZGVudGlmaWFudCcsXG4gICAgICAgIG5hbWU6ICdOb20nLFxuICAgICAgICBvQ2xhc3M6ICdNb2TDqGxlIG3DqXRpZXInLFxuICAgICAgICB0eXBlOiAnVHlwZScsXG4gICAgICAgICdpcy1zYW1lLW5hbWUnOiAnTGUgbm9tIGR1IGpldSBkZSBkb25uw6llcyBlc3QgZMOpasOgIHByaXMsIHZldWlsbGV6IGVuIHV0aWxpc2VyIHVuIGF1dHJlJyxcbiAgICAgICAgYWRkOiB7XG4gICAgICAgICAgdGl0bGU6ICdDcsOpZXIgdW4gamV1IGRlIGRvbm7DqWVzJ1xuICAgICAgICB9LFxuICAgICAgICBlZGl0OiB7XG4gICAgICAgICAgdGl0bGU6ICdNb2RpZmllciB1biBqZXUgZGUgZG9ubsOpZXMnXG4gICAgICAgIH0sXG4gICAgICAgIE9QRU46ICdPdXZlcnQnLFxuICAgICAgICBDTE9TRUQ6ICdGZXJtw6knLFxuICAgICAgICBNT0RJRklBQkxFOiAnTW9kaWZpYWJsZScsXG4gICAgICAgIGNvbmZsaWN0OlxuICAgICAgICAgIFwiQXR0ZW50aW9uIGxlcyB0YWJsZWF1eCBkZSBib3JkIHN1aXZhbnQgc29udCBwYXJ0YWfDqXMgw6AgZGVzIGdyb3VwZXMgcXVpIG4nYXVyb250IHBsdXMgYWNjw6hzIGF1eCBkb25uw6llcyA6XCIsXG4gICAgICAgIGVudGl0aWVzOiB7XG4gICAgICAgICAgZGFzaGJvYXJkOiAnVGFibGVhdXggZGUgYm9yZCdcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgICdhYmFjLXJ1bGVzJzoge1xuICAgICAgICBkZWxldGU6ICdTdXBwcmltZXInLFxuICAgICAgICBtZXRhZGF0YVVzZXI6ICdQcm9maWwgdXRpbGlzYXRldXInLFxuICAgICAgICB0aXRsZToge1xuICAgICAgICAgIGxpc3Q6ICdSw6hnbGVzIEFiYWMnLFxuICAgICAgICAgIGFkZDogJ0Nyw6llciB1bmUgcsOoZ2xlIGFiYWMnLFxuICAgICAgICAgIHZpZXc6IFwiRMOpdGFpbHMgZCd1bmUgcsOoZ2xlIGFiYWNcIixcbiAgICAgICAgICBlZGl0OiAnTW9kaWZpZXIgdW5lIHLDqGdsZSBhYmFjJ1xuICAgICAgICB9LFxuICAgICAgICBmb3JtOiB7XG4gICAgICAgICAgaWQ6ICdOdW3DqXJvJyxcbiAgICAgICAgICBuYW1lOiAnTm9tJyxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJ0Rlc2NyaXB0aW9uJyxcbiAgICAgICAgICBzdGF0dXM6ICdTdGF0dXQnLFxuICAgICAgICAgIHN0YXR1c0FjdGl2ZTogJ0FjdGlmJyxcbiAgICAgICAgICBzdGF0dXNJbmFjdGl2ZTogJ0luYWN0aWYnLFxuICAgICAgICAgIHByZWRpY2F0ZTogJ1Byw6lkaWNhdCBkZSBkw6ljbGVuY2hlbWVudCcsXG4gICAgICAgICAgdHlwZTogJ1R5cGUnLFxuICAgICAgICAgIHR5cGVNZXRhZGF0YTogJ01ldGFkb25uw6llJyxcbiAgICAgICAgICB0eXBlQXR0cmlidXRlOiAnQXR0cmlidXQnLFxuICAgICAgICAgIHR5cGVTZWxlY3RlZDogJ1ZvdXMgbmUgcG91dmV6IHBhcyBjaGFuZ2VyIGxlIHR5cGUgYXZlYyBsZXMgY29uZGl0aW9ucyBleGlzdGFudGVzJyxcbiAgICAgICAgICBhZGRNZXRhZGF0YTogJ0Fqb3V0ZXIgdW5lIGNvbmRpdGlvbiBzdXIgdW5lIG1ldGFkb25uw6llJyxcbiAgICAgICAgICBhZGRBdHRyaWJ1dGU6ICdBam91dGVyIHVuZSBjb25kaXRpb24gc3VyIHVuIGF0dHJpYnV0JyxcbiAgICAgICAgICB0b2dnbGVBbmQ6ICdFVCcsXG4gICAgICAgICAgdG9nZ2xlT3I6ICdPVScsXG4gICAgICAgICAgYWRkR3JvdXA6ICdBam91dGVyIHVuIHNvdXMtZ3JvdXBlJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgdXNlcjoge1xuICAgICAgICB0aXRsZTogJ1Byb2ZpbCB1dGlsaXNhdGV1cicsXG4gICAgICAgIGFkZDogJ0Nyw6llciB1biBub3V2ZWF1IHByb2ZpbCB1dGlsaXNhdGV1cicsXG4gICAgICAgIGxhYmVsOiAnTm9tJyxcbiAgICAgICAgdHlwZTogJ1R5cGUnLFxuICAgICAgICBpbnZhbGlkOiAnTGUgY2hhbXAgZXN0IHJlcXVpcycsXG4gICAgICAgIGVkaXQ6ICdNb2RpZmllciB1biBwcm9maWwgdXRpbGlzYXRldXInXG4gICAgICB9LFxuICAgICAgZW52aXJvbm1lbnQ6IHtcbiAgICAgICAgbGlzdDogXCJDb250ZXh0ZXMgZCdleMOpY3V0aW9uXCIsXG4gICAgICAgIGFkZDogXCJDcsOpZXIgdW4gbm91dmVhdSBjb250ZXh0ZSBkJ2V4w6ljdXRpb25cIixcbiAgICAgICAgZWRpdDogXCJNb2RpZmllciB1biBjb250ZXh0ZSBkJ2V4w6ljdXRpb25cIixcbiAgICAgICAgaW5mbzogXCJEw6l0YWlscyBkdSBjb250ZXh0ZSBkJ2V4w6ljdXRpb25cIixcbiAgICAgICAgZm9ybWF0SW50OiAnTGEgdmFsZXVyIGRvaXQgw6p0cmUgdW4gZW50aWVyLicsXG4gICAgICAgIGZvcm1hdERvdWJsZTogXCJMYSB2YWxldXIgZG9pdCDDqnRyZSB1biBlbnRpZXIsIGxlIHPDqXBhcmF0ZXVyIGF1dG9yaXPDqSBlc3QgdW4gJy4nXCIsXG4gICAgICAgIGZvcm1hdE5hbWU6ICdDYXJhY3TDqHJlcyBzcGVjaWF1eCBhdXRvcmlzw6lzOiBbIC0sIF8gXSAnLFxuICAgICAgICBuYW1lOiAnTm9tJyxcbiAgICAgICAgdHlwZTogJ1R5cGUnLFxuICAgICAgICB2YWx1ZTogJ1ZhbGV1ciBkZSBsYSB2YXJpYWJsZSdcbiAgICAgIH0sXG4gICAgICBjbGFzc2VzOiB7XG4gICAgICAgIGxpc3Q6ICdNb2TDqGxlcyBkZSBkb25uw6llcycsXG4gICAgICAgIG5hbWU6ICdOb20nLFxuICAgICAgICB0aXRsZTogJ01vZMOobGUgZGUgZG9ubsOpZXMge3tjbGFzc319JyxcbiAgICAgICAgaW1hZ2U6ICdJbWFnZScsXG4gICAgICAgIGZvcm1hdE5hbWU6ICdDYXJhY3TDqHJlcyBhdXRvcmlzw6lzOiBbIG1pbnVzY3VsZSwgLSwgXyBdJyxcbiAgICAgICAgbW9kZWw6ICdNb2TDqGxlJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbicsXG4gICAgICAgIGxpbmVzOiAnTGlnbmVzJyxcbiAgICAgICAgYWRkOiAnQ3LDqWVyIHVuIG5vdXZlYXUgbW9kw6hsZSBkZSBkb25uw6llcycsXG4gICAgICAgIGVkaXQ6ICdNb2RpZmllciBsZSBtb2TDqGxlIGRlIGRvbm7DqWVzJyxcbiAgICAgICAgcmVuYW1lOiAnUmVub21tZXIgbGUgbW9kw6hsZSBkZSBkb25uw6llcycsXG4gICAgICAgIGFkZEF0dHI6ICdBdHRyaWJ1dCcsXG4gICAgICAgIGluZm9BdHRyOiAnTW9kw6hsZSBkZSBkb25uw6llcyB7e2NsYXNzfX0gPiBBdHRyaWJ1dHMnLFxuICAgICAgICBpbmZvOiAnRMOpdGFpbCBkdSBtb2TDqGxlIGRlIGRvbm7DqWVzJyxcbiAgICAgICAgcnVsZXM6ICdSw6hnbGVzIGRlIGTDqWZpbml0aW9uIGRlIHN5bWJvbGVzJyxcbiAgICAgICAgY29uZGl0aW9uOiAnQWN0aWYgc2Vsb24gdW5lIGNvbmRpdGlvbicsXG4gICAgICAgIGF0dHJOYW1lOiAnQXR0cmlidXRlIMOgIHbDqXJpZmllcicsXG4gICAgICAgIHZhbHVlOiAnVmFsZXVyIGRlIGNvbXBhcmFpc29uJyxcbiAgICAgICAgb3BlcmF0aW9uOiAnT3DDqXJhdGlvbiBkZSBjb21wYXJhaXNvbicsXG4gICAgICAgIG9wZXJhdGlvbnM6IHtcbiAgICAgICAgICBFUVVBTFM6ICdlc3Qgw6lnYWwnLFxuICAgICAgICAgIEdSRUFURVI6ICdlc3QgcGx1cyBncmFuZCcsXG4gICAgICAgICAgR1JFQVRFUl9PUl9FUVVBTDogJ2VzdCBwbHVzIGdyYW5kIG91IMOpZ2FsJyxcbiAgICAgICAgICBMT1dFUjogJ3BsdXMgcGV0aXQnLFxuICAgICAgICAgIExPV0VSX09SX0VRVUFMOiAncGx1cyBwZXRpdCBvdSDDqWdhbCcsXG4gICAgICAgICAgQ09OVEFJTlM6ICdjb250aWVudCB0ZXh0dWVsbGVtZW50J1xuICAgICAgICB9LFxuICAgICAgICBjcmVhdGVDbGFzc01vZGFsTWVzc2FnZTpcbiAgICAgICAgICAnSW1wb3NzaWJsZSBkZSBjcsOpZXIgdW4gbW9kw6hsZSBkZSBkb25uw6llcyBzYW5zIGF0dHJpYnV0cy4gVmV1aWxsZXogZW4gYWpvdXRlciBhdSBtb2lucyB1biBlbiBjbGlxdWFudCBzdXIgXCJBam91dGVyIHVuIGF0dHJpYnV0XCIuJyxcbiAgICAgICAgY3JlYXRlQ2xhc3NDb25maXJtTWVzc2FnZTogJ1ZvdWxlei12b3VzIGNvbmZpcm1lciBsYSBjcsOpYXRpb24gZHUgbW9kw6hsZSBkZSBkb25uw6llcyA/JyxcbiAgICAgICAgZGVsZXRlQ2xhc3NDb25maXJtTWVzc2FnZTogJ0NvbmZpcm1lei12b3VzIGxhIHN1cHByZXNzaW9uIGRlIGNlIG1vZMOobGUgbcOpdGllciA/JyxcbiAgICAgICAgbGlua2VkT2JqZWN0czogJ09iamV0cyBsacOpcycsXG4gICAgICAgIHVzZWRFbHNld2hlcmU6IFwiVXRpbGlzw6kgcGFyIGRlcyBvYmpldHMgZCdhdXRyZXMgdXRpbGlzYXRldXJzXCIsXG4gICAgICAgIGFzc29jaWF0aW9uczogJ0Fzc29jaWF0aW9ucycsXG4gICAgICAgIHR5cGU6ICdUeXBlJyxcbiAgICAgICAgYXR0cmlidXRlczoge1xuICAgICAgICAgIGFkZDogJ05vdXZlbCBhdHRyaWJ1dCcsXG4gICAgICAgICAgZWRpdDogXCJNb2RpZmllciBsJ2F0dHJpYnV0XCIsXG4gICAgICAgICAgaW5mbzogXCJEw6l0YWlsIGRlIGwnYXR0cmlidXRcIixcbiAgICAgICAgICBkZWxldGU6IFwiU3VwcHJpbWVyIGwnYXR0cmlidXRcIixcbiAgICAgICAgICBuYW1lOiBcIkxpYmVsbMOpIGRlIGwnYXR0cmlidXRcIixcbiAgICAgICAgICB0ZWNobmljYWxOYW1lOiAnTm9tIHRlY2huaXF1ZScsXG4gICAgICAgICAgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbicsXG4gICAgICAgICAgZmllbGQ6ICdUeXBlJyxcbiAgICAgICAgICBjYXRlZ29yeTogJ0NhdMOpZ29yaWUnLFxuICAgICAgICAgIG11bHRpVmFsdWVkOiAnTXVsdGkgdmFsdcOpJ1xuICAgICAgICB9LFxuICAgICAgICBjYXRlZ29yeToge1xuICAgICAgICAgIHNlbGVjdDogJ1PDqWxlY3Rpb25uZXIgdW5lIGNhdMOpZ29yaWUnLFxuICAgICAgICAgIHNlYXJjaE9yQ3JlYXRlOiAnUmVjaGVyY2hlciB1bmUgY2F0w6lnb3JpZSBleGlzdGFudGUgT1UgZW4gY3LDqWVyIHVuZSBub3V2ZWxsZScsXG4gICAgICAgICAgbmFtZTogJ0NhdMOpZ29yaWUnLFxuICAgICAgICAgIHNlbGVjdEl0OiAnU8OpbGVjdGlvbm5lciBsYSBjYXTDqWdvcmllJyxcbiAgICAgICAgICBjcmVhdGU6ICdDcsOpZXIgbGEgY2F0w6lnb3JpZScsXG4gICAgICAgICAgYWRkOiBcIm4nZXhpc3RlIHBhcyBlbmNvcmUuIDxicj5JbCBlc3QgcG9zc2libGUgXFxuIGRlIGxhIGNyw6llciBpY2kuIDxicj5FbGxlIHNlcmEgYXV0b21hdGlxdWVtZW50IHPDqWxlY3Rpb25uw6llIGV0IGFqb3V0w6llIMOgIGxhIGxpc3RlIGRlcyBjYXTDqWdvcmllcy5cIlxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgZmllbGRzOiB7XG4gICAgICAgIGFkZDogJ0Nyw6llciB1biBub3V2ZWF1IHR5cGUgbcOpdGllcicsXG4gICAgICAgIGNyczogJ0NSUyAoY29kZSBFUFNHKSA6JyxcbiAgICAgICAgaW5mbzogJ0TDqXRhaWwgZHUgdHlwZSBtw6l0aWVyJyxcbiAgICAgICAgbGlzdDogJ1R5cGVzIG3DqXRpZXInLFxuICAgICAgICBlZGl0OiAnTW9kaWZpZXIgbGUgdHlwZSBtw6l0aWVyJyxcbiAgICAgICAgbmFtZTogJ05vbScsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24nLFxuICAgICAgICB0eXBlOiAnVHlwZSB0ZWNobmlxdWUnLFxuICAgICAgICBhdHRyaWJ1dGVzOiAnUHLDqXNlbmNlIGRhbnMgZGVzIGF0dHJpYnV0cycsXG4gICAgICAgIGF0dHJpYnV0ZXNUYWI6ICdBdHRyaWJ1dHMnLFxuICAgICAgICBhdHRyaWJ1dGVOYW1lOiBcIk5vbSBkJ2F0dHJpYnV0XCIsXG4gICAgICAgIGNsYXNzTmFtZTogJ0NsYXNzZScsXG4gICAgICAgIGNvbmZpcm1GaWVsZERlbGV0aW9uOiAnQ29uZmlybWV6LXZvdXMgbGEgc3VwcHJlc3Npb24gZGUgY2UgdHlwZSBtw6l0aWVyID8nLFxuICAgICAgICBmaWVsZFR5cGU6IHtcbiAgICAgICAgICBpbnQ6ICdOb21icmUgZW50aWVyJyxcbiAgICAgICAgICBsb25nOiAnTm9tYnJlIGVudGllciBsb25nJyxcbiAgICAgICAgICBkZWNpbWFsOiAnTm9tYnJlIGTDqWNpbWFsJyxcbiAgICAgICAgICBzdHJpbmc6ICdUZXh0ZSBicnV0JyxcbiAgICAgICAgICBrZXl3b3JkOiAnVGV4dGUgaW5kZXjDqScsXG4gICAgICAgICAgaW5zdGFudDogJ0RhdGUnLFxuICAgICAgICAgIHJhdzogJ0Rvbm7DqWUgbm9uIHN0cnVjdHVyw6llJyxcbiAgICAgICAgICBwb2ludDogJ1BvaW50JyxcbiAgICAgICAgICBtdWx0aXBvaW50OiAnTXVsdGktcG9pbnRzJyxcbiAgICAgICAgICBsaW5lOiAnTGlnbmUnLFxuICAgICAgICAgIG11bHRpbGluZTogJ011bHRpLWxpZ25lcycsXG4gICAgICAgICAgcG9seWdvbjogJ1BvbHlnb25lJyxcbiAgICAgICAgICBtdWx0aXBvbHlnb246ICdNdWx0aS1wb2x5Z29uZXMnLFxuICAgICAgICAgIGluZm9ybWF0aW9uOiB7XG4gICAgICAgICAgICBpbnQ6ICdQZXJtZXQgZGUgc3RvY2tlciBkZXMgZG9ubsOpZXMgbnVtw6lyaXF1ZXMgZW50acOocmVzIGluZsOpcmlldXJlcyDDoCAyXjMyJyxcbiAgICAgICAgICAgIGxvbmc6ICdQZXJtZXQgZGUgc3RvY2tlciBkZXMgZG9ubsOpZXMgbnVtw6lyaXF1ZXMgZW50acOocmVzIHBvdXZhbnQgZMOpcGFzc2VyIDJeMzInLFxuICAgICAgICAgICAgZGVjaW1hbDogJ1Blcm1ldCBkZSBzdG9ja2VyIGRlcyBkb25uw6llcyBudW3DqXJpcXVlcyBhdmVjIGRlcyBkw6ljaW1hbGVzJyxcbiAgICAgICAgICAgIHN0cmluZzpcbiAgICAgICAgICAgICAgXCJQZXJtZXQgZGUgc3RvY2tlciBkZXMgZG9ubsOpZXMgYXUgZm9ybWF0IGFscGhhbnVtw6lyaXF1ZS4gQ2VzIGRvbm7DqWVzIG5lIHNvbnQgcGFzIGluZGV4w6llcyA6IGlsIGVzdCBwb3NzaWJsZSBkZSBmYWlyZSB1bmUgcmVjaGVyY2hlIGRlc3N1cyBtYWlzIHBhcyBkJ2FncsOpZ2F0aW9uXCIsXG4gICAgICAgICAgICBrZXl3b3JkOlxuICAgICAgICAgICAgICAnUGVybWV0IGRlIHN0b2NrZXIgZGVzIGRvbm7DqWVzIGF1IGZvcm1hdCBhbHBoYW51bcOpcmlxdWUuIENlcyBkb25uw6llcyBzb250IGluZGV4w6llcyA6IGlsIGVzdCBwb3NzaWJsZSBkZSBmYWlyZSB1bmUgcmVjaGVyY2hlIGRlc3N1cyBhaW5zaSBxdWUgZGVzIGFncsOpZ2F0aW9ucy4nLFxuICAgICAgICAgICAgaW5zdGFudDogJ1Blcm1ldCBkZSBzdG9ja2VyIHVuZSBkYXRlJyxcbiAgICAgICAgICAgIHJhdzogJ3Blcm1ldCBkZSBzdG9ja2VyIGRlcyBkb25uw6llcyBkZSB0eXBlIGltYWdlIG91IGZpY2hpZXInLFxuICAgICAgICAgICAgcG9pbnQ6XG4gICAgICAgICAgICAgIFwiUGVybWV0IGRlIHN0b2NrZXIgZGVzIGNvb3Jkb25uw6llcyBnw6lvZ3JhcGhpcXVlcyBkJ3VuIG9iamV0IHJlcHLDqXNlbnTDqSBwYXIgdW4gcG9pbnQgKGZvcm1hdCBnw6lvanNvbilcIixcbiAgICAgICAgICAgIG11bHRpcG9pbnQ6XG4gICAgICAgICAgICAgIFwiUGVybWV0IGRlIHN0b2NrZXIgZGVzIGNvb3Jkb25uw6llcyBnw6lvZ3JhcGhpcXVlcyBkJ3VuIG9iamV0IGNvbXBvc8OpIGRlIHBsdXNpZXVycyBwb2ludHMgbm9uIHJlbGnDqXMgKGZvcm1hdCBnw6lvanNvbilcIixcbiAgICAgICAgICAgIGxpbmU6IFwiUGVybWV0IGRlIHN0b2NrZXIgZGVzIGNvb3Jkb25uw6llcyBnw6lvZ3JhcGhpcXVlcyBkJ3VuIG9iamV0IHJlcHLDqXNlbnTDqSBjb21tZSB1bmUgbGlnbmUgKGZvcm1hdCBnw6lvanNvbilcIixcbiAgICAgICAgICAgIG11bHRpbGluZTpcbiAgICAgICAgICAgICAgXCJQZXJtZXQgZGUgc3RvY2tlciBkZXMgY29vcmRvbm7DqWVzIGfDqW9ncmFwaGlxdWVzIGQndW4gb2JqZXQgcmVwcsOpc2VudMOpIGF2ZWMgcGx1c2lldXJzIGxpZ25lcyBub24gcmVsacOpZXMgZW50cmUgZWxsZXMgKGxvbmdpdHVkZSBldCBsYXRpdHVkZSBmb3JtYXQgZ8Opb2pzb24pXCIsXG4gICAgICAgICAgICBwb2x5Z29uOlxuICAgICAgICAgICAgICBcIlBlcm1ldCBkZSBzdG9ja2VyIGRlcyBjb29yZG9ubsOpZXMgZ8Opb2dyYXBoaXF1ZXMgZCd1biBvYmpldCByZXByw6lzZW50w6kgcGFyIHVuIHBvbHlnb25lIChmb3JtYXQgZ8Opb2pzb24pXCIsXG4gICAgICAgICAgICBtdWx0aXBvbHlnb246XG4gICAgICAgICAgICAgIFwiUGVybWV0IGRlIHN0b2NrZXIgZGVzIGNvb3Jkb25uw6llcyBnw6lvZ3JhcGhpcXVlcyBkJ3VuIG9iamV0IHJlcHLDqXNlbnTDqSBwYXIgcGx1c2lldXJzIHBvbHlnb25lcyBpbWJyaXF1w6lzIG91IG5vbiAoZm9ybWF0IGfDqW9qc29uKVwiXG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICByYXdNZXRob2RzOiB7XG4gICAgICAgICAgaHR0cDogJ0RlcHVpcyB1bmUgdXJsJyxcbiAgICAgICAgICB1cGxvYWQ6ICdUw6lsw6l2ZXJzZXIgZGVwdWlzIG1vbiBvcmRpbmF0ZXVyJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgdXNlckluZm86IHtcbiAgICAgICAgbGlzdDogJ1V0aWxpc2F0ZXVycycsXG4gICAgICAgIGluZm86IFwiRMOpdGFpbCBkZSBsJ3V0aWxpc2F0ZXVyXCIsXG4gICAgICAgIHByb2ZpbGU6ICdQcm9maWwnLFxuICAgICAgICBhZGRNZXRhZGF0YTogJ0Fqb3V0ZXInLFxuICAgICAgICBlZGl0TWV0YWRhdGE6ICdNb2RpZmllciBsYSBtw6l0YWRvbm7DqWUnLFxuICAgICAgICBuYW1lOiAnUHLDqW5vbScsXG4gICAgICAgIGZhbWlseU5hbWU6ICdOb20gZGUgZmFtaWxsZScsXG4gICAgICAgIGVtYWlsOiAnQWRyZXNzZSBtYWlsJyxcbiAgICAgICAgbWV0YWRhdGE6ICdNw6l0YWRvbm7DqWVzJyxcbiAgICAgICAgcm9sZXM6ICcgUsO0bGVzJ1xuICAgICAgfSxcbiAgICAgIHJlbGF0aW9uVHlwZXM6IHtcbiAgICAgICAgbGlzdDogJ1R5cGVzIGRlIHJlbGF0aW9ucycsXG4gICAgICAgIGFkZDogJ0Fqb3V0ZXIgbGUgdHlwZSBkZSByZWxhdGlvbicsXG4gICAgICAgIGVkaXQ6ICdNb2RpZmllciBsZSB0eXBlIGRlIHJlbGF0aW9uJyxcbiAgICAgICAgaW5mbzogJ0TDqXRhaWwgZHUgdHlwZSBkZSByZWxhdGlvbicsXG4gICAgICAgIG5hbWU6ICdOb20nLFxuICAgICAgICBuYlJlbGF0aW9uOiAnTm9tYnJlIGRlIHJlbGF0aW9ucyBkZSBjZSB0eXBlJyxcbiAgICAgICAgbmJMaW5rOiAnTm9tYnJlIGRlIGxpZW5zIHV0aWxpc2FudCBjZSB0eXBlIGRlIHJlbGF0aW9uJyxcbiAgICAgICAgZGF0ZU1vZGlmaWNhdGlvbjogJ0RhdGUgZGUgbW9kaWZpY2F0aW9uJyxcbiAgICAgICAgZGVsZXRhYmxlOiAnUGV1dCDDqnRyZSBzdXBwcmltw6knLFxuICAgICAgICBkZWxldGVNb2RhbE1lc3NhZ2U6ICdDZSB0eXBlIGRlIHJlbGF0aW9uIG5lIHBldXQgw6p0cmUgc3VwcHJpbcOpIGNhciB1dGlsaXPDqS4nXG4gICAgICB9LFxuICAgICAgbGlua3M6IHtcbiAgICAgICAgbGlzdDogJ0xpZW5zIGVudHJlIGF0dHJpYnV0cycsXG4gICAgICAgIGFkZDogJ0Fqb3V0ZXIgdW4gbm91dmVhdSBsaWVuIGVudHJlIGF0dHJpYnV0cycsXG4gICAgICAgIGNsYXNzU291cmNlOiAnTW9kw6hsZSBtw6l0aWVyIHNvdXJjZScsXG4gICAgICAgIGF0dHJpYnV0ZVNvdXJjZTogJ0F0dHJpYnV0IHNvdXJjZScsXG4gICAgICAgIGNsYXNzRGVzdGluYXRpb246ICdNb2TDqGxlIG3DqXRpZXIgZGUgZGVzdGluYXRpb24nLFxuICAgICAgICBhdHRyaWJ1dGVEZXN0aW5hdGlvbjogJ0F0dHJpYnV0IGRlIGRlc3RpbmF0aW9uJyxcbiAgICAgICAgcmVsYXRpb25UeXBlOiAnVHlwZSBkZSByZWxhdGlvbicsXG4gICAgICAgIHNlbGVjdFJlbGF0aW9uVHlwZTogJ1NlbGVjdGlvbm5leiB1biB0eXBlIGRlIHJlbGF0aW9uJ1xuICAgICAgfSxcbiAgICAgIGFzc29jaWF0aW9uOiB7XG4gICAgICAgIEFCQUM6ICdSw6hnbGUgQUJBQycsXG4gICAgICAgIExJTks6ICdSZWxhdGlvbicsXG4gICAgICAgIE5BTUVEX1FVRVJZOiAnUmVxdcOqdGUgbm9tbcOpZScsXG4gICAgICAgIFdJREdFVDogJ1Jlc3RpdHV0aW9uJyxcbiAgICAgICAgREFUQVNFVDogJ0pldSBkZSBkb25uw6llcycsXG4gICAgICAgIE9DTEFTUzogJ01vZMOobGUgZGUgZG9ubsOpZXMnLFxuICAgICAgICBEQVNIQk9BUkQ6ICdQcsOpc2VudGF0aW9uJyxcbiAgICAgICAgRklFTEQ6ICdUeXBlIG3DqXRpZXInXG4gICAgICB9LFxuICAgICAgc3RvcmFnZToge1xuICAgICAgICBsYWJlbDogJ0Jhc2UgZGUgc3RvY2thZ2UnLFxuICAgICAgICBkZXNjcmlwdGlvbjoge1xuICAgICAgICAgIFBPU1RHSVM6XG4gICAgICAgICAgICBcIkNlIHN0b2NrYWdlIGVzdCBjb25zZWlsbMOpIGVuIGNhcyBkZSBzdG9ja2FnZSBkZSBkb25uw6llcyBnw6lvZ3JhcGhpcXVlIGNvbXBsZXhlcyBvdSBkYW5zIGRlcyBzeXN0w6htZXMgZGUgY29vcmRvbm7DqWVzIGRpZmbDqXJlbnRzIGRlIFdHUyA4NC4gSWwgZXN0IHJlY29tbWFuZMOpIGRlIG5lIHN0b2NrZXIgZGFucyBjZXR0ZSBiYXNlIHF1ZSBkZXMgbW9kw6hsZXMgbcOpdGllciBkb250IGxhIHZvbHVtw6l0cmllIGRlIGRvbm7DqWVzIGVzdGltw6llIChlbiB0ZXJtZSBkZSBub21icmUgZCdpdGVtcykgbidlc3QgcGFzIHRyb3Agw6lsZXbDqWUuXCIsXG4gICAgICAgICAgRUxBU1RJQzpcbiAgICAgICAgICAgIFwiQ2Ugc3RvY2thZ2UgZXN0IGNvbnNlaWxsw6kgZW4gY2FzIGRlIGZvcnRlIHZvbHVtw6l0cmllIGRlIGRvbm7DqWVzIHByw6l2dWUgcG91ciBjZSBtb2TDqGxlIG3DqXRpZXIgKGdyYW5kIG5vbWJyZSBkJ2l0ZW1zKS4gU2kgdm91cyBzb3VoYWl0ZXogc3RvY2tlciBkZXMgZG9ubsOpZXMgZ8Opb2dyYXBoaXF1ZXMgZGFucyBjZSBtb2TDqGxlLCBkZXMgZm9ybWVzIHNpbXBsZXMgc29udCBjb25zZWlsbMOpZXMgZXQgbGUgc3lzdMOobWUgZGUgY29vcmRvbm7DqWVzIGRlIHLDqWbDqXJlbmNlIHV0aWxpc8OpIGRvaXQgw6p0cmUgV0dTIDg0LiBDZSBzeXN0w6htZSBkZSBzdG9ja2FnZSBvZmZyZSB1bmUgc2NhbGFiaWxpdMOpIGhvcml6b250YWxlXCJcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIFBPU1RHSVM6ICdQb3N0R0lTJyxcbiAgICAgICAgICBFTEFTVElDOiAnRWxhc3RpY1NlYXJjaCdcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgdG9vbHRpcDoge1xuICAgICAgZGVmYXVsdDogJ1Rvb2x0aXAgcGFyIGTDqWZhdXQnLFxuICAgICAgYXR0cmlidXRlOiAnVG9vbHRpcCBhZmZpY2hhbnQgY2VydGFpbnMgYXR0cmlidXRzJyxcbiAgICAgIGNsdXN0ZXI6ICdUb29sdGlwIHBvdXIgbGVzIGNsdXN0ZXJzIChncmFwaGVzKScsXG4gICAgICBsaW5rOiAnVG9vbHRpcCBwb3VyIGxlcyBsaWVucyAoZ3JhcGhlcyknLFxuICAgICAgbm9uZTogJ1BhcyBkZSB0b29sdGlwJ1xuICAgIH1cbiAgfVxufTtcbiJdfQ==
377
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnIudHJhbnNsYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvYWRtaW4vaTE4bi9mci50cmFuc2xhdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHO0lBQzVCLE1BQU0sRUFBRTtRQUNOLEtBQUssRUFBRTtZQUNMLEtBQUssRUFBRSxnQkFBZ0I7WUFDdkIsZUFBZSxFQUFFLCtCQUErQjtZQUNoRCxjQUFjLEVBQUUsYUFBYTtZQUM3QixXQUFXLEVBQUUsUUFBUTtZQUNyQixJQUFJLEVBQUUsVUFBVTtZQUNoQixNQUFNLEVBQUUsVUFBVTtZQUNsQixNQUFNLEVBQUUsV0FBVztZQUNuQixHQUFHLEVBQUUsU0FBUztZQUNkLFFBQVEsRUFBRSxTQUFTO1lBQ25CLFFBQVEsRUFBRSxxQkFBcUI7WUFDL0IsWUFBWSxFQUFFLHFCQUFxQjtZQUNuQyxNQUFNLEVBQUUsT0FBTztZQUNmLE1BQU0sRUFBRSxtQkFBbUI7WUFDM0IsS0FBSyxFQUFFLFVBQVU7WUFDakIsTUFBTSxFQUFFLFNBQVM7WUFDakIsSUFBSSxFQUFFLFFBQVE7WUFDZCxJQUFJLEVBQUUsU0FBUztZQUNmLFVBQVUsRUFBRSxZQUFZO1lBQ3hCLE9BQU8sRUFBRSxTQUFTO1lBQ2xCLFFBQVEsRUFBRSxVQUFVO1lBQ3BCLFFBQVEsRUFBRSxzQkFBc0I7WUFDaEMsTUFBTSxFQUFFLHlCQUF5QjtZQUNqQyxTQUFTLEVBQUUsd0NBQXdDO1lBQ25ELFNBQVMsRUFBRSx5Q0FBeUM7WUFDcEQsWUFBWSxFQUFFLHlEQUF5RDtZQUN2RSxJQUFJLEVBQUUsZ0JBQWdCO1lBQ3RCLFdBQVcsRUFBRSwwRUFBMEU7WUFDdkYsZ0JBQWdCLEVBQUUsNkJBQTZCO1lBQy9DLElBQUksRUFBRSxtQkFBbUI7WUFDekIsNkJBQTZCLEVBQzNCLGtHQUFrRztZQUNwRyxRQUFR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LHlDQUF5QztnQkFDOUMsV0FBVyxFQUFFLHNCQUFzQjtnQkFDbkMsZUFBZSxFQUFFLGlCQUFpQjtnQkFDbEMsZ0JBQWdCLEVBQUUsOEJBQThCO2dCQUNoRCxvQkFBb0IsRUFBRSx5QkFBeUI7Z0JBQy9DLFlBQVksRUFBRSxrQkFBa0I7Z0JBQ2hDLGtCQUFrQixFQUFFLGtDQUFrQzthQUN2RDtZQUNELFdBQVcsRUFBRTtnQkFDWCxJQUFJLEVBQUUsWUFBWTtnQkFDbEIsSUFBSSxFQUFFLFVBQVU7Z0JBQ2hCLFdBQVcsRUFBRSxnQkFBZ0I7Z0JBQzdCLE1BQU0sRUFBRSxhQUFhO2dCQUNyQixPQUFPLEVBQUUsZ0JBQWdCO2dCQUN6QixNQUFNLEVBQUUsbUJBQW1CO2dCQUMzQixTQUFTLEVBQUUsY0FBYztnQkFDekIsS0FBSyxFQUFFLGFBQWE7YUFDckI7WUFDRCxPQUFPLEVBQUU7Z0JBQ1AsS0FBSyxFQUFFLGtCQUFrQjtnQkFDekIsV0FBVyxFQUFFO29CQUNYLE9BQU8sRUFDTCwyU0FBMlM7b0JBQzdTLE9BQU8sRUFDTCwyVkFBMlY7aUJBQzlWO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxPQUFPLEVBQUUsU0FBUztvQkFDbEIsT0FBTyxFQUFFLGVBQWU7aUJBQ3pCO2FBQ0Y7U0FDRjtRQUNELE9BQU8sRUFBRTtZQUNQLE9BQU8sRUFBRSxvQkFBb0I7WUFDN0IsU0FBUyxFQUFFLHNDQUFzQztZQUNqRCxPQUFPLEVBQUUscUNBQXFDO1lBQzlDLElBQUksRUFBRSxrQ0FBa0M7WUFDeEMsSUFBSSxFQUFFLGdCQUFnQjtTQUN2QjtLQUNGO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBmclRyYW5zbGF0aW9ucyA9IHtcbiAgJ0BwcnknOiB7XG4gICAgYWRtaW46IHtcbiAgICAgIHRpdGxlOiAnQWRtaW5pc3RyYXRpb24nLFxuICAgICAgdGl0bGVJbmRpY2F0aW9uOiAnRmVybWVyIGxlIG1lbnUgQWRtaW5pc3RyYXRpb24nLFxuICAgICAgaW5mb01vZGFsVGl0bGU6ICdJbmZvcm1hdGlvbicsXG4gICAgICBjbG9zZU1vZGFsZTogJ0Zlcm1lcicsXG4gICAgICBlZGl0OiAnTW9kaWZpZXInLFxuICAgICAgcmVuYW1lOiAnUmVub21tZXInLFxuICAgICAgZGVsZXRlOiAnU3VwcHJpbWVyJyxcbiAgICAgIGFkZDogJ05vdXZlYXUnLFxuICAgICAgdmFsaWRhdGU6ICdWYWxpZGVyJyxcbiAgICAgIGFkZENsYXNzOiAnVmFsaWRlciBsYSBjcsOpYXRpb24nLFxuICAgICAgYWRkQXR0cmlidXRlOiAnQWpvdXRlciB1biBhdHRyaWJ1dCcsXG4gICAgICBjcmVhdGU6ICdDcsOpZXInLFxuICAgICAgdXBsb2FkOiAnQWpvdXRlciB1bmUgaW1hZ2UnLFxuICAgICAgc2hhcmU6ICdQYXJ0YWdlcicsXG4gICAgICBjYW5jZWw6ICdBbm51bGVyJyxcbiAgICAgIGJhY2s6ICdSZXRvdXInLFxuICAgICAgbmV4dDogJ1N1aXZhbnQnLFxuICAgICAgcHJvcGVydGllczogJ1Byb3ByacOpdMOpcycsXG4gICAgICBkZXRhaWxzOiAnRMOpdGFpbHMnLFxuICAgICAgYWN0aXZpdHk6ICdBY3Rpdml0w6knLFxuICAgICAgcmVxdWlyZWQ6ICdMZSBjaGFtcHMgZXN0IHJlcXVpcycsXG4gICAgICBleGlzdHM6ICdDZSBub20gZXN0IGTDqWrDoCB1dGlsaXPDqScsXG4gICAgICBtaW5MZW5ndGg6ICdOb21icmUgbWluaW1hbCBkZSBjYXJhY3TDqHJlcyA6IHt7bGVufX0nLFxuICAgICAgbWF4TGVuZ3RoOiAnTm9tYnJlIGRlIGNhcmFjdMOocmVzIGF1dG9yaXPDqSA6IHt7bGVufX0nLFxuICAgICAgbm9XaGl0ZXNwYWNlOiAnTGEgdmFsZXVyIG5lIHBldXQgcGFzIGNvbW1lbmNlciBvdSBmaW5pciBwYXIgdW4gZXNwYWNlLicsXG4gICAgICBydWxlOiAnUsOoZ2xlIG7CsHt7aWR9fScsXG4gICAgICBkZWZhdWx0UnVsZTogXCJSw6hnbGUgcGFyIGTDqWZhdXQgKG5lIHMnYXBwbGlxdWUgcXVlIHNpIGF1Y3VuZSBhdXRyZSByw6hnbGUgbidlc3QgdmFsaWTDqWUpXCIsXG4gICAgICBkaXNwbGF5TW9kZUltYWdlOiBcIk1vZGUgZCdhZmZpY2hhZ2UgZGUgbCdpbWFnZVwiLFxuICAgICAgc2l6ZTogXCJUYWlsbGUgZGUgbCdpbWFnZVwiLFxuICAgICAgZGVsZXRlQXR0cmlidXRlQ29uZmlybU1lc3NhZ2U6XG4gICAgICAgICdDZXQgYXR0cmlidXQgbmUgc2VyYSBwbHVzIHZpc2libGUgcG91ciBsZXMgZG9ubsOpZXMgbGUgcG9zc8OpZGFudC4gQ29uZmlybWV6LXZvdXMgbGEgc3VwcHJlc3Npb24gPycsXG4gICAgICBwb3NpdGlvbjoge1xuICAgICAgICBGVUxMOiAnSWNvbmUgcGxlaW5lJyxcbiAgICAgICAgVE9QX0xFRlQ6ICdFbiBoYXV0IMOgIGdhdWNoZScsXG4gICAgICAgIFRPUF9SSUdIVDogJ0VuIGhhdXQgw6AgZHJvaXRlJyxcbiAgICAgICAgQk9UVE9NX0xFRlQ6ICdFbiBiYXMgw6AgZ2F1Y2hlJyxcbiAgICAgICAgQk9UVE9NX1JJR0hUOiAnRW4gYmFzIMOgIGRyb2l0ZSdcbiAgICAgIH0sXG4gICAgICBjdXN0b21pemU6IHtcbiAgICAgICAgdGl0bGU6ICdQZXJzb25uYWxpc2VyJyxcbiAgICAgICAgdGVtcGxhdGU6ICdUb29sdGlwIChDYXJ0ZSAmIEdyYXBoZSknLFxuICAgICAgICB1cGRhdGU6ICdNZXR0cmUgw6Agam91ciBsZSB0b29sdGlwJyxcbiAgICAgICAgYWR2YW5jZWQ6ICdNb2RlIGF2YW5jw6knLFxuICAgICAgICBuYW1lOiAnTW9kw6hsZSBtw6l0aWVyJyxcbiAgICAgICAgdGVjaG5pY2FsSWQ6ICdJZCB0ZWNobmlxdWUnLFxuICAgICAgICB0eXBlOiAnQ2hvaXNpc3NleiBsZSB0eXBlIGRlIHRvb2x0aXAgw6AgdXRpbGlzZXInLFxuICAgICAgICBzaW1wbGlmaWVkOiAnQ2hvaXNpc3NleiBsZXMgYXR0cmlidXRzIMOgIGFmZmljaGVyJyxcbiAgICAgICAgZXhlbXBsZTogJ3ZhbGV1ciBkZSB7e2V4cHJ9fScsXG4gICAgICAgIHRhYmxlOiAnQXR0cmlidXRzIHBhciBkw6lmYXV0IChUYWJsZSknLFxuICAgICAgICB0aWxlOiAnQXR0cmlidXRzIGFmZmljaMOpcyBzdXIgbGEgdHVpbGUnLFxuICAgICAgICB0aWxlSGludDogJ1NldWxlbWVudCBlbnRyZSAxIGV0IHt7bWF4fX0gYXR0cmlidXRzIHBldXZlbnQgw6p0cmUgYWZmaWNow6lzIGRhbnMgdW5lIHR1aWxlJyxcbiAgICAgICAgdGFibGVBdHRyczogJ0F0dHJpYnV0cyBkYW5zIGxhIHRhYmxlIHBhciBkw6lmYXV0JyxcbiAgICAgICAgdGlsZUF0dHJzOiAnQXR0cmlidXRzIHByw6lzZW50w6lzIGRhbnMgbGVzIHR1aWxlcycsXG4gICAgICAgIG5vVGFibGVBdHRyczogJ0F1dHJlcyBhdHRyaWJ1dHMnLFxuICAgICAgICBub1RpbGVBdHRyczogJ0F0dHJpYnV0cyBub24gYWZmaWNow6lzJyxcbiAgICAgICAgdXBkYXRlVGFibGU6IFwiTWV0dHJlIMOgIGpvdXIgbGVzIGF0dHJpYnV0cyBwYXIgZMOpZmF1dCBkJ3VuZSB0YWJsZVwiLFxuICAgICAgICB1cGRhdGVUaWxlOiAnTWV0dHJlIMOgIGpvdXIgbGVzIGF0dHJpYnV0cyBkZXMgdHVpbGVzJyxcbiAgICAgICAgdXBkYXRlSWNvbnM6ICdNZXR0cmUgw6Agam91ciBsZXMgcsOoZ2xlcyBkZSBzeW1ib2xlcydcbiAgICAgIH0sXG4gICAgICB2YXJUeXBlOiB7XG4gICAgICAgIGludDogJ05vbWJyZSBlbnRpZXInLFxuICAgICAgICBkb3VibGU6ICdOb21icmUgZMOpY2ltYWwnLFxuICAgICAgICBzdHJpbmc6ICdUZXh0ZScsXG4gICAgICAgIHV1aWQ6ICdJZGVudGlmaWFudCB1dWlkJyxcbiAgICAgICAgZGF0ZTogJ0RhdGUnLFxuICAgICAgICBsaXN0OiAnTGlzdGUgZGUgdmFsZXVycydcbiAgICAgIH0sXG4gICAgICBtZW51czoge1xuICAgICAgICBlbnZpcm9ubWVudDogXCJDb250ZXh0ZXMgZCdleMOpY3V0aW9uXCIsXG4gICAgICAgIHVzZXI6ICdVdGlsaXNhdGV1cnMnLFxuICAgICAgICAnbWV0YWRhdGEtdXNlcic6ICdQcm9maWwgdXRpbGlzYXRldXInLFxuICAgICAgICAnYWJhYy1ydWxlcyc6ICdSw6hnbGVzIEFCQUMnLFxuICAgICAgICAnbWV0YWRhdGEtcnVsZXMnOiAnUsOoZ2xlcyBNw6l0YWRvbm7DqWVzJyxcbiAgICAgICAgZGF0YXNldDogJ0pldXggZGUgZG9ubsOpZXMnLFxuICAgICAgICBjbGFzc2VzOiAnTW9kw6hsZXMgZGUgZG9ubsOpZXMnLFxuICAgICAgICBwcmVkaWNhdGVzOiAnUHLDqWRpY2F0cycsXG4gICAgICAgIG1ldGFkYXRhOiAnTcOpdGFkb25uw6llcycsXG4gICAgICAgIGZpZWxkczogJ1R5cGVzIG3DqXRpZXInLFxuICAgICAgICAncmVsYXRpb24tdHlwZXMnOiAnVHlwZXMgZGUgcmVsYXRpb24nLFxuICAgICAgICBsaW5rczogJ0xpZW4gZW50cmUgYXR0cmlidXRzJyxcbiAgICAgICAgbW9kZWw6ICdNb2TDqGxlIG3DqXRpZXInLFxuICAgICAgICBhY2Nlc3M6ICdBY2PDqHMgYXV4IGRvbm7DqWVzJ1xuICAgICAgfSxcbiAgICAgIHByZWRpY2F0ZXM6IHtcbiAgICAgICAgbGlzdDogJ1Byw6lkaWNhdHMnLFxuICAgICAgICBhZGQ6ICdDcsOpZXIgdW4gbm91dmVhdSBwcsOpZGljYXQnLFxuICAgICAgICBlZGl0OiAnTW9kaWZpZXIgdW4gcHLDqWRpY2F0JyxcbiAgICAgICAgaW5mbzogJ0TDqXRhaWxzIGR1IHByw6lkaWNhdCcsXG4gICAgICAgIG51bTogJ0lkLicsXG4gICAgICAgIG5hbWU6ICdOb20nLFxuICAgICAgICB2YWx1ZTogJ0V4cHJlc3Npb24gY29uZGl0aW9ubmVsbGUgZGUgZMOpY2xlbmNoZW1lbnQnLFxuICAgICAgICB2YWxpZEVkaXQ6ICdJbmZvcm1hdGlvbicsXG4gICAgICAgIHZhbGlkRWRpdE1lc3NhZ2U6ICdDZSBwcsOpZGljYXQgZXN0IHV0aWxpc8OpIGRhbnMge3t1c2VkfX0gcsOoZ2xlcy4gVm91bGV6LXZvdXMgdnJhaW1lbnQgbGUgbW9kaWZpZXIgPydcbiAgICAgIH0sXG4gICAgICBtZXRhZGF0YToge1xuICAgICAgICB0aXRsZTogJ01ldGFkb25uw6llcycsXG4gICAgICAgIGFkZDogJ0Nyw6llciB1bmUgbWV0YWRvbm7DqWUnLFxuICAgICAgICBlZGl0OiAnTW9kaWZpZXIgdW5lIG1ldGFkb25uw6llJyxcbiAgICAgICAgZGV0YWlsczogJ0TDqXRhaWxzIGRlIGxhIG1ldGFkb25uw6llJyxcbiAgICAgICAgZGV0YWlsc1VzZXI6ICdEw6l0YWlscyBkdSBwcm9maWwgdXRpbGlzYXRldXInLFxuICAgICAgICBpZDogJ0lEJyxcbiAgICAgICAgbGFiZWw6ICdOb20nLFxuICAgICAgICB0eXBlOiAnVHlwZScsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24nLFxuICAgICAgICBpbnZhbGlkOiAnTGUgY2hhbXBzIGVzdCByZXF1aXMnLFxuICAgICAgICBsaXN0TGFiZWw6ICdOb20gZGUgbGEgdmFsZXVyJyxcbiAgICAgICAgYWRkVmFsdWU6ICdBam91dGVyIHVuZSBub3V2ZWxsZSB2YWxldXInLFxuICAgICAgICByZW1vdmVWYWx1ZTogJ1N1cHByaW1lciBjZXR0ZSB2YWxldXInLFxuICAgICAgICBzeXN0ZW06ICdNw6l0YWRvbm7DqWUgc3lzdMOobWUnXG4gICAgICB9LFxuICAgICAgJ21ldGFkYXRhLXJ1bGVzJzoge1xuICAgICAgICB0aXRsZTogJ1LDqGdsZXMgTWV0YWRvbm7DqWVzJyxcbiAgICAgICAgbGFiZWw6ICdOb20nLFxuICAgICAgICAnaXMtc2FtZS1uYW1lJzogJ0xlIG5vbSBkZSBsYSByw6hnbGUgZXN0IGTDqWrDoCBwcmlzIHBvdXIgdW5lIGF1dHJlIHLDqGdsZSwgdmV1aWxsZXogZW4gdXRpbGlzZXIgdW4gYXV0cmUnLFxuICAgICAgICAnaXMtc2FtZS1ydWxlcyc6IFwiTGEgbcOqbWUgcsOoZ2xlIGEgZMOpasOgIMOpdMOpIGNvbmZpZ3Vyw6llIGV0IGVucmVnaXN0csOpZSwgdm91cyBwb3V2ZXogbCd1dGlsaXNlclwiLFxuICAgICAgICAnbWV0YWRhdGEtaXRlbSc6IHtcbiAgICAgICAgICBuYW1lOiAnTWV0YWRvbm7DqWVzIGNpYmxlJyxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJ0Rlc2NyaXB0aW9uIGRlIGxhIG1ldGFkb25uw6llIGNpYmxlJyxcbiAgICAgICAgICB0eXBlOiAnVHlwZSBkZSBsYSBtZXRhZG9ubsOpZSBjaWJsZSdcbiAgICAgICAgfSxcbiAgICAgICAgJ21ldGFkYXRhLXVzZXInOiB7XG4gICAgICAgICAgbmFtZTogJ1Byb2ZpbCB1dGlsaXNhdGV1ciBzb3VyY2UnLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24gZHUgcHJvZmlsIHV0aWxpc2F0ZXVyIHNvdXJjZScsXG4gICAgICAgICAgdHlwZTogJ1R5cGUgZHUgcHJvZmlsIHV0aWxpc2F0ZXVyIHNvdXJjZSdcbiAgICAgICAgfSxcbiAgICAgICAgZWRpdDoge1xuICAgICAgICAgIHRpdGxlOiAnTW9kaWZpZXIgdW5lIHLDqGdsZSBkZSBtZXRhZG9ubsOpZXMnXG4gICAgICAgIH0sXG4gICAgICAgIGFkZDoge1xuICAgICAgICAgIHRpdGxlOiAnQ3LDqWVyIHVuZSBub3V2ZWxsZSByw6hnbGUgZGUgbWV0YWRvbm7DqWVzJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgZGF0YXNldDoge1xuICAgICAgICBkZWxldGU6XG4gICAgICAgICAgXCJMJ2Vuc2VtYmxlIGRlcyB2ZXJzaW9ucyBldCBkZXMgZG9ubsOpZXMgYXNzb2Npw6llcyBzZXJvbnQgc3VwcHJpbcOpZXMuIExlcyByZXN0aXR1dGlvbnMgZXQgcHLDqXNlbnRhdGlvbnMgdXRpbGlzYW50IGNlIGpldSBkZSBkb25uw6llcyBuJ2FmZmljaGVyb250IHBsdXMgbGVzIGRvbm7DqWVzIGNvcnJlc3BvbmRhbnRlcy4gQ29uZmlybWV6LXZvdXMgbGEgc3VwcHJlc3Npb24gP1wiLFxuICAgICAgICB0aXRsZTogJ0pldXggZGUgZG9ubsOpZXMnLFxuICAgICAgICBkZXRhaWxzOiAnRMOpdGFpbHMgZHUgamV1IGRlIGRvbm7DqWVzJyxcbiAgICAgICAgaWQ6ICdJZGVudGlmaWFudCcsXG4gICAgICAgIG5hbWU6ICdOb20nLFxuICAgICAgICBvQ2xhc3M6ICdNb2TDqGxlIG3DqXRpZXInLFxuICAgICAgICB0eXBlOiAnVHlwZScsXG4gICAgICAgICdpcy1zYW1lLW5hbWUnOiAnTGUgbm9tIGR1IGpldSBkZSBkb25uw6llcyBlc3QgZMOpasOgIHByaXMsIHZldWlsbGV6IGVuIHV0aWxpc2VyIHVuIGF1dHJlJyxcbiAgICAgICAgYWRkOiB7XG4gICAgICAgICAgdGl0bGU6ICdDcsOpZXIgdW4gamV1IGRlIGRvbm7DqWVzJ1xuICAgICAgICB9LFxuICAgICAgICBlZGl0OiB7XG4gICAgICAgICAgdGl0bGU6ICdNb2RpZmllciB1biBqZXUgZGUgZG9ubsOpZXMnXG4gICAgICAgIH0sXG4gICAgICAgIE9QRU46ICdPdXZlcnQnLFxuICAgICAgICBDTE9TRUQ6ICdGZXJtw6knLFxuICAgICAgICBNT0RJRklBQkxFOiAnTW9kaWZpYWJsZScsXG4gICAgICAgIHN1Y2Nlc3M6ICdNb2RpZmljYXRpb24gZWZmZWN0dcOpZSBhdmVjIHN1Y2PDqHMnLFxuICAgICAgICBjb25mbGljdDpcbiAgICAgICAgICBcIkF0dGVudGlvbiwgbGVzIHRhYmxlYXV4IGRlIGJvcmQgc3VpdmFudHMgc29udCBwYXJ0YWfDqXMgw6AgZGVzIGdyb3VwZXMgcXVpIG4nYXVyb250IHBsdXMgYWNjw6hzIGF1eCBkb25uw6llcyA6XCIsXG4gICAgICAgIGVudGl0aWVzOiB7XG4gICAgICAgICAgZGFzaGJvYXJkOiAnVGFibGVhdXggZGUgYm9yZCdcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgICdhYmFjLXJ1bGVzJzoge1xuICAgICAgICBkZWxldGU6ICdTdXBwcmltZXInLFxuICAgICAgICBtZXRhZGF0YVVzZXI6ICdQcm9maWwgdXRpbGlzYXRldXInLFxuICAgICAgICB0aXRsZToge1xuICAgICAgICAgIGxpc3Q6ICdSw6hnbGVzIEFiYWMnLFxuICAgICAgICAgIGFkZDogJ0Nyw6llciB1bmUgcsOoZ2xlIGFiYWMnLFxuICAgICAgICAgIHZpZXc6IFwiRMOpdGFpbHMgZCd1bmUgcsOoZ2xlIGFiYWNcIixcbiAgICAgICAgICBlZGl0OiAnTW9kaWZpZXIgdW5lIHLDqGdsZSBhYmFjJ1xuICAgICAgICB9LFxuICAgICAgICBmb3JtOiB7XG4gICAgICAgICAgaWQ6ICdOdW3DqXJvJyxcbiAgICAgICAgICBuYW1lOiAnTm9tJyxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJ0Rlc2NyaXB0aW9uJyxcbiAgICAgICAgICBzdGF0dXM6ICdTdGF0dXQnLFxuICAgICAgICAgIHN0YXR1c0FjdGl2ZTogJ0FjdGlmJyxcbiAgICAgICAgICBzdGF0dXNJbmFjdGl2ZTogJ0luYWN0aWYnLFxuICAgICAgICAgIHByZWRpY2F0ZTogJ1Byw6lkaWNhdCBkZSBkw6ljbGVuY2hlbWVudCcsXG4gICAgICAgICAgdHlwZTogJ1R5cGUnLFxuICAgICAgICAgIHR5cGVNZXRhZGF0YTogJ01ldGFkb25uw6llJyxcbiAgICAgICAgICB0eXBlQXR0cmlidXRlOiAnQXR0cmlidXQnLFxuICAgICAgICAgIHR5cGVTZWxlY3RlZDogJ1ZvdXMgbmUgcG91dmV6IHBhcyBjaGFuZ2VyIGxlIHR5cGUgYXZlYyBsZXMgY29uZGl0aW9ucyBleGlzdGFudGVzJyxcbiAgICAgICAgICBhZGRNZXRhZGF0YTogJ0Fqb3V0ZXIgdW5lIGNvbmRpdGlvbiBzdXIgdW5lIG1ldGFkb25uw6llJyxcbiAgICAgICAgICBhZGRBdHRyaWJ1dGU6ICdBam91dGVyIHVuZSBjb25kaXRpb24gc3VyIHVuIGF0dHJpYnV0JyxcbiAgICAgICAgICB0b2dnbGVBbmQ6ICdFVCcsXG4gICAgICAgICAgdG9nZ2xlT3I6ICdPVScsXG4gICAgICAgICAgYWRkR3JvdXA6ICdBam91dGVyIHVuIHNvdXMtZ3JvdXBlJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgdXNlcjoge1xuICAgICAgICB0aXRsZTogJ1Byb2ZpbCB1dGlsaXNhdGV1cicsXG4gICAgICAgIGFkZDogJ0Nyw6llciB1biBub3V2ZWF1IHByb2ZpbCB1dGlsaXNhdGV1cicsXG4gICAgICAgIGxhYmVsOiAnTm9tJyxcbiAgICAgICAgdHlwZTogJ1R5cGUnLFxuICAgICAgICBpbnZhbGlkOiAnTGUgY2hhbXAgZXN0IHJlcXVpcycsXG4gICAgICAgIGVkaXQ6ICdNb2RpZmllciB1biBwcm9maWwgdXRpbGlzYXRldXInXG4gICAgICB9LFxuICAgICAgZW52aXJvbm1lbnQ6IHtcbiAgICAgICAgbGlzdDogXCJDb250ZXh0ZXMgZCdleMOpY3V0aW9uXCIsXG4gICAgICAgIGFkZDogXCJDcsOpZXIgdW4gbm91dmVhdSBjb250ZXh0ZSBkJ2V4w6ljdXRpb25cIixcbiAgICAgICAgZWRpdDogXCJNb2RpZmllciB1biBjb250ZXh0ZSBkJ2V4w6ljdXRpb25cIixcbiAgICAgICAgaW5mbzogXCJEw6l0YWlscyBkdSBjb250ZXh0ZSBkJ2V4w6ljdXRpb25cIixcbiAgICAgICAgZm9ybWF0SW50OiAnTGEgdmFsZXVyIGRvaXQgw6p0cmUgdW4gZW50aWVyLicsXG4gICAgICAgIGZvcm1hdERvdWJsZTogXCJMYSB2YWxldXIgZG9pdCDDqnRyZSB1biBlbnRpZXIsIGxlIHPDqXBhcmF0ZXVyIGF1dG9yaXPDqSBlc3QgdW4gJy4nXCIsXG4gICAgICAgIGZvcm1hdE5hbWU6ICdDYXJhY3TDqHJlcyBzcGVjaWF1eCBhdXRvcmlzw6lzOiBbIC0sIF8gXSAnLFxuICAgICAgICBuYW1lOiAnTm9tJyxcbiAgICAgICAgdHlwZTogJ1R5cGUnLFxuICAgICAgICB2YWx1ZTogJ1ZhbGV1ciBkZSBsYSB2YXJpYWJsZSdcbiAgICAgIH0sXG4gICAgICBjbGFzc2VzOiB7XG4gICAgICAgIGxpc3Q6ICdNb2TDqGxlcyBkZSBkb25uw6llcycsXG4gICAgICAgIG5hbWU6ICdOb20nLFxuICAgICAgICB0aXRsZTogJ01vZMOobGUgZGUgZG9ubsOpZXMge3tjbGFzc319JyxcbiAgICAgICAgaW1hZ2U6ICdJbWFnZScsXG4gICAgICAgIGZvcm1hdE5hbWU6ICdDYXJhY3TDqHJlcyBhdXRvcmlzw6lzOiBbIG1pbnVzY3VsZSwgLSwgXyBdJyxcbiAgICAgICAgbW9kZWw6ICdNb2TDqGxlJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbicsXG4gICAgICAgIGxpbmVzOiAnTGlnbmVzJyxcbiAgICAgICAgYWRkOiAnQ3LDqWVyIHVuIG5vdXZlYXUgbW9kw6hsZSBkZSBkb25uw6llcycsXG4gICAgICAgIGVkaXQ6ICdNb2RpZmllciBsZSBtb2TDqGxlIGRlIGRvbm7DqWVzJyxcbiAgICAgICAgcmVuYW1lOiAnUmVub21tZXIgbGUgbW9kw6hsZSBkZSBkb25uw6llcycsXG4gICAgICAgIGFkZEF0dHI6ICdBdHRyaWJ1dCcsXG4gICAgICAgIGluZm9BdHRyOiAnTW9kw6hsZSBkZSBkb25uw6llcyB7e2NsYXNzfX0gPiBBdHRyaWJ1dHMnLFxuICAgICAgICBpbmZvOiAnRMOpdGFpbCBkdSBtb2TDqGxlIGRlIGRvbm7DqWVzJyxcbiAgICAgICAgcnVsZXM6ICdSw6hnbGVzIGRlIGTDqWZpbml0aW9uIGRlIHN5bWJvbGVzJyxcbiAgICAgICAgY29uZGl0aW9uOiAnQWN0aWYgc2Vsb24gdW5lIGNvbmRpdGlvbicsXG4gICAgICAgIGF0dHJOYW1lOiAnQXR0cmlidXRlIMOgIHbDqXJpZmllcicsXG4gICAgICAgIHZhbHVlOiAnVmFsZXVyIGRlIGNvbXBhcmFpc29uJyxcbiAgICAgICAgb3BlcmF0aW9uOiAnT3DDqXJhdGlvbiBkZSBjb21wYXJhaXNvbicsXG4gICAgICAgIG9wZXJhdGlvbnM6IHtcbiAgICAgICAgICBFUVVBTFM6ICdlc3Qgw6lnYWwnLFxuICAgICAgICAgIEdSRUFURVI6ICdlc3QgcGx1cyBncmFuZCcsXG4gICAgICAgICAgR1JFQVRFUl9PUl9FUVVBTDogJ2VzdCBwbHVzIGdyYW5kIG91IMOpZ2FsJyxcbiAgICAgICAgICBMT1dFUjogJ3BsdXMgcGV0aXQnLFxuICAgICAgICAgIExPV0VSX09SX0VRVUFMOiAncGx1cyBwZXRpdCBvdSDDqWdhbCcsXG4gICAgICAgICAgQ09OVEFJTlM6ICdjb250aWVudCB0ZXh0dWVsbGVtZW50J1xuICAgICAgICB9LFxuICAgICAgICBjcmVhdGVDbGFzc01vZGFsTWVzc2FnZTpcbiAgICAgICAgICAnSW1wb3NzaWJsZSBkZSBjcsOpZXIgdW4gbW9kw6hsZSBkZSBkb25uw6llcyBzYW5zIGF0dHJpYnV0cy4gVmV1aWxsZXogZW4gYWpvdXRlciBhdSBtb2lucyB1biBlbiBjbGlxdWFudCBzdXIgXCJBam91dGVyIHVuIGF0dHJpYnV0XCIuJyxcbiAgICAgICAgY3JlYXRlQ2xhc3NDb25maXJtTWVzc2FnZTogJ1ZvdWxlei12b3VzIGNvbmZpcm1lciBsYSBjcsOpYXRpb24gZHUgbW9kw6hsZSBkZSBkb25uw6llcyA/JyxcbiAgICAgICAgZGVsZXRlQ2xhc3NDb25maXJtTWVzc2FnZTogJ0NvbmZpcm1lei12b3VzIGxhIHN1cHByZXNzaW9uIGRlIGNlIG1vZMOobGUgbcOpdGllciA/JyxcbiAgICAgICAgbGlua2VkT2JqZWN0czogJ09iamV0cyBsacOpcycsXG4gICAgICAgIHVzZWRFbHNld2hlcmU6IFwiVXRpbGlzw6kgcGFyIGRlcyBvYmpldHMgZCdhdXRyZXMgdXRpbGlzYXRldXJzXCIsXG4gICAgICAgIGFzc29jaWF0aW9uczogJ0Fzc29jaWF0aW9ucycsXG4gICAgICAgIHR5cGU6ICdUeXBlJyxcbiAgICAgICAgYXR0cmlidXRlczoge1xuICAgICAgICAgIGFkZDogJ05vdXZlbCBhdHRyaWJ1dCcsXG4gICAgICAgICAgZWRpdDogXCJNb2RpZmllciBsJ2F0dHJpYnV0XCIsXG4gICAgICAgICAgaW5mbzogXCJEw6l0YWlsIGRlIGwnYXR0cmlidXRcIixcbiAgICAgICAgICBkZWxldGU6IFwiU3VwcHJpbWVyIGwnYXR0cmlidXRcIixcbiAgICAgICAgICBuYW1lOiBcIkxpYmVsbMOpIGRlIGwnYXR0cmlidXRcIixcbiAgICAgICAgICB0ZWNobmljYWxOYW1lOiAnTm9tIHRlY2huaXF1ZScsXG4gICAgICAgICAgZGVzY3JpcHRpb246ICdEZXNjcmlwdGlvbicsXG4gICAgICAgICAgZmllbGQ6ICdUeXBlJyxcbiAgICAgICAgICBjYXRlZ29yeTogJ0NhdMOpZ29yaWUnLFxuICAgICAgICAgIG11bHRpVmFsdWVkOiAnTXVsdGkgdmFsdcOpJ1xuICAgICAgICB9LFxuICAgICAgICBjYXRlZ29yeToge1xuICAgICAgICAgIHNlbGVjdDogJ1PDqWxlY3Rpb25uZXIgdW5lIGNhdMOpZ29yaWUnLFxuICAgICAgICAgIHNlYXJjaE9yQ3JlYXRlOiAnUmVjaGVyY2hlciB1bmUgY2F0w6lnb3JpZSBleGlzdGFudGUgT1UgZW4gY3LDqWVyIHVuZSBub3V2ZWxsZScsXG4gICAgICAgICAgbmFtZTogJ0NhdMOpZ29yaWUnLFxuICAgICAgICAgIHNlbGVjdEl0OiAnU8OpbGVjdGlvbm5lciBsYSBjYXTDqWdvcmllJyxcbiAgICAgICAgICBjcmVhdGU6ICdDcsOpZXIgbGEgY2F0w6lnb3JpZScsXG4gICAgICAgICAgYWRkOiBcIm4nZXhpc3RlIHBhcyBlbmNvcmUuIDxicj5JbCBlc3QgcG9zc2libGUgXFxuIGRlIGxhIGNyw6llciBpY2kuIDxicj5FbGxlIHNlcmEgYXV0b21hdGlxdWVtZW50IHPDqWxlY3Rpb25uw6llIGV0IGFqb3V0w6llIMOgIGxhIGxpc3RlIGRlcyBjYXTDqWdvcmllcy5cIlxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgZmllbGRzOiB7XG4gICAgICAgIGFkZDogJ0Nyw6llciB1biBub3V2ZWF1IHR5cGUgbcOpdGllcicsXG4gICAgICAgIGNyczogJ0NSUyAoY29kZSBFUFNHKSA6JyxcbiAgICAgICAgaW5mbzogJ0TDqXRhaWwgZHUgdHlwZSBtw6l0aWVyJyxcbiAgICAgICAgbGlzdDogJ1R5cGVzIG3DqXRpZXInLFxuICAgICAgICBlZGl0OiAnTW9kaWZpZXIgbGUgdHlwZSBtw6l0aWVyJyxcbiAgICAgICAgbmFtZTogJ05vbScsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnRGVzY3JpcHRpb24nLFxuICAgICAgICB0eXBlOiAnVHlwZSB0ZWNobmlxdWUnLFxuICAgICAgICBhdHRyaWJ1dGVzOiAnUHLDqXNlbmNlIGRhbnMgZGVzIGF0dHJpYnV0cycsXG4gICAgICAgIGF0dHJpYnV0ZXNUYWI6ICdBdHRyaWJ1dHMnLFxuICAgICAgICBhdHRyaWJ1dGVOYW1lOiBcIk5vbSBkJ2F0dHJpYnV0XCIsXG4gICAgICAgIGNsYXNzTmFtZTogJ0NsYXNzZScsXG4gICAgICAgIGNvbmZpcm1GaWVsZERlbGV0aW9uOiAnQ29uZmlybWV6LXZvdXMgbGEgc3VwcHJlc3Npb24gZGUgY2UgdHlwZSBtw6l0aWVyID8nLFxuICAgICAgICBmaWVsZFR5cGU6IHtcbiAgICAgICAgICBpbnQ6ICdOb21icmUgZW50aWVyJyxcbiAgICAgICAgICBsb25nOiAnTm9tYnJlIGVudGllciBsb25nJyxcbiAgICAgICAgICBkZWNpbWFsOiAnTm9tYnJlIGTDqWNpbWFsJyxcbiAgICAgICAgICBzdHJpbmc6ICdUZXh0ZSBicnV0JyxcbiAgICAgICAgICBrZXl3b3JkOiAnVGV4dGUgaW5kZXjDqScsXG4gICAgICAgICAgaW5zdGFudDogJ0RhdGUnLFxuICAgICAgICAgIHJhdzogJ0Rvbm7DqWUgbm9uIHN0cnVjdHVyw6llJyxcbiAgICAgICAgICBwb2ludDogJ1BvaW50JyxcbiAgICAgICAgICBtdWx0aXBvaW50OiAnTXVsdGktcG9pbnRzJyxcbiAgICAgICAgICBsaW5lOiAnTGlnbmUnLFxuICAgICAgICAgIG11bHRpbGluZTogJ011bHRpLWxpZ25lcycsXG4gICAgICAgICAgcG9seWdvbjogJ1BvbHlnb25lJyxcbiAgICAgICAgICBtdWx0aXBvbHlnb246ICdNdWx0aS1wb2x5Z29uZXMnLFxuICAgICAgICAgIGluZm9ybWF0aW9uOiB7XG4gICAgICAgICAgICBpbnQ6ICdQZXJtZXQgZGUgc3RvY2tlciBkZXMgZG9ubsOpZXMgbnVtw6lyaXF1ZXMgZW50acOocmVzIGluZsOpcmlldXJlcyDDoCAyXjMyJyxcbiAgICAgICAgICAgIGxvbmc6ICdQZXJtZXQgZGUgc3RvY2tlciBkZXMgZG9ubsOpZXMgbnVtw6lyaXF1ZXMgZW50acOocmVzIHBvdXZhbnQgZMOpcGFzc2VyIDJeMzInLFxuICAgICAgICAgICAgZGVjaW1hbDogJ1Blcm1ldCBkZSBzdG9ja2VyIGRlcyBkb25uw6llcyBudW3DqXJpcXVlcyBhdmVjIGRlcyBkw6ljaW1hbGVzJyxcbiAgICAgICAgICAgIHN0cmluZzpcbiAgICAgICAgICAgICAgXCJQZXJtZXQgZGUgc3RvY2tlciBkZXMgZG9ubsOpZXMgYXUgZm9ybWF0IGFscGhhbnVtw6lyaXF1ZS4gQ2VzIGRvbm7DqWVzIG5lIHNvbnQgcGFzIGluZGV4w6llcyA6IGlsIGVzdCBwb3NzaWJsZSBkZSBmYWlyZSB1bmUgcmVjaGVyY2hlIGRlc3N1cyBtYWlzIHBhcyBkJ2FncsOpZ2F0aW9uXCIsXG4gICAgICAgICAgICBrZXl3b3JkOlxuICAgICAgICAgICAgICAnUGVybWV0IGRlIHN0b2NrZXIgZGVzIGRvbm7DqWVzIGF1IGZvcm1hdCBhbHBoYW51bcOpcmlxdWUuIENlcyBkb25uw6llcyBzb250IGluZGV4w6llcyA6IGlsIGVzdCBwb3NzaWJsZSBkZSBmYWlyZSB1bmUgcmVjaGVyY2hlIGRlc3N1cyBhaW5zaSBxdWUgZGVzIGFncsOpZ2F0aW9ucy4nLFxuICAgICAgICAgICAgaW5zdGFudDogJ1Blcm1ldCBkZSBzdG9ja2VyIHVuZSBkYXRlJyxcbiAgICAgICAgICAgIHJhdzogJ3Blcm1ldCBkZSBzdG9ja2VyIGRlcyBkb25uw6llcyBkZSB0eXBlIGltYWdlIG91IGZpY2hpZXInLFxuICAgICAgICAgICAgcG9pbnQ6XG4gICAgICAgICAgICAgIFwiUGVybWV0IGRlIHN0b2NrZXIgZGVzIGNvb3Jkb25uw6llcyBnw6lvZ3JhcGhpcXVlcyBkJ3VuIG9iamV0IHJlcHLDqXNlbnTDqSBwYXIgdW4gcG9pbnQgKGZvcm1hdCBnw6lvanNvbilcIixcbiAgICAgICAgICAgIG11bHRpcG9pbnQ6XG4gICAgICAgICAgICAgIFwiUGVybWV0IGRlIHN0b2NrZXIgZGVzIGNvb3Jkb25uw6llcyBnw6lvZ3JhcGhpcXVlcyBkJ3VuIG9iamV0IGNvbXBvc8OpIGRlIHBsdXNpZXVycyBwb2ludHMgbm9uIHJlbGnDqXMgKGZvcm1hdCBnw6lvanNvbilcIixcbiAgICAgICAgICAgIGxpbmU6IFwiUGVybWV0IGRlIHN0b2NrZXIgZGVzIGNvb3Jkb25uw6llcyBnw6lvZ3JhcGhpcXVlcyBkJ3VuIG9iamV0IHJlcHLDqXNlbnTDqSBjb21tZSB1bmUgbGlnbmUgKGZvcm1hdCBnw6lvanNvbilcIixcbiAgICAgICAgICAgIG11bHRpbGluZTpcbiAgICAgICAgICAgICAgXCJQZXJtZXQgZGUgc3RvY2tlciBkZXMgY29vcmRvbm7DqWVzIGfDqW9ncmFwaGlxdWVzIGQndW4gb2JqZXQgcmVwcsOpc2VudMOpIGF2ZWMgcGx1c2lldXJzIGxpZ25lcyBub24gcmVsacOpZXMgZW50cmUgZWxsZXMgKGxvbmdpdHVkZSBldCBsYXRpdHVkZSBmb3JtYXQgZ8Opb2pzb24pXCIsXG4gICAgICAgICAgICBwb2x5Z29uOlxuICAgICAgICAgICAgICBcIlBlcm1ldCBkZSBzdG9ja2VyIGRlcyBjb29yZG9ubsOpZXMgZ8Opb2dyYXBoaXF1ZXMgZCd1biBvYmpldCByZXByw6lzZW50w6kgcGFyIHVuIHBvbHlnb25lIChmb3JtYXQgZ8Opb2pzb24pXCIsXG4gICAgICAgICAgICBtdWx0aXBvbHlnb246XG4gICAgICAgICAgICAgIFwiUGVybWV0IGRlIHN0b2NrZXIgZGVzIGNvb3Jkb25uw6llcyBnw6lvZ3JhcGhpcXVlcyBkJ3VuIG9iamV0IHJlcHLDqXNlbnTDqSBwYXIgcGx1c2lldXJzIHBvbHlnb25lcyBpbWJyaXF1w6lzIG91IG5vbiAoZm9ybWF0IGfDqW9qc29uKVwiXG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICByYXdNZXRob2RzOiB7XG4gICAgICAgICAgaHR0cDogJ0RlcHVpcyB1bmUgdXJsJyxcbiAgICAgICAgICB1cGxvYWQ6ICdUw6lsw6l2ZXJzZXIgZGVwdWlzIG1vbiBvcmRpbmF0ZXVyJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgdXNlckluZm86IHtcbiAgICAgICAgbGlzdDogJ1V0aWxpc2F0ZXVycycsXG4gICAgICAgIGluZm86IFwiRMOpdGFpbCBkZSBsJ3V0aWxpc2F0ZXVyXCIsXG4gICAgICAgIHByb2ZpbGU6ICdQcm9maWwnLFxuICAgICAgICBhZGRNZXRhZGF0YTogJ0Fqb3V0ZXInLFxuICAgICAgICBlZGl0TWV0YWRhdGE6ICdNb2RpZmllciBsYSBtw6l0YWRvbm7DqWUnLFxuICAgICAgICBuYW1lOiAnUHLDqW5vbScsXG4gICAgICAgIGZhbWlseU5hbWU6ICdOb20gZGUgZmFtaWxsZScsXG4gICAgICAgIGVtYWlsOiAnQWRyZXNzZSBtYWlsJyxcbiAgICAgICAgbWV0YWRhdGE6ICdNw6l0YWRvbm7DqWVzJyxcbiAgICAgICAgcm9sZXM6ICcgUsO0bGVzJ1xuICAgICAgfSxcbiAgICAgIHJlbGF0aW9uVHlwZXM6IHtcbiAgICAgICAgbGlzdDogJ1R5cGVzIGRlIHJlbGF0aW9ucycsXG4gICAgICAgIGFkZDogJ0Fqb3V0ZXIgbGUgdHlwZSBkZSByZWxhdGlvbicsXG4gICAgICAgIGVkaXQ6ICdNb2RpZmllciBsZSB0eXBlIGRlIHJlbGF0aW9uJyxcbiAgICAgICAgaW5mbzogJ0TDqXRhaWwgZHUgdHlwZSBkZSByZWxhdGlvbicsXG4gICAgICAgIG5hbWU6ICdOb20nLFxuICAgICAgICBuYlJlbGF0aW9uOiAnTm9tYnJlIGRlIHJlbGF0aW9ucyBkZSBjZSB0eXBlJyxcbiAgICAgICAgbmJMaW5rOiAnTm9tYnJlIGRlIGxpZW5zIHV0aWxpc2FudCBjZSB0eXBlIGRlIHJlbGF0aW9uJyxcbiAgICAgICAgZGF0ZU1vZGlmaWNhdGlvbjogJ0RhdGUgZGUgbW9kaWZpY2F0aW9uJyxcbiAgICAgICAgZGVsZXRhYmxlOiAnUGV1dCDDqnRyZSBzdXBwcmltw6knLFxuICAgICAgICBkZWxldGVNb2RhbE1lc3NhZ2U6ICdDZSB0eXBlIGRlIHJlbGF0aW9uIG5lIHBldXQgw6p0cmUgc3VwcHJpbcOpIGNhciB1dGlsaXPDqS4nXG4gICAgICB9LFxuICAgICAgbGlua3M6IHtcbiAgICAgICAgbGlzdDogJ0xpZW5zIGVudHJlIGF0dHJpYnV0cycsXG4gICAgICAgIGFkZDogJ0Fqb3V0ZXIgdW4gbm91dmVhdSBsaWVuIGVudHJlIGF0dHJpYnV0cycsXG4gICAgICAgIGNsYXNzU291cmNlOiAnTW9kw6hsZSBtw6l0aWVyIHNvdXJjZScsXG4gICAgICAgIGF0dHJpYnV0ZVNvdXJjZTogJ0F0dHJpYnV0IHNvdXJjZScsXG4gICAgICAgIGNsYXNzRGVzdGluYXRpb246ICdNb2TDqGxlIG3DqXRpZXIgZGUgZGVzdGluYXRpb24nLFxuICAgICAgICBhdHRyaWJ1dGVEZXN0aW5hdGlvbjogJ0F0dHJpYnV0IGRlIGRlc3RpbmF0aW9uJyxcbiAgICAgICAgcmVsYXRpb25UeXBlOiAnVHlwZSBkZSByZWxhdGlvbicsXG4gICAgICAgIHNlbGVjdFJlbGF0aW9uVHlwZTogJ1NlbGVjdGlvbm5leiB1biB0eXBlIGRlIHJlbGF0aW9uJ1xuICAgICAgfSxcbiAgICAgIGFzc29jaWF0aW9uOiB7XG4gICAgICAgIEFCQUM6ICdSw6hnbGUgQUJBQycsXG4gICAgICAgIExJTks6ICdSZWxhdGlvbicsXG4gICAgICAgIE5BTUVEX1FVRVJZOiAnUmVxdcOqdGUgbm9tbcOpZScsXG4gICAgICAgIFdJREdFVDogJ1Jlc3RpdHV0aW9uJyxcbiAgICAgICAgREFUQVNFVDogJ0pldSBkZSBkb25uw6llcycsXG4gICAgICAgIE9DTEFTUzogJ01vZMOobGUgZGUgZG9ubsOpZXMnLFxuICAgICAgICBEQVNIQk9BUkQ6ICdQcsOpc2VudGF0aW9uJyxcbiAgICAgICAgRklFTEQ6ICdUeXBlIG3DqXRpZXInXG4gICAgICB9LFxuICAgICAgc3RvcmFnZToge1xuICAgICAgICBsYWJlbDogJ0Jhc2UgZGUgc3RvY2thZ2UnLFxuICAgICAgICBkZXNjcmlwdGlvbjoge1xuICAgICAgICAgIFBPU1RHSVM6XG4gICAgICAgICAgICBcIkNlIHN0b2NrYWdlIGVzdCBjb25zZWlsbMOpIGVuIGNhcyBkZSBzdG9ja2FnZSBkZSBkb25uw6llcyBnw6lvZ3JhcGhpcXVlIGNvbXBsZXhlcyBvdSBkYW5zIGRlcyBzeXN0w6htZXMgZGUgY29vcmRvbm7DqWVzIGRpZmbDqXJlbnRzIGRlIFdHUyA4NC4gSWwgZXN0IHJlY29tbWFuZMOpIGRlIG5lIHN0b2NrZXIgZGFucyBjZXR0ZSBiYXNlIHF1ZSBkZXMgbW9kw6hsZXMgbcOpdGllciBkb250IGxhIHZvbHVtw6l0cmllIGRlIGRvbm7DqWVzIGVzdGltw6llIChlbiB0ZXJtZSBkZSBub21icmUgZCdpdGVtcykgbidlc3QgcGFzIHRyb3Agw6lsZXbDqWUuXCIsXG4gICAgICAgICAgRUxBU1RJQzpcbiAgICAgICAgICAgIFwiQ2Ugc3RvY2thZ2UgZXN0IGNvbnNlaWxsw6kgZW4gY2FzIGRlIGZvcnRlIHZvbHVtw6l0cmllIGRlIGRvbm7DqWVzIHByw6l2dWUgcG91ciBjZSBtb2TDqGxlIG3DqXRpZXIgKGdyYW5kIG5vbWJyZSBkJ2l0ZW1zKS4gU2kgdm91cyBzb3VoYWl0ZXogc3RvY2tlciBkZXMgZG9ubsOpZXMgZ8Opb2dyYXBoaXF1ZXMgZGFucyBjZSBtb2TDqGxlLCBkZXMgZm9ybWVzIHNpbXBsZXMgc29udCBjb25zZWlsbMOpZXMgZXQgbGUgc3lzdMOobWUgZGUgY29vcmRvbm7DqWVzIGRlIHLDqWbDqXJlbmNlIHV0aWxpc8OpIGRvaXQgw6p0cmUgV0dTIDg0LiBDZSBzeXN0w6htZSBkZSBzdG9ja2FnZSBvZmZyZSB1bmUgc2NhbGFiaWxpdMOpIGhvcml6b250YWxlXCJcbiAgICAgICAgfSxcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIFBPU1RHSVM6ICdQb3N0R0lTJyxcbiAgICAgICAgICBFTEFTVElDOiAnRWxhc3RpY1NlYXJjaCdcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgdG9vbHRpcDoge1xuICAgICAgZGVmYXVsdDogJ1Rvb2x0aXAgcGFyIGTDqWZhdXQnLFxuICAgICAgYXR0cmlidXRlOiAnVG9vbHRpcCBhZmZpY2hhbnQgY2VydGFpbnMgYXR0cmlidXRzJyxcbiAgICAgIGNsdXN0ZXI6ICdUb29sdGlwIHBvdXIgbGVzIGNsdXN0ZXJzIChncmFwaGVzKScsXG4gICAgICBsaW5rOiAnVG9vbHRpcCBwb3VyIGxlcyBsaWVucyAoZ3JhcGhlcyknLFxuICAgICAgbm9uZTogJ1BhcyBkZSB0b29sdGlwJ1xuICAgIH1cbiAgfVxufTtcbiJdfQ==
@@ -69,7 +69,7 @@ export class AdminEffects {
69
69
  // TODO move this effect into an admin-datasource store (provoly-dashboard#586)
70
70
  this.updateDataset$ = createEffect(() => this.actions$.pipe(ofType(DataSourceActions.dataset.update), switchMap((action) => this.dsService.updateDataset(action.dataset).pipe(mergeMap((conflict) => {
71
71
  let actions = [
72
- DataSourceActions.dataset.setConflictGroups({ conflictGroups: conflict?.conflictGroupsByEntity }),
72
+ DataSourceActions.dataset.setMissingGroups({ missingGroups: conflict?.missingGroupsByEntity }),
73
73
  DataSourceActions.dataset.loadDataset()
74
74
  ];
75
75
  if (action.route)
@@ -83,4 +83,4 @@ export class AdminEffects {
83
83
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: AdminEffects, decorators: [{
84
84
  type: Injectable
85
85
  }], ctorParameters: () => [{ type: i1.Actions }, { type: i2.AdminService }, { type: i3.Router }, { type: i4.DataSourceService }] });
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4uZWZmZWN0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2FkbWluL3N0b3JlL2FkbWluLmVmZmVjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQVcsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQXFCLG9CQUFvQixFQUFpQixNQUFNLG9CQUFvQixDQUFDO0FBQy9HLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUNoRixPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7O0FBSy9DLE1BQU0sT0FBTyxZQUFZO0lBc0p2QixZQUNVLFFBQWlCLEVBQ2pCLE9BQXFCLEVBQ3JCLE1BQWMsRUFDZCxTQUE0QjtRQUg1QixhQUFRLEdBQVIsUUFBUSxDQUFTO1FBQ2pCLFlBQU8sR0FBUCxPQUFPLENBQWM7UUFDckIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGNBQVMsR0FBVCxTQUFTLENBQW1CO1FBekp0QyxhQUFRLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUMzQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDaEIsTUFBTSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsaUJBQWlCLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQ2xHLFFBQVEsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMs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QUNGLENBQUM7SUFPQyxDQUFDOzhHQTNKTyxZQUFZO2tIQUFaLFlBQVk7OzJGQUFaLFlBQVk7a0JBRHhCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQWN0aW9ucywgY3JlYXRlRWZmZWN0LCBvZlR5cGUgfSBmcm9tICdAbmdyeC9lZmZlY3RzJztcbmltcG9ydCB7IERhdGFTb3VyY2VBY3Rpb25zLCBEYXRhU291cmNlU2VydmljZSwgUmVsYXRpb25UeXBlc0FjdGlvbnMsIFNoYXJlQ29uZmxpY3QgfSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQnO1xuaW1wb3J0IHsgTWV0YWRhdGFBY3Rpb25zIH0gZnJvbSAnQHByb3ZvbHkvZGFzaGJvYXJkL2NvbXBvbmVudHMvbWV0YWRhdGEtZWRpdG9yJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCwgbWVyZ2VNYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQWRtaW5BY3Rpb25zIH0gZnJvbSAnLi9hZG1pbi5hY3Rpb25zJztcbmltcG9ydCB7IEFkbWluU2VydmljZSB9IGZyb20gJy4vYWRtaW4uc2VydmljZSc7XG5pbXBvcnQgeyBBY3Rpb24gfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBZG1pbkVmZmVjdHMge1xuICByb3V0ZVRvJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShBZG1pbkFjdGlvbnMucm91dGVUbywgRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5jcmVhdGVkLCBEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LnVwZGF0ZWQpLFxuICAgICAgbWVyZ2VNYXAoKGFjdGlvbikgPT4ge1xuICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbYWN0aW9uLnBhdGhdLCB7IHF1ZXJ5UGFyYW1zOiBhY3Rpb24ucGFyYW1zIH0pO1xuICAgICAgICByZXR1cm4gYWN0aW9uLnBhdGggPT09IHRoaXMucm91dGVyLnVybCA/IFtdIDogW0FkbWluQWN0aW9ucy5yZXNldEFjdGlvbnMoKV07XG4gICAgICB9KVxuICAgIClcbiAgKTtcblxuICBnb1RvTmV3TWV0YWRhdGEkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKE1ldGFkYXRhQWN0aW9ucy5nb1RvTmV3TWV0YWRhdGEpLFxuICAgICAgbWFwKChhY3Rpb24pID0+IHtcbiAgICAgICAgcmV0dXJuIEFkbWluQWN0aW9ucy5yb3V0ZVRvKHsgcGF0aDogYWN0aW9uLnJvdXRlIH0pO1xuICAgICAgfSlcbiAgICApXG4gICk7XG5cbiAgZGVsZXRlUmVsYXRpb25UeXBlU3VjY2VzcyQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoUmVsYXRpb25UeXBlc0FjdGlvbnMuZGVsZXRlUmVsYXRpb25UeXBlU3VjY2VzcyksXG4gICAgICBtZXJnZU1hcCgoYWN0aW9uKSA9PiB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgUmVsYXRpb25UeXBlc0FjdGlvbnMubG9hZCgpLFxuICAgICAgICAgIEFkbWluQWN0aW9ucy5zZWxlY3RDb21wb25lbnRUeXBlKHsgY29tcG9uZW50VHlwZTogbnVsbCB9KSxcbiAgICAgICAgICBBZG1pbkFjdGlvbnMubWFpbkFjdGlvbnMoe1xuICAgICAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgYWN0aW9uOiBSZWxhdGlvblR5cGVzQWN0aW9ucy5vcGVuTW9kYWwoKSxcbiAgICAgICAgICAgICAgICBsYWJlbDogJ2FkZCcsXG4gICAgICAgICAgICAgICAgaWNvbjogJ2FkZF9jb2x1bW4nLFxuICAgICAgICAgICAgICAgIG1vZHVsZUFjY2VzczogJ2FkbWluJyxcbiAgICAgICAgICAgICAgICBwYWdlQWNjZXNzOiAncmVsYXRpb25fdHlwZXMnLFxuICAgICAgICAgICAgICAgIGFjdGlvbkFjY2VzczogJ3dyaXRlJ1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdXG4gICAgICAgICAgfSlcbiAgICAgICAgXTtcbiAgICAgIH0pXG4gICAgKVxuICApO1xuXG4gIGNsb3NlUGFuZWwkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKEFkbWluQWN0aW9ucy5oaWdobGlnaHRNZW51KSxcbiAgICAgIG1lcmdlTWFwKChhY3Rpb24pID0+IHtcbiAgICAgICAgcmV0dXJuIFtBZG1pbkFjdGlvbnMudG9nZ2xlUGFuZWwoeyBwYW5lbE9wZW46IGZhbHNlIH0pXTtcbiAgICAgIH0pXG4gICAgKVxuICApO1xuXG4gIGRlbGV0ZWQkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQuZGVsZXRlZCksXG4gICAgICBtZXJnZU1hcCgoYWN0aW9uKSA9PiBbXG4gICAgICAgIEFkbWluQWN0aW9ucy50b2dnbGVQYW5lbCh7IHBhbmVsT3BlbjogZmFsc2UgfSksXG4gICAgICAgIEFkbWluQWN0aW9ucy5zZWxlY3RDb21wb25lbnRUeXBlKHsgY29tcG9uZW50VHlwZTogbnVsbCB9KSxcbiAgICAgICAgQWRtaW5BY3Rpb25zLm1haW5BY3Rpb25zKHtcbiAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGFjdGlvbjogQWRtaW5BY3Rpb25zLnJvdXRlVG8oeyBwYXRoOiBhY3Rpb24uYWRkUm91dGUgfSksXG4gICAgICAgICAgICAgIGxhYmVsOiAnYWRkJyxcbiAgICAgICAgICAgICAgaWNvbjogJ2FkZF9jb2x1bW4nLFxuICAgICAgICAgICAgICBtb2R1bGVBY2Nlc3M6ICdhZG1pbicsXG4gICAgICAgICAgICAgIHBhZ2VBY2Nlc3M6ICdkYXRhc2V0JyxcbiAgICAgICAgICAgICAgYWN0aW9uQWNjZXNzOiAnd3JpdGUnXG4gICAgICAgICAgICB9XG4gICAgICAgICAgXVxuICAgICAgICB9KVxuICAgICAgXSlcbiAgICApXG4gICk7XG5cbiAgb3Blbk5ld0RhdGFzZXQkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQub3Blbk5ld0RhdGFzZXQpLFxuICAgICAgbWFwKChhY3Rpb24pID0+IHtcbiAgICAgICAgcmV0dXJuIEFkbWluQWN0aW9ucy5yb3V0ZVRvKHsgcGF0aDogYWN0aW9uLnJvdXRlIH0pO1xuICAgICAgfSlcbiAgICApXG4gICk7XG5cbiAgZmV0Y2hDbGFzc0Fzc29jaWF0aW9ucyQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoQWRtaW5BY3Rpb25zLmZldGNoQ2xhc3NBc3NvY2lhdGlvbnMpLFxuICAgICAgbWVyZ2VNYXAoKGFjdGlvbikgPT5cbiAgICAgICAgdGhpcy5zZXJ2aWNlLmdldENsYXNzQXNzb2NpYXRpb25zKGFjdGlvbi5pZCkucGlwZShcbiAgICAgICAgICBtYXAoKGFzc29jaWF0aW9uKSA9PiBBZG1pbkFjdGlvbnMuZmV0Y2hBc3NvY2lhdGlvbnNTdWNjZXNzKHsgYXNzb2NpYXRpb24gfSkpLFxuICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiBbQWRtaW5BY3Rpb25zLmZldGNoQXNzb2NpYXRpb25zRmFpbHVyZSh7IGVycm9yOiBlcnJvciB9KV0pXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG4gIGZldGNoRmllbGRBc3NvY2lhdGlvbnMkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKEFkbWluQWN0aW9ucy5mZXRjaEZpZWxkQXNzb2NpYXRpb25zKSxcbiAgICAgIG1lcmdlTWFwKChhY3Rpb24pID0+XG4gICAgICAgIHRoaXMuc2VydmljZS5nZXRGaWVsZEFzc29jaWF0aW9ucyhhY3Rpb24uaWQpLnBpcGUoXG4gICAgICAgICAgbWFwKChhc3NvY2lhdGlvbikgPT4gQWRtaW5BY3Rpb25zLmZldGNoQXNzb2NpYXRpb25zU3VjY2Vzcyh7IGFzc29jaWF0aW9uIH0pKSxcbiAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4gW0FkbWluQWN0aW9ucy5mZXRjaEFzc29jaWF0aW9uc0ZhaWx1cmUoeyBlcnJvcjogZXJyb3IgfSldKVxuICAgICAgICApXG4gICAgICApXG4gICAgKVxuICApO1xuICBmZXRjaERhdGFzZXRBc3NvY2lhdGlvbnMkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKEFkbWluQWN0aW9ucy5mZXRjaERhdGFzZXRBc3NvY2lhdGlvbnMpLFxuICAgICAgbWVyZ2VNYXAoKGFjdGlvbikgPT5cbiAgICAgICAgdGhpcy5zZXJ2aWNlLmdldERhdGFzZXRBc3NvY2lhdGlvbnMoYWN0aW9uLmlkKS5waXBlKFxuICAgICAgICAgIG1hcCgoYXNzb2NpYXRpb24pID0+IEFkbWluQWN0aW9ucy5mZXRjaEFzc29jaWF0aW9uc1N1Y2Nlc3MoeyBhc3NvY2lhdGlvbiB9KSksXG4gICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IFtBZG1pbkFjdGlvbnMuZmV0Y2hBc3NvY2lhdGlvbnNGYWlsdXJlKHsgZXJyb3I6IGVycm9yIH0pXSlcbiAgICAgICAgKVxuICAgICAgKVxuICAgIClcbiAgKTtcbiAgZmV0Y2hBdHRyaWJ1dGVBc3NvY2lhdGlvbnMkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKEFkbWluQWN0aW9ucy5mZXRjaEF0dHJpYnV0ZUFzc29jaWF0aW9ucyksXG4gICAgICBtZXJnZU1hcCgoYWN0aW9uKSA9PlxuICAgICAgICB0aGlzLnNlcnZpY2UuZ2V0QXR0cmlidXRlQXNzb2NpYXRpb25zKGFjdGlvbi5pZCkucGlwZShcbiAgICAgICAgICBtYXAoKGFzc29jaWF0aW9uKSA9PiBBZG1pbkFjdGlvbnMuZmV0Y2hBc3NvY2lhdGlvbnNTdWNjZXNzKHsgYXNzb2NpYXRpb24gfSkpLFxuICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiBbQWRtaW5BY3Rpb25zLmZldGNoQXNzb2NpYXRpb25zRmFpbHVyZSh7IGVycm9yOiBlcnJvciB9KV0pXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG5cbiAgLy8gVE9ETyBtb3ZlIHRoaXMgZWZmZWN0IGludG8gYW4gYWRtaW4tZGF0YXNvdXJjZSBzdG9yZSAocHJvdm9seS1kYXNoYm9hcmQjNTg2KVxuICB1cGRhdGVEYXRhc2V0JCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LnVwZGF0ZSksXG4gICAgICBzd2l0Y2hNYXAoKGFjdGlvbikgPT5cbiAgICAgICAgdGhpcy5kc1NlcnZpY2UudXBkYXRlRGF0YXNldChhY3Rpb24uZGF0YXNldCkucGlwZShcbiAgICAgICAgICBtZXJnZU1hcCgoY29uZmxpY3Q/OiBTaGFyZUNvbmZsaWN0KSA9PiB7XG4gICAgICAgICAgICBsZXQgYWN0aW9uczogQWN0aW9uW10gPSBbXG4gICAgICAgICAgICAgIERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQuc2V0Q29uZmxpY3RHcm91cHMoeyBjb25mbGljdEdyb3VwczogY29uZmxpY3Q/LmNvbmZsaWN0R3JvdXBzQnlFbnRpdHkgfSksXG4gICAgICAgICAgICAgIERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQubG9hZERhdGFzZXQoKVxuICAgICAgICAgICAgXTtcbiAgICAgICAgICAgIGlmIChhY3Rpb24ucm91dGUpXG4gICAgICAgICAgICAgIGFjdGlvbnMucHVzaChEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LnVuc2VsZWN0RGF0YXNldCgpLCBBZG1pbkFjdGlvbnMucm91dGVUbyh7IHBhdGg6IGFjdGlvbi5yb3V0ZSB9KSk7XG4gICAgICAgICAgICByZXR1cm4gYWN0aW9ucztcbiAgICAgICAgICB9KVxuICAgICAgICApXG4gICAgICApLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IGFueSkgPT4gW0RhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQuZmFpbHVyZSh7IGVycm9yIH0pXSlcbiAgICApXG4gICk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBhY3Rpb25zJDogQWN0aW9ucyxcbiAgICBwcml2YXRlIHNlcnZpY2U6IEFkbWluU2VydmljZSxcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgZHNTZXJ2aWNlOiBEYXRhU291cmNlU2VydmljZVxuICApIHt9XG59XG4iXX0=
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4uZWZmZWN0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2FkbWluL3N0b3JlL2FkbWluLmVmZmVjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQVcsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQXFCLG9CQUFvQixFQUFpQixNQUFNLG9CQUFvQixDQUFDO0FBQy9HLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUNoRixPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7O0FBSy9DLE1BQU0sT0FBTyxZQUFZO0lBc0p2QixZQUNVLFFBQWlCLEVBQ2pCLE9BQXFCLEVBQ3JCLE1BQWMsRUFDZCxTQUE0QjtRQUg1QixhQUFRLEdBQVIsUUFBUSxDQUFTO1FBQ2pCLFlBQU8sR0FBUCxPQUFPLENBQWM7UUFDckIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGNBQVMsR0FBVCxTQUFTLENBQW1CO1FBekp0QyxhQUFRLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUMzQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDaEIsTUFBTSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsaUJBQWlCLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQ2xHLFFBQVEsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMs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QUNGLENBQUM7SUFPQyxDQUFDOzhHQTNKTyxZQUFZO2tIQUFaLFlBQVk7OzJGQUFaLFlBQVk7a0JBRHhCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQWN0aW9ucywgY3JlYXRlRWZmZWN0LCBvZlR5cGUgfSBmcm9tICdAbmdyeC9lZmZlY3RzJztcbmltcG9ydCB7IERhdGFTb3VyY2VBY3Rpb25zLCBEYXRhU291cmNlU2VydmljZSwgUmVsYXRpb25UeXBlc0FjdGlvbnMsIFNoYXJlQ29uZmxpY3QgfSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQnO1xuaW1wb3J0IHsgTWV0YWRhdGFBY3Rpb25zIH0gZnJvbSAnQHByb3ZvbHkvZGFzaGJvYXJkL2NvbXBvbmVudHMvbWV0YWRhdGEtZWRpdG9yJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCwgbWVyZ2VNYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQWRtaW5BY3Rpb25zIH0gZnJvbSAnLi9hZG1pbi5hY3Rpb25zJztcbmltcG9ydCB7IEFkbWluU2VydmljZSB9IGZyb20gJy4vYWRtaW4uc2VydmljZSc7XG5pbXBvcnQgeyBBY3Rpb24gfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBZG1pbkVmZmVjdHMge1xuICByb3V0ZVRvJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShBZG1pbkFjdGlvbnMucm91dGVUbywgRGF0YVNvdXJjZUFjdGlvbnMuZGF0YXNldC5jcmVhdGVkLCBEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LnVwZGF0ZWQpLFxuICAgICAgbWVyZ2VNYXAoKGFjdGlvbikgPT4ge1xuICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbYWN0aW9uLnBhdGhdLCB7IHF1ZXJ5UGFyYW1zOiBhY3Rpb24ucGFyYW1zIH0pO1xuICAgICAgICByZXR1cm4gYWN0aW9uLnBhdGggPT09IHRoaXMucm91dGVyLnVybCA/IFtdIDogW0FkbWluQWN0aW9ucy5yZXNldEFjdGlvbnMoKV07XG4gICAgICB9KVxuICAgIClcbiAgKTtcblxuICBnb1RvTmV3TWV0YWRhdGEkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKE1ldGFkYXRhQWN0aW9ucy5nb1RvTmV3TWV0YWRhdGEpLFxuICAgICAgbWFwKChhY3Rpb24pID0+IHtcbiAgICAgICAgcmV0dXJuIEFkbWluQWN0aW9ucy5yb3V0ZVRvKHsgcGF0aDogYWN0aW9uLnJvdXRlIH0pO1xuICAgICAgfSlcbiAgICApXG4gICk7XG5cbiAgZGVsZXRlUmVsYXRpb25UeXBlU3VjY2VzcyQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoUmVsYXRpb25UeXBlc0FjdGlvbnMuZGVsZXRlUmVsYXRpb25UeXBlU3VjY2VzcyksXG4gICAgICBtZXJnZU1hcCgoYWN0aW9uKSA9PiB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgUmVsYXRpb25UeXBlc0FjdGlvbnMubG9hZCgpLFxuICAgICAgICAgIEFkbWluQWN0aW9ucy5zZWxlY3RDb21wb25lbnRUeXBlKHsgY29tcG9uZW50VHlwZTogbnVsbCB9KSxcbiAgICAgICAgICBBZG1pbkFjdGlvbnMubWFpbkFjdGlvbnMoe1xuICAgICAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgYWN0aW9uOiBSZWxhdGlvblR5cGVzQWN0aW9ucy5vcGVuTW9kYWwoKSxcbiAgICAgICAgICAgICAgICBsYWJlbDogJ2FkZCcsXG4gICAgICAgICAgICAgICAgaWNvbjogJ2FkZF9jb2x1bW4nLFxuICAgICAgICAgICAgICAgIG1vZHVsZUFjY2VzczogJ2FkbWluJyxcbiAgICAgICAgICAgICAgICBwYWdlQWNjZXNzOiAncmVsYXRpb25fdHlwZXMnLFxuICAgICAgICAgICAgICAgIGFjdGlvbkFjY2VzczogJ3dyaXRlJ1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdXG4gICAgICAgICAgfSlcbiAgICAgICAgXTtcbiAgICAgIH0pXG4gICAgKVxuICApO1xuXG4gIGNsb3NlUGFuZWwkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKEFkbWluQWN0aW9ucy5oaWdobGlnaHRNZW51KSxcbiAgICAgIG1lcmdlTWFwKChhY3Rpb24pID0+IHtcbiAgICAgICAgcmV0dXJuIFtBZG1pbkFjdGlvbnMudG9nZ2xlUGFuZWwoeyBwYW5lbE9wZW46IGZhbHNlIH0pXTtcbiAgICAgIH0pXG4gICAgKVxuICApO1xuXG4gIGRlbGV0ZWQkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQuZGVsZXRlZCksXG4gICAgICBtZXJnZU1hcCgoYWN0aW9uKSA9PiBbXG4gICAgICAgIEFkbWluQWN0aW9ucy50b2dnbGVQYW5lbCh7IHBhbmVsT3BlbjogZmFsc2UgfSksXG4gICAgICAgIEFkbWluQWN0aW9ucy5zZWxlY3RDb21wb25lbnRUeXBlKHsgY29tcG9uZW50VHlwZTogbnVsbCB9KSxcbiAgICAgICAgQWRtaW5BY3Rpb25zLm1haW5BY3Rpb25zKHtcbiAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGFjdGlvbjogQWRtaW5BY3Rpb25zLnJvdXRlVG8oeyBwYXRoOiBhY3Rpb24uYWRkUm91dGUgfSksXG4gICAgICAgICAgICAgIGxhYmVsOiAnYWRkJyxcbiAgICAgICAgICAgICAgaWNvbjogJ2FkZF9jb2x1bW4nLFxuICAgICAgICAgICAgICBtb2R1bGVBY2Nlc3M6ICdhZG1pbicsXG4gICAgICAgICAgICAgIHBhZ2VBY2Nlc3M6ICdkYXRhc2V0JyxcbiAgICAgICAgICAgICAgYWN0aW9uQWNjZXNzOiAnd3JpdGUnXG4gICAgICAgICAgICB9XG4gICAgICAgICAgXVxuICAgICAgICB9KVxuICAgICAgXSlcbiAgICApXG4gICk7XG5cbiAgb3Blbk5ld0RhdGFzZXQkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQub3Blbk5ld0RhdGFzZXQpLFxuICAgICAgbWFwKChhY3Rpb24pID0+IHtcbiAgICAgICAgcmV0dXJuIEFkbWluQWN0aW9ucy5yb3V0ZVRvKHsgcGF0aDogYWN0aW9uLnJvdXRlIH0pO1xuICAgICAgfSlcbiAgICApXG4gICk7XG5cbiAgZmV0Y2hDbGFzc0Fzc29jaWF0aW9ucyQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoQWRtaW5BY3Rpb25zLmZldGNoQ2xhc3NBc3NvY2lhdGlvbnMpLFxuICAgICAgbWVyZ2VNYXAoKGFjdGlvbikgPT5cbiAgICAgICAgdGhpcy5zZXJ2aWNlLmdldENsYXNzQXNzb2NpYXRpb25zKGFjdGlvbi5pZCkucGlwZShcbiAgICAgICAgICBtYXAoKGFzc29jaWF0aW9uKSA9PiBBZG1pbkFjdGlvbnMuZmV0Y2hBc3NvY2lhdGlvbnNTdWNjZXNzKHsgYXNzb2NpYXRpb24gfSkpLFxuICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiBbQWRtaW5BY3Rpb25zLmZldGNoQXNzb2NpYXRpb25zRmFpbHVyZSh7IGVycm9yOiBlcnJvciB9KV0pXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG4gIGZldGNoRmllbGRBc3NvY2lhdGlvbnMkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKEFkbWluQWN0aW9ucy5mZXRjaEZpZWxkQXNzb2NpYXRpb25zKSxcbiAgICAgIG1lcmdlTWFwKChhY3Rpb24pID0+XG4gICAgICAgIHRoaXMuc2VydmljZS5nZXRGaWVsZEFzc29jaWF0aW9ucyhhY3Rpb24uaWQpLnBpcGUoXG4gICAgICAgICAgbWFwKChhc3NvY2lhdGlvbikgPT4gQWRtaW5BY3Rpb25zLmZldGNoQXNzb2NpYXRpb25zU3VjY2Vzcyh7IGFzc29jaWF0aW9uIH0pKSxcbiAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4gW0FkbWluQWN0aW9ucy5mZXRjaEFzc29jaWF0aW9uc0ZhaWx1cmUoeyBlcnJvcjogZXJyb3IgfSldKVxuICAgICAgICApXG4gICAgICApXG4gICAgKVxuICApO1xuICBmZXRjaERhdGFzZXRBc3NvY2lhdGlvbnMkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKEFkbWluQWN0aW9ucy5mZXRjaERhdGFzZXRBc3NvY2lhdGlvbnMpLFxuICAgICAgbWVyZ2VNYXAoKGFjdGlvbikgPT5cbiAgICAgICAgdGhpcy5zZXJ2aWNlLmdldERhdGFzZXRBc3NvY2lhdGlvbnMoYWN0aW9uLmlkKS5waXBlKFxuICAgICAgICAgIG1hcCgoYXNzb2NpYXRpb24pID0+IEFkbWluQWN0aW9ucy5mZXRjaEFzc29jaWF0aW9uc1N1Y2Nlc3MoeyBhc3NvY2lhdGlvbiB9KSksXG4gICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IFtBZG1pbkFjdGlvbnMuZmV0Y2hBc3NvY2lhdGlvbnNGYWlsdXJlKHsgZXJyb3I6IGVycm9yIH0pXSlcbiAgICAgICAgKVxuICAgICAgKVxuICAgIClcbiAgKTtcbiAgZmV0Y2hBdHRyaWJ1dGVBc3NvY2lhdGlvbnMkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKEFkbWluQWN0aW9ucy5mZXRjaEF0dHJpYnV0ZUFzc29jaWF0aW9ucyksXG4gICAgICBtZXJnZU1hcCgoYWN0aW9uKSA9PlxuICAgICAgICB0aGlzLnNlcnZpY2UuZ2V0QXR0cmlidXRlQXNzb2NpYXRpb25zKGFjdGlvbi5pZCkucGlwZShcbiAgICAgICAgICBtYXAoKGFzc29jaWF0aW9uKSA9PiBBZG1pbkFjdGlvbnMuZmV0Y2hBc3NvY2lhdGlvbnNTdWNjZXNzKHsgYXNzb2NpYXRpb24gfSkpLFxuICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiBbQWRtaW5BY3Rpb25zLmZldGNoQXNzb2NpYXRpb25zRmFpbHVyZSh7IGVycm9yOiBlcnJvciB9KV0pXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG5cbiAgLy8gVE9ETyBtb3ZlIHRoaXMgZWZmZWN0IGludG8gYW4gYWRtaW4tZGF0YXNvdXJjZSBzdG9yZSAocHJvdm9seS1kYXNoYm9hcmQjNTg2KVxuICB1cGRhdGVEYXRhc2V0JCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LnVwZGF0ZSksXG4gICAgICBzd2l0Y2hNYXAoKGFjdGlvbikgPT5cbiAgICAgICAgdGhpcy5kc1NlcnZpY2UudXBkYXRlRGF0YXNldChhY3Rpb24uZGF0YXNldCkucGlwZShcbiAgICAgICAgICBtZXJnZU1hcCgoY29uZmxpY3Q/OiBTaGFyZUNvbmZsaWN0KSA9PiB7XG4gICAgICAgICAgICBsZXQgYWN0aW9uczogQWN0aW9uW10gPSBbXG4gICAgICAgICAgICAgIERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQuc2V0TWlzc2luZ0dyb3Vwcyh7IG1pc3NpbmdHcm91cHM6IGNvbmZsaWN0Py5taXNzaW5nR3JvdXBzQnlFbnRpdHkgfSksXG4gICAgICAgICAgICAgIERhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQubG9hZERhdGFzZXQoKVxuICAgICAgICAgICAgXTtcbiAgICAgICAgICAgIGlmIChhY3Rpb24ucm91dGUpXG4gICAgICAgICAgICAgIGFjdGlvbnMucHVzaChEYXRhU291cmNlQWN0aW9ucy5kYXRhc2V0LnVuc2VsZWN0RGF0YXNldCgpLCBBZG1pbkFjdGlvbnMucm91dGVUbyh7IHBhdGg6IGFjdGlvbi5yb3V0ZSB9KSk7XG4gICAgICAgICAgICByZXR1cm4gYWN0aW9ucztcbiAgICAgICAgICB9KVxuICAgICAgICApXG4gICAgICApLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IGFueSkgPT4gW0RhdGFTb3VyY2VBY3Rpb25zLmRhdGFzZXQuZmFpbHVyZSh7IGVycm9yIH0pXSlcbiAgICApXG4gICk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBhY3Rpb25zJDogQWN0aW9ucyxcbiAgICBwcml2YXRlIHNlcnZpY2U6IEFkbWluU2VydmljZSxcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgZHNTZXJ2aWNlOiBEYXRhU291cmNlU2VydmljZVxuICApIHt9XG59XG4iXX0=