@aquera/ngx-smart-table 0.0.3-alpha → 0.0.6-alpha

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,5 @@
1
1
  import { Component, Input, Output, EventEmitter } from '@angular/core';
2
+ import { TableZIndex } from '../../models/z-index.enum';
2
3
  import * as i0 from "@angular/core";
3
4
  import * as i1 from "@angular/common";
4
5
  export class StTableActionsComponent {
@@ -74,25 +75,22 @@ export class StTableActionsComponent {
74
75
  updateDropdownPosition(event) {
75
76
  const button = event.currentTarget;
76
77
  const rect = button.getBoundingClientRect();
77
- const viewportWidth = window.innerWidth;
78
- const viewportHeight = window.innerHeight;
79
- const dropdownWidth = 280;
80
- const dropdownHeight = 400;
81
- let x = rect.left;
78
+ const dropdownWidth = 220;
79
+ let x = rect.right;
82
80
  let y = rect.bottom + 5;
83
- // Adjust horizontal position if dropdown would overflow
84
- if (x + dropdownWidth > viewportWidth) {
85
- x = Math.max(10, viewportWidth - dropdownWidth - 10);
86
- }
87
- // Adjust vertical position if dropdown would overflow
88
- if (y + dropdownHeight > viewportHeight) {
89
- y = rect.top - dropdownHeight - 5;
90
- }
81
+ // // Adjust horizontal position if dropdown would overflow
82
+ // if (x + dropdownWidth > viewportWidth) {
83
+ // x = Math.max(10, viewportWidth - dropdownWidth - 10);
84
+ // }
85
+ // // Adjust vertical position if dropdown would overflow
86
+ // if (y + dropdownHeight > viewportHeight) {
87
+ // y = rect.top - dropdownHeight - 5;
88
+ // }
91
89
  this.dropdownStyle = {
92
- position: 'fixed',
93
- left: `${x}px`,
90
+ position: 'absolute',
91
+ left: `${x - dropdownWidth}px`,
94
92
  top: `${y}px`,
95
- 'z-index': 9999
93
+ 'z-index': TableZIndex.TABLE_ACTIONS_DROPDOWN
96
94
  };
97
95
  }
98
96
  /**
@@ -168,4 +166,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
168
166
  }], addColumnClicked: [{
169
167
  type: Output
170
168
  }] } });
171
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3QtdGFibGUtYWN0aW9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC10YWJsZS9zcmMvbGliL3JlbmRlcmVyL2NvbXBvbmVudHMvc3QtdGFibGUtYWN0aW9ucy9zdC10YWJsZS1hY3Rpb25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LXRhYmxlL3NyYy9saWIvcmVuZGVyZXIvY29tcG9uZW50cy9zdC10YWJsZS1hY3Rpb25zL3N0LXRhYmxlLWFjdGlvbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBcUIsTUFBTSxlQUFlLENBQUM7OztBQVcxRixNQUFNLE9BQU8sdUJBQXVCO0lBaUJsQztRQWZTLG1CQUFjLEdBQVksS0FBSyxDQUFDO1FBRS9CLHFCQUFnQixHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFFdEQsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUNmLGdCQUFXLEdBQWEsTUFBTSxDQUFDO1FBQy9CLHNCQUFpQixHQUEyRSxFQUFFLENBQUM7UUFFL0Y7O1dBRUc7UUFDSCxrQkFBYSxHQUFRLEVBQUUsQ0FBQztJQUlULENBQUM7SUFFaEIsUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ3BCLE9BQU8sQ0FBQyxJQUFJLENBQUMsdURBQXVELENBQUMsQ0FBQztZQUN0RSxPQUFPO1NBQ1I7UUFFRCxnQ0FBZ0M7UUFDaEMsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUM7UUFFL0IsdURBQXVEO1FBQ3ZELElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxDQUFDO1FB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QUFDLFVBQVUsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLFNBQVMsQ0FBQyxDQUFDO1FBQy9FLE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUNwRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxnQkFBZ0IsQ0FBQyxNQUE0RTtRQUMzRixPQUFPLE1BQU0sQ0FBQyxRQUFRLEtBQUssS0FBSyxDQUFDLENBQUMsNkJBQTZCO0lBQ2pFLENBQUM7O29IQW5MVSx1QkFBdUI7d0dBQXZCLHVCQUF1QixtTENYcEMsa2dFQTJEQTsyRkRoRGEsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLGtCQUFrQjswRUFLbkIsVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUVJLGdCQUFnQjtzQkFBekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBPbkluaXQsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGFibGVTdGF0ZSB9IGZyb20gJy4uLy4uL21vZGVscy90YWJsZS1zdGF0ZS5jbGFzcyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxudHlwZSBNZW51VmlldyA9ICdtYWluJyB8ICdjb2x1bW5zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc3QtdGFibGUtYWN0aW9ucycsXG4gIHRlbXBsYXRlVXJsOiAnLi9zdC10YWJsZS1hY3Rpb25zLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3QtdGFibGUtYWN0aW9ucy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFN0VGFibGVBY3Rpb25zQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSB0YWJsZVN0YXRlITogVGFibGVTdGF0ZTtcbiAgQElucHV0KCkgYWxsb3dBZGRDb2x1bW46IGJvb2xlYW4gPSBmYWxzZTtcbiAgXG4gIEBPdXRwdXQoKSBhZGRDb2x1bW5DbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBcbiAgaXNPcGVuID0gZmFsc2U7XG4gIGN1cnJlbnRWaWV3OiBNZW51VmlldyA9ICdtYWluJztcbiAgY29sdW1uc1Zpc2liaWxpdHk6IHsga2V5OiBzdHJpbmc7IGhlYWRlcjogc3RyaW5nOyB2aXNpYmxlOiBib29sZWFuOyBoaWRlYWJsZTogYm9vbGVhbiB9W10gPSBbXTtcbiAgXG4gIC8qKlxuICAgKiBEcm9wZG93biBwb3NpdGlvbmluZyBzdHlsZVxuICAgKi9cbiAgZHJvcGRvd25TdHlsZTogYW55ID0ge307XG4gIFxuICBwcml2YXRlIHN0YXRlU3Vic2NyaXB0aW9uPzogU3Vic2NyaXB0aW9uO1xuICBcbiAgY29uc3RydWN0b3IoKSB7fVxuICBcbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnRhYmxlU3RhdGUpIHtcbiAgICAgIGNvbnNvbGUud2FybigndGFibGVTdGF0ZSBpcyByZXF1aXJlZCBmb3Igc3QtdGFibGUtYWN0aW9ucyBjb21wb25lbnQnKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgXG4gICAgLy8gSW5pdGlhbGl6ZSB3aXRoIGN1cnJlbnQgc3RhdGVcbiAgICB0aGlzLnVwZGF0ZUNvbHVtbnNWaXNpYmlsaXR5KCk7XG4gICAgXG4gICAgLy8gU3Vic2NyaWJlIHRvIHN0YXRlIGNoYW5nZXMgdG8gdXBkYXRlIHZpc2liaWxpdHkgbGlzdFxuICAgIHRoaXMuc3Vic2NyaWJlVG9TdGF0ZUNoYW5nZXMoKTtcbiAgfVxuICBcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0ZVN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICAvLyBSZS1lbmFibGUgYm9keSBzY3JvbGwgaWYgY29tcG9uZW50IGlzIGRlc3Ryb3llZCB3aGlsZSBtZW51IGlzIG9wZW5cbiAgICBpZiAodGhpcy5pc09wZW4pIHtcbiAgICAgIGRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3cgPSAnJztcbiAgICB9XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBVcGRhdGUgY29sdW1ucyB2aXNpYmlsaXR5IGxpc3QgZnJvbSBjdXJyZW50IHRhYmxlIHN0YXRlXG4gICAqL1xuICBwcml2YXRlIHVwZGF0ZUNvbHVtbnNWaXNpYmlsaXR5KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnRhYmxlU3RhdGUpIHtcbiAgICAgIHRoaXMuY29sdW1uc1Zpc2liaWxpdHkgPSB0aGlzLnRhYmxlU3RhdGUuZ2V0QWxsQ29sdW1uc1Zpc2liaWxpdHkoKTtcbiAgICB9XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBTdWJzY3JpYmUgdG8gdGFibGUgc3RhdGUgY2hhbmdlc1xuICAgKi9cbiAgcHJpdmF0ZSBzdWJzY3JpYmVUb1N0YXRlQ2hhbmdlcygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMudGFibGVTdGF0ZSkgcmV0dXJuO1xuICAgIFxuICAgIHRoaXMuc3RhdGVTdWJzY3JpcHRpb24gPSB0aGlzLnRhYmxlU3RhdGUuc3RhdGVDaGFuZ2UkXG4gICAgICAuc3Vic2NyaWJlKGV2ZW50ID0+IHtcbiAgICAgICAgaWYgKGV2ZW50LnR5cGUgPT09ICdjb2x1bW4tdmlzaWJpbGl0eScgfHwgZXZlbnQudHlwZSA9PT0gJ2NvbHVtbi1jb25maWcnKSB7XG4gICAgICAgICAgdGhpcy51cGRhdGVDb2x1bW5zVmlzaWJpbGl0eSgpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuICBcbiAgLyoqXG4gICAqIFRvZ2dsZSBtZW51IG9wZW4vY2xvc2VcbiAgICovXG4gIHRvZ2dsZU1lbnUoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5pc09wZW4gPSAhdGhpcy5pc09wZW47XG4gICAgaWYgKHRoaXMuaXNPcGVuKSB7XG4gICAgICB0aGlzLmN1cnJlbnRWaWV3ID0gJ21haW4nO1xuICAgICAgdGhpcy51cGRhdGVEcm9wZG93blBvc2l0aW9uKGV2ZW50IGFzIE1vdXNlRXZlbnQpO1xuICAgICAgLy8gRGlzYWJsZSBib2R5IHNjcm9sbCB3aGVuIG1lbnUgb3BlbnNcbiAgICAgIGRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3cgPSAnaGlkZGVuJztcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gUmUtZW5hYmxlIGJvZHkgc2Nyb2xsIHdoZW4gbWVudSBjbG9zZXNcbiAgICAgIGRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3cgPSAnJztcbiAgICB9XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBVcGRhdGUgZHJvcGRvd24gcG9zaXRpb24gYmFzZWQgb24gdHJpZ2dlciBidXR0b25cbiAgICovXG4gIHByaXZhdGUgdXBkYXRlRHJvcGRvd25Qb3NpdGlvbihldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IGJ1dHRvbiA9IGV2ZW50LmN1cnJlbnRUYXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgY29uc3QgcmVjdCA9IGJ1dHRvbi5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBcbiAgICBjb25zdCB2aWV3cG9ydFdpZHRoID0gd2luZG93LmlubmVyV2lkdGg7XG4gICAgY29uc3Qgdmlld3BvcnRIZWlnaHQgPSB3aW5kb3cuaW5uZXJIZWlnaHQ7XG4gICAgY29uc3QgZHJvcGRvd25XaWR0aCA9IDI4MDtcbiAgICBjb25zdCBkcm9wZG93bkhlaWdodCA9IDQwMDtcbiAgICBcbiAgICBsZXQgeCA9IHJlY3QubGVmdDtcbiAgICBsZXQgeSA9IHJlY3QuYm90dG9tICsgNTtcbiAgICBcbiAgICAvLyBBZGp1c3QgaG9yaXpvbnRhbCBwb3NpdGlvbiBpZiBkcm9wZG93biB3b3VsZCBvdmVyZmxvd1xuICAgIGlmICh4ICsgZHJvcGRvd25XaWR0aCA+IHZpZXdwb3J0V2lkdGgpIHtcbiAgICAgIHggPSBNYXRoLm1heCgxMCwgdmlld3BvcnRXaWR0aCAtIGRyb3Bkb3duV2lkdGggLSAxMCk7XG4gICAgfVxuICAgIFxuICAgIC8vIEFkanVzdCB2ZXJ0aWNhbCBwb3NpdGlvbiBpZiBkcm9wZG93biB3b3VsZCBvdmVyZmxvd1xuICAgIGlmICh5ICsgZHJvcGRvd25IZWlnaHQgPiB2aWV3cG9ydEhlaWdodCkge1xuICAgICAgeSA9IHJlY3QudG9wIC0gZHJvcGRvd25IZWlnaHQgLSA1O1xuICAgIH1cbiAgICBcbiAgICB0aGlzLmRyb3Bkb3duU3R5bGUgPSB7XG4gICAgICBwb3NpdGlvbjogJ2ZpeGVkJyxcbiAgICAgIGxlZnQ6IGAke3h9cHhgLFxuICAgICAgdG9wOiBgJHt5fXB4YCxcbiAgICAgICd6LWluZGV4JzogOTk5OVxuICAgIH07XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBDbG9zZSBtZW51XG4gICAqL1xuICBjbG9zZU1lbnUoKTogdm9pZCB7XG4gICAgdGhpcy5pc09wZW4gPSBmYWxzZTtcbiAgICB0aGlzLmN1cnJlbnRWaWV3ID0gJ21haW4nO1xuICAgIC8vIFJlLWVuYWJsZSBib2R5IHNjcm9sbCB3aGVuIG1lbnUgY2xvc2VzXG4gICAgZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvdyA9ICcnO1xuICB9XG4gIFxuICAvKipcbiAgICogSGFuZGxlIGFkZCBjb2x1bW4gYWN0aW9uXG4gICAqL1xuICBvbkFkZENvbHVtbihldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmFkZENvbHVtbkNsaWNrZWQuZW1pdCgpO1xuICAgIHRoaXMuY2xvc2VNZW51KCk7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBPcGVuIGNvbHVtbiB2aXNpYmlsaXR5IHN1Ym1lbnVcbiAgICovXG4gIG9wZW5Db2x1bW5zU3VibWVudShldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmN1cnJlbnRWaWV3ID0gJ2NvbHVtbnMnO1xuICB9XG4gIFxuICAvKipcbiAgICogR28gYmFjayB0byBtYWluIG1lbnVcbiAgICovXG4gIGJhY2tUb01haW4oZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5jdXJyZW50VmlldyA9ICdtYWluJztcbiAgfVxuICBcbiAgLyoqXG4gICAqIFRvZ2dsZSBjb2x1bW4gdmlzaWJpbGl0eVxuICAgKi9cbiAgb25Ub2dnbGVDb2x1bW4oY29sdW1uS2V5OiBzdHJpbmcsIGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIFxuICAgIC8vIENoZWNrIGlmIGNvbHVtbiBpcyBoaWRlYWJsZSBiZWZvcmUgdG9nZ2xpbmdcbiAgICBjb25zdCBjb2x1bW4gPSB0aGlzLmNvbHVtbnNWaXNpYmlsaXR5LmZpbmQoY29sID0+IGNvbC5rZXkgPT09IGNvbHVtbktleSk7XG4gICAgaWYgKGNvbHVtbiAmJiBjb2x1bW4uaGlkZWFibGUgIT09IGZhbHNlKSB7XG4gICAgICBpZiAodGhpcy50YWJsZVN0YXRlKSB7XG4gICAgICAgIHRoaXMudGFibGVTdGF0ZS50b2dnbGVDb2x1bW5WaXNpYmlsaXR5KGNvbHVtbktleSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAvKipcbiAgICogQ2hlY2sgaWYgY29sdW1uIGlzIHZpc2libGVcbiAgICovXG4gIGlzQ29sdW1uVmlzaWJsZShjb2x1bW5LZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy50YWJsZVN0YXRlKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgY29uc3QgY29sdW1uID0gdGhpcy50YWJsZVN0YXRlLmdldENvbHVtbnMoKS5maW5kKGNvbCA9PiBjb2wua2V5ID09PSBjb2x1bW5LZXkpO1xuICAgIHJldHVybiBjb2x1bW4gPyAoY29sdW1uLnZpc2libGUgIT09IGZhbHNlKSA6IHRydWU7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBDaGVjayBpZiBjb2x1bW4gaXMgaGlkZWFibGVcbiAgICovXG4gIGlzQ29sdW1uSGlkZWFibGUoY29sdW1uOiB7IGtleTogc3RyaW5nOyBoZWFkZXI6IHN0cmluZzsgdmlzaWJsZTogYm9vbGVhbjsgaGlkZWFibGU6IGJvb2xlYW4gfSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBjb2x1bW4uaGlkZWFibGUgIT09IGZhbHNlOyAvLyBEZWZhdWx0IHRvIHRydWUgaWYgbm90IHNldFxuICB9XG59XG5cbiIsIjxidXR0b24gXG4gIGNsYXNzPVwidGFibGUtYWN0aW9ucy1idXR0b25cIlxuICAoY2xpY2spPVwidG9nZ2xlTWVudSgkZXZlbnQpXCJcbiAgdHlwZT1cImJ1dHRvblwiXG4gIHRpdGxlPVwiVGFibGUgQWN0aW9uc1wiXG4gIGFyaWEtbGFiZWw9XCJUYWJsZSBhY3Rpb25zIG1lbnVcIlxuICBbY2xhc3MuYWN0aXZlXT1cImlzT3BlblwiPlxuICA8bmlsZS1pY29uIG5hbWU9XCJzZXR0aW5nc1wiPjwvbmlsZS1pY29uPlxuPC9idXR0b24+XG5cbjwhLS0gRHJvcGRvd24gY29udGFpbmVyIHdpdGggc2hhcmVkIHBhdHRlcm4gLS0+XG48ZGl2IGNsYXNzPVwiZHJvcGRvd24tY29udGFpbmVyXCIgKm5nSWY9XCJpc09wZW5cIj5cbiAgPCEtLSBCYWNrZHJvcCAtLT5cbiAgPGRpdiBjbGFzcz1cImRyb3Bkb3duLWJhY2tkcm9wXCIgKGNsaWNrKT1cImNsb3NlTWVudSgpXCI+PC9kaXY+XG4gIFxuICA8IS0tIE1haW4gTWVudSAtLT5cbiAgPGRpdiBjbGFzcz1cImRyb3Bkb3duLW1lbnVcIiAqbmdJZj1cImN1cnJlbnRWaWV3ID09PSAnbWFpbidcIiBbbmdTdHlsZV09XCJkcm9wZG93blN0eWxlXCI+XG4gICAgPG5pbGUtbWVudT5cbiAgICAgIDwhLS0gQWRkIENvbHVtbiAtLT5cbiAgICAgIDxuaWxlLW1lbnUtaXRlbSAqbmdJZj1cImFsbG93QWRkQ29sdW1uXCIgKGNsaWNrKT1cIm9uQWRkQ29sdW1uKCRldmVudClcIj5cbiAgICAgICAgPG5pbGUtaWNvbiBzbG90PVwicHJlZml4XCIgbmFtZT1cInBsdXNcIiBzaXplPVwiMTJcIj48L25pbGUtaWNvbj5cbiAgICAgICAgQWRkIENvbHVtblxuICAgICAgPC9uaWxlLW1lbnUtaXRlbT5cbiAgICAgIFxuICAgICAgPCEtLSBTaG93L0hpZGUgQ29sdW1ucyAtLT5cbiAgICAgIDxuaWxlLW1lbnUtaXRlbSAoY2xpY2spPVwib3BlbkNvbHVtbnNTdWJtZW51KCRldmVudClcIj5cbiAgICAgICAgPG5pbGUtaWNvbiBzaXplPVwiMTJcIiBzbG90PVwicHJlZml4XCIgbmFtZT1cImV5ZVwiPjwvbmlsZS1pY29uPlxuICAgICAgICBTaG93L0hpZGUgQ29sdW1uc1xuICAgICAgPC9uaWxlLW1lbnUtaXRlbT5cbiAgICA8L25pbGUtbWVudT5cbiAgPC9kaXY+XG4gIFxuICA8IS0tIENvbHVtbiBWaXNpYmlsaXR5IFN1Ym1lbnUgLS0+XG4gIDxkaXYgY2xhc3M9XCJkcm9wZG93bi1tZW51XCIgKm5nSWY9XCJjdXJyZW50VmlldyA9PT0gJ2NvbHVtbnMnXCIgW25nU3R5bGVdPVwiZHJvcGRvd25TdHlsZVwiPlxuICAgIDxuaWxlLW1lbnU+XG4gICAgICA8IS0tIEJhY2sgYnV0dG9uIC0tPlxuICAgICAgPG5pbGUtbWVudS1pdGVtIChjbGljayk9XCJiYWNrVG9NYWluKCRldmVudClcIiBjbGFzcz1cImJhY2staXRlbVwiPlxuICAgICAgICA8bmlsZS1pY29uIHNpemU9XCIxMlwiIHNsb3Q9XCJwcmVmaXhcIiBuYW1lPVwiY2hldnJvbi1sZWZ0XCI+PC9uaWxlLWljb24+XG4gICAgICAgIEJhY2tcbiAgICAgIDwvbmlsZS1tZW51LWl0ZW0+XG4gICAgICBcbiAgICAgIDxuaWxlLWRpdmlkZXI+PC9uaWxlLWRpdmlkZXI+XG4gICAgICBcbiAgICAgIDwhLS0gQ29sdW1uIGNoZWNrYm94ZXMgLS0+XG4gICAgICA8bmlsZS1tZW51LWl0ZW0gXG4gICAgICAgICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29sdW1uc1Zpc2liaWxpdHlcIlxuICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiIWlzQ29sdW1uSGlkZWFibGUoY29sdW1uKVwiXG4gICAgICAgIChjbGljayk9XCJvblRvZ2dsZUNvbHVtbihjb2x1bW4ua2V5LCAkZXZlbnQpXCI+XG4gICAgICAgIDxuaWxlLWNoZWNrYm94IFxuICAgICAgICBbY2hlY2tlZF09XCJpc0NvbHVtblZpc2libGUoY29sdW1uLmtleSlcIiBcbiAgICAgICAgW2Rpc2FibGVkXT1cIiFpc0NvbHVtbkhpZGVhYmxlKGNvbHVtbilcIiBcbiAgICAgICAgW2xhYmVsXT1cImNvbHVtbi5oZWFkZXIgfHwgY29sdW1uLmtleVwiIFxuICAgICAgICAobmlsZS1jaGFuZ2UpPVwib25Ub2dnbGVDb2x1bW4oY29sdW1uLmtleSwgJGV2ZW50KVwiPlxuICAgICAgPC9uaWxlLWNoZWNrYm94PlxuICAgICAgPC9uaWxlLW1lbnUtaXRlbT5cbiAgICA8L25pbGUtbWVudT5cbiAgPC9kaXY+XG48L2Rpdj5cblxuIl19
169
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3QtdGFibGUtYWN0aW9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC10YWJsZS9zcmMvbGliL3JlbmRlcmVyL2NvbXBvbmVudHMvc3QtdGFibGUtYWN0aW9ucy9zdC10YWJsZS1hY3Rpb25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NtYXJ0LXRhYmxlL3NyYy9saWIvcmVuZGVyZXIvY29tcG9uZW50cy9zdC10YWJsZS1hY3Rpb25zL3N0LXRhYmxlLWFjdGlvbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFHMUYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7QUFTeEQsTUFBTSxPQUFPLHVCQUF1QjtJQWlCbEM7UUFmUyxtQkFBYyxHQUFZLEtBQUssQ0FBQztRQUUvQixxQkFBZ0IsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBRXRELFdBQU0sR0FBRyxLQUFLLENBQUM7UUFDZixnQkFBVyxHQUFhLE1BQU0sQ0FBQztRQUMvQixzQkFBaUIsR0FBMkUsRUFBRSxDQUFDO1FBRS9GOztXQUVHO1FBQ0gsa0JBQWEsR0FBUSxFQUFFLENBQUM7SUFJVCxDQUFDO0lBRWhCLFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNwQixPQUFPLENBQUMsSUFBSSxDQUFDLHVEQUF1RCxDQUFDLENBQUM7WUFDdEUsT0FBTztTQUNSO1FBRUQsZ0NBQWdDO1FBQ2hDLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO1FBRS9CLHVEQUF1RDtRQUN2RCxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRUQsV0FBVztR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RUc7SUFDSCxnQkFBZ0IsQ0FBQyxNQUE0RTtRQUMzRixPQUFPLE1BQU0sQ0FBQyxRQUFRLEtBQUssS0FBSyxDQUFDLENBQUMsNkJBQTZCO0lBQ2pFLENBQUM7O29IQWpMVSx1QkFBdUI7d0dBQXZCLHVCQUF1QixtTENacEMsa2dFQTJEQTsyRkQvQ2EsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLGtCQUFrQjswRUFLbkIsVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUVJLGdCQUFnQjtzQkFBekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBPbkluaXQsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGFibGVTdGF0ZSB9IGZyb20gJy4uLy4uL21vZGVscy90YWJsZS1zdGF0ZS5jbGFzcyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFRhYmxlWkluZGV4IH0gZnJvbSAnLi4vLi4vbW9kZWxzL3otaW5kZXguZW51bSc7XG5cbnR5cGUgTWVudVZpZXcgPSAnbWFpbicgfCAnY29sdW1ucyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3N0LXRhYmxlLWFjdGlvbnMnLFxuICB0ZW1wbGF0ZVVybDogJy4vc3QtdGFibGUtYWN0aW9ucy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3N0LXRhYmxlLWFjdGlvbnMuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBTdFRhYmxlQWN0aW9uc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgQElucHV0KCkgdGFibGVTdGF0ZSE6IFRhYmxlU3RhdGU7XG4gIEBJbnB1dCgpIGFsbG93QWRkQ29sdW1uOiBib29sZWFuID0gZmFsc2U7XG4gIFxuICBAT3V0cHV0KCkgYWRkQ29sdW1uQ2xpY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgXG4gIGlzT3BlbiA9IGZhbHNlO1xuICBjdXJyZW50VmlldzogTWVudVZpZXcgPSAnbWFpbic7XG4gIGNvbHVtbnNWaXNpYmlsaXR5OiB7IGtleTogc3RyaW5nOyBoZWFkZXI6IHN0cmluZzsgdmlzaWJsZTogYm9vbGVhbjsgaGlkZWFibGU6IGJvb2xlYW4gfVtdID0gW107XG4gIFxuICAvKipcbiAgICogRHJvcGRvd24gcG9zaXRpb25pbmcgc3R5bGVcbiAgICovXG4gIGRyb3Bkb3duU3R5bGU6IGFueSA9IHt9O1xuICBcbiAgcHJpdmF0ZSBzdGF0ZVN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcbiAgXG4gIGNvbnN0cnVjdG9yKCkge31cbiAgXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy50YWJsZVN0YXRlKSB7XG4gICAgICBjb25zb2xlLndhcm4oJ3RhYmxlU3RhdGUgaXMgcmVxdWlyZWQgZm9yIHN0LXRhYmxlLWFjdGlvbnMgY29tcG9uZW50Jyk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIFxuICAgIC8vIEluaXRpYWxpemUgd2l0aCBjdXJyZW50IHN0YXRlXG4gICAgdGhpcy51cGRhdGVDb2x1bW5zVmlzaWJpbGl0eSgpO1xuICAgIFxuICAgIC8vIFN1YnNjcmliZSB0byBzdGF0ZSBjaGFuZ2VzIHRvIHVwZGF0ZSB2aXNpYmlsaXR5IGxpc3RcbiAgICB0aGlzLnN1YnNjcmliZVRvU3RhdGVDaGFuZ2VzKCk7XG4gIH1cbiAgXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdGVTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgLy8gUmUtZW5hYmxlIGJvZHkgc2Nyb2xsIGlmIGNvbXBvbmVudCBpcyBkZXN0cm95ZWQgd2hpbGUgbWVudSBpcyBvcGVuXG4gICAgaWYgKHRoaXMuaXNPcGVuKSB7XG4gICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLm92ZXJmbG93ID0gJyc7XG4gICAgfVxuICB9XG4gIFxuICAvKipcbiAgICogVXBkYXRlIGNvbHVtbnMgdmlzaWJpbGl0eSBsaXN0IGZyb20gY3VycmVudCB0YWJsZSBzdGF0ZVxuICAgKi9cbiAgcHJpdmF0ZSB1cGRhdGVDb2x1bW5zVmlzaWJpbGl0eSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy50YWJsZVN0YXRlKSB7XG4gICAgICB0aGlzLmNvbHVtbnNWaXNpYmlsaXR5ID0gdGhpcy50YWJsZVN0YXRlLmdldEFsbENvbHVtbnNWaXNpYmlsaXR5KCk7XG4gICAgfVxuICB9XG4gIFxuICAvKipcbiAgICogU3Vic2NyaWJlIHRvIHRhYmxlIHN0YXRlIGNoYW5nZXNcbiAgICovXG4gIHByaXZhdGUgc3Vic2NyaWJlVG9TdGF0ZUNoYW5nZXMoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnRhYmxlU3RhdGUpIHJldHVybjtcbiAgICBcbiAgICB0aGlzLnN0YXRlU3Vic2NyaXB0aW9uID0gdGhpcy50YWJsZVN0YXRlLnN0YXRlQ2hhbmdlJFxuICAgICAgLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgIGlmIChldmVudC50eXBlID09PSAnY29sdW1uLXZpc2liaWxpdHknIHx8IGV2ZW50LnR5cGUgPT09ICdjb2x1bW4tY29uZmlnJykge1xuICAgICAgICAgIHRoaXMudXBkYXRlQ29sdW1uc1Zpc2liaWxpdHkoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBUb2dnbGUgbWVudSBvcGVuL2Nsb3NlXG4gICAqL1xuICB0b2dnbGVNZW51KGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMuaXNPcGVuID0gIXRoaXMuaXNPcGVuO1xuICAgIGlmICh0aGlzLmlzT3Blbikge1xuICAgICAgdGhpcy5jdXJyZW50VmlldyA9ICdtYWluJztcbiAgICAgIHRoaXMudXBkYXRlRHJvcGRvd25Qb3NpdGlvbihldmVudCBhcyBNb3VzZUV2ZW50KTtcbiAgICAgIC8vIERpc2FibGUgYm9keSBzY3JvbGwgd2hlbiBtZW51IG9wZW5zXG4gICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLm92ZXJmbG93ID0gJ2hpZGRlbic7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIFJlLWVuYWJsZSBib2R5IHNjcm9sbCB3aGVuIG1lbnUgY2xvc2VzXG4gICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLm92ZXJmbG93ID0gJyc7XG4gICAgfVxuICB9XG4gIFxuICAvKipcbiAgICogVXBkYXRlIGRyb3Bkb3duIHBvc2l0aW9uIGJhc2VkIG9uIHRyaWdnZXIgYnV0dG9uXG4gICAqL1xuICBwcml2YXRlIHVwZGF0ZURyb3Bkb3duUG9zaXRpb24oZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBidXR0b24gPSBldmVudC5jdXJyZW50VGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xuICAgIGNvbnN0IHJlY3QgPSBidXR0b24uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgXG5cbiAgICBjb25zdCBkcm9wZG93bldpZHRoID0gMjIwO1xuICAgIFxuICAgIGxldCB4ID0gcmVjdC5yaWdodDtcbiAgICBsZXQgeSA9IHJlY3QuYm90dG9tICsgNTtcbiAgICBcbiAgICAvLyAvLyBBZGp1c3QgaG9yaXpvbnRhbCBwb3NpdGlvbiBpZiBkcm9wZG93biB3b3VsZCBvdmVyZmxvd1xuICAgIC8vIGlmICh4ICsgZHJvcGRvd25XaWR0aCA+IHZpZXdwb3J0V2lkdGgpIHtcbiAgICAvLyAgIHggPSBNYXRoLm1heCgxMCwgdmlld3BvcnRXaWR0aCAtIGRyb3Bkb3duV2lkdGggLSAxMCk7XG4gICAgLy8gfVxuICAgIFxuICAgIC8vIC8vIEFkanVzdCB2ZXJ0aWNhbCBwb3NpdGlvbiBpZiBkcm9wZG93biB3b3VsZCBvdmVyZmxvd1xuICAgIC8vIGlmICh5ICsgZHJvcGRvd25IZWlnaHQgPiB2aWV3cG9ydEhlaWdodCkge1xuICAgIC8vICAgeSA9IHJlY3QudG9wIC0gZHJvcGRvd25IZWlnaHQgLSA1O1xuICAgIC8vIH1cbiAgICBcbiAgICB0aGlzLmRyb3Bkb3duU3R5bGUgPSB7XG4gICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICAgIGxlZnQ6IGAke3ggLSBkcm9wZG93bldpZHRofXB4YCxcbiAgICAgIHRvcDogYCR7eX1weGAsXG4gICAgICAnei1pbmRleCc6IFRhYmxlWkluZGV4LlRBQkxFX0FDVElPTlNfRFJPUERPV05cbiAgICB9O1xuICB9XG4gIFxuICAvKipcbiAgICogQ2xvc2UgbWVudVxuICAgKi9cbiAgY2xvc2VNZW51KCk6IHZvaWQge1xuICAgIHRoaXMuaXNPcGVuID0gZmFsc2U7XG4gICAgdGhpcy5jdXJyZW50VmlldyA9ICdtYWluJztcbiAgICAvLyBSZS1lbmFibGUgYm9keSBzY3JvbGwgd2hlbiBtZW51IGNsb3Nlc1xuICAgIGRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3cgPSAnJztcbiAgfVxuICBcbiAgLyoqXG4gICAqIEhhbmRsZSBhZGQgY29sdW1uIGFjdGlvblxuICAgKi9cbiAgb25BZGRDb2x1bW4oZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5hZGRDb2x1bW5DbGlja2VkLmVtaXQoKTtcbiAgICB0aGlzLmNsb3NlTWVudSgpO1xuICB9XG4gIFxuICAvKipcbiAgICogT3BlbiBjb2x1bW4gdmlzaWJpbGl0eSBzdWJtZW51XG4gICAqL1xuICBvcGVuQ29sdW1uc1N1Ym1lbnUoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5jdXJyZW50VmlldyA9ICdjb2x1bW5zJztcbiAgfVxuICBcbiAgLyoqXG4gICAqIEdvIGJhY2sgdG8gbWFpbiBtZW51XG4gICAqL1xuICBiYWNrVG9NYWluKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMuY3VycmVudFZpZXcgPSAnbWFpbic7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBUb2dnbGUgY29sdW1uIHZpc2liaWxpdHlcbiAgICovXG4gIG9uVG9nZ2xlQ29sdW1uKGNvbHVtbktleTogc3RyaW5nLCBldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBcbiAgICAvLyBDaGVjayBpZiBjb2x1bW4gaXMgaGlkZWFibGUgYmVmb3JlIHRvZ2dsaW5nXG4gICAgY29uc3QgY29sdW1uID0gdGhpcy5jb2x1bW5zVmlzaWJpbGl0eS5maW5kKGNvbCA9PiBjb2wua2V5ID09PSBjb2x1bW5LZXkpO1xuICAgIGlmIChjb2x1bW4gJiYgY29sdW1uLmhpZGVhYmxlICE9PSBmYWxzZSkge1xuICAgICAgaWYgKHRoaXMudGFibGVTdGF0ZSkge1xuICAgICAgICB0aGlzLnRhYmxlU3RhdGUudG9nZ2xlQ29sdW1uVmlzaWJpbGl0eShjb2x1bW5LZXkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLyoqXG4gICAqIENoZWNrIGlmIGNvbHVtbiBpcyB2aXNpYmxlXG4gICAqL1xuICBpc0NvbHVtblZpc2libGUoY29sdW1uS2V5OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMudGFibGVTdGF0ZSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIGNvbnN0IGNvbHVtbiA9IHRoaXMudGFibGVTdGF0ZS5nZXRDb2x1bW5zKCkuZmluZChjb2wgPT4gY29sLmtleSA9PT0gY29sdW1uS2V5KTtcbiAgICByZXR1cm4gY29sdW1uID8gKGNvbHVtbi52aXNpYmxlICE9PSBmYWxzZSkgOiB0cnVlO1xuICB9XG4gIFxuICAvKipcbiAgICogQ2hlY2sgaWYgY29sdW1uIGlzIGhpZGVhYmxlXG4gICAqL1xuICBpc0NvbHVtbkhpZGVhYmxlKGNvbHVtbjogeyBrZXk6IHN0cmluZzsgaGVhZGVyOiBzdHJpbmc7IHZpc2libGU6IGJvb2xlYW47IGhpZGVhYmxlOiBib29sZWFuIH0pOiBib29sZWFuIHtcbiAgICByZXR1cm4gY29sdW1uLmhpZGVhYmxlICE9PSBmYWxzZTsgLy8gRGVmYXVsdCB0byB0cnVlIGlmIG5vdCBzZXRcbiAgfVxufVxuXG4iLCI8YnV0dG9uIFxuICBjbGFzcz1cInRhYmxlLWFjdGlvbnMtYnV0dG9uXCJcbiAgKGNsaWNrKT1cInRvZ2dsZU1lbnUoJGV2ZW50KVwiXG4gIHR5cGU9XCJidXR0b25cIlxuICB0aXRsZT1cIlRhYmxlIEFjdGlvbnNcIlxuICBhcmlhLWxhYmVsPVwiVGFibGUgYWN0aW9ucyBtZW51XCJcbiAgW2NsYXNzLmFjdGl2ZV09XCJpc09wZW5cIj5cbiAgPG5pbGUtaWNvbiBuYW1lPVwic2V0dGluZ3NcIj48L25pbGUtaWNvbj5cbjwvYnV0dG9uPlxuXG48IS0tIERyb3Bkb3duIGNvbnRhaW5lciB3aXRoIHNoYXJlZCBwYXR0ZXJuIC0tPlxuPGRpdiBjbGFzcz1cImRyb3Bkb3duLWNvbnRhaW5lclwiICpuZ0lmPVwiaXNPcGVuXCI+XG4gIDwhLS0gQmFja2Ryb3AgLS0+XG4gIDxkaXYgY2xhc3M9XCJkcm9wZG93bi1iYWNrZHJvcFwiIChjbGljayk9XCJjbG9zZU1lbnUoKVwiPjwvZGl2PlxuICBcbiAgPCEtLSBNYWluIE1lbnUgLS0+XG4gIDxkaXYgY2xhc3M9XCJkcm9wZG93bi1tZW51XCIgKm5nSWY9XCJjdXJyZW50VmlldyA9PT0gJ21haW4nXCIgW25nU3R5bGVdPVwiZHJvcGRvd25TdHlsZVwiPlxuICAgIDxuaWxlLW1lbnU+XG4gICAgICA8IS0tIEFkZCBDb2x1bW4gLS0+XG4gICAgICA8bmlsZS1tZW51LWl0ZW0gKm5nSWY9XCJhbGxvd0FkZENvbHVtblwiIChjbGljayk9XCJvbkFkZENvbHVtbigkZXZlbnQpXCI+XG4gICAgICAgIDxuaWxlLWljb24gc2xvdD1cInByZWZpeFwiIG5hbWU9XCJwbHVzXCIgc2l6ZT1cIjEyXCI+PC9uaWxlLWljb24+XG4gICAgICAgIEFkZCBDb2x1bW5cbiAgICAgIDwvbmlsZS1tZW51LWl0ZW0+XG4gICAgICBcbiAgICAgIDwhLS0gU2hvdy9IaWRlIENvbHVtbnMgLS0+XG4gICAgICA8bmlsZS1tZW51LWl0ZW0gKGNsaWNrKT1cIm9wZW5Db2x1bW5zU3VibWVudSgkZXZlbnQpXCI+XG4gICAgICAgIDxuaWxlLWljb24gc2l6ZT1cIjEyXCIgc2xvdD1cInByZWZpeFwiIG5hbWU9XCJleWVcIj48L25pbGUtaWNvbj5cbiAgICAgICAgU2hvdy9IaWRlIENvbHVtbnNcbiAgICAgIDwvbmlsZS1tZW51LWl0ZW0+XG4gICAgPC9uaWxlLW1lbnU+XG4gIDwvZGl2PlxuICBcbiAgPCEtLSBDb2x1bW4gVmlzaWJpbGl0eSBTdWJtZW51IC0tPlxuICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24tbWVudVwiICpuZ0lmPVwiY3VycmVudFZpZXcgPT09ICdjb2x1bW5zJ1wiIFtuZ1N0eWxlXT1cImRyb3Bkb3duU3R5bGVcIj5cbiAgICA8bmlsZS1tZW51PlxuICAgICAgPCEtLSBCYWNrIGJ1dHRvbiAtLT5cbiAgICAgIDxuaWxlLW1lbnUtaXRlbSAoY2xpY2spPVwiYmFja1RvTWFpbigkZXZlbnQpXCIgY2xhc3M9XCJiYWNrLWl0ZW1cIj5cbiAgICAgICAgPG5pbGUtaWNvbiBzaXplPVwiMTJcIiBzbG90PVwicHJlZml4XCIgbmFtZT1cImNoZXZyb24tbGVmdFwiPjwvbmlsZS1pY29uPlxuICAgICAgICBCYWNrXG4gICAgICA8L25pbGUtbWVudS1pdGVtPlxuICAgICAgXG4gICAgICA8bmlsZS1kaXZpZGVyPjwvbmlsZS1kaXZpZGVyPlxuICAgICAgXG4gICAgICA8IS0tIENvbHVtbiBjaGVja2JveGVzIC0tPlxuICAgICAgPG5pbGUtbWVudS1pdGVtIFxuICAgICAgICAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbHVtbnNWaXNpYmlsaXR5XCJcbiAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cIiFpc0NvbHVtbkhpZGVhYmxlKGNvbHVtbilcIlxuICAgICAgICAoY2xpY2spPVwib25Ub2dnbGVDb2x1bW4oY29sdW1uLmtleSwgJGV2ZW50KVwiPlxuICAgICAgICA8bmlsZS1jaGVja2JveCBcbiAgICAgICAgW2NoZWNrZWRdPVwiaXNDb2x1bW5WaXNpYmxlKGNvbHVtbi5rZXkpXCIgXG4gICAgICAgIFtkaXNhYmxlZF09XCIhaXNDb2x1bW5IaWRlYWJsZShjb2x1bW4pXCIgXG4gICAgICAgIFtsYWJlbF09XCJjb2x1bW4uaGVhZGVyIHx8IGNvbHVtbi5rZXlcIiBcbiAgICAgICAgKG5pbGUtY2hhbmdlKT1cIm9uVG9nZ2xlQ29sdW1uKGNvbHVtbi5rZXksICRldmVudClcIj5cbiAgICAgIDwvbmlsZS1jaGVja2JveD5cbiAgICAgIDwvbmlsZS1tZW51LWl0ZW0+XG4gICAgPC9uaWxlLW1lbnU+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbiJdfQ==