@firestitch/list 18.0.73 → 18.0.75
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.
- package/app/components/list/list.component.d.ts +18 -4
- package/app/directives/cell/cell-row-type-scope.directive.d.ts +11 -0
- package/app/directives/cell/cell.directive.d.ts +15 -1
- package/app/directives/cell/typed-cell.directive.d.ts +15 -0
- package/app/fs-list.module.d.ts +15 -14
- package/app/interfaces/listconfig.interface.d.ts +19 -9
- package/esm2022/app/classes/actions-controller.mjs +3 -5
- package/esm2022/app/classes/list-controller.mjs +5 -2
- package/esm2022/app/components/list/list.component.mjs +53 -2
- package/esm2022/app/directives/cell/cell-row-type-scope.directive.mjs +23 -0
- package/esm2022/app/directives/cell/cell.directive.mjs +23 -3
- package/esm2022/app/directives/cell/typed-cell.directive.mjs +20 -0
- package/esm2022/app/fs-list.module.mjs +6 -1
- package/esm2022/app/interfaces/listconfig.interface.mjs +1 -1
- package/esm2022/public_api.mjs +3 -1
- package/fesm2022/firestitch-list.mjs +122 -9
- package/fesm2022/firestitch-list.mjs.map +1 -1
- package/package.json +1 -1
- package/public_api.d.ts +2 -0
|
@@ -12,6 +12,7 @@ import { List } from '../../classes/list-controller';
|
|
|
12
12
|
import { PersistanceController } from '../../classes/persistance-controller';
|
|
13
13
|
import { ReorderController } from '../../classes/reorder-controller';
|
|
14
14
|
import { FsListHeadingDirective, } from '../../directives';
|
|
15
|
+
import { FsListCellDirective } from '../../directives/cell/cell.directive';
|
|
15
16
|
import { FsListColumnDirective } from '../../directives/column/column.directive';
|
|
16
17
|
import { FsListContentInitDirective } from '../../directives/content-init/content-init.directive';
|
|
17
18
|
import { FsListDraggableListDirective } from '../../directives/draggable-list/draggable-list.directive';
|
|
@@ -36,6 +37,23 @@ export class FsListComponent {
|
|
|
36
37
|
this._initWithConfig(config);
|
|
37
38
|
}
|
|
38
39
|
loaderLines = 3;
|
|
40
|
+
_cellRowTypeInput;
|
|
41
|
+
_cellRowTypeFromConfig;
|
|
42
|
+
/**
|
|
43
|
+
* Row typing anchor for cell templates. Overrides {@link FsListConfig.cellRowType}.
|
|
44
|
+
* Copied onto each `fs-list-cell` (and group cell templates) unless `[rowType]` is set on that cell.
|
|
45
|
+
*/
|
|
46
|
+
set cellRowType(value) {
|
|
47
|
+
this._cellRowTypeInput = value;
|
|
48
|
+
this._propagateCellRowTypeAnchors();
|
|
49
|
+
}
|
|
50
|
+
get cellRowType() {
|
|
51
|
+
return this._cellRowTypeInput !== undefined ? this._cellRowTypeInput : this._cellRowTypeFromConfig;
|
|
52
|
+
}
|
|
53
|
+
/** Merged config after defaults; used to type cells without per-template `[configTyping]`. */
|
|
54
|
+
get mergedListConfig() {
|
|
55
|
+
return this._mergedListConfig;
|
|
56
|
+
}
|
|
39
57
|
filtersReady = new EventEmitter();
|
|
40
58
|
headingTemplate;
|
|
41
59
|
body;
|
|
@@ -44,6 +62,8 @@ export class FsListComponent {
|
|
|
44
62
|
rowRemoved = new EventEmitter();
|
|
45
63
|
firstLoad = true;
|
|
46
64
|
_listColumnDirectives;
|
|
65
|
+
/** Merged list config (after defaults); used to populate cell `configTyping` when cells omit it. */
|
|
66
|
+
_mergedListConfig;
|
|
47
67
|
_filterRef;
|
|
48
68
|
_filterParamsReady = false;
|
|
49
69
|
_destroy = new Subject();
|
|
@@ -70,6 +90,7 @@ export class FsListComponent {
|
|
|
70
90
|
if (this.list) {
|
|
71
91
|
this.list.tranformTemplatesToColumns(listColumnDirectives);
|
|
72
92
|
}
|
|
93
|
+
this._propagateCellRowTypeAnchors();
|
|
73
94
|
}
|
|
74
95
|
set _emptyStateTemplate(template) {
|
|
75
96
|
if (this.list) {
|
|
@@ -235,6 +256,8 @@ export class FsListComponent {
|
|
|
235
256
|
};
|
|
236
257
|
const globalConfig = cloneDeep(this._config || {});
|
|
237
258
|
const listConfig = mergeWith(defaultConfig, globalConfig, config, this._configMergeCustomizer);
|
|
259
|
+
this._mergedListConfig = listConfig;
|
|
260
|
+
this._cellRowTypeFromConfig = listConfig.cellRowType;
|
|
238
261
|
if (listConfig.persist !== false) {
|
|
239
262
|
this._restorePersistance(listConfig.persist);
|
|
240
263
|
}
|
|
@@ -247,6 +270,7 @@ export class FsListComponent {
|
|
|
247
270
|
this.list.tranformTemplatesToColumns(this._listColumnDirectives);
|
|
248
271
|
}
|
|
249
272
|
this._listenSortingChange();
|
|
273
|
+
this._propagateCellRowTypeAnchors();
|
|
250
274
|
}
|
|
251
275
|
/**
|
|
252
276
|
* Find action with customize flag and re-declare click function for CustomizeColsDialog
|
|
@@ -326,8 +350,33 @@ export class FsListComponent {
|
|
|
326
350
|
_restorePersistance(persistConfig) {
|
|
327
351
|
this._persistance.init(persistConfig, this.inDialog);
|
|
328
352
|
}
|
|
353
|
+
_propagateCellRowTypeAnchors() {
|
|
354
|
+
if (!this._listColumnDirectives || !this._mergedListConfig) {
|
|
355
|
+
return;
|
|
356
|
+
}
|
|
357
|
+
const anchor = this.cellRowType;
|
|
358
|
+
this._listColumnDirectives.forEach((col) => {
|
|
359
|
+
this._maybeApplyCellTyping(col.cellConfigs, anchor, this._mergedListConfig);
|
|
360
|
+
this._maybeApplyCellTyping(col.groupHeaderConfigs, anchor, this._mergedListConfig);
|
|
361
|
+
this._maybeApplyCellTyping(col.groupFooterConfigs, anchor, this._mergedListConfig);
|
|
362
|
+
});
|
|
363
|
+
}
|
|
364
|
+
_maybeApplyCellTyping(dir, anchor, listConfig) {
|
|
365
|
+
if (!(dir instanceof FsListCellDirective)) {
|
|
366
|
+
return;
|
|
367
|
+
}
|
|
368
|
+
if (dir.rowType !== undefined || dir.configTyping !== undefined) {
|
|
369
|
+
return;
|
|
370
|
+
}
|
|
371
|
+
if (anchor != null) {
|
|
372
|
+
dir.rowType = anchor;
|
|
373
|
+
}
|
|
374
|
+
else {
|
|
375
|
+
dir.configTyping = listConfig;
|
|
376
|
+
}
|
|
377
|
+
}
|
|
329
378
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
330
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FsListComponent, isStandalone: true, selector: "fs-list", inputs: { config: "config", loaderLines: "loaderLines" }, outputs: { filtersReady: "filtersReady" }, host: { properties: { "class.fs-list": "this.classFsList", "class.fs-list-row-highlight": "this.rowHoverHighlight" } }, providers: [
|
|
379
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FsListComponent, isStandalone: true, selector: "fs-list", inputs: { config: "config", loaderLines: "loaderLines", cellRowType: "cellRowType" }, outputs: { filtersReady: "filtersReady" }, host: { properties: { "class.fs-list": "this.classFsList", "class.fs-list-row-highlight": "this.rowHoverHighlight" } }, providers: [
|
|
331
380
|
GroupExpandNotifierService,
|
|
332
381
|
PersistanceController,
|
|
333
382
|
ReorderController,
|
|
@@ -367,6 +416,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
367
416
|
args: ['config']
|
|
368
417
|
}], loaderLines: [{
|
|
369
418
|
type: Input
|
|
419
|
+
}], cellRowType: [{
|
|
420
|
+
type: Input
|
|
370
421
|
}], filtersReady: [{
|
|
371
422
|
type: Output
|
|
372
423
|
}], headingTemplate: [{
|
|
@@ -385,4 +436,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
385
436
|
type: ContentChild,
|
|
386
437
|
args: [FsListEmptyStateDirective, { read: TemplateRef }]
|
|
387
438
|
}] } });
|
|
388
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvbGlzdC9saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9saXN0L2xpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2RSxPQUFPLEVBQW9CLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDclEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWpELE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFbkUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsc0JBQXNCLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN2RyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFeEQsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXRFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRWpELE9BQU8sRUFB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QUFlLDhUQUNmLDRCQUE0QixvRkFDNUIsaUJBQWlCLDhMQUNqQixxQkFBcUIsb0dBQ3JCLHFCQUFxQiwrRkFDckIscUJBQXFCLDBGQUNyQixTQUFTOzsyRkFHQSxlQUFlO2tCQTdCM0IsU0FBUzsrQkFDRSxTQUFTLG1CQUdGLHVCQUF1QixDQUFDLE1BQU0sYUFDcEM7d0JBQ1QsMEJBQTBCO3dCQUMxQixxQkFBcUI7d0JBQ3JCLGlCQUFpQjtxQkFDbEIsY0FDVyxJQUFJLFdBQ1A7d0JBQ1AsT0FBTzt3QkFDUCxnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2Ysd0JBQXdCO3dCQUN4QixzQkFBc0I7d0JBQ3RCLGlCQUFpQjt3QkFDakIsMEJBQTBCO3dCQUMxQixlQUFlO3dCQUNmLGVBQWU7d0JBQ2YsNEJBQTRCO3dCQUM1QixpQkFBaUI7d0JBQ2pCLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQixxQkFBcUI7d0JBQ3JCLFNBQVM7cUJBQ1Y7OEJBTW9DLFdBQVc7c0JBQS9DLFdBQVc7dUJBQUMsZUFBZTtnQkFHckIsaUJBQWlCO3NCQUR2QixXQUFXO3VCQUFDLDZCQUE2QjtnQkFJL0IsTUFBTTtzQkFEaEIsS0FBSzt1QkFBQyxRQUFRO2dCQU1SLFdBQVc7c0JBRGpCLEtBQUs7Z0JBSUMsWUFBWTtzQkFEbEIsTUFBTTtnQkFJQSxlQUFlO3NCQURyQixZQUFZO3VCQUFDLHNCQUFzQixFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRTtnQkFJcEQsSUFBSTtzQkFEVixTQUFTO3VCQUFDLGVBQWU7Z0JBd0JmLGVBQWU7c0JBRHpCLFNBQVM7dUJBQUMsZUFBZTtnQkFZZixlQUFlO3NCQUR6QixlQUFlO3VCQUFDLHFCQUFxQjtnQkFTMUIsbUJBQW1CO3NCQUQ5QixZQUFZO3VCQUFDLHlCQUF5QixFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFzeW5jUGlwZSwgTmdDbGFzcywgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBZnRlckNvbnRlbnRJbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgQ29udGVudENoaWxkLCBDb250ZW50Q2hpbGRyZW4sIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIEluamVjdG9yLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCwgUXVlcnlMaXN0LCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHsgTWF0RGlhbG9nLCBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5pbXBvcnQgeyBEcmF3ZXJSZWYgfSBmcm9tICdAZmlyZXN0aXRjaC9kcmF3ZXInO1xuaW1wb3J0IHsgRmlsdGVyQ29tcG9uZW50LCBGaWx0ZXJIZWFkaW5nRGlyZWN0aXZlLCBGaWx0ZXJTdGF0dXNCYXJEaXJlY3RpdmUgfSBmcm9tICdAZmlyZXN0aXRjaC9maWx0ZXInO1xuaW1wb3J0IHsgU2VsZWN0aW9uRGlhbG9nIH0gZnJvbSAnQGZpcmVzdGl0Y2gvc2VsZWN0aW9uJztcblxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGVsYXksIGZpbHRlciwgc2tpcCwgdGFrZSwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBjbG9uZURlZXAsIG1lcmdlV2l0aCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5cbmltcG9ydCB7IExpc3QgfSBmcm9tICcuLi8uLi9jbGFzc2VzL2xpc3QtY29udHJvbGxlcic7XG5pbXBvcnQgeyBQZXJzaXN0YW5jZUNvbnRyb2xsZXIgfSBmcm9tICcuLi8uLi9jbGFzc2VzL3BlcnNpc3RhbmNlLWNvbnRyb2xsZXInO1xuaW1wb3J0IHsgUmVvcmRlckNvbnRyb2xsZXIgfSBmcm9tICcuLi8uLi9jbGFzc2VzL3Jlb3JkZXItY29udHJvbGxlcic7XG5pbXBvcnQge1xuICBGc0xpc3RIZWFkaW5nRGlyZWN0aXZlLFxufSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzJztcbmltcG9ydCB7IEZzTGlzdENvbHVtbkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvY29sdW1uL2NvbHVtbi5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNMaXN0Q29udGVudEluaXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2NvbnRlbnQtaW5pdC9jb250ZW50LWluaXQuZGlyZWN0aXZlJztcbmltcG9ydCB7IEZzTGlzdERyYWdnYWJsZUxpc3REaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2RyYWdnYWJsZS1saXN0L2RyYWdnYWJsZS1saXN0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0xpc3RFbXB0eVN0YXRlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9lbXB0eS1zdGF0ZS9lbXB0eS1zdGF0ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNMaXN0Rm9vdGVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9mb290ZXIvZm9vdGVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBQYWdpbmF0aW9uU3RyYXRlZ3kgfSBmcm9tICcuLi8uLi9lbnVtcy9wYWdpbmF0aW9uLXN0cmF0ZWd5LmVudW0nO1xuaW1wb3J0IHsgRlNfTElTVF9DT05GSUcgfSBmcm9tICcuLi8uLi9mcy1saXN0LnByb3ZpZGVycyc7XG5pbXBvcnQge1xuICBGc0xpc3RBYnN0cmFjdFJvdyxcbiAgRnNMaXN0QWN0aW9uLFxuICBGc0xpc3RDb25maWcsIEZzTGlzdFBlcnNpdGFuY2UsIEZzTGlzdFNlbGVjdGlvbkNvbmZpZyxcbiAgRnNMaXN0VHJhY2tCeUZuLFxuICBGc0xpc3RUcmFja0J5VGFyZ2V0Um93Rm4sXG59IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgSVBhZ2luYXRpb25TdGF0ZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvcGFnaW5hdGlvbi1zdGF0ZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ29sdW1uLCBSb3cgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgR3JvdXBFeHBhbmROb3RpZmllclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9ncm91cC1leHBhbmQtbm90aWZpZXIuc2VydmljZSc7XG5pbXBvcnQgeyBGc0JvZHlDb21wb25lbnQgfSBmcm9tICcuLi9ib2R5L2JvZHkuY29tcG9uZW50JztcbmltcG9ydCB7IEN1c3RvbWl6ZUNvbHNEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi9jdXN0b21pemUtY29scyc7XG5pbXBvcnQgeyBGc0Zvb3RlckNvbXBvbmVudCB9IGZyb20gJy4uL2Zvb3Rlci9mb290ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEZzSGVhZENvbXBvbmVudCB9IGZyb20gJy4uL2hlYWQvaGVhZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNMaXN0TG9hZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vbG9hZGVyL2xvYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNQYWdpbmF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc1N0YXR1c0NvbXBvbmVudCB9IGZyb20gJy4uL3N0YXR1cy9zdGF0dXMuY29tcG9uZW50JztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmcy1saXN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xpc3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9saXN0LmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnM6IFtcbiAgICBHcm91cEV4cGFuZE5vdGlmaWVyU2VydmljZSxcbiAgICBQZXJzaXN0YW5jZUNvbnRyb2xsZXIsXG4gICAgUmVvcmRlckNvbnRyb2xsZXIsXG4gIF0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBOZ0NsYXNzLFxuICAgIE5nVGVtcGxhdGVPdXRsZXQsXG4gICAgRmlsdGVyQ29tcG9uZW50LFxuICAgIEZpbHRlclN0YXR1c0JhckRpcmVjdGl2ZSxcbiAgICBGaWx0ZXJIZWFkaW5nRGlyZWN0aXZlLFxuICAgIEZzU3RhdHVzQ29tcG9uZW50LFxuICAgIEZzTGlzdENvbnRlbnRJbml0RGlyZWN0aXZlLFxuICAgIEZzSGVhZENvbXBvbmVudCxcbiAgICBGc0JvZHlDb21wb25lbnQsXG4gICAgRnNMaXN0RHJhZ2dhYmxlTGlzdERpcmVjdGl2ZSxcbiAgICBGc0Zvb3RlckNvbXBvbmVudCxcbiAgICBGc0xpc3RGb290ZXJEaXJlY3RpdmUsXG4gICAgRnNMaXN0TG9hZGVyQ29tcG9uZW50LFxuICAgIEZzUGFnaW5hdGlvbkNvbXBvbmVudCxcbiAgICBBc3luY1BpcGUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZzTGlzdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlckNvbnRlbnRJbml0IHtcbiAgXG4gIHB1YmxpYyByZW9yZGVyQ29udHJvbGxlciA9IGluamVjdChSZW9yZGVyQ29udHJvbGxlcik7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mcy1saXN0JykgcHVibGljIGNsYXNzRnNMaXN0ID0gdHJ1ZTtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZzLWxpc3Qtcm93LWhpZ2hsaWdodCcpXG4gIHB1YmxpYyByb3dIb3ZlckhpZ2hsaWdodDogYm9vbGVhbjtcblxuICBASW5wdXQoJ2NvbmZpZycpXG4gIHB1YmxpYyBzZXQgY29uZmlnKGNvbmZpZzogRnNMaXN0Q29uZmlnKSB7XG4gICAgdGhpcy5faW5pdFdpdGhDb25maWcoY29uZmlnKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBsb2FkZXJMaW5lcyA9IDM7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBmaWx0ZXJzUmVhZHkgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQENvbnRlbnRDaGlsZChGc0xpc3RIZWFkaW5nRGlyZWN0aXZlLCB7IHJlYWQ6IFRlbXBsYXRlUmVmIH0pXG4gIHB1YmxpYyBoZWFkaW5nVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQFZpZXdDaGlsZChGc0JvZHlDb21wb25lbnQpXG4gIHB1YmxpYyBib2R5OiBGc0JvZHlDb21wb25lbnQ7XG5cbiAgcHVibGljIGxpc3Q6IExpc3Q7XG5cbiAgLy8gRXZlbnQgd2lsbCBmaXJlZCBpZiBhY3Rpb24gcmVtb3ZlOiB0cnVlIHdpbGwgY2xpY2tlZFxuICBwdWJsaWMgcm93UmVtb3ZlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgcHVibGljIGZpcnN0TG9hZCA9IHRydWU7XG5cbiAgcHJpdmF0ZSBfbGlzdENvbHVtbkRpcmVjdGl2ZXM6IFF1ZXJ5TGlzdDxGc0xpc3RDb2x1bW5EaXJlY3RpdmU+O1xuICBwcml2YXRlIF9maWx0ZXJSZWY6IEZpbHRlckNvbXBvbmVudDtcbiAgcHJpdmF0ZSBfZmlsdGVyUGFyYW1zUmVhZHkgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfZGVzdHJveSA9IG5ldyBTdWJqZWN0KCk7XG4gIHByaXZhdGUgX2luamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcbiAgcHJpdmF0ZSBfY29uZmlnID0gaW5qZWN0PEZzTGlzdENvbmZpZz4oRlNfTElTVF9DT05GSUcsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG4gIHByaXZhdGUgX2VsID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuICBwcml2YXRlIF9zZWxlY3Rpb25EaWFsb2cgPSBpbmplY3QoU2VsZWN0aW9uRGlhbG9nKTtcbiAgcHJpdmF0ZSBfZGlhbG9nID0gaW5qZWN0KE1hdERpYWxvZyk7XG4gIHByaXZhdGUgX2NkUmVmID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgcHJpdmF0ZSBfZ3JvdXBFeHBhbmROb3RpZmllciA9IGluamVjdChHcm91cEV4cGFuZE5vdGlmaWVyU2VydmljZSk7XG4gIHByaXZhdGUgX3JvdXRlID0gaW5qZWN0KEFjdGl2YXRlZFJvdXRlKTtcbiAgcHJpdmF0ZSBfcGVyc2lzdGFuY2UgPSBpbmplY3QoUGVyc2lzdGFuY2VDb250cm9sbGVyKTtcblxuICBAVmlld0NoaWxkKEZpbHRlckNvbXBvbmVudClcbiAgcHVibGljIHNldCBmaWx0ZXJSZWZlcmVuY2UoY29tcG9uZW50KSB7XG4gICAgdGhpcy5fZmlsdGVyUmVmID0gY29tcG9uZW50O1xuICAgIHRoaXMubGlzdC5hY3Rpb25zLnNldEZpbHRlclJlZihjb21wb25lbnQpO1xuICAgIHRoaXMuX2VtaXRGaWx0ZXJzUmVhZHlFdmVudCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCBjb2x1bW5zIHRvIGNvbmZpZ1xuICAgKiBDcmVhdGUgQ29sdW1uIE1vZGVsIGluc3RhbmNlc1xuICAgKi9cbiAgQENvbnRlbnRDaGlsZHJlbihGc0xpc3RDb2x1bW5EaXJlY3RpdmUpXG4gIHB1YmxpYyBzZXQgY29sdW1uVGVtcGxhdGVzKGxpc3RDb2x1bW5EaXJlY3RpdmVzOiBRdWVyeUxpc3Q8RnNMaXN0Q29sdW1uRGlyZWN0aXZlPikge1xuICAgIHRoaXMuX2xpc3RDb2x1bW5EaXJlY3RpdmVzID0gbGlzdENvbHVtbkRpcmVjdGl2ZXM7XG4gICAgaWYgKHRoaXMubGlzdCkge1xuICAgICAgdGhpcy5saXN0LnRyYW5mb3JtVGVtcGxhdGVzVG9Db2x1bW5zKGxpc3RDb2x1bW5EaXJlY3RpdmVzKTtcbiAgICB9XG4gIH1cblxuICBAQ29udGVudENoaWxkKEZzTGlzdEVtcHR5U3RhdGVEaXJlY3RpdmUsIHsgcmVhZDogVGVtcGxhdGVSZWYgfSlcbiAgcHJpdmF0ZSBzZXQgX2VtcHR5U3RhdGVUZW1wbGF0ZSh0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pikge1xuICAgIGlmICh0aGlzLmxpc3QpIHtcbiAgICAgIHRoaXMubGlzdC5lbXB0eVN0YXRlVGVtcGxhdGUgPSB0ZW1wbGF0ZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9kaWFsb2dSZWYgPSBpbmplY3QoTWF0RGlhbG9nUmVmLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuICBwcml2YXRlIF9kcmF3ZXJSZWYgPSBpbmplY3QoRHJhd2VyUmVmLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gIC8qKlxuICAgKiBSZXR1cm4gcmVmZXJlbmNlIGZvciBmaWx0ZXJcbiAgICovXG4gIHB1YmxpYyBnZXQgZmlsdGVyUmVmKCk6IEZpbHRlckNvbXBvbmVudCB7XG4gICAgcmV0dXJuIHRoaXMuX2ZpbHRlclJlZjtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgZ3JvdXBFbmFibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5saXN0Lmdyb3VwRW5hYmxlZCh2YWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGdyb3VwRW5hYmxlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5saXN0LmRhdGFDb250cm9sbGVyLmdyb3VwRW5hYmxlZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaGFzU3RhdHVzKCkge1xuICAgIHJldHVybiB0aGlzLmxpc3Quc3RhdHVzICYmXG4gICAgICAodGhpcy5saXN0LnNvcnRpbmcuaXNEZWZpbmVkIHx8IHRoaXMubGlzdC5wYWdpbmcuZW5hYmxlZCkgJiZcbiAgICAgIChcbiAgICAgICAgIXRoaXMucmVvcmRlckNvbnRyb2xsZXIuZW5hYmxlZCB8fFxuICAgICAgICAodGhpcy5yZW9yZGVyQ29udHJvbGxlci5lbmFibGVkICYmIHRoaXMucmVvcmRlckNvbnRyb2xsZXIuc3RhdHVzKVxuICAgICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcGFnaW5hdG9yVmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5saXN0LnBhZ2luZy5lbmFibGVkXG4gICAgICAmJiAhdGhpcy5maXJzdExvYWRcbiAgICAgICYmICF0aGlzLmxpc3QuZW1wdHlTdGF0ZUVuYWJsZWRcbiAgICAgICYmIHRoaXMubGlzdC5kYXRhQ29udHJvbGxlci52aXNpYmxlUm93c0NvdW50ID4gMFxuICAgICAgJiYgdGhpcy5saXN0LnBhZ2luZy5wYWdlcyA+IDE7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGZpbHRlcnNRdWVyeSgpOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB7XG4gICAgcmV0dXJuIHRoaXMubGlzdC5maWx0ZXJzUXVlcnk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHBhZ2luZ1N0YXRlKCk6IElQYWdpbmF0aW9uU3RhdGUge1xuICAgIHJldHVybiB0aGlzLmxpc3QucGFnaW5nLnN0YXRlO1xuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5saXN0LmFmdGVySW5pdCkge1xuICAgICAgdGhpcy5saXN0LmFmdGVySW5pdCh0aGlzKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5fc3Vic2NyaWJlVG9SZW1vdmVSb3coKTtcbiAgICB0aGlzLl9zdWJzY3JpYmVUb0dyb3VwRXhwYW5kU3RhdHVzQ2hhbmdlKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XG4gICAgaWYgKHRoaXMubGlzdCkge1xuICAgICAgdGhpcy5saXN0LmRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICB0aGlzLl9kZXN0cm95Lm5leHQobnVsbCk7XG4gICAgdGhpcy5fZGVzdHJveS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHVibGljIG5leHRQYWdlKCkge1xuICAgIHRoaXMubGlzdC5wYWdpbmcuZ29OZXh0KCk7XG4gIH1cblxuICBwdWJsaWMgcHJldlBhZ2UoKSB7XG4gICAgdGhpcy5saXN0LnBhZ2luZy5nb1ByZXYoKTtcbiAgfVxuXG4gIHB1YmxpYyBmaXJzdFBhZ2UoKSB7XG4gICAgdGhpcy5saXN0LnBhZ2luZy5nb0ZpcnN0KCk7XG4gIH1cblxuICBwdWJsaWMgbGFzdFBhZ2UoKSB7XG4gICAgdGhpcy5saXN0LnBhZ2luZy5nb0xhc3QoKTtcbiAgfVxuXG4gIHB1YmxpYyByZWxvYWQoKTogT2JzZXJ2YWJsZTx7IHNjcm9sbEludG9WaWV3PzogYm9vbGVhbiB9PiB7XG4gICAgdGhpcy5maWx0ZXJSZWYucmVsb2FkKCk7XG5cbiAgICByZXR1cm4gdGhpcy5saXN0LmZldGNoQ29tcGxldGUkXG4gICAgICAucGlwZSggICAgICBcbiAgICAgICAgdGFrZSgxKSwgIFxuICAgICAgICBkZWxheSgwKSxcbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ2V0RGF0YSh0cmFja0J5PzogRnNMaXN0VHJhY2tCeUZuKSB7XG4gICAgcmV0dXJuIHRoaXMubGlzdC5nZXREYXRhKHRyYWNrQnkpO1xuICB9XG5cbiAgcHVibGljIGhhc0RhdGEodHJhY2tCeTogRnNMaXN0VHJhY2tCeUZuKSB7XG4gICAgcmV0dXJuIHRoaXMubGlzdC5oYXNEYXRhKHRyYWNrQnkpO1xuICB9XG5cbiAgcHVibGljIHVwZGF0ZURhdGEoXG4gICAgcm93czogRnNMaXN0QWJzdHJhY3RSb3cgfCBGc0xpc3RBYnN0cmFjdFJvd1tdLFxuICAgIHRyYWNrQnk/OiBGc0xpc3RUcmFja0J5VGFyZ2V0Um93Rm4sXG4gICk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmxpc3QuZGF0YUNvbnRyb2xsZXIudXBkYXRlRGF0YShyb3dzLCB0cmFja0J5KTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVTZWxlY3Rpb25Db25maWcoY29uZmlnOiBGc0xpc3RTZWxlY3Rpb25Db25maWcpIHtcbiAgICB0aGlzLmxpc3Quc2VsZWN0aW9uLnVwZGF0ZUNvbmZpZyhjb25maWcpO1xuICB9XG5cbiAgcHVibGljIHJlc2V0U2VsZWN0aW9uQWN0aW9ucygpIHtcbiAgICB0aGlzLmxpc3Quc2VsZWN0aW9uLnJlc2V0QWN0aW9ucygpO1xuICB9XG5cbiAgcHVibGljIGVuYWJsZVNlbGVjdGlvbigpIHtcbiAgICB0aGlzLmxpc3Quc2VsZWN0aW9uLmVuYWJsZVNlbGVjdGlvbigpO1xuICB9XG5cbiAgcHVibGljIGRpc2FibGVTZWxlY3Rpb24oKSB7XG4gICAgdGhpcy5saXN0LnNlbGVjdGlvbi5kaXNhYmxlU2VsZWN0aW9uKCk7XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlRGF0YShkYXRhOiBGc0xpc3RBYnN0cmFjdFJvdyB8IEZzTGlzdEFic3RyYWN0Um93W10gfCBGc0xpc3RUcmFja0J5VGFyZ2V0Um93Rm4pOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5saXN0LmRhdGFDb250cm9sbGVyLnJlbW92ZURhdGEoZGF0YSk7XG4gIH1cblxuICBwdWJsaWMgc2V0SGVhZGluZyhoZWFkaW5nOiBzdHJpbmcpIHtcbiAgICB0aGlzLmxpc3QuaGVhZGluZyA9IGhlYWRpbmc7XG4gIH1cblxuICBwdWJsaWMgc2V0U3ViaGVhZGluZyhzdWJoZWFkaW5nOiBzdHJpbmcpIHtcbiAgICB0aGlzLmxpc3Quc3ViaGVhZGluZyA9IHN1YmhlYWRpbmc7XG4gIH1cblxuICBwdWJsaWMgcmVvcmRlclN0YXJ0KCkge1xuICAgIHRoaXMucmVvcmRlckNvbnRyb2xsZXIuZW5hYmxlUmVvcmRlcigpO1xuICB9XG5cbiAgcHVibGljIHJlb3JkZXJGaW5pc2goKSB7XG4gICAgdGhpcy5yZW9yZGVyQ29udHJvbGxlci5kaXNhYmxlUmVvcmRlcigpO1xuICB9XG5cbiAgcHVibGljIHNldEFjdGlvbnMoYWN0aW9uczogRnNMaXN0QWN0aW9uW10pIHtcbiAgICBpZiAoYWN0aW9ucykge1xuICAgICAgdGhpcy5saXN0LmFjdGlvbnMuY2xlYXJBY3Rpb25zKCk7XG4gICAgICB0aGlzLmxpc3QuYWN0aW9ucy5zZXRBY3Rpb25zKGFjdGlvbnMpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBmaWx0ZXJSZWFkeSgpIHtcbiAgICB0aGlzLmxpc3QuZmlsdGVyc1JlYWR5KCk7XG4gICAgdGhpcy5fZmlsdGVyUGFyYW1zUmVhZHkgPSB0cnVlO1xuICAgIHRoaXMuX2VtaXRGaWx0ZXJzUmVhZHlFdmVudCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSB2aXNpYmlsaXR5IGZvciBzcGVjaWZpYyBjb2x1bW5cbiAgICovXG4gIHB1YmxpYyBjb2x1bW5WaXNpYmlsaXR5KG5hbWU6IHN0cmluZywgc2hvdzogYm9vbGVhbikge1xuICAgIHRoaXMuY29sdW1uc1Zpc2liaWxpdHkoW3sgbmFtZSwgc2hvdyB9XSk7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlIHZpc2liaWxpdHkgZm9yIGxpc3Qgb2Ygc3BlY2lmaWMgY29sdW1uc1xuICAgKi9cbiAgcHVibGljIGNvbHVtbnNWaXNpYmlsaXR5KGNvbHVtbnM6IHsgbmFtZTogc3RyaW5nOyBzaG93OiBib29sZWFuIH1bXSkge1xuICAgIHRoaXMubGlzdC5jb2x1bW5zLnVwZGF0ZVZpc2liaWxpdHlGb3JDb2xzKGNvbHVtbnMpO1xuICB9XG5cbiAgcHVibGljIGdldCB2aXNpYmxlQ29sdW1ucyQoKTogT2JzZXJ2YWJsZTxDb2x1bW5bXT4ge1xuICAgIHJldHVybiB0aGlzLmxpc3QuY29sdW1ucy52aXNpYmxlQ29sdW1ucyQ7XG4gIH1cblxuICBwcml2YXRlIF9lbWl0RmlsdGVyc1JlYWR5RXZlbnQoKTogdm9pZCB7XG4gICAgaWYgKCEhdGhpcy5maWx0ZXJSZWYgJiYgdGhpcy5fZmlsdGVyUGFyYW1zUmVhZHkpIHtcbiAgICAgIHRoaXMuZmlsdGVyc1JlYWR5LmVtaXQoKTtcbiAgICAgIHRoaXMuX2NkUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgaW5EaWFsb2coKSB7XG4gICAgcmV0dXJuICEhdGhpcy5fZGlhbG9nUmVmIHx8ICEhdGhpcy5fZHJhd2VyUmVmO1xuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemUgY29uZmlnIGZvciBsaXN0XG4gICAqXG4gICAqIEBwYXJhbSBjb25maWdcbiAgICovXG4gIHByaXZhdGUgX2luaXRXaXRoQ29uZmlnKGNvbmZpZzogRnNMaXN0Q29uZmlnKSB7XG4gICAgaWYgKHRoaXMubGlzdCkge1xuICAgICAgdGhpcy5saXN0LmRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICBjb25zdCBkZWZhdWx0Q29uZmlnOiBGc0xpc3RDb25maWcgPSB7XG4gICAgICBxdWVyeVBhcmFtOiB0cnVlLFxuICAgICAgY2hpcHM6IHRydWUsXG4gICAgICBwYWdpbmc6IHtcbiAgICAgICAgc3RyYXRlZ3k6IFBhZ2luYXRpb25TdHJhdGVneS5PZmZzZXQsXG4gICAgICAgIGxpbWl0OiAyNSxcbiAgICAgIH0sXG4gICAgICBub1Jlc3VsdHM6IHtcbiAgICAgICAgbWVzc2FnZTogJ05vIFJlc3VsdHMgRm91bmQnLFxuICAgICAgfSxcbiAgICB9O1xuXG4gICAgY29uc3QgZ2xvYmFsQ29uZmlnID0gY2xvbmVEZWVwKHRoaXMuX2NvbmZpZyB8fCB7fSk7XG4gICAgY29uc3QgbGlzdENvbmZpZyA9IG1lcmdlV2l0aChkZWZhdWx0Q29uZmlnLCBnbG9iYWxDb25maWcsIGNvbmZpZywgdGhpcy5fY29uZmlnTWVyZ2VDdXN0b21pemVyKTtcblxuICAgIGlmIChsaXN0Q29uZmlnLnBlcnNpc3QgIT09IGZhbHNlKSB7XG4gICAgICB0aGlzLl9yZXN0b3JlUGVyc2lzdGFuY2UobGlzdENvbmZpZy5wZXJzaXN0KTtcbiAgICB9XG5cbiAgICB0aGlzLl91cGRhdGVDdXN0b21pemVBY3Rpb24obGlzdENvbmZpZy5hY3Rpb25zKTtcblxuICAgIHRoaXMubGlzdCA9IG5ldyBMaXN0KFxuICAgICAgdGhpcy5fZWwsXG4gICAgICBsaXN0Q29uZmlnLFxuICAgICAgdGhpcy5fc2VsZWN0aW9uRGlhbG9nLFxuICAgICAgdGhpcy5fcm91dGUsXG4gICAgICB0aGlzLl9wZXJzaXN0YW5jZSxcbiAgICAgIHRoaXMuaW5EaWFsb2csXG4gICAgKTtcblxuICAgIHRoaXMucm93SG92ZXJIaWdobGlnaHQgPSB0aGlzLmxpc3Qucm93SG92ZXJIaWdobGlnaHQ7XG5cbiAgICB0aGlzLl93YWl0Rmlyc3RMb2FkKCk7XG5cbiAgICB0aGlzLnJlb3JkZXJDb250cm9sbGVyLmluaXRXaXRoQ29uZmlnKFxuICAgICAgY29uZmlnLnJlb3JkZXIsXG4gICAgICB0aGlzLmxpc3QuZGF0YUNvbnRyb2xsZXIsXG4gICAgICB0aGlzLmxpc3QuYWN0aW9ucyxcbiAgICAgIHRoaXMubGlzdC5zZWxlY3Rpb24sXG4gICAgKTtcblxuICAgIGlmICh0aGlzLl9saXN0Q29sdW1uRGlyZWN0aXZlcykge1xuICAgICAgdGhpcy5saXN0LnRyYW5mb3JtVGVtcGxhdGVzVG9Db2x1bW5zKHRoaXMuX2xpc3RDb2x1bW5EaXJlY3RpdmVzKTtcbiAgICB9XG4gICAgdGhpcy5fbGlzdGVuU29ydGluZ0NoYW5nZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEZpbmQgYWN0aW9uIHdpdGggY3VzdG9taXplIGZsYWcgYW5kIHJlLWRlY2xhcmUgY2xpY2sgZnVuY3Rpb24gZm9yIEN1c3RvbWl6ZUNvbHNEaWFsb2dcbiAgICpcbiAgICogQHBhcmFtIGFjdGlvbnNcbiAgICovXG4gIHByaXZhdGUgX3VwZGF0ZUN1c3RvbWl6ZUFjdGlvbihhY3Rpb25zOiBGc0xpc3RBY3Rpb25bXSkge1xuICAgIGNvbnN0IGN1c3RvbWl6ZUFjdGlvbiA9IGFjdGlvbnM/LmZpbmQoKGFjdGlvbikgPT4gYWN0aW9uLmN1c3RvbWl6ZSk7XG5cbiAgICBpZiAoY3VzdG9taXplQWN0aW9uKSB7XG4gICAgICBjb25zdCBhY3Rpb25DbGlja0ZuID0gY3VzdG9taXplQWN0aW9uLmNsaWNrO1xuXG4gICAgICBjdXN0b21pemVBY3Rpb24uY2xpY2sgPSAoKSA9PiB7XG4gICAgICAgIGlmIChhY3Rpb25DbGlja0ZuKSB7XG4gICAgICAgICAgYWN0aW9uQ2xpY2tGbihudWxsKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX2RpYWxvZ1xuICAgICAgICAgIC5vcGVuKEN1c3RvbWl6ZUNvbHNEaWFsb2dDb21wb25lbnQsIHtcbiAgICAgICAgICAgIGF1dG9Gb2N1czogZmFsc2UsXG4gICAgICAgICAgICBpbmplY3RvcjogdGhpcy5faW5qZWN0b3IsXG4gICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgIGNvbHVtbnM6IHRoaXMubGlzdC5jb2x1bW5zLmNvbHVtbnNGb3JEaWFsb2csXG4gICAgICAgICAgICAgIGNoYW5nZUZuOiB0aGlzLmxpc3QuY29sdW1ucy5jaGFuZ2VGbixcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSlcbiAgICAgICAgICAuYWZ0ZXJDbG9zZWQoKVxuICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMubGlzdC5kZXN0cm95JCksXG4gICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSksXG4gICAgICAgICAgKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKGRhdGEpID0+IHtcbiAgICAgICAgICAgIGlmIChkYXRhKSB7XG4gICAgICAgICAgICAgIHRoaXMubGlzdC5jb2x1bW5zLnVwZGF0ZVZpc2liaWxpdHlGb3JDb2xzKGRhdGEpO1xuICAgICAgICAgICAgICB0aGlzLl9jZFJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgIH07XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSBzb3J0aW5nIGluIGZpbHRlclxuICAgKi9cbiAgcHJpdmF0ZSBfbGlzdGVuU29ydGluZ0NoYW5nZSgpIHtcbiAgICB0aGlzLmxpc3Quc29ydGluZ1xuICAgICAgLnNvcnRpbmdDaGFuZ2VkJFxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLmxpc3QuZGVzdHJveSQpLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChzb3J0KSA9PiB7XG4gICAgICAgIHRoaXMuX2ZpbHRlclJlZi51cGRhdGVTb3J0KHNvcnQsIGZhbHNlKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfc3Vic2NyaWJlVG9SZW1vdmVSb3coKSB7XG4gICAgdGhpcy5yb3dSZW1vdmVkXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fZGVzdHJveSkpXG4gICAgICAuc3Vic2NyaWJlKChyb3cpID0+IHtcbiAgICAgICAgdGhpcy5saXN0LmRhdGFDb250cm9sbGVyLnJlbW92ZURhdGEocm93KTtcbiAgICAgICAgdGhpcy5saXN0LmRhdGFDb250cm9sbGVyLnZpc2libGVSb3dzXG4gICAgICAgICAgLmZvckVhY2goKGl0ZW06IFJvdykgPT4gaXRlbS51cGRhdGVBY3Rpb25zKCkpO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9zdWJzY3JpYmVUb0dyb3VwRXhwYW5kU3RhdHVzQ2hhbmdlKCkge1xuICAgIGlmICh0aGlzLmxpc3QuZGF0YUNvbnRyb2xsZXIuaGFzR3JvdXBzKSB7XG4gICAgICB0aGlzLl9ncm91cEV4cGFuZE5vdGlmaWVyLmV4cGFuZFN0YXR1c0NoYW5nZSRcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kpLFxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKHJvdykgPT4ge1xuICAgICAgICAgIHRoaXMubGlzdC5kYXRhQ29udHJvbGxlci50b2dnbGVSb3dHcm91cChyb3cpO1xuICAgICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF93YWl0Rmlyc3RMb2FkKCkge1xuICAgIHRoaXMubGlzdC5sb2FkaW5nJFxuICAgICAgLnBpcGUoXG4gICAgICAgIHNraXAoMSksXG4gICAgICAgIGZpbHRlcigodmFsdWUpID0+ICF2YWx1ZSksXG4gICAgICAgIHRha2UoMSksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLmxpc3QuZGVzdHJveSQpLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5maXJzdExvYWQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5fY2RSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2NvbmZpZ01lcmdlQ3VzdG9taXplcihvYmpWYWx1ZTogYW55KSB7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkob2JqVmFsdWUpKSB7XG4gICAgICByZXR1cm4gb2JqVmFsdWU7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfcmVzdG9yZVBlcnNpc3RhbmNlKHBlcnNpc3RDb25maWc6IEZzTGlzdFBlcnNpdGFuY2UpIHtcbiAgICB0aGlzLl9wZXJzaXN0YW5jZS5pbml0KHBlcnNpc3RDb25maWcsIHRoaXMuaW5EaWFsb2cpO1xuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwiZnMtbGlzdC1jb250YWluZXJcIlxuICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICdoYXMtZmlsdGVycyc6IGxpc3QuZmlsdGVyQ29uZmlnPy5pdGVtcy5sZW5ndGgsXG4gICAgICAnaGFzLXN0YXR1cyc6IGhhc1N0YXR1cyxcbiAgICAgICdoYXMtY2hpcHMnOiBsaXN0LmNoaXBzLFxuICAgICAgJ2hhcy1hY3Rpb25zJzogbGlzdC5hY3Rpb25zLmhhc0FjdGlvbnMsXG4gICAgICAnaGFzLXJvdy1hY3Rpb25zLWhvdmVyJzogbGlzdC5yb3dBY3Rpb25zSG92ZXIsXG4gICAgICAnZmlyc3QtbG9hZCc6IGZpcnN0TG9hZCxcbiAgICAgICdsb2FkaW5nJzogbGlzdC5sb2FkaW5nJCB8IGFzeW5jXG4gICAgfVwiPlxuICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwibGlzdENvbnRhaW5lckNvbnRlbnRcIj48L25nLXRlbXBsYXRlPlxuPC9kaXY+XG48bmctdGVtcGxhdGUgI2xpc3RDb250YWluZXJDb250ZW50PlxuICBAaWYgKGxpc3QuZGF0YUNvbnRyb2xsZXIudmlzaWJsZVJvd3MkIHwgYXN5bmM7IGFzIGxpc3REYXRhKSB7XG4gICAgPGRpdiBjbGFzcz1cImZzLWxpc3QtaGVhZGVyLWNvbnRhaW5lclwiPlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cImZzLWxpc3QtaGVhZGVyXCJcbiAgICAgICAgW25nQ2xhc3NdPVwieyAnbm8td3JhcCc6IHJlb3JkZXJDb250cm9sbGVyLm1hbnVhbFJlb3JkZXJBY3RpdmF0ZWQgfHwgIWxpc3QuZmlsdGVyQ29uZmlnPy5pdGVtcy5sZW5ndGggfVwiPlxuICAgICAgICBAaWYgKGxpc3QuZmlsdGVyQ29uZmlnKSB7XG4gICAgICAgICAgPGZzLWZpbHRlclxuICAgICAgICAgICAgY2xhc3M9XCJmcy1saXN0LWZpbHRlclwiXG4gICAgICAgICAgICBbY29uZmlnXT1cImxpc3QuZmlsdGVyQ29uZmlnXCI+XG4gICAgICAgICAgICBAaWYgKGhhc1N0YXR1cykge1xuICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgZnNGaWx0ZXJTdGF0dXNCYXI+XG4gICAgICAgICAgICAgICAgPGZzLWxpc3Qtc3RhdHVzXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImZzLWxpc3Qtc3RhdHVzXCJcbiAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2hpZGRlbi1tb2JpbGUnOiAhbGlzdC5zdGF0dXMgfVwiXG4gICAgICAgICAgICAgICAgICBbcm93c109XCJsaXN0RGF0YVwiXG4gICAgICAgICAgICAgICAgICBbbGlzdF09XCJsaXN0XCJcbiAgICAgICAgICAgICAgICAgIFtmaXJzdExvYWRdPVwiZmlyc3RMb2FkXCI+XG4gICAgICAgICAgICAgICAgPC9mcy1saXN0LXN0YXR1cz5cbiAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpZiAoaGVhZGluZ1RlbXBsYXRlKSB7XG4gICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBmc0ZpbHRlckhlYWRpbmc+XG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImhlYWRpbmdUZW1wbGF0ZVwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPC9mcy1maWx0ZXI+XG4gICAgICAgIH1cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltmcy1saXN0LWNvbnRlbnRdXCI+PC9uZy1jb250ZW50PlxuICAgIDwhLS0gVGFibGUgaW1wbGVtZW50YXRpb24gLS0+XG4gICAgPGRpdiBjbGFzcz1cImZzLWxpc3QtdGFibGUtY29udGFpbmVyXCI+XG4gICAgICBAaWYgKCFmaXJzdExvYWQgJiYgbGlzdERhdGEubGVuZ3RoID4gMCAmJiAhbGlzdC5lbXB0eVN0YXRlRW5hYmxlZCkge1xuICAgICAgICA8dGFibGVcbiAgICAgICAgICBjbGFzcz1cImZzLWxpc3QtdGFibGVcIlxuICAgICAgICAgIHJvbGU9XCJncmlkXCJcbiAgICAgICAgICBbZnNMaXN0Q29udGVudEluaXRdPVwibGlzdC5hZnRlckNvbnRlbnRJbml0XCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgJ3N0eWxlLWNhcmQnOiBsaXN0LnN0eWxlID09PSAnY2FyZCcsXG4gICAgICAgICAgICAgICdzdHlsZS1iYXNpYyc6IGxpc3Quc3R5bGUgPT09ICdiYXNpYycsXG4gICAgICAgICAgICAgICdzdHlsZS1saW5lJzogKGxpc3Quc3R5bGUgfHwgJ2xpbmUnKSA9PT0gJ2xpbmUnXG4gICAgICAgICAgICB9XCI+XG4gICAgICAgICAgQGlmIChsaXN0LmNvbHVtbnMuaGFzSGVhZGVyKSB7XG4gICAgICAgICAgICA8dGhlYWRcbiAgICAgICAgICAgICAgZnMtbGlzdC1oZWFkXG4gICAgICAgICAgICAgIGNsYXNzPVwiZnMtbGlzdC1oZWFkXCJcbiAgICAgICAgICAgICAgcm9sZT1cInJvd2dyb3VwXCJcbiAgICAgICAgICAgICAgW25nQ2xhc3NdPVwibGlzdC5jb2x1bW5zLnRoZWFkQ2xhc3NcIlxuICAgICAgICAgICAgICBbY29sdW1uc109XCJsaXN0LmNvbHVtbnMudmlzaWJsZUNvbHVtbnMkIHwgYXN5bmNcIlxuICAgICAgICAgICAgICBbc29ydGluZ109XCJsaXN0LnNvcnRpbmdcIlxuICAgICAgICAgICAgICBbc2VsZWN0aW9uXT1cImxpc3Quc2VsZWN0aW9uXCJcbiAgICAgICAgICAgICAgW2hhc1Jvd0FjdGlvbnNdPVwibGlzdC5oYXNSb3dBY3Rpb25zXCJcbiAgICAgICAgICAgICAgW2FjdGl2ZUZpbHRlcnNDb3VudF09XCJsaXN0LmFjdGl2ZUZpbHRlcnNDb3VudCQgfCBhc3luY1wiXG4gICAgICAgICAgICAgIFtyZW9yZGVyRW5hYmxlZF09XCJyZW9yZGVyQ29udHJvbGxlci5lbmFibGVkJCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgW3Jlb3JkZXJQb3NpdGlvbl09XCJyZW9yZGVyQ29udHJvbGxlci5wb3NpdGlvbiQgfCBhc3luY1wiXG4gICAgICAgICAgICAgIFtyZW9yZGVyU3RyYXRlZ3ldPVwicmVvcmRlckNvbnRyb2xsZXIuc3RyYXRlZ3kkIHwgYXN5bmNcIj5cbiAgICAgICAgICAgIDwvdGhlYWQ+XG4gICAgICAgICAgfVxuICAgICAgICAgIDx0Ym9keVxuICAgICAgICAgICAgZnMtbGlzdC1ib2R5XG4gICAgICAgICAgICBmc0xpc3REcmFnZ2FibGVMaXN0XG4gICAgICAgICAgICBjbGFzcz1cImZzLWxpc3QtYm9keVwiXG4gICAgICAgICAgICByb2xlPVwicm93Z3JvdXBcIlxuICAgICAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cIiEhKHJlb3JkZXJDb250cm9sbGVyLnJlb3JkZXJEaXNhYmxlZCQgfCBhc3luYylcIlxuICAgICAgICAgICAgW3Jvd3NdPVwibGlzdERhdGFcIlxuICAgICAgICAgICAgW3Jvd0FjdGlvbnNSYXddPVwibGlzdC5yb3dBY3Rpb25zUmF3XCJcbiAgICAgICAgICAgIFtncm91cEFjdGlvbnNSYXddPVwibGlzdC5ncm91cEFjdGlvbnNSYXdcIlxuICAgICAgICAgICAgW2hhc1Jvd0FjdGlvbnNdPVwibGlzdC5oYXNSb3dBY3Rpb25zXCJcbiAgICAgICAgICAgIFtyb3dFdmVudHNdPVwibGlzdC5yb3dFdmVudHNcIlxuICAgICAgICAgICAgW3Jvd0NsYXNzXT1cImxpc3Qucm93Q2xhc3NcIlxuICAgICAgICAgICAgW2NvbHVtbnNdPVwibGlzdC5jb2x1bW5zLnZpc2libGVDb2x1bW5zJCB8IGFzeW5jXCJcbiAgICAgICAgICAgIFtyZXN0b3JlTW9kZV09XCJsaXN0LnJlc3RvcmVNb2RlXCJcbiAgICAgICAgICAgIFtzZWxlY3Rpb25dPVwibGlzdC5zZWxlY3Rpb25cIlxuICAgICAgICAgICAgW3Jvd1JlbW92ZWRdPVwicm93UmVtb3ZlZFwiXG4gICAgICAgICAgICBbYWN0aXZlRmlsdGVyc0NvdW50XT1cImxpc3QuYWN0aXZlRmlsdGVyc0NvdW50JCB8IGFzeW5jXCJcbiAgICAgICAgICAgIFtyZW9yZGVyRW5hYmxlZF09XCJyZW9yZGVyQ29udHJvbGxlci5lbmFibGVkJCB8IGFzeW5jXCJcbiAgICAgICAgICAgIFtyZW9yZGVyUG9zaXRpb25dPVwicmVvcmRlckNvbnRyb2xsZXIucG9zaXRpb24kIHwgYXN5bmNcIlxuICAgICAgICAgICAgW3Jlb3JkZXJTdHJhdGVneV09XCJyZW9yZGVyQ29udHJvbGxlci5zdHJhdGVneSQgfCBhc3luY1wiXG4gICAgICAgICAgICBbcmVvcmRlck11bHRpcGxlXT1cInJlb3JkZXJDb250cm9sbGVyLm11bHRpcGxlXCI+XG4gICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICBAaWYgKGxpc3QuY29sdW1ucy5oYXNGb290ZXIpIHtcbiAgICAgICAgICAgIDx0Zm9vdFxuICAgICAgICAgICAgICBmcy1saXN0LWZvb3RlclxuICAgICAgICAgICAgICBjbGFzcz1cImZzLWxpc3QtZm9vdGVyXCJcbiAgICAgICAgICAgICAgW2NvbHVtbnNdPVwibGlzdC5jb2x1bW5zLnZpc2libGVDb2x1bW5zJCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgW3NlbGVjdGlvbl09XCJsaXN0LnNlbGVjdGlvblwiXG4gICAgICAgICAgICAgIFtoYXNSb3dBY3Rpb25zXT1cImxpc3QuaGFzUm93QWN0aW9uc1wiXG4gICAgICAgICAgICAgIFthY3RpdmVGaWx0ZXJzQ291bnRdPVwibGlzdC5hY3RpdmVGaWx0ZXJzQ291bnQkIHwgYXN5bmNcIlxuICAgICAgICAgICAgICBbcmVvcmRlckVuYWJsZWRdPVwicmVvcmRlckNvbnRyb2xsZXIuZW5hYmxlZCQgfCBhc3luY1wiXG4gICAgICAgICAgICAgIFtyZW9yZGVyUG9zaXRpb25dPVwicmVvcmRlckNvbnRyb2xsZXIucG9zaXRpb24kIHwgYXN5bmNcIlxuICAgICAgICAgICAgICBbcmVvcmRlclN0cmF0ZWd5XT1cInJlb3JkZXJDb250cm9sbGVyLnN0cmF0ZWd5JCB8IGFzeW5jXCI+XG4gICAgICAgICAgICA8L3Rmb290PlxuICAgICAgICAgIH1cbiAgICAgICAgPC90YWJsZT5cbiAgICAgIH1cbiAgICAgIEBpZiAoZmlyc3RMb2FkKSB7XG4gICAgICAgIDxmcy1saXN0LWxvYWRlclxuICAgICAgICAgIFtjb2x1bW5zXT1cImxpc3QuY29sdW1ucy5jb2x1bW5zXCJcbiAgICAgICAgICBbbG9hZGVyTGluZXNdPVwibG9hZGVyTGluZXNcIj5cbiAgICAgICAgPC9mcy1saXN0LWxvYWRlcj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgICA8ZnMtbGlzdC1wYWdpbmF0aW9uXG4gICAgICBjbGFzcz1cImZzLWxpc3QtcGFnaW5hdGlvblwiXG4gICAgICBbcm93c109XCJsaXN0RGF0YVwiXG4gICAgICBbcGFnaW5hdGlvbl09XCJsaXN0LnBhZ2luZ1wiPlxuICAgIDwvZnMtbGlzdC1wYWdpbmF0aW9uPlxuICAgIEBpZiAoIWZpcnN0TG9hZCkge1xuICAgICAgQGlmIChsaXN0RGF0YS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwiZnMtbGlzdC1uby1yZXN1bHRzLWNvbnRhaW5lclwiPlxuICAgICAgICAgIEBpZiAobGlzdC5ub1Jlc3VsdHM/Lm1lc3NhZ2UgJiYgIWxpc3QuZW1wdHlTdGF0ZUVuYWJsZWQpIHtcbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgY2xhc3M9XCJmcy1saXN0LW5vLXJlc3VsdHNcIj5cbiAgICAgICAgICAgICAge3sgbGlzdC5ub1Jlc3VsdHM/Lm1lc3NhZ2UgfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgKGxpc3QuZW1wdHlTdGF0ZUVuYWJsZWQpIHtcbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJsaXN0LmVtcHR5U3RhdGVUZW1wbGF0ZVwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICB9XG4gIH1cbjwvbmctdGVtcGxhdGU+Il19
|
|
439
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvbGlzdC9saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9saXN0L2xpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2RSxPQUFPLEVBQW9CLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDclEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWpELE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFbkUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsc0JBQXNCLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN2RyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFeEQsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXRFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRWpELE9BQU8sRUFB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akIscUJBQXFCO3dCQUNyQixxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIsU0FBUztxQkFDVjs4QkFNb0MsV0FBVztzQkFBL0MsV0FBVzt1QkFBQyxlQUFlO2dCQUdyQixpQkFBaUI7c0JBRHZCLFdBQVc7dUJBQUMsNkJBQTZCO2dCQUkvQixNQUFNO3NCQURoQixLQUFLO3VCQUFDLFFBQVE7Z0JBTVIsV0FBVztzQkFEakIsS0FBSztnQkFXSyxXQUFXO3NCQURyQixLQUFLO2dCQWdCQyxZQUFZO3NCQURsQixNQUFNO2dCQUlBLGVBQWU7c0JBRHJCLFlBQVk7dUJBQUMsc0JBQXNCLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFO2dCQUlwRCxJQUFJO3NCQURWLFNBQVM7dUJBQUMsZUFBZTtnQkEwQmYsZUFBZTtzQkFEekIsU0FBUzt1QkFBQyxlQUFlO2dCQVlmLGVBQWU7c0JBRHpCLGVBQWU7dUJBQUMscUJBQXFCO2dCQVUxQixtQkFBbUI7c0JBRDlCLFlBQVk7dUJBQUMseUJBQXlCLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXN5bmNQaXBlLCBOZ0NsYXNzLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFmdGVyQ29udGVudEluaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIENvbnRlbnRDaGlsZHJlbiwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5qZWN0b3IsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBRdWVyeUxpc3QsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5pbXBvcnQgeyBNYXREaWFsb2csIE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5cbmltcG9ydCB7IERyYXdlclJlZiB9IGZyb20gJ0BmaXJlc3RpdGNoL2RyYXdlcic7XG5pbXBvcnQgeyBGaWx0ZXJDb21wb25lbnQsIEZpbHRlckhlYWRpbmdEaXJlY3RpdmUsIEZpbHRlclN0YXR1c0JhckRpcmVjdGl2ZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2ZpbHRlcic7XG5pbXBvcnQgeyBTZWxlY3Rpb25EaWFsb2cgfSBmcm9tICdAZmlyZXN0aXRjaC9zZWxlY3Rpb24nO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWxheSwgZmlsdGVyLCBza2lwLCB0YWtlLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IGNsb25lRGVlcCwgbWVyZ2VXaXRoIH0gZnJvbSAnbG9kYXNoLWVzJztcblxuaW1wb3J0IHsgTGlzdCB9IGZyb20gJy4uLy4uL2NsYXNzZXMvbGlzdC1jb250cm9sbGVyJztcbmltcG9ydCB7IFBlcnNpc3RhbmNlQ29udHJvbGxlciB9IGZyb20gJy4uLy4uL2NsYXNzZXMvcGVyc2lzdGFuY2UtY29udHJvbGxlcic7XG5pbXBvcnQgeyBSZW9yZGVyQ29udHJvbGxlciB9IGZyb20gJy4uLy4uL2NsYXNzZXMvcmVvcmRlci1jb250cm9sbGVyJztcbmltcG9ydCB7XG4gIEZzTGlzdEhlYWRpbmdEaXJlY3RpdmUsXG59IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMnO1xuaW1wb3J0IHsgRnNMaXN0Q2VsbERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvY2VsbC9jZWxsLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0xpc3RDb2x1bW5EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2NvbHVtbi9jb2x1bW4uZGlyZWN0aXZlJztcbmltcG9ydCB7IEZzTGlzdENvbnRlbnRJbml0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9jb250ZW50LWluaXQvY29udGVudC1pbml0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0xpc3REcmFnZ2FibGVMaXN0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9kcmFnZ2FibGUtbGlzdC9kcmFnZ2FibGUtbGlzdC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNMaXN0RW1wdHlTdGF0ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvZW1wdHktc3RhdGUvZW1wdHktc3RhdGUuZGlyZWN0aXZlJztcbmltcG9ydCB7IEZzTGlzdEZvb3RlckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvZm9vdGVyL2Zvb3Rlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgUGFnaW5hdGlvblN0cmF0ZWd5IH0gZnJvbSAnLi4vLi4vZW51bXMvcGFnaW5hdGlvbi1zdHJhdGVneS5lbnVtJztcbmltcG9ydCB7IEZTX0xJU1RfQ09ORklHIH0gZnJvbSAnLi4vLi4vZnMtbGlzdC5wcm92aWRlcnMnO1xuaW1wb3J0IHtcbiAgRnNMaXN0QWJzdHJhY3RSb3csXG4gIEZzTGlzdEFjdGlvbixcbiAgRnNMaXN0Q29uZmlnLCBGc0xpc3RQZXJzaXRhbmNlLCBGc0xpc3RTZWxlY3Rpb25Db25maWcsXG4gIEZzTGlzdFRyYWNrQnlGbixcbiAgRnNMaXN0VHJhY2tCeVRhcmdldFJvd0ZuLFxufSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IElQYWdpbmF0aW9uU3RhdGUgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3BhZ2luYXRpb24tc3RhdGUuaW50ZXJmYWNlJztcbmltcG9ydCB7IENvbHVtbiwgUm93IH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IEdyb3VwRXhwYW5kTm90aWZpZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZ3JvdXAtZXhwYW5kLW5vdGlmaWVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgRnNCb2R5Q29tcG9uZW50IH0gZnJvbSAnLi4vYm9keS9ib2R5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDdXN0b21pemVDb2xzRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vY3VzdG9taXplLWNvbHMnO1xuaW1wb3J0IHsgRnNGb290ZXJDb21wb25lbnQgfSBmcm9tICcuLi9mb290ZXIvZm9vdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0hlYWRDb21wb25lbnQgfSBmcm9tICcuLi9oZWFkL2hlYWQuY29tcG9uZW50JztcbmltcG9ydCB7IEZzTGlzdExvYWRlckNvbXBvbmVudCB9IGZyb20gJy4uL2xvYWRlci9sb2FkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEZzUGFnaW5hdGlvbkNvbXBvbmVudCB9IGZyb20gJy4uL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNTdGF0dXNDb21wb25lbnQgfSBmcm9tICcuLi9zdGF0dXMvc3RhdHVzLmNvbXBvbmVudCc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnMtbGlzdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9saXN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbGlzdC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbXG4gICAgR3JvdXBFeHBhbmROb3RpZmllclNlcnZpY2UsXG4gICAgUGVyc2lzdGFuY2VDb250cm9sbGVyLFxuICAgIFJlb3JkZXJDb250cm9sbGVyLFxuICBdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTmdDbGFzcyxcbiAgICBOZ1RlbXBsYXRlT3V0bGV0LFxuICAgIEZpbHRlckNvbXBvbmVudCxcbiAgICBGaWx0ZXJTdGF0dXNCYXJEaXJlY3RpdmUsXG4gICAgRmlsdGVySGVhZGluZ0RpcmVjdGl2ZSxcbiAgICBGc1N0YXR1c0NvbXBvbmVudCxcbiAgICBGc0xpc3RDb250ZW50SW5pdERpcmVjdGl2ZSxcbiAgICBGc0hlYWRDb21wb25lbnQsXG4gICAgRnNCb2R5Q29tcG9uZW50LFxuICAgIEZzTGlzdERyYWdnYWJsZUxpc3REaXJlY3RpdmUsXG4gICAgRnNGb290ZXJDb21wb25lbnQsXG4gICAgRnNMaXN0Rm9vdGVyRGlyZWN0aXZlLFxuICAgIEZzTGlzdExvYWRlckNvbXBvbmVudCxcbiAgICBGc1BhZ2luYXRpb25Db21wb25lbnQsXG4gICAgQXN5bmNQaXBlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGc0xpc3RDb21wb25lbnQ8VFJvdyA9IGFueT4gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQWZ0ZXJDb250ZW50SW5pdCB7XG4gIFxuICBwdWJsaWMgcmVvcmRlckNvbnRyb2xsZXIgPSBpbmplY3QoUmVvcmRlckNvbnRyb2xsZXIpO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MuZnMtbGlzdCcpIHB1YmxpYyBjbGFzc0ZzTGlzdCA9IHRydWU7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mcy1saXN0LXJvdy1oaWdobGlnaHQnKVxuICBwdWJsaWMgcm93SG92ZXJIaWdobGlnaHQ6IGJvb2xlYW47XG5cbiAgQElucHV0KCdjb25maWcnKVxuICBwdWJsaWMgc2V0IGNvbmZpZyhjb25maWc6IEZzTGlzdENvbmZpZzxUUm93Pikge1xuICAgIHRoaXMuX2luaXRXaXRoQ29uZmlnKGNvbmZpZyk7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgbG9hZGVyTGluZXMgPSAzO1xuXG4gIHByaXZhdGUgX2NlbGxSb3dUeXBlSW5wdXQ/OiB1bmtub3duO1xuICBwcml2YXRlIF9jZWxsUm93VHlwZUZyb21Db25maWc/OiB1bmtub3duO1xuXG4gIC8qKlxuICAgKiBSb3cgdHlwaW5nIGFuY2hvciBmb3IgY2VsbCB0ZW1wbGF0ZXMuIE92ZXJyaWRlcyB7QGxpbmsgRnNMaXN0Q29uZmlnLmNlbGxSb3dUeXBlfS5cbiAgICogQ29waWVkIG9udG8gZWFjaCBgZnMtbGlzdC1jZWxsYCAoYW5kIGdyb3VwIGNlbGwgdGVtcGxhdGVzKSB1bmxlc3MgYFtyb3dUeXBlXWAgaXMgc2V0IG9uIHRoYXQgY2VsbC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgY2VsbFJvd1R5cGUodmFsdWU6IHVua25vd24pIHtcbiAgICB0aGlzLl9jZWxsUm93VHlwZUlucHV0ID0gdmFsdWU7XG4gICAgdGhpcy5fcHJvcGFnYXRlQ2VsbFJvd1R5cGVBbmNob3JzKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNlbGxSb3dUeXBlKCk6IHVua25vd24ge1xuICAgIHJldHVybiB0aGlzLl9jZWxsUm93VHlwZUlucHV0ICE9PSB1bmRlZmluZWQgPyB0aGlzLl9jZWxsUm93VHlwZUlucHV0IDogdGhpcy5fY2VsbFJvd1R5cGVGcm9tQ29uZmlnO1xuICB9XG5cbiAgLyoqIE1lcmdlZCBjb25maWcgYWZ0ZXIgZGVmYXVsdHM7IHVzZWQgdG8gdHlwZSBjZWxscyB3aXRob3V0IHBlci10ZW1wbGF0ZSBgW2NvbmZpZ1R5cGluZ11gLiAqL1xuICBwdWJsaWMgZ2V0IG1lcmdlZExpc3RDb25maWcoKTogRnNMaXN0Q29uZmlnPFRSb3c+IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5fbWVyZ2VkTGlzdENvbmZpZyBhcyBGc0xpc3RDb25maWc8VFJvdz4gfCB1bmRlZmluZWQ7XG4gIH1cblxuICBAT3V0cHV0KClcbiAgcHVibGljIGZpbHRlcnNSZWFkeSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBAQ29udGVudENoaWxkKEZzTGlzdEhlYWRpbmdEaXJlY3RpdmUsIHsgcmVhZDogVGVtcGxhdGVSZWYgfSlcbiAgcHVibGljIGhlYWRpbmdUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICBAVmlld0NoaWxkKEZzQm9keUNvbXBvbmVudClcbiAgcHVibGljIGJvZHk6IEZzQm9keUNvbXBvbmVudDtcblxuICBwdWJsaWMgbGlzdDogTGlzdDtcblxuICAvLyBFdmVudCB3aWxsIGZpcmVkIGlmIGFjdGlvbiByZW1vdmU6IHRydWUgd2lsbCBjbGlja2VkXG4gIHB1YmxpYyByb3dSZW1vdmVkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBwdWJsaWMgZmlyc3RMb2FkID0gdHJ1ZTtcblxuICBwcml2YXRlIF9saXN0Q29sdW1uRGlyZWN0aXZlczogUXVlcnlMaXN0PEZzTGlzdENvbHVtbkRpcmVjdGl2ZT47XG4gIC8qKiBNZXJnZWQgbGlzdCBjb25maWcgKGFmdGVyIGRlZmF1bHRzKTsgdXNlZCB0byBwb3B1bGF0ZSBjZWxsIGBjb25maWdUeXBpbmdgIHdoZW4gY2VsbHMgb21pdCBpdC4gKi9cbiAgcHJpdmF0ZSBfbWVyZ2VkTGlzdENvbmZpZz86IEZzTGlzdENvbmZpZzxUUm93PjtcbiAgcHJpdmF0ZSBfZmlsdGVyUmVmOiBGaWx0ZXJDb21wb25lbnQ7XG4gIHByaXZhdGUgX2ZpbHRlclBhcmFtc1JlYWR5ID0gZmFsc2U7XG4gIHByaXZhdGUgX2Rlc3Ryb3kgPSBuZXcgU3ViamVjdCgpO1xuICBwcml2YXRlIF9pbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG4gIHByaXZhdGUgX2NvbmZpZyA9IGluamVjdDxGc0xpc3RDb25maWc+KEZTX0xJU1RfQ09ORklHLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuICBwcml2YXRlIF9lbCA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgcHJpdmF0ZSBfc2VsZWN0aW9uRGlhbG9nID0gaW5qZWN0KFNlbGVjdGlvbkRpYWxvZyk7XG4gIHByaXZhdGUgX2RpYWxvZyA9IGluamVjdChNYXREaWFsb2cpO1xuICBwcml2YXRlIF9jZFJlZiA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG4gIHByaXZhdGUgX2dyb3VwRXhwYW5kTm90aWZpZXIgPSBpbmplY3QoR3JvdXBFeHBhbmROb3RpZmllclNlcnZpY2UpO1xuICBwcml2YXRlIF9yb3V0ZSA9IGluamVjdChBY3RpdmF0ZWRSb3V0ZSk7XG4gIHByaXZhdGUgX3BlcnNpc3RhbmNlID0gaW5qZWN0KFBlcnNpc3RhbmNlQ29udHJvbGxlcik7XG5cbiAgQFZpZXdDaGlsZChGaWx0ZXJDb21wb25lbnQpXG4gIHB1YmxpYyBzZXQgZmlsdGVyUmVmZXJlbmNlKGNvbXBvbmVudCkge1xuICAgIHRoaXMuX2ZpbHRlclJlZiA9IGNvbXBvbmVudDtcbiAgICB0aGlzLmxpc3QuYWN0aW9ucy5zZXRGaWx0ZXJSZWYoY29tcG9uZW50KTtcbiAgICB0aGlzLl9lbWl0RmlsdGVyc1JlYWR5RXZlbnQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgY29sdW1ucyB0byBjb25maWdcbiAgICogQ3JlYXRlIENvbHVtbiBNb2RlbCBpbnN0YW5jZXNcbiAgICovXG4gIEBDb250ZW50Q2hpbGRyZW4oRnNMaXN0Q29sdW1uRGlyZWN0aXZlKVxuICBwdWJsaWMgc2V0IGNvbHVtblRlbXBsYXRlcyhsaXN0Q29sdW1uRGlyZWN0aXZlczogUXVlcnlMaXN0PEZzTGlzdENvbHVtbkRpcmVjdGl2ZT4pIHtcbiAgICB0aGlzLl9saXN0Q29sdW1uRGlyZWN0aXZlcyA9IGxpc3RDb2x1bW5EaXJlY3RpdmVzO1xuICAgIGlmICh0aGlzLmxpc3QpIHtcbiAgICAgIHRoaXMubGlzdC50cmFuZm9ybVRlbXBsYXRlc1RvQ29sdW1ucyhsaXN0Q29sdW1uRGlyZWN0aXZlcyk7XG4gICAgfVxuICAgIHRoaXMuX3Byb3BhZ2F0ZUNlbGxSb3dUeXBlQW5jaG9ycygpO1xuICB9XG5cbiAgQENvbnRlbnRDaGlsZChGc0xpc3RFbXB0eVN0YXRlRGlyZWN0aXZlLCB7IHJlYWQ6IFRlbXBsYXRlUmVmIH0pXG4gIHByaXZhdGUgc2V0IF9lbXB0eVN0YXRlVGVtcGxhdGUodGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4pIHtcbiAgICBpZiAodGhpcy5saXN0KSB7XG4gICAgICB0aGlzLmxpc3QuZW1wdHlTdGF0ZVRlbXBsYXRlID0gdGVtcGxhdGU7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZGlhbG9nUmVmID0gaW5qZWN0KE1hdERpYWxvZ1JlZiwgeyBvcHRpb25hbDogdHJ1ZSB9KTtcbiAgcHJpdmF0ZSBfZHJhd2VyUmVmID0gaW5qZWN0KERyYXdlclJlZiwgeyBvcHRpb25hbDogdHJ1ZSB9KTtcblxuICAvKipcbiAgICogUmV0dXJuIHJlZmVyZW5jZSBmb3IgZmlsdGVyXG4gICAqL1xuICBwdWJsaWMgZ2V0IGZpbHRlclJlZigpOiBGaWx0ZXJDb21wb25lbnQge1xuICAgIHJldHVybiB0aGlzLl9maWx0ZXJSZWY7XG4gIH1cblxuICBwdWJsaWMgc2V0IGdyb3VwRW5hYmxlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMubGlzdC5ncm91cEVuYWJsZWQodmFsdWUpO1xuICB9XG5cbiAgcHVibGljIGdldCBncm91cEVuYWJsZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMubGlzdC5kYXRhQ29udHJvbGxlci5ncm91cEVuYWJsZWQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGhhc1N0YXR1cygpIHtcbiAgICByZXR1cm4gdGhpcy5saXN0LnN0YXR1cyAmJlxuICAgICAgKHRoaXMubGlzdC5zb3J0aW5nLmlzRGVmaW5lZCB8fCB0aGlzLmxpc3QucGFnaW5nLmVuYWJsZWQpICYmXG4gICAgICAoXG4gICAgICAgICF0aGlzLnJlb3JkZXJDb250cm9sbGVyLmVuYWJsZWQgfHxcbiAgICAgICAgKHRoaXMucmVvcmRlckNvbnRyb2xsZXIuZW5hYmxlZCAmJiB0aGlzLnJlb3JkZXJDb250cm9sbGVyLnN0YXR1cylcbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHBhZ2luYXRvclZpc2libGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMubGlzdC5wYWdpbmcuZW5hYmxlZFxuICAgICAgJiYgIXRoaXMuZmlyc3RMb2FkXG4gICAgICAmJiAhdGhpcy5saXN0LmVtcHR5U3RhdGVFbmFibGVkXG4gICAgICAmJiB0aGlzLmxpc3QuZGF0YUNvbnRyb2xsZXIudmlzaWJsZVJvd3NDb3VudCA+IDBcbiAgICAgICYmIHRoaXMubGlzdC5wYWdpbmcucGFnZXMgPiAxO1xuICB9XG5cbiAgcHVibGljIGdldCBmaWx0ZXJzUXVlcnkoKTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4ge1xuICAgIHJldHVybiB0aGlzLmxpc3QuZmlsdGVyc1F1ZXJ5O1xuICB9XG5cbiAgcHVibGljIGdldCBwYWdpbmdTdGF0ZSgpOiBJUGFnaW5hdGlvblN0YXRlIHtcbiAgICByZXR1cm4gdGhpcy5saXN0LnBhZ2luZy5zdGF0ZTtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubGlzdC5hZnRlckluaXQpIHtcbiAgICAgIHRoaXMubGlzdC5hZnRlckluaXQodGhpcyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCkge1xuICAgIHRoaXMuX3N1YnNjcmliZVRvUmVtb3ZlUm93KCk7XG4gICAgdGhpcy5fc3Vic2NyaWJlVG9Hcm91cEV4cGFuZFN0YXR1c0NoYW5nZSgpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgIGlmICh0aGlzLmxpc3QpIHtcbiAgICAgIHRoaXMubGlzdC5kZXN0cm95KCk7XG4gICAgfVxuXG4gICAgdGhpcy5fZGVzdHJveS5uZXh0KG51bGwpO1xuICAgIHRoaXMuX2Rlc3Ryb3kuY29tcGxldGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZXh0UGFnZSgpIHtcbiAgICB0aGlzLmxpc3QucGFnaW5nLmdvTmV4dCgpO1xuICB9XG5cbiAgcHVibGljIHByZXZQYWdlKCkge1xuICAgIHRoaXMubGlzdC5wYWdpbmcuZ29QcmV2KCk7XG4gIH1cblxuICBwdWJsaWMgZmlyc3RQYWdlKCkge1xuICAgIHRoaXMubGlzdC5wYWdpbmcuZ29GaXJzdCgpO1xuICB9XG5cbiAgcHVibGljIGxhc3RQYWdlKCkge1xuICAgIHRoaXMubGlzdC5wYWdpbmcuZ29MYXN0KCk7XG4gIH1cblxuICBwdWJsaWMgcmVsb2FkKCk6IE9ic2VydmFibGU8eyBzY3JvbGxJbnRvVmlldz86IGJvb2xlYW4gfT4ge1xuICAgIHRoaXMuZmlsdGVyUmVmLnJlbG9hZCgpO1xuXG4gICAgcmV0dXJuIHRoaXMubGlzdC5mZXRjaENvbXBsZXRlJFxuICAgICAgLnBpcGUoICAgICAgXG4gICAgICAgIHRha2UoMSksICBcbiAgICAgICAgZGVsYXkoMCksXG4gICAgICApO1xuICB9XG5cbiAgcHVibGljIGdldERhdGEodHJhY2tCeT86IEZzTGlzdFRyYWNrQnlGbikge1xuICAgIHJldHVybiB0aGlzLmxpc3QuZ2V0RGF0YSh0cmFja0J5KTtcbiAgfVxuXG4gIHB1YmxpYyBoYXNEYXRhKHRyYWNrQnk6IEZzTGlzdFRyYWNrQnlGbikge1xuICAgIHJldHVybiB0aGlzLmxpc3QuaGFzRGF0YSh0cmFja0J5KTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVEYXRhKFxuICAgIHJvd3M6IEZzTGlzdEFic3RyYWN0Um93IHwgRnNMaXN0QWJzdHJhY3RSb3dbXSxcbiAgICB0cmFja0J5PzogRnNMaXN0VHJhY2tCeVRhcmdldFJvd0ZuLFxuICApOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5saXN0LmRhdGFDb250cm9sbGVyLnVwZGF0ZURhdGEocm93cywgdHJhY2tCeSk7XG4gIH1cblxuICBwdWJsaWMgdXBkYXRlU2VsZWN0aW9uQ29uZmlnKGNvbmZpZzogRnNMaXN0U2VsZWN0aW9uQ29uZmlnKSB7XG4gICAgdGhpcy5saXN0LnNlbGVjdGlvbi51cGRhdGVDb25maWcoY29uZmlnKTtcbiAgfVxuXG4gIHB1YmxpYyByZXNldFNlbGVjdGlvbkFjdGlvbnMoKSB7XG4gICAgdGhpcy5saXN0LnNlbGVjdGlvbi5yZXNldEFjdGlvbnMoKTtcbiAgfVxuXG4gIHB1YmxpYyBlbmFibGVTZWxlY3Rpb24oKSB7XG4gICAgdGhpcy5saXN0LnNlbGVjdGlvbi5lbmFibGVTZWxlY3Rpb24oKTtcbiAgfVxuXG4gIHB1YmxpYyBkaXNhYmxlU2VsZWN0aW9uKCkge1xuICAgIHRoaXMubGlzdC5zZWxlY3Rpb24uZGlzYWJsZVNlbGVjdGlvbigpO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZURhdGEoZGF0YTogRnNMaXN0QWJzdHJhY3RSb3cgfCBGc0xpc3RBYnN0cmFjdFJvd1tdIHwgRnNMaXN0VHJhY2tCeVRhcmdldFJvd0ZuKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMubGlzdC5kYXRhQ29udHJvbGxlci5yZW1vdmVEYXRhKGRhdGEpO1xuICB9XG5cbiAgcHVibGljIHNldEhlYWRpbmcoaGVhZGluZzogc3RyaW5nKSB7XG4gICAgdGhpcy5saXN0LmhlYWRpbmcgPSBoZWFkaW5nO1xuICB9XG5cbiAgcHVibGljIHNldFN1YmhlYWRpbmcoc3ViaGVhZGluZzogc3RyaW5nKSB7XG4gICAgdGhpcy5saXN0LnN1YmhlYWRpbmcgPSBzdWJoZWFkaW5nO1xuICB9XG5cbiAgcHVibGljIHJlb3JkZXJTdGFydCgpIHtcbiAgICB0aGlzLnJlb3JkZXJDb250cm9sbGVyLmVuYWJsZVJlb3JkZXIoKTtcbiAgfVxuXG4gIHB1YmxpYyByZW9yZGVyRmluaXNoKCkge1xuICAgIHRoaXMucmVvcmRlckNvbnRyb2xsZXIuZGlzYWJsZVJlb3JkZXIoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRBY3Rpb25zKGFjdGlvbnM6IEZzTGlzdEFjdGlvbltdKSB7XG4gICAgaWYgKGFjdGlvbnMpIHtcbiAgICAgIHRoaXMubGlzdC5hY3Rpb25zLmNsZWFyQWN0aW9ucygpO1xuICAgICAgdGhpcy5saXN0LmFjdGlvbnMuc2V0QWN0aW9ucyhhY3Rpb25zKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZmlsdGVyUmVhZHkoKSB7XG4gICAgdGhpcy5saXN0LmZpbHRlcnNSZWFkeSgpO1xuICAgIHRoaXMuX2ZpbHRlclBhcmFtc1JlYWR5ID0gdHJ1ZTtcbiAgICB0aGlzLl9lbWl0RmlsdGVyc1JlYWR5RXZlbnQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgdmlzaWJpbGl0eSBmb3Igc3BlY2lmaWMgY29sdW1uXG4gICAqL1xuICBwdWJsaWMgY29sdW1uVmlzaWJpbGl0eShuYW1lOiBzdHJpbmcsIHNob3c6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmNvbHVtbnNWaXNpYmlsaXR5KFt7IG5hbWUsIHNob3cgfV0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSB2aXNpYmlsaXR5IGZvciBsaXN0IG9mIHNwZWNpZmljIGNvbHVtbnNcbiAgICovXG4gIHB1YmxpYyBjb2x1bW5zVmlzaWJpbGl0eShjb2x1bW5zOiB7IG5hbWU6IHN0cmluZzsgc2hvdzogYm9vbGVhbiB9W10pIHtcbiAgICB0aGlzLmxpc3QuY29sdW1ucy51cGRhdGVWaXNpYmlsaXR5Rm9yQ29scyhjb2x1bW5zKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdmlzaWJsZUNvbHVtbnMkKCk6IE9ic2VydmFibGU8Q29sdW1uW10+IHtcbiAgICByZXR1cm4gdGhpcy5saXN0LmNvbHVtbnMudmlzaWJsZUNvbHVtbnMkO1xuICB9XG5cbiAgcHJpdmF0ZSBfZW1pdEZpbHRlcnNSZWFkeUV2ZW50KCk6IHZvaWQge1xuICAgIGlmICghIXRoaXMuZmlsdGVyUmVmICYmIHRoaXMuX2ZpbHRlclBhcmFtc1JlYWR5KSB7XG4gICAgICB0aGlzLmZpbHRlcnNSZWFkeS5lbWl0KCk7XG4gICAgICB0aGlzLl9jZFJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IGluRGlhbG9nKCkge1xuICAgIHJldHVybiAhIXRoaXMuX2RpYWxvZ1JlZiB8fCAhIXRoaXMuX2RyYXdlclJlZjtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplIGNvbmZpZyBmb3IgbGlzdFxuICAgKlxuICAgKiBAcGFyYW0gY29uZmlnXG4gICAqL1xuICBwcml2YXRlIF9pbml0V2l0aENvbmZpZyhjb25maWc6IEZzTGlzdENvbmZpZzxUUm93Pikge1xuICAgIGlmICh0aGlzLmxpc3QpIHtcbiAgICAgIHRoaXMubGlzdC5kZXN0cm95KCk7XG4gICAgfVxuXG4gICAgY29uc3QgZGVmYXVsdENvbmZpZzogRnNMaXN0Q29uZmlnPFRSb3c+ID0ge1xuICAgICAgcXVlcnlQYXJhbTogdHJ1ZSxcbiAgICAgIGNoaXBzOiB0cnVlLFxuICAgICAgcGFnaW5nOiB7XG4gICAgICAgIHN0cmF0ZWd5OiBQYWdpbmF0aW9uU3RyYXRlZ3kuT2Zmc2V0LFxuICAgICAgICBsaW1pdDogMjUsXG4gICAgICB9LFxuICAgICAgbm9SZXN1bHRzOiB7XG4gICAgICAgIG1lc3NhZ2U6ICdObyBSZXN1bHRzIEZvdW5kJyxcbiAgICAgIH0sXG4gICAgfTtcblxuICAgIGNvbnN0IGdsb2JhbENvbmZpZyA9IGNsb25lRGVlcCh0aGlzLl9jb25maWcgfHwge30pO1xuICAgIGNvbnN0IGxpc3RDb25maWcgPSBtZXJnZVdpdGgoZGVmYXVsdENvbmZpZywgZ2xvYmFsQ29uZmlnLCBjb25maWcsIHRoaXMuX2NvbmZpZ01lcmdlQ3VzdG9taXplcik7XG5cbiAgICB0aGlzLl9tZXJnZWRMaXN0Q29uZmlnID0gbGlzdENvbmZpZztcbiAgICB0aGlzLl9jZWxsUm93VHlwZUZyb21Db25maWcgPSBsaXN0Q29uZmlnLmNlbGxSb3dUeXBlO1xuXG4gICAgaWYgKGxpc3RDb25maWcucGVyc2lzdCAhPT0gZmFsc2UpIHtcbiAgICAgIHRoaXMuX3Jlc3RvcmVQZXJzaXN0YW5jZShsaXN0Q29uZmlnLnBlcnNpc3QpO1xuICAgIH1cblxuICAgIHRoaXMuX3VwZGF0ZUN1c3RvbWl6ZUFjdGlvbihsaXN0Q29uZmlnLmFjdGlvbnMpO1xuXG4gICAgdGhpcy5saXN0ID0gbmV3IExpc3QoXG4gICAgICB0aGlzLl9lbCxcbiAgICAgIGxpc3RDb25maWcsXG4gICAgICB0aGlzLl9zZWxlY3Rpb25EaWFsb2csXG4gICAgICB0aGlzLl9yb3V0ZSxcbiAgICAgIHRoaXMuX3BlcnNpc3RhbmNlLFxuICAgICAgdGhpcy5pbkRpYWxvZyxcbiAgICApO1xuXG4gICAgdGhpcy5yb3dIb3ZlckhpZ2hsaWdodCA9IHRoaXMubGlzdC5yb3dIb3ZlckhpZ2hsaWdodDtcblxuICAgIHRoaXMuX3dhaXRGaXJzdExvYWQoKTtcblxuICAgIHRoaXMucmVvcmRlckNvbnRyb2xsZXIuaW5pdFdpdGhDb25maWcoXG4gICAgICBjb25maWcucmVvcmRlcixcbiAgICAgIHRoaXMubGlzdC5kYXRhQ29udHJvbGxlcixcbiAgICAgIHRoaXMubGlzdC5hY3Rpb25zLFxuICAgICAgdGhpcy5saXN0LnNlbGVjdGlvbixcbiAgICApO1xuXG4gICAgaWYgKHRoaXMuX2xpc3RDb2x1bW5EaXJlY3RpdmVzKSB7XG4gICAgICB0aGlzLmxpc3QudHJhbmZvcm1UZW1wbGF0ZXNUb0NvbHVtbnModGhpcy5fbGlzdENvbHVtbkRpcmVjdGl2ZXMpO1xuICAgIH1cbiAgICB0aGlzLl9saXN0ZW5Tb3J0aW5nQ2hhbmdlKCk7XG4gICAgdGhpcy5fcHJvcGFnYXRlQ2VsbFJvd1R5cGVBbmNob3JzKCk7XG4gIH1cblxuICAvKipcbiAgICogRmluZCBhY3Rpb24gd2l0aCBjdXN0b21pemUgZmxhZyBhbmQgcmUtZGVjbGFyZSBjbGljayBmdW5jdGlvbiBmb3IgQ3VzdG9taXplQ29sc0RpYWxvZ1xuICAgKlxuICAgKiBAcGFyYW0gYWN0aW9uc1xuICAgKi9cbiAgcHJpdmF0ZSBfdXBkYXRlQ3VzdG9taXplQWN0aW9uKGFjdGlvbnM6IEZzTGlzdEFjdGlvbltdKSB7XG4gICAgY29uc3QgY3VzdG9taXplQWN0aW9uID0gYWN0aW9ucz8uZmluZCgoYWN0aW9uKSA9PiBhY3Rpb24uY3VzdG9taXplKTtcblxuICAgIGlmIChjdXN0b21pemVBY3Rpb24pIHtcbiAgICAgIGNvbnN0IGFjdGlvbkNsaWNrRm4gPSBjdXN0b21pemVBY3Rpb24uY2xpY2s7XG5cbiAgICAgIGN1c3RvbWl6ZUFjdGlvbi5jbGljayA9ICgpID0+IHtcbiAgICAgICAgaWYgKGFjdGlvbkNsaWNrRm4pIHtcbiAgICAgICAgICBhY3Rpb25DbGlja0ZuKG51bGwpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fZGlhbG9nXG4gICAgICAgICAgLm9wZW4oQ3VzdG9taXplQ29sc0RpYWxvZ0NvbXBvbmVudCwge1xuICAgICAgICAgICAgYXV0b0ZvY3VzOiBmYWxzZSxcbiAgICAgICAgICAgIGluamVjdG9yOiB0aGlzLl9pbmplY3RvcixcbiAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgY29sdW1uczogdGhpcy5saXN0LmNvbHVtbnMuY29sdW1uc0ZvckRpYWxvZyxcbiAgICAgICAgICAgICAgY2hhbmdlRm46IHRoaXMubGlzdC5jb2x1bW5zLmNoYW5nZUZuLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9KVxuICAgICAgICAgIC5hZnRlckNsb3NlZCgpXG4gICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICB0YWtlVW50aWwodGhpcy5saXN0LmRlc3Ryb3kkKSxcbiAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95KSxcbiAgICAgICAgICApXG4gICAgICAgICAgLnN1YnNjcmliZSgoZGF0YSkgPT4ge1xuICAgICAgICAgICAgaWYgKGRhdGEpIHtcbiAgICAgICAgICAgICAgdGhpcy5saXN0LmNvbHVtbnMudXBkYXRlVmlzaWJpbGl0eUZvckNvbHMoZGF0YSk7XG4gICAgICAgICAgICAgIHRoaXMuX2NkUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgfTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlIHNvcnRpbmcgaW4gZmlsdGVyXG4gICAqL1xuICBwcml2YXRlIF9saXN0ZW5Tb3J0aW5nQ2hhbmdlKCkge1xuICAgIHRoaXMubGlzdC5zb3J0aW5nXG4gICAgICAuc29ydGluZ0NoYW5nZWQkXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMubGlzdC5kZXN0cm95JCksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95KSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKHNvcnQpID0+IHtcbiAgICAgICAgdGhpcy5fZmlsdGVyUmVmLnVwZGF0ZVNvcnQoc29ydCwgZmFsc2UpO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9zdWJzY3JpYmVUb1JlbW92ZVJvdygpIHtcbiAgICB0aGlzLnJvd1JlbW92ZWRcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95KSlcbiAgICAgIC5zdWJzY3JpYmUoKHJvdykgPT4ge1xuICAgICAgICB0aGlzLmxpc3QuZGF0YUNvbnRyb2xsZXIucmVtb3ZlRGF0YShyb3cpO1xuICAgICAgICB0aGlzLmxpc3QuZGF0YUNvbnRyb2xsZXIudmlzaWJsZVJvd3NcbiAgICAgICAgICAuZm9yRWFjaCgoaXRlbTogUm93KSA9PiBpdGVtLnVwZGF0ZUFjdGlvbnMoKSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX3N1YnNjcmliZVRvR3JvdXBFeHBhbmRTdGF0dXNDaGFuZ2UoKSB7XG4gICAgaWYgKHRoaXMubGlzdC5kYXRhQ29udHJvbGxlci5oYXNHcm91cHMpIHtcbiAgICAgIHRoaXMuX2dyb3VwRXhwYW5kTm90aWZpZXIuZXhwYW5kU3RhdHVzQ2hhbmdlJFxuICAgICAgICAucGlwZShcbiAgICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSksXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgocm93KSA9PiB7XG4gICAgICAgICAgdGhpcy5saXN0LmRhdGFDb250cm9sbGVyLnRvZ2dsZVJvd0dyb3VwKHJvdyk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3dhaXRGaXJzdExvYWQoKSB7XG4gICAgdGhpcy5saXN0LmxvYWRpbmckXG4gICAgICAucGlwZShcbiAgICAgICAgc2tpcCgxKSxcbiAgICAgICAgZmlsdGVyKCh2YWx1ZSkgPT4gIXZhbHVlKSxcbiAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMubGlzdC5kZXN0cm95JCksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95KSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmZpcnN0TG9hZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLl9jZFJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfY29uZmlnTWVyZ2VDdXN0b21pemVyKG9ialZhbHVlOiBhbnkpIHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheShvYmpWYWx1ZSkpIHtcbiAgICAgIHJldHVybiBvYmpWYWx1ZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9yZXN0b3JlUGVyc2lzdGFuY2UocGVyc2lzdENvbmZpZzogRnNMaXN0UGVyc2l0YW5jZSkge1xuICAgIHRoaXMuX3BlcnNpc3RhbmNlLmluaXQocGVyc2lzdENvbmZpZywgdGhpcy5pbkRpYWxvZyk7XG4gIH1cblxuICBwcml2YXRlIF9wcm9wYWdhdGVDZWxsUm93VHlwZUFuY2hvcnMoKSB7XG4gICAgaWYgKCF0aGlzLl9saXN0Q29sdW1uRGlyZWN0aXZlcyB8fCAhdGhpcy5fbWVyZ2VkTGlzdENvbmZpZykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGFuY2hvciA9IHRoaXMuY2VsbFJvd1R5cGU7XG5cbiAgICB0aGlzLl9saXN0Q29sdW1uRGlyZWN0aXZlcy5mb3JFYWNoKChjb2wpID0+IHtcbiAgICAgIHRoaXMuX21heWJlQXBwbHlDZWxsVHlwaW5nKGNvbC5jZWxsQ29uZmlncywgYW5jaG9yLCB0aGlzLl9tZXJnZWRMaXN0Q29uZmlnKTtcbiAgICAgIHRoaXMuX21heWJlQXBwbHlDZWxsVHlwaW5nKGNvbC5ncm91cEhlYWRlckNvbmZpZ3MsIGFuY2hvciwgdGhpcy5fbWVyZ2VkTGlzdENvbmZpZyk7XG4gICAgICB0aGlzLl9tYXliZUFwcGx5Q2VsbFR5cGluZyhjb2wuZ3JvdXBGb290ZXJDb25maWdzLCBhbmNob3IsIHRoaXMuX21lcmdlZExpc3RDb25maWcpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfbWF5YmVBcHBseUNlbGxUeXBpbmcoZGlyOiB1bmtub3duLCBhbmNob3I6IHVua25vd24sIGxpc3RDb25maWc6IEZzTGlzdENvbmZpZzxUUm93Pikge1xuICAgIGlmICghKGRpciBpbnN0YW5jZW9mIEZzTGlzdENlbGxEaXJlY3RpdmUpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmIChkaXIucm93VHlwZSAhPT0gdW5kZWZpbmVkIHx8IGRpci5jb25maWdUeXBpbmcgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAoYW5jaG9yICE9IG51bGwpIHtcbiAgICAgIGRpci5yb3dUeXBlID0gYW5jaG9yO1xuICAgIH0gZWxzZSB7XG4gICAgICBkaXIuY29uZmlnVHlwaW5nID0gbGlzdENvbmZpZztcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJmcy1saXN0LWNvbnRhaW5lclwiXG4gICAgW25nQ2xhc3NdPVwie1xuICAgICAgJ2hhcy1maWx0ZXJzJzogbGlzdC5maWx0ZXJDb25maWc/Lml0ZW1zLmxlbmd0aCxcbiAgICAgICdoYXMtc3RhdHVzJzogaGFzU3RhdHVzLFxuICAgICAgJ2hhcy1jaGlwcyc6IGxpc3QuY2hpcHMsXG4gICAgICAnaGFzLWFjdGlvbnMnOiBsaXN0LmFjdGlvbnMuaGFzQWN0aW9ucyxcbiAgICAgICdoYXMtcm93LWFjdGlvbnMtaG92ZXInOiBsaXN0LnJvd0FjdGlvbnNIb3ZlcixcbiAgICAgICdmaXJzdC1sb2FkJzogZmlyc3RMb2FkLFxuICAgICAgJ2xvYWRpbmcnOiBsaXN0LmxvYWRpbmckIHwgYXN5bmNcbiAgICB9XCI+XG4gIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJsaXN0Q29udGFpbmVyQ29udGVudFwiPjwvbmctdGVtcGxhdGU+XG48L2Rpdj5cbjxuZy10ZW1wbGF0ZSAjbGlzdENvbnRhaW5lckNvbnRlbnQ+XG4gIEBpZiAobGlzdC5kYXRhQ29udHJvbGxlci52aXNpYmxlUm93cyQgfCBhc3luYzsgYXMgbGlzdERhdGEpIHtcbiAgICA8ZGl2IGNsYXNzPVwiZnMtbGlzdC1oZWFkZXItY29udGFpbmVyXCI+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiZnMtbGlzdC1oZWFkZXJcIlxuICAgICAgICBbbmdDbGFzc109XCJ7ICduby13cmFwJzogcmVvcmRlckNvbnRyb2xsZXIubWFudWFsUmVvcmRlckFjdGl2YXRlZCB8fCAhbGlzdC5maWx0ZXJDb25maWc/Lml0ZW1zLmxlbmd0aCB9XCI+XG4gICAgICAgIEBpZiAobGlzdC5maWx0ZXJDb25maWcpIHtcbiAgICAgICAgICA8ZnMtZmlsdGVyXG4gICAgICAgICAgICBjbGFzcz1cImZzLWxpc3QtZmlsdGVyXCJcbiAgICAgICAgICAgIFtjb25maWddPVwibGlzdC5maWx0ZXJDb25maWdcIj5cbiAgICAgICAgICAgIEBpZiAoaGFzU3RhdHVzKSB7XG4gICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBmc0ZpbHRlclN0YXR1c0Jhcj5cbiAgICAgICAgICAgICAgICA8ZnMtbGlzdC1zdGF0dXNcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZnMtbGlzdC1zdGF0dXNcIlxuICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAnaGlkZGVuLW1vYmlsZSc6ICFsaXN0LnN0YXR1cyB9XCJcbiAgICAgICAgICAgICAgICAgIFtyb3dzXT1cImxpc3REYXRhXCJcbiAgICAgICAgICAgICAgICAgIFtsaXN0XT1cImxpc3RcIlxuICAgICAgICAgICAgICAgICAgW2ZpcnN0TG9hZF09XCJmaXJzdExvYWRcIj5cbiAgICAgICAgICAgICAgICA8L2ZzLWxpc3Qtc3RhdHVzPlxuICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGlmIChoZWFkaW5nVGVtcGxhdGUpIHtcbiAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIGZzRmlsdGVySGVhZGluZz5cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwiaGVhZGluZ1RlbXBsYXRlXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L2ZzLWZpbHRlcj5cbiAgICAgICAgfVxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2ZzLWxpc3QtY29udGVudF1cIj48L25nLWNvbnRlbnQ+XG4gICAgPCEtLSBUYWJsZSBpbXBsZW1lbnRhdGlvbiAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiZnMtbGlzdC10YWJsZS1jb250YWluZXJcIj5cbiAgICAgIEBpZiAoIWZpcnN0TG9hZCAmJiBsaXN0RGF0YS5sZW5ndGggPiAwICYmICFsaXN0LmVtcHR5U3RhdGVFbmFibGVkKSB7XG4gICAgICAgIDx0YWJsZVxuICAgICAgICAgIGNsYXNzPVwiZnMtbGlzdC10YWJsZVwiXG4gICAgICAgICAgcm9sZT1cImdyaWRcIlxuICAgICAgICAgIFtmc0xpc3RDb250ZW50SW5pdF09XCJsaXN0LmFmdGVyQ29udGVudEluaXRcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAnc3R5bGUtY2FyZCc6IGxpc3Quc3R5bGUgPT09ICdjYXJkJyxcbiAgICAgICAgICAgICAgJ3N0eWxlLWJhc2ljJzogbGlzdC5zdHlsZSA9PT0gJ2Jhc2ljJyxcbiAgICAgICAgICAgICAgJ3N0eWxlLWxpbmUnOiAobGlzdC5zdHlsZSB8fCAnbGluZScpID09PSAnbGluZSdcbiAgICAgICAgICAgIH1cIj5cbiAgICAgICAgICBAaWYgKGxpc3QuY29sdW1ucy5oYXNIZWFkZXIpIHtcbiAgICAgICAgICAgIDx0aGVhZFxuICAgICAgICAgICAgICBmcy1saXN0LWhlYWRcbiAgICAgICAgICAgICAgY2xhc3M9XCJmcy1saXN0LWhlYWRcIlxuICAgICAgICAgICAgICByb2xlPVwicm93Z3JvdXBcIlxuICAgICAgICAgICAgICBbbmdDbGFzc109XCJsaXN0LmNvbHVtbnMudGhlYWRDbGFzc1wiXG4gICAgICAgICAgICAgIFtjb2x1bW5zXT1cImxpc3QuY29sdW1ucy52aXNpYmxlQ29sdW1ucyQgfCBhc3luY1wiXG4gICAgICAgICAgICAgIFtzb3J0aW5nXT1cImxpc3Quc29ydGluZ1wiXG4gICAgICAgICAgICAgIFtzZWxlY3Rpb25dPVwibGlzdC5zZWxlY3Rpb25cIlxuICAgICAgICAgICAgICBbaGFzUm93QWN0aW9uc109XCJsaXN0Lmhhc1Jvd0FjdGlvbnNcIlxuICAgICAgICAgICAgICBbYWN0aXZlRmlsdGVyc0NvdW50XT1cImxpc3QuYWN0aXZlRmlsdGVyc0NvdW50JCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgW3Jlb3JkZXJFbmFibGVkXT1cInJlb3JkZXJDb250cm9sbGVyLmVuYWJsZWQkIHwgYXN5bmNcIlxuICAgICAgICAgICAgICBbcmVvcmRlclBvc2l0aW9uXT1cInJlb3JkZXJDb250cm9sbGVyLnBvc2l0aW9uJCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgW3Jlb3JkZXJTdHJhdGVneV09XCJyZW9yZGVyQ29udHJvbGxlci5zdHJhdGVneSQgfCBhc3luY1wiPlxuICAgICAgICAgICAgPC90aGVhZD5cbiAgICAgICAgICB9XG4gICAgICAgICAgPHRib2R5XG4gICAgICAgICAgICBmcy1saXN0LWJvZHlcbiAgICAgICAgICAgIGZzTGlzdERyYWdnYWJsZUxpc3RcbiAgICAgICAgICAgIGNsYXNzPVwiZnMtbGlzdC1ib2R5XCJcbiAgICAgICAgICAgIHJvbGU9XCJyb3dncm91cFwiXG4gICAgICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiISEocmVvcmRlckNvbnRyb2xsZXIucmVvcmRlckRpc2FibGVkJCB8IGFzeW5jKVwiXG4gICAgICAgICAgICBbcm93c109XCJsaXN0RGF0YVwiXG4gICAgICAgICAgICBbcm93QWN0aW9uc1Jhd109XCJsaXN0LnJvd0FjdGlvbnNSYXdcIlxuICAgICAgICAgICAgW2dyb3VwQWN0aW9uc1Jhd109XCJsaXN0Lmdyb3VwQWN0aW9uc1Jhd1wiXG4gICAgICAgICAgICBbaGFzUm93QWN0aW9uc109XCJsaXN0Lmhhc1Jvd0FjdGlvbnNcIlxuICAgICAgICAgICAgW3Jvd0V2ZW50c109XCJsaXN0LnJvd0V2ZW50c1wiXG4gICAgICAgICAgICBbcm93Q2xhc3NdPVwibGlzdC5yb3dDbGFzc1wiXG4gICAgICAgICAgICBbY29sdW1uc109XCJsaXN0LmNvbHVtbnMudmlzaWJsZUNvbHVtbnMkIHwgYXN5bmNcIlxuICAgICAgICAgICAgW3Jlc3RvcmVNb2RlXT1cImxpc3QucmVzdG9yZU1vZGVcIlxuICAgICAgICAgICAgW3NlbGVjdGlvbl09XCJsaXN0LnNlbGVjdGlvblwiXG4gICAgICAgICAgICBbcm93UmVtb3ZlZF09XCJyb3dSZW1vdmVkXCJcbiAgICAgICAgICAgIFthY3RpdmVGaWx0ZXJzQ291bnRdPVwibGlzdC5hY3RpdmVGaWx0ZXJzQ291bnQkIHwgYXN5bmNcIlxuICAgICAgICAgICAgW3Jlb3JkZXJFbmFibGVkXT1cInJlb3JkZXJDb250cm9sbGVyLmVuYWJsZWQkIHwgYXN5bmNcIlxuICAgICAgICAgICAgW3Jlb3JkZXJQb3NpdGlvbl09XCJyZW9yZGVyQ29udHJvbGxlci5wb3NpdGlvbiQgfCBhc3luY1wiXG4gICAgICAgICAgICBbcmVvcmRlclN0cmF0ZWd5XT1cInJlb3JkZXJDb250cm9sbGVyLnN0cmF0ZWd5JCB8IGFzeW5jXCJcbiAgICAgICAgICAgIFtyZW9yZGVyTXVsdGlwbGVdPVwicmVvcmRlckNvbnRyb2xsZXIubXVsdGlwbGVcIj5cbiAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgIEBpZiAobGlzdC5jb2x1bW5zLmhhc0Zvb3Rlcikge1xuICAgICAgICAgICAgPHRmb290XG4gICAgICAgICAgICAgIGZzLWxpc3QtZm9vdGVyXG4gICAgICAgICAgICAgIGNsYXNzPVwiZnMtbGlzdC1mb290ZXJcIlxuICAgICAgICAgICAgICBbY29sdW1uc109XCJsaXN0LmNvbHVtbnMudmlzaWJsZUNvbHVtbnMkIHwgYXN5bmNcIlxuICAgICAgICAgICAgICBbc2VsZWN0aW9uXT1cImxpc3Quc2VsZWN0aW9uXCJcbiAgICAgICAgICAgICAgW2hhc1Jvd0FjdGlvbnNdPVwibGlzdC5oYXNSb3dBY3Rpb25zXCJcbiAgICAgICAgICAgICAgW2FjdGl2ZUZpbHRlcnNDb3VudF09XCJsaXN0LmFjdGl2ZUZpbHRlcnNDb3VudCQgfCBhc3luY1wiXG4gICAgICAgICAgICAgIFtyZW9yZGVyRW5hYmxlZF09XCJyZW9yZGVyQ29udHJvbGxlci5lbmFibGVkJCB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgW3Jlb3JkZXJQb3NpdGlvbl09XCJyZW9yZGVyQ29udHJvbGxlci5wb3NpdGlvbiQgfCBhc3luY1wiXG4gICAgICAgICAgICAgIFtyZW9yZGVyU3RyYXRlZ3ldPVwicmVvcmRlckNvbnRyb2xsZXIuc3RyYXRlZ3kkIHwgYXN5bmNcIj5cbiAgICAgICAgICAgIDwvdGZvb3Q+XG4gICAgICAgICAgfVxuICAgICAgICA8L3RhYmxlPlxuICAgICAgfVxuICAgICAgQGlmIChmaXJzdExvYWQpIHtcbiAgICAgICAgPGZzLWxpc3QtbG9hZGVyXG4gICAgICAgICAgW2NvbHVtbnNdPVwibGlzdC5jb2x1bW5zLmNvbHVtbnNcIlxuICAgICAgICAgIFtsb2FkZXJMaW5lc109XCJsb2FkZXJMaW5lc1wiPlxuICAgICAgICA8L2ZzLWxpc3QtbG9hZGVyPlxuICAgICAgfVxuICAgIDwvZGl2PlxuICAgIDxmcy1saXN0LXBhZ2luYXRpb25cbiAgICAgIGNsYXNzPVwiZnMtbGlzdC1wYWdpbmF0aW9uXCJcbiAgICAgIFtyb3dzXT1cImxpc3REYXRhXCJcbiAgICAgIFtwYWdpbmF0aW9uXT1cImxpc3QucGFnaW5nXCI+XG4gICAgPC9mcy1saXN0LXBhZ2luYXRpb24+XG4gICAgQGlmICghZmlyc3RMb2FkKSB7XG4gICAgICBAaWYgKGxpc3REYXRhLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJmcy1saXN0LW5vLXJlc3VsdHMtY29udGFpbmVyXCI+XG4gICAgICAgICAgQGlmIChsaXN0Lm5vUmVzdWx0cz8ubWVzc2FnZSAmJiAhbGlzdC5lbXB0eVN0YXRlRW5hYmxlZCkge1xuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBjbGFzcz1cImZzLWxpc3Qtbm8tcmVzdWx0c1wiPlxuICAgICAgICAgICAgICB7eyBsaXN0Lm5vUmVzdWx0cz8ubWVzc2FnZSB9fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiAobGlzdC5lbXB0eVN0YXRlRW5hYmxlZCkge1xuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImxpc3QuZW1wdHlTdGF0ZVRlbXBsYXRlXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgIH1cbiAgfVxuPC9uZy10ZW1wbGF0ZT4iXX0=
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Directive, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* Wrap list columns in `<ng-container fsListCellRowType [rowType]="anchor" #cr="fsListCellRowType">`.
|
|
5
|
+
* On each `fs-list-cell`, bind `[rowType]="cr.rowType"` so `ngTemplateContextGuard` reuses the same
|
|
6
|
+
* type without repeating `{} as YourRow` on every cell.
|
|
7
|
+
*/
|
|
8
|
+
export class FsListCellRowTypeScopeDirective {
|
|
9
|
+
rowType;
|
|
10
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsListCellRowTypeScopeDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
11
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.7", type: FsListCellRowTypeScopeDirective, isStandalone: true, selector: "[fsListCellRowType]", inputs: { rowType: "rowType" }, exportAs: ["fsListCellRowType"], ngImport: i0 });
|
|
12
|
+
}
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsListCellRowTypeScopeDirective, decorators: [{
|
|
14
|
+
type: Directive,
|
|
15
|
+
args: [{
|
|
16
|
+
selector: '[fsListCellRowType]',
|
|
17
|
+
standalone: true,
|
|
18
|
+
exportAs: 'fsListCellRowType',
|
|
19
|
+
}]
|
|
20
|
+
}], propDecorators: { rowType: [{
|
|
21
|
+
type: Input
|
|
22
|
+
}] } });
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC1yb3ctdHlwZS1zY29wZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2RpcmVjdGl2ZXMvY2VsbC9jZWxsLXJvdy10eXBlLXNjb3BlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFakQ7Ozs7R0FJRztBQU1ILE1BQU0sT0FBTywrQkFBK0I7SUFFMUIsT0FBTyxDQUFLO3VHQUZqQiwrQkFBK0I7MkZBQS9CLCtCQUErQjs7MkZBQS9CLCtCQUErQjtrQkFMM0MsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLG1CQUFtQjtpQkFDOUI7OEJBR2lCLE9BQU87c0JBQXRCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogV3JhcCBsaXN0IGNvbHVtbnMgaW4gYDxuZy1jb250YWluZXIgZnNMaXN0Q2VsbFJvd1R5cGUgW3Jvd1R5cGVdPVwiYW5jaG9yXCIgI2NyPVwiZnNMaXN0Q2VsbFJvd1R5cGVcIj5gLlxuICogT24gZWFjaCBgZnMtbGlzdC1jZWxsYCwgYmluZCBgW3Jvd1R5cGVdPVwiY3Iucm93VHlwZVwiYCBzbyBgbmdUZW1wbGF0ZUNvbnRleHRHdWFyZGAgcmV1c2VzIHRoZSBzYW1lXG4gKiB0eXBlIHdpdGhvdXQgcmVwZWF0aW5nIGB7fSBhcyBZb3VyUm93YCBvbiBldmVyeSBjZWxsLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZnNMaXN0Q2VsbFJvd1R5cGVdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgZXhwb3J0QXM6ICdmc0xpc3RDZWxsUm93VHlwZScsXG59KVxuZXhwb3J0IGNsYXNzIEZzTGlzdENlbGxSb3dUeXBlU2NvcGVEaXJlY3RpdmU8VCA9IHVua25vd24+IHtcblxuICBASW5wdXQoKSBwdWJsaWMgcm93VHlwZT86IFQ7XG59XG4iXX0=
|
|
@@ -4,17 +4,34 @@ export class FsListCellDirective {
|
|
|
4
4
|
colspan;
|
|
5
5
|
align;
|
|
6
6
|
className;
|
|
7
|
+
/**
|
|
8
|
+
* Typing anchor (e.g. `readonly anchor = {} as MyRow` then `[rowType]="anchor"`).
|
|
9
|
+
* The value is only used for template type inference; it can be an empty object cast.
|
|
10
|
+
*/
|
|
7
11
|
rowType;
|
|
12
|
+
/**
|
|
13
|
+
* Same as `rowType`, for `*fsListCell="anchor"` microsyntax (`*fsListCell` expands to `[fsListCell]="..."`).
|
|
14
|
+
* Pass a **component property** typed as `T` — not a type name (interfaces are not runtime values).
|
|
15
|
+
*/
|
|
16
|
+
// @Input('fsListCell')
|
|
17
|
+
// public set fsListCellAnchor(value: T | undefined) {
|
|
18
|
+
// this.rowType = value;
|
|
19
|
+
// }
|
|
20
|
+
/**
|
|
21
|
+
* Filled by `fs-list` from merged `[config]` when you omit `[rowType]` / `[fsListCell]` and `cellRowType` is unset.
|
|
22
|
+
* Optional: bind `[configTyping]="config"` for strictTemplates / IDE narrowing.
|
|
23
|
+
*/
|
|
24
|
+
configTyping;
|
|
8
25
|
static ngTemplateContextGuard(directive, context) {
|
|
9
26
|
return true;
|
|
10
27
|
}
|
|
11
28
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsListCellDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
12
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.7", type: FsListCellDirective, isStandalone: true, selector: "[fs-list-cell]", inputs: { colspan: "colspan", align: "align", className: ["class", "className"], rowType: "rowType" }, ngImport: i0 });
|
|
29
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.7", type: FsListCellDirective, isStandalone: true, selector: "[fs-list-cell],[fsListCell]", inputs: { colspan: "colspan", align: "align", className: ["class", "className"], rowType: ["fsListCell", "rowType"], configTyping: "configTyping" }, ngImport: i0 });
|
|
13
30
|
}
|
|
14
31
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsListCellDirective, decorators: [{
|
|
15
32
|
type: Directive,
|
|
16
33
|
args: [{
|
|
17
|
-
selector: '[fs-list-cell]',
|
|
34
|
+
selector: '[fs-list-cell],[fsListCell]',
|
|
18
35
|
standalone: true,
|
|
19
36
|
}]
|
|
20
37
|
}], propDecorators: { colspan: [{
|
|
@@ -25,6 +42,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
25
42
|
type: Input,
|
|
26
43
|
args: ['class']
|
|
27
44
|
}], rowType: [{
|
|
45
|
+
type: Input,
|
|
46
|
+
args: ['fsListCell']
|
|
47
|
+
}], configTyping: [{
|
|
28
48
|
type: Input
|
|
29
49
|
}] } });
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2RpcmVjdGl2ZXMvY2VsbC9jZWxsLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFTakQsTUFBTSxPQUFPLG1CQUFtQjtJQUVkLE9BQU8sQ0FBQztJQUNSLEtBQUssQ0FBUztJQUNQLFNBQVMsQ0FBb0I7SUFDcEQ7OztPQUdHO0lBQ3lCLE9BQU8sQ0FBSztJQUd4Qzs7O09BR0c7SUFDSCx1QkFBdUI7SUFDdkIsc0RBQXNEO0lBQ3RELDBCQUEwQjtJQUMxQixJQUFJO0lBRUo7OztPQUdHO0lBQ2EsWUFBWSxDQUFtQjtJQUV4QyxNQUFNLENBQUMsc0JBQXNCLENBQ2xDLFNBQWlDLEVBQ2pDLE9BQWdCO1FBV2hCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzt1R0F6Q1UsbUJBQW1COzJGQUFuQixtQkFBbUI7OzJGQUFuQixtQkFBbUI7a0JBSi9CLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDZCQUE2QjtvQkFDdkMsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOzhCQUdpQixPQUFPO3NCQUF0QixLQUFLO2dCQUNVLEtBQUs7c0JBQXBCLEtBQUs7Z0JBQ2lCLFNBQVM7c0JBQS9CLEtBQUs7dUJBQUMsT0FBTztnQkFLYyxPQUFPO3NCQUFsQyxLQUFLO3VCQUFDLFlBQVk7Z0JBZ0JILFlBQVk7c0JBQTNCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB0eXBlIHsgRnNMaXN0Q29uZmlnIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9saXN0Y29uZmlnLmludGVyZmFjZSc7XG5cblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2ZzLWxpc3QtY2VsbF0sW2ZzTGlzdENlbGxdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgRnNMaXN0Q2VsbERpcmVjdGl2ZTxUID0gYW55PiB7XG5cbiAgQElucHV0KCkgcHVibGljIGNvbHNwYW47XG4gIEBJbnB1dCgpIHB1YmxpYyBhbGlnbjogc3RyaW5nO1xuICBASW5wdXQoJ2NsYXNzJykgcHVibGljIGNsYXNzTmFtZTogc3RyaW5nIHwgc3RyaW5nW107XG4gIC8qKlxuICAgKiBUeXBpbmcgYW5jaG9yIChlLmcuIGByZWFkb25seSBhbmNob3IgPSB7fSBhcyBNeVJvd2AgdGhlbiBgW3Jvd1R5cGVdPVwiYW5jaG9yXCJgKS5cbiAgICogVGhlIHZhbHVlIGlzIG9ubHkgdXNlZCBmb3IgdGVtcGxhdGUgdHlwZSBpbmZlcmVuY2U7IGl0IGNhbiBiZSBhbiBlbXB0eSBvYmplY3QgY2FzdC5cbiAgICovXG4gIEBJbnB1dCgnZnNMaXN0Q2VsbCcpIHB1YmxpYyByb3dUeXBlPzogVDtcblxuXG4gIC8qKlxuICAgKiBTYW1lIGFzIGByb3dUeXBlYCwgZm9yIGAqZnNMaXN0Q2VsbD1cImFuY2hvclwiYCBtaWNyb3N5bnRheCAoYCpmc0xpc3RDZWxsYCBleHBhbmRzIHRvIGBbZnNMaXN0Q2VsbF09XCIuLi5cImApLlxuICAgKiBQYXNzIGEgKipjb21wb25lbnQgcHJvcGVydHkqKiB0eXBlZCBhcyBgVGAg4oCUIG5vdCBhIHR5cGUgbmFtZSAoaW50ZXJmYWNlcyBhcmUgbm90IHJ1bnRpbWUgdmFsdWVzKS5cbiAgICovXG4gIC8vIEBJbnB1dCgnZnNMaXN0Q2VsbCcpXG4gIC8vIHB1YmxpYyBzZXQgZnNMaXN0Q2VsbEFuY2hvcih2YWx1ZTogVCB8IHVuZGVmaW5lZCkge1xuICAvLyAgIHRoaXMucm93VHlwZSA9IHZhbHVlO1xuICAvLyB9XG5cbiAgLyoqXG4gICAqIEZpbGxlZCBieSBgZnMtbGlzdGAgZnJvbSBtZXJnZWQgYFtjb25maWddYCB3aGVuIHlvdSBvbWl0IGBbcm93VHlwZV1gIC8gYFtmc0xpc3RDZWxsXWAgYW5kIGBjZWxsUm93VHlwZWAgaXMgdW5zZXQuXG4gICAqIE9wdGlvbmFsOiBiaW5kIGBbY29uZmlnVHlwaW5nXT1cImNvbmZpZ1wiYCBmb3Igc3RyaWN0VGVtcGxhdGVzIC8gSURFIG5hcnJvd2luZy5cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBjb25maWdUeXBpbmc/OiBGc0xpc3RDb25maWc8VD47XG5cbiAgcHVibGljIHN0YXRpYyBuZ1RlbXBsYXRlQ29udGV4dEd1YXJkPFQ+KFxuICAgIGRpcmVjdGl2ZTogRnNMaXN0Q2VsbERpcmVjdGl2ZTxUPixcbiAgICBjb250ZXh0OiB1bmtub3duLFxuICApOiBjb250ZXh0IGlzIHtcbiAgICAkaW1wbGljaXQ6IFQsXG4gICAgcm93OiBULFxuICAgIGluZGV4OiBudW1iZXIsXG4gICAgZ3JvdXA6IGFueSxcbiAgICBncm91cFJvdzogYW55LFxuICAgIGdyb3VwSW5kZXg6IG51bWJlcixcbiAgICBncm91cENoaWxkcmVuOiBUW10sXG4gICAgZXhwYW5kZWQ6IGJvb2xlYW4sXG4gIH0ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import { FsListCellDirective } from './cell.directive';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* Extend with your own `selector` and row type `T` for strict template typing of `let-row="row"`
|
|
6
|
+
* without repeating `[rowType]` on every `[fs-list-cell]` (subclasses still match column cell queries).
|
|
7
|
+
*
|
|
8
|
+
* For IDE / strictTemplates narrowing, **redeclare** `ngTemplateContextGuard` on the concrete class
|
|
9
|
+
* with `directive: YourConcreteDirective` (inherited static guards are often not applied by the
|
|
10
|
+
* language service). TypeScript may report an invalid override vs `FsListCellDirective`; use
|
|
11
|
+
* `@ts-expect-error` on the class line above `export class` when required.
|
|
12
|
+
*/
|
|
13
|
+
export class FsTypedListCellDirective extends FsListCellDirective {
|
|
14
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsTypedListCellDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
15
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.7", type: FsTypedListCellDirective, usesInheritance: true, ngImport: i0 });
|
|
16
|
+
}
|
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsTypedListCellDirective, decorators: [{
|
|
18
|
+
type: Directive
|
|
19
|
+
}] });
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWQtY2VsbC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2RpcmVjdGl2ZXMvY2VsbC90eXBlZC1jZWxsLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQUV2RDs7Ozs7Ozs7R0FRRztBQUVILE1BQU0sT0FBZ0Isd0JBQWtDLFNBQVEsbUJBQXNCO3VHQUFoRSx3QkFBd0I7MkZBQXhCLHdCQUF3Qjs7MkZBQXhCLHdCQUF3QjtrQkFEN0MsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBGc0xpc3RDZWxsRGlyZWN0aXZlIH0gZnJvbSAnLi9jZWxsLmRpcmVjdGl2ZSc7XG5cbi8qKlxuICogRXh0ZW5kIHdpdGggeW91ciBvd24gYHNlbGVjdG9yYCBhbmQgcm93IHR5cGUgYFRgIGZvciBzdHJpY3QgdGVtcGxhdGUgdHlwaW5nIG9mIGBsZXQtcm93PVwicm93XCJgXG4gKiB3aXRob3V0IHJlcGVhdGluZyBgW3Jvd1R5cGVdYCBvbiBldmVyeSBgW2ZzLWxpc3QtY2VsbF1gIChzdWJjbGFzc2VzIHN0aWxsIG1hdGNoIGNvbHVtbiBjZWxsIHF1ZXJpZXMpLlxuICpcbiAqIEZvciBJREUgLyBzdHJpY3RUZW1wbGF0ZXMgbmFycm93aW5nLCAqKnJlZGVjbGFyZSoqIGBuZ1RlbXBsYXRlQ29udGV4dEd1YXJkYCBvbiB0aGUgY29uY3JldGUgY2xhc3NcbiAqIHdpdGggYGRpcmVjdGl2ZTogWW91ckNvbmNyZXRlRGlyZWN0aXZlYCAoaW5oZXJpdGVkIHN0YXRpYyBndWFyZHMgYXJlIG9mdGVuIG5vdCBhcHBsaWVkIGJ5IHRoZVxuICogbGFuZ3VhZ2Ugc2VydmljZSkuIFR5cGVTY3JpcHQgbWF5IHJlcG9ydCBhbiBpbnZhbGlkIG92ZXJyaWRlIHZzIGBGc0xpc3RDZWxsRGlyZWN0aXZlYDsgdXNlXG4gKiBgQHRzLWV4cGVjdC1lcnJvcmAgb24gdGhlIGNsYXNzIGxpbmUgYWJvdmUgYGV4cG9ydCBjbGFzc2Agd2hlbiByZXF1aXJlZC5cbiAqL1xuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRnNUeXBlZExpc3RDZWxsRGlyZWN0aXZlPFQgPSBhbnk+IGV4dGVuZHMgRnNMaXN0Q2VsbERpcmVjdGl2ZTxUPiB7fVxuIl19
|
|
@@ -17,6 +17,7 @@ import { FsPaginationComponent } from './components/pagination/pagination.compon
|
|
|
17
17
|
import { FsStatusComponent } from './components/status/status.component';
|
|
18
18
|
import { FsListHeadingDirective } from './directives';
|
|
19
19
|
import { FsListCellDirective } from './directives/cell/cell.directive';
|
|
20
|
+
import { FsListCellRowTypeScopeDirective } from './directives/cell/cell-row-type-scope.directive';
|
|
20
21
|
import { FsListColumnDirective } from './directives/column/column.directive';
|
|
21
22
|
import { FsListContentInitDirective } from './directives/content-init/content-init.directive';
|
|
22
23
|
import { FsListContentDirective } from './directives/content/content.directive';
|
|
@@ -58,6 +59,7 @@ export class FsListModule {
|
|
|
58
59
|
FsPaginationComponent,
|
|
59
60
|
FsListColumnDirective,
|
|
60
61
|
FsListCellDirective,
|
|
62
|
+
FsListCellRowTypeScopeDirective,
|
|
61
63
|
FsListHeaderDirective,
|
|
62
64
|
FsListFooterDirective,
|
|
63
65
|
FsListGroupHeaderDirective,
|
|
@@ -76,6 +78,7 @@ export class FsListModule {
|
|
|
76
78
|
FsListLoaderComponent,
|
|
77
79
|
FsListColumnDirective,
|
|
78
80
|
FsListCellDirective,
|
|
81
|
+
FsListCellRowTypeScopeDirective,
|
|
79
82
|
FsListHeaderDirective,
|
|
80
83
|
FsListFooterDirective,
|
|
81
84
|
FsListGroupHeaderDirective,
|
|
@@ -118,6 +121,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
118
121
|
FsPaginationComponent,
|
|
119
122
|
FsListColumnDirective,
|
|
120
123
|
FsListCellDirective,
|
|
124
|
+
FsListCellRowTypeScopeDirective,
|
|
121
125
|
FsListHeaderDirective,
|
|
122
126
|
FsListFooterDirective,
|
|
123
127
|
FsListGroupHeaderDirective,
|
|
@@ -139,6 +143,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
139
143
|
FsListLoaderComponent,
|
|
140
144
|
FsListColumnDirective,
|
|
141
145
|
FsListCellDirective,
|
|
146
|
+
FsListCellRowTypeScopeDirective,
|
|
142
147
|
FsListHeaderDirective,
|
|
143
148
|
FsListFooterDirective,
|
|
144
149
|
FsListGroupHeaderDirective,
|
|
@@ -151,4 +156,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
151
156
|
],
|
|
152
157
|
}]
|
|
153
158
|
}] });
|
|
154
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnMtbGlzdC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBwL2ZzLWxpc3QubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzlELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUN4RixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDNUUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDekcsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDbkcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtFQUFrRSxDQUFDO0FBQ3pHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDN0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDckYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDekUsT0FBTyxFQUFFLHNCQUFz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QUNyQixxQkFBcUI7d0JBQ3JCLG1CQUFtQjt3QkFDbkIscUJBQXFCO3dCQUNyQixxQkFBcUI7d0JBQ3JCLDBCQUEwQjt3QkFDMUIsMEJBQTBCO3dCQUMxQixpQ0FBaUM7d0JBQ2pDLDRCQUE0Qjt3QkFDNUIsMkJBQTJCO3dCQUMzQix5QkFBeUI7d0JBQ3pCLHNCQUFzQjt3QkFDdEIsMEJBQTBCO3dCQUMxQixzQkFBc0I7d0JBQ3RCLDRCQUE0Qjt3QkFDNUIsZUFBZTtxQkFDaEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLGVBQWU7d0JBQ2YsY0FBYzt3QkFDZCxlQUFlO3dCQUNmLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQixtQkFBbUI7d0JBQ25CLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQiwwQkFBMEI7d0JBQzFCLDBCQUEwQjt3QkFDMUIsaUNBQWlDO3dCQUNqQyx5QkFBeUI7d0JBQ3pCLHNCQUFzQjt3QkFDdEIsc0JBQXNCO3dCQUN0Qiw0QkFBNEI7cUJBQzdCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuXG5pbXBvcnQgeyBGc0JvZHlDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYm9keS9ib2R5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc1Jvd0FjdGlvbnNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYm9keS9yb3cvYWN0aW9ucy9hY3Rpb25zLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0NlbGxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYm9keS9yb3cvY2VsbC9jZWxsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc1Jvd0lubGluZUFjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9ib2R5L3Jvdy9pbmxpbmUtYWN0aW9uL2lubGluZS1hY3Rpb24uY29tcG9uZW50JztcbmltcG9ydCB7IEZzUm93TWVudUFjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9ib2R5L3Jvdy9tZW51LWFjdGlvbi9tZW51LWFjdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNSb3dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYm9keS9yb3cvcm93LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDdXN0b21pemVDb2xzRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2N1c3RvbWl6ZS1jb2xzL2N1c3RvbWl6ZS1jb2xzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0Zvb3RlckNlbGxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZm9vdGVyL2Zvb3Rlci1yb3cvZm9vdGVyLWNlbGwvZm9vdGVyLWNlbGwuY29tcG9uZW50JztcbmltcG9ydCB7IEZzRm9vdGVyUm93Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Zvb3Rlci9mb290ZXItcm93L2Zvb3Rlci1yb3cuY29tcG9uZW50JztcbmltcG9ydCB7IEZzRm9vdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Zvb3Rlci9mb290ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEZzSGVhZENlbGxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvaGVhZC9oZWFkLWNlbGwvaGVhZC1jZWxsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0hlYWRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvaGVhZC9oZWFkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0xpc3RDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbGlzdC9saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0xpc3RMb2FkZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbG9hZGVyL2xvYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNQYWdpbmF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNTdGF0dXNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc3RhdHVzL3N0YXR1cy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNMaXN0SGVhZGluZ0RpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBGc0xpc3RDZWxsRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2NlbGwvY2VsbC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNMaXN0Q29sdW1uRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2NvbHVtbi9jb2x1bW4uZGlyZWN0aXZlJztcbmltcG9ydCB7IEZzTGlzdENvbnRlbnRJbml0RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2NvbnRlbnQtaW5pdC9jb250ZW50LWluaXQuZGlyZWN0aXZlJztcbmltcG9ydCB7IEZzTGlzdENvbnRlbnREaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvY29udGVudC9jb250ZW50LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0xpc3REcmFnZ2FibGVMaXN0RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2RyYWdnYWJsZS1saXN0L2RyYWdnYWJsZS1saXN0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0xpc3REcmFnZ2FibGVSb3dEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZHJhZ2dhYmxlLXJvdy9kcmFnZ2FibGUtcm93LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0xpc3RFbXB0eVN0YXRlRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2VtcHR5LXN0YXRlL2VtcHR5LXN0YXRlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0xpc3RGb290ZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZm9vdGVyL2Zvb3Rlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNMaXN0R3JvdXBFeHBhbmRUcmlnZ2VyRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2dyb3VwLWV4cGFuZC10cmlnZ2VyL2dyb3VwLWV4cGFuZC10cmlnZ2VyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0xpc3RHcm91cEZvb3RlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9ncm91cC1mb290ZXIvZ3JvdXAtZm9vdGVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0xpc3RHcm91cEhlYWRlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9ncm91cC1oZWFkZXIvZ3JvdXAtaGVhZGVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0xpc3RIZWFkZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvaGVhZGVyL2hlYWRlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRlNfTElTVF9DT05GSUcgfSBmcm9tICcuL2ZzLWxpc3QucHJvdmlkZXJzJztcbmltcG9ydCB7IEZzTGlzdENvbmZpZyB9IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBBY3Rpb25MYWJlbFBpcGUgfSBmcm9tICcuL3BpcGVzJztcblxuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgRnNMaXN0Q29tcG9uZW50LFxuICAgIEZzUm93Q29tcG9uZW50LFxuICAgIEZzUm93QWN0aW9uc0NvbXBvbmVudCxcbiAgICBGc1Jvd0lubGluZUFjdGlvbkNvbXBvbmVudCxcbiAgICBGc1Jvd01lbnVBY3Rpb25Db21wb25lbnQsXG4gICAgRnNDZWxsQ29tcG9uZW50LFxuICAgIEZzRm9vdGVyUm93Q29tcG9uZW50LFxuICAgIEZzRm9vdGVyQ2VsbENvbXBvbmVudCxcbiAgICBGc1N0YXR1c0NvbXBvbmVudCxcbiAgICBGc0xpc3RMb2FkZXJDb21wb25lbnQsXG4gICAgRnNIZWFkQ29tcG9uZW50LFxuICAgIEZzSGVhZENlbGxDb21wb25lbnQsXG4gICAgRnNCb2R5Q29tcG9uZW50LFxuICAgIEZzRm9vdGVyQ29tcG9uZW50LFxuICAgIEZzUGFnaW5hdGlvbkNvbXBvbmVudCxcbiAgICBGc0xpc3RDb2x1bW5EaXJlY3RpdmUsXG4gICAgRnNMaXN0Q2VsbERpcmVjdGl2ZSxcbiAgICBGc0xpc3RIZWFkZXJEaXJlY3RpdmUsXG4gICAgRnNMaXN0Rm9vdGVyRGlyZWN0aXZlLFxuICAgIEZzTGlzdEdyb3VwSGVhZGVyRGlyZWN0aXZlLFxuICAgIEZzTGlzdEdyb3VwRm9vdGVyRGlyZWN0aXZlLFxuICAgIEZzTGlzdEdyb3VwRXhwYW5kVHJpZ2dlckRpcmVjdGl2ZSxcbiAgICBGc0xpc3REcmFnZ2FibGVMaXN0RGlyZWN0aXZlLFxuICAgIEZzTGlzdERyYWdnYWJsZVJvd0RpcmVjdGl2ZSxcbiAgICBGc0xpc3RFbXB0eVN0YXRlRGlyZWN0aXZlLFxuICAgIEZzTGlzdENvbnRlbnREaXJlY3RpdmUsXG4gICAgRnNMaXN0Q29udGVudEluaXREaXJlY3RpdmUsXG4gICAgRnNMaXN0SGVhZGluZ0RpcmVjdGl2ZSxcbiAgICBDdXN0b21pemVDb2xzRGlhbG9nQ29tcG9uZW50LFxuICAgIEFjdGlvbkxhYmVsUGlwZSxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEZzTGlzdENvbXBvbmVudCxcbiAgICBGc1Jvd0NvbXBvbmVudCxcbiAgICBGc0NlbGxDb21wb25lbnQsXG4gICAgRnNMaXN0TG9hZGVyQ29tcG9uZW50LFxuICAgIEZzTGlzdENvbHVtbkRpcmVjdGl2ZSxcbiAgICBGc0xpc3RDZWxsRGlyZWN0aXZlLFxuICAgIEZzTGlzdEhlYWRlckRpcmVjdGl2ZSxcbiAgICBGc0xpc3RGb290ZXJEaXJlY3RpdmUsXG4gICAgRnNMaXN0R3JvdXBIZWFkZXJEaXJlY3RpdmUsXG4gICAgRnNMaXN0R3JvdXBGb290ZXJEaXJlY3RpdmUsXG4gICAgRnNMaXN0R3JvdXBFeHBhbmRUcmlnZ2VyRGlyZWN0aXZlLFxuICAgIEZzTGlzdEVtcHR5U3RhdGVEaXJlY3RpdmUsXG4gICAgRnNMaXN0Q29udGVudERpcmVjdGl2ZSxcbiAgICBGc0xpc3RIZWFkaW5nRGlyZWN0aXZlLFxuICAgIEZzTGlzdERyYWdnYWJsZUxpc3REaXJlY3RpdmUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZzTGlzdE1vZHVsZSB7XG4gIHB1YmxpYyBzdGF0aWMgZm9yUm9vdChjb25maWc6IEZzTGlzdENvbmZpZyA9IHt9KTogTW9kdWxlV2l0aFByb3ZpZGVyczxGc0xpc3RNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IEZzTGlzdE1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7IHByb3ZpZGU6IEZTX0xJU1RfQ09ORklHLCB1c2VWYWx1ZTogY29uZmlnIH0sXG4gICAgICBdLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
|
|
159
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnMtbGlzdC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBwL2ZzLWxpc3QubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzlELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUN4RixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDNUUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDekcsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDbkcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtFQUFrRSxDQUFDO0FBQ3pHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDN0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDckYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDekUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3RELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ3BHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLGtFQUFrRSxDQUFDO0FBQ3JILE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sU0FBUyxDQUFDOztBQXdEMUMsTUFBTSxPQUFPLFlBQVk7SUFDaEIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUF1QixFQUFFO1FBQzdDLE9BQU87WUFDTCxRQUFRLEVBQUUsWUFBWTtZQUN0QixTQUFTLEVBQUU7Z0JBQ1QsRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUU7YUFDOUM7U0FDRixDQUFDO0lBQ0osQ0FBQzt1R0FSVSxZQUFZO3dHQUFaLFlBQVksWUFuRHJCLGVBQWU7WUFDZixjQUFjO1lBQ2QscUJBQXFCO1lBQ3JCLDBCQUEwQjtZQUMxQix3QkFBd0I7WUFDeEIsZUFBZTtZQUNmLG9CQUFvQjtZQUNwQixxQkFBcUI7WUFDckIsaUJBQWlCO1lBQ2pCLHFCQUFxQjtZQUNyQixlQUFlO1lBQ2YsbUJBQW1CO1lBQ25CLGVBQWU7WUFDZixpQkFBaUI7WUFDakIscUJBQXFCO1lBQ3JCLHFCQUFxQjtZQUNyQixtQkFBbUI7WUFDbkIsK0JBQStCO1lBQy9CLHFCQUFxQjtZQUNyQixxQkFBcUI7WUFDckIsMEJBQTBCO1lBQzFCLDBCQUEwQjtZQUMxQixpQ0FBaUM7WUFDakMsNEJBQTRCO1lBQzVCLDJCQUEyQjtZQUMzQix5QkFBeUI7WUFDekIsc0JBQXNCO1lBQ3RCLDBCQUEwQjtZQUMxQixzQkFBc0I7WUFDdEIsNEJBQTRCO1lBQzVCLGVBQWUsYUFHZixlQUFlO1lBQ2YsY0FBYztZQUNkLGVBQWU7WUFDZixxQkFBcUI7WUFDckIscUJBQXFCO1lBQ3JCLG1CQUFtQjtZQUNuQiwrQkFBK0I7WUFDL0IscUJBQXFCO1lBQ3JCLHFCQUFxQjtZQUNyQiwwQkFBMEI7WUFDMUIsMEJBQTBCO1lBQzFCLGlDQUFpQztZQUNqQyx5QkFBeUI7WUFDekIsc0JBQXNCO1lBQ3RCLHNCQUFzQjtZQUN0Qiw0QkFBNEI7d0dBR25CLFlBQVksWUFuRHJCLGVBQWU7WUFDZixjQUFjO1lBQ2QscUJBQXFCO1lBQ3JCLDBCQUEwQjtZQUMxQix3QkFBd0I7WUFJeEIsaUJBQWlCO1lBRWpCLGVBQWU7WUFDZixtQkFBbUI7WUFDbkIsZUFBZTtZQUVmLHFCQUFxQjtZQWVyQiw0QkFBNEI7OzJGQXNCbkIsWUFBWTtrQkFyRHhCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLGVBQWU7d0JBQ2YsY0FBYzt3QkFDZCxxQkFBcUI7d0JBQ3JCLDBCQUEwQjt3QkFDMUIsd0JBQXdCO3dCQUN4QixlQUFlO3dCQUNmLG9CQUFvQjt3QkFDcEIscUJBQXFCO3dCQUNyQixpQkFBaUI7d0JBQ2pCLHFCQUFxQjt3QkFDckIsZUFBZTt3QkFDZixtQkFBbUI7d0JBQ25CLGVBQWU7d0JBQ2YsaUJBQWlCO3dCQUNqQixxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIsbUJBQW1CO3dCQUNuQiwrQkFBK0I7d0JBQy9CLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQiwwQkFBMEI7d0JBQzFCLDBCQUEwQjt3QkFDMUIsaUNBQWlDO3dCQUNqQyw0QkFBNEI7d0JBQzVCLDJCQUEyQjt3QkFDM0IseUJBQXlCO3dCQUN6QixzQkFBc0I7d0JBQ3RCLDBCQUEwQjt3QkFDMUIsc0JBQXNCO3dCQUN0Qiw0QkFBNEI7d0JBQzVCLGVBQWU7cUJBQ2hCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxlQUFlO3dCQUNmLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIsbUJBQW1CO3dCQUNuQiwrQkFBK0I7d0JBQy9CLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQiwwQkFBMEI7d0JBQzFCLDBCQUEwQjt3QkFDMUIsaUNBQWlDO3dCQUNqQyx5QkFBeUI7d0JBQ3pCLHNCQUFzQjt3QkFDdEIsc0JBQXNCO3dCQUN0Qiw0QkFBNEI7cUJBQzdCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuXG5pbXBvcnQgeyBGc0JvZHlDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYm9keS9ib2R5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc1Jvd0FjdGlvbnNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYm9keS9yb3cvYWN0aW9ucy9hY3Rpb25zLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0NlbGxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYm9keS9yb3cvY2VsbC9jZWxsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc1Jvd0lubGluZUFjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9ib2R5L3Jvdy9pbmxpbmUtYWN0aW9uL2lubGluZS1hY3Rpb24uY29tcG9uZW50JztcbmltcG9ydCB7IEZzUm93TWVudUFjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9ib2R5L3Jvdy9tZW51LWFjdGlvbi9tZW51LWFjdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNSb3dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYm9keS9yb3cvcm93LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDdXN0b21pemVDb2xzRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2N1c3RvbWl6ZS1jb2xzL2N1c3RvbWl6ZS1jb2xzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0Zvb3RlckNlbGxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZm9vdGVyL2Zvb3Rlci1yb3cvZm9vdGVyLWNlbGwvZm9vdGVyLWNlbGwuY29tcG9uZW50JztcbmltcG9ydCB7IEZzRm9vdGVyUm93Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Zvb3Rlci9mb290ZXItcm93L2Zvb3Rlci1yb3cuY29tcG9uZW50JztcbmltcG9ydCB7IEZzRm9vdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Zvb3Rlci9mb290ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEZzSGVhZENlbGxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvaGVhZC9oZWFkLWNlbGwvaGVhZC1jZWxsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0hlYWRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvaGVhZC9oZWFkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0xpc3RDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbGlzdC9saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGc0xpc3RMb2FkZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbG9hZGVyL2xvYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNQYWdpbmF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNTdGF0dXNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc3RhdHVzL3N0YXR1cy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNMaXN0SGVhZGluZ0RpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBGc0xpc3RDZWxsRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2NlbGwvY2VsbC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNMaXN0Q2VsbFJvd1R5cGVTY29wZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9jZWxsL2NlbGwtcm93LXR5cGUtc2NvcGUuZGlyZWN0aXZlJztcbmltcG9ydCB7IEZzTGlzdENvbHVtbkRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9jb2x1bW4vY29sdW1uLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0xpc3RDb250ZW50SW5pdERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9jb250ZW50LWluaXQvY29udGVudC1pbml0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGc0xpc3RDb250ZW50RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2NvbnRlbnQvY29udGVudC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNMaXN0RHJhZ2dhYmxlTGlzdERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9kcmFnZ2FibGUtbGlzdC9kcmFnZ2FibGUtbGlzdC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNMaXN0RHJhZ2dhYmxlUm93RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2RyYWdnYWJsZS1yb3cvZHJhZ2dhYmxlLXJvdy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNMaXN0RW1wdHlTdGF0ZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9lbXB0eS1zdGF0ZS9lbXB0eS1zdGF0ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNMaXN0Rm9vdGVyRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2Zvb3Rlci9mb290ZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IEZzTGlzdEdyb3VwRXhwYW5kVHJpZ2dlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9ncm91cC1leHBhbmQtdHJpZ2dlci9ncm91cC1leHBhbmQtdHJpZ2dlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNMaXN0R3JvdXBGb290ZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZ3JvdXAtZm9vdGVyL2dyb3VwLWZvb3Rlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNMaXN0R3JvdXBIZWFkZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZ3JvdXAtaGVhZGVyL2dyb3VwLWhlYWRlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRnNMaXN0SGVhZGVyRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2hlYWRlci9oZWFkZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IEZTX0xJU1RfQ09ORklHIH0gZnJvbSAnLi9mcy1saXN0LnByb3ZpZGVycyc7XG5pbXBvcnQgeyBGc0xpc3RDb25maWcgfSBmcm9tICcuL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgQWN0aW9uTGFiZWxQaXBlIH0gZnJvbSAnLi9waXBlcyc7XG5cblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIEZzTGlzdENvbXBvbmVudCxcbiAgICBGc1Jvd0NvbXBvbmVudCxcbiAgICBGc1Jvd0FjdGlvbnNDb21wb25lbnQsXG4gICAgRnNSb3dJbmxpbmVBY3Rpb25Db21wb25lbnQsXG4gICAgRnNSb3dNZW51QWN0aW9uQ29tcG9uZW50LFxuICAgIEZzQ2VsbENvbXBvbmVudCxcbiAgICBGc0Zvb3RlclJvd0NvbXBvbmVudCxcbiAgICBGc0Zvb3RlckNlbGxDb21wb25lbnQsXG4gICAgRnNTdGF0dXNDb21wb25lbnQsXG4gICAgRnNMaXN0TG9hZGVyQ29tcG9uZW50LFxuICAgIEZzSGVhZENvbXBvbmVudCxcbiAgICBGc0hlYWRDZWxsQ29tcG9uZW50LFxuICAgIEZzQm9keUNvbXBvbmVudCxcbiAgICBGc0Zvb3RlckNvbXBvbmVudCxcbiAgICBGc1BhZ2luYXRpb25Db21wb25lbnQsXG4gICAgRnNMaXN0Q29sdW1uRGlyZWN0aXZlLFxuICAgIEZzTGlzdENlbGxEaXJlY3RpdmUsXG4gICAgRnNMaXN0Q2VsbFJvd1R5cGVTY29wZURpcmVjdGl2ZSxcbiAgICBGc0xpc3RIZWFkZXJEaXJlY3RpdmUsXG4gICAgRnNMaXN0Rm9vdGVyRGlyZWN0aXZlLFxuICAgIEZzTGlzdEdyb3VwSGVhZGVyRGlyZWN0aXZlLFxuICAgIEZzTGlzdEdyb3VwRm9vdGVyRGlyZWN0aXZlLFxuICAgIEZzTGlzdEdyb3VwRXhwYW5kVHJpZ2dlckRpcmVjdGl2ZSxcbiAgICBGc0xpc3REcmFnZ2FibGVMaXN0RGlyZWN0aXZlLFxuICAgIEZzTGlzdERyYWdnYWJsZVJvd0RpcmVjdGl2ZSxcbiAgICBGc0xpc3RFbXB0eVN0YXRlRGlyZWN0aXZlLFxuICAgIEZzTGlzdENvbnRlbnREaXJlY3RpdmUsXG4gICAgRnNMaXN0Q29udGVudEluaXREaXJlY3RpdmUsXG4gICAgRnNMaXN0SGVhZGluZ0RpcmVjdGl2ZSxcbiAgICBDdXN0b21pemVDb2xzRGlhbG9nQ29tcG9uZW50LFxuICAgIEFjdGlvbkxhYmVsUGlwZSxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEZzTGlzdENvbXBvbmVudCxcbiAgICBGc1Jvd0NvbXBvbmVudCxcbiAgICBGc0NlbGxDb21wb25lbnQsXG4gICAgRnNMaXN0TG9hZGVyQ29tcG9uZW50LFxuICAgIEZzTGlzdENvbHVtbkRpcmVjdGl2ZSxcbiAgICBGc0xpc3RDZWxsRGlyZWN0aXZlLFxuICAgIEZzTGlzdENlbGxSb3dUeXBlU2NvcGVEaXJlY3RpdmUsXG4gICAgRnNMaXN0SGVhZGVyRGlyZWN0aXZlLFxuICAgIEZzTGlzdEZvb3RlckRpcmVjdGl2ZSxcbiAgICBGc0xpc3RHcm91cEhlYWRlckRpcmVjdGl2ZSxcbiAgICBGc0xpc3RHcm91cEZvb3RlckRpcmVjdGl2ZSxcbiAgICBGc0xpc3RHcm91cEV4cGFuZFRyaWdnZXJEaXJlY3RpdmUsXG4gICAgRnNMaXN0RW1wdHlTdGF0ZURpcmVjdGl2ZSxcbiAgICBGc0xpc3RDb250ZW50RGlyZWN0aXZlLFxuICAgIEZzTGlzdEhlYWRpbmdEaXJlY3RpdmUsXG4gICAgRnNMaXN0RHJhZ2dhYmxlTGlzdERpcmVjdGl2ZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRnNMaXN0TW9kdWxlIHtcbiAgcHVibGljIHN0YXRpYyBmb3JSb290KGNvbmZpZzogRnNMaXN0Q29uZmlnID0ge30pOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEZzTGlzdE1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogRnNMaXN0TW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogRlNfTElTVF9DT05GSUcsIHVzZVZhbHVlOiBjb25maWcgfSxcbiAgICAgIF0sXG4gICAgfTtcbiAgfVxufVxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdGNvbmZpZy5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBwL2ludGVyZmFjZXMvbGlzdGNvbmZpZy5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZzRmlsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2ZpbGUnO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRm4sXG4gIEZzRmlsdGVyQWN0aW9uLFxuICBGc0ZpbHRlckF1dG9SZWxvYWQsXG4gIElGaWx0ZXJDb25maWdEYXRlSXRlbSxcbiAgSUZpbHRlckNvbmZpZ0l0ZW0sXG4gIElGaWx0ZXJTYXZlZEZpbHRlcnNDb25maWcsXG59IGZyb20gJ0BmaXJlc3RpdGNoL2ZpbHRlcic7XG5pbXBvcnQge1xuICBGc1NlbGVjdGlvbkFjdGlvblNlbGVjdGVkLFxuICBGc1NlbGVjdGlvbkRpYWxvZ0NvbmZpZ0FjdGlvbixcbiAgU2VsZWN0aW9uUmVmLFxufSBmcm9tICdAZmlyZXN0aXRjaC9zZWxlY3Rpb24nO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFJlb3JkZXJQb3NpdGlvbiB9IGZyb20gJy4uL2NsYXNzZXMvcmVvcmRlci1jb250cm9sbGVyJztcbmltcG9ydCB7IEFjdGlvblR5cGUgfSBmcm9tICcuLi9lbnVtcy9hY3Rpb24tdHlwZS5lbnVtJztcbmltcG9ydCB7IFBhZ2luYXRpb25TdHJhdGVneSB9IGZyb20gJy4uL2VudW1zL3BhZ2luYXRpb24tc3RyYXRlZ3kuZW51bSc7XG5pbXBvcnQgeyBSb3dUeXBlIH0gZnJvbSAnLi4vZW51bXMvcm93LXR5cGUuZW51bSc7XG5pbXBvcnQgeyBGc0xpc3RTdGF0ZSB9IGZyb20gJy4uL2VudW1zL3N0YXRlLmVudW0nO1xuXG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNQYWdpbmcge1xuICBsaW1pdHM/OiBudW1iZXJbXTtcbiAgbGltaXQ/OiBudW1iZXI7XG4gIHBhZ2U/OiBudW1iZXI7XG4gIHBhZ2VzPzogbnVtYmVyO1xuICByZWNvcmRzPzogbnVtYmVyO1xuICBzdHJhdGVneT86IFBhZ2luYXRpb25TdHJhdGVneTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RDb25maWcge1xuICBoZWFkaW5nPzogc3RyaW5nO1xuICB0cmFja0J5Pzogc3RyaW5nO1xuICBzdWJoZWFkaW5nPzogc3RyaW5nO1xuICBzdGF0dXM/OiBib29sZWFuO1xuICByb3dIb3ZlckhpZ2hsaWdodD86IGJvb2xlYW47XG4gIGNoaXBzPzogYm9vbGVhbjtcbiAgY29sdW1uPzogRnNMaXN0Q29sdW1uQ29uZmlnO1xuICBhdXRvRm9jdXM/OiBib29sZWFuO1xuICBxdWVyeVBhcmFtPzogYm9vbGVhbjtcbiAgcGFnaW5nPzogRnNQYWdpbmcgfCBmYWxzZTtcbiAgbG9hZE1vcmU/OiBGc0xpc3RMb2FkTW9yZUNvbmZpZyB8IGJvb2xlYW47XG4gIGNvbHVtbkRlZmF1bHRzPzogYW55O1xuICBmaWx0ZXJzPzogKElGaWx0ZXJDb25maWdJdGVtIHwgSUZpbHRlckNvbmZpZ0RhdGVJdGVtKVtdO1xuICBzYXZlZEZpbHRlcnM/OiBJRmlsdGVyU2F2ZWRGaWx0ZXJzQ29uZmlnO1xuICBwZXJzaXN0PzogRnNMaXN0UGVyc2l0YW5jZTtcbiAgcm93QWN0aW9ucz86IChGc0xpc3RSb3dBY3Rpb25Hcm91cCB8IEZzTGlzdFJvd0FjdGlvbilbXTtcbiAgcm93QWN0aW9uc0hvdmVyPzogYm9vbGVhbjtcbiAgcm93Q2xhc3M/OiAocm93OiBhbnksIG9wdGlvbnM/OiBGc0xpc3RSb3dDbGFzc09wdGlvbnMpID0+IHN0cmluZztcbiAgcm93SG92ZXI/OiBib29sZWFuO1xuICBhY3Rpb25zPzogRnNMaXN0QWN0aW9uW107XG4gIGZldGNoPzogRnNMaXN0RmV0Y2hGbjtcbiAgYWZ0ZXJGZXRjaD86IEZzTGlzdEFmdGVyRmV0Y2hGbjtcbiAgYmVmb3JlRmV0Y2g/OiBGc0xpc3RCZWZvcmVGZXRjaEZuO1xuICBhZnRlckNvbnRlbnRJbml0PzogRnNMaXN0QWZ0ZXJDb250ZW50SW5pdEZuO1xuICBhZnRlckluaXQ/OiBGc0xpc3RBZnRlckluaXRGbjtcbiAgc2VsZWN0aW9uPzogRnNMaXN0U2VsZWN0aW9uQ29uZmlnO1xuICBpbml0aWFsRmV0Y2g/OiBib29sZWFuO1xuICByb3dFdmVudHM/OiB7IFtuYW1lOiBzdHJpbmddOiAoZXZlbnQpID0+IHZvaWQgfTtcbiAgaGVhZGVyPzogRnNMaXN0SGVhZGVyQ29uZmlnO1xuICBjZWxsPzogRnNMaXN0Q2VsbENvbmZpZztcbiAgZm9vdGVyPzogRnNMaXN0Rm9vdGVyQ29uZmlnO1xuICByZW9yZGVyPzogRnNMaXN0UmVvcmRlckNvbmZpZztcbiAgc29ydHM/OiBGc0xpc3RTb3J0c0NvbmZpZ1tdO1xuICBncm91cD86IEZzTGlzdEdyb3VwQ29uZmlnO1xuICBzb3J0PzogRnNMaXN0U29ydENvbmZpZztcbiAgcmVzdG9yZT86IEZzTGlzdFJlc3RvcmVDb25maWc7XG4gIG5vUmVzdWx0cz86IEZzTGlzdE5vUmVzdWx0c0NvbmZpZztcbiAgZW1wdHlTdGF0ZT86IEZzTGlzdEVtcHR5U3RhdGVDb25maWc7XG4gIGZpbHRlckluaXQ/OiBDaGFuZ2VGbjtcbiAgZmlsdGVyQ2hhbmdlPzogQ2hhbmdlRm47XG4gIHJlbG9hZD86IGJvb2xlYW47XG4gIHN0eWxlPzogJ2xpbmUnIHwgJ2NhcmQnIHwgJ2Jhc2ljJztcbiAgYXV0b1JlbG9hZD86IEZzRmlsdGVyQXV0b1JlbG9hZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RHcm91cENvbmZpZyB7XG4gIGVuYWJsZWQ/OiBib29sZWFuO1xuICBpbml0aWFsRXhwYW5kPzogYm9vbGVhbjtcbiAgZ3JvdXBCeT86IChyb3c6IGFueSkgPT4gYW55O1xuICBjb21wYXJlQnk/OiAocm93OiBhbnkpID0+IGFueTtcbiAgZm9vdGVyPzogKFxuICAgIHJvdzogeyBba2V5OiBzdHJpbmddOiBhbnkgfSxcbiAgICBncm91cD86IHtcbiAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgIGNoaWxkcmVuOiB7XG4gICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgIH1bXTtcbiAgICB9LFxuICApID0+IGJvb2xlYW47XG4gIGFjdGlvbnM/OiAoRnNMaXN0Um93QWN0aW9uR3JvdXAgfCBGc0xpc3RSb3dBY3Rpb24pW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0TG9hZE1vcmVDb25maWcge1xuICBlbmFibGVkPzogYm9vbGVhbixcbiAgbGFiZWw/OiBzdHJpbmc7XG4gIGJ1dHRvbkNvbG9yPzogJ3ByaW1hcnknIHwgJ2FjY2VudCcgfCAnd2Fybic7XG4gIGJ1dHRvblR5cGU/OiAnZmxhdCcgfCAncmFpc2VkJyB8ICdzdHJva2VkJyB8ICdiYXNpYyc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0UmVvcmRlckNvbmZpZyB7XG4gIHN0YXJ0PzogKCkgPT4gdm9pZDtcbiAgbW92ZWQ/OiBGc0xpc3RSZW9yZGVyTW92ZWRDYWxsYmFjaztcbiAgZG9uZT86IEZzTGlzdFJlb3JkZXJEb25lQ2FsbGJhY2s7XG4gIG1vdmVEcm9wPzogRnNMaXN0UmVvcmRlck1vdmVJbkdyb3VwQ2FsbGJhY2s7XG4gIHBvc2l0aW9uPzogUmVvcmRlclBvc2l0aW9uO1xuICBkaXNhYmxlZD86IGJvb2xlYW47XG4gIHRvZ2dsZT86IGJvb2xlYW47XG4gIGxhYmVsPzogc3RyaW5nO1xuICBtZW51PzogYm9vbGVhbjtcbiAgbXVsdGlwbGU/OiBib29sZWFuO1xuICBzdGF0dXM/OiBib29sZWFuO1xufVxuXG5leHBvcnQgdHlwZSBGc0xpc3RSZW9yZGVyTW92ZWRDYWxsYmFja1xuICA9IChyb3dzOiBGc0xpc3RSZW9yZGVyRGF0YVtdKSA9PiB2b2lkO1xuXG5leHBvcnQgdHlwZSBGc0xpc3RSZW9yZGVyRG9uZUNhbGxiYWNrXG4gID0gKHJvd3M6IEZzTGlzdFJlb3JkZXJEYXRhW10pID0+IHZvaWQgfCBPYnNlcnZhYmxlPGFueT47XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0UmVvcmRlckRhdGEge1xuICB0eXBlOiBSb3dUeXBlO1xuICBkYXRhOiBhbnk7XG4gIHBhcmVudDogRnNMaXN0UmVvcmRlckRhdGE7XG59XG5cbmV4cG9ydCB0eXBlIEZzTGlzdFJlb3JkZXJNb3ZlSW5Hcm91cENhbGxiYWNrID1cbiAgKGRhdGE6IHsgcm93MTogYW55OyByb3cyOiBhbnk7IGdyb3VwMTogYW55OyBncm91cDI6IGFueSB9KSA9PiBib29sZWFuO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdEhlYWRlckNvbmZpZyB7XG4gIGNsYXNzTmFtZT86IHN0cmluZztcbiAgYWxpZ24/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0Q2VsbENvbmZpZyB7XG4gIGNsYXNzTmFtZT86IHN0cmluZztcbiAgYWxpZ24/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0Rm9vdGVyQ29uZmlnIHtcbiAgY2xhc3NOYW1lPzogc3RyaW5nO1xuICBhbGlnbj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RTb3J0c0NvbmZpZyB7XG4gIG5hbWU6IHN0cmluZztcbiAgdmFsdWU6IHN0cmluZztcbiAgZGlyZWN0aW9uPzogJ2FzYycgfCAnZGVzYyc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0U29ydENvbmZpZyB7XG4gIHZhbHVlOiBzdHJpbmc7XG4gIGRpcmVjdGlvbj86ICdhc2MnIHwgJ2Rlc2MnO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdFJlc3RvcmVDb25maWcge1xuICBxdWVyeT86IGFueTtcbiAgZmlsdGVyPzogYm9vbGVhbiB8IHN0cmluZztcbiAgZmlsdGVyTGFiZWw/OiBzdHJpbmc7XG4gIG1lbnVMYWJlbD86IHN0cmluZztcbiAgY2xpY2s/OiAocm93OiBGc0xpc3RBYnN0cmFjdFJvdywgZXZlbnQ/OiBhbnkpID0+IHZvaWQgfCBPYnNlcnZhYmxlPGFueT47XG4gIHJlbG9hZD86IGJvb2xlYW47XG59XG5cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3ROb1Jlc3VsdHNDb25maWcge1xuICBtZXNzYWdlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdFNlbGVjdGlvbkNvbmZpZyB7XG4gIGFjdGlvbnM/OiBGc1NlbGVjdGlvbkRpYWxvZ0NvbmZpZ0FjdGlvbltdO1xuICBhY3Rpb25TZWxlY3RlZD86IChhY3Rpb246IEZzTGlzdEFjdGlvblNlbGVjdGVkKSA9PiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICBhbGxTZWxlY3RlZD86ICgpID0+IHZvaWQ7XG4gIGNhbmNlbGxlZD86ICgpID0+IHZvaWQ7XG4gIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgc2VsZWN0QWxsPzogYm9vbGVhbjtcbiAgc2VsZWN0YWJsZT86IChyb3c6IEZzTGlzdEFic3RyYWN0Um93LCBpbmRleDogbnVtYmVyKSA9PiBib29sZWFuO1xuICBzZWxlY3Rpb25DaGFuZ2VkPzogKGRhdGE6IGFueSwgc2VsZWN0ZWRBbGw6IGJvb2xlYW4sIHNlbGVjdGlvblJlZjogU2VsZWN0aW9uUmVmKSA9PlxuICAgIEZzU2VsZWN0aW9uRGlhbG9nQ29uZmlnQWN0aW9uW10gfCBPYnNlcnZhYmxlPEZzU2VsZWN0aW9uRGlhbG9nQ29uZmlnQWN0aW9uW10gfCB2b2lkPiB8IHZvaWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0RmV0Y2hTdWJzY3JpcHRpb24ge1xuICBsb2FkT2Zmc2V0PzogYm9vbGVhbjtcbiAgc2Nyb2xsSW50b1ZpZXc/OiBib29sZWFuO1xufVxuXG5leHBvcnQgdHlwZSBGc0xpc3RBY3Rpb24gPSB7IGN1c3RvbWl6ZT86IGJvb2xlYW4gfSAmIEZzRmlsdGVyQWN0aW9uO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdFJvd0FjdGlvbkdyb3VwIHtcbiAgbGFiZWw/OiBzdHJpbmc7XG4gIHJvd0FjdGlvbnM6IEZzTGlzdFJvd0FjdGlvbltdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdFJvd0FjdGlvbiB7XG4gIGxhYmVsPzogc3RyaW5nIHwgRnNMaXN0Um93QWN0aW9uTGFiZWxGbjtcbiAgdHlwZT86IEFjdGlvblR5cGU7XG4gIGNsYXNzTmFtZT86IHN0cmluZztcbiAgaWNvbj86IHN0cmluZyB8ICgocm93OiBhbnkpID0+IHN0cmluZyk7XG4gIG1lbnU/OiBib29sZWFuO1xuICBjbGljaz86IChyb3csIGV2ZW50LCBpbmRleCkgPT4gdm9pZDtcbiAgbGluaz86IEZzTGlzdFJvd0FjdGlvbkxpbmtGbjtcbiAgZmlsZT86IEZzTGlzdFJvd0FjdGlvbkZpbGU7XG4gIHNob3c/OiAocm93LCBpbmRleDogbnVtYmVyKSA9PiBib29sZWFuO1xuICByZW1vdmU/OiBGc0xpc3RSb3dBY3Rpb25SZW1vdmUgfCBib29sZWFuO1xuICByZXN0b3JlPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RSb3dBY3Rpb25SZW1vdmUge1xuICB0aXRsZT86IHN0cmluZztcbiAgdGVtcGxhdGU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIEZzTGlzdFJvd0FjdGlvbkZpbGVGbiA9IChzZWxlY3Rpb246IEZzRmlsZSB8IEZzRmlsZVtdLCByb3c6IEZzTGlzdEFic3RyYWN0Um93LCBpbmRleDogbnVtYmVyKSA9PiB2b2lkO1xuXG5leHBvcnQgdHlwZSBGc0xpc3RSb3dBY3Rpb25MaW5rRm4gPSAocm93OiBGc0xpc3RBYnN0cmFjdFJvdykgPT4gRnNMaXN0Um93QWN0aW9uTGluaztcblxuZXhwb3J0IHR5cGUgRnNMaXN0Um93QWN0aW9uTGFiZWxGbiA9IChyb3c6IEZzTGlzdEFic3RyYWN0Um93KSA9PiBzdHJpbmc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0Um93QWN0aW9uRmlsZSB7XG4gIHNlbGVjdDogRnNMaXN0Um93QWN0aW9uRmlsZUZuO1xuICBlcnJvcj86IChlcnJvcjogdW5rbm93bikgPT4gdm9pZDtcbiAgbXVsdGlwbGU/OiBib29sZWFuO1xuICBhY2NlcHQ/OiBzdHJpbmc7XG4gIG1pbldpZHRoPzogbnVtYmVyO1xuICBtaW5IZWlnaHQ/OiBudW1iZXI7XG4gIG1heFdpZHRoPzogbnVtYmVyO1xuICBtYXhIZWlnaHQ/OiBudW1iZXI7XG4gIGltYWdlUXVhbGl0eT86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RSb3dBY3Rpb25MaW5rIHtcbiAgbGluazogYW55W10gfCBzdHJpbmc7XG4gIHF1ZXJ5UGFyYW1zPzogUmVjb3JkPHN0cmluZywgYW55PjtcbiAgdGFyZ2V0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdEFic3RyYWN0Um93IHtcbiAgW25hbWU6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IHR5cGUgRnNMaXN0VHJhY2tCeUZuID0gKHJvdzogRnNMaXN0QWJzdHJhY3RSb3csIGluZGV4PzogbnVtYmVyKSA9PiBib29sZWFuO1xuXG5leHBvcnQgdHlwZSBGc0xpc3RUcmFja0J5VGFyZ2V0Um93Rm4gPSAobGlzdFJvdzogRnNMaXN0QWJzdHJhY3RSb3csIHRhcmdldFJvdz86IEZzTGlzdEFic3RyYWN0Um93KSA9PiBib29sZWFuO1xuXG5leHBvcnQgdHlwZSBGc0xpc3RDb2x1bW5Mb2FkRm4gPSAoKSA9PiBPYnNlcnZhYmxlPEZzTGlzdENvbHVtbltdPjtcblxuZXhwb3J0IHR5cGUgRnNMaXN0Q29sdW1uQ2hhbmdlRm4gPSAobGlzdENvbHVtbnM6IEZzTGlzdENvbHVtbltdKSA9PiB2b2lkO1xuXG5leHBvcnQgdHlwZSBGc0xpc3RDb2x1bW5UaXRsZUZuID0gKG5hbWU6IHN0cmluZywgZGVmYXVsdFRpdGxlOiBzdHJpbmcpID0+IHN0cmluZztcblxuZXhwb3J0IHR5cGUgRnNMaXN0Q29sdW1uVG9vbHRpcEZuID0gKG5hbWU6IHN0cmluZywgc2hvdzogYm9vbGVhbiwgZGlzYWJsZWQ6IGJvb2xlYW4pID0+IHN0cmluZztcblxuZXhwb3J0IHR5cGUgRnNMaXN0Q29sdW1uRGlzYWJsZWRGbiA9IChuYW1lOiBzdHJpbmcpID0+IGJvb2xlYW47XG5cbmV4cG9ydCB0eXBlIEZzTGlzdENvbHVtblNlbGVjdGVkRm4gPSAobmFtZTogc3RyaW5nLCBzaG93OiBib29sZWFuKSA9PiBib29sZWFuO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdENvbHVtbkNvbmZpZyB7XG4gIGxvYWQ/OiBGc0xpc3RDb2x1bW5Mb2FkRm47XG4gIGNoYW5nZT86IEZzTGlzdENvbHVtbkNoYW5nZUZuO1xuICBpbml0PzogRnNMaXN0Q29sdW1uQ2hhbmdlRm47XG4gIHRpdGxlPzogRnNMaXN0Q29sdW1uVGl0bGVGbjtcbiAgc2VsZWN0ZWQ/OiBGc0xpc3RDb2x1bW5TZWxlY3RlZEZuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdENvbHVtbiB7XG4gIG5hbWU6IHN0cmluZztcbiAgc2hvdz86IGJvb2xlYW47XG4gIGN1c3RvbWl6YWJsZT86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0QWN0aW9uU2VsZWN0ZWQgZXh0ZW5kcyBGc1NlbGVjdGlvbkFjdGlvblNlbGVjdGVkIHtcbiAgc2VsZWN0ZWQ6IGFueVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdEVtcHR5U3RhdGVDb25maWcge1xuICB2YWxpZGF0ZTogRnNMaXN0U3RhdGVWYWxpZGF0aW9uRm47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0RmV0Y2hPcHRpb25zIHtcbiAgc3RhdGU6IEZzTGlzdFN0YXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdFBlcnNpc3RhbmNlQ29uZmlnIHtcbiAgbmFtZT86IHN0cmluZztcbiAgdGltZW91dD86IG51bWJlcjtcbiAgcGVyc2lzdEZpbHRlcj86IGJvb2xlYW47XG4gIHBlcnNpc3RQYWdpbmc/OiBib29sZWFuO1xuICBwZXJzaXN0U29ydGluZz86IGJvb2xlYW47XG4gIHBlcnNpc3RDb2x1bW4/OiBib29sZWFuO1xuICBwZXJzaXN0UXVlcnk/OiBib29sZWFuO1xufVxuXG5leHBvcnQgdHlwZSBGc0xpc3RQZXJzaXRhbmNlID0gYm9vbGVhbiB8IEZzTGlzdFBlcnNpc3RhbmNlQ29uZmlnO1xuZXhwb3J0IHR5cGUgRnNMaXN0U3RhdGVWYWxpZGF0aW9uRm4gPSAoZmlsdGVyczogYW55LCByb3dzOiBGc0xpc3RBYnN0cmFjdFJvd1tdKSA9PiBib29sZWFuO1xuZXhwb3J0IHR5cGUgRnNMaXN0RmV0Y2hGbiA9XG4gIChxdWVyeTogUmVjb3JkPHN0cmluZywgYW55Piwgb3B0aW9uczogRnNMaXN0RmV0Y2hPcHRpb25zKSA9PlxuICAgIE9ic2VydmFibGU8eyBkYXRhOiB1bmtub3duW107IHBhZ2luZz86IEZzUGFnaW5nIH0+O1xuXG5leHBvcnQgdHlwZSBGc0xpc3RBZnRlckZldGNoRm4gPVxuICAocXVlcnk6IFJlY29yZDxzdHJpbmcsIGFueT4sIGRhdGE6IHVua25vd25bXSkgPT4gdm9pZDtcblxuZXhwb3J0IHR5cGUgRnNMaXN0QmVmb3JlRmV0Y2hGbiA9XG4gIChxdWVyeSkgPT4gT2JzZXJ2YWJsZTxSZWNvcmQ8c3RyaW5nLCBhbnk+PjtcblxuZXhwb3J0IHR5cGUgRnNMaXN0QWZ0ZXJDb250ZW50SW5pdEZuID1cbiAgKHF1ZXJ5OiBSZWNvcmQ8c3RyaW5nLCBhbnk+LCBkYXRhOiB1bmtub3duW10pID0+IHZvaWQ7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0Um93Q2xhc3NPcHRpb25zIHtcbiAgaW5kZXg6IG51bWJlcjtcbiAgZ3JvdXBJbmRleD86IG51bWJlcjtcbiAgdHlwZT86IFJvd1R5cGU7XG59XG5cbmV4cG9ydCB0eXBlIEZzTGlzdEFmdGVySW5pdEZuID0gKGxpc3RDb21wb25lbnQ6IGFueSkgPT4gdm9pZDtcbiJdfQ==
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdGNvbmZpZy5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBwL2ludGVyZmFjZXMvbGlzdGNvbmZpZy5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZzRmlsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2ZpbGUnO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRm4sXG4gIEZzRmlsdGVyQWN0aW9uLFxuICBGc0ZpbHRlckF1dG9SZWxvYWQsXG4gIElGaWx0ZXJDb25maWdEYXRlSXRlbSxcbiAgSUZpbHRlckNvbmZpZ0l0ZW0sXG4gIElGaWx0ZXJTYXZlZEZpbHRlcnNDb25maWcsXG59IGZyb20gJ0BmaXJlc3RpdGNoL2ZpbHRlcic7XG5pbXBvcnQge1xuICBGc1NlbGVjdGlvbkFjdGlvblNlbGVjdGVkLFxuICBGc1NlbGVjdGlvbkRpYWxvZ0NvbmZpZ0FjdGlvbixcbiAgU2VsZWN0aW9uUmVmLFxufSBmcm9tICdAZmlyZXN0aXRjaC9zZWxlY3Rpb24nO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFJlb3JkZXJQb3NpdGlvbiB9IGZyb20gJy4uL2NsYXNzZXMvcmVvcmRlci1jb250cm9sbGVyJztcbmltcG9ydCB7IEFjdGlvblR5cGUgfSBmcm9tICcuLi9lbnVtcy9hY3Rpb24tdHlwZS5lbnVtJztcbmltcG9ydCB7IFBhZ2luYXRpb25TdHJhdGVneSB9IGZyb20gJy4uL2VudW1zL3BhZ2luYXRpb24tc3RyYXRlZ3kuZW51bSc7XG5pbXBvcnQgeyBSb3dUeXBlIH0gZnJvbSAnLi4vZW51bXMvcm93LXR5cGUuZW51bSc7XG5pbXBvcnQgeyBGc0xpc3RTdGF0ZSB9IGZyb20gJy4uL2VudW1zL3N0YXRlLmVudW0nO1xuXG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNQYWdpbmcge1xuICBsaW1pdHM/OiBudW1iZXJbXTtcbiAgbGltaXQ/OiBudW1iZXI7XG4gIHBhZ2U/OiBudW1iZXI7XG4gIHBhZ2VzPzogbnVtYmVyO1xuICByZWNvcmRzPzogbnVtYmVyO1xuICBzdHJhdGVneT86IFBhZ2luYXRpb25TdHJhdGVneTtcbn1cblxuLyoqXG4gKiBMaXN0IGNvbmZpZ3VyYXRpb24uIFVzZSBgRnNMaXN0Q29uZmlnPFlvdXJSb3c+YCBzbyBgZmV0Y2hgIC8gYHJvd0NsYXNzYCAvIGBjZWxsUm93VHlwZWBcbiAqIHNoYXJlIG9uZSByb3cgdHlwZSAoQ0RLLXN0eWxlKS4gRGVmYXVsdHMgdG8gYGFueWAgZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0Q29uZmlnPFRSb3cgPSBhbnk+IHtcbiAgLyoqXG4gICAqIE9wdGlvbmFsIHJvdyB0eXBpbmcgYW5jaG9yIChlLmcuIGB7fSBhcyBNeVJvd2ApLiBBcHBsaWVkIHRvIGV2ZXJ5IGBmcy1saXN0LWNlbGxgXG4gICAqIChhbmQgZ3JvdXAgaGVhZGVyL2Zvb3RlciBjZWxscykgdGhhdCBkb2VzIG5vdCBzZXQgaXRzIG93biBgW3Jvd1R5cGVdYCAvIGBbY29uZmlnVHlwaW5nXWAuXG4gICAqIE92ZXJyaWRhYmxlIHBlciBsaXN0IHZpYSBgW2NlbGxSb3dUeXBlXWAgb24gYGZzLWxpc3RgLlxuICAgKi9cbiAgY2VsbFJvd1R5cGU/OiBUUm93O1xuICBoZWFkaW5nPzogc3RyaW5nO1xuICB0cmFja0J5Pzogc3RyaW5nO1xuICBzdWJoZWFkaW5nPzogc3RyaW5nO1xuICBzdGF0dXM/OiBib29sZWFuO1xuICByb3dIb3ZlckhpZ2hsaWdodD86IGJvb2xlYW47XG4gIGNoaXBzPzogYm9vbGVhbjtcbiAgY29sdW1uPzogRnNMaXN0Q29sdW1uQ29uZmlnO1xuICBhdXRvRm9jdXM/OiBib29sZWFuO1xuICBxdWVyeVBhcmFtPzogYm9vbGVhbjtcbiAgcGFnaW5nPzogRnNQYWdpbmcgfCBmYWxzZTtcbiAgbG9hZE1vcmU/OiBGc0xpc3RMb2FkTW9yZUNvbmZpZyB8IGJvb2xlYW47XG4gIGNvbHVtbkRlZmF1bHRzPzogYW55O1xuICBmaWx0ZXJzPzogKElGaWx0ZXJDb25maWdJdGVtIHwgSUZpbHRlckNvbmZpZ0RhdGVJdGVtKVtdO1xuICBzYXZlZEZpbHRlcnM/OiBJRmlsdGVyU2F2ZWRGaWx0ZXJzQ29uZmlnO1xuICBwZXJzaXN0PzogRnNMaXN0UGVyc2l0YW5jZTtcbiAgcm93QWN0aW9ucz86IChGc0xpc3RSb3dBY3Rpb25Hcm91cCB8IEZzTGlzdFJvd0FjdGlvbilbXTtcbiAgcm93QWN0aW9uc0hvdmVyPzogYm9vbGVhbjtcbiAgcm93Q2xhc3M/OiAocm93OiBUUm93LCBvcHRpb25zPzogRnNMaXN0Um93Q2xhc3NPcHRpb25zKSA9PiBzdHJpbmc7XG4gIHJvd0hvdmVyPzogYm9vbGVhbjtcbiAgYWN0aW9ucz86IEZzTGlzdEFjdGlvbltdO1xuICBmZXRjaD86IEZzTGlzdEZldGNoRm48VFJvdz47XG4gIGFmdGVyRmV0Y2g/OiBGc0xpc3RBZnRlckZldGNoRm48VFJvdz47XG4gIGJlZm9yZUZldGNoPzogRnNMaXN0QmVmb3JlRmV0Y2hGbjtcbiAgYWZ0ZXJDb250ZW50SW5pdD86IEZzTGlzdEFmdGVyQ29udGVudEluaXRGbjxUUm93PjtcbiAgYWZ0ZXJJbml0PzogRnNMaXN0QWZ0ZXJJbml0Rm47XG4gIHNlbGVjdGlvbj86IEZzTGlzdFNlbGVjdGlvbkNvbmZpZztcbiAgaW5pdGlhbEZldGNoPzogYm9vbGVhbjtcbiAgcm93RXZlbnRzPzogeyBbbmFtZTogc3RyaW5nXTogKGV2ZW50KSA9PiB2b2lkIH07XG4gIGhlYWRlcj86IEZzTGlzdEhlYWRlckNvbmZpZztcbiAgY2VsbD86IEZzTGlzdENlbGxDb25maWc7XG4gIGZvb3Rlcj86IEZzTGlzdEZvb3RlckNvbmZpZztcbiAgcmVvcmRlcj86IEZzTGlzdFJlb3JkZXJDb25maWc7XG4gIHNvcnRzPzogRnNMaXN0U29ydHNDb25maWdbXTtcbiAgZ3JvdXA/OiBGc0xpc3RHcm91cENvbmZpZztcbiAgc29ydD86IEZzTGlzdFNvcnRDb25maWc7XG4gIHJlc3RvcmU/OiBGc0xpc3RSZXN0b3JlQ29uZmlnO1xuICBub1Jlc3VsdHM/OiBGc0xpc3ROb1Jlc3VsdHNDb25maWc7XG4gIGVtcHR5U3RhdGU/OiBGc0xpc3RFbXB0eVN0YXRlQ29uZmlnO1xuICBmaWx0ZXJJbml0PzogQ2hhbmdlRm47XG4gIGZpbHRlckNoYW5nZT86IENoYW5nZUZuO1xuICByZWxvYWQ/OiBib29sZWFuO1xuICBzdHlsZT86ICdsaW5lJyB8ICdjYXJkJyB8ICdiYXNpYyc7XG4gIGF1dG9SZWxvYWQ/OiBGc0ZpbHRlckF1dG9SZWxvYWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0R3JvdXBDb25maWcge1xuICBlbmFibGVkPzogYm9vbGVhbjtcbiAgaW5pdGlhbEV4cGFuZD86IGJvb2xlYW47XG4gIGdyb3VwQnk/OiAocm93OiBhbnkpID0+IGFueTtcbiAgY29tcGFyZUJ5PzogKHJvdzogYW55KSA9PiBhbnk7XG4gIGZvb3Rlcj86IChcbiAgICByb3c6IHsgW2tleTogc3RyaW5nXTogYW55IH0sXG4gICAgZ3JvdXA/OiB7XG4gICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICBjaGlsZHJlbjoge1xuICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICB9W107XG4gICAgfSxcbiAgKSA9PiBib29sZWFuO1xuICBhY3Rpb25zPzogKEZzTGlzdFJvd0FjdGlvbkdyb3VwIHwgRnNMaXN0Um93QWN0aW9uKVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdExvYWRNb3JlQ29uZmlnIHtcbiAgZW5hYmxlZD86IGJvb2xlYW4sXG4gIGxhYmVsPzogc3RyaW5nO1xuICBidXR0b25Db2xvcj86ICdwcmltYXJ5JyB8ICdhY2NlbnQnIHwgJ3dhcm4nO1xuICBidXR0b25UeXBlPzogJ2ZsYXQnIHwgJ3JhaXNlZCcgfCAnc3Ryb2tlZCcgfCAnYmFzaWMnO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdFJlb3JkZXJDb25maWcge1xuICBzdGFydD86ICgpID0+IHZvaWQ7XG4gIG1vdmVkPzogRnNMaXN0UmVvcmRlck1vdmVkQ2FsbGJhY2s7XG4gIGRvbmU/OiBGc0xpc3RSZW9yZGVyRG9uZUNhbGxiYWNrO1xuICBtb3ZlRHJvcD86IEZzTGlzdFJlb3JkZXJNb3ZlSW5Hcm91cENhbGxiYWNrO1xuICBwb3NpdGlvbj86IFJlb3JkZXJQb3NpdGlvbjtcbiAgZGlzYWJsZWQ/OiBib29sZWFuO1xuICB0b2dnbGU/OiBib29sZWFuO1xuICBsYWJlbD86IHN0cmluZztcbiAgbWVudT86IGJvb2xlYW47XG4gIG11bHRpcGxlPzogYm9vbGVhbjtcbiAgc3RhdHVzPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IHR5cGUgRnNMaXN0UmVvcmRlck1vdmVkQ2FsbGJhY2tcbiAgPSAocm93czogRnNMaXN0UmVvcmRlckRhdGFbXSkgPT4gdm9pZDtcblxuZXhwb3J0IHR5cGUgRnNMaXN0UmVvcmRlckRvbmVDYWxsYmFja1xuICA9IChyb3dzOiBGc0xpc3RSZW9yZGVyRGF0YVtdKSA9PiB2b2lkIHwgT2JzZXJ2YWJsZTxhbnk+O1xuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdFJlb3JkZXJEYXRhIHtcbiAgdHlwZTogUm93VHlwZTtcbiAgZGF0YTogYW55O1xuICBwYXJlbnQ6IEZzTGlzdFJlb3JkZXJEYXRhO1xufVxuXG5leHBvcnQgdHlwZSBGc0xpc3RSZW9yZGVyTW92ZUluR3JvdXBDYWxsYmFjayA9XG4gIChkYXRhOiB7IHJvdzE6IGFueTsgcm93MjogYW55OyBncm91cDE6IGFueTsgZ3JvdXAyOiBhbnkgfSkgPT4gYm9vbGVhbjtcblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RIZWFkZXJDb25maWcge1xuICBjbGFzc05hbWU/OiBzdHJpbmc7XG4gIGFsaWduPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdENlbGxDb25maWcge1xuICBjbGFzc05hbWU/OiBzdHJpbmc7XG4gIGFsaWduPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdEZvb3RlckNvbmZpZyB7XG4gIGNsYXNzTmFtZT86IHN0cmluZztcbiAgYWxpZ24/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0U29ydHNDb25maWcge1xuICBuYW1lOiBzdHJpbmc7XG4gIHZhbHVlOiBzdHJpbmc7XG4gIGRpcmVjdGlvbj86ICdhc2MnIHwgJ2Rlc2MnO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdFNvcnRDb25maWcge1xuICB2YWx1ZTogc3RyaW5nO1xuICBkaXJlY3Rpb24/OiAnYXNjJyB8ICdkZXNjJztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RSZXN0b3JlQ29uZmlnIHtcbiAgcXVlcnk/OiBhbnk7XG4gIGZpbHRlcj86IGJvb2xlYW4gfCBzdHJpbmc7XG4gIGZpbHRlckxhYmVsPzogc3RyaW5nO1xuICBtZW51TGFiZWw/OiBzdHJpbmc7XG4gIGNsaWNrPzogKHJvdzogRnNMaXN0QWJzdHJhY3RSb3csIGV2ZW50PzogYW55KSA9PiB2b2lkIHwgT2JzZXJ2YWJsZTxhbnk+O1xuICByZWxvYWQ/OiBib29sZWFuO1xufVxuXG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0Tm9SZXN1bHRzQ29uZmlnIHtcbiAgbWVzc2FnZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RTZWxlY3Rpb25Db25maWcge1xuICBhY3Rpb25zPzogRnNTZWxlY3Rpb25EaWFsb2dDb25maWdBY3Rpb25bXTtcbiAgYWN0aW9uU2VsZWN0ZWQ/OiAoYWN0aW9uOiBGc0xpc3RBY3Rpb25TZWxlY3RlZCkgPT4gT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgYWxsU2VsZWN0ZWQ/OiAoKSA9PiB2b2lkO1xuICBjYW5jZWxsZWQ/OiAoKSA9PiB2b2lkO1xuICBkaXNhYmxlZD86IGJvb2xlYW47XG4gIHNlbGVjdEFsbD86IGJvb2xlYW47XG4gIHNlbGVjdGFibGU/OiAocm93OiBGc0xpc3RBYnN0cmFjdFJvdywgaW5kZXg6IG51bWJlcikgPT4gYm9vbGVhbjtcbiAgc2VsZWN0aW9uQ2hhbmdlZD86IChkYXRhOiBhbnksIHNlbGVjdGVkQWxsOiBib29sZWFuLCBzZWxlY3Rpb25SZWY6IFNlbGVjdGlvblJlZikgPT5cbiAgICBGc1NlbGVjdGlvbkRpYWxvZ0NvbmZpZ0FjdGlvbltdIHwgT2JzZXJ2YWJsZTxGc1NlbGVjdGlvbkRpYWxvZ0NvbmZpZ0FjdGlvbltdIHwgdm9pZD4gfCB2b2lkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdEZldGNoU3Vic2NyaXB0aW9uIHtcbiAgbG9hZE9mZnNldD86IGJvb2xlYW47XG4gIHNjcm9sbEludG9WaWV3PzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IHR5cGUgRnNMaXN0QWN0aW9uID0geyBjdXN0b21pemU/OiBib29sZWFuIH0gJiBGc0ZpbHRlckFjdGlvbjtcblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RSb3dBY3Rpb25Hcm91cCB7XG4gIGxhYmVsPzogc3RyaW5nO1xuICByb3dBY3Rpb25zOiBGc0xpc3RSb3dBY3Rpb25bXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RSb3dBY3Rpb24ge1xuICBsYWJlbD86IHN0cmluZyB8IEZzTGlzdFJvd0FjdGlvbkxhYmVsRm47XG4gIHR5cGU/OiBBY3Rpb25UeXBlO1xuICBjbGFzc05hbWU/OiBzdHJpbmc7XG4gIGljb24/OiBzdHJpbmcgfCAoKHJvdzogYW55KSA9PiBzdHJpbmcpO1xuICBtZW51PzogYm9vbGVhbjtcbiAgY2xpY2s/OiAocm93LCBldmVudCwgaW5kZXgpID0+IHZvaWQ7XG4gIGxpbms/OiBGc0xpc3RSb3dBY3Rpb25MaW5rRm47XG4gIGZpbGU/OiBGc0xpc3RSb3dBY3Rpb25GaWxlO1xuICBzaG93PzogKHJvdywgaW5kZXg6IG51bWJlcikgPT4gYm9vbGVhbjtcbiAgcmVtb3ZlPzogRnNMaXN0Um93QWN0aW9uUmVtb3ZlIHwgYm9vbGVhbjtcbiAgcmVzdG9yZT86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0Um93QWN0aW9uUmVtb3ZlIHtcbiAgdGl0bGU/OiBzdHJpbmc7XG4gIHRlbXBsYXRlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBGc0xpc3RSb3dBY3Rpb25GaWxlRm4gPSAoc2VsZWN0aW9uOiBGc0ZpbGUgfCBGc0ZpbGVbXSwgcm93OiBGc0xpc3RBYnN0cmFjdFJvdywgaW5kZXg6IG51bWJlcikgPT4gdm9pZDtcblxuZXhwb3J0IHR5cGUgRnNMaXN0Um93QWN0aW9uTGlua0ZuID0gKHJvdzogRnNMaXN0QWJzdHJhY3RSb3cpID0+IEZzTGlzdFJvd0FjdGlvbkxpbms7XG5cbmV4cG9ydCB0eXBlIEZzTGlzdFJvd0FjdGlvbkxhYmVsRm4gPSAocm93OiBGc0xpc3RBYnN0cmFjdFJvdykgPT4gc3RyaW5nO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdFJvd0FjdGlvbkZpbGUge1xuICBzZWxlY3Q6IEZzTGlzdFJvd0FjdGlvbkZpbGVGbjtcbiAgZXJyb3I/OiAoZXJyb3I6IHVua25vd24pID0+IHZvaWQ7XG4gIG11bHRpcGxlPzogYm9vbGVhbjtcbiAgYWNjZXB0Pzogc3RyaW5nO1xuICBtaW5XaWR0aD86IG51bWJlcjtcbiAgbWluSGVpZ2h0PzogbnVtYmVyO1xuICBtYXhXaWR0aD86IG51bWJlcjtcbiAgbWF4SGVpZ2h0PzogbnVtYmVyO1xuICBpbWFnZVF1YWxpdHk/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNMaXN0Um93QWN0aW9uTGluayB7XG4gIGxpbms6IGFueVtdIHwgc3RyaW5nO1xuICBxdWVyeVBhcmFtcz86IFJlY29yZDxzdHJpbmcsIGFueT47XG4gIHRhcmdldD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RBYnN0cmFjdFJvdyB7XG4gIFtuYW1lOiBzdHJpbmddOiBhbnk7XG59XG5cbmV4cG9ydCB0eXBlIEZzTGlzdFRyYWNrQnlGbiA9IChyb3c6IEZzTGlzdEFic3RyYWN0Um93LCBpbmRleD86IG51bWJlcikgPT4gYm9vbGVhbjtcblxuZXhwb3J0IHR5cGUgRnNMaXN0VHJhY2tCeVRhcmdldFJvd0ZuID0gKGxpc3RSb3c6IEZzTGlzdEFic3RyYWN0Um93LCB0YXJnZXRSb3c/OiBGc0xpc3RBYnN0cmFjdFJvdykgPT4gYm9vbGVhbjtcblxuZXhwb3J0IHR5cGUgRnNMaXN0Q29sdW1uTG9hZEZuID0gKCkgPT4gT2JzZXJ2YWJsZTxGc0xpc3RDb2x1bW5bXT47XG5cbmV4cG9ydCB0eXBlIEZzTGlzdENvbHVtbkNoYW5nZUZuID0gKGxpc3RDb2x1bW5zOiBGc0xpc3RDb2x1bW5bXSkgPT4gdm9pZDtcblxuZXhwb3J0IHR5cGUgRnNMaXN0Q29sdW1uVGl0bGVGbiA9IChuYW1lOiBzdHJpbmcsIGRlZmF1bHRUaXRsZTogc3RyaW5nKSA9PiBzdHJpbmc7XG5cbmV4cG9ydCB0eXBlIEZzTGlzdENvbHVtblRvb2x0aXBGbiA9IChuYW1lOiBzdHJpbmcsIHNob3c6IGJvb2xlYW4sIGRpc2FibGVkOiBib29sZWFuKSA9PiBzdHJpbmc7XG5cbmV4cG9ydCB0eXBlIEZzTGlzdENvbHVtbkRpc2FibGVkRm4gPSAobmFtZTogc3RyaW5nKSA9PiBib29sZWFuO1xuXG5leHBvcnQgdHlwZSBGc0xpc3RDb2x1bW5TZWxlY3RlZEZuID0gKG5hbWU6IHN0cmluZywgc2hvdzogYm9vbGVhbikgPT4gYm9vbGVhbjtcblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RDb2x1bW5Db25maWcge1xuICBsb2FkPzogRnNMaXN0Q29sdW1uTG9hZEZuO1xuICBjaGFuZ2U/OiBGc0xpc3RDb2x1bW5DaGFuZ2VGbjtcbiAgaW5pdD86IEZzTGlzdENvbHVtbkNoYW5nZUZuO1xuICB0aXRsZT86IEZzTGlzdENvbHVtblRpdGxlRm47XG4gIHNlbGVjdGVkPzogRnNMaXN0Q29sdW1uU2VsZWN0ZWRGbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RDb2x1bW4ge1xuICBuYW1lOiBzdHJpbmc7XG4gIHNob3c/OiBib29sZWFuO1xuICBjdXN0b21pemFibGU/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdEFjdGlvblNlbGVjdGVkIGV4dGVuZHMgRnNTZWxlY3Rpb25BY3Rpb25TZWxlY3RlZCB7XG4gIHNlbGVjdGVkOiBhbnlbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RFbXB0eVN0YXRlQ29uZmlnIHtcbiAgdmFsaWRhdGU6IEZzTGlzdFN0YXRlVmFsaWRhdGlvbkZuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdEZldGNoT3B0aW9ucyB7XG4gIHN0YXRlOiBGc0xpc3RTdGF0ZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGc0xpc3RQZXJzaXN0YW5jZUNvbmZpZyB7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIHRpbWVvdXQ/OiBudW1iZXI7XG4gIHBlcnNpc3RGaWx0ZXI/OiBib29sZWFuO1xuICBwZXJzaXN0UGFnaW5nPzogYm9vbGVhbjtcbiAgcGVyc2lzdFNvcnRpbmc/OiBib29sZWFuO1xuICBwZXJzaXN0Q29sdW1uPzogYm9vbGVhbjtcbiAgcGVyc2lzdFF1ZXJ5PzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IHR5cGUgRnNMaXN0UGVyc2l0YW5jZSA9IGJvb2xlYW4gfCBGc0xpc3RQZXJzaXN0YW5jZUNvbmZpZztcbmV4cG9ydCB0eXBlIEZzTGlzdFN0YXRlVmFsaWRhdGlvbkZuID0gKGZpbHRlcnM6IGFueSwgcm93czogRnNMaXN0QWJzdHJhY3RSb3dbXSkgPT4gYm9vbGVhbjtcbmV4cG9ydCB0eXBlIEZzTGlzdEZldGNoRm48VFJvdyA9IGFueT4gPVxuICAocXVlcnk6IFJlY29yZDxzdHJpbmcsIGFueT4sIG9wdGlvbnM6IEZzTGlzdEZldGNoT3B0aW9ucykgPT5cbiAgICBPYnNlcnZhYmxlPHsgZGF0YTogVFJvd1tdOyBwYWdpbmc/OiBGc1BhZ2luZyB9PjtcblxuZXhwb3J0IHR5cGUgRnNMaXN0QWZ0ZXJGZXRjaEZuPFRSb3cgPSBhbnk+ID1cbiAgKHF1ZXJ5OiBSZWNvcmQ8c3RyaW5nLCBhbnk+LCBkYXRhOiBUUm93W10pID0+IHZvaWQ7XG5cbmV4cG9ydCB0eXBlIEZzTGlzdEJlZm9yZUZldGNoRm4gPVxuICAocXVlcnkpID0+IE9ic2VydmFibGU8UmVjb3JkPHN0cmluZywgYW55Pj47XG5cbmV4cG9ydCB0eXBlIEZzTGlzdEFmdGVyQ29udGVudEluaXRGbjxUUm93ID0gYW55PiA9XG4gIChxdWVyeTogUmVjb3JkPHN0cmluZywgYW55PiwgZGF0YTogVFJvd1tdKSA9PiB2b2lkO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZzTGlzdFJvd0NsYXNzT3B0aW9ucyB7XG4gIGluZGV4OiBudW1iZXI7XG4gIGdyb3VwSW5kZXg/OiBudW1iZXI7XG4gIHR5cGU/OiBSb3dUeXBlO1xufVxuXG5leHBvcnQgdHlwZSBGc0xpc3RBZnRlckluaXRGbiA9IChsaXN0Q29tcG9uZW50OiBhbnkpID0+IHZvaWQ7XG4iXX0=
|