@eui/components 16.1.0-snapshot-1690499387467 → 16.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/docs/classes/EuiDialogConfig.html +23 -0
  2. package/docs/components/EuiCardContentComponent.html +0 -69
  3. package/docs/components/EuiDateRangeSelectorComponent.html +39 -1
  4. package/docs/components/EuiDialogComponent.html +205 -10
  5. package/docs/dependencies.html +2 -2
  6. package/docs/interfaces/EuiDialogInterface.html +45 -0
  7. package/docs/js/menu-wc.js +3 -3
  8. package/docs/js/search/search_index.js +2 -2
  9. package/esm2022/eui-button/eui-button.component.mjs +2 -2
  10. package/esm2022/eui-card/components/eui-card-content/eui-card-content.component.mjs +2 -6
  11. package/esm2022/eui-date-range-selector/eui-date-range-selector.component.mjs +25 -3
  12. package/esm2022/eui-dialog/eui-dialog.component.mjs +44 -8
  13. package/esm2022/eui-dialog/models/eui-dialog.config.mjs +2 -1
  14. package/esm2022/eui-dialog/services/eui-dialog.service.mjs +8 -2
  15. package/esm2022/eui-dropdown/dropdown-item/eui-dropdown-item.component.mjs +2 -2
  16. package/esm2022/eui-dropdown/eui-dropdown.component.mjs +3 -3
  17. package/esm2022/eui-input-radio/eui-input-radio.component.mjs +5 -3
  18. package/esm2022/eui-list/eui-list-item/eui-list-item.component.mjs +2 -2
  19. package/esm2022/eui-list/eui-list.component.mjs +2 -2
  20. package/esm2022/eui-tree/eui-tree.component.mjs +26 -31
  21. package/eui-card/components/eui-card-content/eui-card-content.component.d.ts +0 -1
  22. package/eui-card/components/eui-card-content/eui-card-content.component.d.ts.map +1 -1
  23. package/eui-date-range-selector/eui-date-range-selector.component.d.ts +3 -1
  24. package/eui-date-range-selector/eui-date-range-selector.component.d.ts.map +1 -1
  25. package/eui-dialog/eui-dialog.component.d.ts +10 -3
  26. package/eui-dialog/eui-dialog.component.d.ts.map +1 -1
  27. package/eui-dialog/models/eui-dialog.config.d.ts +2 -0
  28. package/eui-dialog/models/eui-dialog.config.d.ts.map +1 -1
  29. package/eui-dialog/services/eui-dialog.service.d.ts.map +1 -1
  30. package/eui-input-radio/eui-input-radio.component.d.ts.map +1 -1
  31. package/eui-tree/eui-tree.component.d.ts +1 -0
  32. package/eui-tree/eui-tree.component.d.ts.map +1 -1
  33. package/fesm2022/eui-components-eui-button.mjs +2 -2
  34. package/fesm2022/eui-components-eui-button.mjs.map +1 -1
  35. package/fesm2022/eui-components-eui-card.mjs +1 -5
  36. package/fesm2022/eui-components-eui-card.mjs.map +1 -1
  37. package/fesm2022/eui-components-eui-date-range-selector.mjs +24 -2
  38. package/fesm2022/eui-components-eui-date-range-selector.mjs.map +1 -1
  39. package/fesm2022/eui-components-eui-dialog.mjs +51 -8
  40. package/fesm2022/eui-components-eui-dialog.mjs.map +1 -1
  41. package/fesm2022/eui-components-eui-dropdown.mjs +4 -4
  42. package/fesm2022/eui-components-eui-dropdown.mjs.map +1 -1
  43. package/fesm2022/eui-components-eui-input-radio.mjs +4 -2
  44. package/fesm2022/eui-components-eui-input-radio.mjs.map +1 -1
  45. package/fesm2022/eui-components-eui-list.mjs +4 -4
  46. package/fesm2022/eui-components-eui-list.mjs.map +1 -1
  47. package/fesm2022/eui-components-eui-tree.mjs +25 -30
  48. package/fesm2022/eui-components-eui-tree.mjs.map +1 -1
  49. package/package.json +2 -2
@@ -75,40 +75,12 @@ export class EuiTreeComponent {
75
75
  this.hasChild = (_, item) => !!item?.children && item?.children?.length > 0;
76
76
  }
77
77
  ngOnInit() {
78
- // Deep copy to the array.
79
- if (this.nodes) {
80
- this.nodes = this.processInputs(structuredClone(this.nodes));
81
- this.createTreeDataRuntime(this.nodes);
82
- this.cdkArrayDataSource = new ArrayDataSource(this.treeDataRunTime);
83
- this.cdkTreeControl = new NestedTreeControl((node) => node?.children);
84
- this.cdkTreeControl.dataNodes = this.treeDataRunTime;
85
- this.renderInitialExpand(this.treeDataRunTime);
86
- this.selectionModel = new SelectionModel(true, this.getInitialSelection(this.treeDataRunTime), true, (a, b) => a?.path === b?.path);
87
- this.renderTree = true;
88
- this.selectionModelSubs = this.selectionModel.changed.subscribe((sc) => {
89
- this.selectionChange.emit({
90
- added: sc.added.map((_) => this.getTreeItem(_.path)),
91
- removed: sc.removed.map((_) => this.getTreeItem(_.path)),
92
- selection: [...this.selectionModel.selected].map((item) => this.getTreeItem(item.path)),
93
- });
94
- });
95
- this.changeDetectorRef.markForCheck();
96
- }
78
+ this.initTree();
97
79
  }
98
80
  ngOnChanges(changes) {
99
81
  if (changes['nodes'].currentValue !== changes['nodes'].previousValue) {
100
82
  this.renderTree = false;
101
- setTimeout(() => {
102
- this.nodes = this.processInputs(structuredClone(this.nodes));
103
- this.createTreeDataRuntime(this.nodes);
104
- this.cdkArrayDataSource = new ArrayDataSource(this.treeDataRunTime);
105
- this.cdkTreeControl = new NestedTreeControl((node) => node?.children);
106
- this.cdkTreeControl.dataNodes = this.treeDataRunTime;
107
- this.renderInitialExpand(this.treeDataRunTime);
108
- this.selectionModel = new SelectionModel(true, this.getInitialSelection(this.treeDataRunTime), true, (a, b) => a?.path === b?.path);
109
- this.renderTree = true;
110
- this.changeDetectorRef.markForCheck();
111
- });
83
+ this.initTree();
112
84
  }
113
85
  }
114
86
  ngOnDestroy() {
@@ -255,6 +227,29 @@ export class EuiTreeComponent {
255
227
  console.warn('treeItemModel.node.selectable is false, you can not implement onSelect');
256
228
  };
257
229
  }
230
+ initTree() {
231
+ if (this.nodes) {
232
+ this.nodes = this.processInputs(structuredClone(this.nodes));
233
+ this.createTreeDataRuntime(this.nodes);
234
+ this.cdkArrayDataSource = new ArrayDataSource(this.treeDataRunTime);
235
+ this.cdkTreeControl = new NestedTreeControl((node) => node?.children);
236
+ this.cdkTreeControl.dataNodes = this.treeDataRunTime;
237
+ this.renderInitialExpand(this.treeDataRunTime);
238
+ this.selectionModel = new SelectionModel(true, this.getInitialSelection(this.treeDataRunTime), true, (a, b) => a?.path === b?.path);
239
+ this.renderTree = true;
240
+ if (this.selectionModelSubs) {
241
+ this.selectionModelSubs.unsubscribe();
242
+ }
243
+ this.selectionModelSubs = this.selectionModel.changed.subscribe((sc) => {
244
+ this.selectionChange.emit({
245
+ added: sc.added.map((_) => this.getTreeItem(_.path)),
246
+ removed: sc.removed.map((_) => this.getTreeItem(_.path)),
247
+ selection: [...this.selectionModel.selected].map((item) => this.getTreeItem(item.path)),
248
+ });
249
+ });
250
+ this.changeDetectorRef.markForCheck();
251
+ }
252
+ }
258
253
  processInputs(treeData) {
259
254
  if (this.isMultiselect) {
260
255
  treeData = this.overrideTreeDataModelForSelection(treeData, this.isRecursiveSelection, !this.isRecursiveParentSelection);
@@ -560,4 +555,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImpor
560
555
  exports: [EuiTreeComponent],
561
556
  }]
562
557
  }] });
563
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLXRyZWUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vZXVpLXRyZWUvZXVpLXRyZWUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vZXVpLXRyZWUvZXVpLXRyZWUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCxLQUFLLEVBQ0wsUUFBUSxFQUNSLHVCQUF1QixFQUN2QixZQUFZLEVBQ1osTUFBTSxFQUNOLGlCQUFpQixFQU1qQixXQUFXLEdBRWQsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQVMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDNUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDckUsT0FBTyxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRSxPQUFPLEVBQWdCLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDNUUsT0FBTyxFQUFF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QWlkWCxNQUFNLE9BQU8sYUFBYTtpSUFBYixhQUFhO2tJQUFiLGFBQWEsaUJBN2dCYixnQkFBZ0IsYUE2ZnJCLFlBQVk7WUFDWixZQUFZO1lBQ1osV0FBVztZQUNYLGVBQWU7WUFDZixzQkFBc0I7WUFDdEIsYUFBYTtZQUNiLGVBQWU7WUFDZixhQUFhO1lBQ2IsY0FBYztZQUNkLGNBQWM7WUFDZCxhQUFhO1lBQ2IsaUJBQWlCLGFBeGdCWixnQkFBZ0I7a0lBNmdCaEIsYUFBYSxZQWhCbEIsWUFBWTtZQUNaLFlBQVk7WUFDWixXQUFXO1lBQ1gsZUFBZTtZQUNmLHNCQUFzQjtZQUN0QixhQUFhO1lBQ2IsZUFBZTtZQUNmLGFBQWE7WUFDYixjQUFjO1lBQ2QsY0FBYztZQUNkLGFBQWE7WUFDYixpQkFBaUI7OzJGQUtaLGFBQWE7a0JBbEJ6QixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxlQUFlO3dCQUNmLHNCQUFzQjt3QkFDdEIsYUFBYTt3QkFDYixlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsY0FBYzt3QkFDZCxjQUFjO3dCQUNkLGFBQWE7d0JBQ2IsaUJBQWlCO3FCQUNwQjtvQkFDRCxZQUFZLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztvQkFDaEMsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7aUJBQzlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgSW5wdXQsXG4gICAgTmdNb2R1bGUsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIE91dHB1dCxcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIE9uSW5pdCxcbiAgICBPbkNoYW5nZXMsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgT25EZXN0cm95LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtcbiAgICBTZWxlY3Rpb25SZWN1cnNpdmVTdGF0ZSxcbiAgICBUcmVlRGF0YU1vZGVsLFxuICAgIFRyZWVJdGVtTW9kZWwsXG4gICAgVHJlZURhdGFSdW5UaW1lTW9kZWwsXG4gICAgVHJlZUl0ZW1SdW5UaW1lTW9kZWwsXG4gICAgRXVpVHJlZVNlbGVjdGlvbkNoYW5nZXMsXG59IGZyb20gJy4vZXVpLXRyZWUubW9kZWwnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBFdWlJbnB1dENoZWNrYm94TW9kdWxlIH0gZnJvbSAnQGV1aS9jb21wb25lbnRzL2V1aS1pbnB1dC1jaGVja2JveCc7XG5pbXBvcnQgeyBFdWlCdXR0b25Nb2R1bGUgfSBmcm9tICdAZXVpL2NvbXBvbmVudHMvZXVpLWJ1dHRvbic7XG5pbXBvcnQgeyBFdWlJY29uTW9kdWxlIH0gZnJvbSAnQGV1aS9jb21wb25lbnRzL2V1aS1pY29uJztcbmltcG9ydCB7IEV1aUxhYmVsTW9kdWxlIH0gZnJvbSAnQGV1aS9jb21wb25lbnRzL2V1aS1sYWJlbCc7XG5pbXBvcnQgeyBFdWlCYWRnZU1vZHVsZSB9IGZyb20gJ0BldWkvY29tcG9uZW50cy9ldWktYmFkZ2UnO1xuaW1wb3J0IHsgRXVpQ2hpcE1vZHVsZSB9IGZyb20gJ0BldWkvY29tcG9uZW50cy9ldWktY2hpcCc7XG5pbXBvcnQgeyBFdWlEcm9wZG93bk1vZHVsZSB9IGZyb20gJ0BldWkvY29tcG9uZW50cy9ldWktZHJvcGRvd24nO1xuaW1wb3J0IHsgTmVzdGVkVHJlZUNvbnRyb2wsIENka1RyZWVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvdHJlZSc7XG5pbXBvcnQgeyBBcnJheURhdGFTb3VyY2UsIFNlbGVjdGlvbk1vZGVsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvbGxlY3Rpb25zJztcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2V1aS10cmVlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZXVpLXRyZWUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3N0eWxlcy9faW5kZXguc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIEV1aVRyZWVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJykgc3RyaW5nID0gJ2V1aS10cmVlJztcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1lMmUnKSBASW5wdXQoKSBlMmVBdHRyID0gJ2V1aS10cmVlJztcbiAgICBASW5wdXQoKSBub2RlczogVHJlZURhdGFNb2RlbDtcbiAgICBASW5wdXQoKSBub2RlVGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgQElucHV0KCkgbm9kZUNvbnRlbnRNZXRhZGF0YVRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIEBJbnB1dCgpIHJpZ2h0Q29udGV4dE1lbnVUZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PjtcbiAgICBASW5wdXQoKSBleHBhbmRlZEljb25DbGFzczogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGNvbGxhcHNlZEljb25DbGFzczogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGV4cGFuZGVkU3ZnSWNvbkNsYXNzID0gJ2V1aS1jaGV2cm9uLWZvcndhcmQ6ZXVpJztcbiAgICBASW5wdXQoKSBjb2xsYXBzZWRTdmdJY29uQ2xhc3MgPSAnZXVpLWNoZXZyb24tZG93bjpldWknO1xuXG4gICAgLy8gQFZpZXdDaGlsZCgndHJlZUNvbXBvbmVudEluc3RhbmNlJykgcHVibGljIHRyZWVDb21wb25lbnRJbnN0YW5jZTogYW55O1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGlzQ2xpY2tUb2dnbGluZ05vZGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc0NsaWNrVG9nZ2xpbmdOb2RlO1xuICAgIH1cblxuICAgIHNldCBpc0NsaWNrVG9nZ2xpbmdOb2RlKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faXNDbGlja1RvZ2dsaW5nTm9kZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBnZXQgaXNNdWx0aXNlbGVjdCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzTXVsdGlzZWxlY3Q7XG4gICAgfVxuXG4gICAgc2V0IGlzTXVsdGlzZWxlY3QodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9pc011bHRpc2VsZWN0ID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIGdldCBpc1JlY3Vyc2l2ZVNlbGVjdGlvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzUmVjdXJzaXZlU2VsZWN0aW9uO1xuICAgIH1cblxuICAgIHNldCBpc1JlY3Vyc2l2ZVNlbGVjdGlvbih2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2lzUmVjdXJzaXZlU2VsZWN0aW9uID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIGdldCBpc1JlY3Vyc2l2ZVBhcmVudFNlbGVjdGlvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzUmVjdXJzaXZlUGFyZW50U2VsZWN0aW9uO1xuICAgIH1cblxuICAgIHNldCBpc1JlY3Vyc2l2ZVBhcmVudFNlbGVjdGlvbih2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2lzUmVjdXJzaXZlUGFyZW50U2VsZWN0aW9uID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIGdldCBhdXRvVHJhbnNsYXRlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fYXV0b1RyYW5zbGF0ZTtcbiAgICB9XG5cbiAgICBzZXQgYXV0b1RyYW5zbGF0ZSh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2F1dG9UcmFuc2xhdGUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cblxuICAgIEBPdXRwdXQoKSBzZWxlY3Rpb25DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPEV1aVRyZWVTZWxlY3Rpb25DaGFuZ2VzPigpO1xuICAgIEBPdXRwdXQoKSBub2RlQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPFRyZWVJdGVtTW9kZWw+KCk7XG4gICAgQE91dHB1dCgpIG5vZGVUb2dnbGUgPSBuZXcgRXZlbnRFbWl0dGVyPFRyZWVJdGVtTW9kZWw+KCk7XG4gICAgY2RrQXJyYXlEYXRhU291cmNlOiBBcnJheURhdGFTb3VyY2U8VHJlZUl0ZW1Nb2RlbD47XG4gICAgY2RrVHJlZUNvbnRyb2w6IE5lc3RlZFRyZWVDb250cm9sPFRyZWVJdGVtTW9kZWw+O1xuICAgIHJlbmRlclRyZWU6IGJvb2xlYW47XG4gICAgcHVibGljIHVpZDogc3RyaW5nID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogMTAwMDAwMDAwMCkudG9TdHJpbmcoKTtcbiAgICBwcml2YXRlIHRyZWVEYXRhUnVuVGltZTogVHJlZURhdGFSdW5UaW1lTW9kZWw7XG4gICAgcHJpdmF0ZSBydW5UaW1lU2VsZWN0aW9uUmVjdXJzaXZlU3RhdGU6IFRyZWVEYXRhUnVuVGltZU1vZGVsO1xuICAgIHByaXZhdGUgc2VsZWN0aW9uTW9kZWw6IFNlbGVjdGlvbk1vZGVsPFRyZWVJdGVtUnVuVGltZU1vZGVsPjtcbiAgICBwcml2YXRlIGZpbHRlcmVkVHJlZURhdGE6IFRyZWVEYXRhTW9kZWw7XG4gICAgcHJpdmF0ZSBfaXNDbGlja1RvZ2dsaW5nTm9kZSA9IGZhbHNlO1xuICAgIHByaXZhdGUgX2lzTXVsdGlzZWxlY3QgPSBmYWxzZTtcbiAgICBwcml2YXRlIF9pc1JlY3Vyc2l2ZVNlbGVjdGlvbiA9IGZhbHNlO1xuICAgIHByaXZhdGUgX2lzUmVjdXJzaXZlUGFyZW50U2VsZWN0aW9uID0gdHJ1ZTtcbiAgICBwcml2YXRlIF9hdXRvVHJhbnNsYXRlID0gdHJ1ZTtcbiAgICBwcml2YXRlIHNlbGVjdGlvbk1vZGVsU3VicztcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIC8vIERlZXAgY29weSB0byB0aGUgYXJyYXkuXG4gICAgICAgIGlmICh0aGlzLm5vZGVzKSB7XG4gICAgICAgICAgICB0aGlzLm5vZGVzID0gdGhpcy5wcm9jZXNzSW5wdXRzKHN0cnVjdHVyZWRDbG9uZSh0aGlzLm5vZGVzKSk7XG4gICAgICAgICAgICB0aGlzLmNyZWF0ZVRyZWVEYXRhUnVudGltZSh0aGlzLm5vZGVzKTtcbiAgICAgICAgICAgIHRoaXMuY2RrQXJyYXlEYXRhU291cmNlID0gbmV3IEFycmF5RGF0YVNvdXJjZSh0aGlzLnRyZWVEYXRhUnVuVGltZSk7XG4gICAgICAgICAgICB0aGlzLmNka1RyZWVDb250cm9sID0gbmV3IE5lc3RlZFRyZWVDb250cm9sPFRyZWVJdGVtUnVuVGltZU1vZGVsPigobm9kZSkgPT4gbm9kZT8uY2hpbGRyZW4pO1xuICAgICAgICAgICAgdGhpcy5jZGtUcmVlQ29udHJvbC5kYXRhTm9kZXMgPSB0aGlzLnRyZWVEYXRhUnVuVGltZTtcbiAgICAgICAgICAgIHRoaXMucmVuZGVySW5pdGlhbEV4cGFuZCh0aGlzLnRyZWVEYXRhUnVuVGltZSk7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGlvbk1vZGVsID0gbmV3IFNlbGVjdGlvbk1vZGVsPFRyZWVJdGVtUnVuVGltZU1vZGVsPihcbiAgICAgICAgICAgICAgICB0cnVlLFxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0SW5pdGlhbFNlbGVjdGlvbih0aGlzLnRyZWVEYXRhUnVuVGltZSksXG4gICAgICAgICAgICAgICAgdHJ1ZSxcbiAgICAgICAgICAgICAgICAoYSwgYikgPT4gYT8ucGF0aCA9PT0gYj8ucGF0aFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyVHJlZSA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGlvbk1vZGVsU3VicyA9IHRoaXMuc2VsZWN0aW9uTW9kZWwuY2hhbmdlZC5zdWJzY3JpYmUoKHNjKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3Rpb25DaGFuZ2UuZW1pdCh7XG4gICAgICAgICAgICAgICAgICAgIGFkZGVkOiBzYy5hZGRlZC5tYXAoKF8pID0+IHRoaXMuZ2V0VHJlZUl0ZW0oXy5wYXRoKSksXG4gICAgICAgICAgICAgICAgICAgIHJlbW92ZWQ6IHNjLnJlbW92ZWQubWFwKChfKSA9PiB0aGlzLmdldFRyZWVJdGVtKF8ucGF0aCkpLFxuICAgICAgICAgICAgICAgICAgICBzZWxlY3Rpb246IFsuLi50aGlzLnNlbGVjdGlvbk1vZGVsLnNlbGVjdGVkXS5tYXAoKGl0ZW0pID0+IHRoaXMuZ2V0VHJlZUl0ZW0oaXRlbS5wYXRoKSksXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChjaGFuZ2VzWydub2RlcyddLmN1cnJlbnRWYWx1ZSAhPT0gY2hhbmdlc1snbm9kZXMnXS5wcmV2aW91c1ZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLnJlbmRlclRyZWUgPSBmYWxzZTtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMubm9kZXMgPSB0aGlzLnByb2Nlc3NJbnB1dHMoc3RydWN0dXJlZENsb25lKHRoaXMubm9kZXMpKTtcbiAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZVRyZWVEYXRhUnVudGltZSh0aGlzLm5vZGVzKTtcbiAgICAgICAgICAgICAgICB0aGlzLmNka0FycmF5RGF0YVNvdXJjZSA9IG5ldyBBcnJheURhdGFTb3VyY2UodGhpcy50cmVlRGF0YVJ1blRpbWUpO1xuICAgICAgICAgICAgICAgIHRoaXMuY2RrVHJlZUNvbnRyb2wgPSBuZXcgTmVzdGVkVHJlZUNvbnRyb2w8VHJlZUl0ZW1SdW5UaW1lTW9kZWw+KChub2RlKSA9PiBub2RlPy5jaGlsZHJlbik7XG4gICAgICAgICAgICAgICAgdGhpcy5jZGtUcmVlQ29udHJvbC5kYXRhTm9kZXMgPSB0aGlzLnRyZWVEYXRhUnVuVGltZTtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlckluaXRpYWxFeHBhbmQodGhpcy50cmVlRGF0YVJ1blRpbWUpO1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uTW9kZWwgPSBuZXcgU2VsZWN0aW9uTW9kZWw8VHJlZUl0ZW1SdW5UaW1lTW9kZWw+KFxuICAgICAgICAgICAgICAgICAgICB0cnVlLFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmdldEluaXRpYWxTZWxlY3Rpb24odGhpcy50cmVlRGF0YVJ1blRpbWUpLFxuICAgICAgICAgICAgICAgICAgICB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAoYSwgYikgPT4gYT8ucGF0aCA9PT0gYj8ucGF0aFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJUcmVlID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuc2VsZWN0aW9uTW9kZWxTdWJzKSB7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGlvbk1vZGVsU3Vicy51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdHJhY2tCeShpbmRleDogbnVtYmVyLCBlbDogYW55KTogYW55IHtcbiAgICAgICAgcmV0dXJuIGVsLnBhcmVudDtcbiAgICB9XG5cbiAgICBnZXRUcmVlSXRlbShwYXRoOiBzdHJpbmcpOiBUcmVlSXRlbU1vZGVsIHtcbiAgICAgICAgY29uc3QgaW5kZXhBcnI6IEFycmF5PG51bWJlcj4gPSB0aGlzLnJlc29sdmVQYXRoKHBhdGgpO1xuICAgICAgICBsZXQgbm9kZUFyciA9IHRoaXMubm9kZXM7XG4gICAgICAgIGxldCBub2RlO1xuICAgICAgICBpZiAobm9kZUFyciAmJiBBcnJheS5pc0FycmF5KG5vZGVBcnIpKSB7XG4gICAgICAgICAgICBpbmRleEFycj8uZm9yRWFjaCgocGF0aEluZGV4OiBudW1iZXIsIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGluZGV4IDwgaW5kZXhBcnIubGVuZ3RoIC0gMSkge1xuICAgICAgICAgICAgICAgICAgICBub2RlQXJyID0gbm9kZUFyciAmJiBub2RlQXJyW3BhdGhJbmRleF0/LmNoaWxkcmVuO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIG5vZGUgPSBub2RlQXJyW3BhdGhJbmRleF07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG5vZGU7XG4gICAgfVxuXG4gICAgZXhwYW5kQWxsKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNka1RyZWVDb250cm9sLmV4cGFuZEFsbCgpO1xuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIGV4cGFuZEF0KHBhdGg6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLmNka1RyZWVDb250cm9sLmV4cGFuZERlc2NlbmRhbnRzKHRoaXMuZ2V0UnVuVGltZVRyZWVJdGVtKHBhdGhbMF0pKTtcbiAgICAgICAgdGhpcy5jZGtUcmVlQ29udHJvbC50b2dnbGVEZXNjZW5kYW50cyh0aGlzLmdldFJ1blRpbWVUcmVlSXRlbShwYXRoKSk7XG4gICAgICAgIHRoaXMuY2RrVHJlZUNvbnRyb2wuZXhwYW5kKHRoaXMuZ2V0UnVuVGltZVRyZWVJdGVtKHBhdGgpKTtcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICBjb2xsYXBzZUFsbCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jZGtUcmVlQ29udHJvbC5jb2xsYXBzZUFsbCgpO1xuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIGZpbHRlclRlcm0oZmlsdGVySW5wdXQ6IHN0cmluZykge1xuICAgICAgICBjb25zdCB0cmVlRGF0YSA9IHN0cnVjdHVyZWRDbG9uZSh0aGlzLm5vZGVzKTtcbiAgICAgICAgaWYgKGZpbHRlcklucHV0ICYmIGZpbHRlcklucHV0ICE9PSAnJykge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJUcmVlID0gZmFsc2U7XG4gICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgICAgdGhpcy5maWx0ZXJlZFRyZWVEYXRhID0gdGhpcy5maWx0ZXJUcmVlRGF0YSh0cmVlRGF0YSwgJ2xhYmVsJywgZmlsdGVySW5wdXQpO1xuICAgICAgICAgICAgdGhpcy5jcmVhdGVUcmVlRGF0YVJ1bnRpbWUodGhpcy5maWx0ZXJlZFRyZWVEYXRhKTtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuY2RrQXJyYXlEYXRhU291cmNlID0gbmV3IEFycmF5RGF0YVNvdXJjZSh0aGlzLnRyZWVEYXRhUnVuVGltZSk7XG4gICAgICAgICAgICAgICAgdGhpcy5jZGtUcmVlQ29udHJvbCA9IG5ldyBOZXN0ZWRUcmVlQ29udHJvbDxUcmVlSXRlbVJ1blRpbWVNb2RlbD4oKG5vZGUpID0+IG5vZGU/LmNoaWxkcmVuKTtcbiAgICAgICAgICAgICAgICB0aGlzLmNka1RyZWVDb250cm9sLmRhdGFOb2RlcyA9IHRoaXMudHJlZURhdGFSdW5UaW1lO1xuICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyVHJlZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJUcmVlID0gZmFsc2U7XG4gICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgICAgdGhpcy5jcmVhdGVUcmVlRGF0YVJ1bnRpbWUodGhpcy5ub2Rlcyk7XG4gICAgICAgICAgICB0aGlzLmZpbHRlcmVkVHJlZURhdGEgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmNka0FycmF5RGF0YVNvdXJjZSA9IG5ldyBBcnJheURhdGFTb3VyY2UodGhpcy50cmVlRGF0YVJ1blRpbWUpO1xuICAgICAgICAgICAgICAgIHRoaXMuY2RrVHJlZUNvbnRyb2wgPSBuZXcgTmVzdGVkVHJlZUNvbnRyb2w8VHJlZUl0ZW1SdW5UaW1lTW9kZWw+KChub2RlKSA9PiBub2RlPy5jaGlsZHJlbik7XG4gICAgICAgICAgICAgICAgdGhpcy5jZGtUcmVlQ29udHJvbC5kYXRhTm9kZXMgPSB0aGlzLnRyZWVEYXRhUnVuVGltZTtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlclRyZWUgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNldEFsbFNlbGVjdGlvbihpc0NoZWNrZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZXRJc0NoZWNrZWRGb3JBbGwodGhpcy5ub2RlcywgaXNDaGVja2VkLCB0aGlzLnRyZWVEYXRhUnVuVGltZSk7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgb25Ob2RlQ2xpY2sodHJlZUl0ZW06IFRyZWVJdGVtUnVuVGltZU1vZGVsKTogdm9pZCB7XG4gICAgICAgIHRoaXMubm9kZUNsaWNrLmVtaXQodGhpcy5nZXRUcmVlSXRlbSh0cmVlSXRlbT8ucGF0aCkpO1xuICAgICAgICBpZiAodGhpcy5pc0NsaWNrVG9nZ2xpbmdOb2RlKSB7XG4gICAgICAgICAgICB0aGlzLmNka1RyZWVDb250cm9sLnRvZ2dsZSh0cmVlSXRlbSk7XG4gICAgICAgICAgICB0aGlzLm9uTm9kZVRvZ2dsZSh0cmVlSXRlbSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbk5vZGVUb2dnbGUodHJlZUl0ZW06IFRyZWVJdGVtUnVuVGltZU1vZGVsKTogdm9pZCB7XG4gICAgICAgIHRoaXMubm9kZVRvZ2dsZS5lbWl0KHRoaXMuZ2V0VHJlZUl0ZW0odHJlZUl0ZW0/LnBhdGgpKTtcbiAgICB9XG5cbiAgICBub2RlU2VsZWN0ZWQoZXZ0OiBhbnksIHBhdGg6IHN0cmluZywgdHJlZUl0ZW1Nb2RlbDogVHJlZUl0ZW1SdW5UaW1lTW9kZWwpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaXRlbSA9IHRoaXMuZ2V0VHJlZUl0ZW0ocGF0aCk7XG4gICAgICAgIGNvbnN0IG5vZGUgPSBpdGVtLm5vZGU7XG4gICAgICAgIGNvbnN0IGNoaWxkcmVuID0gaXRlbS5jaGlsZHJlbjtcbiAgICAgICAgY29uc3QgcGF0aEFyciA9IHBhdGguc3BsaXQoJy4nKTtcbiAgICAgICAgY29uc3QgaGFzUGFyZW50ID0gcGF0aEFyci5sZW5ndGggPiAxO1xuICAgICAgICBpZiAoaGFzUGFyZW50KSB7XG4gICAgICAgICAgICBwYXRoQXJyLnBvcCgpO1xuICAgICAgICB9XG4gICAgICAgIG5vZGUuaXNTZWxlY3RlZCA9IGV2dC50YXJnZXQuY2hlY2tlZDtcbiAgICAgICAgaWYgKG5vZGUuaXNTZWxlY3RlZCkge1xuICAgICAgICAgICAgdGhpcy5zZWxlY3RUcmVlSXRlbSh0cmVlSXRlbU1vZGVsKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZGVzZWxlY3RUcmVlSXRlbSh0cmVlSXRlbU1vZGVsKTtcbiAgICAgICAgfVxuICAgICAgICBub2RlLmlzSW5kZXRlcm1pbmF0ZSA9IGZhbHNlO1xuICAgICAgICBpZiAoY2hpbGRyZW4gJiYgY2hpbGRyZW4ubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgaWYgKG5vZGU/LnNlbGVjdENvbmZpZz8ucmVjdXJzaXZlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXRJc0NoZWNrZWRGb3JBbGwoY2hpbGRyZW4sIGV2dC50YXJnZXQuY2hlY2tlZCwgdHJlZUl0ZW1Nb2RlbD8uY2hpbGRyZW4pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHRoaXMucnVuVGltZVNlbGVjdGlvblJlY3Vyc2l2ZVN0YXRlW3BhcnNlSW50KHBhdGhBcnJbMF0sIDEwKV0gPSB0aGlzLmNhbGN1bGF0ZUl0ZW1TZWxlY3Rpb25SZWN1cnNpdmVTdGF0ZShcbiAgICAgICAgICAgIHN0cnVjdHVyZWRDbG9uZSh0aGlzLmdldFRyZWVJdGVtKHBhdGhBcnJbMF0pKVxuICAgICAgICApO1xuICAgICAgICBpZiAoaGFzUGFyZW50KSB7XG4gICAgICAgICAgICAvLyBDYWxjdWxhdGVzIHBhcmVudCBwYXRoXG4gICAgICAgICAgICBjb25zdCBwYXJlbnRQYXRoID0gcGF0aEFyci5qb2luKCcuJyk7XG4gICAgICAgICAgICAvLyBDcmVhdGluZyBub2RlIGluZGV4IHNlcXVlbmNlIGYuZSBJZiBwYXRoIGlzICcxLjInIGl0IHdpbGwgYmUgWzEsMl1cbiAgICAgICAgICAgIGNvbnN0IG5vZGVJbmRleFNlcSA9IHBhcmVudFBhdGguc3BsaXQoJy4nKS5tYXAoKGluZGV4U3RyKSA9PiBwYXJzZUludChpbmRleFN0ciwgMTApKTtcbiAgICAgICAgICAgIC8vIENhbGN1bGF0aW5nIHRoZSBub2RlIHBhdGhzIGFycmF5IHRvIGJlIHJlLWNhbGN1bGF0ZWQgZnJvbSBib3R0b20gdG8gdG9wXG4gICAgICAgICAgICBjb25zdCBub2RlUGF0aHNTZXEgPSBbXTtcbiAgICAgICAgICAgIG5vZGVJbmRleFNlcS5mb3JFYWNoKChub2RlSW5kZXgsIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgbm9kZVBhdGhzU2VxW2luZGV4XSA9IG5vZGVJbmRleFNlcS5zbGljZSgwLCBpbmRleCArIDEpLmpvaW4oJy4nKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgbm9kZVBhdGhzU2VxLmZvckVhY2goKG5vZGVQYXRoOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCB0cmVlSXRlbSA9IHRoaXMuZ2V0VHJlZUl0ZW0obm9kZVBhdGgpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHJ1blRpbWVUcmVlSXRlbSA9IHRoaXMuZ2V0UnVuVGltZVNlbGVjdGlvblJlY3Vyc2l2ZVN0YXRlKG5vZGVQYXRoKTtcbiAgICAgICAgICAgICAgICBpZiAodHJlZUl0ZW0/Lm5vZGU/LnNlbGVjdGFibGUgJiYgdHJlZUl0ZW0ubm9kZT8uc2VsZWN0Q29uZmlnPy5yZWN1cnNpdmUpIHtcbiAgICAgICAgICAgICAgICAgICAgdHJlZUl0ZW0ubm9kZS5pc1NlbGVjdGVkID0gcnVuVGltZVRyZWVJdGVtLnNlbGVjdGlvblJlY3Vyc2l2ZVN0YXRlID09PSAnYWxsU2VsZWN0ZWQnO1xuICAgICAgICAgICAgICAgICAgICB0cmVlSXRlbS5ub2RlLmlzSW5kZXRlcm1pbmF0ZSA9IHJ1blRpbWVUcmVlSXRlbS5zZWxlY3Rpb25SZWN1cnNpdmVTdGF0ZSA9PT0gJ2luZGV0ZXJtaW5hdGUnO1xuICAgICAgICAgICAgICAgICAgICBpZiAodHJlZUl0ZW0ubm9kZS5pc1NlbGVjdGVkID09PSB0cnVlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBydW5UaW1lVHJlZUl0ZW0ubm9kZS5pc1NlbGVjdGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoaXMuY2RrVHJlZUNvbnRyb2wuZGF0YU5vZGVzID0gdGhpcy50cmVlRGF0YVJ1blRpbWU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdFRyZWVJdGVtKHJ1blRpbWVUcmVlSXRlbSk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBydW5UaW1lVHJlZUl0ZW0ubm9kZS5pc1NlbGVjdGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoaXMuY2RrVHJlZUNvbnRyb2wuZGF0YU5vZGVzID0gdGhpcy50cmVlRGF0YVJ1blRpbWU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRlc2VsZWN0VHJlZUl0ZW0ocnVuVGltZVRyZWVJdGVtKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBkZWJ1Z2dlclxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoYXNDaGlsZCA9IChfOiBudW1iZXIsIGl0ZW06IFRyZWVJdGVtUnVuVGltZU1vZGVsKSA9PiAhIWl0ZW0/LmNoaWxkcmVuICYmIGl0ZW0/LmNoaWxkcmVuPy5sZW5ndGggPiAwO1xuXG4gICAgb25TZWxlY3RGbihwYXRoOiBzdHJpbmcsIHRyZWVJdGVtTW9kZWw6IFRyZWVJdGVtUnVuVGltZU1vZGVsKTogKGV2dDogYW55KSA9PiB2b2lkIHtcbiAgICAgICAgaWYgKHRyZWVJdGVtTW9kZWw/Lm5vZGU/LnNlbGVjdGFibGUpIHtcbiAgICAgICAgICAgIGNvbnN0IG5vZGVTZWxlY3RlZCA9IHRoaXMubm9kZVNlbGVjdGVkLmJpbmQodGhpcyk7XG4gICAgICAgICAgICByZXR1cm4gKGV2dDogYW55KSA9PiBub2RlU2VsZWN0ZWQoZXZ0LCBwYXRoLCB0cmVlSXRlbU1vZGVsKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gKGV2dDogYW55KSA9PiB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oJ3RyZWVJdGVtTW9kZWwubm9kZS5zZWxlY3RhYmxlIGlzIGZhbHNlLCB5b3UgY2FuIG5vdCBpbXBsZW1lbnQgb25TZWxlY3QnKTtcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHByb2Nlc3NJbnB1dHModHJlZURhdGE6IFRyZWVEYXRhTW9kZWwpOiBUcmVlRGF0YU1vZGVsIHtcbiAgICAgICAgaWYgKHRoaXMuaXNNdWx0aXNlbGVjdCkge1xuICAgICAgICAgICAgdHJlZURhdGEgPSB0aGlzLm92ZXJyaWRlVHJlZURhdGFNb2RlbEZvclNlbGVjdGlvbih0cmVlRGF0YSwgdGhpcy5pc1JlY3Vyc2l2ZVNlbGVjdGlvbiwgIXRoaXMuaXNSZWN1cnNpdmVQYXJlbnRTZWxlY3Rpb24pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0cmVlRGF0YTtcbiAgICB9XG5cbiAgICBwcml2YXRlIG92ZXJyaWRlVHJlZURhdGFNb2RlbEZvclNlbGVjdGlvbihub2RlQXJyOiBUcmVlRGF0YU1vZGVsLCBpc1JlY3Vyc2l2ZTogYm9vbGVhbiwgbm9BdXRvU2VsZWN0UGFyZW50OiBib29sZWFuKTogVHJlZURhdGFNb2RlbCB7XG4gICAgICAgIHJldHVybiBub2RlQXJyPy5tYXAoKGl0ZW06IFRyZWVJdGVtTW9kZWwsIGluZGV4OiBudW1iZXIpID0+IHtcbiAgICAgICAgICAgIGlmIChpdGVtPy5jaGlsZHJlbiAmJiBpdGVtLmNoaWxkcmVuLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICAuLi5pdGVtLFxuICAgICAgICAgICAgICAgICAgICBub2RlOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuLi5pdGVtLm5vZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3RhYmxlOiB0eXBlb2YgaXRlbT8ubm9kZT8uc2VsZWN0YWJsZSA9PT0gJ3VuZGVmaW5lZCcgPyB0cnVlIDogaXRlbT8ubm9kZT8uc2VsZWN0YWJsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGlzU2VsZWN0ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gaXNJbmRldGVybWluYXRlOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdENvbmZpZzoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLml0ZW0ubm9kZS5zZWxlY3RDb25maWcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVjdXJzaXZlOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlb2YgaXRlbT8ubm9kZT8uc2VsZWN0Q29uZmlnPy5yZWN1cnNpdmUgPT09ICd1bmRlZmluZWQnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/ICEhaXNSZWN1cnNpdmVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogaXRlbT8ubm9kZT8uc2VsZWN0Q29uZmlnPy5yZWN1cnNpdmUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbm9BdXRvU2VsZWN0UGFyZW50OlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlb2YgaXRlbT8ubm9kZT8uc2VsZWN0Q29uZmlnPy5ub0F1dG9TZWxlY3RQYXJlbnQgPT09ICd1bmRlZmluZWQnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IG5vQXV0b1NlbGVjdFBhcmVudFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBpdGVtPy5ub2RlPy5zZWxlY3RDb25maWc/Lm5vQXV0b1NlbGVjdFBhcmVudCxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIGNoaWxkcmVuOiB0aGlzLm92ZXJyaWRlVHJlZURhdGFNb2RlbEZvclNlbGVjdGlvbihpdGVtLmNoaWxkcmVuLCBpc1JlY3Vyc2l2ZSwgbm9BdXRvU2VsZWN0UGFyZW50KSxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICAuLi5pdGVtLFxuICAgICAgICAgICAgICAgICAgICBub2RlOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuLi5pdGVtLm5vZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3RhYmxlOiB0eXBlb2YgaXRlbT8ubm9kZT8uc2VsZWN0YWJsZSA9PT0gJ3VuZGVmaW5lZCcgPyB0cnVlIDogaXRlbT8ubm9kZT8uc2VsZWN0YWJsZSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFNlbGVjdGlvbkluZGV4T2ZJdGVtKHJ1blRpbWVUcmVlSXRlbTogVHJlZUl0ZW1SdW5UaW1lTW9kZWwpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5zZWxlY3Rpb25Nb2RlbC5zZWxlY3RlZC5maW5kSW5kZXgoKGkpID0+IGk/LnBhdGggPT09IHJ1blRpbWVUcmVlSXRlbT8ucGF0aCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZWxlY3RUcmVlSXRlbShydW5UaW1lVHJlZUl0ZW06IFRyZWVJdGVtUnVuVGltZU1vZGVsKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGluZGV4T2ZJdGVtID0gdGhpcy5nZXRTZWxlY3Rpb25JbmRleE9mSXRlbShydW5UaW1lVHJlZUl0ZW0pO1xuICAgICAgICBpZiAoaW5kZXhPZkl0ZW0gPT09IC0xKSB7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGlvbk1vZGVsLnNlbGVjdChydW5UaW1lVHJlZUl0ZW0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBkZXNlbGVjdFRyZWVJdGVtKHJ1blRpbWVUcmVlSXRlbTogVHJlZUl0ZW1SdW5UaW1lTW9kZWwpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaW5kZXhPZkl0ZW0gPSB0aGlzLmdldFNlbGVjdGlvbkluZGV4T2ZJdGVtKHJ1blRpbWVUcmVlSXRlbSk7XG4gICAgICAgIGlmIChpbmRleE9mSXRlbSA+IC0xKSB7XG4gICAgICAgICAgICBjb25zdCBuZXdTZWxlY3Rpb24gPSBbLi4udGhpcy5zZWxlY3Rpb25Nb2RlbC5zZWxlY3RlZF07XG4gICAgICAgICAgICBuZXdTZWxlY3Rpb24uc3BsaWNlKGluZGV4T2ZJdGVtLCAxKTtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uTW9kZWwuc2V0U2VsZWN0aW9uKC4uLm5ld1NlbGVjdGlvbik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDcmVhdGVzIHRyZWVEYXRhUnVuVGltZSAmIHJ1blRpbWVTZWxlY3Rpb25SZWN1cnNpdmVTdGF0ZSBmb3Igc2VwYXJhdGUgdGhlIGxvZ2ljLlxuICAgIHByaXZhdGUgY3JlYXRlVHJlZURhdGFSdW50aW1lKG5vZGVzOiBUcmVlRGF0YU1vZGVsKTogdm9pZCB7XG4gICAgICAgIHRoaXMudHJlZURhdGFSdW5UaW1lID0gc3RydWN0dXJlZENsb25lKG5vZGVzKT8ubWFwKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY2FsY3VsYXRlUnVuVGltZVN0YXRlKHsgLi4uaXRlbSB9LCBpbmRleCk7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnJ1blRpbWVTZWxlY3Rpb25SZWN1cnNpdmVTdGF0ZSA9IHRoaXMudHJlZURhdGFSdW5UaW1lLm1hcCgoaXRlbSkgPT4gdGhpcy5jYWxjdWxhdGVJdGVtU2VsZWN0aW9uUmVjdXJzaXZlU3RhdGUoeyAuLi5pdGVtIH0pKTtcbiAgICB9XG5cbiAgICAvLyBDcmVhdGluZyBydW4gdGltZSBzdGF0ZSB3aGljaCBpbmNsdWRlcyBjaGlsZHJlbiBzZWxlY3Rpb24gc3RhdGUgZm9yIHNlbGVjdGlvbiB0cmVlLlxuICAgIHByaXZhdGUgY2FsY3VsYXRlSXRlbVNlbGVjdGlvblJlY3Vyc2l2ZVN0YXRlKHRyZWVJdGVtOiBUcmVlSXRlbVJ1blRpbWVNb2RlbCk6IFRyZWVJdGVtUnVuVGltZU1vZGVsIHtcbiAgICAgICAgbGV0IGNoaWxkU3RhdGVzID0gW107XG4gICAgICAgIGxldCBpdGVtU3RhdGU6IFNlbGVjdGlvblJlY3Vyc2l2ZVN0YXRlID0gJ2luZGV0ZXJtaW5hdGUnO1xuICAgICAgICBpZiAodHJlZUl0ZW0uY2hpbGRyZW4gJiYgdHJlZUl0ZW0uY2hpbGRyZW4ubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgdHJlZUl0ZW0uY2hpbGRyZW4uZm9yRWFjaCgoY2hpbGQsIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgdHJlZUl0ZW0uY2hpbGRyZW5baW5kZXhdID0gdGhpcy5jYWxjdWxhdGVJdGVtU2VsZWN0aW9uUmVjdXJzaXZlU3RhdGUoY2hpbGQpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBjb25zdCBydW5UaW1lSXRlbXMgPSB0cmVlSXRlbS5jaGlsZHJlbiBhcyBhbnk7XG4gICAgICAgICAgICBjaGlsZFN0YXRlcyA9IHJ1blRpbWVJdGVtcy5tYXAoKGl0ZW0pID0+IGl0ZW0uc2VsZWN0aW9uUmVjdXJzaXZlU3RhdGUpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0cmVlSXRlbS5ub2RlLmlzU2VsZWN0ZWQgJiYgY2hpbGRTdGF0ZXMuZXZlcnkoKHN0YXRlKSA9PiBzdGF0ZSA9PT0gJ2FsbFNlbGVjdGVkJykpIHtcbiAgICAgICAgICAgIGl0ZW1TdGF0ZSA9ICdhbGxTZWxlY3RlZCc7XG4gICAgICAgIH0gZWxzZSBpZiAoIXRyZWVJdGVtLm5vZGUuaXNTZWxlY3RlZCAmJiBjaGlsZFN0YXRlcy5ldmVyeSgoc3RhdGUpID0+IHN0YXRlID09PSAnYWxsTm90U2VsZWN0ZWQnKSkge1xuICAgICAgICAgICAgaXRlbVN0YXRlID0gJ2FsbE5vdFNlbGVjdGVkJztcbiAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICAgIHRyZWVJdGVtLm5vZGU/LnNlbGVjdENvbmZpZz8ucmVjdXJzaXZlICYmXG4gICAgICAgICAgICBjaGlsZFN0YXRlcy5ldmVyeSgoc3RhdGUpID0+IHN0YXRlID09PSAnYWxsU2VsZWN0ZWQnKSAmJlxuICAgICAgICAgICAgIXRyZWVJdGVtLm5vZGUuaXNTZWxlY3RlZFxuICAgICAgICApIHtcbiAgICAgICAgICAgIGlmICghdHJlZUl0ZW0/Lm5vZGU/LnNlbGVjdENvbmZpZz8ubm9BdXRvU2VsZWN0UGFyZW50KSB7XG4gICAgICAgICAgICAgICAgdHJlZUl0ZW0ubm9kZS5pc1NlbGVjdGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdFRyZWVJdGVtKHRyZWVJdGVtKTtcbiAgICAgICAgICAgICAgICBpdGVtU3RhdGUgPSAnYWxsU2VsZWN0ZWQnO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgICAgdHJlZUl0ZW0ubm9kZT8uc2VsZWN0Q29uZmlnPy5yZWN1cnNpdmUgJiZcbiAgICAgICAgICAgIGNoaWxkU3RhdGVzLmV2ZXJ5KChzdGF0ZSkgPT4gc3RhdGUgPT09ICdhbGxOb3RTZWxlY3RlZCcpICYmXG4gICAgICAgICAgICB0cmVlSXRlbS5ub2RlLmlzU2VsZWN0ZWRcbiAgICAgICAgKSB7XG4gICAgICAgICAgICB0cmVlSXRlbS5ub2RlLmlzU2VsZWN0ZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMuZGVzZWxlY3RUcmVlSXRlbSh0cmVlSXRlbSk7XG4gICAgICAgICAgICBpdGVtU3RhdGUgPSAnYWxsTm90U2VsZWN0ZWQnO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi50cmVlSXRlbSxcbiAgICAgICAgICAgIHNlbGVjdGlvblJlY3Vyc2l2ZVN0YXRlOiBpdGVtU3RhdGUsXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRSdW5UaW1lU2VsZWN0aW9uUmVjdXJzaXZlU3RhdGUocGF0aDogc3RyaW5nKTogVHJlZUl0ZW1SdW5UaW1lTW9kZWwge1xuICAgICAgICBjb25zdCBpbmRleEFycjogQXJyYXk8bnVtYmVyPiA9IHRoaXMucmVzb2x2ZVBhdGgocGF0aCk7XG4gICAgICAgIGxldCBub2RlQXJyID0gdGhpcy5ydW5UaW1lU2VsZWN0aW9uUmVjdXJzaXZlU3RhdGU7XG4gICAgICAgIGxldCBub2RlO1xuICAgICAgICBpbmRleEFyci5mb3JFYWNoKChwYXRoSW5kZXg6IG51bWJlciwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGlmIChpbmRleCA8IGluZGV4QXJyLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgICAgICAgICBub2RlQXJyID0gbm9kZUFycltwYXRoSW5kZXhdPy5jaGlsZHJlbjtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgbm9kZSA9IG5vZGVBcnJbcGF0aEluZGV4XTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBub2RlO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0SXNDaGVja2VkRm9yQWxsKG5vZGVBcnI6IFRyZWVEYXRhTW9kZWwsIGlzQ2hlY2tlZDogYm9vbGVhbiwgcnVuVGltZVRyZWVEYXRhOiBUcmVlRGF0YVJ1blRpbWVNb2RlbCk6IHZvaWQge1xuICAgICAgICBub2RlQXJyLmZvckVhY2goKGl0ZW06IFRyZWVJdGVtTW9kZWwsIGluZGV4OiBudW1iZXIpID0+IHtcbiAgICAgICAgICAgIGlmIChydW5UaW1lVHJlZURhdGFbaW5kZXhdICYmIG5vZGVBcnJbaW5kZXhdPy5ub2RlPy5zZWxlY3RhYmxlKSB7XG4gICAgICAgICAgICAgICAgbm9kZUFycltpbmRleF0gPSB7XG4gICAgICAgICAgICAgICAgICAgIC4uLml0ZW0sXG4gICAgICAgICAgICAgICAgICAgIG5vZGU6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLml0ZW0ubm9kZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzU2VsZWN0ZWQ6IGlzQ2hlY2tlZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzSW5kZXRlcm1pbmF0ZTogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBpZiAoaXNDaGVja2VkKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0VHJlZUl0ZW0ocnVuVGltZVRyZWVEYXRhW2luZGV4XSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXNlbGVjdFRyZWVJdGVtKHJ1blRpbWVUcmVlRGF0YVtpbmRleF0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChydW5UaW1lVHJlZURhdGFbaW5kZXhdPy5jaGlsZHJlbj8ubGVuZ3RoID4gMCAmJiBub2RlQXJyW2luZGV4XS5jaGlsZHJlbiAmJiBub2RlQXJyW2luZGV4XS5jaGlsZHJlbi5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXRJc0NoZWNrZWRGb3JBbGwobm9kZUFycltpbmRleF0uY2hpbGRyZW4sIGlzQ2hlY2tlZCwgcnVuVGltZVRyZWVEYXRhW2luZGV4XS5jaGlsZHJlbik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVzb2x2ZVBhdGgocGF0aDogc3RyaW5nKTogQXJyYXk8bnVtYmVyPiB7XG4gICAgICAgIHJldHVybiBwYXRoPy5zcGxpdCgnLicpLm1hcCgoaW5kZXg6IHN0cmluZykgPT4gcGFyc2VJbnQoaW5kZXgsIDEwKSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVSdW5UaW1lU3RhdGUodHJlZUl0ZW06IFRyZWVJdGVtUnVuVGltZU1vZGVsLCBpbmRleDogbnVtYmVyLCBwYXJlbnRQYXRoPzogc3RyaW5nKTogVHJlZUl0ZW1SdW5UaW1lTW9kZWwge1xuICAgICAgICB0cmVlSXRlbS5wYXRoID0gcGFyZW50UGF0aCA/IHBhcmVudFBhdGggKyAnLicgKyBpbmRleCA6IGluZGV4LnRvU3RyaW5nKCk7XG4gICAgICAgIHRyZWVJdGVtLmluZGV4ID0gaW5kZXg7XG4gICAgICAgIGlmICh0cmVlSXRlbS5jaGlsZHJlbiAmJiB0cmVlSXRlbS5jaGlsZHJlbi5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICB0cmVlSXRlbS5jaGlsZHJlbi5mb3JFYWNoKChjaGlsZCwgdHJlZUl0ZW1JbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgIHRyZWVJdGVtLmNoaWxkcmVuW3RyZWVJdGVtSW5kZXhdID0gdGhpcy5jYWxjdWxhdGVSdW5UaW1lU3RhdGUoY2hpbGQsIHRyZWVJdGVtSW5kZXgsIHRyZWVJdGVtLnBhdGgpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRyZWVJdGVtO1xuICAgIH1cblxuICAgIHByaXZhdGUgZmlsdGVyVHJlZURhdGEodHJlZURhdGE6IFRyZWVEYXRhTW9kZWwsIGtleTogc3RyaW5nID0gJ2xhYmVsJywgZmlsdGVyU3RyOiBzdHJpbmcpIHtcbiAgICAgICAgcmV0dXJuIHRyZWVEYXRhLmZpbHRlcigodHJlZUl0ZW0pID0+IHtcbiAgICAgICAgICAgIGlmICh0cmVlSXRlbT8uY2hpbGRyZW4/Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICB0cmVlSXRlbS5jaGlsZHJlbiA9IHRoaXMuZmlsdGVyVHJlZURhdGEoWy4uLnRyZWVJdGVtLmNoaWxkcmVuXSwga2V5LCBmaWx0ZXJTdHIpO1xuICAgICAgICAgICAgICAgIHRyZWVJdGVtLmNoaWxkcmVuID0gdHJlZUl0ZW0uY2hpbGRyZW4ubGVuZ3RoID4gMCA/IHRyZWVJdGVtLmNoaWxkcmVuIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHRyZWVJdGVtLm5vZGUudHJlZUNvbnRlbnRCbG9jay5sYWJlbC5pbmNsdWRlcyhmaWx0ZXJTdHIpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHRyZWVJdGVtPy5jaGlsZHJlbj8ubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0cmVlSXRlbT8uY2hpbGRyZW4/Lmxlbmd0aCA+IDA7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRJbml0aWFsU2VsZWN0aW9uKG5vZGVzOiBUcmVlRGF0YVJ1blRpbWVNb2RlbCk6IEFycmF5PFRyZWVJdGVtUnVuVGltZU1vZGVsPiB7XG4gICAgICAgIGNvbnN0IHNlbGVjdGlvbjogQXJyYXk8VHJlZUl0ZW1SdW5UaW1lTW9kZWw+ID0gW107XG4gICAgICAgIHRoaXMuc2NhblNlbGVjdGlvbihub2Rlcywgc2VsZWN0aW9uKTtcbiAgICAgICAgcmV0dXJuIHNlbGVjdGlvbjtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNjYW5TZWxlY3Rpb24obm9kZXM6IFRyZWVEYXRhUnVuVGltZU1vZGVsLCBzZWxlY3Rpb246IEFycmF5PFRyZWVJdGVtUnVuVGltZU1vZGVsPikge1xuICAgICAgICBub2Rlcy5mb3JFYWNoKChpdGVtOiBUcmVlSXRlbVJ1blRpbWVNb2RlbCkgPT4ge1xuICAgICAgICAgICAgaWYgKGl0ZW0ubm9kZT8uc2VsZWN0YWJsZSAmJiBpdGVtLm5vZGUuaXNTZWxlY3RlZCkge1xuICAgICAgICAgICAgICAgIHNlbGVjdGlvbi5wdXNoKGl0ZW0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGl0ZW0/LmNoaWxkcmVuPy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zY2FuU2VsZWN0aW9uKGl0ZW0uY2hpbGRyZW4sIHNlbGVjdGlvbik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVuZGVySW5pdGlhbEV4cGFuZChub2RlczogVHJlZURhdGFSdW5UaW1lTW9kZWwpIHtcbiAgICAgICAgbm9kZXMuZm9yRWFjaCgoaXRlbTogVHJlZUl0ZW1SdW5UaW1lTW9kZWwpID0+IHtcbiAgICAgICAgICAgIGlmIChpdGVtPy5ub2RlPy5pc0V4cGFuZGVkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5leHBhbmRBdChpdGVtLnBhdGgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGl0ZW0/LmNoaWxkcmVuPy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJJbml0aWFsRXhwYW5kKGl0ZW0uY2hpbGRyZW4pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFJ1blRpbWVUcmVlSXRlbShwYXRoOiBzdHJpbmcpOiBUcmVlSXRlbU1vZGVsIHtcbiAgICAgICAgY29uc3QgaW5kZXhBcnI6IEFycmF5PG51bWJlcj4gPSB0aGlzLnJlc29sdmVQYXRoKHBhdGgpO1xuICAgICAgICBsZXQgbm9kZUFyciA9IHRoaXMudHJlZURhdGFSdW5UaW1lO1xuICAgICAgICBsZXQgbm9kZTtcbiAgICAgICAgaWYgKG5vZGVBcnIgJiYgQXJyYXkuaXNBcnJheShub2RlQXJyKSkge1xuICAgICAgICAgICAgaW5kZXhBcnI/LmZvckVhY2goKHBhdGhJbmRleDogbnVtYmVyLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChpbmRleCA8IGluZGV4QXJyLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgICAgICAgICAgICAgbm9kZUFyciA9IG5vZGVBcnIgJiYgbm9kZUFycltwYXRoSW5kZXhdPy5jaGlsZHJlbjtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBub2RlID0gbm9kZUFycltwYXRoSW5kZXhdO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBub2RlO1xuICAgIH1cbn1cblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgUm91dGVyTW9kdWxlLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgICAgICBFdWlJbnB1dENoZWNrYm94TW9kdWxlLFxuICAgICAgICBDZGtUcmVlTW9kdWxlLFxuICAgICAgICBFdWlCdXR0b25Nb2R1bGUsXG4gICAgICAgIEV1aUljb25Nb2R1bGUsXG4gICAgICAgIEV1aUxhYmVsTW9kdWxlLFxuICAgICAgICBFdWlCYWRnZU1vZHVsZSxcbiAgICAgICAgRXVpQ2hpcE1vZHVsZSxcbiAgICAgICAgRXVpRHJvcGRvd25Nb2R1bGUsXG4gICAgXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtFdWlUcmVlQ29tcG9uZW50XSxcbiAgICBleHBvcnRzOiBbRXVpVHJlZUNvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIEV1aVRyZWVNb2R1bGUge31cbiIsIjx1bCBjbGFzcz1cImV1aS10cmVlX193cmFwcGVyXCI+XG4gICAgPGNkay10cmVlIFtkYXRhU291cmNlXT1cImNka0FycmF5RGF0YVNvdXJjZVwiIFt0cmVlQ29udHJvbF09XCJjZGtUcmVlQ29udHJvbFwiIFt0cmFja0J5XT1cInRyYWNrQnlcIiAqbmdJZj1cInJlbmRlclRyZWVcIiBjbGFzcz1cImV1aS1jZGstdHJlZVwiPlxuICAgICAgICA8IS0tIFRoZXJlIGFyZSB0d28gc3RhdGVzIG9mIGdlbmVyaWMgY2RrLW5lc3RlZC10cmVlLW5vZGUgZGVjbGFyYXRpb25zLlxuICAgICAgICBGaXJzdCBvbmUgaXMgd2l0aG91dCBjaGlsZC4gTm8gc3ViIHJlbmRlcmluZy5cbiAgICAgICAgLS0+XG4gICAgICAgIDxjZGstbmVzdGVkLXRyZWUtbm9kZSAqY2RrVHJlZU5vZGVEZWY9XCJsZXQgdHJlZUl0ZW1Nb2RlbFwiIGNsYXNzPVwiZXVpLWNkay1uZXN0ZWQtdHJlZS1ub2RlXCI+XG4gICAgICAgICAgICA8bGlcbiAgICAgICAgICAgICAgICBjbGFzcz1cImV1aS10cmVlLW5vZGVcIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwidHJlZUl0ZW1Nb2RlbFwiXG4gICAgICAgICAgICAgICAgdGl0bGU9XCJ7e1xuICAgICAgICAgICAgICAgICAgICBnZXRUcmVlSXRlbSh0cmVlSXRlbU1vZGVsPy5wYXRoKT8ubm9kZT8udHJlZUNvbnRlbnRCbG9jaz8udG9vbHRpcExhYmVsIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICBnZXRUcmVlSXRlbSh0cmVlSXRlbU1vZGVsPy5wYXRoKT8ubm9kZT8udHJlZUNvbnRlbnRCbG9jaz8ubGFiZWxcbiAgICAgICAgICAgICAgICB9fVwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldWktdHJlZS1ub2RlLXdyYXBwZXJcIiAoY2xpY2spPVwib25Ob2RlQ2xpY2sodHJlZUl0ZW1Nb2RlbClcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV1aS10cmVlLW5vZGUtd3JhcHBlcl9fY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tXG4gICAgICAgICAgICAgICAgICAgICAgICBSZW5kZXJzIG5vZGUgaW4gZGVmYXVsdCBvciBwcm92aWRlZCB0ZW1wbGF0ZSdzIGNvbnRleHQuXG4gICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZXMgb25TZWxlY3Qgd2l0aCBvblNlbGVjdEZuIGZvciBkZXZlbG9wZXJzIHRvIHNlbmQgdGhlIGV2ZW50cyBmcm9tIHRoZWlyIGN1c3RvbSBjaGVjayBldmVudHMuXG4gICAgICAgICAgICAgICAgICAgICAgICBQcm92aWRlcyBpZCB0byBiZSB1c2VkIG9uIGdlbmVyaWMgdGVtcGxhdGVcbiAgICAgICAgICAgICAgICAgICAgICAgIC0tPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIm5vZGVUZW1wbGF0ZVJlZiB8fCBub2RlVGVtcGxhdGVEZWZhdWx0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkaW1wbGljaXQ6IGdldFRyZWVJdGVtKHRyZWVJdGVtTW9kZWw/LnBhdGgpPy5ub2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvblNlbGVjdDogb25TZWxlY3RGbih0cmVlSXRlbU1vZGVsLnBhdGgsIHRyZWVJdGVtTW9kZWwpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogdWlkICsgdHJlZUl0ZW1Nb2RlbC5wYXRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9saT5cbiAgICAgICAgPC9jZGstbmVzdGVkLXRyZWUtbm9kZT5cbiAgICAgICAgPCEtLSBUaGlzIGlzIHRoZSB0cmVlIG5vZGUgdGVtcGxhdGUgZm9yIGV4cGFuZGFibGUgbm9kZXMgLS0+XG4gICAgICAgIDxjZGstbmVzdGVkLXRyZWUtbm9kZVxuICAgICAgICAgICAgKmNka1RyZWVOb2RlRGVmPVwibGV0IHRyZWVJdGVtTW9kZWw7IHdoZW46IGhhc0NoaWxkXCJcbiAgICAgICAgICAgIGNsYXNzPVwiZXVpLWNkay1uZXN0ZWQtdHJlZS1ub2RlIGV1aS1jZGstbmVzdGVkLXRyZWUtbm9kZS0td2l0aC1jaGlsZFwiPlxuICAgICAgICAgICAgPGxpXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJldWktdHJlZS1ub2RlXCJcbiAgICAgICAgICAgICAgICAqbmdJZj1cInRyZWVJdGVtTW9kZWxcIlxuICAgICAgICAgICAgICAgIHRpdGxlPVwie3tcbiAgICAgICAgICAgICAgICAgICAgZ2V0VHJlZUl0ZW0odHJlZUl0ZW1Nb2RlbD8ucGF0aCk/Lm5vZGU/LnRyZWVDb250ZW50QmxvY2s/LnRvb2x0aXBMYWJlbCB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgZ2V0VHJlZUl0ZW0odHJlZUl0ZW1Nb2RlbD8ucGF0aCk/Lm5vZGU/LnRyZWVDb250ZW50QmxvY2s/LmxhYmVsXG4gICAgICAgICAgICAgICAgfX1cIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXVpLXRyZWUtbm9kZS13cmFwcGVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDwhLS1IZXJlIHdyYXBzIHRoZSBub2RlLCBhbmQgbGlzdGVuIGZvciBub2RlIGNsaWNrcy4tLT5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAoY2xpY2spPVwib25Ob2RlQ2xpY2sodHJlZUl0ZW1Nb2RlbClcIiBjbGFzcz1cImV1aS10cmVlLW5vZGUtd3JhcHBlcl9fY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEV4cGFuZC9jb2xsYXBzZSBhY3Rpb24gYnV0dG9uIC0tPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV1aUJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV1aUljb25CdXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBldWlCYXNpY0J1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV1aVJvdW5kZWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBldWlTaXplU1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ1RvZ2dsZSAnICsgdHJlZUl0ZW1Nb2RlbD8ubm9kZT8udHJlZUNvbnRlbnRCbG9jaz8ubGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbk5vZGVUb2dnbGUodHJlZUl0ZW1Nb2RlbClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNka1RyZWVOb2RlVG9nZ2xlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJldWktdS1tci14c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV1aUljb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCIhY2RrVHJlZUNvbnRyb2wuaXNFeHBhbmRlZCh0cmVlSXRlbU1vZGVsKSAmJiBjb2xsYXBzZWRJY29uQ2xhc3NcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaWNvbkNsYXNzXT1cImNvbGxhcHNlZEljb25DbGFzc1wiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldWlJY29uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY2RrVHJlZUNvbnRyb2wuaXNFeHBhbmRlZCh0cmVlSXRlbU1vZGVsKSAmJiBleHBhbmRlZEljb25DbGFzc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpY29uQ2xhc3NdPVwiZXhwYW5kZWRJY29uQ2xhc3NcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGV1aS1pY29uLXN2Z1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiFjZGtUcmVlQ29udHJvbC5pc0V4cGFuZGVkKHRyZWVJdGVtTW9kZWwpICYmICFjb2xsYXBzZWRJY29uQ2xhc3NcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaWNvbl09XCJleHBhbmRlZFN2Z0ljb25DbGFzc1wiPjwvZXVpLWljb24tc3ZnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxldWktaWNvbi1zdmdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjZGtUcmVlQ29udHJvbC5pc0V4cGFuZGVkKHRyZWVJdGVtTW9kZWwpICYmICFleHBhbmRlZEljb25DbGFzc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpY29uXT1cImNvbGxhcHNlZFN2Z0ljb25DbGFzc1wiPjwvZXVpLWljb24tc3ZnPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tXG4gICAgICAgICAgICAgICAgICAgICAgICBSZW5kZXJzIG5vZGUgaW4gZGVmYXVsdCBvciBwcm92aWRlZCB0ZW1wbGF0ZSdzIGNvbnRleHQuXG4gICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZXMgb25TZWxlY3Qgd2l0aCBvblNlbGVjdEZuIGZvciBkZXZlbG9wZXJzIHRvIHNlbmQgdGhlIGV2ZW50cyBmcm9tIHRoZWlyIGN1c3RvbSBjaGVjayBldmVudHMuXG4gICAgICAgICAgICAgICAgICAgICAgICBQcm92aWRlcyBpZCB0byBiZSB1c2VkIG9uIGdlbmVyaWMgdGVtcGxhdGVcbiAgICAgICAgICAgICAgICAgICAgICAgIC0tPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIm5vZGVUZW1wbGF0ZVJlZiB8fCBub2RlVGVtcGxhdGVEZWZhdWx0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkaW1wbGljaXQ6IGdldFRyZWVJdGVtKHRyZWVJdGVtTW9kZWw/LnBhdGgpPy5ub2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvblNlbGVjdDogb25TZWxlY3RGbih0cmVlSXRlbU1vZGVsPy5wYXRoLCB0cmVlSXRlbU1vZGVsKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IHVpZCArIHRyZWVJdGVtTW9kZWwucGF0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8IS0tdXNlcyBjZGtUcmVlTm9kZU91dGxldCB0byByZW5kZXIgY2hpbGRyZW4gbm9kZXMsIENka1RyZWVDb250cm9sIGlzIHVzZWQgdG8gY29udHJvbCBpc0V4cGFuZGVkIHN0YXRlLi0tPlxuICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cImV1aS10cmVlLW5vZGVcIiAqbmdJZj1cImNka1RyZWVDb250cm9sLmlzRXhwYW5kZWQodHJlZUl0ZW1Nb2RlbClcIj5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBjZGtUcmVlTm9kZU91dGxldD48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgPC9saT5cbiAgICAgICAgPC9jZGstbmVzdGVkLXRyZWUtbm9kZT5cbiAgICA8L2Nkay10cmVlPlxuPC91bD5cblxuPG5nLXRlbXBsYXRlICNub2RlVGVtcGxhdGVEZWZhdWx0IGxldC1ub2RlIGxldC1vblNlbGVjdD1cIm9uU2VsZWN0XCIgbGV0LWlkPVwiaWRcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibm9kZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZXVpLXRyZWUtbm9kZS13cmFwcGVyX19jb250YWluZXItbGVmdFwiIFtjbGFzcy5ldWktdHJlZS1ub2RlLXdyYXBwZXJfX2NvbnRhaW5lci1sZWZ0LS1zZWxlY3RlZF09XCJub2RlPy5pc1NlbGVjdGVkXCI+XG4gICAgICAgICAgICA8IS0taW5wdXQgY2hlY2tib3ggYXJlYS0tPlxuICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgZXVpSW5wdXRDaGVja0JveFxuICAgICAgICAgICAgICAgICpuZ0lmPVwibm9kZSAmJiBub2RlLnNlbGVjdGFibGVcIlxuICAgICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAgICAgaWQ9XCJ7eyBpZCB9fVwiXG4gICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwibm9kZSAmJiBub2RlLmlzU2VsZWN0ZWRcIlxuICAgICAgICAgICAgICAgIFtpbmRldGVybWluYXRlXT1cIm5vZGUgJiYgbm9kZS5pc0luZGV0ZXJtaW5hdGVcIlxuICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwib25TZWxlY3QoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJldWktdS1tci1tXCIgLz5cblxuICAgICAgICAgICAgPCEtLWljb24gYXJlYS0tPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm5vZGU/LnRyZWVDb250ZW50QmxvY2s/Lmljb25DbGFzc1wiPlxuICAgICAgICAgICAgICAgIDxldWktaWNvblxuICAgICAgICAgICAgICAgICAgICBbZXVpVmFyaWFudF09XCJub2RlPy50cmVlQ29udGVudEJsb2NrPy5pY29uVHlwZUNsYXNzIHx8ICdwcmltYXJ5J1wiXG4gICAgICAgICAgICAgICAgICAgIGljb25DbGFzcz1cInt7IG5vZGU/LnRyZWVDb250ZW50QmxvY2s/Lmljb25DbGFzcyB9fVwiXG4gICAgICAgICAgICAgICAgICAgIGV1aVNpemVTXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZXVpLXUtbXIteHNcIj5cbiAgICAgICAgICAgICAgICA8L2V1aS1pY29uPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibm9kZT8udHJlZUNvbnRlbnRCbG9jaz8uaWNvblN2Z05hbWVcIj5cbiAgICAgICAgICAgICAgICA8ZXVpLWljb24tc3ZnXG4gICAgICAgICAgICAgICAgICAgIGljb249XCJ7eyBub2RlPy50cmVlQ29udGVudEJsb2NrPy5pY29uU3ZnTmFtZSB9fVwiXG4gICAgICAgICAgICAgICAgICAgIGZpbGxDb2xvcj1cInt7IG5vZGU/LnRyZWVDb250ZW50QmxvY2s/Lmljb25UeXBlQ2xhc3MgfHwgJ2dyZXktMTAwJyB9fVwiXG4gICAgICAgICAgICAgICAgICAgIHNpemU9XCJzXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJldWktdS1tci14c1wiPlxuICAgICAgICAgICAgICAgIDwvZXVpLWljb24tc3ZnPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDwhLS1jaGlwcyBhcmVhLS0+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibm9kZT8udHJlZUNvbnRlbnRCbG9jaz8uY2hpcHNcIj5cbiAgICAgICAgICAgICAgICA8ZXVpLWNoaXBcbiAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGNoaXAgb2Ygbm9kZS50cmVlQ29udGVudEJsb2NrLmNoaXBzXCJcbiAgICAgICAgICAgICAgICAgICAgZXVpU2l6ZVhTXG4gICAgICAgICAgICAgICAgICAgIFtldWlWYXJpYW50XT1cImNoaXAudHlwZUNsYXNzIHx8ICdzZWNvbmRhcnknXCJcbiAgICAgICAgICAgICAgICAgICAgW2V1aU91dGxpbmVdPVwiY2hpcC5pc091dGxpbmVcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImV1aS1jaGlwLS1yb3VuZGVkIGV1aS11LW1yLXhzXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGV1aUxhYmVsPnt7IGNoaXAubGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9ldWktY2hpcD5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8IS0tYmFkZ2UgKHR5cGVMYWJlbCAmIHR5cGVDbGFzcykgYXJlYS0tPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm5vZGU/LnRyZWVDb250ZW50QmxvY2s/LnR5cGVMYWJlbFwiIFtuZ1N3aXRjaF09XCJub2RlPy50cmVlQ29udGVudEJsb2NrPy50eXBlQ2xhc3NcIj5cbiAgICAgICAgICAgICAgICA8ZXVpLWJhZGdlIGV1aVNpemVNIFtldWlWYXJpYW50XT1cIm5vZGU/LnRyZWVDb250ZW50QmxvY2s/LnR5cGVDbGFzcyB8fCAncHJpbWFyeSdcIiBjbGFzcz1cImV1aS11LWZsZXgtbm8tc2hyaW5rIGV1aS11LW1yLXhzXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7IG5vZGU/LnRyZWVDb250ZW50QmxvY2s/LnR5cGVMYWJlbCB9fVxuICAgICAgICAgICAgICAgIDwvZXVpLWJhZGdlPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDwhLS1sYWJlbCBhcmVhLS0+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJldWktdHJlZS1ub2RlLXdyYXBwZXJfX2NvbnRhaW5lci1taWRkbGVcIj5cbiAgICAgICAgICAgIDxsYWJlbFxuICAgICAgICAgICAgICAgICpuZ0lmPVwiIW5vZGU/LnRyZWVDb250ZW50QmxvY2s/LnVybCAmJiAhbm9kZT8udHJlZUNvbnRlbnRCbG9jaz8udXJsRXh0ZXJuYWxcIlxuICAgICAgICAgICAgICAgIGV1aUxhYmVsXG4gICAgICAgICAgICAgICAgZm9yPVwie3sgaWQgfX1cIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZXVpLXUtdGV4dC10cnVuY2F0ZSBldWktdS1tci1zXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MuZXVpLWxhYmVsLS1zZWxlY3RlZF09XCJub2RlPy5pc1NlbGVjdGVkXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MuZXVpLXUtY3Vyc29yLXBvaW50ZXJdPVwibm9kZT8uc2VsZWN0YWJsZVwiPlxuICAgICAgICAgICAgICAgIHt7IGF1dG9UcmFuc2xhdGUgPyAobm9kZT8udHJlZUNvbnRlbnRCbG9jaz8ubGFiZWwgfCB0cmFuc2xhdGUpIDogbm9kZT8udHJlZUNvbnRlbnRCbG9jaz8ubGFiZWwgfX1cbiAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8bGFiZWwgKm5nSWY9XCJub2RlPy50cmVlQ29udGVudEJsb2NrPy51cmxcIiBldWlMYWJlbCBmb3I9XCJ7eyBpZCB9fVwiIGNsYXNzPVwiZXVpLXUtdGV4dC10cnVuY2F0ZSBldWktdS1tci1tXCI+XG4gICAgICAgICAgICAgICAgPGEgY2xhc3M9XCJldWktdS10ZXh0LWxpbmtcIiBbcm91dGVyTGlua109XCJub2RlPy50cmVlQ29udGVudEJsb2NrPy51cmxcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgYXV0b1RyYW5zbGF0ZSA/IChub2RlPy50cmVlQ29udGVudEJsb2NrPy5sYWJlbCB8IHRyYW5zbGF0ZSkgOiBub2RlPy50cmVlQ29udGVudEJsb2NrPy5sYWJlbCB9fVxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8bGFiZWwgKm5nSWY9XCJub2RlPy50cmVlQ29udGVudEJsb2NrPy51cmxFeHRlcm5hbFwiIGV1aUxhYmVsIGZvcj1cInt7IGlkIH19XCIgY2xhc3M9XCJldWktdS10ZXh0LXRydW5jYXRlIGV1aS11LW1yLW1cIj5cbiAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImV1aS11LXRleHQtbGluay1leHRlcm5hbFwiXG4gICAgICAgICAgICAgICAgICAgIGhyZWY9XCJ7eyBub2RlPy50cmVlQ29udGVudEJsb2NrPy51cmxFeHRlcm5hbCB9fVwiXG4gICAgICAgICAgICAgICAgICAgIHRhcmdldD1cInt7IG5vZGU/LnRyZWVDb250ZW50QmxvY2s/LnVybEV4dGVybmFsVGFyZ2V0IHx8ICdibGFuaycgfX1cIj5cbiAgICAgICAgICAgICAgICAgICAge3sgYXV0b1RyYW5zbGF0ZSA/IChub2RlPy50cmVlQ29udGVudEJsb2NrPy5sYWJlbCB8IHRyYW5zbGF0ZSkgOiBub2RlPy50cmVlQ29udGVudEJsb2NrPy5sYWJlbCB9fVxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgKm5nSWY9XCJub2RlPy50cmVlQ29udGVudEJsb2NrPy5yaWdodENvbnRlbnRcIiBjbGFzcz1cImV1aS10cmVlLW5vZGUtd3JhcHBlcl9fY29udGFpbmVyLXJpZ2h0XCI+XG4gICAgICAgICAgICA8IS0tYmFkZ2VzIGFyZWEtLT5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGJhZGdlIG9mIG5vZGUudHJlZUNvbnRlbnRCbG9jay5yaWdodENvbnRlbnQ/LmJhZGdlc1wiPlxuICAgICAgICAgICAgICAgIDxldWktYmFkZ2UgZXVpU2l6ZU0gZXVpT3V0bGluZSBbZXVpVmFyaWFudF09XCJiYWRnZS50eXBlQ2xhc3MgfHwgJ3NlY29uZGFyeSdcIiBjbGFzcz1cImV1aS11LW1sLXhzXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGV1aUxhYmVsPnt7IGJhZGdlLmxhYmVsIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZXVpLWJhZGdlPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDwhLS1jaGlwcyBhcmVhLS0+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBjaGlwIG9mIG5vZGUudHJlZUNvbnRlbnRCbG9jay5yaWdodENvbnRlbnQ/LmNoaXBzXCI+XG4gICAgICAgICAgICAgICAgPGV1aS1jaGlwXG4gICAgICAgICAgICAgICAgICAgIGV1aVNpemVYU1xuICAgICAgICAgICAgICAgICAgICBbZXVpVmFyaWFudF09XCJjaGlwLnR5cGVDbGFzcyB8fCAnc2Vjb25kYXJ5J1wiXG4gICAgICAgICAgICAgICAgICAgIFtldWlPdXRsaW5lXT1cImNoaXAuaXNPdXRsaW5lXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJldWktY2hpcC0tcm91bmRlZCBldWktdS1tbC14c1wiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBldWlMYWJlbD57eyBjaGlwLmxhYmVsIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZXVpLWNoaXA+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPCEtLUNvbnRleHQgbWVudS0tPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm5vZGUudHJlZUNvbnRlbnRCbG9jay5yaWdodENvbnRlbnQ/LmNvbnRleHRNZW51TWV0YURhdGEgJiYgcmlnaHRDb250ZXh0TWVudVRlbXBsYXRlUmVmXCI+XG4gICAgICAgICAgICAgICAgPGV1aS1kcm9wZG93biBjbGFzcz1cImV1aS11LW1sLXhzXCI+XG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gZXVpQnV0dG9uIGV1aVNpemVTIGV1aVJvdW5kZWQgZXVpSWNvbkJ1dHRvbiBldWlCYXNpY0J1dHRvbiBldWlTZWNvbmRhcnkgW2F0dHIuYXJpYS1sYWJlbF09XCInT3B0aW9ucyBtZW51J1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGV1aS1pY29uLXN2ZyBpY29uPVwiZXVpLWVsbGlwc2lzLXZlcnRpY2FsXCI+PC9ldWktaWNvbi1zdmc+XG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8ZXVpLWRyb3Bkb3duLWNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJyaWdodENvbnRleHRNZW51VGVtcGxhdGVSZWZcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRpbXBsaWNpdDogbm9kZT8udHJlZUNvbnRlbnRCbG9jaz8ucmlnaHRDb250ZW50Py5jb250ZXh0TWVudU1ldGFEYXRhLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZXRhZGF0YTogbm9kZT8udHJlZUNvbnRlbnRCbG9jaz8ucmlnaHRDb250ZW50Py5jb250ZXh0TWVudU1ldGFEYXRhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgPC9ldWktZHJvcGRvd24tY29udGVudD5cbiAgICAgICAgICAgICAgICA8L2V1aS1kcm9wZG93bj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8IS0tbWV0YWRhdGEsIHVzZXMgdGhlIGhlbHAgb2YgbmcgdGVtcGxhdGUgdG8gZ2VuZXJhdGUgZHluYW1pYyBleHBhbmQgdmFyaWFibGUgd2l0aG91dCBoYW5kbGluZyBzdGF0ZSAtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgKm5nSWY9XCJub2RlLnRyZWVDb250ZW50QmxvY2s/Lm1ldGFkYXRhICYmIG5vZGVDb250ZW50TWV0YWRhdGFUZW1wbGF0ZVJlZlwiXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJub2RlQ29udGVudE1ldGFkYXRhQ29udGFpbmVyXCJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7XG4gICAgICAgICAgICAgICAgJGltcGxpY2l0OiB7IGV4cGFuZGVkOiBmYWxzZSB9XG4gICAgICAgICAgICB9XCI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctdGVtcGxhdGUgI25vZGVDb250ZW50TWV0YWRhdGFDb250YWluZXIgbGV0LW1ldGFEYXRhQ29udGFpbmVyPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgIGV1aUJ1dHRvblxuICAgICAgICAgICAgICAgIGV1aUJhc2ljQnV0dG9uXG4gICAgICAgICAgICAgICAgZXVpSWNvbkJ1dHRvblxuICAgICAgICAgICAgICAgIGV1aVJvdW5kZWRcbiAgICAgICAgICAgICAgICBldWlTaXplU1xuICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJtZXRhRGF0YUNvbnRhaW5lci5leHBhbmRlZCA9ICFtZXRhRGF0YUNvbnRhaW5lci5leHBhbmRlZFwiPlxuICAgICAgICAgICAgICAgIDxldWktaWNvbi1zdmcgW2ljb25dPVwibWV0YURhdGFDb250YWluZXIuZXhwYW5kZWQgPyAnZXVpLWNoZXZyb24tZG93bicgOiAnZXVpLWNoZXZyb24tZm9yd2FyZCdcIj48L2V1aS1pY29uLXN2Zz5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm1ldGFEYXRhQ29udGFpbmVyLmV4cGFuZGVkXCIgY2xhc3M9XCJldWktdHJlZS1ub2RlX19tZXRhY29udGVudFwiPlxuICAgICAgICAgICAgICAgIDwhLS1wYXNzaW5nIG1ldGFkYXRhIG9mIHRoZSBub2RlIGNvbnRlbnQgdG8gcHJvdmlkZWQgdGVtcGxhdGUtcmVmOm5vZGVDb250ZW50TWV0YWRhdGFUZW1wbGF0ZVJlZi0tPlxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJub2RlQ29udGVudE1ldGFkYXRhVGVtcGxhdGVSZWZcIlxuICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xuICAgICAgICAgICAgICAgICAgICAgICAgJGltcGxpY2l0OiBub2RlPy50cmVlQ29udGVudEJsb2NrPy5tZXRhZGF0YSxcbiAgICAgICAgICAgICAgICAgICAgICAgIG1ldGFkYXRhOiBub2RlPy50cmVlQ29udGVudEJsb2NrPy5tZXRhZGF0YVxuICAgICAgICAgICAgICAgICAgICB9XCI+XG4gICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
558
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLXRyZWUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vZXVpLXRyZWUvZXVpLXRyZWUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vZXVpLXRyZWUvZXVpLXRyZWUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCxLQUFLLEVBQ0wsUUFBUSxFQUNSLHVCQUF1QixFQUN2QixZQUFZLEVBQ1osTUFBTSxFQUNOLGlCQUFpQixFQU1qQixXQUFXLEdBRWQsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQVMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDNUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDckUsT0FBTyxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRSxPQUFPLEVBQWdCLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDNUUsT0FBTyxFQUFF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QyxnQkFBZ0IsQ0FBQztpQkFDOUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENvbXBvbmVudCxcbiAgICBJbnB1dCxcbiAgICBOZ01vZHVsZSxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgT3V0cHV0LFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIFNpbXBsZUNoYW5nZXMsXG4gICAgT25Jbml0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBIb3N0QmluZGluZyxcbiAgICBPbkRlc3Ryb3ksXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge1xuICAgIFNlbGVjdGlvblJlY3Vyc2l2ZVN0YXRlLFxuICAgIFRyZWVEYXRhTW9kZWwsXG4gICAgVHJlZUl0ZW1Nb2RlbCxcbiAgICBUcmVlRGF0YVJ1blRpbWVNb2RlbCxcbiAgICBUcmVlSXRlbVJ1blRpbWVNb2RlbCxcbiAgICBFdWlUcmVlU2VsZWN0aW9uQ2hhbmdlcyxcbn0gZnJvbSAnLi9ldWktdHJlZS5tb2RlbCc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEV1aUlucHV0Q2hlY2tib3hNb2R1bGUgfSBmcm9tICdAZXVpL2NvbXBvbmVudHMvZXVpLWlucHV0LWNoZWNrYm94JztcbmltcG9ydCB7IEV1aUJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BldWkvY29tcG9uZW50cy9ldWktYnV0dG9uJztcbmltcG9ydCB7IEV1aUljb25Nb2R1bGUgfSBmcm9tICdAZXVpL2NvbXBvbmVudHMvZXVpLWljb24nO1xuaW1wb3J0IHsgRXVpTGFiZWxNb2R1bGUgfSBmcm9tICdAZXVpL2NvbXBvbmVudHMvZXVpLWxhYmVsJztcbmltcG9ydCB7IEV1aUJhZGdlTW9kdWxlIH0gZnJvbSAnQGV1aS9jb21wb25lbnRzL2V1aS1iYWRnZSc7XG5pbXBvcnQgeyBFdWlDaGlwTW9kdWxlIH0gZnJvbSAnQGV1aS9jb21wb25lbnRzL2V1aS1jaGlwJztcbmltcG9ydCB7IEV1aURyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQGV1aS9jb21wb25lbnRzL2V1aS1kcm9wZG93bic7XG5pbXBvcnQgeyBOZXN0ZWRUcmVlQ29udHJvbCwgQ2RrVHJlZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90cmVlJztcbmltcG9ydCB7IEFycmF5RGF0YVNvdXJjZSwgU2VsZWN0aW9uTW9kZWwgfSBmcm9tICdAYW5ndWxhci9jZGsvY29sbGVjdGlvbnMnO1xuaW1wb3J0IHsgQm9vbGVhbklucHV0LCBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZXVpLXRyZWUnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9ldWktdHJlZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vc3R5bGVzL19pbmRleC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgRXVpVHJlZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKSBzdHJpbmcgPSAnZXVpLXRyZWUnO1xuICAgIEBIb3N0QmluZGluZygnYXR0ci5kYXRhLWUyZScpIEBJbnB1dCgpIGUyZUF0dHIgPSAnZXVpLXRyZWUnO1xuICAgIEBJbnB1dCgpIG5vZGVzOiBUcmVlRGF0YU1vZGVsO1xuICAgIEBJbnB1dCgpIG5vZGVUZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PjtcbiAgICBASW5wdXQoKSBub2RlQ29udGVudE1ldGFkYXRhVGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgQElucHV0KCkgcmlnaHRDb250ZXh0TWVudVRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIEBJbnB1dCgpIGV4cGFuZGVkSWNvbkNsYXNzOiBzdHJpbmc7XG4gICAgQElucHV0KCkgY29sbGFwc2VkSWNvbkNsYXNzOiBzdHJpbmc7XG4gICAgQElucHV0KCkgZXhwYW5kZWRTdmdJY29uQ2xhc3MgPSAnZXVpLWNoZXZyb24tZm9yd2FyZDpldWknO1xuICAgIEBJbnB1dCgpIGNvbGxhcHNlZFN2Z0ljb25DbGFzcyA9ICdldWktY2hldnJvbi1kb3duOmV1aSc7XG5cbiAgICAvLyBAVmlld0NoaWxkKCd0cmVlQ29tcG9uZW50SW5zdGFuY2UnKSBwdWJsaWMgdHJlZUNvbXBvbmVudEluc3RhbmNlOiBhbnk7XG4gICAgQElucHV0KClcbiAgICBnZXQgaXNDbGlja1RvZ2dsaW5nTm9kZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzQ2xpY2tUb2dnbGluZ05vZGU7XG4gICAgfVxuXG4gICAgc2V0IGlzQ2xpY2tUb2dnbGluZ05vZGUodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9pc0NsaWNrVG9nZ2xpbmdOb2RlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIGdldCBpc011bHRpc2VsZWN0KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNNdWx0aXNlbGVjdDtcbiAgICB9XG5cbiAgICBzZXQgaXNNdWx0aXNlbGVjdCh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2lzTXVsdGlzZWxlY3QgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGlzUmVjdXJzaXZlU2VsZWN0aW9uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNSZWN1cnNpdmVTZWxlY3Rpb247XG4gICAgfVxuXG4gICAgc2V0IGlzUmVjdXJzaXZlU2VsZWN0aW9uKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faXNSZWN1cnNpdmVTZWxlY3Rpb24gPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGlzUmVjdXJzaXZlUGFyZW50U2VsZWN0aW9uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNSZWN1cnNpdmVQYXJlbnRTZWxlY3Rpb247XG4gICAgfVxuXG4gICAgc2V0IGlzUmVjdXJzaXZlUGFyZW50U2VsZWN0aW9uKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faXNSZWN1cnNpdmVQYXJlbnRTZWxlY3Rpb24gPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGF1dG9UcmFuc2xhdGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9hdXRvVHJhbnNsYXRlO1xuICAgIH1cblxuICAgIHNldCBhdXRvVHJhbnNsYXRlKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5fYXV0b1RyYW5zbGF0ZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgQE91dHB1dCgpIHNlbGVjdGlvbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8RXVpVHJlZVNlbGVjdGlvbkNoYW5nZXM+KCk7XG4gICAgQE91dHB1dCgpIG5vZGVDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8VHJlZUl0ZW1Nb2RlbD4oKTtcbiAgICBAT3V0cHV0KCkgbm9kZVRvZ2dsZSA9IG5ldyBFdmVudEVtaXR0ZXI8VHJlZUl0ZW1Nb2RlbD4oKTtcbiAgICBjZGtBcnJheURhdGFTb3VyY2U6IEFycmF5RGF0YVNvdXJjZTxUcmVlSXRlbU1vZGVsPjtcbiAgICBjZGtUcmVlQ29udHJvbDogTmVzdGVkVHJlZUNvbnRyb2w8VHJlZUl0ZW1Nb2RlbD47XG4gICAgcmVuZGVyVHJlZTogYm9vbGVhbjtcbiAgICBwdWJsaWMgdWlkOiBzdHJpbmcgPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAxMDAwMDAwMDAwKS50b1N0cmluZygpO1xuICAgIHByaXZhdGUgdHJlZURhdGFSdW5UaW1lOiBUcmVlRGF0YVJ1blRpbWVNb2RlbDtcbiAgICBwcml2YXRlIHJ1blRpbWVTZWxlY3Rpb25SZWN1cnNpdmVTdGF0ZTogVHJlZURhdGFSdW5UaW1lTW9kZWw7XG4gICAgcHJpdmF0ZSBzZWxlY3Rpb25Nb2RlbDogU2VsZWN0aW9uTW9kZWw8VHJlZUl0ZW1SdW5UaW1lTW9kZWw+O1xuICAgIHByaXZhdGUgZmlsdGVyZWRUcmVlRGF0YTogVHJlZURhdGFNb2RlbDtcbiAgICBwcml2YXRlIF9pc0NsaWNrVG9nZ2xpbmdOb2RlID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBfaXNNdWx0aXNlbGVjdCA9IGZhbHNlO1xuICAgIHByaXZhdGUgX2lzUmVjdXJzaXZlU2VsZWN0aW9uID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBfaXNSZWN1cnNpdmVQYXJlbnRTZWxlY3Rpb24gPSB0cnVlO1xuICAgIHByaXZhdGUgX2F1dG9UcmFuc2xhdGUgPSB0cnVlO1xuICAgIHByaXZhdGUgc2VsZWN0aW9uTW9kZWxTdWJzO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pbml0VHJlZSgpO1xuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgaWYgKGNoYW5nZXNbJ25vZGVzJ10uY3VycmVudFZhbHVlICE9PSBjaGFuZ2VzWydub2RlcyddLnByZXZpb3VzVmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyVHJlZSA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5pbml0VHJlZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnNlbGVjdGlvbk1vZGVsU3Vicykge1xuICAgICAgICAgICAgdGhpcy5zZWxlY3Rpb25Nb2RlbFN1YnMudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHRyYWNrQnkoaW5kZXg6IG51bWJlciwgZWw6IGFueSk6IGFueSB7XG4gICAgICAgIHJldHVybiBlbC5wYXJlbnQ7XG4gICAgfVxuXG4gICAgZ2V0VHJlZUl0ZW0ocGF0aDogc3RyaW5nKTogVHJlZUl0ZW1Nb2RlbCB7XG4gICAgICAgIGNvbnN0IGluZGV4QXJyOiBBcnJheTxudW1iZXI+ID0gdGhpcy5yZXNvbHZlUGF0aChwYXRoKTtcbiAgICAgICAgbGV0IG5vZGVBcnIgPSB0aGlzLm5vZGVzO1xuICAgICAgICBsZXQgbm9kZTtcbiAgICAgICAgaWYgKG5vZGVBcnIgJiYgQXJyYXkuaXNBcnJheShub2RlQXJyKSkge1xuICAgICAgICAgICAgaW5kZXhBcnI/LmZvckVhY2goKHBhdGhJbmRleDogbnVtYmVyLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChpbmRleCA8IGluZGV4QXJyLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgICAgICAgICAgICAgbm9kZUFyciA9IG5vZGVBcnIgJiYgbm9kZUFycltwYXRoSW5kZXhdPy5jaGlsZHJlbjtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBub2RlID0gbm9kZUFycltwYXRoSW5kZXhdO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBub2RlO1xuICAgIH1cblxuICAgIGV4cGFuZEFsbCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jZGtUcmVlQ29udHJvbC5leHBhbmRBbGwoKTtcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICBleHBhbmRBdChwYXRoOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jZGtUcmVlQ29udHJvbC5leHBhbmREZXNjZW5kYW50cyh0aGlzLmdldFJ1blRpbWVUcmVlSXRlbShwYXRoWzBdKSk7XG4gICAgICAgIHRoaXMuY2RrVHJlZUNvbnRyb2wudG9nZ2xlRGVzY2VuZGFudHModGhpcy5nZXRSdW5UaW1lVHJlZUl0ZW0ocGF0aCkpO1xuICAgICAgICB0aGlzLmNka1RyZWVDb250cm9sLmV4cGFuZCh0aGlzLmdldFJ1blRpbWVUcmVlSXRlbShwYXRoKSk7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgY29sbGFwc2VBbGwoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2RrVHJlZUNvbnRyb2wuY29sbGFwc2VBbGwoKTtcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICBmaWx0ZXJUZXJtKGZpbHRlcklucHV0OiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgdHJlZURhdGEgPSBzdHJ1Y3R1cmVkQ2xvbmUodGhpcy5ub2Rlcyk7XG4gICAgICAgIGlmIChmaWx0ZXJJbnB1dCAmJiBmaWx0ZXJJbnB1dCAhPT0gJycpIHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyVHJlZSA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgICAgIHRoaXMuZmlsdGVyZWRUcmVlRGF0YSA9IHRoaXMuZmlsdGVyVHJlZURhdGEodHJlZURhdGEsICdsYWJlbCcsIGZpbHRlcklucHV0KTtcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlVHJlZURhdGFSdW50aW1lKHRoaXMuZmlsdGVyZWRUcmVlRGF0YSk7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmNka0FycmF5RGF0YVNvdXJjZSA9IG5ldyBBcnJheURhdGFTb3VyY2UodGhpcy50cmVlRGF0YVJ1blRpbWUpO1xuICAgICAgICAgICAgICAgIHRoaXMuY2RrVHJlZUNvbnRyb2wgPSBuZXcgTmVzdGVkVHJlZUNvbnRyb2w8VHJlZUl0ZW1SdW5UaW1lTW9kZWw+KChub2RlKSA9PiBub2RlPy5jaGlsZHJlbik7XG4gICAgICAgICAgICAgICAgdGhpcy5jZGtUcmVlQ29udHJvbC5kYXRhTm9kZXMgPSB0aGlzLnRyZWVEYXRhUnVuVGltZTtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlclRyZWUgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyVHJlZSA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlVHJlZURhdGFSdW50aW1lKHRoaXMubm9kZXMpO1xuICAgICAgICAgICAgdGhpcy5maWx0ZXJlZFRyZWVEYXRhID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5jZGtBcnJheURhdGFTb3VyY2UgPSBuZXcgQXJyYXlEYXRhU291cmNlKHRoaXMudHJlZURhdGFSdW5UaW1lKTtcbiAgICAgICAgICAgICAgICB0aGlzLmNka1RyZWVDb250cm9sID0gbmV3IE5lc3RlZFRyZWVDb250cm9sPFRyZWVJdGVtUnVuVGltZU1vZGVsPigobm9kZSkgPT4gbm9kZT8uY2hpbGRyZW4pO1xuICAgICAgICAgICAgICAgIHRoaXMuY2RrVHJlZUNvbnRyb2wuZGF0YU5vZGVzID0gdGhpcy50cmVlRGF0YVJ1blRpbWU7XG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJUcmVlID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZXRBbGxTZWxlY3Rpb24oaXNDaGVja2VkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2V0SXNDaGVja2VkRm9yQWxsKHRoaXMubm9kZXMsIGlzQ2hlY2tlZCwgdGhpcy50cmVlRGF0YVJ1blRpbWUpO1xuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIG9uTm9kZUNsaWNrKHRyZWVJdGVtOiBUcmVlSXRlbVJ1blRpbWVNb2RlbCk6IHZvaWQge1xuICAgICAgICB0aGlzLm5vZGVDbGljay5lbWl0KHRoaXMuZ2V0VHJlZUl0ZW0odHJlZUl0ZW0/LnBhdGgpKTtcbiAgICAgICAgaWYgKHRoaXMuaXNDbGlja1RvZ2dsaW5nTm9kZSkge1xuICAgICAgICAgICAgdGhpcy5jZGtUcmVlQ29udHJvbC50b2dnbGUodHJlZUl0ZW0pO1xuICAgICAgICAgICAgdGhpcy5vbk5vZGVUb2dnbGUodHJlZUl0ZW0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25Ob2RlVG9nZ2xlKHRyZWVJdGVtOiBUcmVlSXRlbVJ1blRpbWVNb2RlbCk6IHZvaWQge1xuICAgICAgICB0aGlzLm5vZGVUb2dnbGUuZW1pdCh0aGlzLmdldFRyZWVJdGVtKHRyZWVJdGVtPy5wYXRoKSk7XG4gICAgfVxuXG4gICAgbm9kZVNlbGVjdGVkKGV2dDogYW55LCBwYXRoOiBzdHJpbmcsIHRyZWVJdGVtTW9kZWw6IFRyZWVJdGVtUnVuVGltZU1vZGVsKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGl0ZW0gPSB0aGlzLmdldFRyZWVJdGVtKHBhdGgpO1xuICAgICAgICBjb25zdCBub2RlID0gaXRlbS5ub2RlO1xuICAgICAgICBjb25zdCBjaGlsZHJlbiA9IGl0ZW0uY2hpbGRyZW47XG4gICAgICAgIGNvbnN0IHBhdGhBcnIgPSBwYXRoLnNwbGl0KCcuJyk7XG4gICAgICAgIGNvbnN0IGhhc1BhcmVudCA9IHBhdGhBcnIubGVuZ3RoID4gMTtcbiAgICAgICAgaWYgKGhhc1BhcmVudCkge1xuICAgICAgICAgICAgcGF0aEFyci5wb3AoKTtcbiAgICAgICAgfVxuICAgICAgICBub2RlLmlzU2VsZWN0ZWQgPSBldnQudGFyZ2V0LmNoZWNrZWQ7XG4gICAgICAgIGlmIChub2RlLmlzU2VsZWN0ZWQpIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0VHJlZUl0ZW0odHJlZUl0ZW1Nb2RlbCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmRlc2VsZWN0VHJlZUl0ZW0odHJlZUl0ZW1Nb2RlbCk7XG4gICAgICAgIH1cbiAgICAgICAgbm9kZS5pc0luZGV0ZXJtaW5hdGUgPSBmYWxzZTtcbiAgICAgICAgaWYgKGNoaWxkcmVuICYmIGNoaWxkcmVuLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGlmIChub2RlPy5zZWxlY3RDb25maWc/LnJlY3Vyc2l2ZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0SXNDaGVja2VkRm9yQWxsKGNoaWxkcmVuLCBldnQudGFyZ2V0LmNoZWNrZWQsIHRyZWVJdGVtTW9kZWw/LmNoaWxkcmVuKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLnJ1blRpbWVTZWxlY3Rpb25SZWN1cnNpdmVTdGF0ZVtwYXJzZUludChwYXRoQXJyWzBdLCAxMCldID0gdGhpcy5jYWxjdWxhdGVJdGVtU2VsZWN0aW9uUmVjdXJzaXZlU3RhdGUoXG4gICAgICAgICAgICBzdHJ1Y3R1cmVkQ2xvbmUodGhpcy5nZXRUcmVlSXRlbShwYXRoQXJyWzBdKSlcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKGhhc1BhcmVudCkge1xuICAgICAgICAgICAgLy8gQ2FsY3VsYXRlcyBwYXJlbnQgcGF0aFxuICAgICAgICAgICAgY29uc3QgcGFyZW50UGF0aCA9IHBhdGhBcnIuam9pbignLicpO1xuICAgICAgICAgICAgLy8gQ3JlYXRpbmcgbm9kZSBpbmRleCBzZXF1ZW5jZSBmLmUgSWYgcGF0aCBpcyAnMS4yJyBpdCB3aWxsIGJlIFsxLDJdXG4gICAgICAgICAgICBjb25zdCBub2RlSW5kZXhTZXEgPSBwYXJlbnRQYXRoLnNwbGl0KCcuJykubWFwKChpbmRleFN0cikgPT4gcGFyc2VJbnQoaW5kZXhTdHIsIDEwKSk7XG4gICAgICAgICAgICAvLyBDYWxjdWxhdGluZyB0aGUgbm9kZSBwYXRocyBhcnJheSB0byBiZSByZS1jYWxjdWxhdGVkIGZyb20gYm90dG9tIHRvIHRvcFxuICAgICAgICAgICAgY29uc3Qgbm9kZVBhdGhzU2VxID0gW107XG4gICAgICAgICAgICBub2RlSW5kZXhTZXEuZm9yRWFjaCgobm9kZUluZGV4LCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgIG5vZGVQYXRoc1NlcVtpbmRleF0gPSBub2RlSW5kZXhTZXEuc2xpY2UoMCwgaW5kZXggKyAxKS5qb2luKCcuJyk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIG5vZGVQYXRoc1NlcS5mb3JFYWNoKChub2RlUGF0aDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgdHJlZUl0ZW0gPSB0aGlzLmdldFRyZWVJdGVtKG5vZGVQYXRoKTtcbiAgICAgICAgICAgICAgICBjb25zdCBydW5UaW1lVHJlZUl0ZW0gPSB0aGlzLmdldFJ1blRpbWVTZWxlY3Rpb25SZWN1cnNpdmVTdGF0ZShub2RlUGF0aCk7XG4gICAgICAgICAgICAgICAgaWYgKHRyZWVJdGVtPy5ub2RlPy5zZWxlY3RhYmxlICYmIHRyZWVJdGVtLm5vZGU/LnNlbGVjdENvbmZpZz8ucmVjdXJzaXZlKSB7XG4gICAgICAgICAgICAgICAgICAgIHRyZWVJdGVtLm5vZGUuaXNTZWxlY3RlZCA9IHJ1blRpbWVUcmVlSXRlbS5zZWxlY3Rpb25SZWN1cnNpdmVTdGF0ZSA9PT0gJ2FsbFNlbGVjdGVkJztcbiAgICAgICAgICAgICAgICAgICAgdHJlZUl0ZW0ubm9kZS5pc0luZGV0ZXJtaW5hdGUgPSBydW5UaW1lVHJlZUl0ZW0uc2VsZWN0aW9uUmVjdXJzaXZlU3RhdGUgPT09ICdpbmRldGVybWluYXRlJztcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRyZWVJdGVtLm5vZGUuaXNTZWxlY3RlZCA9PT0gdHJ1ZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gcnVuVGltZVRyZWVJdGVtLm5vZGUuaXNTZWxlY3RlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyB0aGlzLmNka1RyZWVDb250cm9sLmRhdGFOb2RlcyA9IHRoaXMudHJlZURhdGFSdW5UaW1lO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RUcmVlSXRlbShydW5UaW1lVHJlZUl0ZW0pO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gcnVuVGltZVRyZWVJdGVtLm5vZGUuaXNTZWxlY3RlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyB0aGlzLmNka1RyZWVDb250cm9sLmRhdGFOb2RlcyA9IHRoaXMudHJlZURhdGFSdW5UaW1lO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXNlbGVjdFRyZWVJdGVtKHJ1blRpbWVUcmVlSXRlbSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gZGVidWdnZXJcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaGFzQ2hpbGQgPSAoXzogbnVtYmVyLCBpdGVtOiBUcmVlSXRlbVJ1blRpbWVNb2RlbCkgPT4gISFpdGVtPy5jaGlsZHJlbiAmJiBpdGVtPy5jaGlsZHJlbj8ubGVuZ3RoID4gMDtcblxuICAgIG9uU2VsZWN0Rm4ocGF0aDogc3RyaW5nLCB0cmVlSXRlbU1vZGVsOiBUcmVlSXRlbVJ1blRpbWVNb2RlbCk6IChldnQ6IGFueSkgPT4gdm9pZCB7XG4gICAgICAgIGlmICh0cmVlSXRlbU1vZGVsPy5ub2RlPy5zZWxlY3RhYmxlKSB7XG4gICAgICAgICAgICBjb25zdCBub2RlU2VsZWN0ZWQgPSB0aGlzLm5vZGVTZWxlY3RlZC5iaW5kKHRoaXMpO1xuICAgICAgICAgICAgcmV0dXJuIChldnQ6IGFueSkgPT4gbm9kZVNlbGVjdGVkKGV2dCwgcGF0aCwgdHJlZUl0ZW1Nb2RlbCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIChldnQ6IGFueSkgPT4ge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKCd0cmVlSXRlbU1vZGVsLm5vZGUuc2VsZWN0YWJsZSBpcyBmYWxzZSwgeW91IGNhbiBub3QgaW1wbGVtZW50IG9uU2VsZWN0Jyk7XG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0VHJlZSgpIHtcbiAgICAgICAgaWYgKHRoaXMubm9kZXMpIHtcbiAgICAgICAgICAgIHRoaXMubm9kZXMgPSB0aGlzLnByb2Nlc3NJbnB1dHMoc3RydWN0dXJlZENsb25lKHRoaXMubm9kZXMpKTtcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlVHJlZURhdGFSdW50aW1lKHRoaXMubm9kZXMpO1xuICAgICAgICAgICAgdGhpcy5jZGtBcnJheURhdGFTb3VyY2UgPSBuZXcgQXJyYXlEYXRhU291cmNlKHRoaXMudHJlZURhdGFSdW5UaW1lKTtcbiAgICAgICAgICAgIHRoaXMuY2RrVHJlZUNvbnRyb2wgPSBuZXcgTmVzdGVkVHJlZUNvbnRyb2w8VHJlZUl0ZW1SdW5UaW1lTW9kZWw+KChub2RlKSA9PiBub2RlPy5jaGlsZHJlbik7XG4gICAgICAgICAgICB0aGlzLmNka1RyZWVDb250cm9sLmRhdGFOb2RlcyA9IHRoaXMudHJlZURhdGFSdW5UaW1lO1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJJbml0aWFsRXhwYW5kKHRoaXMudHJlZURhdGFSdW5UaW1lKTtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uTW9kZWwgPSBuZXcgU2VsZWN0aW9uTW9kZWw8VHJlZUl0ZW1SdW5UaW1lTW9kZWw+KFxuICAgICAgICAgICAgICAgIHRydWUsXG4gICAgICAgICAgICAgICAgdGhpcy5nZXRJbml0aWFsU2VsZWN0aW9uKHRoaXMudHJlZURhdGFSdW5UaW1lKSxcbiAgICAgICAgICAgICAgICB0cnVlLFxuICAgICAgICAgICAgICAgIChhLCBiKSA9PiBhPy5wYXRoID09PSBiPy5wYXRoXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJUcmVlID0gdHJ1ZTtcbiAgICAgICAgICAgIGlmICh0aGlzLnNlbGVjdGlvbk1vZGVsU3Vicykge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uTW9kZWxTdWJzLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGlvbk1vZGVsU3VicyA9IHRoaXMuc2VsZWN0aW9uTW9kZWwuY2hhbmdlZC5zdWJzY3JpYmUoKHNjKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3Rpb25DaGFuZ2UuZW1pdCh7XG4gICAgICAgICAgICAgICAgICAgIGFkZGVkOiBzYy5hZGRlZC5tYXAoKF8pID0+IHRoaXMuZ2V0VHJlZUl0ZW0oXy5wYXRoKSksXG4gICAgICAgICAgICAgICAgICAgIHJlbW92ZWQ6IHNjLnJlbW92ZWQubWFwKChfKSA9PiB0aGlzLmdldFRyZWVJdGVtKF8ucGF0aCkpLFxuICAgICAgICAgICAgICAgICAgICBzZWxlY3Rpb246IFsuLi50aGlzLnNlbGVjdGlvbk1vZGVsLnNlbGVjdGVkXS5tYXAoKGl0ZW0pID0+IHRoaXMuZ2V0VHJlZUl0ZW0oaXRlbS5wYXRoKSksXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHByb2Nlc3NJbnB1dHModHJlZURhdGE6IFRyZWVEYXRhTW9kZWwpOiBUcmVlRGF0YU1vZGVsIHtcbiAgICAgICAgaWYgKHRoaXMuaXNNdWx0aXNlbGVjdCkge1xuICAgICAgICAgICAgdHJlZURhdGEgPSB0aGlzLm92ZXJyaWRlVHJlZURhdGFNb2RlbEZvclNlbGVjdGlvbih0cmVlRGF0YSwgdGhpcy5pc1JlY3Vyc2l2ZVNlbGVjdGlvbiwgIXRoaXMuaXNSZWN1cnNpdmVQYXJlbnRTZWxlY3Rpb24pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0cmVlRGF0YTtcbiAgICB9XG5cbiAgICBwcml2YXRlIG92ZXJyaWRlVHJlZURhdGFNb2RlbEZvclNlbGVjdGlvbihub2RlQXJyOiBUcmVlRGF0YU1vZGVsLCBpc1JlY3Vyc2l2ZTogYm9vbGVhbiwgbm9BdXRvU2VsZWN0UGFyZW50OiBib29sZWFuKTogVHJlZURhdGFNb2RlbCB7XG4gICAgICAgIHJldHVybiBub2RlQXJyPy5tYXAoKGl0ZW06IFRyZWVJdGVtTW9kZWwsIGluZGV4OiBudW1iZXIpID0+IHtcbiAgICAgICAgICAgIGlmIChpdGVtPy5jaGlsZHJlbiAmJiBpdGVtLmNoaWxkcmVuLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICAuLi5pdGVtLFxuICAgICAgICAgICAgICAgICAgICBub2RlOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuLi5pdGVtLm5vZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3RhYmxlOiB0eXBlb2YgaXRlbT8ubm9kZT8uc2VsZWN0YWJsZSA9PT0gJ3VuZGVmaW5lZCcgPyB0cnVlIDogaXRlbT8ubm9kZT8uc2VsZWN0YWJsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGlzU2VsZWN0ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gaXNJbmRldGVybWluYXRlOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdENvbmZpZzoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLml0ZW0ubm9kZS5zZWxlY3RDb25maWcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVjdXJzaXZlOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlb2YgaXRlbT8ubm9kZT8uc2VsZWN0Q29uZmlnPy5yZWN1cnNpdmUgPT09ICd1bmRlZmluZWQnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/ICEhaXNSZWN1cnNpdmVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogaXRlbT8ubm9kZT8uc2VsZWN0Q29uZmlnPy5yZWN1cnNpdmUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbm9BdXRvU2VsZWN0UGFyZW50OlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlb2YgaXRlbT8ubm9kZT8uc2VsZWN0Q29uZmlnPy5ub0F1dG9TZWxlY3RQYXJlbnQgPT09ICd1bmRlZmluZWQnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IG5vQXV0b1NlbGVjdFBhcmVudFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBpdGVtPy5ub2RlPy5zZWxlY3RDb25maWc/Lm5vQXV0b1NlbGVjdFBhcmVudCxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIGNoaWxkcmVuOiB0aGlzLm92ZXJyaWRlVHJlZURhdGFNb2RlbEZvclNlbGVjdGlvbihpdGVtLmNoaWxkcmVuLCBpc1JlY3Vyc2l2ZSwgbm9BdXRvU2VsZWN0UGFyZW50KSxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICAuLi5pdGVtLFxuICAgICAgICAgICAgICAgICAgICBub2RlOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuLi5pdGVtLm5vZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3RhYmxlOiB0eXBlb2YgaXRlbT8ubm9kZT8uc2VsZWN0YWJsZSA9PT0gJ3VuZGVmaW5lZCcgPyB0cnVlIDogaXRlbT8ubm9kZT8uc2VsZWN0YWJsZSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFNlbGVjdGlvbkluZGV4T2ZJdGVtKHJ1blRpbWVUcmVlSXRlbTogVHJlZUl0ZW1SdW5UaW1lTW9kZWwpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5zZWxlY3Rpb25Nb2RlbC5zZWxlY3RlZC5maW5kSW5kZXgoKGkpID0+IGk/LnBhdGggPT09IHJ1blRpbWVUcmVlSXRlbT8ucGF0aCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZWxlY3RUcmVlSXRlbShydW5UaW1lVHJlZUl0ZW06IFRyZWVJdGVtUnVuVGltZU1vZGVsKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGluZGV4T2ZJdGVtID0gdGhpcy5nZXRTZWxlY3Rpb25JbmRleE9mSXRlbShydW5UaW1lVHJlZUl0ZW0pO1xuICAgICAgICBpZiAoaW5kZXhPZkl0ZW0gPT09IC0xKSB7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGlvbk1vZGVsLnNlbGVjdChydW5UaW1lVHJlZUl0ZW0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBkZXNlbGVjdFRyZWVJdGVtKHJ1blRpbWVUcmVlSXRlbTogVHJlZUl0ZW1SdW5UaW1lTW9kZWwpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaW5kZXhPZkl0ZW0gPSB0aGlzLmdldFNlbGVjdGlvbkluZGV4T2ZJdGVtKHJ1blRpbWVUcmVlSXRlbSk7XG4gICAgICAgIGlmIChpbmRleE9mSXRlbSA+IC0xKSB7XG4gICAgICAgICAgICBjb25zdCBuZXdTZWxlY3Rpb24gPSBbLi4udGhpcy5zZWxlY3Rpb25Nb2RlbC5zZWxlY3RlZF07XG4gICAgICAgICAgICBuZXdTZWxlY3Rpb24uc3BsaWNlKGluZGV4T2ZJdGVtLCAxKTtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uTW9kZWwuc2V0U2VsZWN0aW9uKC4uLm5ld1NlbGVjdGlvbik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDcmVhdGVzIHRyZWVEYXRhUnVuVGltZSAmIHJ1blRpbWVTZWxlY3Rpb25SZWN1cnNpdmVTdGF0ZSBmb3Igc2VwYXJhdGUgdGhlIGxvZ2ljLlxuICAgIHByaXZhdGUgY3JlYXRlVHJlZURhdGFSdW50aW1lKG5vZGVzOiBUcmVlRGF0YU1vZGVsKTogdm9pZCB7XG4gICAgICAgIHRoaXMudHJlZURhdGFSdW5UaW1lID0gc3RydWN0dXJlZENsb25lKG5vZGVzKT8ubWFwKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY2FsY3VsYXRlUnVuVGltZVN0YXRlKHsgLi4uaXRlbSB9LCBpbmRleCk7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnJ1blRpbWVTZWxlY3Rpb25SZWN1cnNpdmVTdGF0ZSA9IHRoaXMudHJlZURhdGFSdW5UaW1lLm1hcCgoaXRlbSkgPT4gdGhpcy5jYWxjdWxhdGVJdGVtU2VsZWN0aW9uUmVjdXJzaXZlU3RhdGUoeyAuLi5pdGVtIH0pKTtcbiAgICB9XG5cbiAgICAvLyBDcmVhdGluZyBydW4gdGltZSBzdGF0ZSB3aGljaCBpbmNsdWRlcyBjaGlsZHJlbiBzZWxlY3Rpb24gc3RhdGUgZm9yIHNlbGVjdGlvbiB0cmVlLlxuICAgIHByaXZhdGUgY2FsY3VsYXRlSXRlbVNlbGVjdGlvblJlY3Vyc2l2ZVN0YXRlKHRyZWVJdGVtOiBUcmVlSXRlbVJ1blRpbWVNb2RlbCk6IFRyZWVJdGVtUnVuVGltZU1vZGVsIHtcbiAgICAgICAgbGV0IGNoaWxkU3RhdGVzID0gW107XG4gICAgICAgIGxldCBpdGVtU3RhdGU6IFNlbGVjdGlvblJlY3Vyc2l2ZVN0YXRlID0gJ2luZGV0ZXJtaW5hdGUnO1xuICAgICAgICBpZiAodHJlZUl0ZW0uY2hpbGRyZW4gJiYgdHJlZUl0ZW0uY2hpbGRyZW4ubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgdHJlZUl0ZW0uY2hpbGRyZW4uZm9yRWFjaCgoY2hpbGQsIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgdHJlZUl0ZW0uY2hpbGRyZW5baW5kZXhdID0gdGhpcy5jYWxjdWxhdGVJdGVtU2VsZWN0aW9uUmVjdXJzaXZlU3RhdGUoY2hpbGQpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBjb25zdCBydW5UaW1lSXRlbXMgPSB0cmVlSXRlbS5jaGlsZHJlbiBhcyBhbnk7XG4gICAgICAgICAgICBjaGlsZFN0YXRlcyA9IHJ1blRpbWVJdGVtcy5tYXAoKGl0ZW0pID0+IGl0ZW0uc2VsZWN0aW9uUmVjdXJzaXZlU3RhdGUpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0cmVlSXRlbS5ub2RlLmlzU2VsZWN0ZWQgJiYgY2hpbGRTdGF0ZXMuZXZlcnkoKHN0YXRlKSA9PiBzdGF0ZSA9PT0gJ2FsbFNlbGVjdGVkJykpIHtcbiAgICAgICAgICAgIGl0ZW1TdGF0ZSA9ICdhbGxTZWxlY3RlZCc7XG4gICAgICAgIH0gZWxzZSBpZiAoIXRyZWVJdGVtLm5vZGUuaXNTZWxlY3RlZCAmJiBjaGlsZFN0YXRlcy5ldmVyeSgoc3RhdGUpID0+IHN0YXRlID09PSAnYWxsTm90U2VsZWN0ZWQnKSkge1xuICAgICAgICAgICAgaXRlbVN0YXRlID0gJ2FsbE5vdFNlbGVjdGVkJztcbiAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICAgIHRyZWVJdGVtLm5vZGU/LnNlbGVjdENvbmZpZz8ucmVjdXJzaXZlICYmXG4gICAgICAgICAgICBjaGlsZFN0YXRlcy5ldmVyeSgoc3RhdGUpID0+IHN0YXRlID09PSAnYWxsU2VsZWN0ZWQnKSAmJlxuICAgICAgICAgICAgIXRyZWVJdGVtLm5vZGUuaXNTZWxlY3RlZFxuICAgICAgICApIHtcbiAgICAgICAgICAgIGlmICghdHJlZUl0ZW0/Lm5vZGU/LnNlbGVjdENvbmZpZz8ubm9BdXRvU2VsZWN0UGFyZW50KSB7XG4gICAgICAgICAgICAgICAgdHJlZUl0ZW0ubm9kZS5pc1NlbGVjdGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdFRyZWVJdGVtKHRyZWVJdGVtKTtcbiAgICAgICAgICAgICAgICBpdGVtU3RhdGUgPSAnYWxsU2VsZWN0ZWQnO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgICAgdHJlZUl0ZW0ubm9kZT8uc2VsZWN0Q29uZmlnPy5yZWN1cnNpdmUgJiZcbiAgICAgICAgICAgIGNoaWxkU3RhdGVzLmV2ZXJ5KChzdGF0ZSkgPT4gc3RhdGUgPT09ICdhbGxOb3RTZWxlY3RlZCcpICYmXG4gICAgICAgICAgICB0cmVlSXRlbS5ub2RlLmlzU2VsZWN0ZWRcbiAgICAgICAgKSB7XG4gICAgICAgICAgICB0cmVlSXRlbS5ub2RlLmlzU2VsZWN0ZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMuZGVzZWxlY3RUcmVlSXRlbSh0cmVlSXRlbSk7XG4gICAgICAgICAgICBpdGVtU3RhdGUgPSAnYWxsTm90U2VsZWN0ZWQnO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi50cmVlSXRlbSxcbiAgICAgICAgICAgIHNlbGVjdGlvblJlY3Vyc2l2ZVN0YXRlOiBpdGVtU3RhdGUsXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRSdW5UaW1lU2VsZWN0aW9uUmVjdXJzaXZlU3RhdGUocGF0aDogc3RyaW5nKTogVHJlZUl0ZW1SdW5UaW1lTW9kZWwge1xuICAgICAgICBjb25zdCBpbmRleEFycjogQXJyYXk8bnVtYmVyPiA9IHRoaXMucmVzb2x2ZVBhdGgocGF0aCk7XG4gICAgICAgIGxldCBub2RlQXJyID0gdGhpcy5ydW5UaW1lU2VsZWN0aW9uUmVjdXJzaXZlU3RhdGU7XG4gICAgICAgIGxldCBub2RlO1xuICAgICAgICBpbmRleEFyci5mb3JFYWNoKChwYXRoSW5kZXg6IG51bWJlciwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGlmIChpbmRleCA8IGluZGV4QXJyLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgICAgICAgICBub2RlQXJyID0gbm9kZUFycltwYXRoSW5kZXhdPy5jaGlsZHJlbjtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgbm9kZSA9IG5vZGVBcnJbcGF0aEluZGV4XTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBub2RlO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0SXNDaGVja2VkRm9yQWxsKG5vZGVBcnI6IFRyZWVEYXRhTW9kZWwsIGlzQ2hlY2tlZDogYm9vbGVhbiwgcnVuVGltZVRyZWVEYXRhOiBUcmVlRGF0YVJ1blRpbWVNb2RlbCk6IHZvaWQge1xuICAgICAgICBub2RlQXJyLmZvckVhY2goKGl0ZW06IFRyZWVJdGVtTW9kZWwsIGluZGV4OiBudW1iZXIpID0+IHtcbiAgICAgICAgICAgIGlmIChydW5UaW1lVHJlZURhdGFbaW5kZXhdICYmIG5vZGVBcnJbaW5kZXhdPy5ub2RlPy5zZWxlY3RhYmxlKSB7XG4gICAgICAgICAgICAgICAgbm9kZUFycltpbmRleF0gPSB7XG4gICAgICAgICAgICAgICAgICAgIC4uLml0ZW0sXG4gICAgICAgICAgICAgICAgICAgIG5vZGU6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLml0ZW0ubm9kZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzU2VsZWN0ZWQ6IGlzQ2hlY2tlZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzSW5kZXRlcm1pbmF0ZTogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICBpZiAoaXNDaGVja2VkKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0VHJlZUl0ZW0ocnVuVGltZVRyZWVEYXRhW2luZGV4XSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXNlbGVjdFRyZWVJdGVtKHJ1blRpbWVUcmVlRGF0YVtpbmRleF0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChydW5UaW1lVHJlZURhdGFbaW5kZXhdPy5jaGlsZHJlbj8ubGVuZ3RoID4gMCAmJiBub2RlQXJyW2luZGV4XS5jaGlsZHJlbiAmJiBub2RlQXJyW2luZGV4XS5jaGlsZHJlbi5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXRJc0NoZWNrZWRGb3JBbGwobm9kZUFycltpbmRleF0uY2hpbGRyZW4sIGlzQ2hlY2tlZCwgcnVuVGltZVRyZWVEYXRhW2luZGV4XS5jaGlsZHJlbik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVzb2x2ZVBhdGgocGF0aDogc3RyaW5nKTogQXJyYXk8bnVtYmVyPiB7XG4gICAgICAgIHJldHVybiBwYXRoPy5zcGxpdCgnLicpLm1hcCgoaW5kZXg6IHN0cmluZykgPT4gcGFyc2VJbnQoaW5kZXgsIDEwKSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVSdW5UaW1lU3RhdGUodHJlZUl0ZW06IFRyZWVJdGVtUnVuVGltZU1vZGVsLCBpbmRleDogbnVtYmVyLCBwYXJlbnRQYXRoPzogc3RyaW5nKTogVHJlZUl0ZW1SdW5UaW1lTW9kZWwge1xuICAgICAgICB0cmVlSXRlbS5wYXRoID0gcGFyZW50UGF0aCA/IHBhcmVudFBhdGggKyAnLicgKyBpbmRleCA6IGluZGV4LnRvU3RyaW5nKCk7XG4gICAgICAgIHRyZWVJdGVtLmluZGV4ID0gaW5kZXg7XG4gICAgICAgIGlmICh0cmVlSXRlbS5jaGlsZHJlbiAmJiB0cmVlSXRlbS5jaGlsZHJlbi5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICB0cmVlSXRlbS5jaGlsZHJlbi5mb3JFYWNoKChjaGlsZCwgdHJlZUl0ZW1JbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgIHRyZWVJdGVtLmNoaWxkcmVuW3RyZWVJdGVtSW5kZXhdID0gdGhpcy5jYWxjdWxhdGVSdW5UaW1lU3RhdGUoY2hpbGQsIHRyZWVJdGVtSW5kZXgsIHRyZWVJdGVtLnBhdGgpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRyZWVJdGVtO1xuICAgIH1cblxuICAgIHByaXZhdGUgZmlsdGVyVHJlZURhdGEodHJlZURhdGE6IFRyZWVEYXRhTW9kZWwsIGtleTogc3RyaW5nID0gJ2xhYmVsJywgZmlsdGVyU3RyOiBzdHJpbmcpIHtcbiAgICAgICAgcmV0dXJuIHRyZWVEYXRhLmZpbHRlcigodHJlZUl0ZW0pID0+IHtcbiAgICAgICAgICAgIGlmICh0cmVlSXRlbT8uY2hpbGRyZW4/Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICB0cmVlSXRlbS5jaGlsZHJlbiA9IHRoaXMuZmlsdGVyVHJlZURhdGEoWy4uLnRyZWVJdGVtLmNoaWxkcmVuXSwga2V5LCBmaWx0ZXJTdHIpO1xuICAgICAgICAgICAgICAgIHRyZWVJdGVtLmNoaWxkcmVuID0gdHJlZUl0ZW0uY2hpbGRyZW4ubGVuZ3RoID4gMCA/IHRyZWVJdGVtLmNoaWxkcmVuIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHRyZWVJdGVtLm5vZGUudHJlZUNvbnRlbnRCbG9jay5sYWJlbC5pbmNsdWRlcyhmaWx0ZXJTdHIpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHRyZWVJdGVtPy5jaGlsZHJlbj8ubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0cmVlSXRlbT8uY2hpbGRyZW4/Lmxlbmd0aCA+IDA7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRJbml0aWFsU2VsZWN0aW9uKG5vZGVzOiBUcmVlRGF0YVJ1blRpbWVNb2RlbCk6IEFycmF5PFRyZWVJdGVtUnVuVGltZU1vZGVsPiB7XG4gICAgICAgIGNvbnN0IHNlbGVjdGlvbjogQXJyYXk8VHJlZUl0ZW1SdW5UaW1lTW9kZWw+ID0gW107XG4gICAgICAgIHRoaXMuc2NhblNlbGVjdGlvbihub2Rlcywgc2VsZWN0aW9uKTtcbiAgICAgICAgcmV0dXJuIHNlbGVjdGlvbjtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNjYW5TZWxlY3Rpb24obm9kZXM6IFRyZWVEYXRhUnVuVGltZU1vZGVsLCBzZWxlY3Rpb246IEFycmF5PFRyZWVJdGVtUnVuVGltZU1vZGVsPikge1xuICAgICAgICBub2Rlcy5mb3JFYWNoKChpdGVtOiBUcmVlSXRlbVJ1blRpbWVNb2RlbCkgPT4ge1xuICAgICAgICAgICAgaWYgKGl0ZW0ubm9kZT8uc2VsZWN0YWJsZSAmJiBpdGVtLm5vZGUuaXNTZWxlY3RlZCkge1xuICAgICAgICAgICAgICAgIHNlbGVjdGlvbi5wdXNoKGl0ZW0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGl0ZW0/LmNoaWxkcmVuPy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zY2FuU2VsZWN0aW9uKGl0ZW0uY2hpbGRyZW4sIHNlbGVjdGlvbik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVuZGVySW5pdGlhbEV4cGFuZChub2RlczogVHJlZURhdGFSdW5UaW1lTW9kZWwpIHtcbiAgICAgICAgbm9kZXMuZm9yRWFjaCgoaXRlbTogVHJlZUl0ZW1SdW5UaW1lTW9kZWwpID0+IHtcbiAgICAgICAgICAgIGlmIChpdGVtPy5ub2RlPy5pc0V4cGFuZGVkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5leHBhbmRBdChpdGVtLnBhdGgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGl0ZW0/LmNoaWxkcmVuPy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJJbml0aWFsRXhwYW5kKGl0ZW0uY2hpbGRyZW4pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFJ1blRpbWVUcmVlSXRlbShwYXRoOiBzdHJpbmcpOiBUcmVlSXRlbU1vZGVsIHtcbiAgICAgICAgY29uc3QgaW5kZXhBcnI6IEFycmF5PG51bWJlcj4gPSB0aGlzLnJlc29sdmVQYXRoKHBhdGgpO1xuICAgICAgICBsZXQgbm9kZUFyciA9IHRoaXMudHJlZURhdGFSdW5UaW1lO1xuICAgICAgICBsZXQgbm9kZTtcbiAgICAgICAgaWYgKG5vZGVBcnIgJiYgQXJyYXkuaXNBcnJheShub2RlQXJyKSkge1xuICAgICAgICAgICAgaW5kZXhBcnI/LmZvckVhY2goKHBhdGhJbmRleDogbnVtYmVyLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChpbmRleCA8IGluZGV4QXJyLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgICAgICAgICAgICAgbm9kZUFyciA9IG5vZGVBcnIgJiYgbm9kZUFycltwYXRoSW5kZXhdPy5jaGlsZHJlbjtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBub2RlID0gbm9kZUFycltwYXRoSW5kZXhdO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBub2RlO1xuICAgIH1cbn1cblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgUm91dGVyTW9kdWxlLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgICAgICBFdWlJbnB1dENoZWNrYm94TW9kdWxlLFxuICAgICAgICBDZGtUcmVlTW9kdWxlLFxuICAgICAgICBFdWlCdXR0b25Nb2R1bGUsXG4gICAgICAgIEV1aUljb25Nb2R1bGUsXG4gICAgICAgIEV1aUxhYmVsTW9kdWxlLFxuICAgICAgICBFdWlCYWRnZU1vZHVsZSxcbiAgICAgICAgRXVpQ2hpcE1vZHVsZSxcbiAgICAgICAgRXVpRHJvcGRvd25Nb2R1bGUsXG4gICAgXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtFdWlUcmVlQ29tcG9uZW50XSxcbiAgICBleHBvcnRzOiBbRXVpVHJlZUNvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIEV1aVRyZWVNb2R1bGUge31cbiIsIjx1bCBjbGFzcz1cImV1aS10cmVlX193cmFwcGVyXCI+XG4gICAgPGNkay10cmVlIFtkYXRhU291cmNlXT1cImNka0FycmF5RGF0YVNvdXJjZVwiIFt0cmVlQ29udHJvbF09XCJjZGtUcmVlQ29udHJvbFwiIFt0cmFja0J5XT1cInRyYWNrQnlcIiAqbmdJZj1cInJlbmRlclRyZWVcIiBjbGFzcz1cImV1aS1jZGstdHJlZVwiPlxuICAgICAgICA8IS0tIFRoZXJlIGFyZSB0d28gc3RhdGVzIG9mIGdlbmVyaWMgY2RrLW5lc3RlZC10cmVlLW5vZGUgZGVjbGFyYXRpb25zLlxuICAgICAgICBGaXJzdCBvbmUgaXMgd2l0aG91dCBjaGlsZC4gTm8gc3ViIHJlbmRlcmluZy5cbiAgICAgICAgLS0+XG4gICAgICAgIDxjZGstbmVzdGVkLXRyZWUtbm9kZSAqY2RrVHJlZU5vZGVEZWY9XCJsZXQgdHJlZUl0ZW1Nb2RlbFwiIGNsYXNzPVwiZXVpLWNkay1uZXN0ZWQtdHJlZS1ub2RlXCI+XG4gICAgICAgICAgICA8bGlcbiAgICAgICAgICAgICAgICBjbGFzcz1cImV1aS10cmVlLW5vZGVcIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwidHJlZUl0ZW1Nb2RlbFwiXG4gICAgICAgICAgICAgICAgdGl0bGU9XCJ7e1xuICAgICAgICAgICAgICAgICAgICBnZXRUcmVlSXRlbSh0cmVlSXRlbU1vZGVsPy5wYXRoKT8ubm9kZT8udHJlZUNvbnRlbnRCbG9jaz8udG9vbHRpcExhYmVsIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICBnZXRUcmVlSXRlbSh0cmVlSXRlbU1vZGVsPy5wYXRoKT8ubm9kZT8udHJlZUNvbnRlbnRCbG9jaz8ubGFiZWxcbiAgICAgICAgICAgICAgICB9fVwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldWktdHJlZS1ub2RlLXdyYXBwZXJcIiAoY2xpY2spPVwib25Ob2RlQ2xpY2sodHJlZUl0ZW1Nb2RlbClcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV1aS10cmVlLW5vZGUtd3JhcHBlcl9fY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tXG4gICAgICAgICAgICAgICAgICAgICAgICBSZW5kZXJzIG5vZGUgaW4gZGVmYXVsdCBvciBwcm92aWRlZCB0ZW1wbGF0ZSdzIGNvbnRleHQuXG4gICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZXMgb25TZWxlY3Qgd2l0aCBvblNlbGVjdEZuIGZvciBkZXZlbG9wZXJzIHRvIHNlbmQgdGhlIGV2ZW50cyBmcm9tIHRoZWlyIGN1c3RvbSBjaGVjayBldmVudHMuXG4gICAgICAgICAgICAgICAgICAgICAgICBQcm92aWRlcyBpZCB0byBiZSB1c2VkIG9uIGdlbmVyaWMgdGVtcGxhdGVcbiAgICAgICAgICAgICAgICAgICAgICAgIC0tPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIm5vZGVUZW1wbGF0ZVJlZiB8fCBub2RlVGVtcGxhdGVEZWZhdWx0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkaW1wbGljaXQ6IGdldFRyZWVJdGVtKHRyZWVJdGVtTW9kZWw/LnBhdGgpPy5ub2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvblNlbGVjdDogb25TZWxlY3RGbih0cmVlSXRlbU1vZGVsLnBhdGgsIHRyZWVJdGVtTW9kZWwpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogdWlkICsgdHJlZUl0ZW1Nb2RlbC5wYXRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9saT5cbiAgICAgICAgPC9jZGstbmVzdGVkLXRyZWUtbm9kZT5cbiAgICAgICAgPCEtLSBUaGlzIGlzIHRoZSB0cmVlIG5vZGUgdGVtcGxhdGUgZm9yIGV4cGFuZGFibGUgbm9kZXMgLS0+XG4gICAgICAgIDxjZGstbmVzdGVkLXRyZWUtbm9kZVxuICAgICAgICAgICAgKmNka1RyZWVOb2RlRGVmPVwibGV0IHRyZWVJdGVtTW9kZWw7IHdoZW46IGhhc0NoaWxkXCJcbiAgICAgICAgICAgIGNsYXNzPVwiZXVpLWNkay1uZXN0ZWQtdHJlZS1ub2RlIGV1aS1jZGstbmVzdGVkLXRyZWUtbm9kZS0td2l0aC1jaGlsZFwiPlxuICAgICAgICAgICAgPGxpXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJldWktdHJlZS1ub2RlXCJcbiAgICAgICAgICAgICAgICAqbmdJZj1cInRyZWVJdGVtTW9kZWxcIlxuICAgICAgICAgICAgICAgIHRpdGxlPVwie3tcbiAgICAgICAgICAgICAgICAgICAgZ2V0VHJlZUl0ZW0odHJlZUl0ZW1Nb2RlbD8ucGF0aCk/Lm5vZGU/LnRyZWVDb250ZW50QmxvY2s/LnRvb2x0aXBMYWJlbCB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgZ2V0VHJlZUl0ZW0odHJlZUl0ZW1Nb2RlbD8ucGF0aCk/Lm5vZGU/LnRyZWVDb250ZW50QmxvY2s/LmxhYmVsXG4gICAgICAgICAgICAgICAgfX1cIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXVpLXRyZWUtbm9kZS13cmFwcGVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDwhLS1IZXJlIHdyYXBzIHRoZSBub2RlLCBhbmQgbGlzdGVuIGZvciBub2RlIGNsaWNrcy4tLT5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAoY2xpY2spPVwib25Ob2RlQ2xpY2sodHJlZUl0ZW1Nb2RlbClcIiBjbGFzcz1cImV1aS10cmVlLW5vZGUtd3JhcHBlcl9fY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEV4cGFuZC9jb2xsYXBzZSBhY3Rpb24gYnV0dG9uIC0tPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV1aUJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV1aUljb25CdXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBldWlCYXNpY0J1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV1aVJvdW5kZWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBldWlTaXplU1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ1RvZ2dsZSAnICsgdHJlZUl0ZW1Nb2RlbD8ubm9kZT8udHJlZUNvbnRlbnRCbG9jaz8ubGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbk5vZGVUb2dnbGUodHJlZUl0ZW1Nb2RlbClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNka1RyZWVOb2RlVG9nZ2xlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJldWktdS1tci14c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV1aUljb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCIhY2RrVHJlZUNvbnRyb2wuaXNFeHBhbmRlZCh0cmVlSXRlbU1vZGVsKSAmJiBjb2xsYXBzZWRJY29uQ2xhc3NcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaWNvbkNsYXNzXT1cImNvbGxhcHNlZEljb25DbGFzc1wiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldWlJY29uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY2RrVHJlZUNvbnRyb2wuaXNFeHBhbmRlZCh0cmVlSXRlbU1vZGVsKSAmJiBleHBhbmRlZEljb25DbGFzc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpY29uQ2xhc3NdPVwiZXhwYW5kZWRJY29uQ2xhc3NcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGV1aS1pY29uLXN2Z1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiFjZGtUcmVlQ29udHJvbC5pc0V4cGFuZGVkKHRyZWVJdGVtTW9kZWwpICYmICFjb2xsYXBzZWRJY29uQ2xhc3NcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaWNvbl09XCJleHBhbmRlZFN2Z0ljb25DbGFzc1wiPjwvZXVpLWljb24tc3ZnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxldWktaWNvbi1zdmdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJjZGtUcmVlQ29udHJvbC5pc0V4cGFuZGVkKHRyZWVJdGVtTW9kZWwpICYmICFleHBhbmRlZEljb25DbGFzc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpY29uXT1cImNvbGxhcHNlZFN2Z0ljb25DbGFzc1wiPjwvZXVpLWljb24tc3ZnPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8IS0tXG4gICAgICAgICAgICAgICAgICAgICAgICBSZW5kZXJzIG5vZGUgaW4gZGVmYXVsdCBvciBwcm92aWRlZCB0ZW1wbGF0ZSdzIGNvbnRleHQuXG4gICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZXMgb25TZWxlY3Qgd2l0aCBvblNlbGVjdEZuIGZvciBkZXZlbG9wZXJzIHRvIHNlbmQgdGhlIGV2ZW50cyBmcm9tIHRoZWlyIGN1c3RvbSBjaGVjayBldmVudHMuXG4gICAgICAgICAgICAgICAgICAgICAgICBQcm92aWRlcyBpZCB0byBiZSB1c2VkIG9uIGdlbmVyaWMgdGVtcGxhdGVcbiAgICAgICAgICAgICAgICAgICAgICAgIC0tPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIm5vZGVUZW1wbGF0ZVJlZiB8fCBub2RlVGVtcGxhdGVEZWZhdWx0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkaW1wbGljaXQ6IGdldFRyZWVJdGVtKHRyZWVJdGVtTW9kZWw/LnBhdGgpPy5ub2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvblNlbGVjdDogb25TZWxlY3RGbih0cmVlSXRlbU1vZGVsPy5wYXRoLCB0cmVlSXRlbU1vZGVsKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IHVpZCArIHRyZWVJdGVtTW9kZWwucGF0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8IS0tdXNlcyBjZGtUcmVlTm9kZU91dGxldCB0byByZW5kZXIgY2hpbGRyZW4gbm9kZXMsIENka1RyZWVDb250cm9sIGlzIHVzZWQgdG8gY29udHJvbCBpc0V4cGFuZGVkIHN0YXRlLi0tPlxuICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cImV1aS10cmVlLW5vZGVcIiAqbmdJZj1cImNka1RyZWVDb250cm9sLmlzRXhwYW5kZWQodHJlZUl0ZW1Nb2RlbClcIj5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBjZGtUcmVlTm9kZU91dGxldD48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgPC9saT5cbiAgICAgICAgPC9jZGstbmVzdGVkLXRyZWUtbm9kZT5cbiAgICA8L2Nkay10cmVlPlxuPC91bD5cblxuPG5nLXRlbXBsYXRlICNub2RlVGVtcGxhdGVEZWZhdWx0IGxldC1ub2RlIGxldC1vblNlbGVjdD1cIm9uU2VsZWN0XCIgbGV0LWlkPVwiaWRcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibm9kZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZXVpLXRyZWUtbm9kZS13cmFwcGVyX19jb250YWluZXItbGVmdFwiIFtjbGFzcy5ldWktdHJlZS1ub2RlLXdyYXBwZXJfX2NvbnRhaW5lci1sZWZ0LS1zZWxlY3RlZF09XCJub2RlPy5pc1NlbGVjdGVkXCI+XG4gICAgICAgICAgICA8IS0taW5wdXQgY2hlY2tib3ggYXJlYS0tPlxuICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgZXVpSW5wdXRDaGVja0JveFxuICAgICAgICAgICAgICAgICpuZ0lmPVwibm9kZSAmJiBub2RlLnNlbGVjdGFibGVcIlxuICAgICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAgICAgaWQ9XCJ7eyBpZCB9fVwiXG4gICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwibm9kZSAmJiBub2RlLmlzU2VsZWN0ZWRcIlxuICAgICAgICAgICAgICAgIFtpbmRldGVybWluYXRlXT1cIm5vZGUgJiYgbm9kZS5pc0luZGV0ZXJtaW5hdGVcIlxuICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwib25TZWxlY3QoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJldWktdS1tci1tXCIgLz5cblxuICAgICAgICAgICAgPCEtLWljb24gYXJlYS0tPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm5vZGU/LnRyZWVDb250ZW50QmxvY2s/Lmljb25DbGFzc1wiPlxuICAgICAgICAgICAgICAgIDxldWktaWNvblxuICAgICAgICAgICAgICAgICAgICBbZXVpVmFyaWFudF09XCJub2RlPy50cmVlQ29udGVudEJsb2NrPy5pY29uVHlwZUNsYXNzIHx8ICdwcmltYXJ5J1wiXG4gICAgICAgICAgICAgICAgICAgIGljb25DbGFzcz1cInt7IG5vZGU/LnRyZWVDb250ZW50QmxvY2s/Lmljb25DbGFzcyB9fVwiXG4gICAgICAgICAgICAgICAgICAgIGV1aVNpemVTXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZXVpLXUtbXIteHNcIj5cbiAgICAgICAgICAgICAgICA8L2V1aS1pY29uPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibm9kZT8udHJlZUNvbnRlbnRCbG9jaz8uaWNvblN2Z05hbWVcIj5cbiAgICAgICAgICAgICAgICA8ZXVpLWljb24tc3ZnXG4gICAgICAgICAgICAgICAgICAgIGljb249XCJ7eyBub2RlPy50cmVlQ29udGVudEJsb2NrPy5pY29uU3ZnTmFtZSB9fVwiXG4gICAgICAgICAgICAgICAgICAgIGZpbGxDb2xvcj1cInt7IG5vZGU/LnRyZWVDb250ZW50QmxvY2s/Lmljb25UeXBlQ2xhc3MgfHwgJ2dyZXktMTAwJyB9fVwiXG4gICAgICAgICAgICAgICAgICAgIHNpemU9XCJzXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJldWktdS1tci14c1wiPlxuICAgICAgICAgICAgICAgIDwvZXVpLWljb24tc3ZnPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDwhLS1jaGlwcyBhcmVhLS0+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibm9kZT8udHJlZUNvbnRlbnRCbG9jaz8uY2hpcHNcIj5cbiAgICAgICAgICAgICAgICA8ZXVpLWNoaXBcbiAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGNoaXAgb2Ygbm9kZS50cmVlQ29udGVudEJsb2NrLmNoaXBzXCJcbiAgICAgICAgICAgICAgICAgICAgZXVpU2l6ZVhTXG4gICAgICAgICAgICAgICAgICAgIFtldWlWYXJpYW50XT1cImNoaXAudHlwZUNsYXNzIHx8ICdzZWNvbmRhcnknXCJcbiAgICAgICAgICAgICAgICAgICAgW2V1aU91dGxpbmVdPVwiY2hpcC5pc091dGxpbmVcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImV1aS1jaGlwLS1yb3VuZGVkIGV1aS11LW1yLXhzXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGV1aUxhYmVsPnt7IGNoaXAubGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9ldWktY2hpcD5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8IS0tYmFkZ2UgKHR5cGVMYWJlbCAmIHR5cGVDbGFzcykgYXJlYS0tPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm5vZGU/LnRyZWVDb250ZW50QmxvY2s/LnR5cGVMYWJlbFwiIFtuZ1N3aXRjaF09XCJub2RlPy50cmVlQ29udGVudEJsb2NrPy50eXBlQ2xhc3NcIj5cbiAgICAgICAgICAgICAgICA8ZXVpLWJhZGdlIGV1aVNpemVNIFtldWlWYXJpYW50XT1cIm5vZGU/LnRyZWVDb250ZW50QmxvY2s/LnR5cGVDbGFzcyB8fCAncHJpbWFyeSdcIiBjbGFzcz1cImV1aS11LWZsZXgtbm8tc2hyaW5rIGV1aS11LW1yLXhzXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7IG5vZGU/LnRyZWVDb250ZW50QmxvY2s/LnR5cGVMYWJlbCB9fVxuICAgICAgICAgICAgICAgIDwvZXVpLWJhZGdlPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDwhLS1sYWJlbCBhcmVhLS0+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJldWktdHJlZS1ub2RlLXdyYXBwZXJfX2NvbnRhaW5lci1taWRkbGVcIj5cbiAgICAgICAgICAgIDxsYWJlbFxuICAgICAgICAgICAgICAgICpuZ0lmPVwiIW5vZGU/LnRyZWVDb250ZW50QmxvY2s/LnVybCAmJiAhbm9kZT8udHJlZUNvbnRlbnRCbG9jaz8udXJsRXh0ZXJuYWxcIlxuICAgICAgICAgICAgICAgIGV1aUxhYmVsXG4gICAgICAgICAgICAgICAgZm9yPVwie3sgaWQgfX1cIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZXVpLXUtdGV4dC10cnVuY2F0ZSBldWktdS1tci1zXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MuZXVpLWxhYmVsLS1zZWxlY3RlZF09XCJub2RlPy5pc1NlbGVjdGVkXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MuZXVpLXUtY3Vyc29yLXBvaW50ZXJdPVwibm9kZT8uc2VsZWN0YWJsZVwiPlxuICAgICAgICAgICAgICAgIHt7IGF1dG9UcmFuc2xhdGUgPyAobm9kZT8udHJlZUNvbnRlbnRCbG9jaz8ubGFiZWwgfCB0cmFuc2xhdGUpIDogbm9kZT8udHJlZUNvbnRlbnRCbG9jaz8ubGFiZWwgfX1cbiAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8bGFiZWwgKm5nSWY9XCJub2RlPy50cmVlQ29udGVudEJsb2NrPy51cmxcIiBldWlMYWJlbCBmb3I9XCJ7eyBpZCB9fVwiIGNsYXNzPVwiZXVpLXUtdGV4dC10cnVuY2F0ZSBldWktdS1tci1tXCI+XG4gICAgICAgICAgICAgICAgPGEgY2xhc3M9XCJldWktdS10ZXh0LWxpbmtcIiBbcm91dGVyTGlua109XCJub2RlPy50cmVlQ29udGVudEJsb2NrPy51cmxcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgYXV0b1RyYW5zbGF0ZSA/IChub2RlPy50cmVlQ29udGVudEJsb2NrPy5sYWJlbCB8IHRyYW5zbGF0ZSkgOiBub2RlPy50cmVlQ29udGVudEJsb2NrPy5sYWJlbCB9fVxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8bGFiZWwgKm5nSWY9XCJub2RlPy50cmVlQ29udGVudEJsb2NrPy51cmxFeHRlcm5hbFwiIGV1aUxhYmVsIGZvcj1cInt7IGlkIH19XCIgY2xhc3M9XCJldWktdS10ZXh0LXRydW5jYXRlIGV1aS11LW1yLW1cIj5cbiAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImV1aS11LXRleHQtbGluay1leHRlcm5hbFwiXG4gICAgICAgICAgICAgICAgICAgIGhyZWY9XCJ7eyBub2RlPy50cmVlQ29udGVudEJsb2NrPy51cmxFeHRlcm5hbCB9fVwiXG4gICAgICAgICAgICAgICAgICAgIHRhcmdldD1cInt7IG5vZGU/LnRyZWVDb250ZW50QmxvY2s/LnVybEV4dGVybmFsVGFyZ2V0IHx8ICdibGFuaycgfX1cIj5cbiAgICAgICAgICAgICAgICAgICAge3sgYXV0b1RyYW5zbGF0ZSA/IChub2RlPy50cmVlQ29udGVudEJsb2NrPy5sYWJlbCB8IHRyYW5zbGF0ZSkgOiBub2RlPy50cmVlQ29udGVudEJsb2NrPy5sYWJlbCB9fVxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgKm5nSWY9XCJub2RlPy50cmVlQ29udGVudEJsb2NrPy5yaWdodENvbnRlbnRcIiBjbGFzcz1cImV1aS10cmVlLW5vZGUtd3JhcHBlcl9fY29udGFpbmVyLXJpZ2h0XCI+XG4gICAgICAgICAgICA8IS0tYmFkZ2VzIGFyZWEtLT5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGJhZGdlIG9mIG5vZGUudHJlZUNvbnRlbnRCbG9jay5yaWdodENvbnRlbnQ/LmJhZGdlc1wiPlxuICAgICAgICAgICAgICAgIDxldWktYmFkZ2UgZXVpU2l6ZU0gZXVpT3V0bGluZSBbZXVpVmFyaWFudF09XCJiYWRnZS50eXBlQ2xhc3MgfHwgJ3NlY29uZGFyeSdcIiBjbGFzcz1cImV1aS11LW1sLXhzXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGV1aUxhYmVsPnt7IGJhZGdlLmxhYmVsIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZXVpLWJhZGdlPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDwhLS1jaGlwcyBhcmVhLS0+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBjaGlwIG9mIG5vZGUudHJlZUNvbnRlbnRCbG9jay5yaWdodENvbnRlbnQ/LmNoaXBzXCI+XG4gICAgICAgICAgICAgICAgPGV1aS1jaGlwXG4gICAgICAgICAgICAgICAgICAgIGV1aVNpemVYU1xuICAgICAgICAgICAgICAgICAgICBbZXVpVmFyaWFudF09XCJjaGlwLnR5cGVDbGFzcyB8fCAnc2Vjb25kYXJ5J1wiXG4gICAgICAgICAgICAgICAgICAgIFtldWlPdXRsaW5lXT1cImNoaXAuaXNPdXRsaW5lXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJldWktY2hpcC0tcm91bmRlZCBldWktdS1tbC14c1wiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBldWlMYWJlbD57eyBjaGlwLmxhYmVsIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZXVpLWNoaXA+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPCEtLUNvbnRleHQgbWVudS0tPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm5vZGUudHJlZUNvbnRlbnRCbG9jay5yaWdodENvbnRlbnQ/LmNvbnRleHRNZW51TWV0YURhdGEgJiYgcmlnaHRDb250ZXh0TWVudVRlbXBsYXRlUmVmXCI+XG4gICAgICAgICAgICAgICAgPGV1aS1kcm9wZG93biBjbGFzcz1cImV1aS11LW1sLXhzXCI+XG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gZXVpQnV0dG9uIGV1aVNpemVTIGV1aVJvdW5kZWQgZXVpSWNvbkJ1dHRvbiBldWlCYXNpY0J1dHRvbiBldWlTZWNvbmRhcnkgW2F0dHIuYXJpYS1sYWJlbF09XCInT3B0aW9ucyBtZW51J1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGV1aS1pY29uLXN2ZyBpY29uPVwiZXVpLWVsbGlwc2lzLXZlcnRpY2FsXCI+PC9ldWktaWNvbi1zdmc+XG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8ZXVpLWRyb3Bkb3duLWNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJyaWdodENvbnRleHRNZW51VGVtcGxhdGVSZWZcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRpbXBsaWNpdDogbm9kZT8udHJlZUNvbnRlbnRCbG9jaz8ucmlnaHRDb250ZW50Py5jb250ZXh0TWVudU1ldGFEYXRhLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZXRhZGF0YTogbm9kZT8udHJlZUNvbnRlbnRCbG9jaz8ucmlnaHRDb250ZW50Py5jb250ZXh0TWVudU1ldGFEYXRhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgPC9ldWktZHJvcGRvd24tY29udGVudD5cbiAgICAgICAgICAgICAgICA8L2V1aS1kcm9wZG93bj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8IS0tbWV0YWRhdGEsIHVzZXMgdGhlIGhlbHAgb2YgbmcgdGVtcGxhdGUgdG8gZ2VuZXJhdGUgZHluYW1pYyBleHBhbmQgdmFyaWFibGUgd2l0aG91dCBoYW5kbGluZyBzdGF0ZSAtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgKm5nSWY9XCJub2RlLnRyZWVDb250ZW50QmxvY2s/Lm1ldGFkYXRhICYmIG5vZGVDb250ZW50TWV0YWRhdGFUZW1wbGF0ZVJlZlwiXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJub2RlQ29udGVudE1ldGFkYXRhQ29udGFpbmVyXCJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7XG4gICAgICAgICAgICAgICAgJGltcGxpY2l0OiB7IGV4cGFuZGVkOiBmYWxzZSB9XG4gICAgICAgICAgICB9XCI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctdGVtcGxhdGUgI25vZGVDb250ZW50TWV0YWRhdGFDb250YWluZXIgbGV0LW1ldGFEYXRhQ29udGFpbmVyPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgIGV1aUJ1dHRvblxuICAgICAgICAgICAgICAgIGV1aUJhc2ljQnV0dG9uXG4gICAgICAgICAgICAgICAgZXVpSWNvbkJ1dHRvblxuICAgICAgICAgICAgICAgIGV1aVJvdW5kZWRcbiAgICAgICAgICAgICAgICBldWlTaXplU1xuICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJtZXRhRGF0YUNvbnRhaW5lci5leHBhbmRlZCA9ICFtZXRhRGF0YUNvbnRhaW5lci5leHBhbmRlZFwiPlxuICAgICAgICAgICAgICAgIDxldWktaWNvbi1zdmcgW2ljb25dPVwibWV0YURhdGFDb250YWluZXIuZXhwYW5kZWQgPyAnZXVpLWNoZXZyb24tZG93bicgOiAnZXVpLWNoZXZyb24tZm9yd2FyZCdcIj48L2V1aS1pY29uLXN2Zz5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm1ldGFEYXRhQ29udGFpbmVyLmV4cGFuZGVkXCIgY2xhc3M9XCJldWktdHJlZS1ub2RlX19tZXRhY29udGVudFwiPlxuICAgICAgICAgICAgICAgIDwhLS1wYXNzaW5nIG1ldGFkYXRhIG9mIHRoZSBub2RlIGNvbnRlbnQgdG8gcHJvdmlkZWQgdGVtcGxhdGUtcmVmOm5vZGVDb250ZW50TWV0YWRhdGFUZW1wbGF0ZVJlZi0tPlxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJub2RlQ29udGVudE1ldGFkYXRhVGVtcGxhdGVSZWZcIlxuICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xuICAgICAgICAgICAgICAgICAgICAgICAgJGltcGxpY2l0OiBub2RlPy50cmVlQ29udGVudEJsb2NrPy5tZXRhZGF0YSxcbiAgICAgICAgICAgICAgICAgICAgICAgIG1ldGFkYXRhOiBub2RlPy50cmVlQ29udGVudEJsb2NrPy5tZXRhZGF0YVxuICAgICAgICAgICAgICAgICAgICB9XCI+XG4gICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -1,7 +1,6 @@
1
1
  import * as i0 from "@angular/core";
2
2
  export declare class EuiCardContentComponent {
3
3
  string: string;
4
- tabindex: string;
5
4
  static ɵfac: i0.ɵɵFactoryDeclaration<EuiCardContentComponent, never>;
6
5
  static ɵcmp: i0.ɵɵComponentDeclaration<EuiCardContentComponent, "eui-card-content", never, {}, {}, never, ["*"], false, never>;
7
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"eui-card-content.component.d.ts","sourceRoot":"","sources":["../../../../eui-card/components/eui-card-content/eui-card-content.component.ts"],"names":[],"mappings":";AAEA,qBAKa,uBAAuB;IACV,MAAM,SAAsB;IACpB,QAAQ,SAAO;yCAFpC,uBAAuB;2CAAvB,uBAAuB;CAGnC"}
1
+ {"version":3,"file":"eui-card-content.component.d.ts","sourceRoot":"","sources":["../../../../eui-card/components/eui-card-content/eui-card-content.component.ts"],"names":[],"mappings":";AAEA,qBAKa,uBAAuB;IACV,MAAM,SAAsB;yCADzC,uBAAuB;2CAAvB,uBAAuB;CAEnC"}
@@ -28,6 +28,8 @@ export declare class EuiDateRangeSelectorComponent implements OnInit, AfterConte
28
28
  togglerLabel: string;
29
29
  firstInputPlaceholder: string;
30
30
  secondInputPlaceholder: string;
31
+ firstInputAriaLabel: string;
32
+ secondInputAriaLabel: string;
31
33
  startDateDefaultValue: any;
32
34
  endDateDefaultValue: any;
33
35
  comparisonStart: any;
@@ -61,6 +63,6 @@ export declare class EuiDateRangeSelectorComponent implements OnInit, AfterConte
61
63
  private propagateChange;
62
64
  private propagateTouched;
63
65
  static ɵfac: i0.ɵɵFactoryDeclaration<EuiDateRangeSelectorComponent, [null, { optional: true; }, null, { optional: true; self: true; }]>;
64
- static ɵcmp: i0.ɵɵComponentDeclaration<EuiDateRangeSelectorComponent, "eui-date-range-selector", never, { "styleClass": { "alias": "styleClass"; "required": false; }; "e2eAttr": { "alias": "e2eAttr"; "required": false; }; "minDate": { "alias": "minDate"; "required": false; }; "maxDate": { "alias": "maxDate"; "required": false; }; "togglerIcon": { "alias": "togglerIcon"; "required": false; }; "togglerIconSvg": { "alias": "togglerIconSvg"; "required": false; }; "togglerLabel": { "alias": "togglerLabel"; "required": false; }; "firstInputPlaceholder": { "alias": "firstInputPlaceholder"; "required": false; }; "secondInputPlaceholder": { "alias": "secondInputPlaceholder"; "required": false; }; "startDateDefaultValue": { "alias": "startDateDefaultValue"; "required": false; }; "endDateDefaultValue": { "alias": "endDateDefaultValue"; "required": false; }; "comparisonStart": { "alias": "comparisonStart"; "required": false; }; "comparisonEnd": { "alias": "comparisonEnd"; "required": false; }; "startView": { "alias": "startView"; "required": false; }; "islongDateFormat": { "alias": "islongDateFormat"; "required": false; }; "isReadOnly": { "alias": "isReadOnly"; "required": false; }; "isDisabled": { "alias": "isDisabled"; "required": false; }; "isResponsive": { "alias": "isResponsive"; "required": false; }; }, { "firstSelectedDate": "firstSelectedDate"; "secondSelectedDate": "secondSelectedDate"; }, never, never, false, never>;
66
+ static ɵcmp: i0.ɵɵComponentDeclaration<EuiDateRangeSelectorComponent, "eui-date-range-selector", never, { "styleClass": { "alias": "styleClass"; "required": false; }; "e2eAttr": { "alias": "e2eAttr"; "required": false; }; "minDate": { "alias": "minDate"; "required": false; }; "maxDate": { "alias": "maxDate"; "required": false; }; "togglerIcon": { "alias": "togglerIcon"; "required": false; }; "togglerIconSvg": { "alias": "togglerIconSvg"; "required": false; }; "togglerLabel": { "alias": "togglerLabel"; "required": false; }; "firstInputPlaceholder": { "alias": "firstInputPlaceholder"; "required": false; }; "secondInputPlaceholder": { "alias": "secondInputPlaceholder"; "required": false; }; "firstInputAriaLabel": { "alias": "firstInputAriaLabel"; "required": false; }; "secondInputAriaLabel": { "alias": "secondInputAriaLabel"; "required": false; }; "startDateDefaultValue": { "alias": "startDateDefaultValue"; "required": false; }; "endDateDefaultValue": { "alias": "endDateDefaultValue"; "required": false; }; "comparisonStart": { "alias": "comparisonStart"; "required": false; }; "comparisonEnd": { "alias": "comparisonEnd"; "required": false; }; "startView": { "alias": "startView"; "required": false; }; "islongDateFormat": { "alias": "islongDateFormat"; "required": false; }; "isReadOnly": { "alias": "isReadOnly"; "required": false; }; "isDisabled": { "alias": "isDisabled"; "required": false; }; "isResponsive": { "alias": "isResponsive"; "required": false; }; }, { "firstSelectedDate": "firstSelectedDate"; "secondSelectedDate": "secondSelectedDate"; }, never, never, false, never>;
65
67
  }
66
68
  //# sourceMappingURL=eui-date-range-selector.component.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"eui-date-range-selector.component.d.ts","sourceRoot":"","sources":["../../eui-date-range-selector/eui-date-range-selector.component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"eui-date-range-selector.component.d.ts","sourceRoot":"","sources":["../../eui-date-range-selector/eui-date-range-selector.component.ts"],"names":[],"mappings":"AACA,OAAO,EACH,gBAAgB,EAEhB,OAAO,EACP,YAAY,EAEZ,SAAS,EACT,SAAS,EACT,MAAM,EAIN,aAAa,EAEhB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,oBAAoB,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAyB,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAIvD,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,yBAAyB,EAAE,MAAM,8CAA8C,CAAC;;AACzF,qBAMa,6BAA8B,YAAW,MAAM,EAAE,gBAAgB,EAAE,SAAS,EAAE,SAAS,EAAE,oBAAoB,EAAE,OAAO;IA8D3H,SAAS,CAAC,gBAAgB,EAAE,gBAAgB;IAChC,SAAS,CAAC,aAAa,EAAE,aAAa;IAClD,SAAS,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC;IACf,SAAS,CAAC,OAAO,EAAE,SAAS;IAhEpD,aAAa,EAAE,yBAAyB,CAAmC;IACpE,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,qBAAqB,mBAAqB;IAC1C,mBAAmB,mBAAqB;IAErC,iBAAiB,oBAA2B;IAC5C,kBAAkB,oBAA2B;IAE9C,UAAU,SAAM;IAChB,OAAO,SAA6B;IACpC,OAAO,EAAE,GAAG,CAAC;IACb,OAAO,EAAE,GAAG,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,SAA0B;IACxC,YAAY,EAAE,MAAM,CAAC;IACrB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,qBAAqB,EAAE,GAAG,CAAC;IAC3B,mBAAmB,EAAE,GAAG,CAAC;IACzB,eAAe,EAAE,GAAG,CAAC;IACrB,aAAa,EAAE,GAAG,CAAC;IACnB,SAAS,EAAE,OAAO,GAAG,MAAM,GAAG,YAAY,CAAW;IAC9D,IACI,gBAAgB,IAAI,OAAO,CAE9B;IACD,IAAI,gBAAgB,CAAC,KAAK,EAAE,YAAY,EAEvC;IACD,OAAO,CAAC,iBAAiB,CAAS;IAClC,IACI,UAAU,IAAI,OAAO,CAExB;IACD,IAAI,UAAU,CAAC,KAAK,EAAE,YAAY,EAEjC;IACD,OAAO,CAAC,WAAW,CAAS;IAC5B,IACI,UAAU,IAAI,OAAO,CAExB;IACD,IAAI,UAAU,CAAC,KAAK,EAAE,YAAY,EAEjC;IACD,OAAO,CAAC,WAAW,CAAS;IAC5B,IACI,YAAY,IAAI,OAAO,CAE1B;IACD,IAAI,YAAY,CAAC,KAAK,EAAE,YAAY,EAEnC;IACD,OAAO,CAAC,aAAa,CAAS;IAE9B,OAAO,CAAC,QAAQ,CAA4C;gBAG9C,gBAAgB,EAAE,gBAAgB,EACtB,aAAa,EAAE,aAAa,EACxC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,EACL,OAAO,EAAE,SAAS;IAOpD,QAAQ,IAAI,IAAI;IA+ChB,SAAS,IAAI,IAAI;IAYjB,kBAAkB,IAAI,IAAI;IAM1B,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAazC,WAAW,IAAI,IAAI;IAKZ,iBAAiB,CAAC,CAAC,EAAE,uBAAuB,CAAC,GAAG,CAAC,GAAG,IAAI;IAOxD,kBAAkB,CAAC,CAAC,EAAE,uBAAuB,CAAC,GAAG,CAAC,GAAG,IAAI;IAOhE,UAAU,CAAC,MAAM,EAAE,yBAAyB,GAAG,IAAI;IAkB5C,gBAAgB,CAAC,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI;IAWnD,gBAAgB,CAAC,EAAE,EAAE,GAAG,GAAG,IAAI;IAI/B,iBAAiB,CAAC,EAAE,EAAE,GAAG,GAAG,IAAI;IAKhC,OAAO,CAAC,eAAe,CAAwB;IAG/C,OAAO,CAAC,gBAAgB,CAAkB;yCAlNjC,6BAA6B;2CAA7B,6BAA6B;CAmNzC"}
@@ -11,8 +11,6 @@ export declare class EuiDialogComponent extends BaseDirective implements AfterVi
11
11
  private euiDialogService;
12
12
  e2eAttr: string;
13
13
  title: string;
14
- width: string;
15
- height: string;
16
14
  acceptLabel: string;
17
15
  dismissLabel: string;
18
16
  typeClass: 'primary' | 'secondary' | 'info' | 'success' | 'warning' | 'danger' | 'accent';
@@ -29,6 +27,15 @@ export declare class EuiDialogComponent extends BaseDirective implements AfterVi
29
27
  templateRefFooter: TemplateRef<EuiDialogFooterDirective>;
30
28
  euiDialogHeaderDirective: QueryList<EuiDialogHeaderDirective>;
31
29
  euiDialogFooterDirective: QueryList<EuiDialogFooterDirective>;
30
+ get width(): string;
31
+ set width(value: string);
32
+ private _width;
33
+ get height(): string;
34
+ set height(value: string);
35
+ private _height;
36
+ get isFullScreen(): boolean;
37
+ set isFullScreen(value: BooleanInput);
38
+ private _isFullScreen;
32
39
  get hasCloseButton(): boolean;
33
40
  set hasCloseButton(value: BooleanInput);
34
41
  private _hasCloseButton;
@@ -122,7 +129,7 @@ export declare class EuiDialogComponent extends BaseDirective implements AfterVi
122
129
  */
123
130
  enableDismissButton(): void;
124
131
  static ɵfac: i0.ɵɵFactoryDeclaration<EuiDialogComponent, never>;
125
- static ɵcmp: i0.ɵɵComponentDeclaration<EuiDialogComponent, "eui-dialog", never, { "e2eAttr": { "alias": "e2eAttr"; "required": false; }; "title": { "alias": "title"; "required": false; }; "width": { "alias": "width"; "required": false; }; "height": { "alias": "height"; "required": false; }; "acceptLabel": { "alias": "acceptLabel"; "required": false; }; "dismissLabel": { "alias": "dismissLabel"; "required": false; }; "typeClass": { "alias": "typeClass"; "required": false; }; "hasCloseButton": { "alias": "hasCloseButton"; "required": false; }; "hasAcceptButton": { "alias": "hasAcceptButton"; "required": false; }; "hasDismissButton": { "alias": "hasDismissButton"; "required": false; }; "hasMobileCustomSize": { "alias": "hasMobileCustomSize"; "required": false; }; "isClosedOnClickOutside": { "alias": "isClosedOnClickOutside"; "required": false; }; "isClosedOnEscape": { "alias": "isClosedOnEscape"; "required": false; }; "isHandleCloseOnDismiss": { "alias": "isHandleCloseOnDismiss"; "required": false; }; "isHandleCloseOnClose": { "alias": "isHandleCloseOnClose"; "required": false; }; "isHandleCloseOnAccept": { "alias": "isHandleCloseOnAccept"; "required": false; }; "isHandleCloseOnClickOutside": { "alias": "isHandleCloseOnClickOutside"; "required": false; }; "isHandleCloseOnEscape": { "alias": "isHandleCloseOnEscape"; "required": false; }; "isMessageBox": { "alias": "isMessageBox"; "required": false; }; "isDraggable": { "alias": "isDraggable"; "required": false; }; "hasNoBodyPadding": { "alias": "hasNoBodyPadding"; "required": false; }; "hasFooter": { "alias": "hasFooter"; "required": false; }; }, { "clickOutside": "clickOutside"; "escape": "escape"; "open": "open"; "close": "close"; "dismiss": "dismiss"; "accept": "accept"; }, ["euiDialogHeaderDirective", "euiDialogFooterDirective"], ["eui-dialog-header", "*", "eui-dialog-footer"], false, never>;
132
+ static ɵcmp: i0.ɵɵComponentDeclaration<EuiDialogComponent, "eui-dialog", never, { "e2eAttr": { "alias": "e2eAttr"; "required": false; }; "title": { "alias": "title"; "required": false; }; "acceptLabel": { "alias": "acceptLabel"; "required": false; }; "dismissLabel": { "alias": "dismissLabel"; "required": false; }; "typeClass": { "alias": "typeClass"; "required": false; }; "width": { "alias": "width"; "required": false; }; "height": { "alias": "height"; "required": false; }; "isFullScreen": { "alias": "isFullScreen"; "required": false; }; "hasCloseButton": { "alias": "hasCloseButton"; "required": false; }; "hasAcceptButton": { "alias": "hasAcceptButton"; "required": false; }; "hasDismissButton": { "alias": "hasDismissButton"; "required": false; }; "hasMobileCustomSize": { "alias": "hasMobileCustomSize"; "required": false; }; "isClosedOnClickOutside": { "alias": "isClosedOnClickOutside"; "required": false; }; "isClosedOnEscape": { "alias": "isClosedOnEscape"; "required": false; }; "isHandleCloseOnDismiss": { "alias": "isHandleCloseOnDismiss"; "required": false; }; "isHandleCloseOnClose": { "alias": "isHandleCloseOnClose"; "required": false; }; "isHandleCloseOnAccept": { "alias": "isHandleCloseOnAccept"; "required": false; }; "isHandleCloseOnClickOutside": { "alias": "isHandleCloseOnClickOutside"; "required": false; }; "isHandleCloseOnEscape": { "alias": "isHandleCloseOnEscape"; "required": false; }; "isMessageBox": { "alias": "isMessageBox"; "required": false; }; "isDraggable": { "alias": "isDraggable"; "required": false; }; "hasNoBodyPadding": { "alias": "hasNoBodyPadding"; "required": false; }; "hasFooter": { "alias": "hasFooter"; "required": false; }; }, { "clickOutside": "clickOutside"; "escape": "escape"; "open": "open"; "close": "close"; "dismiss": "dismiss"; "accept": "accept"; }, ["euiDialogHeaderDirective", "euiDialogFooterDirective"], ["eui-dialog-header", "*", "eui-dialog-footer"], false, never>;
126
133
  }
127
134
  export declare class EuiDialogHeaderDirective {
128
135
  static ɵfac: i0.ɵɵFactoryDeclaration<EuiDialogHeaderDirective, never>;
@@ -1 +1 @@
1
- {"version":3,"file":"eui-dialog.component.d.ts","sourceRoot":"","sources":["../../eui-dialog/eui-dialog.component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"eui-dialog.component.d.ts","sourceRoot":"","sources":["../../eui-dialog/eui-dialog.component.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ export declare class EuiDialogConfig<HC, HCC, BC, BCC, FC, FCC> implements EuiDi
6
6
  dismissLabel: string;
7
7
  width: string;
8
8
  height: string;
9
+ isFullScreen: boolean;
9
10
  hasCloseButton: boolean;
10
11
  hasAcceptButton: boolean;
11
12
  hasDismissButton: boolean;
@@ -30,6 +31,7 @@ export interface EuiDialogInterface<HC, HCC, BC, BCC, FC, FCC> {
30
31
  dismissLabel?: string;
31
32
  width?: string;
32
33
  height?: string;
34
+ isFullScreen?: boolean;
33
35
  headerComponent?: {
34
36
  component: ComponentType<HC>;
35
37
  config?: HCC;
@@ -1 +1 @@
1
- {"version":3,"file":"eui-dialog.config.d.ts","sourceRoot":"","sources":["../../../eui-dialog/models/eui-dialog.config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"eui-dialog.config.d.ts","sourceRoot":"","sources":["../../../eui-dialog/models/eui-dialog.config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAU,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE5E,qBAAa,eAAe,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAE,YAAW,kBAAkB,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC;IAC5G,OAAO,SAAqB;IAC5B,WAAW,SAAY;IACvB,YAAY,SAAgB;IAC5B,KAAK,SAAW;IAChB,MAAM,SAAU;IAChB,YAAY,UAAS;IACrB,cAAc,UAAQ;IACtB,eAAe,UAAQ;IACvB,gBAAgB,UAAQ;IACxB,mBAAmB,UAAS;IAC5B,sBAAsB,UAAS;IAC/B,gBAAgB,UAAQ;IACxB,sBAAsB,UAAS;IAC/B,oBAAoB,UAAS;IAC7B,qBAAqB,UAAS;IAC9B,2BAA2B,UAAS;IACpC,qBAAqB,UAAS;IAC9B,SAAS,UAAQ;IACjB,YAAY,UAAS;gBAET,MAAM,EAAE,kBAAkB,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC;CAGpE;AAED,MAAM,WAAW,kBAAkB,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG;IACzD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC3F,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE;QACd,SAAS,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC;QAC7B,MAAM,CAAC,EAAE,GAAG,CAAC;KAChB,CAAC;IACF,aAAa,CAAC,EAAE;QACZ,SAAS,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC;QAC7B,MAAM,CAAC,EAAE,GAAG,CAAC;KAChB,CAAC;IACF,eAAe,CAAC,EAAE;QACd,SAAS,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC;QAC7B,MAAM,CAAC,EAAE,GAAG,CAAC;KAChB,CAAC;IACF,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,OAAO,CAAC,EAAE,cAAc,GAAG,MAAM,GAAG,IAAI,CAAC;IACzC,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,UAAU,CAAC,EAAE,UAAU,CAAC;IAExB,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC;IAClB,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,2BAA2B,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC;IACpE,YAAY,CAAC,EAAE,CAAC,SAAS,EAAE,2BAA2B,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC;IAC5E,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,2BAA2B,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC;IACtE,KAAK,CAAC,EAAE,CAAC,SAAS,EAAE,2BAA2B,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC;IACrE,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,2BAA2B,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC;IACvE,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,2BAA2B,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC;CACzE;AAED,qBAAa,2BAA2B,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;IAC/C,eAAe,EAAE,EAAE,CAAQ;IAC3B,aAAa,EAAE,EAAE,CAAQ;IACzB,eAAe,EAAE,EAAE,CAAQ;CAC9B"}
@@ -1 +1 @@
1
- {"version":3,"file":"eui-dialog.service.d.ts","sourceRoot":"","sources":["../../../eui-dialog/services/eui-dialog.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAc,MAAM,sBAAsB,CAAC;AAE3D,OAAO,EAA4B,QAAQ,EAAE,SAAS,EAAkB,MAAM,eAAe,CAAC;AAC9F,OAAO,EAA4B,UAAU,EAAE,MAAM,MAAM,CAAC;AAI5D,OAAO,EAAE,kBAAkB,EAAgD,MAAM,6BAA6B,CAAC;AAC/G,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;;AAG7D,qBACa,gBAAiB,YAAW,SAAS;IAKlC,OAAO,CAAC,OAAO;IAAW,OAAO,CAAC,QAAQ;IAJtD,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,cAAc,CAA4E;IAClG,OAAO,CAAC,QAAQ,CAA4C;gBAExC,OAAO,EAAE,OAAO,EAAU,QAAQ,EAAE,QAAQ;IAEhE,WAAW,IAAI,IAAI;IAQnB;;;;;OAKG;IACI,UAAU,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,GAAE,kBAAkB,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAM,GAAG,YAAY;IA2FtH;;;;OAIG;IACI,WAAW,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI;IAc3C;;OAEG;IACI,eAAe,IAAI,IAAI;IAM9B;;;;OAIG;IACI,eAAe,IAAI,UAAU,CAAC,YAAY,EAAE,CAAC;IAIpD;;;;;OAKG;IACI,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY;IAIhD;;OAEG;IACI,mBAAmB,IAAI,IAAI;IAIlC;;OAEG;IACI,kBAAkB,IAAI,IAAI;IAIjC;;OAEG;IACI,oBAAoB,IAAI,IAAI;IAInC;;OAEG;IACI,mBAAmB,IAAI,IAAI;IAIlC,OAAO,CAAC,cAAc;yCA3Lb,gBAAgB;6CAAhB,gBAAgB;CAkM5B"}
1
+ {"version":3,"file":"eui-dialog.service.d.ts","sourceRoot":"","sources":["../../../eui-dialog/services/eui-dialog.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAc,MAAM,sBAAsB,CAAC;AAE3D,OAAO,EAA4B,QAAQ,EAAE,SAAS,EAAkB,MAAM,eAAe,CAAC;AAC9F,OAAO,EAA4B,UAAU,EAAE,MAAM,MAAM,CAAC;AAI5D,OAAO,EAAE,kBAAkB,EAAgD,MAAM,6BAA6B,CAAC;AAC/G,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;;AAG7D,qBACa,gBAAiB,YAAW,SAAS;IAKlC,OAAO,CAAC,OAAO;IAAW,OAAO,CAAC,QAAQ;IAJtD,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,cAAc,CAA4E;IAClG,OAAO,CAAC,QAAQ,CAA4C;gBAExC,OAAO,EAAE,OAAO,EAAU,QAAQ,EAAE,QAAQ;IAEhE,WAAW,IAAI,IAAI;IAQnB;;;;;OAKG;IACI,UAAU,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,GAAE,kBAAkB,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAM,GAAG,YAAY;IAiGtH;;;;OAIG;IACI,WAAW,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI;IAc3C;;OAEG;IACI,eAAe,IAAI,IAAI;IAM9B;;;;OAIG;IACI,eAAe,IAAI,UAAU,CAAC,YAAY,EAAE,CAAC;IAIpD;;;;;OAKG;IACI,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY;IAIhD;;OAEG;IACI,mBAAmB,IAAI,IAAI;IAIlC;;OAEG;IACI,kBAAkB,IAAI,IAAI;IAIjC;;OAEG;IACI,oBAAoB,IAAI,IAAI;IAInC;;OAEG;IACI,mBAAmB,IAAI,IAAI;IAIlC,OAAO,CAAC,cAAc;yCAjMb,gBAAgB;6CAAhB,gBAAgB;CAwM5B"}
@@ -1 +1 @@
1
- {"version":3,"file":"eui-input-radio.component.d.ts","sourceRoot":"","sources":["../../eui-input-radio/eui-input-radio.component.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,OAAO,EACP,UAAU,EAGV,SAAS,EAET,SAAS,EAET,aAAa,EACb,MAAM,EACN,iBAAiB,EAIjB,QAAQ,EACR,gBAAgB,EACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAyB,YAAY,EAAE,MAAM,uBAAuB,CAAC;;AAE5E,qBAOa,sBAAuB,SAAQ,cAAe,YAAW,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,oBAAoB;IA+C1F,SAAS,CAAC,SAAS,EAAE,SAAS;IAClD,OAAO,CAAC,gBAAgB;IACxB,SAAS,CAAC,WAAW,EAAE,UAAU,CAAC,gBAAgB,CAAC;IACnD,SAAS,CAAC,SAAS,EAAE,SAAS;IAC9B,OAAO,CAAC,GAAG;IAlDf,IACW,SAAS,IAAI,OAAO,CAE9B;IACD,IAAW,SAAS,CAAC,KAAK,EAAE,YAAY,EAEvC;IACD,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC;IAE9B,IAEW,KAAK,CAAC,QAAQ,EAAE,MAAM,EAEhC;IACD,IAAW,KAAK,IAAI,MAAM,CAEzB;IACyB,SAAS,CAAC,IAAI,SAAW;IAEnD,IAEW,cAAc,IAAI,OAAO,CAEnC;IACD,IAAW,cAAc,CAAC,KAAK,EAAE,YAAY,EAE5C;IACD,SAAS,CAAC,eAAe,EAAE,OAAO,CAAC;IAEnC,IAAW,QAAQ,IAAI,OAAO,CAE7B;IAED,IACI,KAAK,QAER;IACD,IAAI,KAAK,CAAC,KAAK,KAAA,EAKd;IACD,OAAO,CAAC,MAAM,CAAC;gBAGmB,SAAS,EAAE,SAAS,EAC1C,gBAAgB,EAAE,gBAAgB,EAChC,WAAW,EAAE,UAAU,CAAC,gBAAgB,CAAC,EACzC,SAAS,EAAE,SAAS,EACtB,GAAG,EAAE,iBAAiB,EAC9B,QAAQ,EAAE,QAAQ;IAkBtB,QAAQ;IAoBR,SAAS;IAMT,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAoBzC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAK7B,gBAAgB,CAAC,EAAE,EAAE,GAAG,GAAG,IAAI;IAI/B,iBAAiB,CAAC,EAAE,EAAE,GAAG,GAAG,IAAI;IAIhC,gBAAgB,CAAC,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI;IAK5C,SAAS,CAAC,gBAAgB,CAAC,MAAM,KAAA;IAMjC,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,aAAa;IAO7C,SAAS,CAAC,UAAU,CAAC,KAAK,KAAA,GAAG,IAAI;IAQjC,SAAS,CAAC,QAAQ,mBAEhB;IACF,SAAS,CAAC,SAAS,mBAEjB;yCAhKO,sBAAsB;2CAAtB,sBAAsB;CAiKlC"}
1
+ {"version":3,"file":"eui-input-radio.component.d.ts","sourceRoot":"","sources":["../../eui-input-radio/eui-input-radio.component.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,OAAO,EACP,UAAU,EAGV,SAAS,EAET,SAAS,EAET,aAAa,EACb,MAAM,EACN,iBAAiB,EAIjB,QAAQ,EACR,gBAAgB,EACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAyB,YAAY,EAAE,MAAM,uBAAuB,CAAC;;AAE5E,qBAOa,sBAAuB,SAAQ,cAAe,YAAW,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,oBAAoB;IA+C1F,SAAS,CAAC,SAAS,EAAE,SAAS;IAClD,OAAO,CAAC,gBAAgB;IACxB,SAAS,CAAC,WAAW,EAAE,UAAU,CAAC,gBAAgB,CAAC;IACnD,SAAS,CAAC,SAAS,EAAE,SAAS;IAC9B,OAAO,CAAC,GAAG;IAlDf,IACW,SAAS,IAAI,OAAO,CAE9B;IACD,IAAW,SAAS,CAAC,KAAK,EAAE,YAAY,EAEvC;IACD,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC;IAE9B,IAEW,KAAK,CAAC,QAAQ,EAAE,MAAM,EAEhC;IACD,IAAW,KAAK,IAAI,MAAM,CAEzB;IACyB,SAAS,CAAC,IAAI,SAAW;IAEnD,IAEW,cAAc,IAAI,OAAO,CAEnC;IACD,IAAW,cAAc,CAAC,KAAK,EAAE,YAAY,EAE5C;IACD,SAAS,CAAC,eAAe,EAAE,OAAO,CAAC;IAEnC,IAAW,QAAQ,IAAI,OAAO,CAE7B;IAED,IACI,KAAK,QAER;IACD,IAAI,KAAK,CAAC,KAAK,KAAA,EAKd;IACD,OAAO,CAAC,MAAM,CAAC;gBAGmB,SAAS,EAAE,SAAS,EAC1C,gBAAgB,EAAE,gBAAgB,EAChC,WAAW,EAAE,UAAU,CAAC,gBAAgB,CAAC,EACzC,SAAS,EAAE,SAAS,EACtB,GAAG,EAAE,iBAAiB,EAC9B,QAAQ,EAAE,QAAQ;IAkBtB,QAAQ;IAoBR,SAAS;IAMT,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAoBzC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAO7B,gBAAgB,CAAC,EAAE,EAAE,GAAG,GAAG,IAAI;IAI/B,iBAAiB,CAAC,EAAE,EAAE,GAAG,GAAG,IAAI;IAIhC,gBAAgB,CAAC,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI;IAK5C,SAAS,CAAC,gBAAgB,CAAC,MAAM,KAAA;IAMjC,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,aAAa;IAO7C,SAAS,CAAC,UAAU,CAAC,KAAK,KAAA,GAAG,IAAI;IAQjC,SAAS,CAAC,QAAQ,mBAEhB;IACF,SAAS,CAAC,SAAS,mBAEjB;yCAlKO,sBAAsB;2CAAtB,sBAAsB;CAmKlC"}
@@ -71,6 +71,7 @@ export declare class EuiTreeComponent implements OnInit, OnChanges, OnDestroy {
71
71
  nodeSelected(evt: any, path: string, treeItemModel: TreeItemRunTimeModel): void;
72
72
  hasChild: (_: number, item: TreeItemRunTimeModel) => boolean;
73
73
  onSelectFn(path: string, treeItemModel: TreeItemRunTimeModel): (evt: any) => void;
74
+ private initTree;
74
75
  private processInputs;
75
76
  private overrideTreeDataModelForSelection;
76
77
  private getSelectionIndexOfItem;