@gipisistemas/ng-core 1.1.3 → 1.1.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (99) hide show
  1. package/assets/styles/colors.scss +5 -1
  2. package/bundles/gipisistemas-ng-core.umd.js +2098 -1285
  3. package/bundles/gipisistemas-ng-core.umd.js.map +1 -1
  4. package/bundles/gipisistemas-ng-core.umd.min.js +10 -9
  5. package/bundles/gipisistemas-ng-core.umd.min.js.map +1 -1
  6. package/core/gipi-components/models/sort.model.d.ts +3 -3
  7. package/core/utils/array.util.d.ts +2 -2
  8. package/core/utils/object.util.d.ts +3 -5
  9. package/core/utils/string.util.d.ts +4 -0
  10. package/esm2015/core/gipi-components/models/sort.model.js +1 -1
  11. package/esm2015/core/gipi-components/services/abstract-crud.service.js +18 -24
  12. package/esm2015/core/utils/array.util.js +4 -2
  13. package/esm2015/core/utils/object.util.js +5 -9
  14. package/esm2015/core/utils/string.util.js +27 -1
  15. package/esm2015/gipi-components.js +11 -1
  16. package/esm2015/shared/components/input/input.component.js +46 -23
  17. package/esm2015/shared/components/select-entity-paged/shared/select-search/select-search.component.js +2 -2
  18. package/esm2015/shared/components/table/table.component.js +1 -1
  19. package/esm2015/shared/gipi-components/abstract-form/abstract-form.component.js +1 -1
  20. package/esm2015/shared/gipi-components/button/button.component.js +18 -2
  21. package/esm2015/shared/gipi-components/card/card.component.js +113 -0
  22. package/esm2015/shared/gipi-components/datepicker/datepicker/datepicker.component.js +8 -3
  23. package/esm2015/shared/gipi-components/empty-state/empty-state.component.js +30 -0
  24. package/esm2015/shared/gipi-components/input-select-paged/input-search/input-search.component.js +2 -2
  25. package/esm2015/shared/gipi-components/layout-grid/col.directive.js +4 -4
  26. package/esm2015/shared/gipi-components/month-year-picker/month-year-picker.component.js +2 -2
  27. package/esm2015/shared/gipi-components/notification/notification.component.js +8 -3
  28. package/esm2015/shared/gipi-components/popover/shared/popover-trigger.js +4 -4
  29. package/esm2015/shared/gipi-components/sidebar/sidenav/sidenav.component.js +35 -3
  30. package/esm2015/shared/gipi-components/slide-toggle/slide-toggle.component.js +113 -0
  31. package/esm2015/shared/gipi-components/split-button/split-button.component.js +243 -0
  32. package/esm2015/shared/gipi-components/tabs/shared/dynamic-tab.directive.js +18 -0
  33. package/esm2015/shared/gipi-components/tabs/shared/tab.model.js +8 -0
  34. package/esm2015/shared/gipi-components/tabs/tab/tab.component.js +66 -0
  35. package/esm2015/shared/gipi-components/tabs/tab-group/tab-group.component.js +123 -0
  36. package/esm2015/shared/gipi-components/textarea/textarea.component.js +298 -0
  37. package/esm2015/shared/shared.module.js +22 -16
  38. package/esm2015/shared.js +1 -5
  39. package/esm5/core/gipi-components/models/sort.model.js +1 -1
  40. package/esm5/core/gipi-components/services/abstract-crud.service.js +18 -24
  41. package/esm5/core/utils/array.util.js +4 -3
  42. package/esm5/core/utils/object.util.js +5 -9
  43. package/esm5/core/utils/string.util.js +27 -1
  44. package/esm5/gipi-components.js +11 -1
  45. package/esm5/shared/components/input/input.component.js +46 -23
  46. package/esm5/shared/components/select-entity-paged/shared/select-search/select-search.component.js +2 -2
  47. package/esm5/shared/components/table/table.component.js +1 -1
  48. package/esm5/shared/gipi-components/abstract-form/abstract-form.component.js +1 -1
  49. package/esm5/shared/gipi-components/button/button.component.js +22 -2
  50. package/esm5/shared/gipi-components/card/card.component.js +135 -0
  51. package/esm5/shared/gipi-components/datepicker/datepicker/datepicker.component.js +8 -3
  52. package/esm5/shared/gipi-components/empty-state/empty-state.component.js +33 -0
  53. package/esm5/shared/gipi-components/input-select-paged/input-search/input-search.component.js +2 -2
  54. package/esm5/shared/gipi-components/layout-grid/col.directive.js +4 -4
  55. package/esm5/shared/gipi-components/month-year-picker/month-year-picker.component.js +2 -2
  56. package/esm5/shared/gipi-components/notification/notification.component.js +8 -3
  57. package/esm5/shared/gipi-components/popover/shared/popover-trigger.js +4 -4
  58. package/esm5/shared/gipi-components/sidebar/sidenav/sidenav.component.js +35 -3
  59. package/esm5/shared/gipi-components/slide-toggle/slide-toggle.component.js +127 -0
  60. package/esm5/shared/gipi-components/split-button/split-button.component.js +249 -0
  61. package/esm5/shared/gipi-components/tabs/shared/dynamic-tab.directive.js +19 -0
  62. package/esm5/shared/gipi-components/tabs/shared/tab.model.js +10 -0
  63. package/esm5/shared/gipi-components/tabs/tab/tab.component.js +67 -0
  64. package/esm5/shared/gipi-components/tabs/tab-group/tab-group.component.js +131 -0
  65. package/esm5/shared/gipi-components/textarea/textarea.component.js +352 -0
  66. package/esm5/shared/shared.module.js +22 -16
  67. package/esm5/shared.js +1 -5
  68. package/fesm2015/gipisistemas-ng-core.js +1991 -1274
  69. package/fesm2015/gipisistemas-ng-core.js.map +1 -1
  70. package/fesm5/gipisistemas-ng-core.js +2088 -1281
  71. package/fesm5/gipisistemas-ng-core.js.map +1 -1
  72. package/gipi-components.d.ts +9 -0
  73. package/gipisistemas-ng-core.metadata.json +1 -1
  74. package/package.json +1 -2
  75. package/shared/components/input/input.component.d.ts +13 -11
  76. package/shared/components/table/table.component.d.ts +3 -3
  77. package/shared/gipi-components/button/button.component.d.ts +14 -0
  78. package/shared/gipi-components/card/card.component.d.ts +23 -0
  79. package/shared/gipi-components/empty-state/empty-state.component.d.ts +5 -0
  80. package/shared/gipi-components/notification/notification.component.d.ts +1 -0
  81. package/shared/gipi-components/sidebar/sidenav/sidenav.component.d.ts +7 -0
  82. package/shared/gipi-components/slide-toggle/slide-toggle.component.d.ts +27 -0
  83. package/shared/gipi-components/split-button/split-button.component.d.ts +60 -0
  84. package/shared/{directives → gipi-components/tabs/shared}/dynamic-tab.directive.d.ts +1 -1
  85. package/shared/gipi-components/tabs/shared/tab.model.d.ts +12 -0
  86. package/shared/{components → gipi-components/tabs}/tab/tab.component.d.ts +4 -2
  87. package/shared/gipi-components/tabs/tab-group/tab-group.component.d.ts +22 -0
  88. package/shared/gipi-components/textarea/textarea.component.d.ts +68 -0
  89. package/shared.d.ts +0 -4
  90. package/esm2015/shared/components/select-button/select-button.component.js +0 -181
  91. package/esm2015/shared/components/tab/tab.component.js +0 -57
  92. package/esm2015/shared/components/tab-group/tab-group.component.js +0 -117
  93. package/esm2015/shared/directives/dynamic-tab.directive.js +0 -18
  94. package/esm5/shared/components/select-button/select-button.component.js +0 -195
  95. package/esm5/shared/components/tab/tab.component.js +0 -58
  96. package/esm5/shared/components/tab-group/tab-group.component.js +0 -125
  97. package/esm5/shared/directives/dynamic-tab.directive.js +0 -19
  98. package/shared/components/select-button/select-button.component.d.ts +0 -35
  99. package/shared/components/tab-group/tab-group.component.d.ts +0 -22
@@ -0,0 +1,298 @@
1
+ var GIPITextareaComponent_1;
2
+ import { __decorate, __metadata } from "tslib";
3
+ import { coerceBooleanProperty, coerceCssPixelValue } from '@angular/cdk/coercion';
4
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, forwardRef, Input, OnInit } from '@angular/core';
5
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
6
+ let nextUniqueId = 0;
7
+ let GIPITextareaComponent = GIPITextareaComponent_1 = class GIPITextareaComponent {
8
+ constructor(elementRef, _changeDetectorRef) {
9
+ this.elementRef = elementRef;
10
+ this._changeDetectorRef = _changeDetectorRef;
11
+ this._name = `gipi-textarea-${nextUniqueId++}`;
12
+ this.id = this._name;
13
+ this.name = this._name;
14
+ this.label = '';
15
+ this.placeholder = '';
16
+ this.cols = 20;
17
+ this.rows = 4;
18
+ this.help = '';
19
+ this.maxlength = 254;
20
+ this.minlength = 0;
21
+ this._resize = 'horizontal';
22
+ this._minHeight = '60px';
23
+ this._height = '60px';
24
+ this._maxHeight = 'auto';
25
+ this._autocomplete = 'off';
26
+ this._autofocus = false;
27
+ this._readOnly = false;
28
+ this._required = false;
29
+ this._disabled = false;
30
+ this._lowerCase = false;
31
+ this._upperCase = false;
32
+ this._spaceDrop = false;
33
+ this.onChange = () => { };
34
+ this.onTouched = () => { };
35
+ }
36
+ get resize() {
37
+ return this._resize;
38
+ }
39
+ set resize(value) {
40
+ if (value !== this.resize) {
41
+ this._resize = value.toLowerCase();
42
+ this._changeDetectorRef.detectChanges();
43
+ }
44
+ }
45
+ get minHeight() {
46
+ return this._minHeight;
47
+ }
48
+ set minHeight(value) {
49
+ if (value.trim().toUpperCase() === 'AUTO') {
50
+ this._minHeight = 'auto';
51
+ }
52
+ else {
53
+ this._minHeight = coerceCssPixelValue(value);
54
+ }
55
+ }
56
+ get height() {
57
+ return this._height;
58
+ }
59
+ set height(value) {
60
+ if (value.trim().toUpperCase() === 'AUTO') {
61
+ this._height = 'auto';
62
+ }
63
+ else {
64
+ this._height = coerceCssPixelValue(value);
65
+ }
66
+ }
67
+ get maxHeight() {
68
+ return this._maxHeight;
69
+ }
70
+ set maxHeight(value) {
71
+ if (value.trim().toUpperCase() === 'AUTO') {
72
+ this._maxHeight = 'auto';
73
+ }
74
+ else {
75
+ this._maxHeight = coerceCssPixelValue(value);
76
+ }
77
+ }
78
+ get autocomplete() {
79
+ return this._autocomplete;
80
+ }
81
+ set autocomplete(value) {
82
+ this._autocomplete = value;
83
+ }
84
+ get autofocus() {
85
+ return this._autofocus;
86
+ }
87
+ set autofocus(value) {
88
+ this._autofocus = coerceBooleanProperty(value);
89
+ }
90
+ get readOnly() {
91
+ return this._readOnly;
92
+ }
93
+ set readOnly(value) {
94
+ this._readOnly = coerceBooleanProperty(value);
95
+ }
96
+ get required() {
97
+ return this._required;
98
+ }
99
+ set required(value) {
100
+ this._required = coerceBooleanProperty(value);
101
+ }
102
+ get disabled() {
103
+ return this._disabled;
104
+ }
105
+ set disabled(value) {
106
+ this._disabled = coerceBooleanProperty(value);
107
+ }
108
+ get lowerCase() {
109
+ return this._lowerCase;
110
+ }
111
+ set lowerCase(value) {
112
+ this._lowerCase = coerceBooleanProperty(value);
113
+ }
114
+ get upperCase() {
115
+ return this._upperCase;
116
+ }
117
+ set upperCase(value) {
118
+ this._upperCase = coerceBooleanProperty(value);
119
+ }
120
+ get spaceDrop() {
121
+ return this._spaceDrop;
122
+ }
123
+ set spaceDrop(value) {
124
+ this._spaceDrop = coerceBooleanProperty(value);
125
+ }
126
+ get value() {
127
+ return this._value;
128
+ }
129
+ set value(value) {
130
+ let valueAux = value;
131
+ valueAux = this._checkSpaceDrop(valueAux);
132
+ valueAux = this._checkLowercase(valueAux);
133
+ valueAux = this._checkUppercase(valueAux);
134
+ this._value = valueAux;
135
+ this.onChange(this._value);
136
+ this.onTouched(this._value);
137
+ }
138
+ ngOnInit() { }
139
+ writeValue(value) {
140
+ this._value = value;
141
+ }
142
+ registerOnChange(fn) {
143
+ this.onChange = fn;
144
+ }
145
+ registerOnTouched(fn) {
146
+ this.onTouched = fn;
147
+ }
148
+ setDisabledState(isDisabled) {
149
+ this.disabled = isDisabled;
150
+ this._changeDetectorRef.markForCheck();
151
+ }
152
+ _checkSpaceDrop(value) {
153
+ if (this.spaceDrop && value) {
154
+ return value.replace(/\s/g, '');
155
+ }
156
+ return value;
157
+ }
158
+ _checkUppercase(value) {
159
+ if (this.upperCase && value) {
160
+ return value.toUpperCase();
161
+ }
162
+ return value;
163
+ }
164
+ _checkLowercase(value) {
165
+ if (this.lowerCase && value) {
166
+ return value.toLowerCase();
167
+ }
168
+ return value;
169
+ }
170
+ };
171
+ GIPITextareaComponent.ctorParameters = () => [
172
+ { type: ElementRef },
173
+ { type: ChangeDetectorRef }
174
+ ];
175
+ __decorate([
176
+ Input(),
177
+ __metadata("design:type", String)
178
+ ], GIPITextareaComponent.prototype, "id", void 0);
179
+ __decorate([
180
+ Input(),
181
+ __metadata("design:type", String)
182
+ ], GIPITextareaComponent.prototype, "name", void 0);
183
+ __decorate([
184
+ Input(),
185
+ __metadata("design:type", String)
186
+ ], GIPITextareaComponent.prototype, "label", void 0);
187
+ __decorate([
188
+ Input(),
189
+ __metadata("design:type", String)
190
+ ], GIPITextareaComponent.prototype, "placeholder", void 0);
191
+ __decorate([
192
+ Input(),
193
+ __metadata("design:type", Number)
194
+ ], GIPITextareaComponent.prototype, "cols", void 0);
195
+ __decorate([
196
+ Input(),
197
+ __metadata("design:type", Number)
198
+ ], GIPITextareaComponent.prototype, "rows", void 0);
199
+ __decorate([
200
+ Input(),
201
+ __metadata("design:type", String)
202
+ ], GIPITextareaComponent.prototype, "help", void 0);
203
+ __decorate([
204
+ Input(),
205
+ __metadata("design:type", Number)
206
+ ], GIPITextareaComponent.prototype, "maxlength", void 0);
207
+ __decorate([
208
+ Input(),
209
+ __metadata("design:type", Number)
210
+ ], GIPITextareaComponent.prototype, "minlength", void 0);
211
+ __decorate([
212
+ Input(),
213
+ __metadata("design:type", String),
214
+ __metadata("design:paramtypes", [String])
215
+ ], GIPITextareaComponent.prototype, "resize", null);
216
+ __decorate([
217
+ Input(),
218
+ __metadata("design:type", String),
219
+ __metadata("design:paramtypes", [String])
220
+ ], GIPITextareaComponent.prototype, "minHeight", null);
221
+ __decorate([
222
+ Input(),
223
+ __metadata("design:type", String),
224
+ __metadata("design:paramtypes", [String])
225
+ ], GIPITextareaComponent.prototype, "height", null);
226
+ __decorate([
227
+ Input(),
228
+ __metadata("design:type", String),
229
+ __metadata("design:paramtypes", [String])
230
+ ], GIPITextareaComponent.prototype, "maxHeight", null);
231
+ __decorate([
232
+ Input(),
233
+ __metadata("design:type", String),
234
+ __metadata("design:paramtypes", [String])
235
+ ], GIPITextareaComponent.prototype, "autocomplete", null);
236
+ __decorate([
237
+ Input(),
238
+ __metadata("design:type", Boolean),
239
+ __metadata("design:paramtypes", [Boolean])
240
+ ], GIPITextareaComponent.prototype, "autofocus", null);
241
+ __decorate([
242
+ Input(),
243
+ __metadata("design:type", Boolean),
244
+ __metadata("design:paramtypes", [Boolean])
245
+ ], GIPITextareaComponent.prototype, "readOnly", null);
246
+ __decorate([
247
+ Input(),
248
+ __metadata("design:type", Boolean),
249
+ __metadata("design:paramtypes", [Boolean])
250
+ ], GIPITextareaComponent.prototype, "required", null);
251
+ __decorate([
252
+ Input(),
253
+ __metadata("design:type", Boolean),
254
+ __metadata("design:paramtypes", [Boolean])
255
+ ], GIPITextareaComponent.prototype, "disabled", null);
256
+ __decorate([
257
+ Input(),
258
+ __metadata("design:type", Boolean),
259
+ __metadata("design:paramtypes", [Boolean])
260
+ ], GIPITextareaComponent.prototype, "lowerCase", null);
261
+ __decorate([
262
+ Input(),
263
+ __metadata("design:type", Boolean),
264
+ __metadata("design:paramtypes", [Boolean])
265
+ ], GIPITextareaComponent.prototype, "upperCase", null);
266
+ __decorate([
267
+ Input(),
268
+ __metadata("design:type", Boolean),
269
+ __metadata("design:paramtypes", [Boolean])
270
+ ], GIPITextareaComponent.prototype, "spaceDrop", null);
271
+ __decorate([
272
+ Input(),
273
+ __metadata("design:type", Object),
274
+ __metadata("design:paramtypes", [Object])
275
+ ], GIPITextareaComponent.prototype, "value", null);
276
+ GIPITextareaComponent = GIPITextareaComponent_1 = __decorate([
277
+ Component({
278
+ selector: 'gipi-textarea',
279
+ exportAs: 'gipiTextarea',
280
+ template: "<label class=\"textarea-label\"\n *ngIf=\"label\"\n [attr.for]=\"id\">\n {{ label }}\n <span *ngIf=\"required\"> * </span>\n</label>\n\n<textarea class=\"textarea-element\"\n [attr.id]=\"id\"\n [attr.name]=\"name\"\n [placeholder]=\"placeholder\"\n [cols]=\"cols\"\n [rows]=\"rows\"\n [class.resize-none]=\"resize === 'none'\"\n [class.resize-both]=\"resize === 'both'\"\n [class.resize-horizontal]=\"resize === 'horizontal'\"\n [class.resize-vertical]=\"resize === 'vertical'\"\n [style.min-height.px]=\"minHeight\"\n [style.height.px]=\"height\"\n [style.max-height.px]=\"maxHeight\"\n [minlength]=\"minlength\"\n [maxlength]=\"maxlength\"\n [disabled]=\"disabled\"\n [required]=\"required\"\n [readOnly]=\"readOnly\"\n [attr.autocomplete]=\"autocomplete\"\n [autofocus]=\"autofocus\"\n [(ngModel)]=\"value\"\n [value]=\"value\">\n </textarea>\n\n<small *ngIf=\"help\"\n class=\"textarea-help\">\n {{ help }}\n</small>",
281
+ providers: [
282
+ {
283
+ provide: NG_VALUE_ACCESSOR,
284
+ useExisting: forwardRef(() => GIPITextareaComponent_1),
285
+ multi: true
286
+ }
287
+ ],
288
+ host: {
289
+ 'class': 'gipi-textarea',
290
+ },
291
+ changeDetection: ChangeDetectionStrategy.OnPush,
292
+ styles: [":host{display:flex;flex-direction:column;gap:.8rem;font-size:1.4rem;color:#696969}:host .textarea-label{display:flex;align-items:center;gap:.4rem;color:#131313;line-height:1.6rem}:host .textarea-label>span{font-size:1.6rem;line-height:1.6rem;color:#d14014}:host .textarea-element{display:flex;font-family:inherit;font-size:inherit;color:inherit;padding:.75rem .8rem;background:#fff;border:1px solid rgba(0,0,0,.12);transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:6px;caret-color:#696969;max-height:12rem;min-height:6rem;resize:vertical;outline:0;overflow:auto}:host .textarea-element:not(:disabled):hover{border-color:#6d6f73}:host .textarea-element:not(:disabled).ng-dirty.ng-invalid:enabled:hover,:host .textarea-element:not(:disabled):invalid:enabled:hover{border-color:#e07f62}:host .textarea-element:not(:disabled):enabled:focus{outline:0;outline-offset:0;box-shadow:0 0 0 .2rem #e0e1e2;border-color:#6d6f73}:host .textarea-element:not(:disabled).ng-dirty.ng-invalid:enabled,:host .textarea-element:not(:disabled):invalid:enabled{border-color:#d14014}:host .textarea-element:not(:disabled).ng-dirty.ng-invalid:enabled:focus,:host .textarea-element:not(:disabled):invalid:enabled:focus{outline:0;outline-offset:0;box-shadow:0 0 0 .2rem #f1c4b6;border-color:#d14014}:host .textarea-element:disabled{color:#bbbdc1!important;border-color:#e0e1e2!important;background-color:#f5f5f6!important;cursor:not-allowed}:host .textarea-element.resize-none{resize:none}:host .textarea-element.resize-both{resize:both}:host .textarea-element.resize-horizontal{resize:horizontal}:host .textarea-element.resize-vertical{resize:vertical}:host .textarea-help{flex:1;font-size:1rem;font-weight:500;margin-top:-.4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::-webkit-input-placeholder{color:#bbbdc1}:-moz-placeholder{color:#bbbdc1}::-moz-placeholder{color:#bbbdc1}:-ms-input-placeholder{color:#bbbdc1}"]
293
+ }),
294
+ __metadata("design:paramtypes", [ElementRef,
295
+ ChangeDetectorRef])
296
+ ], GIPITextareaComponent);
297
+ export { GIPITextareaComponent };
298
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGFyZWEuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGdpcGlzaXN0ZW1hcy9uZy1jb3JlLyIsInNvdXJjZXMiOlsic2hhcmVkL2dpcGktY29tcG9uZW50cy90ZXh0YXJlYS90ZXh0YXJlYS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3SCxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFekUsSUFBSSxZQUFZLEdBQUcsQ0FBQyxDQUFDO0FBcUJyQixJQUFhLHFCQUFxQiw2QkFBbEMsTUFBYSxxQkFBcUI7SUF5SjlCLFlBQ1csVUFBbUMsRUFDbEMsa0JBQXFDO1FBRHRDLGVBQVUsR0FBVixVQUFVLENBQXlCO1FBQ2xDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBbUI7UUF6SnpDLFVBQUssR0FBVyxpQkFBaUIsWUFBWSxFQUFFLEVBQUUsQ0FBQztRQUVqRCxPQUFFLEdBQVcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUV4QixTQUFJLEdBQVcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUUxQixVQUFLLEdBQVcsRUFBRSxDQUFDO1FBRW5CLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBRXpCLFNBQUksR0FBVyxFQUFFLENBQUM7UUFFbEIsU0FBSSxHQUFXLENBQUMsQ0FBQztRQUVqQixTQUFJLEdBQVcsRUFBRSxDQUFDO1FBRWxCLGNBQVMsR0FBVyxHQUFHLENBQUM7UUFFeEIsY0FBUyxHQUFXLENBQUMsQ0FBQztRQUV2QixZQUFPLEdBQW1CLFlBQVksQ0FBQztRQVd2QyxlQUFVLEdBQVcsTUFBTSxDQUFDO1FB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QVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx1QkFBcUIsQ0FBQztnQkFDcEQsS0FBSyxFQUFFLElBQUk7YUFDZDtTQUNKO1FBQ0QsSUFBSSxFQUFFO1lBQ0YsT0FBTyxFQUFFLGVBQWU7U0FDM0I7UUFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7S0FDbEQsQ0FBQztxQ0EySnlCLFVBQVU7UUFDRCxpQkFBaUI7R0EzSnhDLHFCQUFxQixDQXNNakM7U0F0TVkscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5LCBjb2VyY2VDc3NQaXhlbFZhbHVlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBmb3J3YXJkUmVmLCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmxldCBuZXh0VW5pcXVlSWQgPSAwO1xuXG50eXBlIFRleHRhcmVhUmVzaXplID0gJ2JvdGgnIHwgJ2hvcml6b250YWwnIHwgJ3ZlcnRpY2FsJyB8ICdub25lJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdnaXBpLXRleHRhcmVhJyxcbiAgICBleHBvcnRBczogJ2dpcGlUZXh0YXJlYScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RleHRhcmVhLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi90ZXh0YXJlYS5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEdJUElUZXh0YXJlYUNvbXBvbmVudCksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICB9XG4gICAgXSxcbiAgICBob3N0OiB7XG4gICAgICAgICdjbGFzcyc6ICdnaXBpLXRleHRhcmVhJyxcbiAgICB9LFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEdJUElUZXh0YXJlYUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuXG4gICAgcHJpdmF0ZSBfbmFtZTogc3RyaW5nID0gYGdpcGktdGV4dGFyZWEtJHtuZXh0VW5pcXVlSWQrK31gO1xuXG4gICAgQElucHV0KCkgaWQ6IHN0cmluZyA9IHRoaXMuX25hbWU7XG5cbiAgICBASW5wdXQoKSBuYW1lOiBzdHJpbmcgPSB0aGlzLl9uYW1lO1xuXG4gICAgQElucHV0KCkgbGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gICAgQElucHV0KCkgcGxhY2Vob2xkZXI6IHN0cmluZyA9ICcnO1xuXG4gICAgQElucHV0KCkgY29sczogbnVtYmVyID0gMjA7XG5cbiAgICBASW5wdXQoKSByb3dzOiBudW1iZXIgPSA0O1xuXG4gICAgQElucHV0KCkgaGVscDogc3RyaW5nID0gJyc7XG5cbiAgICBASW5wdXQoKSBtYXhsZW5ndGg6IG51bWJlciA9IDI1NDtcblxuICAgIEBJbnB1dCgpIG1pbmxlbmd0aDogbnVtYmVyID0gMDtcblxuICAgIHByaXZhdGUgX3Jlc2l6ZTogVGV4dGFyZWFSZXNpemUgPSAnaG9yaXpvbnRhbCc7XG4gICAgQElucHV0KCkgZ2V0IHJlc2l6ZSgpOiBUZXh0YXJlYVJlc2l6ZSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZXNpemU7XG4gICAgfVxuICAgIHNldCByZXNpemUodmFsdWU6IFRleHRhcmVhUmVzaXplKSB7XG4gICAgICAgIGlmICh2YWx1ZSAhPT0gdGhpcy5yZXNpemUpIHtcbiAgICAgICAgICAgIHRoaXMuX3Jlc2l6ZSA9ICh2YWx1ZS50b0xvd2VyQ2FzZSgpIGFzIFRleHRhcmVhUmVzaXplKTtcbiAgICAgICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgX21pbkhlaWdodDogc3RyaW5nID0gJzYwcHgnO1xuICAgIEBJbnB1dCgpIGdldCBtaW5IZWlnaHQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX21pbkhlaWdodDtcbiAgICB9XG4gICAgc2V0IG1pbkhlaWdodCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIGlmICh2YWx1ZS50cmltKCkudG9VcHBlckNhc2UoKSA9PT0gJ0FVVE8nKSB7XG4gICAgICAgICAgICB0aGlzLl9taW5IZWlnaHQgPSAnYXV0byc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9taW5IZWlnaHQgPSBjb2VyY2VDc3NQaXhlbFZhbHVlKHZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgX2hlaWdodDogc3RyaW5nID0gJzYwcHgnO1xuICAgIEBJbnB1dCgpIGdldCBoZWlnaHQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hlaWdodDtcbiAgICB9XG4gICAgc2V0IGhlaWdodCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIGlmICh2YWx1ZS50cmltKCkudG9VcHBlckNhc2UoKSA9PT0gJ0FVVE8nKSB7XG4gICAgICAgICAgICB0aGlzLl9oZWlnaHQgPSAnYXV0byc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9oZWlnaHQgPSBjb2VyY2VDc3NQaXhlbFZhbHVlKHZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgX21heEhlaWdodDogc3RyaW5nID0gJ2F1dG8nO1xuICAgIEBJbnB1dCgpIGdldCBtYXhIZWlnaHQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX21heEhlaWdodDtcbiAgICB9XG4gICAgc2V0IG1heEhlaWdodCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIGlmICh2YWx1ZS50cmltKCkudG9VcHBlckNhc2UoKSA9PT0gJ0FVVE8nKSB7XG4gICAgICAgICAgICB0aGlzLl9tYXhIZWlnaHQgPSAnYXV0byc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9tYXhIZWlnaHQgPSBjb2VyY2VDc3NQaXhlbFZhbHVlKHZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgX2F1dG9jb21wbGV0ZTogJ29uJyB8ICdvZmYnID0gJ29mZic7XG4gICAgQElucHV0KCkgZ2V0IGF1dG9jb21wbGV0ZSgpOiAnb24nIHwgJ29mZicge1xuICAgICAgICByZXR1cm4gdGhpcy5fYXV0b2NvbXBsZXRlO1xuICAgIH1cbiAgICBzZXQgYXV0b2NvbXBsZXRlKHZhbHVlOiAnb24nIHwgJ29mZicpIHtcbiAgICAgICAgdGhpcy5fYXV0b2NvbXBsZXRlID0gdmFsdWU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfYXV0b2ZvY3VzOiBib29sZWFuID0gZmFsc2U7XG4gICAgQElucHV0KCkgZ2V0IGF1dG9mb2N1cygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2F1dG9mb2N1cztcbiAgICB9XG4gICAgc2V0IGF1dG9mb2N1cyh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgICB0aGlzLl9hdXRvZm9jdXMgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3JlYWRPbmx5OiBib29sZWFuID0gZmFsc2U7XG4gICAgQElucHV0KCkgZ2V0IHJlYWRPbmx5KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcmVhZE9ubHk7XG4gICAgfVxuICAgIHNldCByZWFkT25seSh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgICB0aGlzLl9yZWFkT25seSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfcmVxdWlyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBASW5wdXQoKSBnZXQgcmVxdWlyZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZXF1aXJlZDtcbiAgICB9XG4gICAgc2V0IHJlcXVpcmVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX3JlcXVpcmVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9kaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkO1xuICAgIH1cbiAgICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fZGlzYWJsZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2xvd2VyQ2FzZTogYm9vbGVhbiA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIGdldCBsb3dlckNhc2UoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9sb3dlckNhc2U7XG4gICAgfVxuICAgIHNldCBsb3dlckNhc2UodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fbG93ZXJDYXNlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF91cHBlckNhc2U6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBASW5wdXQoKSBnZXQgdXBwZXJDYXNlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fdXBwZXJDYXNlO1xuICAgIH1cbiAgICBzZXQgdXBwZXJDYXNlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX3VwcGVyQ2FzZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfc3BhY2VEcm9wOiBib29sZWFuID0gZmFsc2U7XG4gICAgQElucHV0KCkgZ2V0IHNwYWNlRHJvcCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3NwYWNlRHJvcDtcbiAgICB9XG4gICAgc2V0IHNwYWNlRHJvcCh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgICB0aGlzLl9zcGFjZURyb3AgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3ZhbHVlITogYW55O1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IHZhbHVlKCk6IGFueSB7XG4gICAgICAgIHJldHVybiB0aGlzLl92YWx1ZTtcbiAgICB9XG4gICAgc2V0IHZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICAgICAgbGV0IHZhbHVlQXV4OiBhbnkgPSB2YWx1ZTtcbiAgICAgICAgdmFsdWVBdXggPSB0aGlzLl9jaGVja1NwYWNlRHJvcCh2YWx1ZUF1eCk7XG4gICAgICAgIHZhbHVlQXV4ID0gdGhpcy5fY2hlY2tMb3dlcmNhc2UodmFsdWVBdXgpO1xuICAgICAgICB2YWx1ZUF1eCA9IHRoaXMuX2NoZWNrVXBwZXJjYXNlKHZhbHVlQXV4KTtcbiAgICAgICAgdGhpcy5fdmFsdWUgPSB2YWx1ZUF1eDtcblxuICAgICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMuX3ZhbHVlKTtcbiAgICAgICAgdGhpcy5vblRvdWNoZWQodGhpcy5fdmFsdWUpO1xuICAgIH1cblxuICAgIG9uQ2hhbmdlOiBGdW5jdGlvbiA9ICgpID0+IHsgfTtcblxuICAgIG9uVG91Y2hlZDogRnVuY3Rpb24gPSAoKSA9PiB7IH07XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgKSB7IH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQgeyB9XG5cbiAgICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBGdW5jdGlvbik6IHZvaWQge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IEZ1bmN0aW9uKTogdm9pZCB7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gICAgfVxuXG4gICAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfY2hlY2tTcGFjZURyb3AodmFsdWU6IGFueSk6IGFueSB7XG4gICAgICAgIGlmICh0aGlzLnNwYWNlRHJvcCAmJiB2YWx1ZSkge1xuICAgICAgICAgICAgcmV0dXJuIHZhbHVlLnJlcGxhY2UoL1xccy9nLCAnJyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2NoZWNrVXBwZXJjYXNlKHZhbHVlOiBhbnkpOiBhbnkge1xuICAgICAgICBpZiAodGhpcy51cHBlckNhc2UgJiYgdmFsdWUpIHtcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZS50b1VwcGVyQ2FzZSgpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9jaGVja0xvd2VyY2FzZSh2YWx1ZTogYW55KTogYW55IHtcbiAgICAgICAgaWYgKHRoaXMubG93ZXJDYXNlICYmIHZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm4gdmFsdWUudG9Mb3dlckNhc2UoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgfVxuXG59XG4iXX0=
@@ -27,7 +27,6 @@ import { OverlayPanelComponent } from './components/overlay-panel/overlay-panel.
27
27
  import { PopoverComponent } from './components/popover/popover.component';
28
28
  import { RadioGroupEntityComponent } from './components/radio-group-entity/radio-group-entity.component';
29
29
  import { RadioGroupEnumComponent } from './components/radio-group-enum/radio-group-enum.component';
30
- import { SelectButtonComponent } from './components/select-button/select-button.component';
31
30
  import { SelectEntityPagedComponent } from './components/select-entity-paged/select-entity-paged.component';
32
31
  import { SelectButtonAddComponent } from './components/select-entity-paged/shared/select-button-add/select-button-add.component';
33
32
  import { SelectButtonNextBatchComponent } from './components/select-entity-paged/shared/select-button-next-batch/select-button-next-batch.component';
@@ -39,12 +38,9 @@ import { SelectEnumComponent } from './components/select-enum/select-enum.compon
39
38
  import { SelectMonthPeriodComponent } from './components/select-month-period/select-month-period.component';
40
39
  import { SlideToggleComponent } from './components/slide-toggle/slide-toggle.component';
41
40
  import { StepperComponent } from './components/stepper/stepper.component';
42
- import { TabGroupComponent } from './components/tab-group/tab-group.component';
43
- import { TabComponent } from './components/tab/tab.component';
44
41
  import { TableScrolledComponent } from './components/table-scrolled/table-scrolled.component';
45
42
  import { TableComponent } from './components/table/table.component';
46
43
  import { TextareaComponent } from './components/textarea/textarea.component';
47
- import { DynamicTabDirective } from './directives/dynamic-tab.directive';
48
44
  import { ItssTemplate } from './directives/generic-template.directive';
49
45
  import { InputSelectInfiniteScrollDirective } from './directives/input-select-infinite-scroll.directive';
50
46
  import { LowerCaseDirective } from './directives/lower-case.directive';
@@ -58,6 +54,7 @@ import { GIPIInfiniteScrollDirective } from './gipi-components/infinite-scroll/i
58
54
  import { GIPIColDirective } from './gipi-components/layout-grid/col.directive';
59
55
  import { GIPIRowDirective, } from './gipi-components/layout-grid/row.directive';
60
56
  import { GIPIPaginationControlsDirective } from './gipi-components/table/components/table-pagination/shared/pagination-controls.directive';
57
+ import { GIPIDynamicTabDirective } from './gipi-components/tabs/shared/dynamic-tab.directive';
61
58
  import { GIPITemplateDirective } from './gipi-components/template/template.directive';
62
59
  import { GIPIPaginatePipe } from './gipi-components/table/components/table-pagination/shared/paginate.pipe';
63
60
  import { GIPIBreakpointService } from './gipi-components/layout-grid/services/breakpoint.service';
@@ -68,9 +65,11 @@ import { GIPIAbstractFormComponent } from './gipi-components/abstract-form/abstr
68
65
  import { GIPIActionRowComponent } from './gipi-components/action-row/action-row.component';
69
66
  import { GIPIBadgeComponent } from './gipi-components/badge/badge.component';
70
67
  import { GIPIButtonComponent } from './gipi-components/button/button.component';
68
+ import { GIPICardComponent } from './gipi-components/card/card.component';
71
69
  import { GIPIChipsComponent } from './gipi-components/chips/chips.component';
72
70
  import { GIPIConfirmationDialogComponent } from './gipi-components/confirmation-dialog/confirmation-dialog.component';
73
71
  import { GIPIDropdownMenuComponent } from './gipi-components/dropdown-menu/dropdown-menu.component';
72
+ import { GIPIEmptyStateComponent } from './gipi-components/empty-state/empty-state.component';
74
73
  import { GIPIExpansionPanelComponent } from './gipi-components/expansion-panel/expansion-panel.component';
75
74
  import { GIPIFileDragAndDropComponent } from './gipi-components/file-drag-and-drop/file-drag-and-drop.component';
76
75
  import { GIPIFooterComponent } from './gipi-components/footer/footer.component';
@@ -93,10 +92,13 @@ import { GIPIPopoverComponent } from './gipi-components/popover/popover.componen
93
92
  import { GIPIPopoverTarget } from './gipi-components/popover/shared/popover-target';
94
93
  import { GIPIPopoverTrigger } from './gipi-components/popover/shared/popover-trigger';
95
94
  import { GIPIRadioGroupComponent } from './gipi-components/radio-group/radio-group.component';
95
+ import { GIPIRangePageComponent } from './gipi-components/range-page/range-page.component';
96
+ import { GIPIRangeSliderComponent } from './gipi-components/range-slider/range-slider.component';
96
97
  import { GIPISelectButtonComponent } from './gipi-components/select-button/select-button.component';
97
98
  import { GIPISelectComponent } from './gipi-components/select/select.component';
98
99
  import { GIPISidenavContainerComponent } from './gipi-components/sidebar/container/container.component';
99
100
  import { GIPISidenavComponent } from './gipi-components/sidebar/sidenav/sidenav.component';
101
+ import { GIPISlideToggleComponent } from './gipi-components/slide-toggle/slide-toggle.component';
100
102
  import { GIPIStepperComponent } from './gipi-components/stepper/stepper.component';
101
103
  import { GIPITableBodyComponent } from './gipi-components/table/components/table-body/table-body.component';
102
104
  import { GIPITableFooterComponent } from './gipi-components/table/components/table-footer/table-footer.component';
@@ -104,6 +106,8 @@ import { GIPITableHeaderComponent } from './gipi-components/table/components/tab
104
106
  import { GIPITablePaginationComponent } from './gipi-components/table/components/table-pagination/table-pagination.component';
105
107
  import { GIPITableProgressBarComponent } from './gipi-components/table/components/table-progress-bar/table-progress-bar.component';
106
108
  import { GIPITableComponent } from './gipi-components/table/table.component';
109
+ import { GIPITabGroupComponent } from './gipi-components/tabs/tab-group/tab-group.component';
110
+ import { GIPITabComponent } from './gipi-components/tabs/tab/tab.component';
107
111
  import { GIPIToolbarComponent } from './gipi-components/toolbar/toolbar.component';
108
112
  import { GIPITopNavComponent } from './gipi-components/top-nav/top-nav.component';
109
113
  import { GIPIUserProfileComponent } from './gipi-components/user-profile/user-profile.component';
@@ -111,8 +115,8 @@ import { DatepickerModule } from './gipi-components/datepicker/datepicker.module
111
115
  import { DateAdapter, MAT_DATE_LOCALE } from './gipi-components/datepicker/mat-datepicker/shared/adapter/date-adapter';
112
116
  import { NativeDateAdapter } from './gipi-components/datepicker/mat-datepicker/shared/adapter/native-date-adapter';
113
117
  import { MonthYearPickerModule } from './gipi-components/month-year-picker/mont-year-picker.module';
114
- import { GIPIRangePageComponent } from './gipi-components/range-page/range-page.component';
115
- import { GIPIRangeSliderComponent } from './gipi-components/range-slider/range-slider.component';
118
+ import { GIPISplitButtonComponent } from './gipi-components/split-button/split-button.component';
119
+ import { GIPITextareaComponent } from './gipi-components/textarea/textarea.component';
116
120
  export let INJECTOR;
117
121
  const GIPIComponents = [
118
122
  GIPITopNavComponent,
@@ -154,6 +158,14 @@ const GIPIComponents = [
154
158
  GIPIBadgeComponent,
155
159
  GIPIRangeSliderComponent,
156
160
  GIPIRangePageComponent,
161
+ GIPISlideToggleComponent,
162
+ GIPIEmptyStateComponent,
163
+ GIPICardComponent,
164
+ GIPITextareaComponent,
165
+ GIPISplitButtonComponent,
166
+ // Tabs
167
+ GIPITabGroupComponent,
168
+ GIPITabComponent,
157
169
  // Table
158
170
  GIPITableHeaderComponent,
159
171
  GIPITableBodyComponent,
@@ -169,6 +181,7 @@ const GIPIDirectives = [
169
181
  GIPIFileDragAndDropDirective,
170
182
  GIPIInfiniteScrollDirective,
171
183
  GIPIPaginationControlsDirective,
184
+ GIPIDynamicTabDirective,
172
185
  ];
173
186
  const GIPIPipes = [
174
187
  GIPIPaginatePipe,
@@ -217,9 +230,6 @@ SharedModule = __decorate([
217
230
  RadioGroupEntityComponent,
218
231
  RadioGroupEnumComponent,
219
232
  SlideToggleComponent,
220
- TabGroupComponent,
221
- TabComponent,
222
- DynamicTabDirective,
223
233
  IconComponent,
224
234
  StepperComponent,
225
235
  TextareaComponent,
@@ -232,7 +242,6 @@ SharedModule = __decorate([
232
242
  SpaceDropDirective,
233
243
  OverlayPanelComponent,
234
244
  ItssTemplate,
235
- SelectButtonComponent,
236
245
  SelectMonthPeriodComponent,
237
246
  InputSelectInfiniteScrollDirective,
238
247
  TableScrolledComponent,
@@ -284,8 +293,6 @@ SharedModule = __decorate([
284
293
  RadioGroupEntityComponent,
285
294
  RadioGroupEnumComponent,
286
295
  SlideToggleComponent,
287
- TabGroupComponent,
288
- TabComponent,
289
296
  IconComponent,
290
297
  StepperComponent,
291
298
  TextareaComponent,
@@ -295,7 +302,6 @@ SharedModule = __decorate([
295
302
  MentionModule,
296
303
  OverlayPanelComponent,
297
304
  ItssTemplate,
298
- SelectButtonComponent,
299
305
  SelectMonthPeriodComponent,
300
306
  InputSelectInfiniteScrollDirective,
301
307
  TableScrolledComponent,
@@ -310,8 +316,8 @@ SharedModule = __decorate([
310
316
  ],
311
317
  entryComponents: [
312
318
  GIPIConfirmationDialogComponent,
313
- TabGroupComponent,
314
- TabComponent,
319
+ GIPITabGroupComponent,
320
+ GIPITabComponent,
315
321
  PopoverComponent,
316
322
  ],
317
323
  providers: [
@@ -336,4 +342,4 @@ SharedModule = __decorate([
336
342
  ], SharedModule);
337
343
  export { SharedModule };
338
344
  export { ɵ0 };
339
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BnaXBpc2lzdGVtYXMvbmctY29yZS8iLCJzb3VyY2VzIjpbInNoYXJlZC9zaGFyZWQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDckUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzFELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDakQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5RUFBeUUsQ0FBQztBQUUzRyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFB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LEVBQUUsZ0JBQWdCO2dCQUN6QixRQUFRLElBVVA7YUFDSjtTQUNKO0tBQ0osQ0FBQztxQ0FFaUMsUUFBUTtHQUQ5QixZQUFZLENBSXhCO1NBSlksWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENka1N0ZXBwZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvc3RlcHBlcic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSW5qZWN0b3IsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGbGV4TGF5b3V0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZmxleC1sYXlvdXQnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXREaWFsb2dNb2R1bGUsIE1hdFJpcHBsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsJztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBNZGVQb3BvdmVyTW9kdWxlIH0gZnJvbSAnQG1hdGVyaWFsLWV4dGVuZGVkL21kZSc7XG5pbXBvcnQgeyBNZW50aW9uTW9kdWxlIH0gZnJvbSAnYW5ndWxhci1tZW50aW9ucyc7XG5pbXBvcnQgeyBOZ3hDdXJyZW5jeU1vZHVsZSB9IGZyb20gJ25neC1jdXJyZW5jeSc7XG5pbXBvcnQgeyBJbmZpbml0ZVNjcm9sbE1vZHVsZSB9IGZyb20gJ25neC1pbmZpbml0ZS1zY3JvbGwnO1xuaW1wb3J0IHsgTmd4TWFza01vZHVsZSB9IGZyb20gJ25neC1tYXNrJztcbmltcG9ydCB7IE5neE1hdGVyaWFsVGltZXBpY2tlck1vZHVsZSB9IGZyb20gJ25neC1tYXRlcmlhbC10aW1lcGlja2VyJztcbmltcG9ydCB7IE1BVF9EQVRFX0ZPUk1BVFMgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL21hdC1kYXRlcGlja2VyL3NoYXJlZC9hZGFwdGVyL2RhdGUtZm9ybWF0cyc7XG5cbmltcG9ydCB7IE1hdGVyaWFsTW9kdWxlIH0gZnJvbSAnLi9tYXRlcmlhbC5tb2R1bGUnO1xuXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2FyZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jYXJkL2NhcmQuY29tcG9uZW50JztcbmltcG9ydCB7IENoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NoZWNrYm94L2NoZWNrYm94LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJY29uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2ljb24vaWNvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgSW5wdXRDdXJyZW5jeUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9pbnB1dC1jdXJyZW5jeS9pbnB1dC1jdXJyZW5jeS5jb21wb25lbnQnO1xuaW1wb3J0IHsgSW5wdXRGaWxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2lucHV0LWZpbGUvaW5wdXQtZmlsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgSW5wdXRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvaW5wdXQvaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IExvYWRpbmdPdmVybGF5Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xvYWRpbmctb3ZlcmxheS9sb2FkaW5nLW92ZXJsYXkuY29tcG9uZW50JztcbmltcG9ydCB7IExvYWRpbmdDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbG9hZGluZy9sb2FkaW5nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBPdmVybGF5UGFuZWxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb3ZlcmxheS1wYW5lbC9vdmVybGF5LXBhbmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQb3BvdmVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3BvcG92ZXIvcG9wb3Zlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmFkaW9Hcm91cEVudGl0eUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9yYWRpby1ncm91cC1lbnRpdHkvcmFkaW8tZ3JvdXAtZW50aXR5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSYWRpb0dyb3VwRW51bUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9yYWRpby1ncm91cC1lbnVtL3JhZGlvLWdyb3VwLWVudW0uY29tcG9uZW50JztcbmltcG9ydCB7IFNlbGVjdEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zZWxlY3QtYnV0dG9uL3NlbGVjdC1idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IFNlbGVjdEVudGl0eVBhZ2VkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NlbGVjdC1lbnRpdHktcGFnZWQvc2VsZWN0LWVudGl0eS1wYWdlZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2VsZWN0QnV0dG9uQWRkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NlbGVjdC1lbnRpdHktcGFnZWQvc2hhcmVkL3NlbGVjdC1idXR0b24tYWRkL3NlbGVjdC1idXR0b24tYWRkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTZWxlY3RCdXR0b25OZXh0QmF0Y2hDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc2VsZWN0LWVudGl0eS1wYWdlZC9zaGFyZWQvc2VsZWN0LWJ1dHRvbi1uZXh0LWJhdGNoL3NlbGVjdC1idXR0b24tbmV4dC1iYXRjaC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2VsZWN0Tm9FbnRyaWVzRm91bmREaXJlY3RpdmUgfSBmcm9tICcuL2NvbXBvbmVudHMvc2VsZWN0LWVudGl0eS1wYWdlZC9zaGFyZWQvc2VsZWN0LW5vLWVudHJpZXMtZm91bmQuZGlyZWN0aXZlJztcbmltcG9ydCB7IFNlbGVjdFNlYXJjaENsZWFyRGlyZWN0aXZlIH0gZnJvbSAnLi9jb21wb25lbnRzL3NlbGVjdC1lbnRpdHktcGFnZWQvc2hhcmVkL3NlbGVjdC1zZWFyY2gtY2xlYXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IFNlbGVjdFNlYXJjaENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zZWxlY3QtZW50aXR5LXBhZ2VkL3NoYXJlZC9zZWxlY3Qtc2VhcmNoL3NlbGVjdC1zZWFyY2guY29tcG9uZW50JztcbmltcG9ydCB7IFNlbGVjdEVudGl0eUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zZWxlY3QtZW50aXR5L3NlbGVjdC1lbnRpdHkuY29tcG9uZW50JztcbmltcG9ydCB7IFNlbGVjdEVudW1Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc2VsZWN0LWVudW0vc2VsZWN0LWVudW0uY29tcG9uZW50JztcbmltcG9ydCB7IFNlbGVjdE1vbnRoUGVyaW9kQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NlbGVjdC1tb250aC1wZXJpb2Qvc2VsZWN0LW1vbnRoLXBlcmlvZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2xpZGVUb2dnbGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc2xpZGUtdG9nZ2xlL3NsaWRlLXRvZ2dsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgU3RlcHBlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zdGVwcGVyL3N0ZXBwZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFRhYkdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RhYi1ncm91cC90YWItZ3JvdXAuY29tcG9uZW50JztcbmltcG9ydCB7IFRhYkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90YWIvdGFiLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJsZVNjcm9sbGVkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RhYmxlLXNjcm9sbGVkL3RhYmxlLXNjcm9sbGVkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90YWJsZS90YWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGV4dGFyZWFDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdGV4dGFyZWEvdGV4dGFyZWEuY29tcG9uZW50JztcbmltcG9ydCB7IER5bmFtaWNUYWJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZHluYW1pYy10YWIuZGlyZWN0aXZlJztcbmltcG9ydCB7IEl0c3NUZW1wbGF0ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9nZW5lcmljLXRlbXBsYXRlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBJbnB1dFNlbGVjdEluZmluaXRlU2Nyb2xsRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2lucHV0LXNlbGVjdC1pbmZpbml0ZS1zY3JvbGwuZGlyZWN0aXZlJztcbmltcG9ydCB7IExvd2VyQ2FzZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9sb3dlci1jYXNlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBQaG9uZU1hc2tEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvcGhvbmUtbWFzay5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgU3BhY2VEcm9wRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3NwYWNlLWRyb3AuZGlyZWN0aXZlJztcbmltcG9ydCB7IFVwcGVyQ2FzZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy91cHBlci1jYXNlLmRpcmVjdGl2ZSc7XG5cbmltcG9ydCB7IEdJUElfQlJFQUtQT0lOVFMsIEdJUElfQ1VTVE9NX0JSRUFLUE9JTlRTX1BST1ZJREVSIH0gZnJvbSAnLi4vY29yZS9jdXN0b20tYnJlYWtwb2ludHMnO1xuXG4vLyBOZXcgY29tcG9uZW50c1xuaW1wb3J0IHsgR0lQSUZpbGVEcmFnQW5kRHJvcERpcmVjdGl2ZSB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL2ZpbGUtZHJhZy1hbmQtZHJvcC9zaGFyZWQvZmlsZS1kcmFnLWFuZC1kcm9wLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBHSVBJSW5maW5pdGVTY3JvbGxEaXJlY3RpdmUgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9pbmZpbml0ZS1zY3JvbGwvaW5maW5pdGUtc2Nyb2xsLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBHSVBJQ29sRGlyZWN0aXZlIH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvbGF5b3V0LWdyaWQvY29sLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBHSVBJUm93RGlyZWN0aXZlLCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL2xheW91dC1ncmlkL3Jvdy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgR0lQSVBhZ2luYXRpb25Db250cm9sc0RpcmVjdGl2ZSB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL3RhYmxlL2NvbXBvbmVudHMvdGFibGUtcGFnaW5hdGlvbi9zaGFyZWQvcGFnaW5hdGlvbi1jb250cm9scy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgR0lQSVRlbXBsYXRlRGlyZWN0aXZlIH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvdGVtcGxhdGUvdGVtcGxhdGUuZGlyZWN0aXZlJztcblxuaW1wb3J0IHsgR0lQSVBhZ2luYXRlUGlwZSB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL3RhYmxlL2NvbXBvbmVudHMvdGFibGUtcGFnaW5hdGlvbi9zaGFyZWQvcGFnaW5hdGUucGlwZSc7XG5cbmltcG9ydCB7IEdJUElCcmVha3BvaW50U2VydmljZSB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL2xheW91dC1ncmlkL3NlcnZpY2VzL2JyZWFrcG9pbnQuc2VydmljZSc7XG5pbXBvcnQgeyBHSVBJUmVzaXplU2VydmljZSB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL2xheW91dC1ncmlkL3NlcnZpY2VzL3Jlc2l6ZS5zZXJ2aWNlJztcbmltcG9ydCB7IEdJUElPdmVybGF5U2VydmljZSB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL292ZXJsYXkvc2hhcmVkL292ZXJsYXktc2VydmljZSc7XG5pbXBvcnQgeyBHSVBJUGFnaW5hdGlvblNlcnZpY2UgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy90YWJsZS9jb21wb25lbnRzL3RhYmxlLXBhZ2luYXRpb24vc2hhcmVkL3BhZ2luYXRpb24uc2VydmljZSc7XG5cbmltcG9ydCB7IEdJUElBYnN0cmFjdEZvcm1Db21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9hYnN0cmFjdC1mb3JtL2Fic3RyYWN0LWZvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElBY3Rpb25Sb3dDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9hY3Rpb24tcm93L2FjdGlvbi1yb3cuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElCYWRnZUNvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL2JhZGdlL2JhZGdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSUNoaXBzQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvY2hpcHMvY2hpcHMuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElDb25maXJtYXRpb25EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9jb25maXJtYXRpb24tZGlhbG9nL2NvbmZpcm1hdGlvbi1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElEcm9wZG93bk1lbnVDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9kcm9wZG93bi1tZW51L2Ryb3Bkb3duLW1lbnUuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElFeHBhbnNpb25QYW5lbENvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL2V4cGFuc2lvbi1wYW5lbC9leHBhbnNpb24tcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElGaWxlRHJhZ0FuZERyb3BDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9maWxlLWRyYWctYW5kLWRyb3AvZmlsZS1kcmFnLWFuZC1kcm9wLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJRm9vdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvZm9vdGVyL2Zvb3Rlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSUZvcm1GaWVsZENvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL2Zvcm0tZmllbGQvZm9ybS1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSUhlbHBmdWxUaXBDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9oZWxwZnVsLXRpcC9oZWxwZnVsLXRpcC5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSUlucHV0Q2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9pbnB1dC1jaGVja2JveC9pbnB1dC1jaGVja2JveC5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSUlucHV0Q3VycmVuY3lDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9pbnB1dC1jdXJyZW5jeS9pbnB1dC1jdXJyZW5jeS5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSUlucHV0TW9udGhQaWNrZXJDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9pbnB1dC1tb250aHBpY2tlci9pbnB1dC1tb250aHBpY2tlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSUlucHV0U2VsZWN0RW51bUNvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL2lucHV0LXNlbGVjdC1lbnVtL2lucHV0LXNlbGVjdC1lbnVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJSW5wdXRTZWxlY3RMaXN0Ym94Q29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvaW5wdXQtc2VsZWN0LWxpc3Rib3gvaW5wdXQtc2VsZWN0LWxpc3Rib3guY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElJbnB1dFNlYXJjaENvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL2lucHV0LXNlbGVjdC1wYWdlZC9pbnB1dC1zZWFyY2gvaW5wdXQtc2VhcmNoLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJSW5wdXRTZWxlY3RQYWdlZENvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL2lucHV0LXNlbGVjdC1wYWdlZC9pbnB1dC1zZWxlY3QtcGFnZWQuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElJbnB1dFNlbGVjdFJhZGlvQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvaW5wdXQtc2VsZWN0LXJhZGlvL2lucHV0LXNlbGVjdC1yYWRpby5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSUlucHV0U2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvaW5wdXQtc2VsZWN0L2lucHV0LXNlbGVjdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSU5vdGlmaWNhdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElOb3ZlbHRpZXNDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9ub3ZlbHRpZXMvbm92ZWx0aWVzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJT3ZlcmxheUNvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL292ZXJsYXkvb3ZlcmxheS5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSVBhc3N3b3JkUmVxdWVyaW1lbnRzQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvcGFzc3dvcmQtcmVxdWVyaW1lbnRzL3Bhc3N3b3JkLXJlcXVlcmltZW50cy5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSVBvcG92ZXJDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9wb3BvdmVyL3BvcG92ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElQb3BvdmVyVGFyZ2V0IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvcG9wb3Zlci9zaGFyZWQvcG9wb3Zlci10YXJnZXQnO1xuaW1wb3J0IHsgR0lQSVBvcG92ZXJUcmlnZ2VyIH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvcG9wb3Zlci9zaGFyZWQvcG9wb3Zlci10cmlnZ2VyJztcbmltcG9ydCB7IEdJUElSYWRpb0dyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvcmFkaW8tZ3JvdXAvcmFkaW8tZ3JvdXAuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElTZWxlY3RCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9zZWxlY3QtYnV0dG9uL3NlbGVjdC1idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElTZWxlY3RDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9zZWxlY3Qvc2VsZWN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJU2lkZW5hdkNvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL3NpZGViYXIvY29udGFpbmVyL2NvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSVNpZGVuYXZDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9zaWRlYmFyL3NpZGVuYXYvc2lkZW5hdi5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSVN0ZXBwZXJDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9zdGVwcGVyL3N0ZXBwZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElUYWJsZUJvZHlDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy90YWJsZS9jb21wb25lbnRzL3RhYmxlLWJvZHkvdGFibGUtYm9keS5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSVRhYmxlRm9vdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvdGFibGUvY29tcG9uZW50cy90YWJsZS1mb290ZXIvdGFibGUtZm9vdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJVGFibGVIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy90YWJsZS9jb21wb25lbnRzL3RhYmxlLWhlYWRlci90YWJsZS1oZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElUYWJsZVBhZ2luYXRpb25Db21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy90YWJsZS9jb21wb25lbnRzL3RhYmxlLXBhZ2luYXRpb24vdGFibGUtcGFnaW5hdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSVRhYmxlUHJvZ3Jlc3NCYXJDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy90YWJsZS9jb21wb25lbnRzL3RhYmxlLXByb2dyZXNzLWJhci90YWJsZS1wcm9ncmVzcy1iYXIuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL3RhYmxlL3RhYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJVG9vbGJhckNvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL3Rvb2xiYXIvdG9vbGJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSVRvcE5hdkNvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL3RvcC1uYXYvdG9wLW5hdi5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSVVzZXJQcm9maWxlQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvdXNlci1wcm9maWxlL3VzZXItcHJvZmlsZS5jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBEYXRlcGlja2VyTW9kdWxlIH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9kYXRlcGlja2VyLm1vZHVsZSc7XG5pbXBvcnQgeyBEYXRlQWRhcHRlciwgTUFUX0RBVEVfTE9DQUxFIH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9tYXQtZGF0ZXBpY2tlci9zaGFyZWQvYWRhcHRlci9kYXRlLWFkYXB0ZXInO1xuaW1wb3J0IHsgTmF0aXZlRGF0ZUFkYXB0ZXIgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL21hdC1kYXRlcGlja2VyL3NoYXJlZC9hZGFwdGVyL25hdGl2ZS1kYXRlLWFkYXB0ZXInO1xuaW1wb3J0IHsgTW9udGhZZWFyUGlja2VyTW9kdWxlIH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvbW9udGgteWVhci1waWNrZXIvbW9udC15ZWFyLXBpY2tlci5tb2R1bGUnO1xuaW1wb3J0IHsgR0lQSVJhbmdlUGFnZUNvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL3JhbmdlLXBhZ2UvcmFuZ2UtcGFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSVJhbmdlU2xpZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvcmFuZ2Utc2xpZGVyL3JhbmdlLXNsaWRlci5jb21wb25lbnQnO1xuXG5leHBvcnQgbGV0IElOSkVDVE9SOiBJbmplY3RvcjtcblxuY29uc3QgR0lQSUNvbXBvbmVudHM6IGFueVtdID0gW1xuICAgIEdJUElUb3BOYXZDb21wb25lbnQsXG4gICAgR0lQSUZvb3RlckNvbXBvbmVudCxcbiAgICBHSVBJQnV0dG9uQ29tcG9uZW50LFxuICAgIEdJUElTaWRlbmF2Q29udGFpbmVyQ29tcG9uZW50LFxuICAgIEdJUElTaWRlbmF2Q29tcG9uZW50LFxuICAgIEdJUElPdmVybGF5Q29tcG9uZW50LFxuICAgIEdJUElUb29sYmFyQ29tcG9uZW50LFxuICAgIEdJUElTZWxlY3RCdXR0b25Db21wb25lbnQsXG4gICAgR0lQSVVzZXJQcm9maWxlQ29tcG9uZW50LFxuICAgIEdJUElTZWxlY3RDb21wb25lbnQsXG4gICAgR0lQSU5vdGlmaWNhdGlvbkNvbXBvbmVudCxcbiAgICBHSVBJTm92ZWx0aWVzQ29tcG9uZW50LFxuICAgIEdJUElQb3BvdmVyQ29tcG9uZW50LFxuICAgIEdJUElQb3BvdmVyVHJpZ2dlcixcbiAgICBHSVBJUG9wb3ZlclRhcmdldCxcbiAgICBHSVBJQWN0aW9uUm93Q29tcG9uZW50LFxuICAgIEdJUElBYnN0cmFjdEZvcm1Db21wb25lbnQsXG4gICAgR0lQSVN0ZXBwZXJDb21wb25lbnQsXG4gICAgR0lQSUZpbGVEcmFnQW5kRHJvcENvbXBvbmVudCxcbiAgICBHSVBJQ29uZmlybWF0aW9uRGlhbG9nQ29tcG9uZW50LFxuICAgIEdJUElJbnB1dE1vbnRoUGlja2VyQ29tcG9uZW50LFxuICAgIEdJUElSYWRpb0dyb3VwQ29tcG9uZW50LFxuICAgIEdJUElJbnB1dFNlbGVjdFJhZGlvQ29tcG9uZW50LFxuICAgIEdJUElJbnB1dFNlbGVjdExpc3Rib3hDb21wb25lbnQsXG4gICAgR0lQSUlucHV0U2VsZWN0Q29tcG9uZW50LFxuICAgIEdJUElGb3JtRmllbGRDb21wb25lbnQsXG4gICAgR0lQSUlucHV0Q2hlY2tib3hDb21wb25lbnQsXG4gICAgR0lQSUNoaXBzQ29tcG9uZW50LFxuICAgIEdJUElJbnB1dEN1cnJlbmN5Q29tcG9uZW50LFxuICAgIEdJUElJbnB1dFNlYXJjaENvbXBvbmVudCxcbiAgICBHSVBJSW5wdXRTZWxlY3RQYWdlZENvbXBvbmVudCxcbiAgICBHSVBJSW5wdXRTZWxlY3RFbnVtQ29tcG9uZW50LFxuICAgIEdJUElEcm9wZG93bk1lbnVDb21wb25lbnQsXG4gICAgR0lQSUV4cGFuc2lvblBhbmVsQ29tcG9uZW50LFxuICAgIEdJUElQYXNzd29yZFJlcXVlcmltZW50c0NvbXBvbmVudCxcbiAgICBHSVBJSGVscGZ1bFRpcENvbXBvbmVudCxcbiAgICBHSVBJQmFkZ2VDb21wb25lbnQsXG4gICAgR0lQSVJhbmdlU2xpZGVyQ29tcG9uZW50LFxuICAgIEdJUElSYW5nZVBhZ2VDb21wb25lbnQsXG5cbiAgICAvLyBUYWJsZVxuICAgIEdJUElUYWJsZUhlYWRlckNvbXBvbmVudCxcbiAgICBHSVBJVGFibGVCb2R5Q29tcG9uZW50LFxuICAgIEdJUElUYWJsZUZvb3RlckNvbXBvbmVudCxcbiAgICBHSVBJVGFibGVQYWdpbmF0aW9uQ29tcG9uZW50LFxuICAgIEdJUElUYWJsZVByb2dyZXNzQmFyQ29tcG9uZW50LFxuICAgIEdJUElUYWJsZUNvbXBvbmVudCxcbl07XG5cbmNvbnN0IEdJUElEaXJlY3RpdmVzOiBhbnlbXSA9IFtcbiAgICBHSVBJVGVtcGxhdGVEaXJlY3RpdmUsXG4gICAgR0lQSUNvbERpcmVjdGl2ZSxcbiAgICBHSVBJUm93RGlyZWN0aXZlLFxuICAgIEdJUElGaWxlRHJhZ0FuZERyb3BEaXJlY3RpdmUsXG4gICAgR0lQSUluZmluaXRlU2Nyb2xsRGlyZWN0aXZlLFxuICAgIEdJUElQYWdpbmF0aW9uQ29udHJvbHNEaXJlY3RpdmUsXG5dO1xuXG5jb25zdCBHSVBJUGlwZXM6IGFueVtdID0gW1xuICAgIEdJUElQYWdpbmF0ZVBpcGUsXG5dO1xuXG5jb25zdCBHSVBJU2VydmljZXM6IGFueVtdID0gW1xuICAgIEdJUElPdmVybGF5U2VydmljZSxcbiAgICBHSVBJQnJlYWtwb2ludFNlcnZpY2UsXG4gICAgR0lQSVJlc2l6ZVNlcnZpY2UsXG4gICAgR0lQSVBhZ2luYXRpb25TZXJ2aWNlLFxuXTtcblxuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgICAgR0lQSUNvbXBvbmVudHMsXG4gICAgICAgIEdJUElEaXJlY3RpdmVzLFxuICAgICAgICBHSVBJUGlwZXMsXG4gICAgICAgIExvYWRpbmdDb21wb25lbnQsXG4gICAgICAgIExvYWRpbmdPdmVybGF5Q29tcG9uZW50LFxuICAgICAgICBCdXR0b25Db21wb25lbnQsXG4gICAgICAgIElucHV0Q29tcG9uZW50LFxuICAgICAgICBTZWxlY3RFbnRpdHlDb21wb25lbnQsXG4gICAgICAgIFNlbGVjdEVudW1Db21wb25lbnQsXG4gICAgICAgIFRhYmxlQ29tcG9uZW50LFxuICAgICAgICBDYXJkQ29tcG9uZW50LFxuICAgICAgICBDaGVja2JveENvbXBvbmVudCxcbiAgICAgICAgUmFkaW9Hcm91cEVudGl0eUNvbXBvbmVudCxcbiAgICAgICAgUmFkaW9Hcm91cEVudW1Db21wb25lbnQsXG4gICAgICAgIFNsaWRlVG9nZ2xlQ29tcG9uZW50LFxuICAgICAgICBUYWJHcm91cENvbXBvbmVudCxcbiAgICAgICAgVGFiQ29tcG9uZW50LFxuICAgICAgICBEeW5hbWljVGFiRGlyZWN0aXZlLFxuICAgICAgICBJY29uQ29tcG9uZW50LFxuICAgICAgICBTdGVwcGVyQ29tcG9uZW50LFxuICAgICAgICBUZXh0YXJlYUNvbXBvbmVudCxcbiAgICAgICAgSW5wdXRDdXJyZW5jeUNvbXBvbmVudCxcbiAgICAgICAgSW5wdXRGaWxlQ29tcG9uZW50LFxuICAgICAgICBQb3BvdmVyQ29tcG9uZW50LFxuICAgICAgICBQaG9uZU1hc2tEaXJlY3RpdmUsXG4gICAgICAgIFVwcGVyQ2FzZURpcmVjdGl2ZSxcbiAgICAgICAgTG93ZXJDYXNlRGlyZWN0aXZlLFxuICAgICAgICBTcGFjZURyb3BEaXJlY3RpdmUsXG4gICAgICAgIE92ZXJsYXlQYW5lbENvbXBvbmVudCxcbiAgICAgICAgSXRzc1RlbXBsYXRlLFxuICAgICAgICBTZWxlY3RCdXR0b25Db21wb25lbnQsXG4gICAgICAgIFNlbGVjdE1vbnRoUGVyaW9kQ29tcG9uZW50LFxuICAgICAgICBJbnB1dFNlbGVjdEluZmluaXRlU2Nyb2xsRGlyZWN0aXZlLFxuICAgICAgICBUYWJsZVNjcm9sbGVkQ29tcG9uZW50LFxuICAgICAgICBTZWxlY3RTZWFyY2hDb21wb25lbnQsXG4gICAgICAgIFNlbGVjdEVudGl0eVBhZ2VkQ29tcG9uZW50LFxuICAgICAgICBTZWxlY3ROb0VudHJpZXNGb3VuZERpcmVjdGl2ZSxcbiAgICAgICAgU2VsZWN0U2VhcmNoQ2xlYXJEaXJlY3RpdmUsXG4gICAgICAgIFNlbGVjdEJ1dHRvbkFkZENvbXBvbmVudCxcbiAgICAgICAgU2VsZWN0QnV0dG9uTmV4dEJhdGNoQ29tcG9uZW50LFxuICAgIF0sXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIFJvdXRlck1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgICAgIE1hdGVyaWFsTW9kdWxlLFxuICAgICAgICBGbGV4TGF5b3V0TW9kdWxlLndpdGhDb25maWcoeyBkaXNhYmxlRGVmYXVsdEJwczogdHJ1ZSB9LCBHSVBJX0JSRUFLUE9JTlRTKSxcbiAgICAgICAgTmd4TWFza01vZHVsZS5mb3JDaGlsZCgpLFxuICAgICAgICBOZ3hDdXJyZW5jeU1vZHVsZSxcbiAgICAgICAgTmd4TWF0ZXJpYWxUaW1lcGlja2VyTW9kdWxlLFxuICAgICAgICBNZGVQb3BvdmVyTW9kdWxlLFxuICAgICAgICBJbmZpbml0ZVNjcm9sbE1vZHVsZSxcbiAgICAgICAgTWVudGlvbk1vZHVsZSxcblxuICAgICAgICBEYXRlcGlja2VyTW9kdWxlLFxuICAgICAgICBNb250aFllYXJQaWNrZXJNb2R1bGUsXG4gICAgXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIEdJUElDb21wb25lbnRzLFxuICAgICAgICBHSVBJRGlyZWN0aXZlcyxcbiAgICAgICAgR0lQSVBpcGVzLFxuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIFJvdXRlck1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgICAgIEZsZXhMYXlvdXRNb2R1bGUsXG4gICAgICAgIENka1N0ZXBwZXJNb2R1bGUsXG4gICAgICAgIE1hdFJpcHBsZU1vZHVsZSxcbiAgICAgICAgTWF0RGlhbG9nTW9kdWxlLFxuICAgICAgICBJbmZpbml0ZVNjcm9sbE1vZHVsZSxcbiAgICAgICAgTG9hZGluZ0NvbXBvbmVudCxcbiAgICAgICAgTG9hZGluZ092ZXJsYXlDb21wb25lbnQsXG4gICAgICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICAgICAgSW5wdXRDb21wb25lbnQsXG4gICAgICAgIFNlbGVjdEVudGl0eUNvbXBvbmVudCxcbiAgICAgICAgU2VsZWN0RW51bUNvbXBvbmVudCxcbiAgICAgICAgVGFibGVDb21wb25lbnQsXG4gICAgICAgIENhcmRDb21wb25lbnQsXG4gICAgICAgIENoZWNrYm94Q29tcG9uZW50LFxuICAgICAgICBSYWRpb0dyb3VwRW50aXR5Q29tcG9uZW50LFxuICAgICAgICBSYWRpb0dyb3VwRW51bUNvbXBvbmVudCxcbiAgICAgICAgU2xpZGVUb2dnbGVDb21wb25lbnQsXG4gICAgICAgIFRhYkdyb3VwQ29tcG9uZW50LFxuICAgICAgICBUYWJDb21wb25lbnQsXG4gICAgICAgIEljb25Db21wb25lbnQsXG4gICAgICAgIFN0ZXBwZXJDb21wb25lbnQsXG4gICAgICAgIFRleHRhcmVhQ29tcG9uZW50LFxuICAgICAgICBJbnB1dEN1cnJlbmN5Q29tcG9uZW50LFxuICAgICAgICBJbnB1dEZpbGVDb21wb25lbnQsXG4gICAgICAgIFBvcG92ZXJDb21wb25lbnQsXG4gICAgICAgIE1lbnRpb25Nb2R1bGUsXG4gICAgICAgIE92ZXJsYXlQYW5lbENvbXBvbmVudCxcbiAgICAgICAgSXRzc1RlbXBsYXRlLFxuICAgICAgICBTZWxlY3RCdXR0b25Db21wb25lbnQsXG4gICAgICAgIFNlbGVjdE1vbnRoUGVyaW9kQ29tcG9uZW50LFxuICAgICAgICBJbnB1dFNlbGVjdEluZmluaXRlU2Nyb2xsRGlyZWN0aXZlLFxuICAgICAgICBUYWJsZVNjcm9sbGVkQ29tcG9uZW50LFxuICAgICAgICBTZWxlY3RTZWFyY2hDb21wb25lbnQsXG4gICAgICAgIFNlbGVjdEVudGl0eVBhZ2VkQ29tcG9uZW50LFxuICAgICAgICBTZWxlY3ROb0VudHJpZXNGb3VuZERpcmVjdGl2ZSxcbiAgICAgICAgU2VsZWN0U2VhcmNoQ2xlYXJEaXJlY3RpdmUsXG4gICAgICAgIFNlbGVjdEJ1dHRvbkFkZENvbXBvbmVudCxcbiAgICAgICAgU2VsZWN0QnV0dG9uTmV4dEJhdGNoQ29tcG9uZW50LFxuXG4gICAgICAgIERhdGVwaWNrZXJNb2R1bGUsXG4gICAgICAgIE1vbnRoWWVhclBpY2tlck1vZHVsZSxcbiAgICBdLFxuICAgIGVudHJ5Q29tcG9uZW50czogW1xuICAgICAgICBHSVBJQ29uZmlybWF0aW9uRGlhbG9nQ29tcG9uZW50LFxuICAgICAgICBUYWJHcm91cENvbXBvbmVudCxcbiAgICAgICAgVGFiQ29tcG9uZW50LFxuICAgICAgICBQb3BvdmVyQ29tcG9uZW50LFxuICAgIF0sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIEdJUElTZXJ2aWNlcyxcbiAgICAgICAgR0lQSV9DVVNUT01fQlJFQUtQT0lOVFNfUFJPVklERVIsXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IERhdGVBZGFwdGVyLFxuICAgICAgICAgICAgdXNlQ2xhc3M6IE5hdGl2ZURhdGVBZGFwdGVyLFxuICAgICAgICAgICAgZGVwczogW01BVF9EQVRFX0xPQ0FMRV1cbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogTUFUX0RBVEVfTE9DQUxFLFxuICAgICAgICAgICAgdXNlVmFsdWU6ICdwdC1CUicsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE1BVF9EQVRFX0ZPUk1BVFMsXG4gICAgICAgICAgICB1c2VWYWx1ZToge1xuICAgICAgICAgICAgICAgIHBhcnNlOiB7XG4gICAgICAgICAgICAgICAgICAgIGRhdGVJbnB1dDogJ0REL01NL1lZWVknLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgZGlzcGxheToge1xuICAgICAgICAgICAgICAgICAgICBkYXRlSW5wdXQ6ICdERC9NTS9ZWVlZJyxcbiAgICAgICAgICAgICAgICAgICAgbW9udGhZZWFyTGFiZWw6ICdNTU0gWVlZWScsXG4gICAgICAgICAgICAgICAgICAgIGRhdGVBMTF5TGFiZWw6ICdMTCcsXG4gICAgICAgICAgICAgICAgICAgIG1vbnRoWWVhckExMXlMYWJlbDogJ01NTU0gWVlZWScsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBTaGFyZWRNb2R1bGUge1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgX2luamVjdG9yOiBJbmplY3Rvcikge1xuICAgICAgICBJTkpFQ1RPUiA9IHRoaXMuX2luamVjdG9yO1xuICAgIH1cbn1cbiJdfQ==
345
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BnaXBpc2lzdGVtYXMvbmctY29yZS8iLCJzb3VyY2VzIjpbInNoYXJlZC9zaGFyZWQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDckUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzFELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDakQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5RUFBeUUsQ0FBQztBQUUzRyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFB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WUFDaEIsZ0JBQWdCO1NBQ25CO1FBQ0QsU0FBUyxFQUFFO1lBQ1AsWUFBWTtZQUNaLGdDQUFnQztZQUNoQztnQkFDSSxPQUFPLEVBQUUsV0FBVztnQkFDcEIsUUFBUSxFQUFFLGlCQUFpQjtnQkFDM0IsSUFBSSxFQUFFLENBQUMsZUFBZSxDQUFDO2FBQzFCO1lBQ0Q7Z0JBQ0ksT0FBTyxFQUFFLGVBQWU7Z0JBQ3hCLFFBQVEsRUFBRSxPQUFPO2FBQ3BCO1lBQ0Q7Z0JBQ0ksT0FBTyxFQUFFLGdCQUFnQjtnQkFDekIsUUFBUSxJQVVQO2FBQ0o7U0FDSjtLQUNKLENBQUM7cUNBRWlDLFFBQVE7R0FEOUIsWUFBWSxDQUl4QjtTQUpZLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZGtTdGVwcGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3N0ZXBwZXInO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEluamVjdG9yLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmxleExheW91dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2ZsZXgtbGF5b3V0JztcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0RGlhbG9nTW9kdWxlLCBNYXRSaXBwbGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbCc7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTWRlUG9wb3Zlck1vZHVsZSB9IGZyb20gJ0BtYXRlcmlhbC1leHRlbmRlZC9tZGUnO1xuaW1wb3J0IHsgTWVudGlvbk1vZHVsZSB9IGZyb20gJ2FuZ3VsYXItbWVudGlvbnMnO1xuaW1wb3J0IHsgTmd4Q3VycmVuY3lNb2R1bGUgfSBmcm9tICduZ3gtY3VycmVuY3knO1xuaW1wb3J0IHsgSW5maW5pdGVTY3JvbGxNb2R1bGUgfSBmcm9tICduZ3gtaW5maW5pdGUtc2Nyb2xsJztcbmltcG9ydCB7IE5neE1hc2tNb2R1bGUgfSBmcm9tICduZ3gtbWFzayc7XG5pbXBvcnQgeyBOZ3hNYXRlcmlhbFRpbWVwaWNrZXJNb2R1bGUgfSBmcm9tICduZ3gtbWF0ZXJpYWwtdGltZXBpY2tlcic7XG5pbXBvcnQgeyBNQVRfREFURV9GT1JNQVRTIH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9tYXQtZGF0ZXBpY2tlci9zaGFyZWQvYWRhcHRlci9kYXRlLWZvcm1hdHMnO1xuXG5pbXBvcnQgeyBNYXRlcmlhbE1vZHVsZSB9IGZyb20gJy4vbWF0ZXJpYWwubW9kdWxlJztcblxuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IENhcmRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY2FyZC9jYXJkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDaGVja2JveENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jaGVja2JveC9jaGVja2JveC5jb21wb25lbnQnO1xuaW1wb3J0IHsgSWNvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9pY29uL2ljb24uY29tcG9uZW50JztcbmltcG9ydCB7IElucHV0Q3VycmVuY3lDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvaW5wdXQtY3VycmVuY3kvaW5wdXQtY3VycmVuY3kuY29tcG9uZW50JztcbmltcG9ydCB7IElucHV0RmlsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9pbnB1dC1maWxlL2lucHV0LWZpbGUuY29tcG9uZW50JztcbmltcG9ydCB7IElucHV0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2lucHV0L2lucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMb2FkaW5nT3ZlcmxheUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9sb2FkaW5nLW92ZXJsYXkvbG9hZGluZy1vdmVybGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMb2FkaW5nQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xvYWRpbmcvbG9hZGluZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgT3ZlcmxheVBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL292ZXJsYXktcGFuZWwvb3ZlcmxheS1wYW5lbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUG9wb3ZlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wb3BvdmVyL3BvcG92ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFJhZGlvR3JvdXBFbnRpdHlDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcmFkaW8tZ3JvdXAtZW50aXR5L3JhZGlvLWdyb3VwLWVudGl0eS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmFkaW9Hcm91cEVudW1Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcmFkaW8tZ3JvdXAtZW51bS9yYWRpby1ncm91cC1lbnVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTZWxlY3RFbnRpdHlQYWdlZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zZWxlY3QtZW50aXR5LXBhZ2VkL3NlbGVjdC1lbnRpdHktcGFnZWQuY29tcG9uZW50JztcbmltcG9ydCB7IFNlbGVjdEJ1dHRvbkFkZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zZWxlY3QtZW50aXR5LXBhZ2VkL3NoYXJlZC9zZWxlY3QtYnV0dG9uLWFkZC9zZWxlY3QtYnV0dG9uLWFkZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2VsZWN0QnV0dG9uTmV4dEJhdGNoQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NlbGVjdC1lbnRpdHktcGFnZWQvc2hhcmVkL3NlbGVjdC1idXR0b24tbmV4dC1iYXRjaC9zZWxlY3QtYnV0dG9uLW5leHQtYmF0Y2guY29tcG9uZW50JztcbmltcG9ydCB7IFNlbGVjdE5vRW50cmllc0ZvdW5kRGlyZWN0aXZlIH0gZnJvbSAnLi9jb21wb25lbnRzL3NlbGVjdC1lbnRpdHktcGFnZWQvc2hhcmVkL3NlbGVjdC1uby1lbnRyaWVzLWZvdW5kLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTZWxlY3RTZWFyY2hDbGVhckRpcmVjdGl2ZSB9IGZyb20gJy4vY29tcG9uZW50cy9zZWxlY3QtZW50aXR5LXBhZ2VkL3NoYXJlZC9zZWxlY3Qtc2VhcmNoLWNsZWFyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTZWxlY3RTZWFyY2hDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc2VsZWN0LWVudGl0eS1wYWdlZC9zaGFyZWQvc2VsZWN0LXNlYXJjaC9zZWxlY3Qtc2VhcmNoLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTZWxlY3RFbnRpdHlDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc2VsZWN0LWVudGl0eS9zZWxlY3QtZW50aXR5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTZWxlY3RFbnVtQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NlbGVjdC1lbnVtL3NlbGVjdC1lbnVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTZWxlY3RNb250aFBlcmlvZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zZWxlY3QtbW9udGgtcGVyaW9kL3NlbGVjdC1tb250aC1wZXJpb2QuY29tcG9uZW50JztcbmltcG9ydCB7IFNsaWRlVG9nZ2xlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NsaWRlLXRvZ2dsZS9zbGlkZS10b2dnbGUuY29tcG9uZW50JztcbmltcG9ydCB7IFN0ZXBwZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc3RlcHBlci9zdGVwcGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJsZVNjcm9sbGVkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RhYmxlLXNjcm9sbGVkL3RhYmxlLXNjcm9sbGVkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90YWJsZS90YWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGV4dGFyZWFDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdGV4dGFyZWEvdGV4dGFyZWEuY29tcG9uZW50JztcbmltcG9ydCB7IEl0c3NUZW1wbGF0ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9nZW5lcmljLXRlbXBsYXRlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBJbnB1dFNlbGVjdEluZmluaXRlU2Nyb2xsRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2lucHV0LXNlbGVjdC1pbmZpbml0ZS1zY3JvbGwuZGlyZWN0aXZlJztcbmltcG9ydCB7IExvd2VyQ2FzZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9sb3dlci1jYXNlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBQaG9uZU1hc2tEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvcGhvbmUtbWFzay5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgU3BhY2VEcm9wRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3NwYWNlLWRyb3AuZGlyZWN0aXZlJztcbmltcG9ydCB7IFVwcGVyQ2FzZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy91cHBlci1jYXNlLmRpcmVjdGl2ZSc7XG5cbmltcG9ydCB7IEdJUElfQlJFQUtQT0lOVFMsIEdJUElfQ1VTVE9NX0JSRUFLUE9JTlRTX1BST1ZJREVSIH0gZnJvbSAnLi4vY29yZS9jdXN0b20tYnJlYWtwb2ludHMnO1xuXG4vLyBOZXcgY29tcG9uZW50c1xuaW1wb3J0IHsgR0lQSUZpbGVEcmFnQW5kRHJvcERpcmVjdGl2ZSB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL2ZpbGUtZHJhZy1hbmQtZHJvcC9zaGFyZWQvZmlsZS1kcmFnLWFuZC1kcm9wLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBHSVBJSW5maW5pdGVTY3JvbGxEaXJlY3RpdmUgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9pbmZpbml0ZS1zY3JvbGwvaW5maW5pdGUtc2Nyb2xsLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBHSVBJQ29sRGlyZWN0aXZlIH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvbGF5b3V0LWdyaWQvY29sLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBHSVBJUm93RGlyZWN0aXZlLCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL2xheW91dC1ncmlkL3Jvdy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgR0lQSVBhZ2luYXRpb25Db250cm9sc0RpcmVjdGl2ZSB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL3RhYmxlL2NvbXBvbmVudHMvdGFibGUtcGFnaW5hdGlvbi9zaGFyZWQvcGFnaW5hdGlvbi1jb250cm9scy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgR0lQSUR5bmFtaWNUYWJEaXJlY3RpdmUgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy90YWJzL3NoYXJlZC9keW5hbWljLXRhYi5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgR0lQSVRlbXBsYXRlRGlyZWN0aXZlIH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvdGVtcGxhdGUvdGVtcGxhdGUuZGlyZWN0aXZlJztcblxuaW1wb3J0IHsgR0lQSVBhZ2luYXRlUGlwZSB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL3RhYmxlL2NvbXBvbmVudHMvdGFibGUtcGFnaW5hdGlvbi9zaGFyZWQvcGFnaW5hdGUucGlwZSc7XG5cbmltcG9ydCB7IEdJUElCcmVha3BvaW50U2VydmljZSB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL2xheW91dC1ncmlkL3NlcnZpY2VzL2JyZWFrcG9pbnQuc2VydmljZSc7XG5pbXBvcnQgeyBHSVBJUmVzaXplU2VydmljZSB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL2xheW91dC1ncmlkL3NlcnZpY2VzL3Jlc2l6ZS5zZXJ2aWNlJztcbmltcG9ydCB7IEdJUElPdmVybGF5U2VydmljZSB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL292ZXJsYXkvc2hhcmVkL292ZXJsYXktc2VydmljZSc7XG5pbXBvcnQgeyBHSVBJUGFnaW5hdGlvblNlcnZpY2UgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy90YWJsZS9jb21wb25lbnRzL3RhYmxlLXBhZ2luYXRpb24vc2hhcmVkL3BhZ2luYXRpb24uc2VydmljZSc7XG5cbmltcG9ydCB7IEdJUElBYnN0cmFjdEZvcm1Db21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9hYnN0cmFjdC1mb3JtL2Fic3RyYWN0LWZvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElBY3Rpb25Sb3dDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9hY3Rpb24tcm93L2FjdGlvbi1yb3cuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElCYWRnZUNvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL2JhZGdlL2JhZGdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSUNhcmRDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9jYXJkL2NhcmQuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElDaGlwc0NvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL2NoaXBzL2NoaXBzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJQ29uZmlybWF0aW9uRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvY29uZmlybWF0aW9uLWRpYWxvZy9jb25maXJtYXRpb24tZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJRHJvcGRvd25NZW51Q29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvZHJvcGRvd24tbWVudS9kcm9wZG93bi1tZW51LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJRW1wdHlTdGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL2VtcHR5LXN0YXRlL2VtcHR5LXN0YXRlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJRXhwYW5zaW9uUGFuZWxDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9leHBhbnNpb24tcGFuZWwvZXhwYW5zaW9uLXBhbmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJRmlsZURyYWdBbmREcm9wQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvZmlsZS1kcmFnLWFuZC1kcm9wL2ZpbGUtZHJhZy1hbmQtZHJvcC5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSUZvb3RlckNvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL2Zvb3Rlci9mb290ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElGb3JtRmllbGRDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9mb3JtLWZpZWxkL2Zvcm0tZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElIZWxwZnVsVGlwQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvaGVscGZ1bC10aXAvaGVscGZ1bC10aXAuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElJbnB1dENoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvaW5wdXQtY2hlY2tib3gvaW5wdXQtY2hlY2tib3guY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElJbnB1dEN1cnJlbmN5Q29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvaW5wdXQtY3VycmVuY3kvaW5wdXQtY3VycmVuY3kuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElJbnB1dE1vbnRoUGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvaW5wdXQtbW9udGhwaWNrZXIvaW5wdXQtbW9udGhwaWNrZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElJbnB1dFNlbGVjdEVudW1Db21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9pbnB1dC1zZWxlY3QtZW51bS9pbnB1dC1zZWxlY3QtZW51bS5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSUlucHV0U2VsZWN0TGlzdGJveENvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL2lucHV0LXNlbGVjdC1saXN0Ym94L2lucHV0LXNlbGVjdC1saXN0Ym94LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJSW5wdXRTZWFyY2hDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9pbnB1dC1zZWxlY3QtcGFnZWQvaW5wdXQtc2VhcmNoL2lucHV0LXNlYXJjaC5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSUlucHV0U2VsZWN0UGFnZWRDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9pbnB1dC1zZWxlY3QtcGFnZWQvaW5wdXQtc2VsZWN0LXBhZ2VkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJSW5wdXRTZWxlY3RSYWRpb0NvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL2lucHV0LXNlbGVjdC1yYWRpby9pbnB1dC1zZWxlY3QtcmFkaW8uY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElJbnB1dFNlbGVjdENvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL2lucHV0LXNlbGVjdC9pbnB1dC1zZWxlY3QuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElOb3RpZmljYXRpb25Db21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJTm92ZWx0aWVzQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvbm92ZWx0aWVzL25vdmVsdGllcy5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSU92ZXJsYXlDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9vdmVybGF5L292ZXJsYXkuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElQYXNzd29yZFJlcXVlcmltZW50c0NvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL3Bhc3N3b3JkLXJlcXVlcmltZW50cy9wYXNzd29yZC1yZXF1ZXJpbWVudHMuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElQb3BvdmVyQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvcG9wb3Zlci9wb3BvdmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJUG9wb3ZlclRhcmdldCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL3BvcG92ZXIvc2hhcmVkL3BvcG92ZXItdGFyZ2V0JztcbmltcG9ydCB7IEdJUElQb3BvdmVyVHJpZ2dlciB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL3BvcG92ZXIvc2hhcmVkL3BvcG92ZXItdHJpZ2dlcic7XG5pbXBvcnQgeyBHSVBJUmFkaW9Hcm91cENvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL3JhZGlvLWdyb3VwL3JhZGlvLWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJUmFuZ2VQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvcmFuZ2UtcGFnZS9yYW5nZS1wYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJUmFuZ2VTbGlkZXJDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9yYW5nZS1zbGlkZXIvcmFuZ2Utc2xpZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJU2VsZWN0QnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvc2VsZWN0LWJ1dHRvbi9zZWxlY3QtYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvc2VsZWN0L3NlbGVjdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSVNpZGVuYXZDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9zaWRlYmFyL2NvbnRhaW5lci9jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElTaWRlbmF2Q29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvc2lkZWJhci9zaWRlbmF2L3NpZGVuYXYuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElTbGlkZVRvZ2dsZUNvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL3NsaWRlLXRvZ2dsZS9zbGlkZS10b2dnbGUuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElTdGVwcGVyQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvc3RlcHBlci9zdGVwcGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJVGFibGVCb2R5Q29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvdGFibGUvY29tcG9uZW50cy90YWJsZS1ib2R5L3RhYmxlLWJvZHkuY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElUYWJsZUZvb3RlckNvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL3RhYmxlL2NvbXBvbmVudHMvdGFibGUtZm9vdGVyL3RhYmxlLWZvb3Rlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSVRhYmxlSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvdGFibGUvY29tcG9uZW50cy90YWJsZS1oZWFkZXIvdGFibGUtaGVhZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJVGFibGVQYWdpbmF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvdGFibGUvY29tcG9uZW50cy90YWJsZS1wYWdpbmF0aW9uL3RhYmxlLXBhZ2luYXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IEdJUElUYWJsZVByb2dyZXNzQmFyQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvdGFibGUvY29tcG9uZW50cy90YWJsZS1wcm9ncmVzcy1iYXIvdGFibGUtcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJVGFibGVDb21wb25lbnQgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy90YWJsZS90YWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSVRhYkdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvdGFicy90YWItZ3JvdXAvdGFiLWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJVGFiQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvdGFicy90YWIvdGFiLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHSVBJVG9vbGJhckNvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL3Rvb2xiYXIvdG9vbGJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSVRvcE5hdkNvbXBvbmVudCB9IGZyb20gJy4vZ2lwaS1jb21wb25lbnRzL3RvcC1uYXYvdG9wLW5hdi5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSVVzZXJQcm9maWxlQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvdXNlci1wcm9maWxlL3VzZXItcHJvZmlsZS5jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBEYXRlcGlja2VyTW9kdWxlIH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9kYXRlcGlja2VyLm1vZHVsZSc7XG5pbXBvcnQgeyBEYXRlQWRhcHRlciwgTUFUX0RBVEVfTE9DQUxFIH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9tYXQtZGF0ZXBpY2tlci9zaGFyZWQvYWRhcHRlci9kYXRlLWFkYXB0ZXInO1xuaW1wb3J0IHsgTmF0aXZlRGF0ZUFkYXB0ZXIgfSBmcm9tICcuL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL21hdC1kYXRlcGlja2VyL3NoYXJlZC9hZGFwdGVyL25hdGl2ZS1kYXRlLWFkYXB0ZXInO1xuaW1wb3J0IHsgTW9udGhZZWFyUGlja2VyTW9kdWxlIH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvbW9udGgteWVhci1waWNrZXIvbW9udC15ZWFyLXBpY2tlci5tb2R1bGUnO1xuaW1wb3J0IHsgR0lQSVNwbGl0QnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvc3BsaXQtYnV0dG9uL3NwbGl0LWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0lQSVRleHRhcmVhQ29tcG9uZW50IH0gZnJvbSAnLi9naXBpLWNvbXBvbmVudHMvdGV4dGFyZWEvdGV4dGFyZWEuY29tcG9uZW50JztcblxuZXhwb3J0IGxldCBJTkpFQ1RPUjogSW5qZWN0b3I7XG5cbmNvbnN0IEdJUElDb21wb25lbnRzOiBhbnlbXSA9IFtcbiAgICBHSVBJVG9wTmF2Q29tcG9uZW50LFxuICAgIEdJUElGb290ZXJDb21wb25lbnQsXG4gICAgR0lQSUJ1dHRvbkNvbXBvbmVudCxcbiAgICBHSVBJU2lkZW5hdkNvbnRhaW5lckNvbXBvbmVudCxcbiAgICBHSVBJU2lkZW5hdkNvbXBvbmVudCxcbiAgICBHSVBJT3ZlcmxheUNvbXBvbmVudCxcbiAgICBHSVBJVG9vbGJhckNvbXBvbmVudCxcbiAgICBHSVBJU2VsZWN0QnV0dG9uQ29tcG9uZW50LFxuICAgIEdJUElVc2VyUHJvZmlsZUNvbXBvbmVudCxcbiAgICBHSVBJU2VsZWN0Q29tcG9uZW50LFxuICAgIEdJUElOb3RpZmljYXRpb25Db21wb25lbnQsXG4gICAgR0lQSU5vdmVsdGllc0NvbXBvbmVudCxcbiAgICBHSVBJUG9wb3ZlckNvbXBvbmVudCxcbiAgICBHSVBJUG9wb3ZlclRyaWdnZXIsXG4gICAgR0lQSVBvcG92ZXJUYXJnZXQsXG4gICAgR0lQSUFjdGlvblJvd0NvbXBvbmVudCxcbiAgICBHSVBJQWJzdHJhY3RGb3JtQ29tcG9uZW50LFxuICAgIEdJUElTdGVwcGVyQ29tcG9uZW50LFxuICAgIEdJUElGaWxlRHJhZ0FuZERyb3BDb21wb25lbnQsXG4gICAgR0lQSUNvbmZpcm1hdGlvbkRpYWxvZ0NvbXBvbmVudCxcbiAgICBHSVBJSW5wdXRNb250aFBpY2tlckNvbXBvbmVudCxcbiAgICBHSVBJUmFkaW9Hcm91cENvbXBvbmVudCxcbiAgICBHSVBJSW5wdXRTZWxlY3RSYWRpb0NvbXBvbmVudCxcbiAgICBHSVBJSW5wdXRTZWxlY3RMaXN0Ym94Q29tcG9uZW50LFxuICAgIEdJUElJbnB1dFNlbGVjdENvbXBvbmVudCxcbiAgICBHSVBJRm9ybUZpZWxkQ29tcG9uZW50LFxuICAgIEdJUElJbnB1dENoZWNrYm94Q29tcG9uZW50LFxuICAgIEdJUElDaGlwc0NvbXBvbmVudCxcbiAgICBHSVBJSW5wdXRDdXJyZW5jeUNvbXBvbmVudCxcbiAgICBHSVBJSW5wdXRTZWFyY2hDb21wb25lbnQsXG4gICAgR0lQSUlucHV0U2VsZWN0UGFnZWRDb21wb25lbnQsXG4gICAgR0lQSUlucHV0U2VsZWN0RW51bUNvbXBvbmVudCxcbiAgICBHSVBJRHJvcGRvd25NZW51Q29tcG9uZW50LFxuICAgIEdJUElFeHBhbnNpb25QYW5lbENvbXBvbmVudCxcbiAgICBHSVBJUGFzc3dvcmRSZXF1ZXJpbWVudHNDb21wb25lbnQsXG4gICAgR0lQSUhlbHBmdWxUaXBDb21wb25lbnQsXG4gICAgR0lQSUJhZGdlQ29tcG9uZW50LFxuICAgIEdJUElSYW5nZVNsaWRlckNvbXBvbmVudCxcbiAgICBHSVBJUmFuZ2VQYWdlQ29tcG9uZW50LFxuICAgIEdJUElTbGlkZVRvZ2dsZUNvbXBvbmVudCxcbiAgICBHSVBJRW1wdHlTdGF0ZUNvbXBvbmVudCxcbiAgICBHSVBJQ2FyZENvbXBvbmVudCxcbiAgICBHSVBJVGV4dGFyZWFDb21wb25lbnQsXG4gICAgR0lQSVNwbGl0QnV0dG9uQ29tcG9uZW50LFxuXG4gICAgLy8gVGFic1xuICAgIEdJUElUYWJHcm91cENvbXBvbmVudCxcbiAgICBHSVBJVGFiQ29tcG9uZW50LFxuXG4gICAgLy8gVGFibGVcbiAgICBHSVBJVGFibGVIZWFkZXJDb21wb25lbnQsXG4gICAgR0lQSVRhYmxlQm9keUNvbXBvbmVudCxcbiAgICBHSVBJVGFibGVGb290ZXJDb21wb25lbnQsXG4gICAgR0lQSVRhYmxlUGFnaW5hdGlvbkNvbXBvbmVudCxcbiAgICBHSVBJVGFibGVQcm9ncmVzc0JhckNvbXBvbmVudCxcbiAgICBHSVBJVGFibGVDb21wb25lbnQsXG5dO1xuXG5jb25zdCBHSVBJRGlyZWN0aXZlczogYW55W10gPSBbXG4gICAgR0lQSVRlbXBsYXRlRGlyZWN0aXZlLFxuICAgIEdJUElDb2xEaXJlY3RpdmUsXG4gICAgR0lQSVJvd0RpcmVjdGl2ZSxcbiAgICBHSVBJRmlsZURyYWdBbmREcm9wRGlyZWN0aXZlLFxuICAgIEdJUElJbmZpbml0ZVNjcm9sbERpcmVjdGl2ZSxcbiAgICBHSVBJUGFnaW5hdGlvbkNvbnRyb2xzRGlyZWN0aXZlLFxuICAgIEdJUElEeW5hbWljVGFiRGlyZWN0aXZlLFxuXTtcblxuY29uc3QgR0lQSVBpcGVzOiBhbnlbXSA9IFtcbiAgICBHSVBJUGFnaW5hdGVQaXBlLFxuXTtcblxuY29uc3QgR0lQSVNlcnZpY2VzOiBhbnlbXSA9IFtcbiAgICBHSVBJT3ZlcmxheVNlcnZpY2UsXG4gICAgR0lQSUJyZWFrcG9pbnRTZXJ2aWNlLFxuICAgIEdJUElSZXNpemVTZXJ2aWNlLFxuICAgIEdJUElQYWdpbmF0aW9uU2VydmljZSxcbl07XG5cbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIEdJUElDb21wb25lbnRzLFxuICAgICAgICBHSVBJRGlyZWN0aXZlcyxcbiAgICAgICAgR0lQSVBpcGVzLFxuICAgICAgICBMb2FkaW5nQ29tcG9uZW50LFxuICAgICAgICBMb2FkaW5nT3ZlcmxheUNvbXBvbmVudCxcbiAgICAgICAgQnV0dG9uQ29tcG9uZW50LFxuICAgICAgICBJbnB1dENvbXBvbmVudCxcbiAgICAgICAgU2VsZWN0RW50aXR5Q29tcG9uZW50LFxuICAgICAgICBTZWxlY3RFbnVtQ29tcG9uZW50LFxuICAgICAgICBUYWJsZUNvbXBvbmVudCxcbiAgICAgICAgQ2FyZENvbXBvbmVudCxcbiAgICAgICAgQ2hlY2tib3hDb21wb25lbnQsXG4gICAgICAgIFJhZGlvR3JvdXBFbnRpdHlDb21wb25lbnQsXG4gICAgICAgIFJhZGlvR3JvdXBFbnVtQ29tcG9uZW50LFxuICAgICAgICBTbGlkZVRvZ2dsZUNvbXBvbmVudCxcbiAgICAgICAgSWNvbkNvbXBvbmVudCxcbiAgICAgICAgU3RlcHBlckNvbXBvbmVudCxcbiAgICAgICAgVGV4dGFyZWFDb21wb25lbnQsXG4gICAgICAgIElucHV0Q3VycmVuY3lDb21wb25lbnQsXG4gICAgICAgIElucHV0RmlsZUNvbXBvbmVudCxcbiAgICAgICAgUG9wb3ZlckNvbXBvbmVudCxcbiAgICAgICAgUGhvbmVNYXNrRGlyZWN0aXZlLFxuICAgICAgICBVcHBlckNhc2VEaXJlY3RpdmUsXG4gICAgICAgIExvd2VyQ2FzZURpcmVjdGl2ZSxcbiAgICAgICAgU3BhY2VEcm9wRGlyZWN0aXZlLFxuICAgICAgICBPdmVybGF5UGFuZWxDb21wb25lbnQsXG4gICAgICAgIEl0c3NUZW1wbGF0ZSxcbiAgICAgICAgU2VsZWN0TW9udGhQZXJpb2RDb21wb25lbnQsXG4gICAgICAgIElucHV0U2VsZWN0SW5maW5pdGVTY3JvbGxEaXJlY3RpdmUsXG4gICAgICAgIFRhYmxlU2Nyb2xsZWRDb21wb25lbnQsXG4gICAgICAgIFNlbGVjdFNlYXJjaENvbXBvbmVudCxcbiAgICAgICAgU2VsZWN0RW50aXR5UGFnZWRDb21wb25lbnQsXG4gICAgICAgIFNlbGVjdE5vRW50cmllc0ZvdW5kRGlyZWN0aXZlLFxuICAgICAgICBTZWxlY3RTZWFyY2hDbGVhckRpcmVjdGl2ZSxcbiAgICAgICAgU2VsZWN0QnV0dG9uQWRkQ29tcG9uZW50LFxuICAgICAgICBTZWxlY3RCdXR0b25OZXh0QmF0Y2hDb21wb25lbnQsXG4gICAgXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgUm91dGVyTW9kdWxlLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgTWF0ZXJpYWxNb2R1bGUsXG4gICAgICAgIEZsZXhMYXlvdXRNb2R1bGUud2l0aENvbmZpZyh7IGRpc2FibGVEZWZhdWx0QnBzOiB0cnVlIH0sIEdJUElfQlJFQUtQT0lOVFMpLFxuICAgICAgICBOZ3hNYXNrTW9kdWxlLmZvckNoaWxkKCksXG4gICAgICAgIE5neEN1cnJlbmN5TW9kdWxlLFxuICAgICAgICBOZ3hNYXRlcmlhbFRpbWVwaWNrZXJNb2R1bGUsXG4gICAgICAgIE1kZVBvcG92ZXJNb2R1bGUsXG4gICAgICAgIEluZmluaXRlU2Nyb2xsTW9kdWxlLFxuICAgICAgICBNZW50aW9uTW9kdWxlLFxuICAgICAgICBEYXRlcGlja2VyTW9kdWxlLFxuICAgICAgICBNb250aFllYXJQaWNrZXJNb2R1bGUsXG4gICAgXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIEdJUElDb21wb25lbnRzLFxuICAgICAgICBHSVBJRGlyZWN0aXZlcyxcbiAgICAgICAgR0lQSVBpcGVzLFxuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIFJvdXRlck1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgICAgIEZsZXhMYXlvdXRNb2R1bGUsXG4gICAgICAgIENka1N0ZXBwZXJNb2R1bGUsXG4gICAgICAgIE1hdFJpcHBsZU1vZHVsZSxcbiAgICAgICAgTWF0RGlhbG9nTW9kdWxlLFxuICAgICAgICBJbmZpbml0ZVNjcm9sbE1vZHVsZSxcbiAgICAgICAgTG9hZGluZ0NvbXBvbmVudCxcbiAgICAgICAgTG9hZGluZ092ZXJsYXlDb21wb25lbnQsXG4gICAgICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICAgICAgSW5wdXRDb21wb25lbnQsXG4gICAgICAgIFNlbGVjdEVudGl0eUNvbXBvbmVudCxcbiAgICAgICAgU2VsZWN0RW51bUNvbXBvbmVudCxcbiAgICAgICAgVGFibGVDb21wb25lbnQsXG4gICAgICAgIENhcmRDb21wb25lbnQsXG4gICAgICAgIENoZWNrYm94Q29tcG9uZW50LFxuICAgICAgICBSYWRpb0dyb3VwRW50aXR5Q29tcG9uZW50LFxuICAgICAgICBSYWRpb0dyb3VwRW51bUNvbXBvbmVudCxcbiAgICAgICAgU2xpZGVUb2dnbGVDb21wb25lbnQsXG4gICAgICAgIEljb25Db21wb25lbnQsXG4gICAgICAgIFN0ZXBwZXJDb21wb25lbnQsXG4gICAgICAgIFRleHRhcmVhQ29tcG9uZW50LFxuICAgICAgICBJbnB1dEN1cnJlbmN5Q29tcG9uZW50LFxuICAgICAgICBJbnB1dEZpbGVDb21wb25lbnQsXG4gICAgICAgIFBvcG92ZXJDb21wb25lbnQsXG4gICAgICAgIE1lbnRpb25Nb2R1bGUsXG4gICAgICAgIE92ZXJsYXlQYW5lbENvbXBvbmVudCxcbiAgICAgICAgSXRzc1RlbXBsYXRlLFxuICAgICAgICBTZWxlY3RNb250aFBlcmlvZENvbXBvbmVudCxcbiAgICAgICAgSW5wdXRTZWxlY3RJbmZpbml0ZVNjcm9sbERpcmVjdGl2ZSxcbiAgICAgICAgVGFibGVTY3JvbGxlZENvbXBvbmVudCxcbiAgICAgICAgU2VsZWN0U2VhcmNoQ29tcG9uZW50LFxuICAgICAgICBTZWxlY3RFbnRpdHlQYWdlZENvbXBvbmVudCxcbiAgICAgICAgU2VsZWN0Tm9FbnRyaWVzRm91bmREaXJlY3RpdmUsXG4gICAgICAgIFNlbGVjdFNlYXJjaENsZWFyRGlyZWN0aXZlLFxuICAgICAgICBTZWxlY3RCdXR0b25BZGRDb21wb25lbnQsXG4gICAgICAgIFNlbGVjdEJ1dHRvbk5leHRCYXRjaENvbXBvbmVudCxcblxuICAgICAgICBEYXRlcGlja2VyTW9kdWxlLFxuICAgICAgICBNb250aFllYXJQaWNrZXJNb2R1bGUsXG4gICAgXSxcbiAgICBlbnRyeUNvbXBvbmVudHM6IFtcbiAgICAgICAgR0lQSUNvbmZpcm1hdGlvbkRpYWxvZ0NvbXBvbmVudCxcbiAgICAgICAgR0lQSVRhYkdyb3VwQ29tcG9uZW50LFxuICAgICAgICBHSVBJVGFiQ29tcG9uZW50LFxuICAgICAgICBQb3BvdmVyQ29tcG9uZW50LFxuICAgIF0sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIEdJUElTZXJ2aWNlcyxcbiAgICAgICAgR0lQSV9DVVNUT01fQlJFQUtQT0lOVFNfUFJPVklERVIsXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IERhdGVBZGFwdGVyLFxuICAgICAgICAgICAgdXNlQ2xhc3M6IE5hdGl2ZURhdGVBZGFwdGVyLFxuICAgICAgICAgICAgZGVwczogW01BVF9EQVRFX0xPQ0FMRV1cbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogTUFUX0RBVEVfTE9DQUxFLFxuICAgICAgICAgICAgdXNlVmFsdWU6ICdwdC1CUicsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE1BVF9EQVRFX0ZPUk1BVFMsXG4gICAgICAgICAgICB1c2VWYWx1ZToge1xuICAgICAgICAgICAgICAgIHBhcnNlOiB7XG4gICAgICAgICAgICAgICAgICAgIGRhdGVJbnB1dDogJ0REL01NL1lZWVknLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgZGlzcGxheToge1xuICAgICAgICAgICAgICAgICAgICBkYXRlSW5wdXQ6ICdERC9NTS9ZWVlZJyxcbiAgICAgICAgICAgICAgICAgICAgbW9udGhZZWFyTGFiZWw6ICdNTU0gWVlZWScsXG4gICAgICAgICAgICAgICAgICAgIGRhdGVBMTF5TGFiZWw6ICdMTCcsXG4gICAgICAgICAgICAgICAgICAgIG1vbnRoWWVhckExMXlMYWJlbDogJ01NTU0gWVlZWScsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBTaGFyZWRNb2R1bGUge1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgX2luamVjdG9yOiBJbmplY3Rvcikge1xuICAgICAgICBJTkpFQ1RPUiA9IHRoaXMuX2luamVjdG9yO1xuICAgIH1cbn1cbiJdfQ==