@onecx/angular-accelerator 5.28.0 → 5.29.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.
- package/assets/i18n/de.json +1 -0
- package/assets/i18n/en.json +1 -0
- package/esm2022/lib/components/data-table/data-table.component.mjs +14 -13
- package/esm2022/lib/components/page-header/page-header.component.mjs +2 -1
- package/fesm2022/onecx-angular-accelerator.mjs +19 -18
- package/fesm2022/onecx-angular-accelerator.mjs.map +1 -1
- package/package.json +5 -5
|
@@ -138,6 +138,7 @@ export class PageHeaderComponent {
|
|
|
138
138
|
});
|
|
139
139
|
this.overflowActions = [
|
|
140
140
|
...allowedActions.map((a) => ({
|
|
141
|
+
id: a.id,
|
|
141
142
|
label: a.labelKey ? translations[a.labelKey] : a.label,
|
|
142
143
|
icon: a.icon,
|
|
143
144
|
tooltipOptions: {
|
|
@@ -234,4 +235,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
|
|
|
234
235
|
type: ContentChild,
|
|
235
236
|
args: ['additionalToolbarContentLeft']
|
|
236
237
|
}] } });
|
|
237
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWFjY2VsZXJhdG9yL3NyYy9saWIvY29tcG9uZW50cy9wYWdlLWhlYWRlci9wYWdlLWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3Ivc3JjL2xpYi9jb21wb25lbnRzL3BhZ2UtaGVhZGVyL3BhZ2UtaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUlOLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUN0RCxPQUFPLEVBQVksVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ2xELE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUNsRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0NBQXNDLENBQUE7QUFDdEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNDQUFzQyxDQUFBO0FBQ2xFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFBOzs7Ozs7Ozs7Ozs7O0FBZ0VyRSxNQUFNLE9BQU8sbUJBQW1CO0lBd0I5QixJQUNJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUE7SUFDdEIsQ0FBQztJQUNELElBQUksT0FBTyxDQUFDLEtBQUs7UUFDZixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQTtRQUNyQixJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQTtRQUM1QixJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQTtJ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REgsTUFBTTtnQkFJUCx3QkFBd0I7c0JBRHZCLFlBQVk7dUJBQUMsMEJBQTBCO2dCQUl4Qyw0QkFBNEI7c0JBRDNCLFlBQVk7dUJBQUMsOEJBQThCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFRlbXBsYXRlUmVmLFxuICBUeXBlLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgTWVudUl0ZW0sIFByaW1lSWNvbnMgfSBmcm9tICdwcmltZW5nL2FwaSdcbmltcG9ydCB7IGNvbmNhdCwgbWFwLCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBBcHBTdGF0ZVNlcnZpY2UgfSBmcm9tICdAb25lY3gvYW5ndWxhci1pbnRlZ3JhdGlvbi1pbnRlcmZhY2UnXG5pbXBvcnQgeyBVc2VyU2VydmljZSB9IGZyb20gJ0BvbmVjeC9hbmd1bGFyLWludGVncmF0aW9uLWludGVyZmFjZSdcbmltcG9ydCB7IEJyZWFkY3J1bWJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYnJlYWRjcnVtYi5zZXJ2aWNlJ1xuaW1wb3J0IHsgUHJpbWVJY29uIH0gZnJvbSAnLi4vLi4vdXRpbHMvcHJpbWVpY29uLnV0aWxzJ1xuXG4vKipcbiAqIEFjdGlvbiBkZWZpbml0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFjdGlvbiB7XG4gIGlkPzogc3RyaW5nXG4gIGxhYmVsPzogc3RyaW5nXG4gIGxhYmVsS2V5Pzogc3RyaW5nXG4gIGljb24/OiBzdHJpbmdcbiAgLyoqXG4gICAqIFBlcm1pc3Npb24gZm9yIHRoaXMgYWN0aW9uLiBJZiB0aGUgY3VycmVudCB1c2VyIGRvZXMgbm90IGhhdmUgdGhpcyBwZXJtaXNzaW9uLCB0aGUgYWN0aW9uIHdpbGwgbm90IGJlIHNob3duLlxuICAgKi9cbiAgcGVybWlzc2lvbj86IHN0cmluZ1xuICB0aXRsZT86IHN0cmluZ1xuICB0aXRsZUtleT86IHN0cmluZ1xuICBhcmlhTGFiZWw/OiBzdHJpbmdcbiAgYXJpYUxhYmVsS2V5Pzogc3RyaW5nXG4gIGJ0bkNsYXNzPzogc3RyaW5nXG4gIGFjdGlvbkNhbGxiYWNrKCk6IHZvaWRcbiAgZGlzYWJsZWQ/OiBib29sZWFuXG4gIHNob3c/OiAnYWx3YXlzJyB8ICdhc092ZXJmbG93J1xuICBjb25kaXRpb25hbD86IGJvb2xlYW5cbiAgLy8gTm90ZTogVGhpcyBjdXJyZW50bHkgZG9lc24ndCB3b3JrIHdpdGggZHluYW1pYyB2YWx1ZXMsIHNpbmNlIGEgcGFzc2VkIGluIEFjdGlvbiBpcyBqdXN0IGEgY29weSBvZiB0aGUgb3JpZ2luYWwgb2JqZWN0LlxuICAvLyBBcyBhIHdvcmthcm91bmQsIHlvdSBjYW4gbWFudWFsbHkgdXBkYXRlL3JlcGxhY2UgdGhlIHBhc3NlZCBpbiBBY3Rpb24gaWYgeW91IHdpc2ggdG8gdXBkYXRlIGEgc2hvd0NvbmRpdGlvblxuICBzaG93Q29uZGl0aW9uPzogYm9vbGVhblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9iamVjdERldGFpbEl0ZW0ge1xuICBsYWJlbDogc3RyaW5nXG4gIHZhbHVlPzogc3RyaW5nXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCBVc2UgYHZhbHVlVG9vbHRpcGAgaW5zdGVhZFxuICAgKi9cbiAgdG9vbHRpcD86IHN0cmluZ1xuICBsYWJlbFRvb2x0aXA/OiBzdHJpbmdcbiAgdmFsdWVUb29sdGlwPzogc3RyaW5nXG4gIGljb24/OiBQcmltZUljb25cbiAgaWNvblN0eWxlQ2xhc3M/OiBzdHJpbmdcbiAgbGFiZWxQaXBlPzogVHlwZTxhbnk+XG4gIHZhbHVlUGlwZT86IFR5cGU8YW55PlxuICB2YWx1ZVBpcGVBcmdzPzogc3RyaW5nXG4gIHZhbHVlQ3NzQ2xhc3M/OiBzdHJpbmdcbiAgYWN0aW9uSXRlbUljb24/OiBQcmltZUljb25cbiAgYWN0aW9uSXRlbUNhbGxiYWNrPzogKCkgPT4gdm9pZFxuICBhY3Rpb25JdGVtVG9vbHRpcD86IHN0cmluZ1xuICBhY3Rpb25JdGVtQXJpYUxhYmVsS2V5Pzogc3RyaW5nXG4gIGFjdGlvbkl0ZW1BcmlhTGFiZWw/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBIb21lSXRlbSB7XG4gIG1lbnVJdGVtOiBNZW51SXRlbVxuICBwYWdlPzogc3RyaW5nXG59XG5cbmV4cG9ydCB0eXBlIEdyaWRDb2x1bW5PcHRpb25zID0gMSB8IDIgfCAzIHwgNCB8IDYgfCAxMlxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdvY3gtcGFnZS1oZWFkZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vcGFnZS1oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wYWdlLWhlYWRlci5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBQYWdlSGVhZGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBASW5wdXQoKVxuICBwdWJsaWMgaGVhZGVyOiBzdHJpbmcgfCB1bmRlZmluZWRcblxuICBASW5wdXQoKVxuICBsb2FkaW5nID0gZmFsc2VcblxuICBASW5wdXQoKVxuICBmaWd1cmVCYWNrZ3JvdW5kID0gdHJ1ZVxuXG4gIEBJbnB1dCgpXG4gIHNob3dGaWd1cmUgPSB0cnVlXG5cbiAgLy9pbWFnZSBmb3QgcHJldmlldyBpbiB0b3AtaGVhZGVyIGxlZnQgc2lkZVxuICBASW5wdXQoKVxuICBmaWd1cmVJbWFnZTogc3RyaW5nIHwgdW5kZWZpbmVkXG5cbiAgQElucHV0KClcbiAgZGlzYWJsZURlZmF1bHRBY3Rpb25zID0gZmFsc2VcblxuICBASW5wdXQoKVxuICBzdWJoZWFkZXI6IHN0cmluZyB8IHVuZGVmaW5lZFxuXG4gIF9hY3Rpb25zOiBBY3Rpb25bXSB8IHVuZGVmaW5lZFxuICBASW5wdXQoKVxuICBnZXQgYWN0aW9ucygpIHtcbiAgICByZXR1cm4gdGhpcy5fYWN0aW9uc1xuICB9XG4gIHNldCBhY3Rpb25zKHZhbHVlKSB7XG4gICAgdGhpcy5fYWN0aW9ucyA9IHZhbHVlXG4gICAgdGhpcy5nZW5lcmF0ZUlubGluZUFjdGlvbnMoKVxuICAgIHRoaXMuZ2VuZXJhdGVPdmVyZmxvd0FjdGlvbnMoKVxuICB9XG5cbiAgQElucHV0KClcbiAgb2JqZWN0RGV0YWlsczogT2JqZWN0RGV0YWlsSXRlbVtdIHwgdW5kZWZpbmVkXG5cbiAgQElucHV0KClcbiAgc2hvd0JyZWFkY3J1bWJzID0gdHJ1ZVxuXG4gIEBJbnB1dCgpXG4gIG1hbnVhbEJyZWFkY3J1bWJzID0gZmFsc2VcblxuICBASW5wdXQoKVxuICBlbmFibGVHcmlkVmlldzogdW5kZWZpbmVkIHwgYm9vbGVhblxuXG4gIEBJbnB1dCgpXG4gIGdyaWRMYXlvdXREZXNrdG9wQ29sdW1uczogdW5kZWZpbmVkIHwgR3JpZENvbHVtbk9wdGlvbnNcblxuICBAT3V0cHV0KClcbiAgc2F2ZSA9IG5ldyBFdmVudEVtaXR0ZXIoKVxuXG4gIEBDb250ZW50Q2hpbGQoJ2FkZGl0aW9uYWxUb29sYmFyQ29udGVudCcpXG4gIGFkZGl0aW9uYWxUb29sYmFyQ29udGVudDogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZFxuXG4gIEBDb250ZW50Q2hpbGQoJ2FkZGl0aW9uYWxUb29sYmFyQ29udGVudExlZnQnKVxuICBhZGRpdGlvbmFsVG9vbGJhckNvbnRlbnRMZWZ0OiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkXG5cbiAgb3ZlcmZsb3dBY3Rpb25zOiBNZW51SXRlbVtdID0gW11cbiAgaW5saW5lQWN0aW9uczogQWN0aW9uW10gfCB1bmRlZmluZWRcbiAgZGQgPSBuZXcgRGF0ZSgpXG4gIGJyZWFkY3J1bWJzJCE6IE9ic2VydmFibGU8TWVudUl0ZW1bXT5cblxuICBob21lJCE6IE9ic2VydmFibGU8SG9tZUl0ZW0+XG5cbiAgZmlndXJlSW1hZ2VMb2FkRXJyb3IgPSBmYWxzZVxuXG4gIG9iamVjdFBhbmVsR3JpZExheW91dENsYXNzZXMgPSAnZ3JpZCByb3ctZ2FwLTIgbS0wJ1xuICBvYmplY3RQYW5lbENvbHVtbkxheW91dENsYXNzZXMgPSAnZmxleCBmbGV4LXJvdyBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBvdmVyZmxvdy14LWF1dG8nXG5cbiAgb2JqZWN0UGFuZWxEZWZhdWx0TGF5b3V0Q2xhc3NlcyA9ICdmbGV4IGZsZXgtY29sdW1uIHJvdy1nYXAtMiBtZDpmbGV4LXJvdyBtZDpqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbidcblxuICBvYmplY3RJbmZvR3JpZExheW91dENsYXNzZXMgPSAnY29sLTEyIGZsZXggZ2FwLTQgbWQ6Y29sLTYgYWxpZ24taXRlbXMtY2VudGVyIHAtMCdcbiAgb2JqZWN0SW5mb0NvbHVtbkxheW91dENsYXNzZXMgPSAnZmxleCBmbGV4LWNvbHVtbiBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTIgbWluLXctMTIwJ1xuXG4gIG9iamVjdEluZm9EZWZhdWx0TGF5b3V0Q2xhc3NlcyA9ICdmbGV4IGZsZXgtcm93IG1kOmZsZXgtY29sdW1uIG1kOmFsaWduLWl0ZW1zLWNlbnRlciBtZDpnYXAtMidcblxuICBwcm90ZWN0ZWQgYnJlYWRjcnVtYnM6IEJyZWFkY3J1bWJTZXJ2aWNlXG5cbiAgY29uc3RydWN0b3IoXG4gICAgYnJlYWRjcnVtYnM6IEJyZWFkY3J1bWJTZXJ2aWNlLFxuICAgIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIGFwcFN0YXRlU2VydmljZTogQXBwU3RhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuYnJlYWRjcnVtYnMgPSBicmVhZGNydW1ic1xuICAgIHRoaXMuaG9tZSQgPSBjb25jYXQoXG4gICAgICBvZih7IG1lbnVJdGVtOiB7IGljb246IFByaW1lSWNvbnMuSE9NRSwgcm91dGVyTGluazogJy8nIH0gfSksXG4gICAgICB0aGlzLmFwcFN0YXRlU2VydmljZS5jdXJyZW50UG9ydGFsJC5waXBlKFxuICAgICAgICBtYXAoKHBvcnRhbCkgPT4gKHtcbiAgICAgICAgICBtZW51SXRlbToge1xuICAgICAgICAgICAgaWNvbjogUHJpbWVJY29ucy5IT01FLFxuICAgICAgICAgICAgcm91dGVyTGluazogcG9ydGFsLmJhc2VVcmwsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBwYWdlOiBwb3J0YWwucG9ydGFsTmFtZSxcbiAgICAgICAgfSkpXG4gICAgICApXG4gICAgKVxuICB9XG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlc1snYWN0aW9ucyddKSB7XG4gICAgICB0aGlzLmdlbmVyYXRlSW5saW5lQWN0aW9ucygpXG4gICAgICB0aGlzLmdlbmVyYXRlT3ZlcmZsb3dBY3Rpb25zKClcbiAgICB9XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMubWFudWFsQnJlYWRjcnVtYnMpIHtcbiAgICAgIHRoaXMuYnJlYWRjcnVtYnMkID0gdGhpcy5icmVhZGNydW1icy5nZW5lcmF0ZWRJdGVtc1NvdXJjZVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmJyZWFkY3J1bWJzJCA9IHRoaXMuYnJlYWRjcnVtYnMuaXRlbXNIYW5kbGVyXG4gICAgfVxuICAgIHRoaXMuZ2VuZXJhdGVJbmxpbmVBY3Rpb25zKClcbiAgICB0aGlzLmdlbmVyYXRlT3ZlcmZsb3dBY3Rpb25zKClcbiAgfVxuXG4gIG9uQWN0aW9uKGFjdGlvbjogc3RyaW5nKSB7XG4gICAgc3dpdGNoIChhY3Rpb24pIHtcbiAgICAgIGNhc2UgJ3NhdmUnOlxuICAgICAgICB0aGlzLnNhdmUuZW1pdCgpXG4gICAgICAgIGJyZWFrXG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVha1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZUltYWdlRXJyb3IoKSB7XG4gICAgdGhpcy5maWd1cmVJbWFnZUxvYWRFcnJvciA9IHRydWVcbiAgfVxuXG4gIHB1YmxpYyBnZW5lcmF0ZUl0ZW1TdHlsZShpdGVtOiBPYmplY3REZXRhaWxJdGVtKTogc3RyaW5nIHtcbiAgICBsZXQgc3R5bGUgPSAnJ1xuICAgIGlmIChpdGVtLmljb24pIHN0eWxlID0gc3R5bGUuY29uY2F0KHN0eWxlLCAnICcsICdnYXAtMSBhbGlnbi1pdGVtcy1jZW50ZXInKVxuICAgIGlmIChpdGVtLnZhbHVlQ3NzQ2xhc3MpIHN0eWxlID0gc3R5bGUuY29uY2F0KHN0eWxlLCAnICcsIGl0ZW0udmFsdWVDc3NDbGFzcylcbiAgICByZXR1cm4gc3R5bGVcbiAgfVxuXG4gIHB1YmxpYyBnZXRPYmplY3RQYW5lbExheW91dENsYXNzZXMoKSB7XG4gICAgaWYgKHRoaXMuZW5hYmxlR3JpZFZpZXcpIHtcbiAgICAgIHJldHVybiB0aGlzLm9iamVjdFBhbmVsR3JpZExheW91dENsYXNzZXNcbiAgICB9XG4gICAgaWYgKHRoaXMuZW5hYmxlR3JpZFZpZXcgPT09IGZhbHNlKSB7XG4gICAgICByZXR1cm4gdGhpcy5vYmplY3RQYW5lbENvbHVtbkxheW91dENsYXNzZXNcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMub2JqZWN0UGFuZWxEZWZhdWx0TGF5b3V0Q2xhc3Nlc1xuICB9XG5cbiAgcHVibGljIGdldE9iamVjdEluZm9MYXlvdXRDbGFzc2VzKCkge1xuICAgIGlmICh0aGlzLmVuYWJsZUdyaWRWaWV3KSB7XG4gICAgICByZXR1cm4gYCR7dGhpcy5vYmplY3RJbmZvR3JpZExheW91dENsYXNzZXN9IGxnOmNvbC0ke1xuICAgICAgICB0aGlzLmdyaWRMYXlvdXREZXNrdG9wQ29sdW1ucyA/IDEyIC8gdGhpcy5ncmlkTGF5b3V0RGVza3RvcENvbHVtbnMgOiA0XG4gICAgICB9YFxuICAgIH1cbiAgICBpZiAodGhpcy5lbmFibGVHcmlkVmlldyA9PT0gZmFsc2UpIHtcbiAgICAgIHJldHVybiB0aGlzLm9iamVjdEluZm9Db2x1bW5MYXlvdXRDbGFzc2VzXG4gICAgfVxuICAgIHJldHVybiB0aGlzLm9iamVjdEluZm9EZWZhdWx0TGF5b3V0Q2xhc3Nlc1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlcyBhIGxpc3Qgb2YgYWN0aW9ucyB0aGF0IHNob3VsZCBiZSByZW5kZXJlZCBpbiBhbiBvdmVyZmxvdyBtZW51XG4gICAqL1xuICBwcml2YXRlIGdlbmVyYXRlT3ZlcmZsb3dBY3Rpb25zKCkge1xuICAgIGlmICh0aGlzLmFjdGlvbnMpIHtcbiAgICAgIGNvbnN0IHRyYW5zbGF0aW9uS2V5czogc3RyaW5nW10gPSBbXG4gICAgICAgIC4uLnRoaXMuYWN0aW9ucy5tYXAoKGEpID0+IGEubGFiZWxLZXkgfHwgJycpLmZpbHRlcigoYSkgPT4gISFhKSxcbiAgICAgICAgLi4udGhpcy5hY3Rpb25zLm1hcCgoYSkgPT4gYS50aXRsZUtleSB8fCAnJykuZmlsdGVyKChhKSA9PiAhIWEpLFxuICAgICAgXVxuICAgICAgY29uc3QgdHJhbnNsYXRpb25zJCA9IHRyYW5zbGF0aW9uS2V5cy5sZW5ndGggPyB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuZ2V0KHRyYW5zbGF0aW9uS2V5cykgOiBvZihbXSlcbiAgICAgIHRyYW5zbGF0aW9ucyQuc3Vic2NyaWJlKCh0cmFuc2xhdGlvbnMpID0+IHtcbiAgICAgICAgY29uc3QgYWxsb3dlZEFjdGlvbnM6IEFjdGlvbltdID0gW11cbiAgICAgICAgaWYgKHRoaXMuYWN0aW9ucykge1xuICAgICAgICAgIHRoaXMuYWN0aW9uc1xuICAgICAgICAgICAgLmZpbHRlcigoYSkgPT4gYS5zaG93ID09PSAnYXNPdmVyZmxvdycpXG4gICAgICAgICAgICAuZmlsdGVyKChhKSA9PiB7XG4gICAgICAgICAgICAgIGlmIChhLmNvbmRpdGlvbmFsKSB7XG4gICAgICAgICAgICAgICAgaWYgKGEuc2hvd0NvbmRpdGlvbikgcmV0dXJuIGFcbiAgICAgICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgICAgICB9IGVsc2UgcmV0dXJuIGFcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuZm9yRWFjaCgoYWN0aW9uKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMuY2hlY2tBY3Rpb25QZXJtaXNzaW9uKGFsbG93ZWRBY3Rpb25zLCBhY3Rpb24pXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIHRoaXMub3ZlcmZsb3dBY3Rpb25zID0gW1xuICAgICAgICAgICAgLi4uYWxsb3dlZEFjdGlvbnMubWFwPE1lbnVJdGVtPigoYSkgPT4gKHtcbiAgICAgICAgICAgICAgbGFiZWw6IGEubGFiZWxLZXkgPyB0cmFuc2xhdGlvbnNbYS5sYWJlbEtleV0gOiBhLmxhYmVsLFxuICAgICAgICAgICAgICBpY29uOiBhLmljb24sXG4gICAgICAgICAgICAgIHRvb2x0aXBPcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgdG9vbHRpcExhYmVsOiBhLnRpdGxlS2V5ID8gdHJhbnNsYXRpb25zW2EudGl0bGVLZXldIDogYS50aXRsZSxcbiAgICAgICAgICAgICAgICB0b29sdGlwRXZlbnQ6ICdob3ZlcicsXG4gICAgICAgICAgICAgICAgdG9vbHRpcFBvc2l0aW9uOiAndG9wJyxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgY29tbWFuZDogYS5hY3Rpb25DYWxsYmFjayxcbiAgICAgICAgICAgICAgZGlzYWJsZWQ6IGEuZGlzYWJsZWQsXG4gICAgICAgICAgICB9KSksXG4gICAgICAgICAgXVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZXMgYSBsaXN0IG9mIGFjdGlvbnMgdGhhdCBzaG91bGQgYmUgcmVuZGVyZWQgYXMgaW5saW5lIGJ1dHRvbnNcbiAgICovXG4gIHByaXZhdGUgZ2VuZXJhdGVJbmxpbmVBY3Rpb25zKCkge1xuICAgIGlmICh0aGlzLmFjdGlvbnMpIHtcbiAgICAgIC8vIFRlbXAgYXJyYXkgdG8gaG9sZCBhbGwgaW5saW5lIGFjdGlvbnMgdGhhdCBzaG91bGQgYmUgdmlzaWJsZSB0byB0aGUgY3VycmVudCB1c2VyXG4gICAgICBjb25zdCBhbGxvd2VkQWN0aW9uczogQWN0aW9uW10gPSBbXVxuICAgICAgLy8gQ2hlY2sgcGVybWlzc2lvbnMgZm9yIGFsbCBhY3Rpb25zIHRoYXQgc2hvdWxkIGJlIHJlbmRlcmVkICdhbHdheXMnXG4gICAgICB0aGlzLmFjdGlvbnNcbiAgICAgICAgLmZpbHRlcigoYSkgPT4gYS5zaG93ID09PSAnYWx3YXlzJylcbiAgICAgICAgLmZpbHRlcigoYSkgPT4ge1xuICAgICAgICAgIGlmIChhLmNvbmRpdGlvbmFsKSB7XG4gICAgICAgICAgICByZXR1cm4gYS5zaG93Q29uZGl0aW9uID8gYSA6IG51bGxcbiAgICAgICAgICB9IGVsc2UgcmV0dXJuIGFcbiAgICAgICAgfSlcbiAgICAgICAgLmZvckVhY2goKGFjdGlvbikgPT4ge1xuICAgICAgICAgIHRoaXMuY2hlY2tBY3Rpb25QZXJtaXNzaW9uKGFsbG93ZWRBY3Rpb25zLCBhY3Rpb24pXG4gICAgICAgIH0pXG4gICAgICB0aGlzLmlubGluZUFjdGlvbnMgPSBbLi4uYWxsb3dlZEFjdGlvbnNdXG4gICAgfVxuICB9XG4gIC8qKlxuICAgKiBBZGRzIGEgZ2l2ZW4gYWN0aW9uIHRvIGEgZ2l2ZW4gYXJyYXkgaWYgdGhlIGN1cnJlbnQgdXNlciBpcyBhbGxvd2VkIHRvIHNlZSBpdFxuICAgKiBAcGFyYW0gYWxsb3dlZEFjdGlvbnMgQXJyYXkgdGhhdCB0aGUgYWN0aW9uIHNob3VsZCBiZSBhZGRlZCB0byBpZiB0aGUgY3VycmVudCB1c2VyIGlzIGFsbG93ZWQgdG8gc2VlIGl0XG4gICAqIEBwYXJhbSBhY3Rpb24gQWN0aW9uIGZvciB3aGljaCBhIHBlcm1pc3Npb24gY2hlY2sgc2hvdWxkIGJlIGV4ZWN1dGVkXG4gICAqL1xuICBwcml2YXRlIGNoZWNrQWN0aW9uUGVybWlzc2lvbihhbGxvd2VkQWN0aW9uczogQWN0aW9uW10sIGFjdGlvbjogQWN0aW9uKSB7XG4gICAgaWYgKGFjdGlvbi5wZXJtaXNzaW9uKSB7XG4gICAgICBpZiAodGhpcy51c2VyU2VydmljZS5oYXNQZXJtaXNzaW9uKGFjdGlvbi5wZXJtaXNzaW9uKSkge1xuICAgICAgICAvLyBQdXNoIGFjdGlvbiB0byBhbGxvd2VkIGFycmF5IGlmIHVzZXIgaGFzIHN1ZmZpY2llbnQgcGVybWlzc2lvbnNcbiAgICAgICAgYWxsb3dlZEFjdGlvbnMucHVzaChhY3Rpb24pXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIFB1c2ggYWN0aW9uIHRvIGFsbG93ZWQgYXJyYXkgaWYgbm8gcGVybWlzc2lvbiB3YXMgc3BlY2lmaWVkXG4gICAgICBhbGxvd2VkQWN0aW9ucy5wdXNoKGFjdGlvbilcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJvbmVjeC1wYWdlLWhlYWRlciBtYi00XCIgbmFtZT1cIm9jeC1wYWdlLWhlYWRlci13cmFwcGVyXCI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJzaG93QnJlYWRjcnVtYnNcIj5cbiAgICA8cC1icmVhZGNydW1iXG4gICAgICBbbW9kZWxdPVwiaXRlbXNcIlxuICAgICAgKm5nSWY9XCJicmVhZGNydW1icyQgfCBhc3luYyAgYXMgaXRlbXNcIlxuICAgICAgW2hvbWVdPVwiKGhvbWUkIHwgYXN5bmMpPy5tZW51SXRlbSA/PyB7fVwiXG4gICAgICBbaG9tZUFyaWFMYWJlbF09XCIoaG9tZSQgfCBhc3luYyk/LnBhZ2UgPyAoJ09DWF9QQUdFX0hFQURFUi5IT01FX0FSSUFfTEFCRUwnIHwgdHJhbnNsYXRlOiB7IHBhZ2U6IChob21lJCB8IGFzeW5jKT8ucGFnZX0pIDogKCdPQ1hfUEFHRV9IRUFERVIuSE9NRV9ERUZBVUxUX0FSSUFfTEFCRUwnIHwgdHJhbnNsYXRlKVwiXG4gICAgICBbYXR0ci5tYW51YWxdPVwibWFudWFsQnJlYWRjcnVtYnNcIlxuICAgID48L3AtYnJlYWRjcnVtYj5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxkaXYgY2xhc3M9XCJ0aXRsZS1iYXIgZmxleCBmbGV4LXJvdyBtZDpqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBwLTNcIj5cbiAgICA8ZGl2IGNsYXNzPVwidGl0bGUtd3JhcFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImZpZ3VyZSBmbGV4IGgtMnJlbSB3LTJyZW0gbWQ6aC0zcmVtIG1kOnctM3JlbVwiICpuZ0lmPVwic2hvd0ZpZ3VyZVwiPlxuICAgICAgICA8ZGl2ICNwcmV2aWV3SW1hZ2UgY2xhc3M9XCJmaWd1cmUtaW1hZ2UgYWJzb2x1dGUgdG9wLTAgbGVmdC0wIHJpZ2h0LTAgYm90dG9tLTBcIj5cbiAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZmlndXJlSW1hZ2VdXCI+PC9uZy1jb250ZW50PlxuICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICpuZ0lmPVwiZmlndXJlSW1hZ2UgJiYgIWZpZ3VyZUltYWdlTG9hZEVycm9yXCJcbiAgICAgICAgICAgIFtvY3hTcmNdPVwiZmlndXJlSW1hZ2VcIlxuICAgICAgICAgICAgYWx0PVwiRmlndXJlIGltYWdlXCJcbiAgICAgICAgICAgIGNsYXNzPVwidy1mdWxsXCJcbiAgICAgICAgICAgIChlcnJvcik9XCJoYW5kbGVJbWFnZUVycm9yKClcIlxuICAgICAgICAgIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJjb2xvcmJsb2IgZmxleC0xIGJvcmRlci1yb3VuZFwiXG4gICAgICAgICAgKm5nSWY9XCJwcmV2aWV3SW1hZ2UuY2hpbGRyZW4ubGVuZ3RoID09PSAwIHx8IGZpZ3VyZUltYWdlTG9hZEVycm9yXCJcbiAgICAgICAgPjwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8bmctdGVtcGxhdGUgI3NrZWxldG9uQmFyPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyIGp1c3RpZnktY29udGVudC1ldmVubHlcIj5cbiAgICAgICAgICA8cC1za2VsZXRvbiB3aWR0aD1cIjEwcmVtXCI+PC9wLXNrZWxldG9uPlxuICAgICAgICAgIDxwLXNrZWxldG9uIHdpZHRoPVwiMTByZW1cIj48L3Atc2tlbGV0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXJcIiAqbmdJZj1cIiFsb2FkaW5nOyBlbHNlIHNrZWxldG9uQmFyXCI+XG4gICAgICAgIDxoMSBpZD1cInBhZ2UtaGVhZGVyXCIgKm5nSWY9XCIhIWhlYWRlclwiPnt7IGhlYWRlciB9fTwvaDE+XG4gICAgICAgIDxoMiBpZD1cInBhZ2Utc3ViaGVhZGVyXCIgKm5nSWY9XCIhIXN1YmhlYWRlclwiPnt7IHN1YmhlYWRlciB9fTwvaDI+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uLWl0ZW1zLXdyYXAgbXQtMiBtZDptdC0wXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYWRkaXRpb25hbFRvb2xiYXJDb250ZW50TGVmdFwiIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImFkZGl0aW9uYWxUb29sYmFyQ29udGVudExlZnRcIj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWRpc2FibGVEZWZhdWx0QWN0aW9uc1wiPiA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjc2tlbGV0b25BY3Rpb25zPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleFwiPlxuICAgICAgICAgIDxwLXNrZWxldG9uIHdpZHRoPVwiNXJlbVwiIGhlaWdodD1cIjJyZW1cIiBzdHlsZUNsYXNzPVwibXItMlwiPjwvcC1za2VsZXRvbj5cbiAgICAgICAgICA8cC1za2VsZXRvbiB3aWR0aD1cIjJyZW1cIiBoZWlnaHQ9XCIycmVtXCIgc3R5bGVDbGFzcz1cIm1iLTJcIj48L3Atc2tlbGV0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhbG9hZGluZzsgZWxzZSBza2VsZXRvbkFjdGlvbnNcIj5cbiAgICAgICAgPGRpdiAqbmdJZj1cImlubGluZUFjdGlvbnMgJiYgaW5saW5lQWN0aW9ucy5sZW5ndGggPiAwXCIgY2xhc3M9XCJ0b29sYmFyIGZsZXggZmxleC13cmFwIGdhcC0xIHNtOmdhcC0yXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgYWN0aW9uIG9mIGlubGluZUFjdGlvbnNcIj5cbiAgICAgICAgICAgIDxwLWJ1dHRvblxuICAgICAgICAgICAgICBpZD1cInt7IGFjdGlvbi5pZCB9fVwiXG4gICAgICAgICAgICAgIFtpY29uXT1cImFjdGlvbi5pY29uID8/ICcnXCJcbiAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgIGNsYXNzPVwiYWN0aW9uLWJ1dHRvblwiXG4gICAgICAgICAgICAgIFtsYWJlbF09XCJhY3Rpb24ubGFiZWxLZXkgPyAoYWN0aW9uLmxhYmVsS2V5IHwgdHJhbnNsYXRlKSA6IGFjdGlvbi5sYWJlbFwiXG4gICAgICAgICAgICAgIChvbkNsaWNrKT1cImFjdGlvbi5hY3Rpb25DYWxsYmFjaygpXCJcbiAgICAgICAgICAgICAgW3BUb29sdGlwXT1cIihhY3Rpb24udGl0bGVLZXkgPyAoYWN0aW9uLnRpdGxlS2V5IHwgdHJhbnNsYXRlKSA6IGFjdGlvbi50aXRsZSlcIlxuICAgICAgICAgICAgICB0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxuICAgICAgICAgICAgICB0b29sdGlwRXZlbnQ9XCJob3ZlclwiXG4gICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJhY3Rpb24uZGlzYWJsZWQgPyBhY3Rpb24uZGlzYWJsZWQgOiBmYWxzZVwiXG4gICAgICAgICAgICAgIFthdHRyLm5hbWVdPVwiYWN0aW9uLmljb24gPyAnb2N4LXBhZ2UtaGVhZGVyLWlubGluZS1hY3Rpb24taWNvbi1idXR0b24nIDogJ29jeC1wYWdlLWhlYWRlci1pbmxpbmUtYWN0aW9uLWJ1dHRvbidcIlxuICAgICAgICAgICAgICBbYXJpYUxhYmVsXT1cIiAoYWN0aW9uLmFyaWFMYWJlbEtleSA/IChhY3Rpb24uYXJpYUxhYmVsS2V5IHwgdHJhbnNsYXRlKSA6IGFjdGlvbi5hcmlhTGFiZWwpIHx8IChhY3Rpb24udGl0bGVLZXkgPyAoYWN0aW9uLnRpdGxlS2V5IHwgdHJhbnNsYXRlKSA6IGFjdGlvbi50aXRsZSkgfHwgKGFjdGlvbi5sYWJlbEtleSA/IChhY3Rpb24ubGFiZWxLZXkgfCB0cmFuc2xhdGUpIDogYWN0aW9uLmxhYmVsKVwiXG4gICAgICAgICAgICA+PC9wLWJ1dHRvbj5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIlt0b29sYmFySXRlbXNdXCI+PC9uZy1jb250ZW50PlxuICAgICAgICA8bmctY29udGFpbmVyPlxuICAgICAgICAgIDxkaXYgKm5nSWY9XCJvdmVyZmxvd0FjdGlvbnMubGVuZ3RoICE9PSAwXCI+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgIGlkPVwicGFnZUhlYWRlck1lbnVCdXR0b25cIlxuICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgcEJ1dHRvblxuICAgICAgICAgICAgICBpY29uPVwicGkgcGktZWxsaXBzaXMtdlwiXG4gICAgICAgICAgICAgIHBUb29sdGlwPVwie3sgJ09DWF9QQUdFX0hFQURFUi5NT1JFX0FDVElPTlMnIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICAgICAgICAgdG9vbHRpcEV2ZW50PVwiaG92ZXJcIlxuICAgICAgICAgICAgICB0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxuICAgICAgICAgICAgICBjbGFzcz1cIm1vcmUtYWN0aW9ucy1tZW51LWJ1dHRvbiBhY3Rpb24tYnV0dG9uIG1sLTJcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwibWVudS50b2dnbGUoJGV2ZW50KVwiXG4gICAgICAgICAgICAgIG5hbWU9XCJvY3gtcGFnZS1oZWFkZXItb3ZlcmZsb3ctYWN0aW9uLWJ1dHRvblwiXG4gICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiKCdPQ1hfUEFHRV9IRUFERVIuTU9SRV9BQ1RJT05TJyB8IHRyYW5zbGF0ZSlcIlxuICAgICAgICAgICAgPjwvYnV0dG9uPlxuICAgICAgICAgICAgPHAtbWVudSAjbWVudSBbcG9wdXBdPVwidHJ1ZVwiIFttb2RlbF09XCJvdmVyZmxvd0FjdGlvbnNcIiBhcHBlbmRUbz1cImJvZHlcIj48L3AtbWVudT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhZGRpdGlvbmFsVG9vbGJhckNvbnRlbnRcIiBbbmdUZW1wbGF0ZU91dGxldF09XCJhZGRpdGlvbmFsVG9vbGJhckNvbnRlbnRcIj4gPC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJvYmplY3QtcGFuZWxcIiBbbmdDbGFzc109XCJnZXRPYmplY3RQYW5lbExheW91dENsYXNzZXMoKVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJvYmplY3REZXRhaWxzXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwib2JqZWN0LWluZm9cIiBbbmdDbGFzc109XCJnZXRPYmplY3RJbmZvTGF5b3V0Q2xhc3NlcygpXCIgKm5nRm9yPVwibGV0IGl0ZW0gb2Ygb2JqZWN0RGV0YWlsc1wiPlxuICAgICAgICA8c3BhblxuICAgICAgICAgIGNsYXNzPVwiZmxleCBmb250LW1lZGl1bSB0ZXh0LTYwMCBvYmplY3QtaW5mby1ncmlkLWxhYmVsXCJcbiAgICAgICAgICBuYW1lPVwib2JqZWN0LWRldGFpbC1sYWJlbFwiXG4gICAgICAgICAgW3BUb29sdGlwXT1cIml0ZW0ubGFiZWxUb29sdGlwIHx8ICcnXCJcbiAgICAgICAgICB0b29sdGlwRXZlbnQ9XCJob3ZlclwiXG4gICAgICAgICAgdG9vbHRpcFBvc2l0aW9uPVwidG9wXCJcbiAgICAgICAgICA+e3sgaXRlbS5sYWJlbCB8IGR5bmFtaWNQaXBlOml0ZW0ubGFiZWxQaXBlIH19PC9zcGFuXG4gICAgICAgID5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCJpdGVtLmljb24gfHwgaXRlbS52YWx1ZVwiIGNsYXNzPVwib2JqZWN0LWluZm8tZ3JpZC12YWx1ZVwiPlxuICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICBjbGFzcz1cImZsZXggdGV4dC05MDAgYWxpZ24taXRlbXMtY2VudGVyIGdhcC0yIHctbWF4XCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cImdlbmVyYXRlSXRlbVN0eWxlKGl0ZW0pXCJcbiAgICAgICAgICAgIG5hbWU9XCJvYmplY3QtZGV0YWlsLXZhbHVlXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICBjbGFzcz1cImZsZXggYWxpZ24taXRlbXMtY2VudGVyIGdhcC0yXCJcbiAgICAgICAgICAgICAgW3BUb29sdGlwXT1cIml0ZW0udmFsdWVUb29sdGlwIHx8IGl0ZW0udG9vbHRpcCB8fCAnJ1wiXG4gICAgICAgICAgICAgIHRvb2x0aXBFdmVudD1cImhvdmVyXCJcbiAgICAgICAgICAgICAgdG9vbHRpcFBvc2l0aW9uPVwidG9wXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGlcbiAgICAgICAgICAgICAgICAqbmdJZj1cIml0ZW0uaWNvblwiXG4gICAgICAgICAgICAgICAgY2xhc3M9J3t7aXRlbS5pY29uICsgXCIgXCIgKyAoaXRlbS5pY29uU3R5bGVDbGFzcyB8fCBcIlwiKX19J1xuICAgICAgICAgICAgICAgIG5hbWU9XCJvYmplY3QtZGV0YWlsLWljb25cIlxuICAgICAgICAgICAgICA+PC9pPlxuICAgICAgICAgICAgICB7eyBpdGVtLnZhbHVlIHwgZHluYW1pY1BpcGU6aXRlbS52YWx1ZVBpcGU6aXRlbS52YWx1ZVBpcGVBcmdzfX1cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDxwLWJ1dHRvblxuICAgICAgICAgICAgICAqbmdJZj1cIml0ZW0uYWN0aW9uSXRlbUljb24gJiYgaXRlbS5hY3Rpb25JdGVtQ2FsbGJhY2tcIlxuICAgICAgICAgICAgICBbaWNvbl09XCJpdGVtLmFjdGlvbkl0ZW1JY29uXCJcbiAgICAgICAgICAgICAgc3R5bGVDbGFzcz1cInAtYnV0dG9uLXRleHQgcC0wIHctZnVsbFwiXG4gICAgICAgICAgICAgIFtwVG9vbHRpcF09XCJpdGVtLmFjdGlvbkl0ZW1Ub29sdGlwIHx8ICcnXCJcbiAgICAgICAgICAgICAgdG9vbHRpcFBvc2l0aW9uPVwidG9wXCJcbiAgICAgICAgICAgICAgdG9vbHRpcEV2ZW50PVwiaG92ZXJcIlxuICAgICAgICAgICAgICBbYXJpYUxhYmVsXT1cIihpdGVtLmFjdGlvbkl0ZW1BcmlhTGFiZWxLZXkgPyAoaXRlbS5hY3Rpb25JdGVtQXJpYUxhYmVsS2V5IHwgdHJhbnNsYXRlKSA6IGl0ZW0uYWN0aW9uSXRlbUFyaWFMYWJlbCkgfHwgaXRlbS5hY3Rpb25JdGVtVG9vbHRpcCB8fCAnJ1wiXG4gICAgICAgICAgICAgIChvbkNsaWNrKT1cIml0ZW0uYWN0aW9uSXRlbUNhbGxiYWNrKClcIlxuICAgICAgICAgICAgPjwvcC1idXR0b24+XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
238
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWFjY2VsZXJhdG9yL3NyYy9saWIvY29tcG9uZW50cy9wYWdlLWhlYWRlci9wYWdlLWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItYWNjZWxlcmF0b3Ivc3JjL2xpYi9jb21wb25lbnRzL3BhZ2UtaGVhZGVyL3BhZ2UtaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUlOLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUN0RCxPQUFPLEVBQVksVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ2xELE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUNsRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0NBQXNDLENBQUE7QUFDdEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNDQUFzQyxDQUFBO0FBQ2xFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFBOzs7Ozs7Ozs7Ozs7O0FBZ0VyRSxNQUFNLE9BQU8sbUJBQW1CO0lBd0I5QixJQUNJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUE7SUFDdEIsQ0FBQztJQUNELElBQUksT0FBTyxDQUFDLEtBQUs7UUFDZixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQTtRQUNyQixJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQTtRQUM1QixJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQTtJ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QUF3QjtzQkFEdkIsS0FBSztnQkFJTixJQUFJO3NCQURILE1BQU07Z0JBSVAsd0JBQXdCO3NCQUR2QixZQUFZO3VCQUFDLDBCQUEwQjtnQkFJeEMsNEJBQTRCO3NCQUQzQixZQUFZO3VCQUFDLDhCQUE4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBUZW1wbGF0ZVJlZixcbiAgVHlwZSxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IE1lbnVJdGVtLCBQcmltZUljb25zIH0gZnJvbSAncHJpbWVuZy9hcGknXG5pbXBvcnQgeyBjb25jYXQsIG1hcCwgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgQXBwU3RhdGVTZXJ2aWNlIH0gZnJvbSAnQG9uZWN4L2FuZ3VsYXItaW50ZWdyYXRpb24taW50ZXJmYWNlJ1xuaW1wb3J0IHsgVXNlclNlcnZpY2UgfSBmcm9tICdAb25lY3gvYW5ndWxhci1pbnRlZ3JhdGlvbi1pbnRlcmZhY2UnXG5pbXBvcnQgeyBCcmVhZGNydW1iU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2JyZWFkY3J1bWIuc2VydmljZSdcbmltcG9ydCB7IFByaW1lSWNvbiB9IGZyb20gJy4uLy4uL3V0aWxzL3ByaW1laWNvbi51dGlscydcblxuLyoqXG4gKiBBY3Rpb24gZGVmaW5pdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBY3Rpb24ge1xuICBpZD86IHN0cmluZ1xuICBsYWJlbD86IHN0cmluZ1xuICBsYWJlbEtleT86IHN0cmluZ1xuICBpY29uPzogc3RyaW5nXG4gIC8qKlxuICAgKiBQZXJtaXNzaW9uIGZvciB0aGlzIGFjdGlvbi4gSWYgdGhlIGN1cnJlbnQgdXNlciBkb2VzIG5vdCBoYXZlIHRoaXMgcGVybWlzc2lvbiwgdGhlIGFjdGlvbiB3aWxsIG5vdCBiZSBzaG93bi5cbiAgICovXG4gIHBlcm1pc3Npb24/OiBzdHJpbmdcbiAgdGl0bGU/OiBzdHJpbmdcbiAgdGl0bGVLZXk/OiBzdHJpbmdcbiAgYXJpYUxhYmVsPzogc3RyaW5nXG4gIGFyaWFMYWJlbEtleT86IHN0cmluZ1xuICBidG5DbGFzcz86IHN0cmluZ1xuICBhY3Rpb25DYWxsYmFjaygpOiB2b2lkXG4gIGRpc2FibGVkPzogYm9vbGVhblxuICBzaG93PzogJ2Fsd2F5cycgfCAnYXNPdmVyZmxvdydcbiAgY29uZGl0aW9uYWw/OiBib29sZWFuXG4gIC8vIE5vdGU6IFRoaXMgY3VycmVudGx5IGRvZXNuJ3Qgd29yayB3aXRoIGR5bmFtaWMgdmFsdWVzLCBzaW5jZSBhIHBhc3NlZCBpbiBBY3Rpb24gaXMganVzdCBhIGNvcHkgb2YgdGhlIG9yaWdpbmFsIG9iamVjdC5cbiAgLy8gQXMgYSB3b3JrYXJvdW5kLCB5b3UgY2FuIG1hbnVhbGx5IHVwZGF0ZS9yZXBsYWNlIHRoZSBwYXNzZWQgaW4gQWN0aW9uIGlmIHlvdSB3aXNoIHRvIHVwZGF0ZSBhIHNob3dDb25kaXRpb25cbiAgc2hvd0NvbmRpdGlvbj86IGJvb2xlYW5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBPYmplY3REZXRhaWxJdGVtIHtcbiAgbGFiZWw6IHN0cmluZ1xuICB2YWx1ZT86IHN0cmluZ1xuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgVXNlIGB2YWx1ZVRvb2x0aXBgIGluc3RlYWRcbiAgICovXG4gIHRvb2x0aXA/OiBzdHJpbmdcbiAgbGFiZWxUb29sdGlwPzogc3RyaW5nXG4gIHZhbHVlVG9vbHRpcD86IHN0cmluZ1xuICBpY29uPzogUHJpbWVJY29uXG4gIGljb25TdHlsZUNsYXNzPzogc3RyaW5nXG4gIGxhYmVsUGlwZT86IFR5cGU8YW55PlxuICB2YWx1ZVBpcGU/OiBUeXBlPGFueT5cbiAgdmFsdWVQaXBlQXJncz86IHN0cmluZ1xuICB2YWx1ZUNzc0NsYXNzPzogc3RyaW5nXG4gIGFjdGlvbkl0ZW1JY29uPzogUHJpbWVJY29uXG4gIGFjdGlvbkl0ZW1DYWxsYmFjaz86ICgpID0+IHZvaWRcbiAgYWN0aW9uSXRlbVRvb2x0aXA/OiBzdHJpbmdcbiAgYWN0aW9uSXRlbUFyaWFMYWJlbEtleT86IHN0cmluZ1xuICBhY3Rpb25JdGVtQXJpYUxhYmVsPzogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSG9tZUl0ZW0ge1xuICBtZW51SXRlbTogTWVudUl0ZW1cbiAgcGFnZT86IHN0cmluZ1xufVxuXG5leHBvcnQgdHlwZSBHcmlkQ29sdW1uT3B0aW9ucyA9IDEgfCAyIHwgMyB8IDQgfCA2IHwgMTJcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnb2N4LXBhZ2UtaGVhZGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BhZ2UtaGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcGFnZS1oZWFkZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgUGFnZUhlYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgQElucHV0KClcbiAgcHVibGljIGhlYWRlcjogc3RyaW5nIHwgdW5kZWZpbmVkXG5cbiAgQElucHV0KClcbiAgbG9hZGluZyA9IGZhbHNlXG5cbiAgQElucHV0KClcbiAgZmlndXJlQmFja2dyb3VuZCA9IHRydWVcblxuICBASW5wdXQoKVxuICBzaG93RmlndXJlID0gdHJ1ZVxuXG4gIC8vaW1hZ2UgZm90IHByZXZpZXcgaW4gdG9wLWhlYWRlciBsZWZ0IHNpZGVcbiAgQElucHV0KClcbiAgZmlndXJlSW1hZ2U6IHN0cmluZyB8IHVuZGVmaW5lZFxuXG4gIEBJbnB1dCgpXG4gIGRpc2FibGVEZWZhdWx0QWN0aW9ucyA9IGZhbHNlXG5cbiAgQElucHV0KClcbiAgc3ViaGVhZGVyOiBzdHJpbmcgfCB1bmRlZmluZWRcblxuICBfYWN0aW9uczogQWN0aW9uW10gfCB1bmRlZmluZWRcbiAgQElucHV0KClcbiAgZ2V0IGFjdGlvbnMoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGlvbnNcbiAgfVxuICBzZXQgYWN0aW9ucyh2YWx1ZSkge1xuICAgIHRoaXMuX2FjdGlvbnMgPSB2YWx1ZVxuICAgIHRoaXMuZ2VuZXJhdGVJbmxpbmVBY3Rpb25zKClcbiAgICB0aGlzLmdlbmVyYXRlT3ZlcmZsb3dBY3Rpb25zKClcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIG9iamVjdERldGFpbHM6IE9iamVjdERldGFpbEl0ZW1bXSB8IHVuZGVmaW5lZFxuXG4gIEBJbnB1dCgpXG4gIHNob3dCcmVhZGNydW1icyA9IHRydWVcblxuICBASW5wdXQoKVxuICBtYW51YWxCcmVhZGNydW1icyA9IGZhbHNlXG5cbiAgQElucHV0KClcbiAgZW5hYmxlR3JpZFZpZXc6IHVuZGVmaW5lZCB8IGJvb2xlYW5cblxuICBASW5wdXQoKVxuICBncmlkTGF5b3V0RGVza3RvcENvbHVtbnM6IHVuZGVmaW5lZCB8IEdyaWRDb2x1bW5PcHRpb25zXG5cbiAgQE91dHB1dCgpXG4gIHNhdmUgPSBuZXcgRXZlbnRFbWl0dGVyKClcblxuICBAQ29udGVudENoaWxkKCdhZGRpdGlvbmFsVG9vbGJhckNvbnRlbnQnKVxuICBhZGRpdGlvbmFsVG9vbGJhckNvbnRlbnQ6IFRlbXBsYXRlUmVmPGFueT4gfCB1bmRlZmluZWRcblxuICBAQ29udGVudENoaWxkKCdhZGRpdGlvbmFsVG9vbGJhckNvbnRlbnRMZWZ0JylcbiAgYWRkaXRpb25hbFRvb2xiYXJDb250ZW50TGVmdDogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZFxuXG4gIG92ZXJmbG93QWN0aW9uczogTWVudUl0ZW1bXSA9IFtdXG4gIGlubGluZUFjdGlvbnM6IEFjdGlvbltdIHwgdW5kZWZpbmVkXG4gIGRkID0gbmV3IERhdGUoKVxuICBicmVhZGNydW1icyQhOiBPYnNlcnZhYmxlPE1lbnVJdGVtW10+XG5cbiAgaG9tZSQhOiBPYnNlcnZhYmxlPEhvbWVJdGVtPlxuXG4gIGZpZ3VyZUltYWdlTG9hZEVycm9yID0gZmFsc2VcblxuICBvYmplY3RQYW5lbEdyaWRMYXlvdXRDbGFzc2VzID0gJ2dyaWQgcm93LWdhcC0yIG0tMCdcbiAgb2JqZWN0UGFuZWxDb2x1bW5MYXlvdXRDbGFzc2VzID0gJ2ZsZXggZmxleC1yb3cganVzdGlmeS1jb250ZW50LWJldHdlZW4gb3ZlcmZsb3cteC1hdXRvJ1xuXG4gIG9iamVjdFBhbmVsRGVmYXVsdExheW91dENsYXNzZXMgPSAnZmxleCBmbGV4LWNvbHVtbiByb3ctZ2FwLTIgbWQ6ZmxleC1yb3cgbWQ6anVzdGlmeS1jb250ZW50LWJldHdlZW4nXG5cbiAgb2JqZWN0SW5mb0dyaWRMYXlvdXRDbGFzc2VzID0gJ2NvbC0xMiBmbGV4IGdhcC00IG1kOmNvbC02IGFsaWduLWl0ZW1zLWNlbnRlciBwLTAnXG4gIG9iamVjdEluZm9Db2x1bW5MYXlvdXRDbGFzc2VzID0gJ2ZsZXggZmxleC1jb2x1bW4gYWxpZ24taXRlbXMtY2VudGVyIGdhcC0yIG1pbi13LTEyMCdcblxuICBvYmplY3RJbmZvRGVmYXVsdExheW91dENsYXNzZXMgPSAnZmxleCBmbGV4LXJvdyBtZDpmbGV4LWNvbHVtbiBtZDphbGlnbi1pdGVtcy1jZW50ZXIgbWQ6Z2FwLTInXG5cbiAgcHJvdGVjdGVkIGJyZWFkY3J1bWJzOiBCcmVhZGNydW1iU2VydmljZVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGJyZWFkY3J1bWJzOiBCcmVhZGNydW1iU2VydmljZSxcbiAgICBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBhcHBTdGF0ZVNlcnZpY2U6IEFwcFN0YXRlU2VydmljZSxcbiAgICBwcml2YXRlIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZVxuICApIHtcbiAgICB0aGlzLmJyZWFkY3J1bWJzID0gYnJlYWRjcnVtYnNcbiAgICB0aGlzLmhvbWUkID0gY29uY2F0KFxuICAgICAgb2YoeyBtZW51SXRlbTogeyBpY29uOiBQcmltZUljb25zLkhPTUUsIHJvdXRlckxpbms6ICcvJyB9IH0pLFxuICAgICAgdGhpcy5hcHBTdGF0ZVNlcnZpY2UuY3VycmVudFBvcnRhbCQucGlwZShcbiAgICAgICAgbWFwKChwb3J0YWwpID0+ICh7XG4gICAgICAgICAgbWVudUl0ZW06IHtcbiAgICAgICAgICAgIGljb246IFByaW1lSWNvbnMuSE9NRSxcbiAgICAgICAgICAgIHJvdXRlckxpbms6IHBvcnRhbC5iYXNlVXJsLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgcGFnZTogcG9ydGFsLnBvcnRhbE5hbWUsXG4gICAgICAgIH0pKVxuICAgICAgKVxuICAgIClcbiAgfVxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZXNbJ2FjdGlvbnMnXSkge1xuICAgICAgdGhpcy5nZW5lcmF0ZUlubGluZUFjdGlvbnMoKVxuICAgICAgdGhpcy5nZW5lcmF0ZU92ZXJmbG93QWN0aW9ucygpXG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLm1hbnVhbEJyZWFkY3J1bWJzKSB7XG4gICAgICB0aGlzLmJyZWFkY3J1bWJzJCA9IHRoaXMuYnJlYWRjcnVtYnMuZ2VuZXJhdGVkSXRlbXNTb3VyY2VcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5icmVhZGNydW1icyQgPSB0aGlzLmJyZWFkY3J1bWJzLml0ZW1zSGFuZGxlclxuICAgIH1cbiAgICB0aGlzLmdlbmVyYXRlSW5saW5lQWN0aW9ucygpXG4gICAgdGhpcy5nZW5lcmF0ZU92ZXJmbG93QWN0aW9ucygpXG4gIH1cblxuICBvbkFjdGlvbihhY3Rpb246IHN0cmluZykge1xuICAgIHN3aXRjaCAoYWN0aW9uKSB7XG4gICAgICBjYXNlICdzYXZlJzpcbiAgICAgICAgdGhpcy5zYXZlLmVtaXQoKVxuICAgICAgICBicmVha1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgYnJlYWtcbiAgICB9XG4gIH1cblxuICBoYW5kbGVJbWFnZUVycm9yKCkge1xuICAgIHRoaXMuZmlndXJlSW1hZ2VMb2FkRXJyb3IgPSB0cnVlXG4gIH1cblxuICBwdWJsaWMgZ2VuZXJhdGVJdGVtU3R5bGUoaXRlbTogT2JqZWN0RGV0YWlsSXRlbSk6IHN0cmluZyB7XG4gICAgbGV0IHN0eWxlID0gJydcbiAgICBpZiAoaXRlbS5pY29uKSBzdHlsZSA9IHN0eWxlLmNvbmNhdChzdHlsZSwgJyAnLCAnZ2FwLTEgYWxpZ24taXRlbXMtY2VudGVyJylcbiAgICBpZiAoaXRlbS52YWx1ZUNzc0NsYXNzKSBzdHlsZSA9IHN0eWxlLmNvbmNhdChzdHlsZSwgJyAnLCBpdGVtLnZhbHVlQ3NzQ2xhc3MpXG4gICAgcmV0dXJuIHN0eWxlXG4gIH1cblxuICBwdWJsaWMgZ2V0T2JqZWN0UGFuZWxMYXlvdXRDbGFzc2VzKCkge1xuICAgIGlmICh0aGlzLmVuYWJsZUdyaWRWaWV3KSB7XG4gICAgICByZXR1cm4gdGhpcy5vYmplY3RQYW5lbEdyaWRMYXlvdXRDbGFzc2VzXG4gICAgfVxuICAgIGlmICh0aGlzLmVuYWJsZUdyaWRWaWV3ID09PSBmYWxzZSkge1xuICAgICAgcmV0dXJuIHRoaXMub2JqZWN0UGFuZWxDb2x1bW5MYXlvdXRDbGFzc2VzXG4gICAgfVxuICAgIHJldHVybiB0aGlzLm9iamVjdFBhbmVsRGVmYXVsdExheW91dENsYXNzZXNcbiAgfVxuXG4gIHB1YmxpYyBnZXRPYmplY3RJbmZvTGF5b3V0Q2xhc3NlcygpIHtcbiAgICBpZiAodGhpcy5lbmFibGVHcmlkVmlldykge1xuICAgICAgcmV0dXJuIGAke3RoaXMub2JqZWN0SW5mb0dyaWRMYXlvdXRDbGFzc2VzfSBsZzpjb2wtJHtcbiAgICAgICAgdGhpcy5ncmlkTGF5b3V0RGVza3RvcENvbHVtbnMgPyAxMiAvIHRoaXMuZ3JpZExheW91dERlc2t0b3BDb2x1bW5zIDogNFxuICAgICAgfWBcbiAgICB9XG4gICAgaWYgKHRoaXMuZW5hYmxlR3JpZFZpZXcgPT09IGZhbHNlKSB7XG4gICAgICByZXR1cm4gdGhpcy5vYmplY3RJbmZvQ29sdW1uTGF5b3V0Q2xhc3Nlc1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5vYmplY3RJbmZvRGVmYXVsdExheW91dENsYXNzZXNcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZXMgYSBsaXN0IG9mIGFjdGlvbnMgdGhhdCBzaG91bGQgYmUgcmVuZGVyZWQgaW4gYW4gb3ZlcmZsb3cgbWVudVxuICAgKi9cbiAgcHJpdmF0ZSBnZW5lcmF0ZU92ZXJmbG93QWN0aW9ucygpIHtcbiAgICBpZiAodGhpcy5hY3Rpb25zKSB7XG4gICAgICBjb25zdCB0cmFuc2xhdGlvbktleXM6IHN0cmluZ1tdID0gW1xuICAgICAgICAuLi50aGlzLmFjdGlvbnMubWFwKChhKSA9PiBhLmxhYmVsS2V5IHx8ICcnKS5maWx0ZXIoKGEpID0+ICEhYSksXG4gICAgICAgIC4uLnRoaXMuYWN0aW9ucy5tYXAoKGEpID0+IGEudGl0bGVLZXkgfHwgJycpLmZpbHRlcigoYSkgPT4gISFhKSxcbiAgICAgIF1cbiAgICAgIGNvbnN0IHRyYW5zbGF0aW9ucyQgPSB0cmFuc2xhdGlvbktleXMubGVuZ3RoID8gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmdldCh0cmFuc2xhdGlvbktleXMpIDogb2YoW10pXG4gICAgICB0cmFuc2xhdGlvbnMkLnN1YnNjcmliZSgodHJhbnNsYXRpb25zKSA9PiB7XG4gICAgICAgIGNvbnN0IGFsbG93ZWRBY3Rpb25zOiBBY3Rpb25bXSA9IFtdXG4gICAgICAgIGlmICh0aGlzLmFjdGlvbnMpIHtcbiAgICAgICAgICB0aGlzLmFjdGlvbnNcbiAgICAgICAgICAgIC5maWx0ZXIoKGEpID0+IGEuc2hvdyA9PT0gJ2FzT3ZlcmZsb3cnKVxuICAgICAgICAgICAgLmZpbHRlcigoYSkgPT4ge1xuICAgICAgICAgICAgICBpZiAoYS5jb25kaXRpb25hbCkge1xuICAgICAgICAgICAgICAgIGlmIChhLnNob3dDb25kaXRpb24pIHJldHVybiBhXG4gICAgICAgICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICAgICAgfSBlbHNlIHJldHVybiBhXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLmZvckVhY2goKGFjdGlvbikgPT4ge1xuICAgICAgICAgICAgICB0aGlzLmNoZWNrQWN0aW9uUGVybWlzc2lvbihhbGxvd2VkQWN0aW9ucywgYWN0aW9uKVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICB0aGlzLm92ZXJmbG93QWN0aW9ucyA9IFtcbiAgICAgICAgICAgIC4uLmFsbG93ZWRBY3Rpb25zLm1hcDxNZW51SXRlbT4oKGEpID0+ICh7XG4gICAgICAgICAgICAgIGlkOiBhLmlkLFxuICAgICAgICAgICAgICBsYWJlbDogYS5sYWJlbEtleSA/IHRyYW5zbGF0aW9uc1thLmxhYmVsS2V5XSA6IGEubGFiZWwsXG4gICAgICAgICAgICAgIGljb246IGEuaWNvbixcbiAgICAgICAgICAgICAgdG9vbHRpcE9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICB0b29sdGlwTGFiZWw6IGEudGl0bGVLZXkgPyB0cmFuc2xhdGlvbnNbYS50aXRsZUtleV0gOiBhLnRpdGxlLFxuICAgICAgICAgICAgICAgIHRvb2x0aXBFdmVudDogJ2hvdmVyJyxcbiAgICAgICAgICAgICAgICB0b29sdGlwUG9zaXRpb246ICd0b3AnLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBjb21tYW5kOiBhLmFjdGlvbkNhbGxiYWNrLFxuICAgICAgICAgICAgICBkaXNhYmxlZDogYS5kaXNhYmxlZCxcbiAgICAgICAgICAgIH0pKSxcbiAgICAgICAgICBdXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlcyBhIGxpc3Qgb2YgYWN0aW9ucyB0aGF0IHNob3VsZCBiZSByZW5kZXJlZCBhcyBpbmxpbmUgYnV0dG9uc1xuICAgKi9cbiAgcHJpdmF0ZSBnZW5lcmF0ZUlubGluZUFjdGlvbnMoKSB7XG4gICAgaWYgKHRoaXMuYWN0aW9ucykge1xuICAgICAgLy8gVGVtcCBhcnJheSB0byBob2xkIGFsbCBpbmxpbmUgYWN0aW9ucyB0aGF0IHNob3VsZCBiZSB2aXNpYmxlIHRvIHRoZSBjdXJyZW50IHVzZXJcbiAgICAgIGNvbnN0IGFsbG93ZWRBY3Rpb25zOiBBY3Rpb25bXSA9IFtdXG4gICAgICAvLyBDaGVjayBwZXJtaXNzaW9ucyBmb3IgYWxsIGFjdGlvbnMgdGhhdCBzaG91bGQgYmUgcmVuZGVyZWQgJ2Fsd2F5cydcbiAgICAgIHRoaXMuYWN0aW9uc1xuICAgICAgICAuZmlsdGVyKChhKSA9PiBhLnNob3cgPT09ICdhbHdheXMnKVxuICAgICAgICAuZmlsdGVyKChhKSA9PiB7XG4gICAgICAgICAgaWYgKGEuY29uZGl0aW9uYWwpIHtcbiAgICAgICAgICAgIHJldHVybiBhLnNob3dDb25kaXRpb24gPyBhIDogbnVsbFxuICAgICAgICAgIH0gZWxzZSByZXR1cm4gYVxuICAgICAgICB9KVxuICAgICAgICAuZm9yRWFjaCgoYWN0aW9uKSA9PiB7XG4gICAgICAgICAgdGhpcy5jaGVja0FjdGlvblBlcm1pc3Npb24oYWxsb3dlZEFjdGlvbnMsIGFjdGlvbilcbiAgICAgICAgfSlcbiAgICAgIHRoaXMuaW5saW5lQWN0aW9ucyA9IFsuLi5hbGxvd2VkQWN0aW9uc11cbiAgICB9XG4gIH1cbiAgLyoqXG4gICAqIEFkZHMgYSBnaXZlbiBhY3Rpb24gdG8gYSBnaXZlbiBhcnJheSBpZiB0aGUgY3VycmVudCB1c2VyIGlzIGFsbG93ZWQgdG8gc2VlIGl0XG4gICAqIEBwYXJhbSBhbGxvd2VkQWN0aW9ucyBBcnJheSB0aGF0IHRoZSBhY3Rpb24gc2hvdWxkIGJlIGFkZGVkIHRvIGlmIHRoZSBjdXJyZW50IHVzZXIgaXMgYWxsb3dlZCB0byBzZWUgaXRcbiAgICogQHBhcmFtIGFjdGlvbiBBY3Rpb24gZm9yIHdoaWNoIGEgcGVybWlzc2lvbiBjaGVjayBzaG91bGQgYmUgZXhlY3V0ZWRcbiAgICovXG4gIHByaXZhdGUgY2hlY2tBY3Rpb25QZXJtaXNzaW9uKGFsbG93ZWRBY3Rpb25zOiBBY3Rpb25bXSwgYWN0aW9uOiBBY3Rpb24pIHtcbiAgICBpZiAoYWN0aW9uLnBlcm1pc3Npb24pIHtcbiAgICAgIGlmICh0aGlzLnVzZXJTZXJ2aWNlLmhhc1Blcm1pc3Npb24oYWN0aW9uLnBlcm1pc3Npb24pKSB7XG4gICAgICAgIC8vIFB1c2ggYWN0aW9uIHRvIGFsbG93ZWQgYXJyYXkgaWYgdXNlciBoYXMgc3VmZmljaWVudCBwZXJtaXNzaW9uc1xuICAgICAgICBhbGxvd2VkQWN0aW9ucy5wdXNoKGFjdGlvbilcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgLy8gUHVzaCBhY3Rpb24gdG8gYWxsb3dlZCBhcnJheSBpZiBubyBwZXJtaXNzaW9uIHdhcyBzcGVjaWZpZWRcbiAgICAgIGFsbG93ZWRBY3Rpb25zLnB1c2goYWN0aW9uKVxuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cIm9uZWN4LXBhZ2UtaGVhZGVyIG1iLTRcIiBuYW1lPVwib2N4LXBhZ2UtaGVhZGVyLXdyYXBwZXJcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNob3dCcmVhZGNydW1ic1wiPlxuICAgIDxwLWJyZWFkY3J1bWJcbiAgICAgIFttb2RlbF09XCJpdGVtc1wiXG4gICAgICAqbmdJZj1cImJyZWFkY3J1bWJzJCB8IGFzeW5jICBhcyBpdGVtc1wiXG4gICAgICBbaG9tZV09XCIoaG9tZSQgfCBhc3luYyk/Lm1lbnVJdGVtID8/IHt9XCJcbiAgICAgIFtob21lQXJpYUxhYmVsXT1cIihob21lJCB8IGFzeW5jKT8ucGFnZSA/ICgnT0NYX1BBR0VfSEVBREVSLkhPTUVfQVJJQV9MQUJFTCcgfCB0cmFuc2xhdGU6IHsgcGFnZTogKGhvbWUkIHwgYXN5bmMpPy5wYWdlfSkgOiAoJ09DWF9QQUdFX0hFQURFUi5IT01FX0RFRkFVTFRfQVJJQV9MQUJFTCcgfCB0cmFuc2xhdGUpXCJcbiAgICAgIFthdHRyLm1hbnVhbF09XCJtYW51YWxCcmVhZGNydW1ic1wiXG4gICAgPjwvcC1icmVhZGNydW1iPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPGRpdiBjbGFzcz1cInRpdGxlLWJhciBmbGV4IGZsZXgtcm93IG1kOmp1c3RpZnktY29udGVudC1iZXR3ZWVuIHAtM1wiPlxuICAgIDxkaXYgY2xhc3M9XCJ0aXRsZS13cmFwXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmlndXJlIGZsZXggaC0ycmVtIHctMnJlbSBtZDpoLTNyZW0gbWQ6dy0zcmVtXCIgKm5nSWY9XCJzaG93RmlndXJlXCI+XG4gICAgICAgIDxkaXYgI3ByZXZpZXdJbWFnZSBjbGFzcz1cImZpZ3VyZS1pbWFnZSBhYnNvbHV0ZSB0b3AtMCBsZWZ0LTAgcmlnaHQtMCBib3R0b20tMFwiPlxuICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltmaWd1cmVJbWFnZV1cIj48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgPGltZ1xuICAgICAgICAgICAgKm5nSWY9XCJmaWd1cmVJbWFnZSAmJiAhZmlndXJlSW1hZ2VMb2FkRXJyb3JcIlxuICAgICAgICAgICAgW29jeFNyY109XCJmaWd1cmVJbWFnZVwiXG4gICAgICAgICAgICBhbHQ9XCJGaWd1cmUgaW1hZ2VcIlxuICAgICAgICAgICAgY2xhc3M9XCJ3LWZ1bGxcIlxuICAgICAgICAgICAgKGVycm9yKT1cImhhbmRsZUltYWdlRXJyb3IoKVwiXG4gICAgICAgICAgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cImNvbG9yYmxvYiBmbGV4LTEgYm9yZGVyLXJvdW5kXCJcbiAgICAgICAgICAqbmdJZj1cInByZXZpZXdJbWFnZS5jaGlsZHJlbi5sZW5ndGggPT09IDAgfHwgZmlndXJlSW1hZ2VMb2FkRXJyb3JcIlxuICAgICAgICA+PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjc2tlbGV0b25CYXI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXIganVzdGlmeS1jb250ZW50LWV2ZW5seVwiPlxuICAgICAgICAgIDxwLXNrZWxldG9uIHdpZHRoPVwiMTByZW1cIj48L3Atc2tlbGV0b24+XG4gICAgICAgICAgPHAtc2tlbGV0b24gd2lkdGg9XCIxMHJlbVwiPjwvcC1za2VsZXRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPGRpdiBjbGFzcz1cImhlYWRlclwiICpuZ0lmPVwiIWxvYWRpbmc7IGVsc2Ugc2tlbGV0b25CYXJcIj5cbiAgICAgICAgPGgxIGlkPVwicGFnZS1oZWFkZXJcIiAqbmdJZj1cIiEhaGVhZGVyXCI+e3sgaGVhZGVyIH19PC9oMT5cbiAgICAgICAgPGgyIGlkPVwicGFnZS1zdWJoZWFkZXJcIiAqbmdJZj1cIiEhc3ViaGVhZGVyXCI+e3sgc3ViaGVhZGVyIH19PC9oMj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24taXRlbXMtd3JhcCBtdC0yIG1kOm10LTBcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhZGRpdGlvbmFsVG9vbGJhckNvbnRlbnRMZWZ0XCIgW25nVGVtcGxhdGVPdXRsZXRdPVwiYWRkaXRpb25hbFRvb2xiYXJDb250ZW50TGVmdFwiPlxuICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhZGlzYWJsZURlZmF1bHRBY3Rpb25zXCI+IDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLXRlbXBsYXRlICNza2VsZXRvbkFjdGlvbnM+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4XCI+XG4gICAgICAgICAgPHAtc2tlbGV0b24gd2lkdGg9XCI1cmVtXCIgaGVpZ2h0PVwiMnJlbVwiIHN0eWxlQ2xhc3M9XCJtci0yXCI+PC9wLXNrZWxldG9uPlxuICAgICAgICAgIDxwLXNrZWxldG9uIHdpZHRoPVwiMnJlbVwiIGhlaWdodD1cIjJyZW1cIiBzdHlsZUNsYXNzPVwibWItMlwiPjwvcC1za2VsZXRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFsb2FkaW5nOyBlbHNlIHNrZWxldG9uQWN0aW9uc1wiPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwiaW5saW5lQWN0aW9ucyAmJiBpbmxpbmVBY3Rpb25zLmxlbmd0aCA+IDBcIiBjbGFzcz1cInRvb2xiYXIgZmxleCBmbGV4LXdyYXAgZ2FwLTEgc206Z2FwLTJcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBhY3Rpb24gb2YgaW5saW5lQWN0aW9uc1wiPlxuICAgICAgICAgICAgPHAtYnV0dG9uXG4gICAgICAgICAgICAgIGlkPVwie3sgYWN0aW9uLmlkIH19XCJcbiAgICAgICAgICAgICAgW2ljb25dPVwiYWN0aW9uLmljb24gPz8gJydcIlxuICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJhY3Rpb24tYnV0dG9uXCJcbiAgICAgICAgICAgICAgW2xhYmVsXT1cImFjdGlvbi5sYWJlbEtleSA/IChhY3Rpb24ubGFiZWxLZXkgfCB0cmFuc2xhdGUpIDogYWN0aW9uLmxhYmVsXCJcbiAgICAgICAgICAgICAgKG9uQ2xpY2spPVwiYWN0aW9uLmFjdGlvbkNhbGxiYWNrKClcIlxuICAgICAgICAgICAgICBbcFRvb2x0aXBdPVwiKGFjdGlvbi50aXRsZUtleSA/IChhY3Rpb24udGl0bGVLZXkgfCB0cmFuc2xhdGUpIDogYWN0aW9uLnRpdGxlKVwiXG4gICAgICAgICAgICAgIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiXG4gICAgICAgICAgICAgIHRvb2x0aXBFdmVudD1cImhvdmVyXCJcbiAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImFjdGlvbi5kaXNhYmxlZCA/IGFjdGlvbi5kaXNhYmxlZCA6IGZhbHNlXCJcbiAgICAgICAgICAgICAgW2F0dHIubmFtZV09XCJhY3Rpb24uaWNvbiA/ICdvY3gtcGFnZS1oZWFkZXItaW5saW5lLWFjdGlvbi1pY29uLWJ1dHRvbicgOiAnb2N4LXBhZ2UtaGVhZGVyLWlubGluZS1hY3Rpb24tYnV0dG9uJ1wiXG4gICAgICAgICAgICAgIFthcmlhTGFiZWxdPVwiIChhY3Rpb24uYXJpYUxhYmVsS2V5ID8gKGFjdGlvbi5hcmlhTGFiZWxLZXkgfCB0cmFuc2xhdGUpIDogYWN0aW9uLmFyaWFMYWJlbCkgfHwgKGFjdGlvbi50aXRsZUtleSA/IChhY3Rpb24udGl0bGVLZXkgfCB0cmFuc2xhdGUpIDogYWN0aW9uLnRpdGxlKSB8fCAoYWN0aW9uLmxhYmVsS2V5ID8gKGFjdGlvbi5sYWJlbEtleSB8IHRyYW5zbGF0ZSkgOiBhY3Rpb24ubGFiZWwpXCJcbiAgICAgICAgICAgID48L3AtYnV0dG9uPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3Rvb2xiYXJJdGVtc11cIj48L25nLWNvbnRlbnQ+XG4gICAgICAgIDxuZy1jb250YWluZXI+XG4gICAgICAgICAgPGRpdiAqbmdJZj1cIm92ZXJmbG93QWN0aW9ucy5sZW5ndGggIT09IDBcIj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgaWQ9XCJwYWdlSGVhZGVyTWVudUJ1dHRvblwiXG4gICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICBwQnV0dG9uXG4gICAgICAgICAgICAgIGljb249XCJwaSBwaS1lbGxpcHNpcy12XCJcbiAgICAgICAgICAgICAgcFRvb2x0aXA9XCJ7eyAnT0NYX1BBR0VfSEVBREVSLk1PUkVfQUNUSU9OUycgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICAgICAgICB0b29sdGlwRXZlbnQ9XCJob3ZlclwiXG4gICAgICAgICAgICAgIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiXG4gICAgICAgICAgICAgIGNsYXNzPVwibW9yZS1hY3Rpb25zLW1lbnUtYnV0dG9uIGFjdGlvbi1idXR0b24gbWwtMlwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJtZW51LnRvZ2dsZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgbmFtZT1cIm9jeC1wYWdlLWhlYWRlci1vdmVyZmxvdy1hY3Rpb24tYnV0dG9uXCJcbiAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCIoJ09DWF9QQUdFX0hFQURFUi5NT1JFX0FDVElPTlMnIHwgdHJhbnNsYXRlKVwiXG4gICAgICAgICAgICA+PC9idXR0b24+XG4gICAgICAgICAgICA8cC1tZW51ICNtZW51IFtwb3B1cF09XCJ0cnVlXCIgW21vZGVsXT1cIm92ZXJmbG93QWN0aW9uc1wiIGFwcGVuZFRvPVwiYm9keVwiPjwvcC1tZW51PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImFkZGl0aW9uYWxUb29sYmFyQ29udGVudFwiIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImFkZGl0aW9uYWxUb29sYmFyQ29udGVudFwiPiA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cIm9iamVjdC1wYW5lbFwiIFtuZ0NsYXNzXT1cImdldE9iamVjdFBhbmVsTGF5b3V0Q2xhc3NlcygpXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm9iamVjdERldGFpbHNcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJvYmplY3QtaW5mb1wiIFtuZ0NsYXNzXT1cImdldE9iamVjdEluZm9MYXlvdXRDbGFzc2VzKClcIiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBvYmplY3REZXRhaWxzXCI+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgY2xhc3M9XCJmbGV4IGZvbnQtbWVkaXVtIHRleHQtNjAwIG9iamVjdC1pbmZvLWdyaWQtbGFiZWxcIlxuICAgICAgICAgIG5hbWU9XCJvYmplY3QtZGV0YWlsLWxhYmVsXCJcbiAgICAgICAgICBbcFRvb2x0aXBdPVwiaXRlbS5sYWJlbFRvb2x0aXAgfHwgJydcIlxuICAgICAgICAgIHRvb2x0aXBFdmVudD1cImhvdmVyXCJcbiAgICAgICAgICB0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxuICAgICAgICAgID57eyBpdGVtLmxhYmVsIHwgZHluYW1pY1BpcGU6aXRlbS5sYWJlbFBpcGUgfX08L3NwYW5cbiAgICAgICAgPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIml0ZW0uaWNvbiB8fCBpdGVtLnZhbHVlXCIgY2xhc3M9XCJvYmplY3QtaW5mby1ncmlkLXZhbHVlXCI+XG4gICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgIGNsYXNzPVwiZmxleCB0ZXh0LTkwMCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTIgdy1tYXhcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwiZ2VuZXJhdGVJdGVtU3R5bGUoaXRlbSlcIlxuICAgICAgICAgICAgbmFtZT1cIm9iamVjdC1kZXRhaWwtdmFsdWVcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgIGNsYXNzPVwiZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTJcIlxuICAgICAgICAgICAgICBbcFRvb2x0aXBdPVwiaXRlbS52YWx1ZVRvb2x0aXAgfHwgaXRlbS50b29sdGlwIHx8ICcnXCJcbiAgICAgICAgICAgICAgdG9vbHRpcEV2ZW50PVwiaG92ZXJcIlxuICAgICAgICAgICAgICB0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8aVxuICAgICAgICAgICAgICAgICpuZ0lmPVwiaXRlbS5pY29uXCJcbiAgICAgICAgICAgICAgICBjbGFzcz0ne3tpdGVtLmljb24gKyBcIiBcIiArIChpdGVtLmljb25TdHlsZUNsYXNzIHx8IFwiXCIpfX0nXG4gICAgICAgICAgICAgICAgbmFtZT1cIm9iamVjdC1kZXRhaWwtaWNvblwiXG4gICAgICAgICAgICAgID48L2k+XG4gICAgICAgICAgICAgIHt7IGl0ZW0udmFsdWUgfCBkeW5hbWljUGlwZTppdGVtLnZhbHVlUGlwZTppdGVtLnZhbHVlUGlwZUFyZ3N9fVxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPHAtYnV0dG9uXG4gICAgICAgICAgICAgICpuZ0lmPVwiaXRlbS5hY3Rpb25JdGVtSWNvbiAmJiBpdGVtLmFjdGlvbkl0ZW1DYWxsYmFja1wiXG4gICAgICAgICAgICAgIFtpY29uXT1cIml0ZW0uYWN0aW9uSXRlbUljb25cIlxuICAgICAgICAgICAgICBzdHlsZUNsYXNzPVwicC1idXR0b24tdGV4dCBwLTAgdy1mdWxsXCJcbiAgICAgICAgICAgICAgW3BUb29sdGlwXT1cIml0ZW0uYWN0aW9uSXRlbVRvb2x0aXAgfHwgJydcIlxuICAgICAgICAgICAgICB0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxuICAgICAgICAgICAgICB0b29sdGlwRXZlbnQ9XCJob3ZlclwiXG4gICAgICAgICAgICAgIFthcmlhTGFiZWxdPVwiKGl0ZW0uYWN0aW9uSXRlbUFyaWFMYWJlbEtleSA/IChpdGVtLmFjdGlvbkl0ZW1BcmlhTGFiZWxLZXkgfCB0cmFuc2xhdGUpIDogaXRlbS5hY3Rpb25JdGVtQXJpYUxhYmVsKSB8fCBpdGVtLmFjdGlvbkl0ZW1Ub29sdGlwIHx8ICcnXCJcbiAgICAgICAgICAgICAgKG9uQ2xpY2spPVwiaXRlbS5hY3Rpb25JdGVtQ2FsbGJhY2soKVwiXG4gICAgICAgICAgICA+PC9wLWJ1dHRvbj5cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|