@colijnit/corecomponents_v12 12.0.21 → 12.0.24

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 (87) hide show
  1. package/bundles/colijnit-corecomponents_v12.umd.js +988 -158
  2. package/bundles/colijnit-corecomponents_v12.umd.js.map +1 -1
  3. package/colijnit-corecomponents_v12-12.0.24.tgz +0 -0
  4. package/colijnit-corecomponents_v12.d.ts +15 -9
  5. package/colijnit-corecomponents_v12.metadata.json +1 -1
  6. package/esm2015/colijnit-corecomponents_v12.js +16 -10
  7. package/esm2015/lib/components/base/base-input.component.js +43 -10
  8. package/esm2015/lib/components/base/commit-buttons/commit-buttons.component.js +92 -0
  9. package/esm2015/lib/components/base/commit-buttons/commit-buttons.module.js +19 -0
  10. package/esm2015/lib/components/button/button.component.js +1 -1
  11. package/esm2015/lib/components/carousel-3d/carousel-3d.component.js +2 -6
  12. package/esm2015/lib/components/co-dialog-wizard/co-dialog-wizard.component.js +51 -0
  13. package/esm2015/lib/components/co-dialog-wizard/co-dialog-wizard.module.js +17 -0
  14. package/esm2015/lib/components/drop-down-list/drop-down-list.component.js +4 -1
  15. package/esm2015/lib/components/form/form.component.js +8 -3
  16. package/esm2015/lib/components/grid/base/base-grid.component.js +7 -3
  17. package/esm2015/lib/components/grid/base/base-inline-edit-grid.component.js +47 -3
  18. package/esm2015/lib/components/grid/base/base-selection-grid.component.js +12 -2
  19. package/esm2015/lib/components/grid/co-grid.component.js +35 -32
  20. package/esm2015/lib/components/grid/co-grid.module.js +4 -2
  21. package/esm2015/lib/components/grid-toolbar/grid-toolbar.component.js +41 -0
  22. package/esm2015/lib/components/grid-toolbar/grid-toolbar.module.js +23 -0
  23. package/esm2015/lib/components/input-checkbox/input-checkbox.component.js +4 -1
  24. package/esm2015/lib/components/input-checkbox-multi-select/input-checkbox-multi-select.component.js +4 -1
  25. package/esm2015/lib/components/input-combo-box/input-combo-box.component.js +5 -4
  26. package/esm2015/lib/components/input-date-picker/input-date-picker.component.js +4 -1
  27. package/esm2015/lib/components/input-listbox/input-listbox.component.js +4 -1
  28. package/esm2015/lib/components/input-number-picker/input-number-picker.component.js +22 -24
  29. package/esm2015/lib/components/input-radio-button/input-radio-button.component.js +4 -1
  30. package/esm2015/lib/components/input-text/input-text.component.js +11 -13
  31. package/esm2015/lib/components/input-text/input-text.module.js +4 -2
  32. package/esm2015/lib/components/input-textarea/input-textarea.component.js +4 -1
  33. package/esm2015/lib/components/multi-select-list/multi-select-list.component.js +4 -1
  34. package/esm2015/lib/components/simple-grid/base-simple-grid.component.js +86 -0
  35. package/esm2015/lib/components/simple-grid/simple-grid-cell.component.js +163 -0
  36. package/esm2015/lib/components/simple-grid/simple-grid-column.directive.js +43 -4
  37. package/esm2015/lib/components/simple-grid/simple-grid.component.js +257 -59
  38. package/esm2015/lib/components/simple-grid/simple-grid.module.js +11 -2
  39. package/esm2015/lib/core/constant/number-inputs-key-down-white-list.js +2 -1
  40. package/esm2015/public-api.js +3 -1
  41. package/fesm2015/colijnit-corecomponents_v12.js +1032 -205
  42. package/fesm2015/colijnit-corecomponents_v12.js.map +1 -1
  43. package/lib/components/base/base-input.component.d.ts +5 -2
  44. package/lib/components/base/commit-buttons/commit-buttons.component.d.ts +19 -0
  45. package/lib/components/base/commit-buttons/commit-buttons.module.d.ts +2 -0
  46. package/lib/components/base/commit-buttons/style/_layout.scss +127 -0
  47. package/lib/components/base/commit-buttons/style/_material-definition.scss +5 -0
  48. package/lib/components/base/commit-buttons/style/_theme.scss +34 -0
  49. package/lib/components/base/commit-buttons/style/material.scss +4 -0
  50. package/lib/components/co-dialog/style/_layout.scss +3 -0
  51. package/lib/components/co-dialog-wizard/co-dialog-wizard.component.d.ts +9 -0
  52. package/lib/components/co-dialog-wizard/co-dialog-wizard.module.d.ts +2 -0
  53. package/lib/components/co-dialog-wizard/style/_layout.scss +51 -0
  54. package/lib/components/co-dialog-wizard/style/_material-definition.scss +25 -0
  55. package/lib/components/co-dialog-wizard/style/_theme.scss +16 -0
  56. package/lib/components/co-dialog-wizard/style/material.scss +5 -0
  57. package/lib/components/collapsible/style/_layout.scss +1 -1
  58. package/lib/components/collapsible/style/_material-definition.scss +1 -0
  59. package/lib/components/form/form.component.d.ts +1 -0
  60. package/lib/components/grid/base/base-grid.component.d.ts +3 -0
  61. package/lib/components/grid/base/base-inline-edit-grid.component.d.ts +11 -2
  62. package/lib/components/grid/base/base-selection-grid.component.d.ts +4 -0
  63. package/lib/components/grid-toolbar/grid-toolbar.component.d.ts +13 -0
  64. package/lib/components/grid-toolbar/grid-toolbar.module.d.ts +2 -0
  65. package/lib/components/grid-toolbar/style/_layout.scss +10 -0
  66. package/lib/components/grid-toolbar/style/_material-definition.scss +0 -0
  67. package/lib/components/grid-toolbar/style/_theme.scss +5 -0
  68. package/lib/components/grid-toolbar/style/material.scss +5 -0
  69. package/lib/components/input-combo-box/input-combo-box.component.d.ts +0 -1
  70. package/lib/components/input-number-picker/input-number-picker.component.d.ts +1 -6
  71. package/lib/components/input-radio-button/style/_material-definition.scss +1 -1
  72. package/lib/components/input-text/style/_layout.scss +0 -32
  73. package/lib/components/input-text/style/_material-definition.scss +0 -3
  74. package/lib/components/input-text/style/_theme.scss +0 -16
  75. package/lib/components/input-text/style/material.scss +1 -0
  76. package/lib/components/simple-grid/base-simple-grid.component.d.ts +31 -0
  77. package/lib/components/simple-grid/simple-grid-cell.component.d.ts +28 -0
  78. package/lib/components/simple-grid/simple-grid-column.directive.d.ts +15 -2
  79. package/lib/components/simple-grid/simple-grid.component.d.ts +39 -22
  80. package/lib/components/simple-grid/style/_layout.scss +23 -0
  81. package/lib/components/simple-grid/style/_material-definition.scss +13 -4
  82. package/lib/components/simple-grid/style/_theme.scss +17 -0
  83. package/lib/components/simple-grid/style/material.scss +1 -0
  84. package/lib/style/_input.mixins.scss +1 -1
  85. package/lib/style/_variables.scss +5 -1
  86. package/package.json +2 -2
  87. package/public-api.d.ts +2 -0
@@ -1,69 +1,260 @@
1
- import { ChangeDetectionStrategy, Component, ContentChildren, EventEmitter, HostBinding, HostListener, Input, Output, ViewEncapsulation } from "@angular/core";
2
- import { moveItemInArray } from "@angular/cdk/drag-drop";
3
- import { ColumnAlign, SimpleGridColumnDirective } from "./simple-grid-column.directive";
4
- export class SimpleGridComponent {
5
- constructor() {
1
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, HostBinding, HostListener, ViewEncapsulation } from "@angular/core";
2
+ import { FormMasterService } from "../../core/service/form-master.service";
3
+ import { BaseSimpleGridComponent } from "./base-simple-grid.component";
4
+ import { ColumnAlign } from "./simple-grid-column.directive";
5
+ export class SimpleGridComponent extends BaseSimpleGridComponent {
6
+ constructor(_changeDetection, _formMaster) {
7
+ super();
8
+ this._changeDetection = _changeDetection;
9
+ this._formMaster = _formMaster;
6
10
  this.defaultTextAlign = ColumnAlign.Left;
7
- this.data = [];
8
- this.dragDropEnabled = false;
9
- /**
10
- * Should component emit drag and drop actions instead of handle
11
- * (update collection) by itself
12
- */
13
- this.emitDragDrop = false;
14
- this.onDrop = new EventEmitter();
15
- this.columns = [];
16
- }
17
- set content(columnComponents) {
18
- this.columns = columnComponents.toArray();
11
+ this.editting = false;
12
+ this.editRowIndex = -1;
13
+ this.editCellIndex = -1;
14
+ this.selectedRowIndex = -1;
15
+ this._doubleClicked = false;
16
+ this._newRow = false;
19
17
  }
20
18
  showClass() {
21
19
  return true;
22
20
  }
23
- handleMouseMove(event) {
24
- if (event.buttons === 1 && this._columnForResize) {
25
- if (!this._columnForResize.width) {
26
- const rect = event.target.parentElement.getBoundingClientRect();
27
- this._columnForResize.width = rect.width;
28
- }
29
- this._columnForResize.width += event.movementX;
21
+ handleKeyDown(event) {
22
+ if (!this.inlineEdit) {
23
+ return;
24
+ }
25
+ if (event.code === 'Tab') {
26
+ event.preventDefault();
27
+ this._nextAvailableCellToEdit(!event.shiftKey, this.editCellIndex)
28
+ .then((index) => {
29
+ this.editCellIndex = index;
30
+ this._changeDetection.markForCheck();
31
+ });
32
+ this._detectChanges();
33
+ }
34
+ if (event.code === 'Escape') {
35
+ this.cancelEditRow();
36
+ }
37
+ if (event.code === 'Enter') {
38
+ this.validateAndSave();
30
39
  }
31
40
  }
32
- handleMouseUp(event) {
33
- this._columnForResize = undefined;
41
+ isSingleColumn(column) {
42
+ return column.singleColumn;
34
43
  }
35
- handleSizerMouseDown(event, column) {
36
- this._columnForResize = column;
44
+ rowContainsSingleColumn(row, columns) {
45
+ const singleColumn = columns.find(column => this.isSingleColumn(column) && !!row[column.field]);
46
+ return !!singleColumn;
37
47
  }
38
- handleCanDragDrop(drag, drop) {
39
- return true;
48
+ addRow() {
49
+ const valid = this.validateAndSave();
50
+ this._detectChanges();
51
+ if (valid) {
52
+ this.data.unshift({});
53
+ this._newRow = true;
54
+ this.editRowIndex = 0;
55
+ this._nextAvailableCellToEdit(true).then((index) => {
56
+ this.editCellIndex = index;
57
+ });
58
+ this.editting = true;
59
+ this.rowToEdit = this.data[0];
60
+ this._detectChanges();
61
+ }
40
62
  }
41
- handleDrop(event) {
42
- try {
43
- const from = event.previousIndex;
44
- const to = event.currentIndex;
45
- if (from === to) {
63
+ validateAndSave(stopEditting = true) {
64
+ if (!this.editting) {
65
+ return true;
66
+ }
67
+ const valid = this._formMaster.submitSlaves();
68
+ this._detectChanges();
69
+ if (valid) {
70
+ this._saveRow(stopEditting);
71
+ return true;
72
+ }
73
+ }
74
+ cancelEditRow() {
75
+ if (!this.editting) {
76
+ return;
77
+ }
78
+ if (this._newRow) {
79
+ this.data.shift();
80
+ }
81
+ else {
82
+ this.data[this.editRowIndex] = this.rowToEdit;
83
+ }
84
+ this._newRow = false;
85
+ this.editting = false;
86
+ this._detectChanges();
87
+ }
88
+ handleClickRow(event, index) {
89
+ setTimeout(() => {
90
+ if (this._doubleClicked) {
46
91
  return;
47
92
  }
48
- if (this.emitDragDrop) {
49
- this.onDrop.next({ from: from, to: to });
93
+ this.selectTheRow(index);
94
+ }, 200);
95
+ }
96
+ selectTheRow(index, emit = true) {
97
+ if (this.selectedRowIndex !== index && ((this.editting && this.validateAndSave()) || !this.editting)) {
98
+ this.selectedRowIndex = index;
99
+ if (emit) {
100
+ this.selectRow.next(this.data[this.selectedRowIndex]);
101
+ }
102
+ }
103
+ this._detectChanges();
104
+ }
105
+ handleDblClickRow(event, index) {
106
+ this._doubleClicked = true;
107
+ this.dblClickRow.next(this.data[index]);
108
+ this.selectTheRow(index, false);
109
+ if (this.inlineEdit) {
110
+ this.editRow(event);
111
+ }
112
+ this._resetDblClick();
113
+ }
114
+ editRow(event) {
115
+ this.editRowIndex = this.selectedRowIndex;
116
+ this.rowToEdit = this.data[this.editRowIndex];
117
+ this.editting = true;
118
+ this._nextAvailableCellToEdit(true).then((index) => {
119
+ this.editCellIndex = index;
120
+ });
121
+ this._detectChanges();
122
+ }
123
+ handleCellClick(index) {
124
+ this.editCellIndex = index;
125
+ this._detectChanges();
126
+ }
127
+ _resetDblClick() {
128
+ setTimeout(() => {
129
+ this._doubleClicked = false;
130
+ }, 500);
131
+ }
132
+ /**
133
+ *
134
+ * @param next; Move to next or previous cell
135
+ * @param start; Start from cellindex
136
+ * @private
137
+ */
138
+ _nextAvailableCellToEdit(next, start = -1) {
139
+ return new Promise((resolve, reject) => {
140
+ const numEditableColumns = this.columns.filter(c => !c.readonly).length;
141
+ const wantedIndex = start + (next ? 1 : -1);
142
+ if (wantedIndex >= numEditableColumns) {
143
+ this._getNextEditRowIndex()
144
+ .then((index) => {
145
+ this.editRowIndex = index;
146
+ resolve(this._getNextEditCellIndex(0));
147
+ })
148
+ .catch((e) => {
149
+ reject();
150
+ });
151
+ }
152
+ else if (wantedIndex < 0) {
153
+ this._getPreviousEditRowIndex()
154
+ .then((index) => {
155
+ this.editRowIndex = index;
156
+ resolve(this._getPreviousEditCellIndex(this.columns.length - 1));
157
+ })
158
+ .catch((e) => {
159
+ reject();
160
+ });
50
161
  }
51
162
  else {
52
- moveItemInArray(this.data, from, to);
163
+ resolve(next ? this._getNextEditCellIndex(start + 1) : this._getPreviousEditCellIndex(start - 1));
164
+ }
165
+ });
166
+ }
167
+ _getNextEditCellIndex(start) {
168
+ for (let i = start; i < this.columns.length; i++) {
169
+ if (!this.columns[i].readonly) {
170
+ return i;
53
171
  }
54
172
  }
55
- catch (e) {
56
- console.error(e);
173
+ }
174
+ _getPreviousEditCellIndex(start) {
175
+ for (let i = start; i >= 0; i--) {
176
+ if (!this.columns[i].readonly) {
177
+ return i;
178
+ }
57
179
  }
58
180
  }
181
+ _getNextEditRowIndex() {
182
+ return new Promise((resolve, reject) => {
183
+ let newRowIndex = 0;
184
+ if (this.editRowIndex + 1 >= this.data.length) {
185
+ newRowIndex = 0;
186
+ }
187
+ else {
188
+ newRowIndex = this.editRowIndex + 1;
189
+ }
190
+ if (newRowIndex !== this.editRowIndex) { // go to different row validate current one first
191
+ if (this.validateAndSave(false)) {
192
+ this.rowToEdit = this.data[newRowIndex];
193
+ resolve(newRowIndex);
194
+ }
195
+ else {
196
+ reject();
197
+ }
198
+ }
199
+ else {
200
+ resolve(newRowIndex);
201
+ }
202
+ });
203
+ }
204
+ _getPreviousEditRowIndex() {
205
+ return new Promise((resolve, reject) => {
206
+ let newRowIndex = 0;
207
+ if (this.editRowIndex - 1 < 0) {
208
+ newRowIndex = this.data.length - 1;
209
+ }
210
+ else {
211
+ newRowIndex = this.editRowIndex - 1;
212
+ }
213
+ if (newRowIndex !== this.editRowIndex) { // go to different row validate current one first
214
+ if (this.validateAndSave(false)) {
215
+ this.rowToEdit = this.data[newRowIndex];
216
+ resolve(newRowIndex);
217
+ }
218
+ else {
219
+ reject();
220
+ }
221
+ }
222
+ else {
223
+ resolve(newRowIndex);
224
+ }
225
+ });
226
+ }
227
+ _saveRow(stopEditting = true) {
228
+ // emit saveEvent
229
+ if (this.rowToEdit) {
230
+ this.saveRow.next(this.rowToEdit);
231
+ }
232
+ this._newRow = false;
233
+ if (stopEditting) {
234
+ this.editRowIndex = -1;
235
+ this.editCellIndex = -1;
236
+ this.editting = false;
237
+ this.rowToEdit = undefined;
238
+ }
239
+ this._detectChanges();
240
+ }
241
+ _detectChanges() {
242
+ this._changeDetection.detectChanges();
243
+ }
59
244
  }
60
245
  SimpleGridComponent.decorators = [
61
246
  { type: Component, args: [{
62
247
  selector: "co-simple-grid",
63
248
  template: `
249
+ <co-grid-toolbar *ngIf="inlineEdit && showToolbar"
250
+ (addClick)="addRow()"
251
+ (editClick)="editRow($event)"
252
+ (saveClick)="validateAndSave()"
253
+ (cancelClick)="cancelEditRow()"
254
+ ></co-grid-toolbar>
64
255
  <div class="simple-grid-column-header-wrapper">
65
256
  <div class="simple-grid-column-header" *ngFor="let column of columns; let index = index"
66
- [style.min-width.px]="column.width" [style.max-width.px]="column.width">
257
+ [style.min-width.px]="column.width" [style.max-width.px]="column.width" [style.padding-right.px]="isSingleColumn(column) ? 0 : 5">
67
258
  <div class="simple-grid-column-header-label" [ngClass]="column.textAlign ? column.textAlign : defaultTextAlign"
68
259
  [textContent]="column.headerText"
69
260
  ></div>
@@ -80,33 +271,40 @@ SimpleGridComponent.decorators = [
80
271
  [cdkDropListEnterPredicate]="handleCanDragDrop"
81
272
  (cdkDropListDropped)="handleDrop($event)"
82
273
  >
83
- <div class="simple-grid-row" *ngFor="let row of data" cdkDrag>
84
- <div class="simple-grid-column-cell" *ngFor="let column of columns"
85
- [style.min-width.px]="column.width" [style.max-width.px]="column.width">
86
- <div class="simple-grid-column-cell-value" [ngClass]="column.textAlign ? column.textAlign : defaultTextAlign">
87
- <ng-container *ngIf="column.template">
88
- <ng-container [ngTemplateOutlet]="column.template" [ngTemplateOutletContext]="{value: row[column.field], row: row}"></ng-container>
89
- </ng-container>
90
- <div *ngIf="!column.template" [textContent]="row[column.field]"></div>
274
+ <div class="simple-grid-row" [class.selected]="rowIndex === selectedRowIndex"
275
+ [class.editting]="rowIndex === editRowIndex" *ngFor="let row of data; let rowIndex = index" cdkDrag
276
+ (click)="handleClickRow($event, rowIndex)" (dblclick)="handleDblClickRow($event, rowIndex)">
277
+ <co-form class="simple-grid-row-form">
278
+ <div class="simple-grid-column-cell" *ngFor="let column of columns; let columnIndex = index"
279
+ [style.min-width]="isSingleColumn(column) ? 'fit-content' : column.width" [style.max-width.px]="column.width"
280
+ [style.padding-right.px]="isSingleColumn(column) ? 0 : 5" >
281
+ <co-simple-grid-cell
282
+ [column]="column"
283
+ [row]="row"
284
+ [editMode]="inlineEdit && editting && rowIndex === editRowIndex && !isSingleColumn(column) && !rowContainsSingleColumn(row, columns)"
285
+ [fieldEditMode]="editCellIndex === columnIndex"
286
+ (cellClick)="handleCellClick(columnIndex)"
287
+ ></co-simple-grid-cell>
288
+ <div *ngIf="column.resizable" class="simple-grid-column-sizer-placeholder"></div>
91
289
  </div>
92
- <div *ngIf="column.resizable" class="simple-grid-column-sizer-placeholder"></div>
93
- </div>
290
+ </co-form>
94
291
  </div>
95
292
  </div>
96
293
  </div>
97
294
  `,
295
+ providers: [
296
+ FormMasterService
297
+ ],
98
298
  changeDetection: ChangeDetectionStrategy.OnPush,
99
299
  encapsulation: ViewEncapsulation.None
100
300
  },] }
101
301
  ];
302
+ SimpleGridComponent.ctorParameters = () => [
303
+ { type: ChangeDetectorRef },
304
+ { type: FormMasterService }
305
+ ];
102
306
  SimpleGridComponent.propDecorators = {
103
- content: [{ type: ContentChildren, args: [SimpleGridColumnDirective,] }],
104
- data: [{ type: Input }],
105
- dragDropEnabled: [{ type: Input }],
106
- emitDragDrop: [{ type: Input }],
107
- onDrop: [{ type: Output }],
108
307
  showClass: [{ type: HostBinding, args: ["class.co-simple-grid",] }],
109
- handleMouseMove: [{ type: HostListener, args: ['document:mousemove', ['$event'],] }],
110
- handleMouseUp: [{ type: HostListener, args: ['document:mouseup', ['$event'],] }]
308
+ handleKeyDown: [{ type: HostListener, args: ['keydown', ['$event'],] }]
111
309
  };
112
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLWdyaWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3NpbXBsZS1ncmlkL3NpbXBsZS1ncmlkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsWUFBWSxFQUNaLFdBQVcsRUFDWCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFFTixpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFvQyxlQUFlLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRixPQUFPLEVBQUMsV0FBVyxFQUFFLHlCQUF5QixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUEwQ3RGLE1BQU0sT0FBTyxtQkFBbUI7SUF4Q2hDO1FBeUNrQixxQkFBZ0IsR0FBZ0IsV0FBVyxDQUFDLElBQUksQ0FBQztRQU8xRCxTQUFJLEdBQWEsRUFBRSxDQUFDO1FBR3BCLG9CQUFlLEdBQVksS0FBSyxDQUFDO1FBRXhDOzs7V0FHRztRQUVJLGlCQUFZLEdBQVksS0FBSyxDQUFDO1FBRzlCLFdBQU0sR0FBNkMsSUFBSSxZQUFZLEVBQThCLENBQUM7UUF1QmxHLFlBQU8sR0FBZ0MsRUFBRSxDQUFDO0lBNkJuRCxDQUFDO0lBdEVDLElBQWdELE9BQU8sQ0FBQyxnQkFBc0Q7UUFDNUcsSUFBSSxDQUFDLE9BQU8sR0FBRyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUM1QyxDQUFDO0lBbUJNLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFHTSxlQUFlLENBQUMsS0FBaUI7UUFDdEMsSUFBSSxLQUFLLENBQUMsT0FBTyxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7WUFDaEQsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUU7Z0JBQ2hDLE1BQU0sSUFBSSxHQUFnQixLQUFLLENBQUMsTUFBYyxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO2dCQUNyRixJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7YUFDMUM7WUFDRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQyxTQUFTLENBQUM7U0FDaEQ7SUFDSCxDQUFDO0lBR00sYUFBYSxDQUFDLEtBQWlCO1FBQ3BDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxTQUFTLENBQUM7SUFDcEMsQ0FBQztJQU1NLG9CQUFvQixDQUFDLEtBQWlCLEVBQUUsTUFBaUM7UUFDOUUsSUFBSSxDQUFDLGdCQUFnQixHQUFHLE1BQU0sQ0FBQztJQUNqQyxDQUFDO0lBRU0saUJBQWlCLENBQUMsSUFBYSxFQUFFLElBQWlCO1FBQ3ZELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLFVBQVUsQ0FBQyxLQUE0QjtRQUM1QyxJQUFJO1lBQ0YsTUFBTSxJQUFJLEdBQVcsS0FBSyxDQUFDLGFBQWEsQ0FBQztZQUN6QyxNQUFNLEVBQUUsR0FBVyxLQUFLLENBQUMsWUFBWSxDQUFDO1lBQ3RDLElBQUksSUFBSSxLQUFLLEVBQUUsRUFBRTtnQkFDZixPQUFPO2FBQ1I7WUFDRCxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7Z0JBQ3JCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFDLENBQUMsQ0FBQzthQUN4QztpQkFBTTtnQkFDTCxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7YUFDdEM7U0FDRjtRQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1YsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNsQjtJQUNILENBQUM7OztZQS9HRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtnQkFDMUIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0NUO2dCQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2dCQUMvQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O3NCQUlFLGVBQWUsU0FBQyx5QkFBeUI7bUJBSXpDLEtBQUs7OEJBR0wsS0FBSzsyQkFPTCxLQUFLO3FCQUdMLE1BQU07d0JBR04sV0FBVyxTQUFDLHNCQUFzQjs4QkFLbEMsWUFBWSxTQUFDLG9CQUFvQixFQUFFLENBQUMsUUFBUSxDQUFDOzRCQVc3QyxZQUFZLFNBQUMsa0JBQWtCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENvbXBvbmVudCxcclxuICBDb250ZW50Q2hpbGRyZW4sXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEhvc3RCaW5kaW5nLFxyXG4gIEhvc3RMaXN0ZW5lcixcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbiAgUXVlcnlMaXN0LFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uXHJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtDZGtEcmFnLCBDZGtEcmFnRHJvcCwgQ2RrRHJvcExpc3QsIG1vdmVJdGVtSW5BcnJheX0gZnJvbSBcIkBhbmd1bGFyL2Nkay9kcmFnLWRyb3BcIjtcclxuaW1wb3J0IHtDb2x1bW5BbGlnbiwgU2ltcGxlR3JpZENvbHVtbkRpcmVjdGl2ZX0gZnJvbSBcIi4vc2ltcGxlLWdyaWQtY29sdW1uLmRpcmVjdGl2ZVwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiY28tc2ltcGxlLWdyaWRcIixcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdiBjbGFzcz1cInNpbXBsZS1ncmlkLWNvbHVtbi1oZWFkZXItd3JhcHBlclwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwic2ltcGxlLWdyaWQtY29sdW1uLWhlYWRlclwiICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29sdW1uczsgbGV0IGluZGV4ID0gaW5kZXhcIlxyXG4gICAgICAgICAgIFtzdHlsZS5taW4td2lkdGgucHhdPVwiY29sdW1uLndpZHRoXCIgW3N0eWxlLm1heC13aWR0aC5weF09XCJjb2x1bW4ud2lkdGhcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic2ltcGxlLWdyaWQtY29sdW1uLWhlYWRlci1sYWJlbFwiIFtuZ0NsYXNzXT1cImNvbHVtbi50ZXh0QWxpZ24gPyBjb2x1bW4udGV4dEFsaWduIDogZGVmYXVsdFRleHRBbGlnblwiXHJcbiAgICAgICAgICAgICBbdGV4dENvbnRlbnRdPVwiY29sdW1uLmhlYWRlclRleHRcIlxyXG4gICAgICAgID48L2Rpdj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiY29sdW1uLnJlc2l6YWJsZVwiIGNsYXNzPVwic2ltcGxlLWdyaWQtY29sdW1uLXNpemVyXCJcclxuICAgICAgICAgICAgIChtb3VzZWRvd24pPVwiaGFuZGxlU2l6ZXJNb3VzZURvd24oJGV2ZW50LCBjb2x1bW4pXCJcclxuICAgICAgICA+PC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNka0Ryb3BMaXN0R3JvdXAgY2xhc3M9XCJkcm9wLWxpc3QtZ3JvdXBcIj5cclxuICAgICAgPGRpdiAjZHJvcExpc3QgY2RrRHJvcExpc3QgY2RrRHJvcExpc3RPcmllbnRhdGlvbj1cInZlcnRpY2FsXCJcclxuICAgICAgICAgICBjbGFzcz1cInNpbXBsZS1ncmlkLWRyYWctZHJvcC1saXN0XCJcclxuICAgICAgICAgICBbY2RrRHJvcExpc3REaXNhYmxlZF09XCIhZHJhZ0Ryb3BFbmFibGVkXCJcclxuICAgICAgICAgICBbY2RrRHJvcExpc3REYXRhXT1cImRhdGFcIlxyXG4gICAgICAgICAgIFtjZGtEcm9wTGlzdEVudGVyUHJlZGljYXRlXT1cImhhbmRsZUNhbkRyYWdEcm9wXCJcclxuICAgICAgICAgICAoY2RrRHJvcExpc3REcm9wcGVkKT1cImhhbmRsZURyb3AoJGV2ZW50KVwiXHJcbiAgICAgID5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic2ltcGxlLWdyaWQtcm93XCIgKm5nRm9yPVwibGV0IHJvdyBvZiBkYXRhXCIgY2RrRHJhZz5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaW1wbGUtZ3JpZC1jb2x1bW4tY2VsbFwiICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29sdW1uc1wiXHJcbiAgICAgICAgICAgICAgIFtzdHlsZS5taW4td2lkdGgucHhdPVwiY29sdW1uLndpZHRoXCIgW3N0eWxlLm1heC13aWR0aC5weF09XCJjb2x1bW4ud2lkdGhcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNpbXBsZS1ncmlkLWNvbHVtbi1jZWxsLXZhbHVlXCIgW25nQ2xhc3NdPVwiY29sdW1uLnRleHRBbGlnbiA/IGNvbHVtbi50ZXh0QWxpZ24gOiBkZWZhdWx0VGV4dEFsaWduXCI+XHJcbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbHVtbi50ZW1wbGF0ZVwiPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJjb2x1bW4udGVtcGxhdGVcIiBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie3ZhbHVlOiByb3dbY29sdW1uLmZpZWxkXSwgcm93OiByb3d9XCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgPGRpdiAgKm5nSWY9XCIhY29sdW1uLnRlbXBsYXRlXCIgW3RleHRDb250ZW50XT1cInJvd1tjb2x1bW4uZmllbGRdXCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiY29sdW1uLnJlc2l6YWJsZVwiIGNsYXNzPVwic2ltcGxlLWdyaWQtY29sdW1uLXNpemVyLXBsYWNlaG9sZGVyXCI+PC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICBgLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTaW1wbGVHcmlkQ29tcG9uZW50IHtcclxuICBwdWJsaWMgcmVhZG9ubHkgZGVmYXVsdFRleHRBbGlnbjogQ29sdW1uQWxpZ24gPSBDb2x1bW5BbGlnbi5MZWZ0O1xyXG5cclxuICBAQ29udGVudENoaWxkcmVuKFNpbXBsZUdyaWRDb2x1bW5EaXJlY3RpdmUpIHNldCBjb250ZW50KGNvbHVtbkNvbXBvbmVudHM6IFF1ZXJ5TGlzdDxTaW1wbGVHcmlkQ29sdW1uRGlyZWN0aXZlPikge1xyXG4gICAgdGhpcy5jb2x1bW5zID0gY29sdW1uQ29tcG9uZW50cy50b0FycmF5KCk7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBkYXRhOiBPYmplY3RbXSA9IFtdO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBkcmFnRHJvcEVuYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgLyoqXHJcbiAgICogU2hvdWxkIGNvbXBvbmVudCBlbWl0IGRyYWcgYW5kIGRyb3AgYWN0aW9ucyBpbnN0ZWFkIG9mIGhhbmRsZVxyXG4gICAqICh1cGRhdGUgY29sbGVjdGlvbikgYnkgaXRzZWxmXHJcbiAgICovXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZW1pdERyYWdEcm9wOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBvbkRyb3A6IEV2ZW50RW1pdHRlcjx7ZnJvbTogbnVtYmVyLCB0bzogbnVtYmVyfT4gPSBuZXcgRXZlbnRFbWl0dGVyPHtmcm9tOiBudW1iZXI7IHRvOiBudW1iZXJ9PigpO1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby1zaW1wbGUtZ3JpZFwiKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50Om1vdXNlbW92ZScsIFsnJGV2ZW50J10pXHJcbiAgcHVibGljIGhhbmRsZU1vdXNlTW92ZShldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgaWYgKGV2ZW50LmJ1dHRvbnMgPT09IDEgJiYgdGhpcy5fY29sdW1uRm9yUmVzaXplKSB7XHJcbiAgICAgIGlmICghdGhpcy5fY29sdW1uRm9yUmVzaXplLndpZHRoKSB7XHJcbiAgICAgICAgY29uc3QgcmVjdDogQ2xpZW50UmVjdCA9IChldmVudC50YXJnZXQgYXMgYW55KS5wYXJlbnRFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG4gICAgICAgIHRoaXMuX2NvbHVtbkZvclJlc2l6ZS53aWR0aCA9IHJlY3Qud2lkdGg7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5fY29sdW1uRm9yUmVzaXplLndpZHRoICs9IGV2ZW50Lm1vdmVtZW50WDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50Om1vdXNldXAnLCBbJyRldmVudCddKVxyXG4gIHB1YmxpYyBoYW5kbGVNb3VzZVVwKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XHJcbiAgICB0aGlzLl9jb2x1bW5Gb3JSZXNpemUgPSB1bmRlZmluZWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY29sdW1uczogU2ltcGxlR3JpZENvbHVtbkRpcmVjdGl2ZVtdID0gW107XHJcblxyXG4gIHByaXZhdGUgX2NvbHVtbkZvclJlc2l6ZTogU2ltcGxlR3JpZENvbHVtbkRpcmVjdGl2ZTtcclxuXHJcbiAgcHVibGljIGhhbmRsZVNpemVyTW91c2VEb3duKGV2ZW50OiBNb3VzZUV2ZW50LCBjb2x1bW46IFNpbXBsZUdyaWRDb2x1bW5EaXJlY3RpdmUpOiB2b2lkIHtcclxuICAgIHRoaXMuX2NvbHVtbkZvclJlc2l6ZSA9IGNvbHVtbjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVDYW5EcmFnRHJvcChkcmFnOiBDZGtEcmFnLCBkcm9wOiBDZGtEcm9wTGlzdCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlRHJvcChldmVudDogQ2RrRHJhZ0Ryb3A8T2JqZWN0W10+KTogdm9pZCB7XHJcbiAgICB0cnkge1xyXG4gICAgICBjb25zdCBmcm9tOiBudW1iZXIgPSBldmVudC5wcmV2aW91c0luZGV4O1xyXG4gICAgICBjb25zdCB0bzogbnVtYmVyID0gZXZlbnQuY3VycmVudEluZGV4O1xyXG4gICAgICBpZiAoZnJvbSA9PT0gdG8pIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMuZW1pdERyYWdEcm9wKSB7XHJcbiAgICAgICAgdGhpcy5vbkRyb3AubmV4dCh7ZnJvbTogZnJvbSwgdG86IHRvfSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgbW92ZUl0ZW1JbkFycmF5KHRoaXMuZGF0YSwgZnJvbSwgdG8pO1xyXG4gICAgICB9XHJcbiAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgIGNvbnNvbGUuZXJyb3IoZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
310
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLWdyaWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3NpbXBsZS1ncmlkL3NpbXBsZS1ncmlkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsV0FBVyxFQUNYLFlBQVksRUFDWixpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDM0UsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDdkUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBeUQ3RCxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsdUJBQXVCO0lBdUM5RCxZQUNVLGdCQUFtQyxFQUNuQyxXQUE4QjtRQUV0QyxLQUFLLEVBQUUsQ0FBQztRQUhBLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBbUI7UUFDbkMsZ0JBQVcsR0FBWCxXQUFXLENBQW1CO1FBeEN4QixxQkFBZ0IsR0FBZ0IsV0FBVyxDQUFDLElBQUksQ0FBQztRQTZCMUQsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUMxQixpQkFBWSxHQUFXLENBQUMsQ0FBQyxDQUFDO1FBQzFCLGtCQUFhLEdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDM0IscUJBQWdCLEdBQVcsQ0FBQyxDQUFDLENBQUM7UUFHN0IsbUJBQWMsR0FBWSxLQUFLLENBQUM7UUFDaEMsWUFBTyxHQUFZLEtBQUssQ0FBQztJQU9qQyxDQUFDO0lBeENNLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFHTSxhQUFhLENBQUMsS0FBb0I7UUFDdkMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVB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SSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7WUFDdEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7U0FDNUI7UUFDRCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVPLGNBQWM7UUFDcEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3hDLENBQUM7OztZQXZURixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtnQkFDMUIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBOENUO2dCQUNELFNBQVMsRUFBRTtvQkFDVCxpQkFBaUI7aUJBQ2xCO2dCQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2dCQUMvQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBaEVDLGlCQUFpQjtZQU1WLGlCQUFpQjs7O3dCQThEdkIsV0FBVyxTQUFDLHNCQUFzQjs0QkFLbEMsWUFBWSxTQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ29tcG9uZW50LFxyXG4gIEhvc3RCaW5kaW5nLFxyXG4gIEhvc3RMaXN0ZW5lcixcclxuICBWaWV3RW5jYXBzdWxhdGlvblxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEZvcm1NYXN0ZXJTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL2NvcmUvc2VydmljZS9mb3JtLW1hc3Rlci5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IEJhc2VTaW1wbGVHcmlkQ29tcG9uZW50IH0gZnJvbSBcIi4vYmFzZS1zaW1wbGUtZ3JpZC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgQ29sdW1uQWxpZ24gfSBmcm9tIFwiLi9zaW1wbGUtZ3JpZC1jb2x1bW4uZGlyZWN0aXZlXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJjby1zaW1wbGUtZ3JpZFwiLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8Y28tZ3JpZC10b29sYmFyICpuZ0lmPVwiaW5saW5lRWRpdCAmJiBzaG93VG9vbGJhclwiXHJcbiAgICAgICAgICAgICAgICAgICAgIChhZGRDbGljayk9XCJhZGRSb3coKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgIChlZGl0Q2xpY2spPVwiZWRpdFJvdygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgKHNhdmVDbGljayk9XCJ2YWxpZGF0ZUFuZFNhdmUoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgIChjYW5jZWxDbGljayk9XCJjYW5jZWxFZGl0Um93KClcIlxyXG4gICAgPjwvY28tZ3JpZC10b29sYmFyPlxyXG4gICAgPGRpdiBjbGFzcz1cInNpbXBsZS1ncmlkLWNvbHVtbi1oZWFkZXItd3JhcHBlclwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwic2ltcGxlLWdyaWQtY29sdW1uLWhlYWRlclwiICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29sdW1uczsgbGV0IGluZGV4ID0gaW5kZXhcIlxyXG4gICAgICAgICAgIFtzdHlsZS5taW4td2lkdGgucHhdPVwiY29sdW1uLndpZHRoXCIgW3N0eWxlLm1heC13aWR0aC5weF09XCJjb2x1bW4ud2lkdGhcIiBbc3R5bGUucGFkZGluZy1yaWdodC5weF09XCJpc1NpbmdsZUNvbHVtbihjb2x1bW4pID8gMCA6IDVcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic2ltcGxlLWdyaWQtY29sdW1uLWhlYWRlci1sYWJlbFwiIFtuZ0NsYXNzXT1cImNvbHVtbi50ZXh0QWxpZ24gPyBjb2x1bW4udGV4dEFsaWduIDogZGVmYXVsdFRleHRBbGlnblwiXHJcbiAgICAgICAgICAgICBbdGV4dENvbnRlbnRdPVwiY29sdW1uLmhlYWRlclRleHRcIlxyXG4gICAgICAgID48L2Rpdj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiY29sdW1uLnJlc2l6YWJsZVwiIGNsYXNzPVwic2ltcGxlLWdyaWQtY29sdW1uLXNpemVyXCJcclxuICAgICAgICAgICAgIChtb3VzZWRvd24pPVwiaGFuZGxlU2l6ZXJNb3VzZURvd24oJGV2ZW50LCBjb2x1bW4pXCJcclxuICAgICAgICA+PC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNka0Ryb3BMaXN0R3JvdXAgY2xhc3M9XCJkcm9wLWxpc3QtZ3JvdXBcIj5cclxuICAgICAgPGRpdiAjZHJvcExpc3QgY2RrRHJvcExpc3QgY2RrRHJvcExpc3RPcmllbnRhdGlvbj1cInZlcnRpY2FsXCJcclxuICAgICAgICAgICBjbGFzcz1cInNpbXBsZS1ncmlkLWRyYWctZHJvcC1saXN0XCJcclxuICAgICAgICAgICBbY2RrRHJvcExpc3REaXNhYmxlZF09XCIhZHJhZ0Ryb3BFbmFibGVkXCJcclxuICAgICAgICAgICBbY2RrRHJvcExpc3REYXRhXT1cImRhdGFcIlxyXG4gICAgICAgICAgIFtjZGtEcm9wTGlzdEVudGVyUHJlZGljYXRlXT1cImhhbmRsZUNhbkRyYWdEcm9wXCJcclxuICAgICAgICAgICAoY2RrRHJvcExpc3REcm9wcGVkKT1cImhhbmRsZURyb3AoJGV2ZW50KVwiXHJcbiAgICAgID5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic2ltcGxlLWdyaWQtcm93XCIgW2NsYXNzLnNlbGVjdGVkXT1cInJvd0luZGV4ID09PSBzZWxlY3RlZFJvd0luZGV4XCJcclxuICAgICAgICAgICAgIFtjbGFzcy5lZGl0dGluZ109XCJyb3dJbmRleCA9PT0gZWRpdFJvd0luZGV4XCIgKm5nRm9yPVwibGV0IHJvdyBvZiBkYXRhOyBsZXQgcm93SW5kZXggPSBpbmRleFwiIGNka0RyYWdcclxuICAgICAgICAgICAgIChjbGljayk9XCJoYW5kbGVDbGlja1JvdygkZXZlbnQsIHJvd0luZGV4KVwiIChkYmxjbGljayk9XCJoYW5kbGVEYmxDbGlja1JvdygkZXZlbnQsIHJvd0luZGV4KVwiPlxyXG4gICAgICAgICAgPGNvLWZvcm0gY2xhc3M9XCJzaW1wbGUtZ3JpZC1yb3ctZm9ybVwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2ltcGxlLWdyaWQtY29sdW1uLWNlbGxcIiAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbHVtbnM7IGxldCBjb2x1bW5JbmRleCA9IGluZGV4XCJcclxuICAgICAgICAgICAgICAgICBbc3R5bGUubWluLXdpZHRoXT1cImlzU2luZ2xlQ29sdW1uKGNvbHVtbikgPyAnZml0LWNvbnRlbnQnIDogY29sdW1uLndpZHRoXCIgW3N0eWxlLm1heC13aWR0aC5weF09XCJjb2x1bW4ud2lkdGhcIlxyXG4gICAgICAgICAgICAgICAgIFtzdHlsZS5wYWRkaW5nLXJpZ2h0LnB4XT1cImlzU2luZ2xlQ29sdW1uKGNvbHVtbikgPyAwIDogNVwiID5cclxuICAgICAgICAgICAgICAgIDxjby1zaW1wbGUtZ3JpZC1jZWxsXHJcbiAgICAgICAgICAgICAgICAgIFtjb2x1bW5dPVwiY29sdW1uXCJcclxuICAgICAgICAgICAgICAgICAgW3Jvd109XCJyb3dcIlxyXG4gICAgICAgICAgICAgICAgICBbZWRpdE1vZGVdPVwiaW5saW5lRWRpdCAmJiBlZGl0dGluZyAmJiByb3dJbmRleCA9PT0gZWRpdFJvd0luZGV4ICYmICFpc1NpbmdsZUNvbHVtbihjb2x1bW4pICYmICFyb3dDb250YWluc1NpbmdsZUNvbHVtbihyb3csIGNvbHVtbnMpXCJcclxuICAgICAgICAgICAgICAgICAgW2ZpZWxkRWRpdE1vZGVdPVwiZWRpdENlbGxJbmRleCA9PT0gY29sdW1uSW5kZXhcIlxyXG4gICAgICAgICAgICAgICAgICAoY2VsbENsaWNrKT1cImhhbmRsZUNlbGxDbGljayhjb2x1bW5JbmRleClcIlxyXG4gICAgICAgICAgICAgICAgPjwvY28tc2ltcGxlLWdyaWQtY2VsbD5cclxuICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiY29sdW1uLnJlc2l6YWJsZVwiIGNsYXNzPVwic2ltcGxlLWdyaWQtY29sdW1uLXNpemVyLXBsYWNlaG9sZGVyXCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9jby1mb3JtPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIGAsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICBGb3JtTWFzdGVyU2VydmljZVxyXG4gIF0sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNpbXBsZUdyaWRDb21wb25lbnQgZXh0ZW5kcyBCYXNlU2ltcGxlR3JpZENvbXBvbmVudCB7XHJcbiAgcHVibGljIHJlYWRvbmx5IGRlZmF1bHRUZXh0QWxpZ246IENvbHVtbkFsaWduID0gQ29sdW1uQWxpZ24uTGVmdDtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY28tc2ltcGxlLWdyaWRcIilcclxuICBwdWJsaWMgc2hvd0NsYXNzKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdrZXlkb3duJywgWyckZXZlbnQnXSlcclxuICBwdWJsaWMgaGFuZGxlS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmlubGluZUVkaXQpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgaWYgKGV2ZW50LmNvZGUgPT09ICdUYWInKSB7XHJcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgIHRoaXMuX25leHRBdmFpbGFibGVDZWxsVG9FZGl0KCFldmVudC5zaGlmdEtleSwgdGhpcy5lZGl0Q2VsbEluZGV4KVxyXG4gICAgICAgIC50aGVuKChpbmRleDogbnVtYmVyKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmVkaXRDZWxsSW5kZXggPSBpbmRleDtcclxuICAgICAgICAgIHRoaXMuX2NoYW5nZURldGVjdGlvbi5tYXJrRm9yQ2hlY2soKTtcclxuICAgICAgICB9KVxyXG4gICAgICB0aGlzLl9kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9XHJcbiAgICBpZiAoZXZlbnQuY29kZSA9PT0gJ0VzY2FwZScpIHtcclxuICAgICAgdGhpcy5jYW5jZWxFZGl0Um93KCk7XHJcbiAgICB9XHJcbiAgICBpZiAoZXZlbnQuY29kZSA9PT0gJ0VudGVyJykge1xyXG4gICAgICB0aGlzLnZhbGlkYXRlQW5kU2F2ZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGVkaXR0aW5nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIGVkaXRSb3dJbmRleDogbnVtYmVyID0gLTE7XHJcbiAgcHVibGljIGVkaXRDZWxsSW5kZXg6IG51bWJlciA9IC0xO1xyXG4gIHB1YmxpYyBzZWxlY3RlZFJvd0luZGV4OiBudW1iZXIgPSAtMTtcclxuICBwdWJsaWMgcm93VG9FZGl0OiBhbnk7XHJcblxyXG4gIHByaXZhdGUgX2RvdWJsZUNsaWNrZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwcml2YXRlIF9uZXdSb3c6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSBfZm9ybU1hc3RlcjogRm9ybU1hc3RlclNlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaXNTaW5nbGVDb2x1bW4oY29sdW1uKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gY29sdW1uLnNpbmdsZUNvbHVtbjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByb3dDb250YWluc1NpbmdsZUNvbHVtbihyb3csIGNvbHVtbnMpOiBib29sZWFuIHtcclxuICAgIGNvbnN0IHNpbmdsZUNvbHVtbiA9IGNvbHVtbnMuZmluZChjb2x1bW4gPT4gdGhpcy5pc1NpbmdsZUNvbHVtbihjb2x1bW4pICYmICEhcm93W2NvbHVtbi5maWVsZF0pXHJcbiAgICByZXR1cm4gISFzaW5nbGVDb2x1bW47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYWRkUm93KCk6IHZvaWQge1xyXG4gICAgY29uc3QgdmFsaWQ6IGJvb2xlYW4gPSB0aGlzLnZhbGlkYXRlQW5kU2F2ZSgpO1xyXG4gICAgdGhpcy5fZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgaWYgKHZhbGlkKSB7XHJcbiAgICAgIHRoaXMuZGF0YS51bnNoaWZ0KHt9KTtcclxuICAgICAgdGhpcy5fbmV3Um93ID0gdHJ1ZTtcclxuICAgICAgdGhpcy5lZGl0Um93SW5kZXggPSAwO1xyXG4gICAgICB0aGlzLl9uZXh0QXZhaWxhYmxlQ2VsbFRvRWRpdCh0cnVlKS50aGVuKChpbmRleDogbnVtYmVyKSA9PiB7XHJcbiAgICAgICAgdGhpcy5lZGl0Q2VsbEluZGV4ID0gaW5kZXg7XHJcbiAgICAgIH0pO1xyXG4gICAgICB0aGlzLmVkaXR0aW5nID0gdHJ1ZTtcclxuICAgICAgdGhpcy5yb3dUb0VkaXQgPSB0aGlzLmRhdGFbMF07XHJcbiAgICAgIHRoaXMuX2RldGVjdENoYW5nZXMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyB2YWxpZGF0ZUFuZFNhdmUoc3RvcEVkaXR0aW5nOiBib29sZWFuID0gdHJ1ZSk6IGJvb2xlYW4ge1xyXG4gICAgaWYgKCF0aGlzLmVkaXR0aW5nKSB7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gICAgY29uc3QgdmFsaWQ6IGJvb2xlYW4gPSB0aGlzLl9mb3JtTWFzdGVyLnN1Ym1pdFNsYXZlcygpO1xyXG4gICAgdGhpcy5fZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgaWYgKHZhbGlkKSB7XHJcbiAgICAgIHRoaXMuX3NhdmVSb3coc3RvcEVkaXR0aW5nKTtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2FuY2VsRWRpdFJvdygpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5lZGl0dGluZykge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5fbmV3Um93KSB7XHJcbiAgICAgIHRoaXMuZGF0YS5zaGlmdCgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5kYXRhW3RoaXMuZWRpdFJvd0luZGV4XSA9IHRoaXMucm93VG9FZGl0O1xyXG4gICAgfVxyXG4gICAgdGhpcy5fbmV3Um93ID0gZmFsc2U7XHJcbiAgICB0aGlzLmVkaXR0aW5nID0gZmFsc2U7XHJcbiAgICB0aGlzLl9kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlQ2xpY2tSb3coZXZlbnQ6IE1vdXNlRXZlbnQsIGluZGV4OiBudW1iZXIpOiB2b2lkIHtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICBpZiAodGhpcy5fZG91YmxlQ2xpY2tlZCkge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnNlbGVjdFRoZVJvdyhpbmRleCk7XHJcbiAgICB9LCAyMDApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNlbGVjdFRoZVJvdyhpbmRleDogbnVtYmVyLCBlbWl0OiBib29sZWFuID0gdHJ1ZSk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRSb3dJbmRleCAhPT0gaW5kZXggJiYgKCh0aGlzLmVkaXR0aW5nICYmIHRoaXMudmFsaWRhdGVBbmRTYXZlKCkpIHx8ICF0aGlzLmVkaXR0aW5nKSkge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkUm93SW5kZXggPSBpbmRleDtcclxuICAgICAgaWYgKGVtaXQpIHtcclxuICAgICAgICB0aGlzLnNlbGVjdFJvdy5uZXh0KHRoaXMuZGF0YVt0aGlzLnNlbGVjdGVkUm93SW5kZXhdKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhpcy5fZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZURibENsaWNrUm93KGV2ZW50OiBNb3VzZUV2ZW50LCBpbmRleDogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB0aGlzLl9kb3VibGVDbGlja2VkID0gdHJ1ZTtcclxuICAgIHRoaXMuZGJsQ2xpY2tSb3cubmV4dCh0aGlzLmRhdGFbaW5kZXhdKTtcclxuICAgIHRoaXMuc2VsZWN0VGhlUm93KGluZGV4LCBmYWxzZSk7XHJcbiAgICBpZiAodGhpcy5pbmxpbmVFZGl0KSB7XHJcbiAgICAgIHRoaXMuZWRpdFJvdyhldmVudCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLl9yZXNldERibENsaWNrKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZWRpdFJvdyhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgdGhpcy5lZGl0Um93SW5kZXggPSB0aGlzLnNlbGVjdGVkUm93SW5kZXg7XHJcbiAgICB0aGlzLnJvd1RvRWRpdCA9IHRoaXMuZGF0YVt0aGlzLmVkaXRSb3dJbmRleF07XHJcbiAgICB0aGlzLmVkaXR0aW5nID0gdHJ1ZTtcclxuICAgIHRoaXMuX25leHRBdmFpbGFibGVDZWxsVG9FZGl0KHRydWUpLnRoZW4oKGluZGV4OiBudW1iZXIpID0+IHtcclxuICAgICAgdGhpcy5lZGl0Q2VsbEluZGV4ID0gaW5kZXg7XHJcbiAgICB9KTtcclxuICAgIHRoaXMuX2RldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVDZWxsQ2xpY2soaW5kZXg6IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5lZGl0Q2VsbEluZGV4ID0gaW5kZXg7XHJcbiAgICB0aGlzLl9kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9yZXNldERibENsaWNrKCk6IHZvaWQge1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuX2RvdWJsZUNsaWNrZWQgPSBmYWxzZTtcclxuICAgIH0sIDUwMCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKlxyXG4gICAqIEBwYXJhbSBuZXh0OyBNb3ZlIHRvIG5leHQgb3IgcHJldmlvdXMgY2VsbFxyXG4gICAqIEBwYXJhbSBzdGFydDsgU3RhcnQgZnJvbSBjZWxsaW5kZXhcclxuICAgKiBAcHJpdmF0ZVxyXG4gICAqL1xyXG4gIHByaXZhdGUgX25leHRBdmFpbGFibGVDZWxsVG9FZGl0KG5leHQ6IGJvb2xlYW4sIHN0YXJ0OiBudW1iZXIgPSAtMSk6IFByb21pc2U8bnVtYmVyPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmU6IEZ1bmN0aW9uLCByZWplY3Q6IEZ1bmN0aW9uKSA9PiB7XHJcbiAgICAgIGNvbnN0IG51bUVkaXRhYmxlQ29sdW1uczogbnVtYmVyID0gdGhpcy5jb2x1bW5zLmZpbHRlcihjID0+ICFjLnJlYWRvbmx5KS5sZW5ndGg7XHJcbiAgICAgIGNvbnN0IHdhbnRlZEluZGV4ID0gc3RhcnQgKyAobmV4dCA/IDEgOiAtMSk7XHJcbiAgICAgIGlmICh3YW50ZWRJbmRleCA+PSBudW1FZGl0YWJsZUNvbHVtbnMpIHtcclxuICAgICAgICB0aGlzLl9nZXROZXh0RWRpdFJvd0luZGV4KClcclxuICAgICAgICAgIC50aGVuKChpbmRleDogbnVtYmVyKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuZWRpdFJvd0luZGV4ID0gaW5kZXg7XHJcbiAgICAgICAgICAgIHJlc29sdmUodGhpcy5fZ2V0TmV4dEVkaXRDZWxsSW5kZXgoMCkpO1xyXG4gICAgICAgICAgfSlcclxuICAgICAgICAgIC5jYXRjaCgoZSkgPT4ge1xyXG4gICAgICAgICAgICByZWplY3QoKTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICB9IGVsc2UgaWYgKHdhbnRlZEluZGV4IDwgMCkge1xyXG4gICAgICAgIHRoaXMuX2dldFByZXZpb3VzRWRpdFJvd0luZGV4KClcclxuICAgICAgICAgIC50aGVuKChpbmRleDogbnVtYmVyKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuZWRpdFJvd0luZGV4ID0gaW5kZXg7XHJcbiAgICAgICAgICAgIHJlc29sdmUodGhpcy5fZ2V0UHJldmlvdXNFZGl0Q2VsbEluZGV4KHRoaXMuY29sdW1ucy5sZW5ndGggLSAxKSk7XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICAgLmNhdGNoKChlKSA9PiB7XHJcbiAgICAgICAgICAgIHJlamVjdCgpO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmVzb2x2ZShuZXh0ID8gdGhpcy5fZ2V0TmV4dEVkaXRDZWxsSW5kZXgoc3RhcnQgKyAxKSA6IHRoaXMuX2dldFByZXZpb3VzRWRpdENlbGxJbmRleChzdGFydCAtIDEpKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9nZXROZXh0RWRpdENlbGxJbmRleChzdGFydDogbnVtYmVyKTogbnVtYmVyIHtcclxuICAgIGZvciAobGV0IGk6IG51bWJlciA9IHN0YXJ0OyBpIDwgdGhpcy5jb2x1bW5zLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIGlmICghdGhpcy5jb2x1bW5zW2ldLnJlYWRvbmx5KSB7XHJcbiAgICAgICAgcmV0dXJuIGk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2dldFByZXZpb3VzRWRpdENlbGxJbmRleChzdGFydDogbnVtYmVyKTogbnVtYmVyIHtcclxuICAgIGZvciAobGV0IGk6IG51bWJlciA9IHN0YXJ0OyBpID49IDA7IGktLSkge1xyXG4gICAgICBpZiAoIXRoaXMuY29sdW1uc1tpXS5yZWFkb25seSkge1xyXG4gICAgICAgIHJldHVybiBpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9nZXROZXh0RWRpdFJvd0luZGV4KCk6IFByb21pc2U8bnVtYmVyPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmU6IEZ1bmN0aW9uLCByZWplY3Q6IEZ1bmN0aW9uKSA9PiB7XHJcbiAgICAgIGxldCBuZXdSb3dJbmRleDogbnVtYmVyID0gMDtcclxuICAgICAgaWYgKHRoaXMuZWRpdFJvd0luZGV4ICsgMSA+PSB0aGlzLmRhdGEubGVuZ3RoKSB7XHJcbiAgICAgICAgbmV3Um93SW5kZXggPSAwO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIG5ld1Jvd0luZGV4ID0gdGhpcy5lZGl0Um93SW5kZXggKyAxO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChuZXdSb3dJbmRleCAhPT0gdGhpcy5lZGl0Um93SW5kZXgpIHsgLy8gZ28gdG8gZGlmZmVyZW50IHJvdyB2YWxpZGF0ZSBjdXJyZW50IG9uZSBmaXJzdFxyXG4gICAgICAgIGlmICh0aGlzLnZhbGlkYXRlQW5kU2F2ZShmYWxzZSkpIHtcclxuICAgICAgICAgIHRoaXMucm93VG9FZGl0ID0gdGhpcy5kYXRhW25ld1Jvd0luZGV4XTtcclxuICAgICAgICAgIHJlc29sdmUobmV3Um93SW5kZXgpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZWplY3QoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmVzb2x2ZShuZXdSb3dJbmRleCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZ2V0UHJldmlvdXNFZGl0Um93SW5kZXgoKTogUHJvbWlzZTxudW1iZXI+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZTogRnVuY3Rpb24sIHJlamVjdDogRnVuY3Rpb24pID0+IHtcclxuICAgICAgbGV0IG5ld1Jvd0luZGV4OiBudW1iZXIgPSAwO1xyXG4gICAgICBpZiAodGhpcy5lZGl0Um93SW5kZXggLSAxIDwgMCkge1xyXG4gICAgICAgIG5ld1Jvd0luZGV4ID0gdGhpcy5kYXRhLmxlbmd0aCAtIDE7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgbmV3Um93SW5kZXggPSB0aGlzLmVkaXRSb3dJbmRleCAtIDE7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKG5ld1Jvd0luZGV4ICE9PSB0aGlzLmVkaXRSb3dJbmRleCkgeyAvLyBnbyB0byBkaWZmZXJlbnQgcm93IHZhbGlkYXRlIGN1cnJlbnQgb25lIGZpcnN0XHJcbiAgICAgICAgaWYgKHRoaXMudmFsaWRhdGVBbmRTYXZlKGZhbHNlKSkge1xyXG4gICAgICAgICAgdGhpcy5yb3dUb0VkaXQgPSB0aGlzLmRhdGFbbmV3Um93SW5kZXhdO1xyXG4gICAgICAgICAgcmVzb2x2ZShuZXdSb3dJbmRleCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHJlamVjdCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByZXNvbHZlKG5ld1Jvd0luZGV4KTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9zYXZlUm93KHN0b3BFZGl0dGluZzogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHtcclxuICAgIC8vIGVtaXQgc2F2ZUV2ZW50XHJcbiAgICBpZiAodGhpcy5yb3dUb0VkaXQpIHtcclxuICAgICAgdGhpcy5zYXZlUm93Lm5leHQodGhpcy5yb3dUb0VkaXQpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5fbmV3Um93ID0gZmFsc2U7XHJcbiAgICBpZiAoc3RvcEVkaXR0aW5nKSB7XHJcbiAgICAgIHRoaXMuZWRpdFJvd0luZGV4ID0gLTE7XHJcbiAgICAgIHRoaXMuZWRpdENlbGxJbmRleCA9IC0xO1xyXG4gICAgICB0aGlzLmVkaXR0aW5nID0gZmFsc2U7XHJcbiAgICAgIHRoaXMucm93VG9FZGl0ID0gdW5kZWZpbmVkO1xyXG4gICAgfVxyXG4gICAgdGhpcy5fZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZGV0ZWN0Q2hhbmdlcygpOiB2b2lkIHtcclxuICAgIHRoaXMuX2NoYW5nZURldGVjdGlvbi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
@@ -3,22 +3,31 @@ import { CommonModule } from "@angular/common";
3
3
  import { SimpleGridComponent } from "./simple-grid.component";
4
4
  import { DragDropModule } from "@angular/cdk/drag-drop";
5
5
  import { SimpleGridColumnDirective } from "./simple-grid-column.directive";
6
+ import { GridToolbarModule } from "../grid-toolbar/grid-toolbar.module";
7
+ import { InputTextModule } from "../input-text/input-text.module";
8
+ import { SimpleGridCellComponent } from "./simple-grid-cell.component";
9
+ import { FormModule } from "../form/form.module";
6
10
  export class SimpleGridModule {
7
11
  }
8
12
  SimpleGridModule.decorators = [
9
13
  { type: NgModule, args: [{
10
14
  imports: [
11
15
  CommonModule,
12
- DragDropModule
16
+ DragDropModule,
17
+ GridToolbarModule,
18
+ InputTextModule,
19
+ FormModule
13
20
  ],
14
21
  declarations: [
15
22
  SimpleGridComponent,
23
+ SimpleGridCellComponent,
16
24
  SimpleGridColumnDirective
17
25
  ],
18
26
  exports: [
19
27
  SimpleGridComponent,
28
+ SimpleGridCellComponent,
20
29
  SimpleGridColumnDirective
21
30
  ]
22
31
  },] }
23
32
  ];
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLWdyaWQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3NpbXBsZS1ncmlkL3NpbXBsZS1ncmlkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDdEQsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFnQnpFLE1BQU0sT0FBTyxnQkFBZ0I7OztZQWQ1QixRQUFRLFNBQUM7Z0JBQ04sT0FBTyxFQUFFO29CQUNMLFlBQVk7b0JBQ1osY0FBYztpQkFDakI7Z0JBQ0gsWUFBWSxFQUFFO29CQUNaLG1CQUFtQjtvQkFDbkIseUJBQXlCO2lCQUMxQjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsbUJBQW1CO29CQUNuQix5QkFBeUI7aUJBQzFCO2FBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nTW9kdWxlfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQge1NpbXBsZUdyaWRDb21wb25lbnR9IGZyb20gXCIuL3NpbXBsZS1ncmlkLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge0RyYWdEcm9wTW9kdWxlfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL2RyYWctZHJvcFwiO1xyXG5pbXBvcnQge1NpbXBsZUdyaWRDb2x1bW5EaXJlY3RpdmV9IGZyb20gXCIuL3NpbXBsZS1ncmlkLWNvbHVtbi5kaXJlY3RpdmVcIjtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgICBpbXBvcnRzOiBbXHJcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgICAgIERyYWdEcm9wTW9kdWxlXHJcbiAgICBdLFxyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgU2ltcGxlR3JpZENvbXBvbmVudCxcclxuICAgIFNpbXBsZUdyaWRDb2x1bW5EaXJlY3RpdmVcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtcclxuICAgIFNpbXBsZUdyaWRDb21wb25lbnQsXHJcbiAgICBTaW1wbGVHcmlkQ29sdW1uRGlyZWN0aXZlXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2ltcGxlR3JpZE1vZHVsZSB7IH1cclxuIl19
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLWdyaWQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3NpbXBsZS1ncmlkL3NpbXBsZS1ncmlkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDdEQsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDekUsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDdEUsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQ2hFLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ3JFLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQXFCL0MsTUFBTSxPQUFPLGdCQUFnQjs7O1lBbkI1QixRQUFRLFNBQUM7Z0JBQ1IsT0FBTyxFQUFFO29CQUNQLFlBQVk7b0JBQ1osY0FBYztvQkFDZCxpQkFBaUI7b0JBQ2pCLGVBQWU7b0JBQ2YsVUFBVTtpQkFDWDtnQkFDRCxZQUFZLEVBQUU7b0JBQ1osbUJBQW1CO29CQUNuQix1QkFBdUI7b0JBQ3ZCLHlCQUF5QjtpQkFDMUI7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLG1CQUFtQjtvQkFDbkIsdUJBQXVCO29CQUN2Qix5QkFBeUI7aUJBQzFCO2FBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nTW9kdWxlfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQge1NpbXBsZUdyaWRDb21wb25lbnR9IGZyb20gXCIuL3NpbXBsZS1ncmlkLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge0RyYWdEcm9wTW9kdWxlfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL2RyYWctZHJvcFwiO1xyXG5pbXBvcnQge1NpbXBsZUdyaWRDb2x1bW5EaXJlY3RpdmV9IGZyb20gXCIuL3NpbXBsZS1ncmlkLWNvbHVtbi5kaXJlY3RpdmVcIjtcclxuaW1wb3J0IHtHcmlkVG9vbGJhck1vZHVsZX0gZnJvbSBcIi4uL2dyaWQtdG9vbGJhci9ncmlkLXRvb2xiYXIubW9kdWxlXCI7XHJcbmltcG9ydCB7SW5wdXRUZXh0TW9kdWxlfSBmcm9tIFwiLi4vaW5wdXQtdGV4dC9pbnB1dC10ZXh0Lm1vZHVsZVwiO1xyXG5pbXBvcnQge1NpbXBsZUdyaWRDZWxsQ29tcG9uZW50fSBmcm9tIFwiLi9zaW1wbGUtZ3JpZC1jZWxsLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge0Zvcm1Nb2R1bGV9IGZyb20gXCIuLi9mb3JtL2Zvcm0ubW9kdWxlXCI7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIERyYWdEcm9wTW9kdWxlLFxyXG4gICAgR3JpZFRvb2xiYXJNb2R1bGUsXHJcbiAgICBJbnB1dFRleHRNb2R1bGUsXHJcbiAgICBGb3JtTW9kdWxlXHJcbiAgXSxcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIFNpbXBsZUdyaWRDb21wb25lbnQsXHJcbiAgICBTaW1wbGVHcmlkQ2VsbENvbXBvbmVudCxcclxuICAgIFNpbXBsZUdyaWRDb2x1bW5EaXJlY3RpdmVcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtcclxuICAgIFNpbXBsZUdyaWRDb21wb25lbnQsXHJcbiAgICBTaW1wbGVHcmlkQ2VsbENvbXBvbmVudCxcclxuICAgIFNpbXBsZUdyaWRDb2x1bW5EaXJlY3RpdmVcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTaW1wbGVHcmlkTW9kdWxlIHsgfVxyXG4iXX0=
@@ -7,6 +7,7 @@ export const NUMBER_INPUTS_KEY_DOWN_WHITE_LIST = [
7
7
  KeyboardCode.Down,
8
8
  KeyboardCode.Up,
9
9
  KeyboardCode.Tab,
10
+ KeyboardCode.Enter,
10
11
  KeyboardCode.Home,
11
12
  KeyboardCode.End,
12
13
  KeyboardCode.Delete,
@@ -41,4 +42,4 @@ export const NUMBER_INPUTS_KEY_DOWN_WHITE_LIST = [
41
42
  KeyboardCode.NumpadEight,
42
43
  KeyboardCode.NumpadNine
43
44
  ];
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWlucHV0cy1rZXktZG93bi13aGl0ZS1saXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZWNvbXBvbmVudHMvc3JjL2xpYi9jb3JlL2NvbnN0YW50L251bWJlci1pbnB1dHMta2V5LWRvd24td2hpdGUtbGlzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFeEQsTUFBTSxDQUFDLE1BQU0saUNBQWlDLEdBQW1CO0lBQzdELCtDQUErQztJQUMvQyxZQUFZLENBQUMsSUFBSTtJQUNqQixZQUFZLENBQUMsRUFBRTtJQUNmLFlBQVksQ0FBQyxLQUFLO0lBQ2xCLFlBQVksQ0FBQyxJQUFJO0lBQ2pCLFlBQVksQ0FBQyxFQUFFO0lBQ2YsWUFBWSxDQUFDLEdBQUc7SUFDaEIsWUFBWSxDQUFDLElBQUk7SUFDakIsWUFBWSxDQUFDLEdBQUc7SUFDaEIsWUFBWSxDQUFDLE1BQU07SUFDbkIsWUFBWSxDQUFDLE1BQU07SUFDbkIsWUFBWSxDQUFDLEtBQUs7SUFDbEIsWUFBWSxDQUFDLFNBQVM7SUFFdEIsOEJBQThCO0lBQzlCLFlBQVksQ0FBQyxLQUFLO0lBQ2xCLFlBQVksQ0FBQyxNQUFNO0lBQ25CLFlBQVksQ0FBQyxZQUFZO0lBQ3pCLFlBQVksQ0FBQyxJQUFJO0lBQ2pCLFlBQVksQ0FBQyxHQUFHO0lBQ2hCLFlBQVksQ0FBQyxHQUFHO0lBQ2hCLFlBQVksQ0FBQyxLQUFLO0lBQ2xCLFlBQVksQ0FBQyxJQUFJO0lBQ2pCLFlBQVksQ0FBQyxJQUFJO0lBQ2pCLFlBQVksQ0FBQyxHQUFHO0lBQ2hCLFlBQVksQ0FBQyxLQUFLO0lBQ2xCLFlBQVksQ0FBQyxLQUFLO0lBQ2xCLFlBQVksQ0FBQyxJQUFJO0lBQ2pCLFlBQVksQ0FBQyxLQUFLO0lBQ2xCLFlBQVksQ0FBQyxZQUFZO0lBQ3pCLFlBQVksQ0FBQyxTQUFTO0lBQ3RCLFlBQVksQ0FBQyxVQUFVO0lBQ3ZCLFlBQVksQ0FBQyxTQUFTO0lBQ3RCLFlBQVksQ0FBQyxTQUFTO0lBQ3RCLFlBQVksQ0FBQyxXQUFXO0lBQ3hCLFlBQVksQ0FBQyxVQUFVO0lBQ3ZCLFlBQVksQ0FBQyxVQUFVO0lBQ3ZCLFlBQVksQ0FBQyxTQUFTO0lBQ3RCLFlBQVksQ0FBQyxXQUFXO0lBQ3hCLFlBQVksQ0FBQyxXQUFXO0lBQ3hCLFlBQVksQ0FBQyxVQUFVO0NBQzFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0tleWJvYXJkQ29kZX0gZnJvbSBcIi4uL2VudW0va2V5Ym9hcmQtY29kZS5lbnVtXCI7XHJcblxyXG5leHBvcnQgY29uc3QgTlVNQkVSX0lOUFVUU19LRVlfRE9XTl9XSElURV9MSVNUOiBLZXlib2FyZENvZGVbXSA9IFtcclxuICAgIC8qIG5hdmlnYXRpb24gYW5kIGZ1bmN0aW9uYWwgdXRpbGl0eSBidXR0b25zICovXHJcbiAgICBLZXlib2FyZENvZGUuTGVmdCxcclxuICAgIEtleWJvYXJkQ29kZS5VcCxcclxuICAgIEtleWJvYXJkQ29kZS5SaWdodCxcclxuICAgIEtleWJvYXJkQ29kZS5Eb3duLFxyXG4gICAgS2V5Ym9hcmRDb2RlLlVwLFxyXG4gICAgS2V5Ym9hcmRDb2RlLlRhYixcclxuICAgIEtleWJvYXJkQ29kZS5Ib21lLFxyXG4gICAgS2V5Ym9hcmRDb2RlLkVuZCxcclxuICAgIEtleWJvYXJkQ29kZS5EZWxldGUsXHJcbiAgICBLZXlib2FyZENvZGUuSW5zZXJ0LFxyXG4gICAgS2V5Ym9hcmRDb2RlLlNoaWZ0LFxyXG4gICAgS2V5Ym9hcmRDb2RlLkJhY2tzcGFjZSxcclxuXHJcbiAgICAvKiBhY3R1YWwgbnVtYmVyIGlucHV0IHBhcnQgKi9cclxuICAgIEtleWJvYXJkQ29kZS5Db21tYSxcclxuICAgIEtleWJvYXJkQ29kZS5QZXJpb2QsXHJcbiAgICBLZXlib2FyZENvZGUuRGVjaW1hbFBvaW50LFxyXG4gICAgS2V5Ym9hcmRDb2RlLlplcm8sXHJcbiAgICBLZXlib2FyZENvZGUuT25lLFxyXG4gICAgS2V5Ym9hcmRDb2RlLlR3byxcclxuICAgIEtleWJvYXJkQ29kZS5UaHJlZSxcclxuICAgIEtleWJvYXJkQ29kZS5Gb3VyLFxyXG4gICAgS2V5Ym9hcmRDb2RlLkZpdmUsXHJcbiAgICBLZXlib2FyZENvZGUuU2l4LFxyXG4gICAgS2V5Ym9hcmRDb2RlLlNldmVuLFxyXG4gICAgS2V5Ym9hcmRDb2RlLkVpZ2h0LFxyXG4gICAgS2V5Ym9hcmRDb2RlLk5pbmUsXHJcbiAgICBLZXlib2FyZENvZGUuTWludXMsXHJcbiAgICBLZXlib2FyZENvZGUuTWludXNGaXJlRm94LFxyXG4gICAgS2V5Ym9hcmRDb2RlLlN1YnN0cmFjdCxcclxuICAgIEtleWJvYXJkQ29kZS5OdW1wYWRaZXJvLFxyXG4gICAgS2V5Ym9hcmRDb2RlLk51bXBhZE9uZSxcclxuICAgIEtleWJvYXJkQ29kZS5OdW1wYWRUd28sXHJcbiAgICBLZXlib2FyZENvZGUuTnVtcGFkVGhyZWUsXHJcbiAgICBLZXlib2FyZENvZGUuTnVtcGFkRm91cixcclxuICAgIEtleWJvYXJkQ29kZS5OdW1wYWRGaXZlLFxyXG4gICAgS2V5Ym9hcmRDb2RlLk51bXBhZFNpeCxcclxuICAgIEtleWJvYXJkQ29kZS5OdW1wYWRTZXZlbixcclxuICAgIEtleWJvYXJkQ29kZS5OdW1wYWRFaWdodCxcclxuICAgIEtleWJvYXJkQ29kZS5OdW1wYWROaW5lXHJcbl07Il19
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWlucHV0cy1rZXktZG93bi13aGl0ZS1saXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZWNvbXBvbmVudHMvc3JjL2xpYi9jb3JlL2NvbnN0YW50L251bWJlci1pbnB1dHMta2V5LWRvd24td2hpdGUtbGlzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFeEQsTUFBTSxDQUFDLE1BQU0saUNBQWlDLEdBQW1CO0lBQzdELCtDQUErQztJQUMvQyxZQUFZLENBQUMsSUFBSTtJQUNqQixZQUFZLENBQUMsRUFBRTtJQUNmLFlBQVksQ0FBQyxLQUFLO0lBQ2xCLFlBQVksQ0FBQyxJQUFJO0lBQ2pCLFlBQVksQ0FBQyxFQUFFO0lBQ2YsWUFBWSxDQUFDLEdBQUc7SUFDaEIsWUFBWSxDQUFDLEtBQUs7SUFDbEIsWUFBWSxDQUFDLElBQUk7SUFDakIsWUFBWSxDQUFDLEdBQUc7SUFDaEIsWUFBWSxDQUFDLE1BQU07SUFDbkIsWUFBWSxDQUFDLE1BQU07SUFDbkIsWUFBWSxDQUFDLEtBQUs7SUFDbEIsWUFBWSxDQUFDLFNBQVM7SUFFdEIsOEJBQThCO0lBQzlCLFlBQVksQ0FBQyxLQUFLO0lBQ2xCLFlBQVksQ0FBQyxNQUFNO0lBQ25CLFlBQVksQ0FBQyxZQUFZO0lBQ3pCLFlBQVksQ0FBQyxJQUFJO0lBQ2pCLFlBQVksQ0FBQyxHQUFHO0lBQ2hCLFlBQVksQ0FBQyxHQUFHO0lBQ2hCLFlBQVksQ0FBQyxLQUFLO0lBQ2xCLFlBQVksQ0FBQyxJQUFJO0lBQ2pCLFlBQVksQ0FBQyxJQUFJO0lBQ2pCLFlBQVksQ0FBQyxHQUFHO0lBQ2hCLFlBQVksQ0FBQyxLQUFLO0lBQ2xCLFlBQVksQ0FBQyxLQUFLO0lBQ2xCLFlBQVksQ0FBQyxJQUFJO0lBQ2pCLFlBQVksQ0FBQyxLQUFLO0lBQ2xCLFlBQVksQ0FBQyxZQUFZO0lBQ3pCLFlBQVksQ0FBQyxTQUFTO0lBQ3RCLFlBQVksQ0FBQyxVQUFVO0lBQ3ZCLFlBQVksQ0FBQyxTQUFTO0lBQ3RCLFlBQVksQ0FBQyxTQUFTO0lBQ3RCLFlBQVksQ0FBQyxXQUFXO0lBQ3hCLFlBQVksQ0FBQyxVQUFVO0lBQ3ZCLFlBQVksQ0FBQyxVQUFVO0lBQ3ZCLFlBQVksQ0FBQyxTQUFTO0lBQ3RCLFlBQVksQ0FBQyxXQUFXO0lBQ3hCLFlBQVksQ0FBQyxXQUFXO0lBQ3hCLFlBQVksQ0FBQyxVQUFVO0NBQzFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0tleWJvYXJkQ29kZX0gZnJvbSBcIi4uL2VudW0va2V5Ym9hcmQtY29kZS5lbnVtXCI7XHJcblxyXG5leHBvcnQgY29uc3QgTlVNQkVSX0lOUFVUU19LRVlfRE9XTl9XSElURV9MSVNUOiBLZXlib2FyZENvZGVbXSA9IFtcclxuICAgIC8qIG5hdmlnYXRpb24gYW5kIGZ1bmN0aW9uYWwgdXRpbGl0eSBidXR0b25zICovXHJcbiAgICBLZXlib2FyZENvZGUuTGVmdCxcclxuICAgIEtleWJvYXJkQ29kZS5VcCxcclxuICAgIEtleWJvYXJkQ29kZS5SaWdodCxcclxuICAgIEtleWJvYXJkQ29kZS5Eb3duLFxyXG4gICAgS2V5Ym9hcmRDb2RlLlVwLFxyXG4gICAgS2V5Ym9hcmRDb2RlLlRhYixcclxuICAgIEtleWJvYXJkQ29kZS5FbnRlcixcclxuICAgIEtleWJvYXJkQ29kZS5Ib21lLFxyXG4gICAgS2V5Ym9hcmRDb2RlLkVuZCxcclxuICAgIEtleWJvYXJkQ29kZS5EZWxldGUsXHJcbiAgICBLZXlib2FyZENvZGUuSW5zZXJ0LFxyXG4gICAgS2V5Ym9hcmRDb2RlLlNoaWZ0LFxyXG4gICAgS2V5Ym9hcmRDb2RlLkJhY2tzcGFjZSxcclxuXHJcbiAgICAvKiBhY3R1YWwgbnVtYmVyIGlucHV0IHBhcnQgKi9cclxuICAgIEtleWJvYXJkQ29kZS5Db21tYSxcclxuICAgIEtleWJvYXJkQ29kZS5QZXJpb2QsXHJcbiAgICBLZXlib2FyZENvZGUuRGVjaW1hbFBvaW50LFxyXG4gICAgS2V5Ym9hcmRDb2RlLlplcm8sXHJcbiAgICBLZXlib2FyZENvZGUuT25lLFxyXG4gICAgS2V5Ym9hcmRDb2RlLlR3byxcclxuICAgIEtleWJvYXJkQ29kZS5UaHJlZSxcclxuICAgIEtleWJvYXJkQ29kZS5Gb3VyLFxyXG4gICAgS2V5Ym9hcmRDb2RlLkZpdmUsXHJcbiAgICBLZXlib2FyZENvZGUuU2l4LFxyXG4gICAgS2V5Ym9hcmRDb2RlLlNldmVuLFxyXG4gICAgS2V5Ym9hcmRDb2RlLkVpZ2h0LFxyXG4gICAgS2V5Ym9hcmRDb2RlLk5pbmUsXHJcbiAgICBLZXlib2FyZENvZGUuTWludXMsXHJcbiAgICBLZXlib2FyZENvZGUuTWludXNGaXJlRm94LFxyXG4gICAgS2V5Ym9hcmRDb2RlLlN1YnN0cmFjdCxcclxuICAgIEtleWJvYXJkQ29kZS5OdW1wYWRaZXJvLFxyXG4gICAgS2V5Ym9hcmRDb2RlLk51bXBhZE9uZSxcclxuICAgIEtleWJvYXJkQ29kZS5OdW1wYWRUd28sXHJcbiAgICBLZXlib2FyZENvZGUuTnVtcGFkVGhyZWUsXHJcbiAgICBLZXlib2FyZENvZGUuTnVtcGFkRm91cixcclxuICAgIEtleWJvYXJkQ29kZS5OdW1wYWRGaXZlLFxyXG4gICAgS2V5Ym9hcmRDb2RlLk51bXBhZFNpeCxcclxuICAgIEtleWJvYXJkQ29kZS5OdW1wYWRTZXZlbixcclxuICAgIEtleWJvYXJkQ29kZS5OdW1wYWRFaWdodCxcclxuICAgIEtleWJvYXJkQ29kZS5OdW1wYWROaW5lXHJcbl07XHJcbiJdfQ==
@@ -11,6 +11,8 @@ export * from './lib/components/co-dialog/co-dialog.module';
11
11
  export * from './lib/components/co-dialog/co-dialog.component';
12
12
  export * from './lib/components/co-dialog-prompt/co-dialog-prompt.module';
13
13
  export * from './lib/components/co-dialog-prompt/co-dialog-prompt.component';
14
+ export * from './lib/components/co-dialog-wizard/co-dialog-wizard.module';
15
+ export * from './lib/components/co-dialog-wizard/co-dialog-wizard.component';
14
16
  export * from './lib/components/co-kanban/co-kanban.module';
15
17
  export * from './lib/components/co-kanban/co-kanban.component';
16
18
  export * from './lib/components/co-schedule/co-schedule.module';
@@ -76,4 +78,4 @@ export * from './lib/components/carousel-3d/carousel-3d.component';
76
78
  export * from './lib/components/carousel-3d/carousel-3d.module';
77
79
  export * from './lib/pipes/price-display.pipe';
78
80
  export * from './lib/pipes/price-display-pipe.module';
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2NvcmVjb21wb25lbnRzL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDJEQUEyRCxDQUFDO0FBQzFFLGNBQWMsOERBQThELENBQUM7QUFDN0UsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsMkRBQTJELENBQUM7QUFDMUUsY0FBYyw4REFBOEQsQ0FBQztBQUM3RSxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsMERBQTBELENBQUM7QUFDekUsY0FBYyxpRkFBaUYsQ0FBQztBQUNoRyxjQUFjLG9GQUFvRixDQUFDO0FBQ25HLGNBQWMseURBQXlELENBQUM7QUFDeEUsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLDZEQUE2RCxDQUFDO0FBQzVFLGNBQWMsZ0VBQWdFLENBQUM7QUFDL0UsY0FBYyxpRUFBaUUsQ0FBQztBQUNoRixjQUFjLG9FQUFvRSxDQUFDO0FBQ25GLGNBQWMsK0RBQStELENBQUM7QUFDOUUsY0FBYyxrRUFBa0UsQ0FBQztBQUNqRixjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyx1REFBdUQsQ0FBQztBQUN0RSxjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMseURBQXlELENBQUM7QUFDeEUsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLDZEQUE2RCxDQUFDO0FBQzVFLGNBQWMsZ0VBQWdFLENBQUM7QUFDL0UsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLHFEQUFxRCxDQUFDO0FBQ3BFLGNBQWMsd0RBQXdELENBQUM7QUFDdkUsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLGlFQUFpRSxDQUFDO0FBQ2hGLGNBQWMsb0VBQW9FLENBQUM7QUFDbkYsY0FBYyxxREFBcUQsQ0FBQztBQUNwRSxjQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLGNBQWMsMkRBQTJELENBQUM7QUFDMUUsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsdUNBQXVDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGNvcmVjb21wb25lbnRzXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hcnRpY2xlLXRpbGUvYXJ0aWNsZS10aWxlLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2FydGljbGUtdGlsZS9hcnRpY2xlLXRpbGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2J1dHRvbi1kcm9wLWRvd24vYnV0dG9uLWRyb3AtZG93bi5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9idXR0b24tZHJvcC1kb3duL2J1dHRvbi1kcm9wLWRvd24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvY28tZGlhbG9nL2NvLWRpYWxvZy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9jby1kaWFsb2cvY28tZGlhbG9nLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvLWRpYWxvZy1wcm9tcHQvY28tZGlhbG9nLXByb21wdC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9jby1kaWFsb2ctcHJvbXB0L2NvLWRpYWxvZy1wcm9tcHQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvY28ta2FuYmFuL2NvLWthbmJhbi5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9jby1rYW5iYW4vY28ta2FuYmFuLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvLXNjaGVkdWxlL2NvLXNjaGVkdWxlLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvLXNjaGVkdWxlL2NvLXNjaGVkdWxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvLXNpZGViYXIvY28tc2lkZWJhci5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9jby1zaWRlYmFyL2NvLXNpZGViYXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvY28tdG9nZ2xlL2NvLXRvZ2dsZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9jby10b2dnbGUvY28tdG9nZ2xlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvbGxhcHNpYmxlL2NvbGxhcHNpYmxlLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvbGxhcHNpYmxlL2NvbGxhcHNpYmxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Ryb3AtZG93bi1saXN0L2Ryb3AtZG93bi5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9kcm9wLWRvd24tbGlzdC9kcm9wLWRvd24tbGlzdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9mb3JtL2Zvcm0ubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZm9ybS9mb3JtLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlL3NlcnZpY2UvZm9ybS1tYXN0ZXIuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2dyaWQvY28tZ3JpZC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9ncmlkL2NvLWdyaWQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvaWNvbi9pY29uLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2ljb24vaWNvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbWFnZS9pbWFnZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbWFnZS9pbWFnZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbnB1dC1jaGVja2JveC9pbnB1dC1jaGVja2JveC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbnB1dC1jaGVja2JveC9pbnB1dC1jaGVja2JveC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbnB1dC1jaGVja2JveC1tdWx0aS1zZWxlY3QvaW5wdXQtY2hlY2tib3gtbXVsdGktc2VsZWN0Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2lucHV0LWNoZWNrYm94LW11bHRpLXNlbGVjdC9pbnB1dC1jaGVja2JveC1tdWx0aS1zZWxlY3QuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvaW5wdXQtY29tYm8tYm94L2lucHV0LWNvbWJvLWJveC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbnB1dC1jb21iby1ib3gvaW5wdXQtY29tYm8tYm94LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2lucHV0LWRhdGUtcGlja2VyL2lucHV0LWRhdGUtcGlja2VyLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2lucHV0LWRhdGUtcGlja2VyL2lucHV0LWRhdGUtcGlja2VyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2lucHV0LW51bWJlci1waWNrZXIvaW5wdXQtbnVtYmVyLXBpY2tlci5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbnB1dC1udW1iZXItcGlja2VyL2lucHV0LW51bWJlci1waWNrZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvaW5wdXQtcmFkaW8tYnV0dG9uL2lucHV0LXJhZGlvLWJ1dHRvbi5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbnB1dC1yYWRpby1idXR0b24vaW5wdXQtcmFkaW8tYnV0dG9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2lucHV0LXRleHQvaW5wdXQtdGV4dC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbnB1dC10ZXh0L2lucHV0LXRleHQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvaW5wdXQtdGV4dGFyZWEvaW5wdXQtdGV4dGFyZWEubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvaW5wdXQtdGV4dGFyZWEvaW5wdXQtdGV4dGFyZWEuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbGV2ZWwtaW5kaWNhdG9yL2xldmVsLWluZGljYXRvci5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9sZXZlbC1pbmRpY2F0b3IvbGV2ZWwtaW5kaWNhdG9yLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL211bHRpLXNlbGVjdC1saXN0L211bHRpLXNlbGVjdC1saXN0Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL211bHRpLXNlbGVjdC1saXN0L211bHRpLXNlbGVjdC1saXN0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3Bpdm90L2NvLXBpdm90Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3Bpdm90L2NvLXBpdm90LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3BvcHVwL3BvcHVwLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3BvcHVwL3RleHQtaW5wdXQtcG9wdXAuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvcG9wdXAvcG9wdXAtd2luZG93LXNoZWxsLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3BvcHVwL3BvcHVwLW1lc3NhZ2UtZGlzcGxheS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9wb3B1cC9wb3B1cC1idXR0b25zLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RpbGUvdGlsZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy90aWxlL3RpbGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvcmUvZW51bS9jb3JlLWNvbXBvbmVudHMtaWNvbi5lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvcG9wdXAvc2VydmljZS9wcm9tcHQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2ljb24vaWNvbi1jYWNoZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYmFzZS9jb21wb25lbnQtaW50ZXJmYWNlLW5hbWUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9jby1yaWNoLXRleHQtZWRpdG9yL2NvLXJpY2gtdGV4dC1lZGl0b3IubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvY28tcmljaC10ZXh0LWVkaXRvci9jby1yaWNoLXRleHQtZWRpdG9yLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2lucHV0LWxpc3Rib3gvaW5wdXQtbGlzdGJveC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbnB1dC1saXN0Ym94L2lucHV0LWxpc3Rib3guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvc2ltcGxlLWdyaWQvc2ltcGxlLWdyaWQtY29sdW1uLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3NpbXBsZS1ncmlkL3NpbXBsZS1ncmlkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3NpbXBsZS1ncmlkL3NpbXBsZS1ncmlkLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Nhcm91c2VsLTNkL2Nhcm91c2VsLTNkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Nhcm91c2VsLTNkL2Nhcm91c2VsLTNkLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy9wcmljZS1kaXNwbGF5LnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvcHJpY2UtZGlzcGxheS1waXBlLm1vZHVsZSc7XG5cbiJdfQ==
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2NvcmVjb21wb25lbnRzL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDJEQUEyRCxDQUFDO0FBQzFFLGNBQWMsOERBQThELENBQUM7QUFDN0UsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsMkRBQTJELENBQUM7QUFDMUUsY0FBYyw4REFBOEQsQ0FBQztBQUM3RSxjQUFjLDJEQUEyRCxDQUFDO0FBQzFFLGNBQWMsOERBQThELENBQUM7QUFDN0UsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsMERBQTBELENBQUM7QUFDekUsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyx1REFBdUQsQ0FBQztBQUN0RSxjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsaUZBQWlGLENBQUM7QUFDaEcsY0FBYyxvRkFBb0YsQ0FBQztBQUNuRyxjQUFjLHlEQUF5RCxDQUFDO0FBQ3hFLGNBQWMsNERBQTRELENBQUM7QUFDM0UsY0FBYyw2REFBNkQsQ0FBQztBQUM1RSxjQUFjLGdFQUFnRSxDQUFDO0FBQy9FLGNBQWMsaUVBQWlFLENBQUM7QUFDaEYsY0FBYyxvRUFBb0UsQ0FBQztBQUNuRixjQUFjLCtEQUErRCxDQUFDO0FBQzlFLGNBQWMsa0VBQWtFLENBQUM7QUFDakYsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsdURBQXVELENBQUM7QUFDdEUsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLHlEQUF5RCxDQUFDO0FBQ3hFLGNBQWMsNERBQTRELENBQUM7QUFDM0UsY0FBYyw2REFBNkQsQ0FBQztBQUM1RSxjQUFjLGdFQUFnRSxDQUFDO0FBQy9FLGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyxxREFBcUQsQ0FBQztBQUNwRSxjQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyxpRUFBaUUsQ0FBQztBQUNoRixjQUFjLG9FQUFvRSxDQUFDO0FBQ25GLGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLDJEQUEyRCxDQUFDO0FBQzFFLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLHVDQUF1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBjb3JlY29tcG9uZW50c1xuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXJ0aWNsZS10aWxlL2FydGljbGUtdGlsZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hcnRpY2xlLXRpbGUvYXJ0aWNsZS10aWxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2J1dHRvbi9idXR0b24ubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9idXR0b24tZHJvcC1kb3duL2J1dHRvbi1kcm9wLWRvd24ubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYnV0dG9uLWRyb3AtZG93bi9idXR0b24tZHJvcC1kb3duLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvLWRpYWxvZy9jby1kaWFsb2cubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvY28tZGlhbG9nL2NvLWRpYWxvZy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9jby1kaWFsb2ctcHJvbXB0L2NvLWRpYWxvZy1wcm9tcHQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvY28tZGlhbG9nLXByb21wdC9jby1kaWFsb2ctcHJvbXB0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvLWRpYWxvZy13aXphcmQvY28tZGlhbG9nLXdpemFyZC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9jby1kaWFsb2ctd2l6YXJkL2NvLWRpYWxvZy13aXphcmQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvY28ta2FuYmFuL2NvLWthbmJhbi5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9jby1rYW5iYW4vY28ta2FuYmFuLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvLXNjaGVkdWxlL2NvLXNjaGVkdWxlLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvLXNjaGVkdWxlL2NvLXNjaGVkdWxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvLXNpZGViYXIvY28tc2lkZWJhci5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9jby1zaWRlYmFyL2NvLXNpZGViYXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvY28tdG9nZ2xlL2NvLXRvZ2dsZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9jby10b2dnbGUvY28tdG9nZ2xlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvbGxhcHNpYmxlL2NvbGxhcHNpYmxlLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvbGxhcHNpYmxlL2NvbGxhcHNpYmxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Ryb3AtZG93bi1saXN0L2Ryb3AtZG93bi5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9kcm9wLWRvd24tbGlzdC9kcm9wLWRvd24tbGlzdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9mb3JtL2Zvcm0ubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZm9ybS9mb3JtLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlL3NlcnZpY2UvZm9ybS1tYXN0ZXIuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2dyaWQvY28tZ3JpZC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9ncmlkL2NvLWdyaWQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvaWNvbi9pY29uLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2ljb24vaWNvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbWFnZS9pbWFnZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbWFnZS9pbWFnZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbnB1dC1jaGVja2JveC9pbnB1dC1jaGVja2JveC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbnB1dC1jaGVja2JveC9pbnB1dC1jaGVja2JveC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbnB1dC1jaGVja2JveC1tdWx0aS1zZWxlY3QvaW5wdXQtY2hlY2tib3gtbXVsdGktc2VsZWN0Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2lucHV0LWNoZWNrYm94LW11bHRpLXNlbGVjdC9pbnB1dC1jaGVja2JveC1tdWx0aS1zZWxlY3QuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvaW5wdXQtY29tYm8tYm94L2lucHV0LWNvbWJvLWJveC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbnB1dC1jb21iby1ib3gvaW5wdXQtY29tYm8tYm94LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2lucHV0LWRhdGUtcGlja2VyL2lucHV0LWRhdGUtcGlja2VyLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2lucHV0LWRhdGUtcGlja2VyL2lucHV0LWRhdGUtcGlja2VyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2lucHV0LW51bWJlci1waWNrZXIvaW5wdXQtbnVtYmVyLXBpY2tlci5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbnB1dC1udW1iZXItcGlja2VyL2lucHV0LW51bWJlci1waWNrZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvaW5wdXQtcmFkaW8tYnV0dG9uL2lucHV0LXJhZGlvLWJ1dHRvbi5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbnB1dC1yYWRpby1idXR0b24vaW5wdXQtcmFkaW8tYnV0dG9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2lucHV0LXRleHQvaW5wdXQtdGV4dC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbnB1dC10ZXh0L2lucHV0LXRleHQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvaW5wdXQtdGV4dGFyZWEvaW5wdXQtdGV4dGFyZWEubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvaW5wdXQtdGV4dGFyZWEvaW5wdXQtdGV4dGFyZWEuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbGV2ZWwtaW5kaWNhdG9yL2xldmVsLWluZGljYXRvci5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9sZXZlbC1pbmRpY2F0b3IvbGV2ZWwtaW5kaWNhdG9yLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL211bHRpLXNlbGVjdC1saXN0L211bHRpLXNlbGVjdC1saXN0Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL211bHRpLXNlbGVjdC1saXN0L211bHRpLXNlbGVjdC1saXN0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3Bpdm90L2NvLXBpdm90Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3Bpdm90L2NvLXBpdm90LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3BvcHVwL3BvcHVwLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3BvcHVwL3RleHQtaW5wdXQtcG9wdXAuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvcG9wdXAvcG9wdXAtd2luZG93LXNoZWxsLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3BvcHVwL3BvcHVwLW1lc3NhZ2UtZGlzcGxheS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9wb3B1cC9wb3B1cC1idXR0b25zLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RpbGUvdGlsZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy90aWxlL3RpbGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvcmUvZW51bS9jb3JlLWNvbXBvbmVudHMtaWNvbi5lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvcG9wdXAvc2VydmljZS9wcm9tcHQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2ljb24vaWNvbi1jYWNoZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYmFzZS9jb21wb25lbnQtaW50ZXJmYWNlLW5hbWUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9jby1yaWNoLXRleHQtZWRpdG9yL2NvLXJpY2gtdGV4dC1lZGl0b3IubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvY28tcmljaC10ZXh0LWVkaXRvci9jby1yaWNoLXRleHQtZWRpdG9yLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2lucHV0LWxpc3Rib3gvaW5wdXQtbGlzdGJveC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbnB1dC1saXN0Ym94L2lucHV0LWxpc3Rib3guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvc2ltcGxlLWdyaWQvc2ltcGxlLWdyaWQtY29sdW1uLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3NpbXBsZS1ncmlkL3NpbXBsZS1ncmlkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3NpbXBsZS1ncmlkL3NpbXBsZS1ncmlkLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Nhcm91c2VsLTNkL2Nhcm91c2VsLTNkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Nhcm91c2VsLTNkL2Nhcm91c2VsLTNkLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy9wcmljZS1kaXNwbGF5LnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvcHJpY2UtZGlzcGxheS1waXBlLm1vZHVsZSc7XG5cbiJdfQ==