@paperless/angular 2.19.0 → 2.19.2

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.
@@ -1,6 +1,6 @@
1
1
  /* eslint-disable max-len */
2
- import { Component, HostBinding, Input } from "@angular/core";
3
- import { cn, getTableCellColumnClasses, objectGetByPath, } from "@paperless/core";
2
+ import { Component, HostBinding, Input } from '@angular/core';
3
+ import { cn, getTableCellColumnClasses, objectGetByPath, } from '@paperless/core';
4
4
  import * as i0 from "@angular/core";
5
5
  import * as i1 from "@angular/common";
6
6
  import * as i2 from "../../../../stencil/components";
@@ -68,7 +68,7 @@ export class TableCell {
68
68
  /**
69
69
  * The variant of the column
70
70
  */
71
- this.variant = "default";
71
+ this.variant = 'default';
72
72
  /**
73
73
  * The index of the column
74
74
  */
@@ -89,21 +89,21 @@ export class TableCell {
89
89
  }
90
90
  get class() {
91
91
  return cn(getTableCellColumnClasses(this.definition, this.variant, this.checkboxOffset), {
92
- "sticky left-4 z-[2]": !!this.definition?.sticky,
93
- "bg-gradient-to-r from-white to-transparent dark:from-hurricane-700 from-80%": this.definition?.sticky && this.definition?.sticky !== "secondary",
94
- "bg-gradient-to-r from-off-white-300 to-transparent dark:from-hurricane-400 from-80%": this.definition?.sticky && this.definition?.sticky === "secondary",
95
- "flex-shrink": !this.scrollable,
96
- "flex-shrink-0": this.scrollable,
92
+ 'sticky left-4 z-[2]': !!this.definition?.sticky,
93
+ 'bg-gradient-to-r from-white to-transparent dark:from-hurricane-700 from-80%': this.definition?.sticky && this.definition?.sticky !== 'secondary',
94
+ 'bg-gradient-to-r from-off-white-300 to-transparent dark:from-hurricane-400 from-80%': this.definition?.sticky && this.definition?.sticky === 'secondary',
95
+ 'flex-shrink': !this.scrollable,
96
+ 'flex-shrink-0': this.scrollable,
97
97
  });
98
98
  }
99
99
  get data() {
100
- if (this.variant === "header" || this.variant === "header-secondary") {
100
+ if (this.variant === 'header' || this.variant === 'header-secondary') {
101
101
  return {
102
102
  value: this.value,
103
103
  };
104
104
  }
105
105
  return {
106
- value: (this.value ?? this.definition?.path)
106
+ value: this.value ?? this.definition?.path
107
107
  ? objectGetByPath(this.item, this.definition.path)
108
108
  : null,
109
109
  item: this.item,
@@ -111,12 +111,27 @@ export class TableCell {
111
111
  rowIndex: this.rowIndex,
112
112
  };
113
113
  }
114
+ get contentClass() {
115
+ const align = this.variant === 'header'
116
+ ? this.definition?.headerAlign ?? this.definition?.align
117
+ : this.definition?.align;
118
+ return cn('overflow-hidden text-ellipsis', {
119
+ flex: this.definition?.flex,
120
+ 'flex-1': this.definition?.flex,
121
+ 'justify-start': this.definition?.flex && (align === undefined || align === 'start'),
122
+ 'justify-end': this.definition?.flex && align === 'end',
123
+ 'justify-center': this.definition?.flex && align === 'end',
124
+ 'text-start': !this.definition?.flex && (align === undefined || align === 'start'),
125
+ 'text-center': !this.definition?.flex && align === 'center',
126
+ 'text-end': !this.definition?.flex && align === 'end',
127
+ });
128
+ }
114
129
  }
115
130
  TableCell.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TableCell, deps: [], target: i0.ɵɵFactoryTarget.Component });
116
- TableCell.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TableCell, selector: "p-table-cell-ngx", inputs: { variant: "variant", index: "index", rowIndex: "rowIndex", definition: "definition", item: "item", value: "value", checkbox: "checkbox", checkboxOffset: "checkboxOffset", template: "template", scrollable: "scrollable" }, host: { properties: { "class": "this.class" } }, ngImport: i0, template: "<ng-container *ngIf=\"checkbox\">\n\t<ng-container *ngTemplateOutlet=\"checkbox\"></ng-container>\n</ng-container>\n\n<ng-container [ngSwitch]=\"variant\">\n\t<p-loader\n\t\t*ngSwitchCase=\"'loading'\"\n\t\tvariant=\"ghost\"\n\t\tclass=\"h-6 w-full flex-1 rounded\"\n\t></p-loader>\n\n\t<ng-container *ngSwitchCase=\"'actions'\">\n\t\t<ng-container *ngIf=\"template\">\n\t\t\t<ng-container *ngTemplateOutlet=\"template; context: data\"></ng-container>\n\t\t</ng-container>\n\t</ng-container>\n\n\t<div\n\t\t*ngIf=\"variant === 'header' || variant === 'header-secondary'\"\n\t\t[class]=\"\n\t\t\tcn('overflow-hidden text-ellipsis', {\n\t\t\t\t'text-start':\n\t\t\t\t\tdefinition?.align === undefined || definition.align === 'start',\n\t\t\t\t'text-center': definition.align === 'center',\n\t\t\t\t'text-end': definition.align === 'end'\n\t\t\t})\n\t\t\"\n\t>\n\t\t<ng-container *ngTemplateOutlet=\"valueTemplate\"></ng-container>\n\t</div>\n\n\t<div\n\t\t*ngSwitchCase=\"'default'\"\n\t\t[class]=\"\n\t\t\tcn('overflow-hidden text-ellipsis', {\n\t\t\t\tflex: definition?.flex,\n\t\t\t\t'flex-1': definition?.flex,\n\t\t\t\t'justify-start':\n\t\t\t\t\tdefinition?.flex &&\n\t\t\t\t\t(definition?.align === undefined || definition.align === 'start'),\n\t\t\t\t'justify-end': definition?.flex && definition.align === 'end',\n\t\t\t\t'justify-center': definition?.flex && definition.align === 'end',\n\t\t\t\t'text-start':\n\t\t\t\t\t!definition?.flex &&\n\t\t\t\t\t(definition?.align === undefined || definition.align === 'start'),\n\t\t\t\t'text-center': !definition?.flex && definition.align === 'center',\n\t\t\t\t'text-end': !definition?.flex && definition.align === 'end'\n\t\t\t})\n\t\t\"\n\t>\n\t\t<ng-container *ngIf=\"template; else valueTemplate\">\n\t\t\t<ng-container *ngTemplateOutlet=\"template; context: data\"></ng-container>\n\t\t</ng-container>\n\t</div>\n</ng-container>\n\n<ng-template #valueTemplate>\n\t<ng-container *ngIf=\"data.value\">\n\t\t{{ data.value }}\n\t</ng-container>\n\n\t<ng-content *ngIf=\"!data.value\"></ng-content>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.PLoader, selector: "p-loader", inputs: ["color", "modalDescription", "modalTitle", "show", "variant"] }] });
131
+ TableCell.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TableCell, selector: "p-table-cell-ngx", inputs: { variant: "variant", index: "index", rowIndex: "rowIndex", definition: "definition", item: "item", value: "value", checkbox: "checkbox", checkboxOffset: "checkboxOffset", template: "template", scrollable: "scrollable" }, host: { properties: { "class": "this.class" } }, ngImport: i0, template: "<ng-container *ngIf=\"checkbox\">\n\t<ng-container *ngTemplateOutlet=\"checkbox\"></ng-container>\n</ng-container>\n\n<ng-container [ngSwitch]=\"variant\">\n\t<p-loader\n\t\t*ngSwitchCase=\"'loading'\"\n\t\tvariant=\"ghost\"\n\t\tclass=\"h-6 w-full flex-1 rounded\"\n\t></p-loader>\n\n\t<ng-container *ngSwitchCase=\"'actions'\">\n\t\t<ng-container *ngIf=\"template\">\n\t\t\t<ng-container *ngTemplateOutlet=\"template; context: data\"></ng-container>\n\t\t</ng-container>\n\t</ng-container>\n\n\t<div\n\t\t*ngIf=\"variant === 'header' || variant === 'header-secondary'\"\n\t\t[class]=\"\n\t\t\tcn('overflow-hidden text-ellipsis', {\n\t\t\t\t'text-start':\n\t\t\t\t\tdefinition?.align === undefined || definition.align === 'start',\n\t\t\t\t'text-center': definition.align === 'center',\n\t\t\t\t'text-end': definition.align === 'end'\n\t\t\t})\n\t\t\"\n\t>\n\t\t<ng-container *ngTemplateOutlet=\"valueTemplate\"></ng-container>\n\t</div>\n\n\t<div\n\t\t*ngSwitchCase=\"'default'\"\n\t\t[class]=\"contentClass\"\n\t>\n\t\t<ng-container *ngIf=\"template; else valueTemplate\">\n\t\t\t<ng-container *ngTemplateOutlet=\"template; context: data\"></ng-container>\n\t\t</ng-container>\n\t</div>\n</ng-container>\n\n<ng-template #valueTemplate>\n\t<ng-container *ngIf=\"data.value\">\n\t\t{{ data.value }}\n\t</ng-container>\n\n\t<ng-content *ngIf=\"!data.value\"></ng-content>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.PLoader, selector: "p-loader", inputs: ["color", "modalDescription", "modalTitle", "show", "variant"] }] });
117
132
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TableCell, decorators: [{
118
133
  type: Component,
119
- args: [{ selector: "p-table-cell-ngx", template: "<ng-container *ngIf=\"checkbox\">\n\t<ng-container *ngTemplateOutlet=\"checkbox\"></ng-container>\n</ng-container>\n\n<ng-container [ngSwitch]=\"variant\">\n\t<p-loader\n\t\t*ngSwitchCase=\"'loading'\"\n\t\tvariant=\"ghost\"\n\t\tclass=\"h-6 w-full flex-1 rounded\"\n\t></p-loader>\n\n\t<ng-container *ngSwitchCase=\"'actions'\">\n\t\t<ng-container *ngIf=\"template\">\n\t\t\t<ng-container *ngTemplateOutlet=\"template; context: data\"></ng-container>\n\t\t</ng-container>\n\t</ng-container>\n\n\t<div\n\t\t*ngIf=\"variant === 'header' || variant === 'header-secondary'\"\n\t\t[class]=\"\n\t\t\tcn('overflow-hidden text-ellipsis', {\n\t\t\t\t'text-start':\n\t\t\t\t\tdefinition?.align === undefined || definition.align === 'start',\n\t\t\t\t'text-center': definition.align === 'center',\n\t\t\t\t'text-end': definition.align === 'end'\n\t\t\t})\n\t\t\"\n\t>\n\t\t<ng-container *ngTemplateOutlet=\"valueTemplate\"></ng-container>\n\t</div>\n\n\t<div\n\t\t*ngSwitchCase=\"'default'\"\n\t\t[class]=\"\n\t\t\tcn('overflow-hidden text-ellipsis', {\n\t\t\t\tflex: definition?.flex,\n\t\t\t\t'flex-1': definition?.flex,\n\t\t\t\t'justify-start':\n\t\t\t\t\tdefinition?.flex &&\n\t\t\t\t\t(definition?.align === undefined || definition.align === 'start'),\n\t\t\t\t'justify-end': definition?.flex && definition.align === 'end',\n\t\t\t\t'justify-center': definition?.flex && definition.align === 'end',\n\t\t\t\t'text-start':\n\t\t\t\t\t!definition?.flex &&\n\t\t\t\t\t(definition?.align === undefined || definition.align === 'start'),\n\t\t\t\t'text-center': !definition?.flex && definition.align === 'center',\n\t\t\t\t'text-end': !definition?.flex && definition.align === 'end'\n\t\t\t})\n\t\t\"\n\t>\n\t\t<ng-container *ngIf=\"template; else valueTemplate\">\n\t\t\t<ng-container *ngTemplateOutlet=\"template; context: data\"></ng-container>\n\t\t</ng-container>\n\t</div>\n</ng-container>\n\n<ng-template #valueTemplate>\n\t<ng-container *ngIf=\"data.value\">\n\t\t{{ data.value }}\n\t</ng-container>\n\n\t<ng-content *ngIf=\"!data.value\"></ng-content>\n</ng-template>\n" }]
134
+ args: [{ selector: 'p-table-cell-ngx', template: "<ng-container *ngIf=\"checkbox\">\n\t<ng-container *ngTemplateOutlet=\"checkbox\"></ng-container>\n</ng-container>\n\n<ng-container [ngSwitch]=\"variant\">\n\t<p-loader\n\t\t*ngSwitchCase=\"'loading'\"\n\t\tvariant=\"ghost\"\n\t\tclass=\"h-6 w-full flex-1 rounded\"\n\t></p-loader>\n\n\t<ng-container *ngSwitchCase=\"'actions'\">\n\t\t<ng-container *ngIf=\"template\">\n\t\t\t<ng-container *ngTemplateOutlet=\"template; context: data\"></ng-container>\n\t\t</ng-container>\n\t</ng-container>\n\n\t<div\n\t\t*ngIf=\"variant === 'header' || variant === 'header-secondary'\"\n\t\t[class]=\"\n\t\t\tcn('overflow-hidden text-ellipsis', {\n\t\t\t\t'text-start':\n\t\t\t\t\tdefinition?.align === undefined || definition.align === 'start',\n\t\t\t\t'text-center': definition.align === 'center',\n\t\t\t\t'text-end': definition.align === 'end'\n\t\t\t})\n\t\t\"\n\t>\n\t\t<ng-container *ngTemplateOutlet=\"valueTemplate\"></ng-container>\n\t</div>\n\n\t<div\n\t\t*ngSwitchCase=\"'default'\"\n\t\t[class]=\"contentClass\"\n\t>\n\t\t<ng-container *ngIf=\"template; else valueTemplate\">\n\t\t\t<ng-container *ngTemplateOutlet=\"template; context: data\"></ng-container>\n\t\t</ng-container>\n\t</div>\n</ng-container>\n\n<ng-template #valueTemplate>\n\t<ng-container *ngIf=\"data.value\">\n\t\t{{ data.value }}\n\t</ng-container>\n\n\t<ng-content *ngIf=\"!data.value\"></ng-content>\n</ng-template>\n" }]
120
135
  }], propDecorators: { variant: [{
121
136
  type: Input
122
137
  }], index: [{
@@ -139,6 +154,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
139
154
  type: Input
140
155
  }], class: [{
141
156
  type: HostBinding,
142
- args: ["class"]
157
+ args: ['class']
143
158
  }] } });
144
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY2VsbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wYXBlcmxlc3Mvc3JjL2xpYi9tb2R1bGVzL3RhYmxlL2NvbXBvbmVudHMvdGFibGUtY2VsbC90YWJsZS1jZWxsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3BhcGVybGVzcy9zcmMvbGliL21vZHVsZXMvdGFibGUvY29tcG9uZW50cy90YWJsZS1jZWxsL3RhYmxlLWNlbGwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNEJBQTRCO0FBQzVCLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQ04sRUFBRSxFQUNGLHlCQUF5QixFQUN6QixlQUFlLEdBRWYsTUFBTSxpQkFBaUIsQ0FBQzs7OztBQUV6Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQTBETTtBQUtOLE1BQU0sT0FBTyxTQUFTO0lBSnRCO1FBS0M7O1dBRUc7UUFDTSxZQUFPLEdBQ2YsU0FBUyxDQUFDO1FBRVg7O1dBRUc7UUFDTSxVQUFLLEdBQVcsQ0FBQyxDQUFDO1FBRTNCOztXQUVHO1FBQ00sYUFBUSxHQUFXLENBQUMsQ0FBQztRQXNCOUI7O1dBRUc7UUFDTSxtQkFBYyxHQUFZLEtBQUssQ0FBQztRQU96Qzs7V0FFRztRQUNNLGVBQVUsR0FBWSxLQUFLLENBQUM7UUFFOUIsT0FBRSxHQUFHLEVBQUUsQ0FBQztLQXVDZjtJQXJDQSxJQUNJLEtBQUs7UUFDUixPQUFPLEVBQUUsQ0FDUix5QkFBeUIsQ0FDeEIsSUFBSSxDQUFDLFVBQVUsRUFDZixJQUFJLENBQUMsT0FBTyxFQUNaLElBQUksQ0FBQyxjQUFjLENBQ25CLEVBQ0Q7WUFDQyxxQkFBcUIsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxNQUFNO1lBQ2hELDZFQUE2RSxFQUM1RSxJQUFJLENBQUMsVUFBVSxFQUFFLE1BQU0sSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLE1BQU0sS0FBSyxXQUFXO1lBQ25FLHFGQUFxRixFQUNwRixJQUFJLENBQUMsVUFBVSxFQUFFLE1BQU0sSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLE1BQU0sS0FBSyxXQUFXO1lBQ25FLGFBQWEsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVO1lBQy9CLGVBQWUsRUFBRSxJQUFJLENBQUMsVUFBVTtTQUNoQyxDQUNELENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ1AsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLFFBQVEsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLGtCQUFrQixFQUFFO1lBQ3JFLE9BQU87Z0JBQ04sS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO2FBQ2pCLENBQUM7U0FDRjtRQUVELE9BQU87WUFDTixLQUFLLEVBQ0osQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDO2dCQUNwQyxDQUFDLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUM7Z0JBQ2xELENBQUMsQ0FBQyxJQUFJO1lBQ1IsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO1lBQ2pCLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtTQUN2QixDQUFDO0lBQ0gsQ0FBQzs7c0dBMUZXLFNBQVM7MEZBQVQsU0FBUywrVUN4RXRCLHNoRUErREE7MkZEU2EsU0FBUztrQkFKckIsU0FBUzsrQkFDQyxrQkFBa0I7OEJBT25CLE9BQU87c0JBQWYsS0FBSztnQkFNRyxLQUFLO3NCQUFiLEtBQUs7Z0JBS0csUUFBUTtzQkFBaEIsS0FBSztnQkFLRyxVQUFVO3NCQUFsQixLQUFLO2dCQUtHLElBQUk7c0JBQVosS0FBSztnQkFLRyxLQUFLO3NCQUFiLEtBQUs7Z0JBS0csUUFBUTtzQkFBaEIsS0FBSztnQkFLRyxjQUFjO3NCQUF0QixLQUFLO2dCQUtHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBS0csVUFBVTtzQkFBbEIsS0FBSztnQkFLRixLQUFLO3NCQURSLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4gKi9cbmltcG9ydCB7IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0LCBUZW1wbGF0ZVJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQge1xuXHRjbixcblx0Z2V0VGFibGVDZWxsQ29sdW1uQ2xhc3Nlcyxcblx0b2JqZWN0R2V0QnlQYXRoLFxuXHRUYWJsZURlZmluaXRpb25EYXRhLFxufSBmcm9tIFwiQHBhcGVybGVzcy9jb3JlXCI7XG5cbi8qXG4gICAgIFdpdGggdGhpcywgd2Ugc2hhbGwgaGFjayB0aGUgc3lzdGVtIGluIHdheXMgbm8gb25lIHdvdWxkIGV2ZXIgaGF2ZSB0aG91Z2h0LlxuXG4gICAgIGJnLXdoaXRlIHN0aWNreSBkYXJrOmJnLWh1cnJpY2FuZS03MDAgei1bMl0gZmxleC1zaHJpbmstMCBmbGV4LXNocmluayBmcm9tLTgwJSBwbC04XG5cdCB0ZXh0LXN0b3JtLTQwMCB0ZXh0LXN0b3JtLTMwMCB0ZXh0LXN0b3JtLTUwMCBkYXJrOnRleHQtd2hpdGUgZGFyazp0ZXh0LWh1cnJpY2FuZS0yMDBcblx0IGp1c3RpZnktc3RhcnQganVzdGlmeS1jZW50ZXIganVzdGlmeS1lbmQgaXRlbXMtY2VudGVyIGdhcC00XG4gICAgIGZvbnQtc2VtaWJvbGQgdGV4dC1zdG9ybS01MDAgdGV4dC1zdG9ybS01MDAgdGV4dC1zdG9ybS00MDAgdGV4dC1zdG9ybS0zMDBcbiAgICAgdy0xLzEyIHctMi8xMiB3LTMvMTIgdy00LzEyIHctNS8xMiB3LTYvMTIgdy03LzEyIHctOC8xMiB3LTkvMTIgdy0xMC8xMiB3LTExLzEyIHctMTIvMTJcbiAgICAgdGFibGV0OnctMS8xMiB0YWJsZXQ6dy0yLzEyIHRhYmxldDp3LTMvMTIgdGFibGV0OnctNC8xMiB0YWJsZXQ6dy01LzEyIHRhYmxldDp3LTYvMTIgdGFibGV0OnctNy8xMiB0YWJsZXQ6dy04LzEyIHRhYmxldDp3LTkvMTIgdGFibGV0OnctMTAvMTIgdGFibGV0OnctMTEvMTIgdGFibGV0OnctMTIvMTJcbiAgICAgZGVza3RvcC14czp3LTEvMTIgZGVza3RvcC14czp3LTIvMTIgZGVza3RvcC14czp3LTMvMTIgZGVza3RvcC14czp3LTQvMTIgZGVza3RvcC14czp3LTUvMTIgZGVza3RvcC14czp3LTYvMTIgZGVza3RvcC14czp3LTcvMTIgZGVza3RvcC14czp3LTgvMTIgZGVza3RvcC14czp3LTkvMTIgZGVza3RvcC14czp3LTEwLzEyIGRlc2t0b3AteHM6dy0xMS8xMiBkZXNrdG9wLXhzOnctMTIvMTJcbiAgICAgZGVza3RvcC14czp3LTEvMTIgZGVza3RvcC14czp3LTIvMTIgZGVza3RvcC14czp3LTMvMTIgZGVza3RvcC14czp3LTQvMTIgZGVza3RvcC14czp3LTUvMTIgZGVza3RvcC14czp3LTYvMTIgZGVza3RvcC14czp3LTcvMTIgZGVza3RvcC14czp3LTgvMTIgZGVza3RvcC14czp3LTkvMTIgZGVza3RvcC14czp3LTEwLzEyIGRlc2t0b3AteHM6dy0xMS8xMiBkZXNrdG9wLXhzOnctMTIvMTJcbiAgICAgZGVza3RvcC1zbTp3LTEvMTIgZGVza3RvcC1zbTp3LTIvMTIgZGVza3RvcC1zbTp3LTMvMTIgZGVza3RvcC1zbTp3LTQvMTIgZGVza3RvcC1zbTp3LTUvMTIgZGVza3RvcC1zbTp3LTYvMTIgZGVza3RvcC1zbTp3LTcvMTIgZGVza3RvcC1zbTp3LTgvMTIgZGVza3RvcC1zbTp3LTkvMTIgZGVza3RvcC1zbTp3LTEwLzEyIGRlc2t0b3Atc206dy0xMS8xMiBkZXNrdG9wLXNtOnctMTIvMTJcbiAgICAgZGVza3RvcDp3LTEvMTIgZGVza3RvcDp3LTIvMTIgZGVza3RvcDp3LTMvMTIgZGVza3RvcDp3LTQvMTIgZGVza3RvcDp3LTUvMTIgZGVza3RvcDp3LTYvMTIgZGVza3RvcDp3LTcvMTIgZGVza3RvcDp3LTgvMTIgZGVza3RvcDp3LTkvMTIgZGVza3RvcDp3LTEwLzEyIGRlc2t0b3A6dy0xMS8xMiBkZXNrdG9wOnctMTIvMTJcbiAgICAgZGVza3RvcC1sZzp3LTEvMTIgZGVza3RvcC1sZzp3LTIvMTIgZGVza3RvcC1sZzp3LTMvMTIgZGVza3RvcC1sZzp3LTQvMTIgZGVza3RvcC1sZzp3LTUvMTIgZGVza3RvcC1sZzp3LTYvMTIgZGVza3RvcC1sZzp3LTcvMTIgZGVza3RvcC1sZzp3LTgvMTIgZGVza3RvcC1sZzp3LTkvMTIgZGVza3RvcC1sZzp3LTEwLzEyIGRlc2t0b3AtbGc6dy0xMS8xMiBkZXNrdG9wLWxnOnctMTIvMTJcbiAgICAgZGVza3RvcC14bDp3LTEvMTIgZGVza3RvcC14bDp3LTIvMTIgZGVza3RvcC14bDp3LTMvMTIgZGVza3RvcC14bDp3LTQvMTIgZGVza3RvcC14bDp3LTUvMTIgZGVza3RvcC14bDp3LTYvMTIgZGVza3RvcC14bDp3LTcvMTIgZGVza3RvcC14bDp3LTgvMTIgZGVza3RvcC14bDp3LTkvMTIgZGVza3RvcC14bDp3LTEwLzEyIGRlc2t0b3AteGw6dy0xMS8xMiBkZXNrdG9wLXhsOnctMTIvMTJcbiAgICAgaGlkZGVuIGZsZXggZ3JvdXAtaG92ZXI6aGlkZGVuIGdyb3VwLWhvdmVyOmZsZXhcbiAgICAgdGFibGV0OmhpZGRlbiB0YWJsZXQ6ZmxleCB0YWJsZXQ6Z3JvdXAtaG92ZXI6aGlkZGVuIHRhYmxldDpncm91cC1ob3ZlcjpmbGV4XG4gICAgIGRlc2t0b3AteHM6aGlkZGVuIGRlc2t0b3AteHM6ZmxleCBkZXNrdG9wLXhzOmdyb3VwLWhvdmVyOmhpZGRlbiBkZXNrdG9wLXhzOmdyb3VwLWhvdmVyOmZsZXhcbiAgICAgZGVza3RvcC1zbTpoaWRkZW4gZGVza3RvcC1zbTpmbGV4ICBkZXNrdG9wLXNtOmdyb3VwLWhvdmVyOmhpZGRlbiBkZXNrdG9wLXNtOmdyb3VwLWhvdmVyOmZsZXhcbiAgICAgZGVza3RvcDpoaWRkZW4gZGVza3RvcDpmbGV4IGRlc2t0b3A6Z3JvdXAtaG92ZXI6aGlkZGVuIGRlc2t0b3A6Z3JvdXAtaG92ZXI6ZmxleFxuICAgICBkZXNrdG9wLWxnOmhpZGRlbiBkZXNrdG9wLWxnOmZsZXggZGVza3RvcC1sZzpncm91cC1ob3ZlcjpoaWRkZW4gZGVza3RvcC1sZzpncm91cC1ob3ZlcjpmbGV4XG4gICAgIGRlc2t0b3AteGw6aGlkZGVuIGRlc2t0b3AteGw6ZmxleCBkZXNrdG9wLXhsOmdyb3VwLWhvdmVyOmhpZGRlbiBkZXNrdG9wLXhsOmdyb3VwLWhvdmVyOmZsZXhcbiAgICAgcHItNCBwci0wIGxhc3Qtb2YtdHlwZTpwci0wXG4gICAgIHRhYmxldDpwci00IHRhYmxldDpwci0wXG4gICAgIGRlc2t0b3AteHM6cHItNCBkZXNrdG9wLXhzOnByLTBcbiAgICAgZGVza3RvcC1zbTpwci00IGRlc2t0b3Atc206cHItMFxuICAgICBkZXNrdG9wOnByLTQgZGVza3RvcDpwci0wXG4gICAgIGRlc2t0b3AtbGc6cHItNCBkZXNrdG9wLWxnOnByLTBcbiAgICAgZGVza3RvcC14bDpwci00IGRlc2t0b3AteGw6cHItMFxuXG5cbiAgICAgICAg4qCA4qCA4qCA4qCA4qCA4qOg4qO04qO24qO/4qO/4qC/4qO34qO24qOk4qOE4qGA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qKA4qOg4qO04qO24qO34qC/4qO/4qO/4qO24qOm4qOA4qCA4qCA4qCA4qCA4qCAXG4gICAgICAgIOKggOKggOKggOKigOKjvuKjv+Kjv+Kjv+Kjv+Kjv+Kjv+Kjv+KjtuKjpuKjrOKhieKgkuKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKgmuKiieKjpeKjtOKjvuKjv+Kjv+Kjv+Kjv+Kjv+Kjv+Kjv+Kjp+KggOKggOKggOKggFxuICAgICAgICDioIDioIDioIDiob7ioL/ioJvioJvioJvioJvioL/ior/io7/io7/io7/io7/io7/io7fio4TioIDioIDioIDioIDioIDioIDioIDioIDioIDiooDio6Dio77io7/io7/io7/io7/io7/ioL/ioL/ioJvioJvioJvioJvioL/ioqfioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCZ4qC74qO/4qO/4qO/4qO/4qO/4qGE4qCA4qCA4qCA4qCA4qCA4qCA4qOg4qO/4qO/4qO/4qO/4qG/4qCf4qCJ4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCAXG4gICAgICAgIOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKgmeKiv+Kjv+KhhOKggOKggOKggOKggOKggOKggOKggOKggOKisOKjv+Khv+Kgi+KggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggFxuICAgICAgICDioIDioIDioIDioIDioIDioIDioIDio6Dio6TioLbioLbioLbioLDioKbio6Tio4DioIDioJnio7fioIDioIDioIDioIDioIDioIDioIDioqDiob/ioIviooDio4Dio6TiorTioIbioLLioLbioLbio6Tio4TioIDioIDioIDioIDioIDioIDioIBcbiAgICAgICAg4qCA4qCY4qOG4qCA4qCA4qKg4qO+4qOr4qO24qO+4qO/4qO/4qO/4qO/4qO34qOv4qO/4qOm4qCI4qCD4qGH4qCA4qCA4qCA4qCA4qK44qCY4qKB4qO24qO/4qO14qO+4qO/4qO/4qO/4qO/4qO34qOm4qOd4qO34qGE4qCA4qCA4qGw4qCC4qCAXG4gICAgICAgIOKggOKggOKjqOKjt+KjtuKjv+Kjp+Kjm+Kjm+Kgv+Kgv+Kjv+Kiv+Kjv+Kjv+Kjm+Kjv+Khv+KggOKggOKhh+KggOKggOKggOKggOKiuOKggOKgiOKiv+Kjn+Kjm+Kgv+Kiv+Khv+Kiv+Kiv+Kiv+Kjm+Kjq+KjvOKhv+KjtuKjvuKjheKhgOKggFxuICAgICAgICDiooDiobzioIvioIHioIDioIDioIjioInioJvioJvioLvioJ/ioLjioJvioIvioInioIHioIDioIDiorjioYfioIDioIDioITioIDiorjioYTioIDioIDioIjioInioJnioJvioIPioLvioJvioJvioJvioInioIHioIDioIDioIjioJnioqfioYBcbiAgICAgICAg4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qKA4qO/4qGH4qKg4qCA4qCA4qCA4qK44qO34qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCAXG4gICAgICAgIOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKigOKjvuKjv+Khh+KggOKggOKggOKggOKiuOKjv+Kjt+KhgOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggFxuXHRcdOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKjsOKgn+KggeKjv+Kgh+KggOKggOKggOKggOKiuOKhh+KgmeKiv+KjhuKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggFxuICAgICAgICDioIDioLDio4TioIDioIDioIDioIDioIDioIDioIDioIDiooDio6Dio77ioJbiob7ioIHioIDioIDio7/ioIDioIDioIDioIDioIDioJjio7/ioIDioIDioJnioYfiorjio7fio4TioYDioIDioIDioIDioIDioIDioIDioIDioIDio7DioITioIBcbiAgICAgICAg4qCA4qCA4qK74qO34qGm4qOk4qOk4qOk4qG04qC24qC/4qCb4qCJ4qCB4qCA4qKz4qCA4qKg4qGA4qK/4qOA4qCA4qCA4qCA4qCA4qOg4qGf4qKA4qOA4qKg4qCH4qCA4qCI4qCZ4qCb4qC34qC24qKm4qOk4qOk4qOk4qK04qO+4qGP4qCA4qCAXG4gICAgICAgIOKggOKggOKgiOKjv+Kjp+KgmeKjv+Kjt+KjhOKggOKggOKggOKggOKggOKggOKggOKggOKgmOKgm+KiiuKjmeKgm+KgkuKgkuKim+Kji+KhmuKgm+KgieKggOKggOKggOKggOKggOKggOKggOKggOKjoOKjv+Khv+KggeKjvuKhv+KggOKggOKggFxuICAgICAgICDioIDioIDioIDioJjio7/io4fioIjior/io7/io6bioIDioIDioIDioIDioIDioIDioIDioIDio7Dio7/io7/io7/iob/ior/io7/io7/io7/io4bioIDioIDioIDioIDioIDioIDioIDiooDio7zio7/ioZ/ioIHio7ziob/ioIHioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qCA4qCY4qO/4qOm4qCA4qC74qO/4qO34qOm4qOk4qOk4qO24qO24qO24qO/4qO/4qO/4qO/4qCP4qCA4qCA4qC74qO/4qO/4qO/4qO/4qO24qO24qO24qOm4qOk4qO04qO/4qO/4qCP4qKA4qO84qG/4qCB4qCA4qCA4qCA4qCAXG4gICAgICAgIOKggOKggOKggOKggOKggOKgmOKiv+Kjt+KjhOKgmeKgu+Kgv+Kgv+Kgv+Kgv+Kgv+Kiv+Kjv+Kjv+Kjv+KjgeKjgOKjgOKjgOKjgOKjmeKjv+Kjv+Kjv+Kgv+Kgv+Kgv+Kgv+Kgv+Kgv+Kgn+KggeKjoOKjv+Khv+KggeKggOKggOKggOKggOKggFxuICAgICAgICDioIDioIDioIDioIDioIDioIDioIjioLvio6/ioJnioqbio4DioIDioIDioIDioIDioIDioInioInioInioInioInioInioInioInioInioInioInioInioIDioIDioIDioIDioIDio6DioLTioovio77ioJ/ioIDioIDioIDioIDioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCZ4qKn4qGA4qCI4qCJ4qCS4qCA4qCA4qCA4qCA4qCA4qCA4qOA4qCA4qCA4qCA4qCA4qKA4qCA4qCA4qCA4qCA4qCA4qCQ4qCS4qCJ4qCB4qKA4qG+4qCD4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCAXG4gICAgICAgIOKggOKggOKggOKggOKggOKggOKggOKggOKggOKgiOKgs+KjhOKggOKggOKggOKggOKggOKggOKggOKggOKgu+Kjv+Kjv+Kjv+Kjv+Kgi+KggOKggOKggOKggOKggOKggOKggOKggOKjoOKgn+KggOKggOKggOKggOKggOKggOKggOKggOKggOKggFxuICAgICAgICDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioJjioqbioYDioIDioIDioIDioIDioIDioIDioIDio7jio7/io7/ioYfioIDioIDioIDioIDioIDioIDioIDiooDiobTioIHioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qO/4qO/4qO/4qO/4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCL4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCAXG4gICAgICAgIOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKgkOKjv+Kjv+Kjv+Kjv+KggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggFxuICAgICAgICDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDio7/io7/io7/iob/ioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qK74qO/4qO/4qGH4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCAXG4gICAgICAgIOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKguOKjv+Kjv+Kgg+KggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggFxuICAgICovXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6IFwicC10YWJsZS1jZWxsLW5neFwiLFxuXHR0ZW1wbGF0ZVVybDogXCIuL3RhYmxlLWNlbGwuY29tcG9uZW50Lmh0bWxcIixcbn0pXG5leHBvcnQgY2xhc3MgVGFibGVDZWxsIHtcblx0LyoqXG5cdCAqIFRoZSB2YXJpYW50IG9mIHRoZSBjb2x1bW5cblx0ICovXG5cdEBJbnB1dCgpIHZhcmlhbnQ6IFwiZGVmYXVsdFwiIHwgXCJsb2FkaW5nXCIgfCBcImhlYWRlclwiIHwgXCJoZWFkZXItc2Vjb25kYXJ5XCIgPVxuXHRcdFwiZGVmYXVsdFwiO1xuXG5cdC8qKlxuXHQgKiBUaGUgaW5kZXggb2YgdGhlIGNvbHVtblxuXHQgKi9cblx0QElucHV0KCkgaW5kZXg6IG51bWJlciA9IDA7XG5cblx0LyoqXG5cdCAqIFRoZSBpbmRleCBvZiB0aGUgcm93XG5cdCAqL1xuXHRASW5wdXQoKSByb3dJbmRleDogbnVtYmVyID0gMDtcblxuXHQvKipcblx0ICogVGhlIGRlZmluaXRpb24gb2YgdGhlIHRhYmxlIGNvbHVtblxuXHQgKi9cblx0QElucHV0KCkgZGVmaW5pdGlvbj86IGFueTsgLy8gVGFibGVEZWZpbml0aW9uXG5cblx0LyoqXG5cdCAqIFRoZSBpdGVtIGluIHF1ZXN0aW9uXG5cdCAqL1xuXHRASW5wdXQoKSBpdGVtOiBhbnk7XG5cblx0LyoqXG5cdCAqIFRoZSB2YWx1ZSBvZiB0aGUgY29sdW1uXG5cdCAqL1xuXHRASW5wdXQoKSB2YWx1ZTogYW55O1xuXG5cdC8qKlxuXHQgKiBUaGUgY2hlY2tib3ggdGVtcGxhdGVSZWZcblx0ICovXG5cdEBJbnB1dCgpIGNoZWNrYm94OiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkO1xuXG5cdC8qKlxuXHQgKiBXZXRoZXIgdGhlIGNlbGwgbmVlZHMgY2hlY2tib3ggb2Zmc2V0IGluc3RlYWQgb2YgYSBjaGVja2JveFxuXHQgKi9cblx0QElucHV0KCkgY2hlY2tib3hPZmZzZXQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuXHQvKipcblx0ICogVGhlIHRlbXBsYXRlIHJlZiBmb3IgdGhlIGNvbnRlbnRcblx0ICovXG5cdEBJbnB1dCgpIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkO1xuXG5cdC8qKlxuXHQgKiBXZXRoZXIgdGhlIHRhYmxlIGlzIHNjcm9sbGFibGVcblx0ICovXG5cdEBJbnB1dCgpIHNjcm9sbGFibGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuXHRwdWJsaWMgY24gPSBjbjtcblxuXHRASG9zdEJpbmRpbmcoXCJjbGFzc1wiKVxuXHRnZXQgY2xhc3MoKSB7XG5cdFx0cmV0dXJuIGNuKFxuXHRcdFx0Z2V0VGFibGVDZWxsQ29sdW1uQ2xhc3Nlcyhcblx0XHRcdFx0dGhpcy5kZWZpbml0aW9uLFxuXHRcdFx0XHR0aGlzLnZhcmlhbnQsXG5cdFx0XHRcdHRoaXMuY2hlY2tib3hPZmZzZXQsXG5cdFx0XHQpLFxuXHRcdFx0e1xuXHRcdFx0XHRcInN0aWNreSBsZWZ0LTQgei1bMl1cIjogISF0aGlzLmRlZmluaXRpb24/LnN0aWNreSxcblx0XHRcdFx0XCJiZy1ncmFkaWVudC10by1yIGZyb20td2hpdGUgdG8tdHJhbnNwYXJlbnQgZGFyazpmcm9tLWh1cnJpY2FuZS03MDAgZnJvbS04MCVcIjpcblx0XHRcdFx0XHR0aGlzLmRlZmluaXRpb24/LnN0aWNreSAmJiB0aGlzLmRlZmluaXRpb24/LnN0aWNreSAhPT0gXCJzZWNvbmRhcnlcIixcblx0XHRcdFx0XCJiZy1ncmFkaWVudC10by1yIGZyb20tb2ZmLXdoaXRlLTMwMCB0by10cmFuc3BhcmVudCBkYXJrOmZyb20taHVycmljYW5lLTQwMCBmcm9tLTgwJVwiOlxuXHRcdFx0XHRcdHRoaXMuZGVmaW5pdGlvbj8uc3RpY2t5ICYmIHRoaXMuZGVmaW5pdGlvbj8uc3RpY2t5ID09PSBcInNlY29uZGFyeVwiLFxuXHRcdFx0XHRcImZsZXgtc2hyaW5rXCI6ICF0aGlzLnNjcm9sbGFibGUsXG5cdFx0XHRcdFwiZmxleC1zaHJpbmstMFwiOiB0aGlzLnNjcm9sbGFibGUsXG5cdFx0XHR9LFxuXHRcdCk7XG5cdH1cblxuXHRnZXQgZGF0YSgpOiBUYWJsZURlZmluaXRpb25EYXRhIHwgeyB2YWx1ZTogc3RyaW5nIH0ge1xuXHRcdGlmICh0aGlzLnZhcmlhbnQgPT09IFwiaGVhZGVyXCIgfHwgdGhpcy52YXJpYW50ID09PSBcImhlYWRlci1zZWNvbmRhcnlcIikge1xuXHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0dmFsdWU6IHRoaXMudmFsdWUsXG5cdFx0XHR9O1xuXHRcdH1cblxuXHRcdHJldHVybiB7XG5cdFx0XHR2YWx1ZTpcblx0XHRcdFx0KHRoaXMudmFsdWUgPz8gdGhpcy5kZWZpbml0aW9uPy5wYXRoKVxuXHRcdFx0XHRcdD8gb2JqZWN0R2V0QnlQYXRoKHRoaXMuaXRlbSwgdGhpcy5kZWZpbml0aW9uLnBhdGgpXG5cdFx0XHRcdFx0OiBudWxsLFxuXHRcdFx0aXRlbTogdGhpcy5pdGVtLFxuXHRcdFx0aW5kZXg6IHRoaXMuaW5kZXgsXG5cdFx0XHRyb3dJbmRleDogdGhpcy5yb3dJbmRleCxcblx0XHR9O1xuXHR9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiY2hlY2tib3hcIj5cblx0PG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNoZWNrYm94XCI+PC9uZy1jb250YWluZXI+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwidmFyaWFudFwiPlxuXHQ8cC1sb2FkZXJcblx0XHQqbmdTd2l0Y2hDYXNlPVwiJ2xvYWRpbmcnXCJcblx0XHR2YXJpYW50PVwiZ2hvc3RcIlxuXHRcdGNsYXNzPVwiaC02IHctZnVsbCBmbGV4LTEgcm91bmRlZFwiXG5cdD48L3AtbG9hZGVyPlxuXG5cdDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidhY3Rpb25zJ1wiPlxuXHRcdDxuZy1jb250YWluZXIgKm5nSWY9XCJ0ZW1wbGF0ZVwiPlxuXHRcdFx0PG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRlbXBsYXRlOyBjb250ZXh0OiBkYXRhXCI+PC9uZy1jb250YWluZXI+XG5cdFx0PC9uZy1jb250YWluZXI+XG5cdDwvbmctY29udGFpbmVyPlxuXG5cdDxkaXZcblx0XHQqbmdJZj1cInZhcmlhbnQgPT09ICdoZWFkZXInIHx8IHZhcmlhbnQgPT09ICdoZWFkZXItc2Vjb25kYXJ5J1wiXG5cdFx0W2NsYXNzXT1cIlxuXHRcdFx0Y24oJ292ZXJmbG93LWhpZGRlbiB0ZXh0LWVsbGlwc2lzJywge1xuXHRcdFx0XHQndGV4dC1zdGFydCc6XG5cdFx0XHRcdFx0ZGVmaW5pdGlvbj8uYWxpZ24gPT09IHVuZGVmaW5lZCB8fCBkZWZpbml0aW9uLmFsaWduID09PSAnc3RhcnQnLFxuXHRcdFx0XHQndGV4dC1jZW50ZXInOiBkZWZpbml0aW9uLmFsaWduID09PSAnY2VudGVyJyxcblx0XHRcdFx0J3RleHQtZW5kJzogZGVmaW5pdGlvbi5hbGlnbiA9PT0gJ2VuZCdcblx0XHRcdH0pXG5cdFx0XCJcblx0PlxuXHRcdDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ2YWx1ZVRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG5cdDwvZGl2PlxuXG5cdDxkaXZcblx0XHQqbmdTd2l0Y2hDYXNlPVwiJ2RlZmF1bHQnXCJcblx0XHRbY2xhc3NdPVwiXG5cdFx0XHRjbignb3ZlcmZsb3ctaGlkZGVuIHRleHQtZWxsaXBzaXMnLCB7XG5cdFx0XHRcdGZsZXg6IGRlZmluaXRpb24/LmZsZXgsXG5cdFx0XHRcdCdmbGV4LTEnOiBkZWZpbml0aW9uPy5mbGV4LFxuXHRcdFx0XHQnanVzdGlmeS1zdGFydCc6XG5cdFx0XHRcdFx0ZGVmaW5pdGlvbj8uZmxleCAmJlxuXHRcdFx0XHRcdChkZWZpbml0aW9uPy5hbGlnbiA9PT0gdW5kZWZpbmVkIHx8IGRlZmluaXRpb24uYWxpZ24gPT09ICdzdGFydCcpLFxuXHRcdFx0XHQnanVzdGlmeS1lbmQnOiBkZWZpbml0aW9uPy5mbGV4ICYmIGRlZmluaXRpb24uYWxpZ24gPT09ICdlbmQnLFxuXHRcdFx0XHQnanVzdGlmeS1jZW50ZXInOiBkZWZpbml0aW9uPy5mbGV4ICYmIGRlZmluaXRpb24uYWxpZ24gPT09ICdlbmQnLFxuXHRcdFx0XHQndGV4dC1zdGFydCc6XG5cdFx0XHRcdFx0IWRlZmluaXRpb24/LmZsZXggJiZcblx0XHRcdFx0XHQoZGVmaW5pdGlvbj8uYWxpZ24gPT09IHVuZGVmaW5lZCB8fCBkZWZpbml0aW9uLmFsaWduID09PSAnc3RhcnQnKSxcblx0XHRcdFx0J3RleHQtY2VudGVyJzogIWRlZmluaXRpb24/LmZsZXggJiYgZGVmaW5pdGlvbi5hbGlnbiA9PT0gJ2NlbnRlcicsXG5cdFx0XHRcdCd0ZXh0LWVuZCc6ICFkZWZpbml0aW9uPy5mbGV4ICYmIGRlZmluaXRpb24uYWxpZ24gPT09ICdlbmQnXG5cdFx0XHR9KVxuXHRcdFwiXG5cdD5cblx0XHQ8bmctY29udGFpbmVyICpuZ0lmPVwidGVtcGxhdGU7IGVsc2UgdmFsdWVUZW1wbGF0ZVwiPlxuXHRcdFx0PG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRlbXBsYXRlOyBjb250ZXh0OiBkYXRhXCI+PC9uZy1jb250YWluZXI+XG5cdFx0PC9uZy1jb250YWluZXI+XG5cdDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG5cbjxuZy10ZW1wbGF0ZSAjdmFsdWVUZW1wbGF0ZT5cblx0PG5nLWNvbnRhaW5lciAqbmdJZj1cImRhdGEudmFsdWVcIj5cblx0XHR7eyBkYXRhLnZhbHVlIH19XG5cdDwvbmctY29udGFpbmVyPlxuXG5cdDxuZy1jb250ZW50ICpuZ0lmPVwiIWRhdGEudmFsdWVcIj48L25nLWNvbnRlbnQ+XG48L25nLXRlbXBsYXRlPlxuIl19
159
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY2VsbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wYXBlcmxlc3Mvc3JjL2xpYi9tb2R1bGVzL3RhYmxlL2NvbXBvbmVudHMvdGFibGUtY2VsbC90YWJsZS1jZWxsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3BhcGVybGVzcy9zcmMvbGliL21vZHVsZXMvdGFibGUvY29tcG9uZW50cy90YWJsZS1jZWxsL3RhYmxlLWNlbGwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNEJBQTRCO0FBQzVCLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQ04sRUFBRSxFQUNGLHlCQUF5QixFQUN6QixlQUFlLEdBRWYsTUFBTSxpQkFBaUIsQ0FBQzs7OztBQUV6Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQTBETTtBQUtOLE1BQU0sT0FBTyxTQUFTO0lBSnRCO1FBS0M7O1dBRUc7UUFDTSxZQUFPLEdBQ2YsU0FBUyxDQUFDO1FBRVg7O1dBRUc7UUFDTSxVQUFLLEdBQVcsQ0FBQyxDQUFDO1FBRTNCOztXQUVHO1FBQ00sYUFBUSxHQUFXLENBQUMsQ0FBQztRQXNCOUI7O1dBRUc7UUFDTSxtQkFBYyxHQUFZLEtBQUssQ0FBQztRQU96Qzs7V0FFRztRQUNNLGVBQVUsR0FBWSxLQUFLLENBQUM7UUFFOUIsT0FBRSxHQUFHLEVBQUUsQ0FBQztLQTJEZjtJQXpEQSxJQUNJLEtBQUs7UUFDUixPQUFPLEVBQUUsQ0FDUix5QkFBeUIsQ0FDeEIsSUFBSSxDQUFDLFVBQVUsRUFDZixJQUFJLENBQUMsT0FBTyxFQUNaLElBQUksQ0FBQyxjQUFjLENBQ25CLEVBQ0Q7WUFDQyxxQkFBcUIsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxNQUFNO1lBQ2hELDZFQUE2RSxFQUM1RSxJQUFJLENBQUMsVUFBVSxFQUFFLE1BQU0sSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLE1BQU0sS0FBSyxXQUFXO1lBQ25FLHFGQUFxRixFQUNwRixJQUFJLENBQUMsVUFBVSxFQUFFLE1BQU0sSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLE1BQU0sS0FBSyxXQUFXO1lBQ25FLGFBQWEsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVO1lBQy9CLGVBQWUsRUFBRSxJQUFJLENBQUMsVUFBVTtTQUNoQyxDQUNELENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ1AsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLFFBQVEsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLGtCQUFrQixFQUFFO1lBQ3JFLE9BQU87Z0JBQ04sS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO2FBQ2pCLENBQUM7U0FDRjtRQUVELE9BQU87WUFDTixLQUFLLEVBQ0osSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUk7Z0JBQ2xDLENBQUMsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQztnQkFDbEQsQ0FBQyxDQUFDLElBQUk7WUFDUixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFDZixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1NBQ3ZCLENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2YsTUFBTSxLQUFLLEdBQ1YsSUFBSSxDQUFDLE9BQU8sS0FBSyxRQUFRO1lBQ3hCLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLFdBQVcsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLEtBQUs7WUFDeEQsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDO1FBRTNCLE9BQU8sRUFBRSxDQUFDLCtCQUErQixFQUFFO1lBQzFDLElBQUksRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUk7WUFDM0IsUUFBUSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSTtZQUMvQixlQUFlLEVBQ2QsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssU0FBUyxJQUFJLEtBQUssS0FBSyxPQUFPLENBQUM7WUFDcEUsYUFBYSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxJQUFJLEtBQUssS0FBSyxLQUFLO1lBQ3ZELGdCQUFnQixFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxJQUFJLEtBQUssS0FBSyxLQUFLO1lBQzFELFlBQVksRUFDWCxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLFNBQVMsSUFBSSxLQUFLLEtBQUssT0FBTyxDQUFDO1lBQ3JFLGFBQWEsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxJQUFJLEtBQUssS0FBSyxRQUFRO1lBQzNELFVBQVUsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxJQUFJLEtBQUssS0FBSyxLQUFLO1NBQ3JELENBQUMsQ0FBQztJQUNKLENBQUM7O3NHQTlHVyxTQUFTOzBGQUFULFNBQVMsK1VDeEV0QiwrMkNBZ0RBOzJGRHdCYSxTQUFTO2tCQUpyQixTQUFTOytCQUNDLGtCQUFrQjs4QkFPbkIsT0FBTztzQkFBZixLQUFLO2dCQU1HLEtBQUs7c0JBQWIsS0FBSztnQkFLRyxRQUFRO3NCQUFoQixLQUFLO2dCQUtHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBS0csSUFBSTtzQkFBWixLQUFLO2dCQUtHLEtBQUs7c0JBQWIsS0FBSztnQkFLRyxRQUFRO3NCQUFoQixLQUFLO2dCQUtHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBS0csUUFBUTtzQkFBaEIsS0FBSztnQkFLRyxVQUFVO3NCQUFsQixLQUFLO2dCQUtGLEtBQUs7c0JBRFIsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiAqL1xuaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0QmluZGluZywgSW5wdXQsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuXHRjbixcblx0Z2V0VGFibGVDZWxsQ29sdW1uQ2xhc3Nlcyxcblx0b2JqZWN0R2V0QnlQYXRoLFxuXHRUYWJsZURlZmluaXRpb25EYXRhLFxufSBmcm9tICdAcGFwZXJsZXNzL2NvcmUnO1xuXG4vKlxuICAgICBXaXRoIHRoaXMsIHdlIHNoYWxsIGhhY2sgdGhlIHN5c3RlbSBpbiB3YXlzIG5vIG9uZSB3b3VsZCBldmVyIGhhdmUgdGhvdWdodC5cblxuICAgICBiZy13aGl0ZSBzdGlja3kgZGFyazpiZy1odXJyaWNhbmUtNzAwIHotWzJdIGZsZXgtc2hyaW5rLTAgZmxleC1zaHJpbmsgZnJvbS04MCUgcGwtOFxuXHQgdGV4dC1zdG9ybS00MDAgdGV4dC1zdG9ybS0zMDAgdGV4dC1zdG9ybS01MDAgZGFyazp0ZXh0LXdoaXRlIGRhcms6dGV4dC1odXJyaWNhbmUtMjAwXG5cdCBqdXN0aWZ5LXN0YXJ0IGp1c3RpZnktY2VudGVyIGp1c3RpZnktZW5kIGl0ZW1zLWNlbnRlciBnYXAtNFxuICAgICBmb250LXNlbWlib2xkIHRleHQtc3Rvcm0tNTAwIHRleHQtc3Rvcm0tNTAwIHRleHQtc3Rvcm0tNDAwIHRleHQtc3Rvcm0tMzAwXG4gICAgIHctMS8xMiB3LTIvMTIgdy0zLzEyIHctNC8xMiB3LTUvMTIgdy02LzEyIHctNy8xMiB3LTgvMTIgdy05LzEyIHctMTAvMTIgdy0xMS8xMiB3LTEyLzEyXG4gICAgIHRhYmxldDp3LTEvMTIgdGFibGV0OnctMi8xMiB0YWJsZXQ6dy0zLzEyIHRhYmxldDp3LTQvMTIgdGFibGV0OnctNS8xMiB0YWJsZXQ6dy02LzEyIHRhYmxldDp3LTcvMTIgdGFibGV0OnctOC8xMiB0YWJsZXQ6dy05LzEyIHRhYmxldDp3LTEwLzEyIHRhYmxldDp3LTExLzEyIHRhYmxldDp3LTEyLzEyXG4gICAgIGRlc2t0b3AteHM6dy0xLzEyIGRlc2t0b3AteHM6dy0yLzEyIGRlc2t0b3AteHM6dy0zLzEyIGRlc2t0b3AteHM6dy00LzEyIGRlc2t0b3AteHM6dy01LzEyIGRlc2t0b3AteHM6dy02LzEyIGRlc2t0b3AteHM6dy03LzEyIGRlc2t0b3AteHM6dy04LzEyIGRlc2t0b3AteHM6dy05LzEyIGRlc2t0b3AteHM6dy0xMC8xMiBkZXNrdG9wLXhzOnctMTEvMTIgZGVza3RvcC14czp3LTEyLzEyXG4gICAgIGRlc2t0b3AteHM6dy0xLzEyIGRlc2t0b3AteHM6dy0yLzEyIGRlc2t0b3AteHM6dy0zLzEyIGRlc2t0b3AteHM6dy00LzEyIGRlc2t0b3AteHM6dy01LzEyIGRlc2t0b3AteHM6dy02LzEyIGRlc2t0b3AteHM6dy03LzEyIGRlc2t0b3AteHM6dy04LzEyIGRlc2t0b3AteHM6dy05LzEyIGRlc2t0b3AteHM6dy0xMC8xMiBkZXNrdG9wLXhzOnctMTEvMTIgZGVza3RvcC14czp3LTEyLzEyXG4gICAgIGRlc2t0b3Atc206dy0xLzEyIGRlc2t0b3Atc206dy0yLzEyIGRlc2t0b3Atc206dy0zLzEyIGRlc2t0b3Atc206dy00LzEyIGRlc2t0b3Atc206dy01LzEyIGRlc2t0b3Atc206dy02LzEyIGRlc2t0b3Atc206dy03LzEyIGRlc2t0b3Atc206dy04LzEyIGRlc2t0b3Atc206dy05LzEyIGRlc2t0b3Atc206dy0xMC8xMiBkZXNrdG9wLXNtOnctMTEvMTIgZGVza3RvcC1zbTp3LTEyLzEyXG4gICAgIGRlc2t0b3A6dy0xLzEyIGRlc2t0b3A6dy0yLzEyIGRlc2t0b3A6dy0zLzEyIGRlc2t0b3A6dy00LzEyIGRlc2t0b3A6dy01LzEyIGRlc2t0b3A6dy02LzEyIGRlc2t0b3A6dy03LzEyIGRlc2t0b3A6dy04LzEyIGRlc2t0b3A6dy05LzEyIGRlc2t0b3A6dy0xMC8xMiBkZXNrdG9wOnctMTEvMTIgZGVza3RvcDp3LTEyLzEyXG4gICAgIGRlc2t0b3AtbGc6dy0xLzEyIGRlc2t0b3AtbGc6dy0yLzEyIGRlc2t0b3AtbGc6dy0zLzEyIGRlc2t0b3AtbGc6dy00LzEyIGRlc2t0b3AtbGc6dy01LzEyIGRlc2t0b3AtbGc6dy02LzEyIGRlc2t0b3AtbGc6dy03LzEyIGRlc2t0b3AtbGc6dy04LzEyIGRlc2t0b3AtbGc6dy05LzEyIGRlc2t0b3AtbGc6dy0xMC8xMiBkZXNrdG9wLWxnOnctMTEvMTIgZGVza3RvcC1sZzp3LTEyLzEyXG4gICAgIGRlc2t0b3AteGw6dy0xLzEyIGRlc2t0b3AteGw6dy0yLzEyIGRlc2t0b3AteGw6dy0zLzEyIGRlc2t0b3AteGw6dy00LzEyIGRlc2t0b3AteGw6dy01LzEyIGRlc2t0b3AteGw6dy02LzEyIGRlc2t0b3AteGw6dy03LzEyIGRlc2t0b3AteGw6dy04LzEyIGRlc2t0b3AteGw6dy05LzEyIGRlc2t0b3AteGw6dy0xMC8xMiBkZXNrdG9wLXhsOnctMTEvMTIgZGVza3RvcC14bDp3LTEyLzEyXG4gICAgIGhpZGRlbiBmbGV4IGdyb3VwLWhvdmVyOmhpZGRlbiBncm91cC1ob3ZlcjpmbGV4XG4gICAgIHRhYmxldDpoaWRkZW4gdGFibGV0OmZsZXggdGFibGV0Omdyb3VwLWhvdmVyOmhpZGRlbiB0YWJsZXQ6Z3JvdXAtaG92ZXI6ZmxleFxuICAgICBkZXNrdG9wLXhzOmhpZGRlbiBkZXNrdG9wLXhzOmZsZXggZGVza3RvcC14czpncm91cC1ob3ZlcjpoaWRkZW4gZGVza3RvcC14czpncm91cC1ob3ZlcjpmbGV4XG4gICAgIGRlc2t0b3Atc206aGlkZGVuIGRlc2t0b3Atc206ZmxleCAgZGVza3RvcC1zbTpncm91cC1ob3ZlcjpoaWRkZW4gZGVza3RvcC1zbTpncm91cC1ob3ZlcjpmbGV4XG4gICAgIGRlc2t0b3A6aGlkZGVuIGRlc2t0b3A6ZmxleCBkZXNrdG9wOmdyb3VwLWhvdmVyOmhpZGRlbiBkZXNrdG9wOmdyb3VwLWhvdmVyOmZsZXhcbiAgICAgZGVza3RvcC1sZzpoaWRkZW4gZGVza3RvcC1sZzpmbGV4IGRlc2t0b3AtbGc6Z3JvdXAtaG92ZXI6aGlkZGVuIGRlc2t0b3AtbGc6Z3JvdXAtaG92ZXI6ZmxleFxuICAgICBkZXNrdG9wLXhsOmhpZGRlbiBkZXNrdG9wLXhsOmZsZXggZGVza3RvcC14bDpncm91cC1ob3ZlcjpoaWRkZW4gZGVza3RvcC14bDpncm91cC1ob3ZlcjpmbGV4XG4gICAgIHByLTQgcHItMCBsYXN0LW9mLXR5cGU6cHItMFxuICAgICB0YWJsZXQ6cHItNCB0YWJsZXQ6cHItMFxuICAgICBkZXNrdG9wLXhzOnByLTQgZGVza3RvcC14czpwci0wXG4gICAgIGRlc2t0b3Atc206cHItNCBkZXNrdG9wLXNtOnByLTBcbiAgICAgZGVza3RvcDpwci00IGRlc2t0b3A6cHItMFxuICAgICBkZXNrdG9wLWxnOnByLTQgZGVza3RvcC1sZzpwci0wXG4gICAgIGRlc2t0b3AteGw6cHItNCBkZXNrdG9wLXhsOnByLTBcblxuXG4gICAgICAgIOKggOKggOKggOKggOKggOKjoOKjtOKjtuKjv+Kjv+Kgv+Kjt+KjtuKjpOKjhOKhgOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKigOKjoOKjtOKjtuKjt+Kgv+Kjv+Kjv+KjtuKjpuKjgOKggOKggOKggOKggOKggFxuICAgICAgICDioIDioIDioIDiooDio77io7/io7/io7/io7/io7/io7/io7/io7bio6bio6zioYnioJLioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioJrioonio6Xio7Tio77io7/io7/io7/io7/io7/io7/io7/io6fioIDioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qG+4qC/4qCb4qCb4qCb4qCb4qC/4qK/4qO/4qO/4qO/4qO/4qO/4qO34qOE4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qKA4qOg4qO+4qO/4qO/4qO/4qO/4qO/4qC/4qC/4qCb4qCb4qCb4qCb4qC/4qKn4qCA4qCA4qCAXG4gICAgICAgIOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKgmeKgu+Kjv+Kjv+Kjv+Kjv+Kjv+KhhOKggOKggOKggOKggOKggOKggOKjoOKjv+Kjv+Kjv+Kjv+Khv+Kgn+KgieKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggFxuICAgICAgICDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioJnior/io7/ioYTioIDioIDioIDioIDioIDioIDioIDioIDiorDio7/iob/ioIvioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qOg4qOk4qC24qC24qC24qCw4qCm4qOk4qOA4qCA4qCZ4qO34qCA4qCA4qCA4qCA4qCA4qCA4qCA4qKg4qG/4qCL4qKA4qOA4qOk4qK04qCG4qCy4qC24qC24qOk4qOE4qCA4qCA4qCA4qCA4qCA4qCA4qCAXG4gICAgICAgIOKggOKgmOKjhuKggOKggOKioOKjvuKjq+KjtuKjvuKjv+Kjv+Kjv+Kjv+Kjt+Kjr+Kjv+KjpuKgiOKgg+Khh+KggOKggOKggOKggOKiuOKgmOKigeKjtuKjv+KjteKjvuKjv+Kjv+Kjv+Kjv+Kjt+KjpuKjneKjt+KhhOKggOKggOKhsOKgguKggFxuICAgICAgICDioIDioIDio6jio7fio7bio7/io6fio5vio5vioL/ioL/io7/ior/io7/io7/io5vio7/iob/ioIDioIDioYfioIDioIDioIDioIDiorjioIDioIjior/io5/io5vioL/ior/iob/ior/ior/ior/io5vio6vio7ziob/io7bio77io4XioYDioIBcbiAgICAgICAg4qKA4qG84qCL4qCB4qCA4qCA4qCI4qCJ4qCb4qCb4qC74qCf4qC44qCb4qCL4qCJ4qCB4qCA4qCA4qK44qGH4qCA4qCA4qCE4qCA4qK44qGE4qCA4qCA4qCI4qCJ4qCZ4qCb4qCD4qC74qCb4qCb4qCb4qCJ4qCB4qCA4qCA4qCI4qCZ4qKn4qGAXG4gICAgICAgIOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKigOKjv+Khh+KioOKggOKggOKggOKiuOKjt+KggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggFxuICAgICAgICDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDiooDio77io7/ioYfioIDioIDioIDioIDiorjio7/io7fioYDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIBcblx0XHTioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDio7DioJ/ioIHio7/ioIfioIDioIDioIDioIDiorjioYfioJnior/io4bioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIBcbiAgICAgICAg4qCA4qCw4qOE4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qKA4qOg4qO+4qCW4qG+4qCB4qCA4qCA4qO/4qCA4qCA4qCA4qCA4qCA4qCY4qO/4qCA4qCA4qCZ4qGH4qK44qO34qOE4qGA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qOw4qCE4qCAXG4gICAgICAgIOKggOKggOKiu+Kjt+KhpuKjpOKjpOKjpOKhtOKgtuKgv+Kgm+KgieKggeKggOKis+KggOKioOKhgOKiv+KjgOKggOKggOKggOKggOKjoOKhn+KigOKjgOKioOKgh+KggOKgiOKgmeKgm+Kgt+KgtuKipuKjpOKjpOKjpOKitOKjvuKhj+KggOKggFxuICAgICAgICDioIDioIDioIjio7/io6fioJnio7/io7fio4TioIDioIDioIDioIDioIDioIDioIDioIDioJjioJvioorio5nioJvioJLioJLiopvio4vioZrioJvioInioIDioIDioIDioIDioIDioIDioIDioIDio6Dio7/iob/ioIHio77iob/ioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qCY4qO/4qOH4qCI4qK/4qO/4qOm4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qOw4qO/4qO/4qO/4qG/4qK/4qO/4qO/4qO/4qOG4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qKA4qO84qO/4qGf4qCB4qO84qG/4qCB4qCA4qCA4qCAXG4gICAgICAgIOKggOKggOKggOKggOKgmOKjv+KjpuKggOKgu+Kjv+Kjt+KjpuKjpOKjpOKjtuKjtuKjtuKjv+Kjv+Kjv+Kjv+Kgj+KggOKggOKgu+Kjv+Kjv+Kjv+Kjv+KjtuKjtuKjtuKjpuKjpOKjtOKjv+Kjv+Kgj+KigOKjvOKhv+KggeKggOKggOKggOKggFxuICAgICAgICDioIDioIDioIDioIDioIDioJjior/io7fio4TioJnioLvioL/ioL/ioL/ioL/ioL/ior/io7/io7/io7/io4Hio4Dio4Dio4Dio4Dio5nio7/io7/io7/ioL/ioL/ioL/ioL/ioL/ioL/ioJ/ioIHio6Dio7/iob/ioIHioIDioIDioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qCA4qCA4qCA4qCI4qC74qOv4qCZ4qKm4qOA4qCA4qCA4qCA4qCA4qCA4qCJ4qCJ4qCJ4qCJ4qCJ4qCJ4qCJ4qCJ4qCJ4qCJ4qCJ4qCJ4qCA4qCA4qCA4qCA4qCA4qOg4qC04qKL4qO+4qCf4qCA4qCA4qCA4qCA4qCA4qCA4qCAXG4gICAgICAgIOKggOKggOKggOKggOKggOKggOKggOKggOKgmeKip+KhgOKgiOKgieKgkuKggOKggOKggOKggOKggOKggOKjgOKggOKggOKggOKggOKigOKggOKggOKggOKggOKggOKgkOKgkuKgieKggeKigOKhvuKgg+KggOKggOKggOKggOKggOKggOKggOKggFxuICAgICAgICDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIjioLPio4TioIDioIDioIDioIDioIDioIDioIDioIDioLvio7/io7/io7/io7/ioIvioIDioIDioIDioIDioIDioIDioIDioIDio6DioJ/ioIDioIDioIDioIDioIDioIDioIDioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCY4qKm4qGA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qO44qO/4qO/4qGH4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qKA4qG04qCB4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCAXG4gICAgICAgIOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKjv+Kjv+Kjv+Kjv+KggOKggOKggOKggOKggOKggOKggOKgi+KggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggFxuICAgICAgICDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioJDio7/io7/io7/io7/ioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qO/4qO/4qO/4qG/4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCAXG4gICAgICAgIOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKiu+Kjv+Kjv+Khh+KggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggFxuICAgICAgICDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioLjio7/io7/ioIPioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIBcbiAgICAqL1xuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAncC10YWJsZS1jZWxsLW5neCcsXG5cdHRlbXBsYXRlVXJsOiAnLi90YWJsZS1jZWxsLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgVGFibGVDZWxsIHtcblx0LyoqXG5cdCAqIFRoZSB2YXJpYW50IG9mIHRoZSBjb2x1bW5cblx0ICovXG5cdEBJbnB1dCgpIHZhcmlhbnQ6ICdkZWZhdWx0JyB8ICdsb2FkaW5nJyB8ICdoZWFkZXInIHwgJ2hlYWRlci1zZWNvbmRhcnknID1cblx0XHQnZGVmYXVsdCc7XG5cblx0LyoqXG5cdCAqIFRoZSBpbmRleCBvZiB0aGUgY29sdW1uXG5cdCAqL1xuXHRASW5wdXQoKSBpbmRleDogbnVtYmVyID0gMDtcblxuXHQvKipcblx0ICogVGhlIGluZGV4IG9mIHRoZSByb3dcblx0ICovXG5cdEBJbnB1dCgpIHJvd0luZGV4OiBudW1iZXIgPSAwO1xuXG5cdC8qKlxuXHQgKiBUaGUgZGVmaW5pdGlvbiBvZiB0aGUgdGFibGUgY29sdW1uXG5cdCAqL1xuXHRASW5wdXQoKSBkZWZpbml0aW9uPzogYW55OyAvLyBUYWJsZURlZmluaXRpb25cblxuXHQvKipcblx0ICogVGhlIGl0ZW0gaW4gcXVlc3Rpb25cblx0ICovXG5cdEBJbnB1dCgpIGl0ZW06IGFueTtcblxuXHQvKipcblx0ICogVGhlIHZhbHVlIG9mIHRoZSBjb2x1bW5cblx0ICovXG5cdEBJbnB1dCgpIHZhbHVlOiBhbnk7XG5cblx0LyoqXG5cdCAqIFRoZSBjaGVja2JveCB0ZW1wbGF0ZVJlZlxuXHQgKi9cblx0QElucHV0KCkgY2hlY2tib3g6IFRlbXBsYXRlUmVmPGFueT4gfCB1bmRlZmluZWQ7XG5cblx0LyoqXG5cdCAqIFdldGhlciB0aGUgY2VsbCBuZWVkcyBjaGVja2JveCBvZmZzZXQgaW5zdGVhZCBvZiBhIGNoZWNrYm94XG5cdCAqL1xuXHRASW5wdXQoKSBjaGVja2JveE9mZnNldDogYm9vbGVhbiA9IGZhbHNlO1xuXG5cdC8qKlxuXHQgKiBUaGUgdGVtcGxhdGUgcmVmIGZvciB0aGUgY29udGVudFxuXHQgKi9cblx0QElucHV0KCkgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4gfCB1bmRlZmluZWQ7XG5cblx0LyoqXG5cdCAqIFdldGhlciB0aGUgdGFibGUgaXMgc2Nyb2xsYWJsZVxuXHQgKi9cblx0QElucHV0KCkgc2Nyb2xsYWJsZTogYm9vbGVhbiA9IGZhbHNlO1xuXG5cdHB1YmxpYyBjbiA9IGNuO1xuXG5cdEBIb3N0QmluZGluZygnY2xhc3MnKVxuXHRnZXQgY2xhc3MoKSB7XG5cdFx0cmV0dXJuIGNuKFxuXHRcdFx0Z2V0VGFibGVDZWxsQ29sdW1uQ2xhc3Nlcyhcblx0XHRcdFx0dGhpcy5kZWZpbml0aW9uLFxuXHRcdFx0XHR0aGlzLnZhcmlhbnQsXG5cdFx0XHRcdHRoaXMuY2hlY2tib3hPZmZzZXRcblx0XHRcdCksXG5cdFx0XHR7XG5cdFx0XHRcdCdzdGlja3kgbGVmdC00IHotWzJdJzogISF0aGlzLmRlZmluaXRpb24/LnN0aWNreSxcblx0XHRcdFx0J2JnLWdyYWRpZW50LXRvLXIgZnJvbS13aGl0ZSB0by10cmFuc3BhcmVudCBkYXJrOmZyb20taHVycmljYW5lLTcwMCBmcm9tLTgwJSc6XG5cdFx0XHRcdFx0dGhpcy5kZWZpbml0aW9uPy5zdGlja3kgJiYgdGhpcy5kZWZpbml0aW9uPy5zdGlja3kgIT09ICdzZWNvbmRhcnknLFxuXHRcdFx0XHQnYmctZ3JhZGllbnQtdG8tciBmcm9tLW9mZi13aGl0ZS0zMDAgdG8tdHJhbnNwYXJlbnQgZGFyazpmcm9tLWh1cnJpY2FuZS00MDAgZnJvbS04MCUnOlxuXHRcdFx0XHRcdHRoaXMuZGVmaW5pdGlvbj8uc3RpY2t5ICYmIHRoaXMuZGVmaW5pdGlvbj8uc3RpY2t5ID09PSAnc2Vjb25kYXJ5Jyxcblx0XHRcdFx0J2ZsZXgtc2hyaW5rJzogIXRoaXMuc2Nyb2xsYWJsZSxcblx0XHRcdFx0J2ZsZXgtc2hyaW5rLTAnOiB0aGlzLnNjcm9sbGFibGUsXG5cdFx0XHR9XG5cdFx0KTtcblx0fVxuXG5cdGdldCBkYXRhKCk6IFRhYmxlRGVmaW5pdGlvbkRhdGEgfCB7IHZhbHVlOiBzdHJpbmcgfSB7XG5cdFx0aWYgKHRoaXMudmFyaWFudCA9PT0gJ2hlYWRlcicgfHwgdGhpcy52YXJpYW50ID09PSAnaGVhZGVyLXNlY29uZGFyeScpIHtcblx0XHRcdHJldHVybiB7XG5cdFx0XHRcdHZhbHVlOiB0aGlzLnZhbHVlLFxuXHRcdFx0fTtcblx0XHR9XG5cblx0XHRyZXR1cm4ge1xuXHRcdFx0dmFsdWU6XG5cdFx0XHRcdHRoaXMudmFsdWUgPz8gdGhpcy5kZWZpbml0aW9uPy5wYXRoXG5cdFx0XHRcdFx0PyBvYmplY3RHZXRCeVBhdGgodGhpcy5pdGVtLCB0aGlzLmRlZmluaXRpb24ucGF0aClcblx0XHRcdFx0XHQ6IG51bGwsXG5cdFx0XHRpdGVtOiB0aGlzLml0ZW0sXG5cdFx0XHRpbmRleDogdGhpcy5pbmRleCxcblx0XHRcdHJvd0luZGV4OiB0aGlzLnJvd0luZGV4LFxuXHRcdH07XG5cdH1cblxuXHRnZXQgY29udGVudENsYXNzKCkge1xuXHRcdGNvbnN0IGFsaWduID1cblx0XHRcdHRoaXMudmFyaWFudCA9PT0gJ2hlYWRlcidcblx0XHRcdFx0PyB0aGlzLmRlZmluaXRpb24/LmhlYWRlckFsaWduID8/IHRoaXMuZGVmaW5pdGlvbj8uYWxpZ25cblx0XHRcdFx0OiB0aGlzLmRlZmluaXRpb24/LmFsaWduO1xuXG5cdFx0cmV0dXJuIGNuKCdvdmVyZmxvdy1oaWRkZW4gdGV4dC1lbGxpcHNpcycsIHtcblx0XHRcdGZsZXg6IHRoaXMuZGVmaW5pdGlvbj8uZmxleCxcblx0XHRcdCdmbGV4LTEnOiB0aGlzLmRlZmluaXRpb24/LmZsZXgsXG5cdFx0XHQnanVzdGlmeS1zdGFydCc6XG5cdFx0XHRcdHRoaXMuZGVmaW5pdGlvbj8uZmxleCAmJiAoYWxpZ24gPT09IHVuZGVmaW5lZCB8fCBhbGlnbiA9PT0gJ3N0YXJ0JyksXG5cdFx0XHQnanVzdGlmeS1lbmQnOiB0aGlzLmRlZmluaXRpb24/LmZsZXggJiYgYWxpZ24gPT09ICdlbmQnLFxuXHRcdFx0J2p1c3RpZnktY2VudGVyJzogdGhpcy5kZWZpbml0aW9uPy5mbGV4ICYmIGFsaWduID09PSAnZW5kJyxcblx0XHRcdCd0ZXh0LXN0YXJ0Jzpcblx0XHRcdFx0IXRoaXMuZGVmaW5pdGlvbj8uZmxleCAmJiAoYWxpZ24gPT09IHVuZGVmaW5lZCB8fCBhbGlnbiA9PT0gJ3N0YXJ0JyksXG5cdFx0XHQndGV4dC1jZW50ZXInOiAhdGhpcy5kZWZpbml0aW9uPy5mbGV4ICYmIGFsaWduID09PSAnY2VudGVyJyxcblx0XHRcdCd0ZXh0LWVuZCc6ICF0aGlzLmRlZmluaXRpb24/LmZsZXggJiYgYWxpZ24gPT09ICdlbmQnLFxuXHRcdH0pO1xuXHR9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiY2hlY2tib3hcIj5cblx0PG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNoZWNrYm94XCI+PC9uZy1jb250YWluZXI+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwidmFyaWFudFwiPlxuXHQ8cC1sb2FkZXJcblx0XHQqbmdTd2l0Y2hDYXNlPVwiJ2xvYWRpbmcnXCJcblx0XHR2YXJpYW50PVwiZ2hvc3RcIlxuXHRcdGNsYXNzPVwiaC02IHctZnVsbCBmbGV4LTEgcm91bmRlZFwiXG5cdD48L3AtbG9hZGVyPlxuXG5cdDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidhY3Rpb25zJ1wiPlxuXHRcdDxuZy1jb250YWluZXIgKm5nSWY9XCJ0ZW1wbGF0ZVwiPlxuXHRcdFx0PG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRlbXBsYXRlOyBjb250ZXh0OiBkYXRhXCI+PC9uZy1jb250YWluZXI+XG5cdFx0PC9uZy1jb250YWluZXI+XG5cdDwvbmctY29udGFpbmVyPlxuXG5cdDxkaXZcblx0XHQqbmdJZj1cInZhcmlhbnQgPT09ICdoZWFkZXInIHx8IHZhcmlhbnQgPT09ICdoZWFkZXItc2Vjb25kYXJ5J1wiXG5cdFx0W2NsYXNzXT1cIlxuXHRcdFx0Y24oJ292ZXJmbG93LWhpZGRlbiB0ZXh0LWVsbGlwc2lzJywge1xuXHRcdFx0XHQndGV4dC1zdGFydCc6XG5cdFx0XHRcdFx0ZGVmaW5pdGlvbj8uYWxpZ24gPT09IHVuZGVmaW5lZCB8fCBkZWZpbml0aW9uLmFsaWduID09PSAnc3RhcnQnLFxuXHRcdFx0XHQndGV4dC1jZW50ZXInOiBkZWZpbml0aW9uLmFsaWduID09PSAnY2VudGVyJyxcblx0XHRcdFx0J3RleHQtZW5kJzogZGVmaW5pdGlvbi5hbGlnbiA9PT0gJ2VuZCdcblx0XHRcdH0pXG5cdFx0XCJcblx0PlxuXHRcdDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ2YWx1ZVRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG5cdDwvZGl2PlxuXG5cdDxkaXZcblx0XHQqbmdTd2l0Y2hDYXNlPVwiJ2RlZmF1bHQnXCJcblx0XHRbY2xhc3NdPVwiY29udGVudENsYXNzXCJcblx0PlxuXHRcdDxuZy1jb250YWluZXIgKm5nSWY9XCJ0ZW1wbGF0ZTsgZWxzZSB2YWx1ZVRlbXBsYXRlXCI+XG5cdFx0XHQ8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidGVtcGxhdGU7IGNvbnRleHQ6IGRhdGFcIj48L25nLWNvbnRhaW5lcj5cblx0XHQ8L25nLWNvbnRhaW5lcj5cblx0PC9kaXY+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLXRlbXBsYXRlICN2YWx1ZVRlbXBsYXRlPlxuXHQ8bmctY29udGFpbmVyICpuZ0lmPVwiZGF0YS52YWx1ZVwiPlxuXHRcdHt7IGRhdGEudmFsdWUgfX1cblx0PC9uZy1jb250YWluZXI+XG5cblx0PG5nLWNvbnRlbnQgKm5nSWY9XCIhZGF0YS52YWx1ZVwiPjwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -3024,7 +3024,7 @@ class TableCell {
3024
3024
  /**
3025
3025
  * The variant of the column
3026
3026
  */
3027
- this.variant = "default";
3027
+ this.variant = 'default';
3028
3028
  /**
3029
3029
  * The index of the column
3030
3030
  */
@@ -3046,16 +3046,16 @@ class TableCell {
3046
3046
  get class() {
3047
3047
  var _a, _b, _c, _d, _e;
3048
3048
  return cn(getTableCellColumnClasses(this.definition, this.variant, this.checkboxOffset), {
3049
- "sticky left-4 z-[2]": !!((_a = this.definition) === null || _a === void 0 ? void 0 : _a.sticky),
3050
- "bg-gradient-to-r from-white to-transparent dark:from-hurricane-700 from-80%": ((_b = this.definition) === null || _b === void 0 ? void 0 : _b.sticky) && ((_c = this.definition) === null || _c === void 0 ? void 0 : _c.sticky) !== "secondary",
3051
- "bg-gradient-to-r from-off-white-300 to-transparent dark:from-hurricane-400 from-80%": ((_d = this.definition) === null || _d === void 0 ? void 0 : _d.sticky) && ((_e = this.definition) === null || _e === void 0 ? void 0 : _e.sticky) === "secondary",
3052
- "flex-shrink": !this.scrollable,
3053
- "flex-shrink-0": this.scrollable,
3049
+ 'sticky left-4 z-[2]': !!((_a = this.definition) === null || _a === void 0 ? void 0 : _a.sticky),
3050
+ 'bg-gradient-to-r from-white to-transparent dark:from-hurricane-700 from-80%': ((_b = this.definition) === null || _b === void 0 ? void 0 : _b.sticky) && ((_c = this.definition) === null || _c === void 0 ? void 0 : _c.sticky) !== 'secondary',
3051
+ 'bg-gradient-to-r from-off-white-300 to-transparent dark:from-hurricane-400 from-80%': ((_d = this.definition) === null || _d === void 0 ? void 0 : _d.sticky) && ((_e = this.definition) === null || _e === void 0 ? void 0 : _e.sticky) === 'secondary',
3052
+ 'flex-shrink': !this.scrollable,
3053
+ 'flex-shrink-0': this.scrollable,
3054
3054
  });
3055
3055
  }
3056
3056
  get data() {
3057
3057
  var _a, _b;
3058
- if (this.variant === "header" || this.variant === "header-secondary") {
3058
+ if (this.variant === 'header' || this.variant === 'header-secondary') {
3059
3059
  return {
3060
3060
  value: this.value,
3061
3061
  };
@@ -3069,12 +3069,28 @@ class TableCell {
3069
3069
  rowIndex: this.rowIndex,
3070
3070
  };
3071
3071
  }
3072
+ get contentClass() {
3073
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
3074
+ const align = this.variant === 'header'
3075
+ ? (_b = (_a = this.definition) === null || _a === void 0 ? void 0 : _a.headerAlign) !== null && _b !== void 0 ? _b : (_c = this.definition) === null || _c === void 0 ? void 0 : _c.align
3076
+ : (_d = this.definition) === null || _d === void 0 ? void 0 : _d.align;
3077
+ return cn('overflow-hidden text-ellipsis', {
3078
+ flex: (_e = this.definition) === null || _e === void 0 ? void 0 : _e.flex,
3079
+ 'flex-1': (_f = this.definition) === null || _f === void 0 ? void 0 : _f.flex,
3080
+ 'justify-start': ((_g = this.definition) === null || _g === void 0 ? void 0 : _g.flex) && (align === undefined || align === 'start'),
3081
+ 'justify-end': ((_h = this.definition) === null || _h === void 0 ? void 0 : _h.flex) && align === 'end',
3082
+ 'justify-center': ((_j = this.definition) === null || _j === void 0 ? void 0 : _j.flex) && align === 'end',
3083
+ 'text-start': !((_k = this.definition) === null || _k === void 0 ? void 0 : _k.flex) && (align === undefined || align === 'start'),
3084
+ 'text-center': !((_l = this.definition) === null || _l === void 0 ? void 0 : _l.flex) && align === 'center',
3085
+ 'text-end': !((_m = this.definition) === null || _m === void 0 ? void 0 : _m.flex) && align === 'end',
3086
+ });
3087
+ }
3072
3088
  }
3073
3089
  TableCell.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TableCell, deps: [], target: i0.ɵɵFactoryTarget.Component });
3074
- TableCell.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TableCell, selector: "p-table-cell-ngx", inputs: { variant: "variant", index: "index", rowIndex: "rowIndex", definition: "definition", item: "item", value: "value", checkbox: "checkbox", checkboxOffset: "checkboxOffset", template: "template", scrollable: "scrollable" }, host: { properties: { "class": "this.class" } }, ngImport: i0, template: "<ng-container *ngIf=\"checkbox\">\n\t<ng-container *ngTemplateOutlet=\"checkbox\"></ng-container>\n</ng-container>\n\n<ng-container [ngSwitch]=\"variant\">\n\t<p-loader\n\t\t*ngSwitchCase=\"'loading'\"\n\t\tvariant=\"ghost\"\n\t\tclass=\"h-6 w-full flex-1 rounded\"\n\t></p-loader>\n\n\t<ng-container *ngSwitchCase=\"'actions'\">\n\t\t<ng-container *ngIf=\"template\">\n\t\t\t<ng-container *ngTemplateOutlet=\"template; context: data\"></ng-container>\n\t\t</ng-container>\n\t</ng-container>\n\n\t<div\n\t\t*ngIf=\"variant === 'header' || variant === 'header-secondary'\"\n\t\t[class]=\"\n\t\t\tcn('overflow-hidden text-ellipsis', {\n\t\t\t\t'text-start':\n\t\t\t\t\tdefinition?.align === undefined || definition.align === 'start',\n\t\t\t\t'text-center': definition.align === 'center',\n\t\t\t\t'text-end': definition.align === 'end'\n\t\t\t})\n\t\t\"\n\t>\n\t\t<ng-container *ngTemplateOutlet=\"valueTemplate\"></ng-container>\n\t</div>\n\n\t<div\n\t\t*ngSwitchCase=\"'default'\"\n\t\t[class]=\"\n\t\t\tcn('overflow-hidden text-ellipsis', {\n\t\t\t\tflex: definition?.flex,\n\t\t\t\t'flex-1': definition?.flex,\n\t\t\t\t'justify-start':\n\t\t\t\t\tdefinition?.flex &&\n\t\t\t\t\t(definition?.align === undefined || definition.align === 'start'),\n\t\t\t\t'justify-end': definition?.flex && definition.align === 'end',\n\t\t\t\t'justify-center': definition?.flex && definition.align === 'end',\n\t\t\t\t'text-start':\n\t\t\t\t\t!definition?.flex &&\n\t\t\t\t\t(definition?.align === undefined || definition.align === 'start'),\n\t\t\t\t'text-center': !definition?.flex && definition.align === 'center',\n\t\t\t\t'text-end': !definition?.flex && definition.align === 'end'\n\t\t\t})\n\t\t\"\n\t>\n\t\t<ng-container *ngIf=\"template; else valueTemplate\">\n\t\t\t<ng-container *ngTemplateOutlet=\"template; context: data\"></ng-container>\n\t\t</ng-container>\n\t</div>\n</ng-container>\n\n<ng-template #valueTemplate>\n\t<ng-container *ngIf=\"data.value\">\n\t\t{{ data.value }}\n\t</ng-container>\n\n\t<ng-content *ngIf=\"!data.value\"></ng-content>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: PLoader, selector: "p-loader", inputs: ["color", "modalDescription", "modalTitle", "show", "variant"] }] });
3090
+ TableCell.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TableCell, selector: "p-table-cell-ngx", inputs: { variant: "variant", index: "index", rowIndex: "rowIndex", definition: "definition", item: "item", value: "value", checkbox: "checkbox", checkboxOffset: "checkboxOffset", template: "template", scrollable: "scrollable" }, host: { properties: { "class": "this.class" } }, ngImport: i0, template: "<ng-container *ngIf=\"checkbox\">\n\t<ng-container *ngTemplateOutlet=\"checkbox\"></ng-container>\n</ng-container>\n\n<ng-container [ngSwitch]=\"variant\">\n\t<p-loader\n\t\t*ngSwitchCase=\"'loading'\"\n\t\tvariant=\"ghost\"\n\t\tclass=\"h-6 w-full flex-1 rounded\"\n\t></p-loader>\n\n\t<ng-container *ngSwitchCase=\"'actions'\">\n\t\t<ng-container *ngIf=\"template\">\n\t\t\t<ng-container *ngTemplateOutlet=\"template; context: data\"></ng-container>\n\t\t</ng-container>\n\t</ng-container>\n\n\t<div\n\t\t*ngIf=\"variant === 'header' || variant === 'header-secondary'\"\n\t\t[class]=\"\n\t\t\tcn('overflow-hidden text-ellipsis', {\n\t\t\t\t'text-start':\n\t\t\t\t\tdefinition?.align === undefined || definition.align === 'start',\n\t\t\t\t'text-center': definition.align === 'center',\n\t\t\t\t'text-end': definition.align === 'end'\n\t\t\t})\n\t\t\"\n\t>\n\t\t<ng-container *ngTemplateOutlet=\"valueTemplate\"></ng-container>\n\t</div>\n\n\t<div\n\t\t*ngSwitchCase=\"'default'\"\n\t\t[class]=\"contentClass\"\n\t>\n\t\t<ng-container *ngIf=\"template; else valueTemplate\">\n\t\t\t<ng-container *ngTemplateOutlet=\"template; context: data\"></ng-container>\n\t\t</ng-container>\n\t</div>\n</ng-container>\n\n<ng-template #valueTemplate>\n\t<ng-container *ngIf=\"data.value\">\n\t\t{{ data.value }}\n\t</ng-container>\n\n\t<ng-content *ngIf=\"!data.value\"></ng-content>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: PLoader, selector: "p-loader", inputs: ["color", "modalDescription", "modalTitle", "show", "variant"] }] });
3075
3091
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TableCell, decorators: [{
3076
3092
  type: Component,
3077
- args: [{ selector: "p-table-cell-ngx", template: "<ng-container *ngIf=\"checkbox\">\n\t<ng-container *ngTemplateOutlet=\"checkbox\"></ng-container>\n</ng-container>\n\n<ng-container [ngSwitch]=\"variant\">\n\t<p-loader\n\t\t*ngSwitchCase=\"'loading'\"\n\t\tvariant=\"ghost\"\n\t\tclass=\"h-6 w-full flex-1 rounded\"\n\t></p-loader>\n\n\t<ng-container *ngSwitchCase=\"'actions'\">\n\t\t<ng-container *ngIf=\"template\">\n\t\t\t<ng-container *ngTemplateOutlet=\"template; context: data\"></ng-container>\n\t\t</ng-container>\n\t</ng-container>\n\n\t<div\n\t\t*ngIf=\"variant === 'header' || variant === 'header-secondary'\"\n\t\t[class]=\"\n\t\t\tcn('overflow-hidden text-ellipsis', {\n\t\t\t\t'text-start':\n\t\t\t\t\tdefinition?.align === undefined || definition.align === 'start',\n\t\t\t\t'text-center': definition.align === 'center',\n\t\t\t\t'text-end': definition.align === 'end'\n\t\t\t})\n\t\t\"\n\t>\n\t\t<ng-container *ngTemplateOutlet=\"valueTemplate\"></ng-container>\n\t</div>\n\n\t<div\n\t\t*ngSwitchCase=\"'default'\"\n\t\t[class]=\"\n\t\t\tcn('overflow-hidden text-ellipsis', {\n\t\t\t\tflex: definition?.flex,\n\t\t\t\t'flex-1': definition?.flex,\n\t\t\t\t'justify-start':\n\t\t\t\t\tdefinition?.flex &&\n\t\t\t\t\t(definition?.align === undefined || definition.align === 'start'),\n\t\t\t\t'justify-end': definition?.flex && definition.align === 'end',\n\t\t\t\t'justify-center': definition?.flex && definition.align === 'end',\n\t\t\t\t'text-start':\n\t\t\t\t\t!definition?.flex &&\n\t\t\t\t\t(definition?.align === undefined || definition.align === 'start'),\n\t\t\t\t'text-center': !definition?.flex && definition.align === 'center',\n\t\t\t\t'text-end': !definition?.flex && definition.align === 'end'\n\t\t\t})\n\t\t\"\n\t>\n\t\t<ng-container *ngIf=\"template; else valueTemplate\">\n\t\t\t<ng-container *ngTemplateOutlet=\"template; context: data\"></ng-container>\n\t\t</ng-container>\n\t</div>\n</ng-container>\n\n<ng-template #valueTemplate>\n\t<ng-container *ngIf=\"data.value\">\n\t\t{{ data.value }}\n\t</ng-container>\n\n\t<ng-content *ngIf=\"!data.value\"></ng-content>\n</ng-template>\n" }]
3093
+ args: [{ selector: 'p-table-cell-ngx', template: "<ng-container *ngIf=\"checkbox\">\n\t<ng-container *ngTemplateOutlet=\"checkbox\"></ng-container>\n</ng-container>\n\n<ng-container [ngSwitch]=\"variant\">\n\t<p-loader\n\t\t*ngSwitchCase=\"'loading'\"\n\t\tvariant=\"ghost\"\n\t\tclass=\"h-6 w-full flex-1 rounded\"\n\t></p-loader>\n\n\t<ng-container *ngSwitchCase=\"'actions'\">\n\t\t<ng-container *ngIf=\"template\">\n\t\t\t<ng-container *ngTemplateOutlet=\"template; context: data\"></ng-container>\n\t\t</ng-container>\n\t</ng-container>\n\n\t<div\n\t\t*ngIf=\"variant === 'header' || variant === 'header-secondary'\"\n\t\t[class]=\"\n\t\t\tcn('overflow-hidden text-ellipsis', {\n\t\t\t\t'text-start':\n\t\t\t\t\tdefinition?.align === undefined || definition.align === 'start',\n\t\t\t\t'text-center': definition.align === 'center',\n\t\t\t\t'text-end': definition.align === 'end'\n\t\t\t})\n\t\t\"\n\t>\n\t\t<ng-container *ngTemplateOutlet=\"valueTemplate\"></ng-container>\n\t</div>\n\n\t<div\n\t\t*ngSwitchCase=\"'default'\"\n\t\t[class]=\"contentClass\"\n\t>\n\t\t<ng-container *ngIf=\"template; else valueTemplate\">\n\t\t\t<ng-container *ngTemplateOutlet=\"template; context: data\"></ng-container>\n\t\t</ng-container>\n\t</div>\n</ng-container>\n\n<ng-template #valueTemplate>\n\t<ng-container *ngIf=\"data.value\">\n\t\t{{ data.value }}\n\t</ng-container>\n\n\t<ng-content *ngIf=\"!data.value\"></ng-content>\n</ng-template>\n" }]
3078
3094
  }], propDecorators: { variant: [{
3079
3095
  type: Input
3080
3096
  }], index: [{
@@ -3097,7 +3113,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
3097
3113
  type: Input
3098
3114
  }], class: [{
3099
3115
  type: HostBinding,
3100
- args: ["class"]
3116
+ args: ['class']
3101
3117
  }] } });
3102
3118
 
3103
3119
  let TableColumn = class TableColumn {