@byuhbll/components 4.0.19 → 4.0.20
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.
|
@@ -62,7 +62,7 @@ export class ImpersonationBannerComponent {
|
|
|
62
62
|
this.userInfoTabs = computed(() => new Map([
|
|
63
63
|
['Net ID', this.parsedToken()['net_id'] ?? ''],
|
|
64
64
|
['BYU ID', this.parsedToken()['byu_id'] ?? ''],
|
|
65
|
-
['Email', this.
|
|
65
|
+
['Email', this.user()?.email_address ?? ''],
|
|
66
66
|
]));
|
|
67
67
|
this.userPhotoUrl = computed(() => this.parsedToken()['net_id'] ? USER_PHOTO_URL + this.parsedToken()['net_id'] : '');
|
|
68
68
|
this.activityStatus = computed(() => {
|
|
@@ -146,4 +146,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImpor
|
|
|
146
146
|
}], propDecorators: { endImpersonation: [{
|
|
147
147
|
type: Output
|
|
148
148
|
}] } });
|
|
149
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wZXJzb25hdGlvbi1iYW5uZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2ltcGVyc29uYXRpb24tYmFubmVyL2ltcGVyc29uYXRpb24tYmFubmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9pbXBlcnNvbmF0aW9uLWJhbm5lci9pbXBlcnNvbmF0aW9uLWJhbm5lci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDakcsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRCxPQUFPLEVBQ0gsWUFBWSxHQUdmLE1BQU0sNkJBQTZCLENBQUM7QUFDckMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxTQUFTLEVBQWMsTUFBTSxZQUFZLENBQUM7QUFDbkQsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFbEQsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBQzVCLE9BQU8sRUFBRSxhQUFhLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDOzs7QUFFOUUsTUFBTSxjQUFjLEdBQUcsNERBQTRELENBQUM7QUFDcEYsTUFBTSxtQkFBbUIsR0FBRyxzQkFBc0IsQ0FBQztBQUNuRCxNQUFNLCtCQUErQixHQUFHLGdDQUFn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ekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgY29tcHV0ZWQsIEV2ZW50RW1pdHRlciwgaW5qZWN0LCBpbnB1dCwgT3V0cHV0LCBTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IG1hcCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtcbiAgICBBY2Nlc3NTdGF0dXMsXG4gICAgQWNjb3VudHNSZXNwb25zZSxcbiAgICB0eXBlIEFwcGxpY2F0aW9uQWNjZXNzLFxufSBmcm9tICcuL21vZGVscy9hcHBsaWNhdGlvbi1hY2Nlc3MnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFRva2VuUGF5bG9hZCB9IGZyb20gJy4uL21vZGVscy90b2tlbi1wYXlsb2FkJztcbmltcG9ydCB7IGp3dERlY29kZSwgSnd0UGF5bG9hZCB9IGZyb20gJ2p3dC1kZWNvZGUnO1xuaW1wb3J0IHsgdG9PYnNlcnZhYmxlLCB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmRlcGVuZGVudFN0dWR5UmVzcG9uc2UsIFBlcnNvblN1bW1hcnkgfSBmcm9tICcuL21vZGVscy9wZXJzb24tc3VtbWFyeSc7XG5pbXBvcnQgdXJsY2F0IGZyb20gJ3VybGNhdCc7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ29weVRvb2x0aXBDb21wb25lbnQgfSBmcm9tICcuLi9jb3B5LXRvb2x0aXAvY29weS10b29sdGlwLmNvbXBvbmVudCc7XG5cbmNvbnN0IFVTRVJfUEhPVE9fVVJMID0gJ2h0dHBzOi8veS5ieXUuZWR1L3J5L2FlL3Byb2QvcGVyc29uL2NnaS9wZXJzb25QaG90by5jZ2k/bj0nO1xuY29uc3QgUEVSU09OX1NVTU1BUllfUEFUSCA9ICcvc3VtbWFyeS86bGlicmFyeUlkLyc7XG5jb25zdCBJTkRFUEVOREVOVF9TVFVEWV9SRVNQT05TRV9QQVRIID0gJy9pbmRlcGVuZGVudC1zdHVkeS86bGlicmFyeUlkLyc7XG5jb25zdCBQQVRST05fQUNDT1VOVFNfUEFUSCA9ICcvcGF0cm9uL2FjY291bnRzJztcblxuLyoqXG4gKiBAdG9kbzogUmVmYWN0b3I6IG15IHJlY29tbWVuZGF0aW9uIHdvdWxkIGJlIHRvIGFsbG93IGEgdXNlciB0byBiZSBwYXNzZWQgaW50byB0aGlzIGNvbXBvbmVudCB2aWEgYW4gaW5wdXQgaW5zdGVhZCBvZiB0aGUgdXNlcnMgY29taW5nIGZyb20gYW4gQVBJIGNhbGwgYmFzZWQgb24gdGhlIEpXVCBwYXNzZWQgaW4uIFRoaXMgbWlnaHQgbG9vayBzb21ldGhpbmcgbGlrZTpcbiAqICBgYGBcbiAqICAgIO+8oElucHV0KCkgdXNlcjoge1xuICogICAgICBwcmltYXJ5X3Bvc2l0aW9uX3R5cGVfZGlzcGxheT86IHN0cmluZ1xuICogICAgICB1bmRlcmdyYWRfZ3JhZHVhdGVfc3RhdHVzPzogc3RyaW5nXG4gKiAgICAgIHJlc3RyaWN0ZWQ/OiBib29sZWFuXG4gKiAgICAgIGlzX3JldGlyZWQ/OiBib29sZWFuXG4gKiAgICAgIGlzX2VtcGxveWVlPzogYm9vbGVhblxuICogICAgICBwcmltYXJ5X3Bvc2l0aW9uX3R5cGU/OiBzdHJpbmdcbiAqICAgIH1cbiAqIGBgYFxuICogQWNjZXB0aW5nIGFsbCBwcm9wZXJ0aWVzIHRoYXQgYXJlIHVzZWQgaW4gdGhpcyBjb21wb25lbnQgd2l0aG91dCBuZWVkaW5nIHRvIGJyaW5nIGluIHRoZSB1c2VyIHR5cGUgZXhwbGljaXRseS4gT3IgdGhlIHByb3BlcnRpZXMgb24gdGhpcyB1c2VyIG9iamVjdCBjb3VsZCBiZSBtYWRlIGV2ZW4gbW9yZSBnZW5lcmFsIGFzIHRvIG5vdCBiZSB0aWVkIGF0IGFsbCB0byBhbnkgc3BlY2lmaWMgdHlwZS5cbiAqXG4gKiBTb21ldGhpbmcgc2ltaWxhciBjb3VsZCBiZSBkb25lIHdpdGggYGFjY291bnRTdGF0dXNlc2AuIEknZCByZWNvbW1lbmQgdGhlIGNvbnN1bWluZyBhcHBsaWNhdGlvbiBwcmVwYXJlIGFycmF5cyBvZiBzdHJpbmdzIHRvIGJlIHBhc3NlZCBpbnRvIGlucHV0cyBvZiBgYWNjb3VudHNPa2AsIGBhY2NvdW50c0Jsb2NrZWRgLCBhbmQgYGFjY291bnRzTm9uZWAsIHRoYXQgYXJlIHRoZW4gcGFzc2VkIGludG8gYW5kIGRpc3BsYXllZCBpbiB0aGUgdGVtcGxhdGUuXG4gKlxuICogVGhlIGlkZWEgYmVoaW5kIHRoZXNlIHJldmlzaW9ucyBpcyB0aGF0IHRoZXJlIGlzIGxlc3MgYnVzaW5lc3MgbG9naWMgYmFrZWQgaW50byB0aGlzIGNvbXBvbmVudCwgYXMgaXQncyByb2xlIGlzIGp1c3Qgb25lIG9mIHByZXNlbnRhdGlvbi4gSXQgd2lsbCBhbHNvIGF2b2lkIG11bHRpcGxlIEFQSSBjYWxscyBmb3IgdGhlIHNhbWUgZGF0YSBpbiBvdXIgYmlnIEFuZ3VsYXIgYXBwcy5cbiAqXG4gKiBCZXN0IG9mIGx1Y2ssXG4gKiBQYXVsXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgQ29weVRvb2x0aXBDb21wb25lbnRdLFxuICAgIHNlbGVjdG9yOiAnbGliLWltcGVyc29uYXRpb24tYmFubmVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vaW1wZXJzb25hdGlvbi1iYW5uZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2ltcGVyc29uYXRpb24tYmFubmVyLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEltcGVyc29uYXRpb25CYW5uZXJDb21wb25lbnQge1xuICAgIHByaXZhdGUgaHR0cCA9IGluamVjdChIdHRwQ2xpZW50KTtcbiAgICBhY2Nlc3NUb2tlblBheWxvYWQgPSBpbnB1dC5yZXF1aXJlZDxUb2tlblBheWxvYWQ+KCk7XG4gICAgcGVyc29uQmFzZVVyaSA9IGlucHV0KCdodHRwczovL2FwcHMubGliLmJ5dS5lZHUvcGVyc29uL3YyLycpO1xuICAgIGxpYnJhcnlBcGlCYXNlVXJpID0gaW5wdXQoJ2h0dHBzOi8vYXBwcy5saWIuYnl1LmVkdS92MScpO1xuICAgIEBPdXRwdXQoKSBlbmRJbXBlcnNvbmF0aW9uID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgcHJvdGVjdGVkIHBhcnNlZFRva2VuOiBTaWduYWw8Snd0UGF5bG9hZCAmIFJlY29yZDxzdHJpbmcsIGFueT4+ID0gY29tcHV0ZWQoKCkgPT5cbiAgICAgICAgdGhpcy5hY2Nlc3NUb2tlblBheWxvYWQoKS50b2tlbiA/IGp3dERlY29kZSh0aGlzLmFjY2Vzc1Rva2VuUGF5bG9hZCgpLnRva2VuKSA6IHt9LFxuICAgICk7XG4gICAgcHJvdGVjdGVkIGlzSW1wZXJzb25hdGluZyA9IGNvbXB1dGVkKCgpID0+ICEhdGhpcy5wYXJzZWRUb2tlbigpWydpbXBlcnNvbmF0b3InXSk7XG4gICAgcHJvdGVjdGVkIGxpYnJhcnlJZCA9IGNvbXB1dGVkKCgpID0+IHRoaXMucGFyc2VkVG9rZW4oKVsnbGlicmFyeV9pZCddKTtcbiAgICBwcm90ZWN0ZWQgdXNlciA9IHRvU2lnbmFsKFxuICAgICAgICBjb21iaW5lTGF0ZXN0KFt0b09ic2VydmFibGUodGhpcy5saWJyYXJ5SWQpLCB0b09ic2VydmFibGUodGhpcy5pc0ltcGVyc29uYXRpbmcpXSkucGlwZShcbiAgICAgICAgICAgIHN3aXRjaE1hcCgoW2xpYnJhcnlJZCwgaXNJbXBlcnNvbmF0aW5nXSkgPT5cbiAgICAgICAgICAgICAgICBsaWJyYXJ5SWQgJiYgaXNJbXBlcnNvbmF0aW5nXG4gICAgICAgICAgICAgICAgICAgID8gdGhpcy5odHRwLmdldDxQZXJzb25TdW1tYXJ5PihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsY2F0KHRoaXMucGVyc29uQmFzZVVyaSgpLCBQRVJTT05fU1VNTUFSWV9QQVRILCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJyYXJ5SWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke3RoaXMuYWNjZXNzVG9rZW5QYXlsb2FkKCkudG9rZW59YCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICA6IG9mKG51bGwpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgKSxcbiAgICApO1xuICAgIHByb3RlY3RlZCB1c2VyRnVsbE5hbWUgPSBjb21wdXRlZCgoKSA9PlxuICAgICAgICB0aGlzLnBhcnNlZFRva2VuKClbJ2dpdmVuX25hbWUnXVxuICAgICAgICAgICAgPyBgJHt0aGlzLnBhcnNlZFRva2VuKClbJ2dpdmVuX25hbWUnXX0gJHt0aGlzLnBhcnNlZFRva2VuKClbJ2ZhbWlseV9uYW1lJ119YFxuICAgICAgICAgICAgOiAnVW5rbm93bicsXG4gICAgKTtcbiAgICBwcm90ZWN0ZWQgaXNSZXN0cmljdGVkID0gY29tcHV0ZWQoKCkgPT4gdGhpcy51c2VyKCk/LnJlc3RyaWN0ZWQpO1xuICAgIHByb3RlY3RlZCB1c2VySW5mb1RhYnMgPSBjb21wdXRlZChcbiAgICAgICAgKCkgPT5cbiAgICAgICAgICAgIG5ldyBNYXAoW1xuICAgICAgICAgICAgICAgIFsnTmV0IElEJywgdGhpcy5wYXJzZWRUb2tlbigpWyduZXRfaWQnXSA/PyAnJ10sXG4gICAgICAgICAgICAgICAgWydCWVUgSUQnLCB0aGlzLnBhcnNlZFRva2VuKClbJ2J5dV9pZCddID8/ICcnXSxcbiAgICAgICAgICAgICAgICBbJ0VtYWlsJywgdGhpcy5wYXJzZWRUb2tlbigpWydlbWFpbCddID8/ICcnXSxcbiAgICAgICAgICAgIF0pLFxuICAgICk7XG4gICAgcHJvdGVjdGVkIHVzZXJQaG90b1VybCA9IGNvbXB1dGVkKCgpID0+XG4gICAgICAgIHRoaXMucGFyc2VkVG9rZW4oKVsnbmV0X2lkJ10gPyBVU0VSX1BIT1RPX1VSTCArIHRoaXMucGFyc2VkVG9rZW4oKVsnbmV0X2lkJ10gOiAnJyxcbiAgICApO1xuXG4gICAgcHJvdGVjdGVkIGFjdGl2aXR5U3RhdHVzID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy51c2VyKCk/LmlzX3JldGlyZWQpIHJldHVybiAncmV0aXJlZCc7XG4gICAgICAgIGVsc2UgaWYgKHRoaXMudXNlcigpPy5pc19lbXBsb3llZSkgcmV0dXJuICdhY3RpdmUnO1xuICAgICAgICBlbHNlIGlmICh0aGlzLnVzZXIoKT8ucHJpbWFyeV9wb3NpdGlvbl90eXBlKSByZXR1cm4gJ2luYWN0aXZlJztcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfSk7XG5cbiAgICBwcm90ZWN0ZWQgZW1wbG95ZWVTdGF0dXNEZXNjcmlwdGlvbiA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgaWYgKCF0aGlzLnVzZXIoKSkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgZGVzY3JpcHRpb24gPSAnJztcbiAgICAgICAgaWYgKHRoaXMudXNlcigpIS5pc19yZXRpcmVkKSB7XG4gICAgICAgICAgICBkZXNjcmlwdGlvbiA9ICdSZXRpcmVkJztcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLnVzZXIoKSEuaXNfZW1wbG95ZWUpIHtcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uID0gJ0FjdGl2ZSc7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy51c2VyKCkhLnByaW1hcnlfcG9zaXRpb25fdHlwZSkge1xuICAgICAgICAgICAgZGVzY3JpcHRpb24gPSAnSW5hY3RpdmUnO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMudXNlcigpIS5wcmltYXJ5X3Bvc2l0aW9uX3R5cGVfZGlzcGxheSkge1xuICAgICAgICAgICAgZGVzY3JpcHRpb24gKz0gYCAke3RoaXMudXNlcigpIS5wcmltYXJ5X3Bvc2l0aW9uX3R5cGVfZGlzcGxheX0gRW1wbG95ZWVgO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGRlc2NyaXB0aW9uID8/IG51bGw7XG4gICAgfSk7XG5cbiAgICBwcm90ZWN0ZWQgaW5kZXBlbmRlbnRTdHVkeVN0YXR1cyA9IHRvU2lnbmFsKFxuICAgICAgICBjb21iaW5lTGF0ZXN0KFt0b09ic2VydmFibGUodGhpcy5saWJyYXJ5SWQpLCB0b09ic2VydmFibGUodGhpcy5pc0ltcGVyc29uYXRpbmcpXSkucGlwZShcbiAgICAgICAgICAgIHN3aXRjaE1hcCgoW2xpYnJhcnlJZCwgaXNJbXBlcnNvbmF0aW5nXSkgPT5cbiAgICAgICAgICAgICAgICBsaWJyYXJ5SWQgJiYgaXNJbXBlcnNvbmF0aW5nXG4gICAgICAgICAgICAgICAgICAgID8gdGhpcy5odHRwXG4gICAgICAgICAgICAgICAgICAgICAgICAgIC5nZXQ8SW5kZXBlbmRlbnRTdHVkeVJlc3BvbnNlPihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybGNhdCh0aGlzLnBlcnNvbkJhc2VVcmkoKSwgSU5ERVBFTkRFTlRfU1RVRFlfUkVTUE9OU0VfUEFUSCwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnJhcnlJZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke3RoaXMuYWNjZXNzVG9rZW5QYXlsb2FkKCkudG9rZW59YCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAucGlwZShtYXAoKHJlc3BvbnNlKSA9PiByZXNwb25zZT8uaXNfZW5yb2xsZWQpKVxuICAgICAgICAgICAgICAgICAgICA6IG9mKG51bGwpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgKSxcbiAgICApO1xuICAgIHByb3RlY3RlZCBhY2NvdW50U3RhdHVzZXMgPSB0b1NpZ25hbChcbiAgICAgICAgdG9PYnNlcnZhYmxlKHRoaXMuaXNJbXBlcnNvbmF0aW5nKS5waXBlKFxuICAgICAgICAgICAgc3dpdGNoTWFwKChpc0ltcGVyc29uYXRpbmcpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIWlzSW1wZXJzb25hdGluZykge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gb2YobnVsbCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgICAgICAgICAgICAgICAgLmdldDxBY2NvdW50c1Jlc3BvbnNlPih1cmxjYXQodGhpcy5saWJyYXJ5QXBpQmFzZVVyaSgpLCBQQVRST05fQUNDT1VOVFNfUEFUSCksIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBdXRob3JpemF0aW9uOiBgQmVhcmVyICR7dGhpcy5hY2Nlc3NUb2tlblBheWxvYWQoKS50b2tlbn1gLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXAoKGFjY291bnRzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgYWNjb3VudFN0YXR1c2VzID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvazogW10gYXMgQXBwbGljYXRpb25BY2Nlc3NbXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmxvY2tlZDogW10gYXMgQXBwbGljYXRpb25BY2Nlc3NbXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbm9uZTogW10gYXMgQXBwbGljYXRpb25BY2Nlc3NbXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgT2JqZWN0LnZhbHVlcyhhY2NvdW50cy5hcHBsaWNhdGlvbnMpLmZvckVhY2goKGFwcCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKGFwcC5hY2Nlc3MpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgQWNjZXNzU3RhdHVzLk9LOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjY291bnRTdGF0dXNlcy5vay5wdXNoKGFwcCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIEFjY2Vzc1N0YXR1cy5CTE9DS0VEOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjY291bnRTdGF0dXNlcy5ibG9ja2VkLnB1c2goYXBwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgQWNjZXNzU3RhdHVzLk5PTkU6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWNjb3VudFN0YXR1c2VzLm5vbmUucHVzaChhcHApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gYWNjb3VudFN0YXR1c2VzO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgKSxcbiAgICApO1xufVxuIiwiQGlmIChpc0ltcGVyc29uYXRpbmcoKSkge1xuICAgIDxkaXYgY2xhc3M9XCJiYW5uZXItcGFkZGluZ1wiPjwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJ0b3AtYmFubmVyXCIgZGF0YS10ZXN0aWQ9XCJiYW5uZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImJhbm5lci1ncm91cCBwcm9maWxlLW5hbWUtY29udGFpbmVyXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHJvZmlsZS1hdmF0YXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHJvZmlsZS1pbWFnZVwiPlxuICAgICAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICAgICAgICBbc3JjXT1cInVzZXJQaG90b1VybCgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthbHRdPVwidXNlckZ1bGxOYW1lKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgYWx0PVwidXNlciBwaG90b1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBvbmVycm9yPVwidGhpcy5yZW1vdmUoKVwiXG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIHByb2ZpbGUtaWNvblwiPiBwZXJzb24gPC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHJvZmlsZS1uYW1lLWdyb3VwXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzb2Z0XCI+SW1wZXJzb25hdGluZzwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHJvZmlsZS1uYW1lLXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJwcm9maWxlLW5hbWVcIj57eyB1c2VyRnVsbE5hbWUoKSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgQGlmIChhY2NvdW50U3RhdHVzZXMoKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFwcGxpY2F0aW9uLXN0YXR1cy1iYXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGFjY291bnRTdGF0dXNlcygpIS5vay5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFwcGxpY2F0aW9uLXN0YXR1cy1pbmRpY2F0b3JcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYXBwbGljYXRpb24tc3RhdHVzLW9rIGFwcGxpY2F0aW9uLXN0YXR1c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCBpY29uLWNoZWNrbWFya1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGVja1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFwcGxpY2F0aW9uLWNvdW50XCI+e3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWNjb3VudFN0YXR1c2VzKCkhLm9rLmxlbmd0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0YXR1cy10b29sdGlwLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdGF0dXMtdG9vbHRpcFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPSyBBcHBsaWNhdGlvbnNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGhyIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBmb3IgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBwbGljYXRpb24gb2YgYWNjb3VudFN0YXR1c2VzKCkhLm9rO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhY2sgYXBwbGljYXRpb24ubGFiZWxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXBwbGljYXRpb24tc3RhdHVzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIGljb24tY2hlY2ttYXJrXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoZWNrXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IGFwcGxpY2F0aW9uLmxhYmVsIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChhY2NvdW50U3RhdHVzZXMoKSEuYmxvY2tlZC5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFwcGxpY2F0aW9uLXN0YXR1cy1pbmRpY2F0b3JcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYXBwbGljYXRpb24tc3RhdHVzLWJsb2NrZWQgYXBwbGljYXRpb24tc3RhdHVzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIGljb24td2FybmluZ1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3YXJuaW5nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYXBwbGljYXRpb24tY291bnRcIj57e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY2NvdW50U3RhdHVzZXMoKSEuYmxvY2tlZC5sZW5ndGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdGF0dXMtdG9vbHRpcC1jb250YWluZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3RhdHVzLXRvb2x0aXBcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQmxvY2tlZCBBcHBsaWNhdGlvbnNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGhyIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBmb3IgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBwbGljYXRpb24gb2YgYWNjb3VudFN0YXR1c2VzKCkhLmJsb2NrZWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFjayBhcHBsaWNhdGlvbi5jb2RlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFwcGxpY2F0aW9uLXN0YXR1c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCBpY29uLXdhcm5pbmdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2FybmluZ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj57eyBhcHBsaWNhdGlvbi5sYWJlbCB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoYWNjb3VudFN0YXR1c2VzKCkhLm5vbmUubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhcHBsaWNhdGlvbi1zdGF0dXMtaW5kaWNhdG9yXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFwcGxpY2F0aW9uLXN0YXR1cy1ub25lIGFwcGxpY2F0aW9uLXN0YXR1c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCBpY29uLWxvY2tcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9ja1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFwcGxpY2F0aW9uLWNvdW50XCI+e3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWNjb3VudFN0YXR1c2VzKCkhLm5vbmUubGVuZ3RoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3RhdHVzLXRvb2x0aXAtY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0YXR1cy10b29sdGlwXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5vIEFjY291bnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGhyIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBmb3IgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBwbGljYXRpb24gb2YgYWNjb3VudFN0YXR1c2VzKCkhLm5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFjayBhcHBsaWNhdGlvbi5sYWJlbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhcHBsaWNhdGlvbi1zdGF0dXNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgaWNvbi1sb2NrXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+e3sgYXBwbGljYXRpb24ubGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwcm9maWxlLWRldGFpbHMtY29udGFpbmVyIGJhbm5lci1ncm91cFwiPlxuICAgICAgICAgICAgQGZvciAoZGV0YWlsIG9mIHVzZXJJbmZvVGFicygpIHwga2V5dmFsdWU7IHRyYWNrIGRldGFpbC5rZXkpIHtcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHJvZmlsZS1kZXRhaWxcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzb2Z0IGxhYmVsXCI+e3sgZGV0YWlsLmtleSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPGxpYi1jb3B5LXRvb2x0aXAgW2NvcHlUZXh0XT1cImRldGFpbC52YWx1ZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInByb2ZpbGUtZGV0YWlsLXRhZyB3aGl0ZS10YWcgY2xpY2thYmxlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgZGV0YWlsLnZhbHVlIHx8ICdVbmtub3duJyB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvbGliLWNvcHktdG9vbHRpcD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwcm9maWxlLWRldGFpbHMtY29udGFpbmVyIGJhbm5lci1ncm91cFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInByb2ZpbGUtZGV0YWlsXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzb2Z0IGxhYmVsXCI+U3RhdHVzPC9zcGFuPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtdWx0aXBsZS1kZXRhaWwtdGFnc1wiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInByb2ZpbGUtZGV0YWlsLXRhZyBjb2xvci10YWdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9XCJ7eyBlbXBsb3llZVN0YXR1c0Rlc2NyaXB0aW9uKCkgfX1cIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyB1c2VyKCk/LnByaW1hcnlfcG9zaXRpb25fdHlwZV9kaXNwbGF5ID8/ICdOb24tZW1wbG95ZWUnIH19XG4gICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGFjdGl2aXR5U3RhdHVzKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInByb2ZpbGUtc3RhdHVzLWNpcmNsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5zdGF0dXMtYWN0aXZlXT1cImFjdGl2aXR5U3RhdHVzKCkgPT09ICdhY3RpdmUnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLnN0YXR1cy1pbmFjdGl2ZV09XCJhY3Rpdml0eVN0YXR1cygpID09PSAnaW5hY3RpdmUnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLnN0YXR1cy1yZXRpcmVkXT1cImFjdGl2aXR5U3RhdHVzKCkgPT09ICdyZXRpcmVkJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwcm9maWxlLWRldGFpbC10YWcgY29sb3ItdGFnXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyAodXNlcigpPy51bmRlcmdyYWRfZ3JhZHVhdGVfc3RhdHVzIHwgdGl0bGVjYXNlKSB8fCAnTm9uLXN0dWRlbnQnIH19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHJvZmlsZS1kZXRhaWwtdGFnIGNvbG9yLXRhZ1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgaW5kZXBlbmRlbnRTdHVkeVN0YXR1cygpID8gJ0luZGVwZW5kZW50IFN0dWR5JyA6ICdObyBJbmQuIFN0dWR5JyB9fVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNwYWNlclwiPjwvZGl2PlxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiZW5kLWltcGVyc29uYXRpb24tYnV0dG9uIHNoYWRvd1wiIChjbGljayk9XCJ0aGlzLmVuZEltcGVyc29uYXRpb24uZW1pdCgpXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgaWNvblwiPiBjbG9zZSA8L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImV4aXQtdGV4dFwiPkV4aXQ8L3NwYW4+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICAgIEBpZiAoaXNSZXN0cmljdGVkKCkpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cInJlc3RyaWN0ZWQtYmFyLXBhZGRpbmdcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJlc3RyaWN0ZWQtYmFyXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRpdGxlXCI+cmVzdHJpY3RlZCBwZXJzb248L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHRcIj5cbiAgICAgICAgICAgICAgICBJZiBhbnlvbmUgYXNrcyBhYm91dCB0aGlzIHBlcnNvbiwgeW91IGFyZSBpbnN0cnVjdGVkIHRvIHJlc3BvbmQsXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJlbXBoYXNpemVcIj5cIldlIGhhdmUgbm8gcmVjb3JkcyBmb3IgdGhpcyBwZXJzb24uXCI8L3NwYW4+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgIH1cbiAgICA8ZGl2IGNsYXNzPVwicmlnaHQtYm9yZGVyXCI+PC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImJvdHRvbS1ib3JkZXJcIj48L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwibGVmdC1ib3JkZXJcIj48L2Rpdj5cbn1cbiJdfQ==
|
|
149
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wZXJzb25hdGlvbi1iYW5uZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2ltcGVyc29uYXRpb24tYmFubmVyL2ltcGVyc29uYXRpb24tYmFubmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9pbXBlcnNvbmF0aW9uLWJhbm5lci9pbXBlcnNvbmF0aW9uLWJhbm5lci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDakcsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRCxPQUFPLEVBQ0gsWUFBWSxHQUdmLE1BQU0sNkJBQTZCLENBQUM7QUFDckMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxTQUFTLEVBQWMsTUFBTSxZQUFZLENBQUM7QUFDbkQsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFbEQsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBQzVCLE9BQU8sRUFBRSxhQUFhLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDOzs7QUFFOUUsTUFBTSxjQUFjLEdBQUcsNERBQTRELENBQUM7QUFDcEYsTUFBTSxtQkFBbUIsR0FBRyxzQkFBc0IsQ0FBQztBQUNuRCxNQUFNLCtCQUErQixHQUFHLGdDQUFn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QU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBFdmVudEVtaXR0ZXIsIGluamVjdCwgaW5wdXQsIE91dHB1dCwgU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBtYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7XG4gICAgQWNjZXNzU3RhdHVzLFxuICAgIEFjY291bnRzUmVzcG9uc2UsXG4gICAgdHlwZSBBcHBsaWNhdGlvbkFjY2Vzcyxcbn0gZnJvbSAnLi9tb2RlbHMvYXBwbGljYXRpb24tYWNjZXNzJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBUb2tlblBheWxvYWQgfSBmcm9tICcuLi9tb2RlbHMvdG9rZW4tcGF5bG9hZCc7XG5pbXBvcnQgeyBqd3REZWNvZGUsIEp3dFBheWxvYWQgfSBmcm9tICdqd3QtZGVjb2RlJztcbmltcG9ydCB7IHRvT2JzZXJ2YWJsZSwgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5kZXBlbmRlbnRTdHVkeVJlc3BvbnNlLCBQZXJzb25TdW1tYXJ5IH0gZnJvbSAnLi9tb2RlbHMvcGVyc29uLXN1bW1hcnknO1xuaW1wb3J0IHVybGNhdCBmcm9tICd1cmxjYXQnO1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENvcHlUb29sdGlwQ29tcG9uZW50IH0gZnJvbSAnLi4vY29weS10b29sdGlwL2NvcHktdG9vbHRpcC5jb21wb25lbnQnO1xuXG5jb25zdCBVU0VSX1BIT1RPX1VSTCA9ICdodHRwczovL3kuYnl1LmVkdS9yeS9hZS9wcm9kL3BlcnNvbi9jZ2kvcGVyc29uUGhvdG8uY2dpP249JztcbmNvbnN0IFBFUlNPTl9TVU1NQVJZX1BBVEggPSAnL3N1bW1hcnkvOmxpYnJhcnlJZC8nO1xuY29uc3QgSU5ERVBFTkRFTlRfU1RVRFlfUkVTUE9OU0VfUEFUSCA9ICcvaW5kZXBlbmRlbnQtc3R1ZHkvOmxpYnJhcnlJZC8nO1xuY29uc3QgUEFUUk9OX0FDQ09VTlRTX1BBVEggPSAnL3BhdHJvbi9hY2NvdW50cyc7XG5cbi8qKlxuICogQHRvZG86IFJlZmFjdG9yOiBteSByZWNvbW1lbmRhdGlvbiB3b3VsZCBiZSB0byBhbGxvdyBhIHVzZXIgdG8gYmUgcGFzc2VkIGludG8gdGhpcyBjb21wb25lbnQgdmlhIGFuIGlucHV0IGluc3RlYWQgb2YgdGhlIHVzZXJzIGNvbWluZyBmcm9tIGFuIEFQSSBjYWxsIGJhc2VkIG9uIHRoZSBKV1QgcGFzc2VkIGluLiBUaGlzIG1pZ2h0IGxvb2sgc29tZXRoaW5nIGxpa2U6XG4gKiAgYGBgXG4gKiAgICDvvKBJbnB1dCgpIHVzZXI6IHtcbiAqICAgICAgcHJpbWFyeV9wb3NpdGlvbl90eXBlX2Rpc3BsYXk/OiBzdHJpbmdcbiAqICAgICAgdW5kZXJncmFkX2dyYWR1YXRlX3N0YXR1cz86IHN0cmluZ1xuICogICAgICByZXN0cmljdGVkPzogYm9vbGVhblxuICogICAgICBpc19yZXRpcmVkPzogYm9vbGVhblxuICogICAgICBpc19lbXBsb3llZT86IGJvb2xlYW5cbiAqICAgICAgcHJpbWFyeV9wb3NpdGlvbl90eXBlPzogc3RyaW5nXG4gKiAgICB9XG4gKiBgYGBcbiAqIEFjY2VwdGluZyBhbGwgcHJvcGVydGllcyB0aGF0IGFyZSB1c2VkIGluIHRoaXMgY29tcG9uZW50IHdpdGhvdXQgbmVlZGluZyB0byBicmluZyBpbiB0aGUgdXNlciB0eXBlIGV4cGxpY2l0bHkuIE9yIHRoZSBwcm9wZXJ0aWVzIG9uIHRoaXMgdXNlciBvYmplY3QgY291bGQgYmUgbWFkZSBldmVuIG1vcmUgZ2VuZXJhbCBhcyB0byBub3QgYmUgdGllZCBhdCBhbGwgdG8gYW55IHNwZWNpZmljIHR5cGUuXG4gKlxuICogU29tZXRoaW5nIHNpbWlsYXIgY291bGQgYmUgZG9uZSB3aXRoIGBhY2NvdW50U3RhdHVzZXNgLiBJJ2QgcmVjb21tZW5kIHRoZSBjb25zdW1pbmcgYXBwbGljYXRpb24gcHJlcGFyZSBhcnJheXMgb2Ygc3RyaW5ncyB0byBiZSBwYXNzZWQgaW50byBpbnB1dHMgb2YgYGFjY291bnRzT2tgLCBgYWNjb3VudHNCbG9ja2VkYCwgYW5kIGBhY2NvdW50c05vbmVgLCB0aGF0IGFyZSB0aGVuIHBhc3NlZCBpbnRvIGFuZCBkaXNwbGF5ZWQgaW4gdGhlIHRlbXBsYXRlLlxuICpcbiAqIFRoZSBpZGVhIGJlaGluZCB0aGVzZSByZXZpc2lvbnMgaXMgdGhhdCB0aGVyZSBpcyBsZXNzIGJ1c2luZXNzIGxvZ2ljIGJha2VkIGludG8gdGhpcyBjb21wb25lbnQsIGFzIGl0J3Mgcm9sZSBpcyBqdXN0IG9uZSBvZiBwcmVzZW50YXRpb24uIEl0IHdpbGwgYWxzbyBhdm9pZCBtdWx0aXBsZSBBUEkgY2FsbHMgZm9yIHRoZSBzYW1lIGRhdGEgaW4gb3VyIGJpZyBBbmd1bGFyIGFwcHMuXG4gKlxuICogQmVzdCBvZiBsdWNrLFxuICogUGF1bFxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIENvcHlUb29sdGlwQ29tcG9uZW50XSxcbiAgICBzZWxlY3RvcjogJ2xpYi1pbXBlcnNvbmF0aW9uLWJhbm5lcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2ltcGVyc29uYXRpb24tYmFubmVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9pbXBlcnNvbmF0aW9uLWJhbm5lci5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBJbXBlcnNvbmF0aW9uQmFubmVyQ29tcG9uZW50IHtcbiAgICBwcml2YXRlIGh0dHAgPSBpbmplY3QoSHR0cENsaWVudCk7XG4gICAgYWNjZXNzVG9rZW5QYXlsb2FkID0gaW5wdXQucmVxdWlyZWQ8VG9rZW5QYXlsb2FkPigpO1xuICAgIHBlcnNvbkJhc2VVcmkgPSBpbnB1dCgnaHR0cHM6Ly9hcHBzLmxpYi5ieXUuZWR1L3BlcnNvbi92Mi8nKTtcbiAgICBsaWJyYXJ5QXBpQmFzZVVyaSA9IGlucHV0KCdodHRwczovL2FwcHMubGliLmJ5dS5lZHUvdjEnKTtcbiAgICBAT3V0cHV0KCkgZW5kSW1wZXJzb25hdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIHByb3RlY3RlZCBwYXJzZWRUb2tlbjogU2lnbmFsPEp3dFBheWxvYWQgJiBSZWNvcmQ8c3RyaW5nLCBhbnk+PiA9IGNvbXB1dGVkKCgpID0+XG4gICAgICAgIHRoaXMuYWNjZXNzVG9rZW5QYXlsb2FkKCkudG9rZW4gPyBqd3REZWNvZGUodGhpcy5hY2Nlc3NUb2tlblBheWxvYWQoKS50b2tlbikgOiB7fSxcbiAgICApO1xuICAgIHByb3RlY3RlZCBpc0ltcGVyc29uYXRpbmcgPSBjb21wdXRlZCgoKSA9PiAhIXRoaXMucGFyc2VkVG9rZW4oKVsnaW1wZXJzb25hdG9yJ10pO1xuICAgIHByb3RlY3RlZCBsaWJyYXJ5SWQgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnBhcnNlZFRva2VuKClbJ2xpYnJhcnlfaWQnXSk7XG4gICAgcHJvdGVjdGVkIHVzZXIgPSB0b1NpZ25hbChcbiAgICAgICAgY29tYmluZUxhdGVzdChbdG9PYnNlcnZhYmxlKHRoaXMubGlicmFyeUlkKSwgdG9PYnNlcnZhYmxlKHRoaXMuaXNJbXBlcnNvbmF0aW5nKV0pLnBpcGUoXG4gICAgICAgICAgICBzd2l0Y2hNYXAoKFtsaWJyYXJ5SWQsIGlzSW1wZXJzb25hdGluZ10pID0+XG4gICAgICAgICAgICAgICAgbGlicmFyeUlkICYmIGlzSW1wZXJzb25hdGluZ1xuICAgICAgICAgICAgICAgICAgICA/IHRoaXMuaHR0cC5nZXQ8UGVyc29uU3VtbWFyeT4oXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHVybGNhdCh0aGlzLnBlcnNvbkJhc2VVcmkoKSwgUEVSU09OX1NVTU1BUllfUEFUSCwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlicmFyeUlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEF1dGhvcml6YXRpb246IGBCZWFyZXIgJHt0aGlzLmFjY2Vzc1Rva2VuUGF5bG9hZCgpLnRva2VufWAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgOiBvZihudWxsKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICksXG4gICAgKTtcbiAgICBwcm90ZWN0ZWQgdXNlckZ1bGxOYW1lID0gY29tcHV0ZWQoKCkgPT5cbiAgICAgICAgdGhpcy5wYXJzZWRUb2tlbigpWydnaXZlbl9uYW1lJ11cbiAgICAgICAgICAgID8gYCR7dGhpcy5wYXJzZWRUb2tlbigpWydnaXZlbl9uYW1lJ119ICR7dGhpcy5wYXJzZWRUb2tlbigpWydmYW1pbHlfbmFtZSddfWBcbiAgICAgICAgICAgIDogJ1Vua25vd24nLFxuICAgICk7XG4gICAgcHJvdGVjdGVkIGlzUmVzdHJpY3RlZCA9IGNvbXB1dGVkKCgpID0+IHRoaXMudXNlcigpPy5yZXN0cmljdGVkKTtcbiAgICBwcm90ZWN0ZWQgdXNlckluZm9UYWJzID0gY29tcHV0ZWQoXG4gICAgICAgICgpID0+XG4gICAgICAgICAgICBuZXcgTWFwKFtcbiAgICAgICAgICAgICAgICBbJ05ldCBJRCcsIHRoaXMucGFyc2VkVG9rZW4oKVsnbmV0X2lkJ10gPz8gJyddLFxuICAgICAgICAgICAgICAgIFsnQllVIElEJywgdGhpcy5wYXJzZWRUb2tlbigpWydieXVfaWQnXSA/PyAnJ10sXG4gICAgICAgICAgICAgICAgWydFbWFpbCcsIHRoaXMudXNlcigpPy5lbWFpbF9hZGRyZXNzID8/ICcnXSxcbiAgICAgICAgICAgIF0pLFxuICAgICk7XG4gICAgcHJvdGVjdGVkIHVzZXJQaG90b1VybCA9IGNvbXB1dGVkKCgpID0+XG4gICAgICAgIHRoaXMucGFyc2VkVG9rZW4oKVsnbmV0X2lkJ10gPyBVU0VSX1BIT1RPX1VSTCArIHRoaXMucGFyc2VkVG9rZW4oKVsnbmV0X2lkJ10gOiAnJyxcbiAgICApO1xuXG4gICAgcHJvdGVjdGVkIGFjdGl2aXR5U3RhdHVzID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy51c2VyKCk/LmlzX3JldGlyZWQpIHJldHVybiAncmV0aXJlZCc7XG4gICAgICAgIGVsc2UgaWYgKHRoaXMudXNlcigpPy5pc19lbXBsb3llZSkgcmV0dXJuICdhY3RpdmUnO1xuICAgICAgICBlbHNlIGlmICh0aGlzLnVzZXIoKT8ucHJpbWFyeV9wb3NpdGlvbl90eXBlKSByZXR1cm4gJ2luYWN0aXZlJztcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfSk7XG5cbiAgICBwcm90ZWN0ZWQgZW1wbG95ZWVTdGF0dXNEZXNjcmlwdGlvbiA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgaWYgKCF0aGlzLnVzZXIoKSkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgZGVzY3JpcHRpb24gPSAnJztcbiAgICAgICAgaWYgKHRoaXMudXNlcigpIS5pc19yZXRpcmVkKSB7XG4gICAgICAgICAgICBkZXNjcmlwdGlvbiA9ICdSZXRpcmVkJztcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLnVzZXIoKSEuaXNfZW1wbG95ZWUpIHtcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uID0gJ0FjdGl2ZSc7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy51c2VyKCkhLnByaW1hcnlfcG9zaXRpb25fdHlwZSkge1xuICAgICAgICAgICAgZGVzY3JpcHRpb24gPSAnSW5hY3RpdmUnO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMudXNlcigpIS5wcmltYXJ5X3Bvc2l0aW9uX3R5cGVfZGlzcGxheSkge1xuICAgICAgICAgICAgZGVzY3JpcHRpb24gKz0gYCAke3RoaXMudXNlcigpIS5wcmltYXJ5X3Bvc2l0aW9uX3R5cGVfZGlzcGxheX0gRW1wbG95ZWVgO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGRlc2NyaXB0aW9uID8/IG51bGw7XG4gICAgfSk7XG5cbiAgICBwcm90ZWN0ZWQgaW5kZXBlbmRlbnRTdHVkeVN0YXR1cyA9IHRvU2lnbmFsKFxuICAgICAgICBjb21iaW5lTGF0ZXN0KFt0b09ic2VydmFibGUodGhpcy5saWJyYXJ5SWQpLCB0b09ic2VydmFibGUodGhpcy5pc0ltcGVyc29uYXRpbmcpXSkucGlwZShcbiAgICAgICAgICAgIHN3aXRjaE1hcCgoW2xpYnJhcnlJZCwgaXNJbXBlcnNvbmF0aW5nXSkgPT5cbiAgICAgICAgICAgICAgICBsaWJyYXJ5SWQgJiYgaXNJbXBlcnNvbmF0aW5nXG4gICAgICAgICAgICAgICAgICAgID8gdGhpcy5odHRwXG4gICAgICAgICAgICAgICAgICAgICAgICAgIC5nZXQ8SW5kZXBlbmRlbnRTdHVkeVJlc3BvbnNlPihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybGNhdCh0aGlzLnBlcnNvbkJhc2VVcmkoKSwgSU5ERVBFTkRFTlRfU1RVRFlfUkVTUE9OU0VfUEFUSCwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnJhcnlJZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke3RoaXMuYWNjZXNzVG9rZW5QYXlsb2FkKCkudG9rZW59YCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAucGlwZShtYXAoKHJlc3BvbnNlKSA9PiByZXNwb25zZT8uaXNfZW5yb2xsZWQpKVxuICAgICAgICAgICAgICAgICAgICA6IG9mKG51bGwpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgKSxcbiAgICApO1xuICAgIHByb3RlY3RlZCBhY2NvdW50U3RhdHVzZXMgPSB0b1NpZ25hbChcbiAgICAgICAgdG9PYnNlcnZhYmxlKHRoaXMuaXNJbXBlcnNvbmF0aW5nKS5waXBlKFxuICAgICAgICAgICAgc3dpdGNoTWFwKChpc0ltcGVyc29uYXRpbmcpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIWlzSW1wZXJzb25hdGluZykge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gb2YobnVsbCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgICAgICAgICAgICAgICAgLmdldDxBY2NvdW50c1Jlc3BvbnNlPih1cmxjYXQodGhpcy5saWJyYXJ5QXBpQmFzZVVyaSgpLCBQQVRST05fQUNDT1VOVFNfUEFUSCksIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBdXRob3JpemF0aW9uOiBgQmVhcmVyICR7dGhpcy5hY2Nlc3NUb2tlblBheWxvYWQoKS50b2tlbn1gLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXAoKGFjY291bnRzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgYWNjb3VudFN0YXR1c2VzID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvazogW10gYXMgQXBwbGljYXRpb25BY2Nlc3NbXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmxvY2tlZDogW10gYXMgQXBwbGljYXRpb25BY2Nlc3NbXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbm9uZTogW10gYXMgQXBwbGljYXRpb25BY2Nlc3NbXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgT2JqZWN0LnZhbHVlcyhhY2NvdW50cy5hcHBsaWNhdGlvbnMpLmZvckVhY2goKGFwcCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKGFwcC5hY2Nlc3MpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgQWNjZXNzU3RhdHVzLk9LOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjY291bnRTdGF0dXNlcy5vay5wdXNoKGFwcCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIEFjY2Vzc1N0YXR1cy5CTE9DS0VEOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjY291bnRTdGF0dXNlcy5ibG9ja2VkLnB1c2goYXBwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgQWNjZXNzU3RhdHVzLk5PTkU6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWNjb3VudFN0YXR1c2VzLm5vbmUucHVzaChhcHApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gYWNjb3VudFN0YXR1c2VzO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgKSxcbiAgICApO1xufVxuIiwiQGlmIChpc0ltcGVyc29uYXRpbmcoKSkge1xuICAgIDxkaXYgY2xhc3M9XCJiYW5uZXItcGFkZGluZ1wiPjwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJ0b3AtYmFubmVyXCIgZGF0YS10ZXN0aWQ9XCJiYW5uZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImJhbm5lci1ncm91cCBwcm9maWxlLW5hbWUtY29udGFpbmVyXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHJvZmlsZS1hdmF0YXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHJvZmlsZS1pbWFnZVwiPlxuICAgICAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICAgICAgICBbc3JjXT1cInVzZXJQaG90b1VybCgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthbHRdPVwidXNlckZ1bGxOYW1lKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgYWx0PVwidXNlciBwaG90b1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBvbmVycm9yPVwidGhpcy5yZW1vdmUoKVwiXG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIHByb2ZpbGUtaWNvblwiPiBwZXJzb24gPC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHJvZmlsZS1uYW1lLWdyb3VwXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzb2Z0XCI+SW1wZXJzb25hdGluZzwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHJvZmlsZS1uYW1lLXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJwcm9maWxlLW5hbWVcIj57eyB1c2VyRnVsbE5hbWUoKSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgQGlmIChhY2NvdW50U3RhdHVzZXMoKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFwcGxpY2F0aW9uLXN0YXR1cy1iYXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGFjY291bnRTdGF0dXNlcygpIS5vay5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFwcGxpY2F0aW9uLXN0YXR1cy1pbmRpY2F0b3JcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYXBwbGljYXRpb24tc3RhdHVzLW9rIGFwcGxpY2F0aW9uLXN0YXR1c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCBpY29uLWNoZWNrbWFya1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGVja1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFwcGxpY2F0aW9uLWNvdW50XCI+e3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWNjb3VudFN0YXR1c2VzKCkhLm9rLmxlbmd0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0YXR1cy10b29sdGlwLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdGF0dXMtdG9vbHRpcFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPSyBBcHBsaWNhdGlvbnNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGhyIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBmb3IgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBwbGljYXRpb24gb2YgYWNjb3VudFN0YXR1c2VzKCkhLm9rO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhY2sgYXBwbGljYXRpb24ubGFiZWxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXBwbGljYXRpb24tc3RhdHVzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIGljb24tY2hlY2ttYXJrXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoZWNrXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IGFwcGxpY2F0aW9uLmxhYmVsIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChhY2NvdW50U3RhdHVzZXMoKSEuYmxvY2tlZC5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFwcGxpY2F0aW9uLXN0YXR1cy1pbmRpY2F0b3JcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYXBwbGljYXRpb24tc3RhdHVzLWJsb2NrZWQgYXBwbGljYXRpb24tc3RhdHVzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIGljb24td2FybmluZ1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3YXJuaW5nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYXBwbGljYXRpb24tY291bnRcIj57e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY2NvdW50U3RhdHVzZXMoKSEuYmxvY2tlZC5sZW5ndGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdGF0dXMtdG9vbHRpcC1jb250YWluZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3RhdHVzLXRvb2x0aXBcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQmxvY2tlZCBBcHBsaWNhdGlvbnNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGhyIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBmb3IgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBwbGljYXRpb24gb2YgYWNjb3VudFN0YXR1c2VzKCkhLmJsb2NrZWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFjayBhcHBsaWNhdGlvbi5jb2RlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFwcGxpY2F0aW9uLXN0YXR1c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCBpY29uLXdhcm5pbmdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2FybmluZ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj57eyBhcHBsaWNhdGlvbi5sYWJlbCB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoYWNjb3VudFN0YXR1c2VzKCkhLm5vbmUubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhcHBsaWNhdGlvbi1zdGF0dXMtaW5kaWNhdG9yXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFwcGxpY2F0aW9uLXN0YXR1cy1ub25lIGFwcGxpY2F0aW9uLXN0YXR1c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCBpY29uLWxvY2tcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9ja1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFwcGxpY2F0aW9uLWNvdW50XCI+e3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWNjb3VudFN0YXR1c2VzKCkhLm5vbmUubGVuZ3RoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3RhdHVzLXRvb2x0aXAtY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0YXR1cy10b29sdGlwXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5vIEFjY291bnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGhyIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBmb3IgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBwbGljYXRpb24gb2YgYWNjb3VudFN0YXR1c2VzKCkhLm5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFjayBhcHBsaWNhdGlvbi5sYWJlbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhcHBsaWNhdGlvbi1zdGF0dXNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgaWNvbi1sb2NrXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+e3sgYXBwbGljYXRpb24ubGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwcm9maWxlLWRldGFpbHMtY29udGFpbmVyIGJhbm5lci1ncm91cFwiPlxuICAgICAgICAgICAgQGZvciAoZGV0YWlsIG9mIHVzZXJJbmZvVGFicygpIHwga2V5dmFsdWU7IHRyYWNrIGRldGFpbC5rZXkpIHtcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHJvZmlsZS1kZXRhaWxcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzb2Z0IGxhYmVsXCI+e3sgZGV0YWlsLmtleSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPGxpYi1jb3B5LXRvb2x0aXAgW2NvcHlUZXh0XT1cImRldGFpbC52YWx1ZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInByb2ZpbGUtZGV0YWlsLXRhZyB3aGl0ZS10YWcgY2xpY2thYmxlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgZGV0YWlsLnZhbHVlIHx8ICdVbmtub3duJyB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvbGliLWNvcHktdG9vbHRpcD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwcm9maWxlLWRldGFpbHMtY29udGFpbmVyIGJhbm5lci1ncm91cFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInByb2ZpbGUtZGV0YWlsXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzb2Z0IGxhYmVsXCI+U3RhdHVzPC9zcGFuPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtdWx0aXBsZS1kZXRhaWwtdGFnc1wiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInByb2ZpbGUtZGV0YWlsLXRhZyBjb2xvci10YWdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9XCJ7eyBlbXBsb3llZVN0YXR1c0Rlc2NyaXB0aW9uKCkgfX1cIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyB1c2VyKCk/LnByaW1hcnlfcG9zaXRpb25fdHlwZV9kaXNwbGF5ID8/ICdOb24tZW1wbG95ZWUnIH19XG4gICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGFjdGl2aXR5U3RhdHVzKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInByb2ZpbGUtc3RhdHVzLWNpcmNsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5zdGF0dXMtYWN0aXZlXT1cImFjdGl2aXR5U3RhdHVzKCkgPT09ICdhY3RpdmUnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLnN0YXR1cy1pbmFjdGl2ZV09XCJhY3Rpdml0eVN0YXR1cygpID09PSAnaW5hY3RpdmUnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLnN0YXR1cy1yZXRpcmVkXT1cImFjdGl2aXR5U3RhdHVzKCkgPT09ICdyZXRpcmVkJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwcm9maWxlLWRldGFpbC10YWcgY29sb3ItdGFnXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyAodXNlcigpPy51bmRlcmdyYWRfZ3JhZHVhdGVfc3RhdHVzIHwgdGl0bGVjYXNlKSB8fCAnTm9uLXN0dWRlbnQnIH19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHJvZmlsZS1kZXRhaWwtdGFnIGNvbG9yLXRhZ1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgaW5kZXBlbmRlbnRTdHVkeVN0YXR1cygpID8gJ0luZGVwZW5kZW50IFN0dWR5JyA6ICdObyBJbmQuIFN0dWR5JyB9fVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNwYWNlclwiPjwvZGl2PlxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiZW5kLWltcGVyc29uYXRpb24tYnV0dG9uIHNoYWRvd1wiIChjbGljayk9XCJ0aGlzLmVuZEltcGVyc29uYXRpb24uZW1pdCgpXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgaWNvblwiPiBjbG9zZSA8L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImV4aXQtdGV4dFwiPkV4aXQ8L3NwYW4+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICAgIEBpZiAoaXNSZXN0cmljdGVkKCkpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cInJlc3RyaWN0ZWQtYmFyLXBhZGRpbmdcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJlc3RyaWN0ZWQtYmFyXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRpdGxlXCI+cmVzdHJpY3RlZCBwZXJzb248L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHRcIj5cbiAgICAgICAgICAgICAgICBJZiBhbnlvbmUgYXNrcyBhYm91dCB0aGlzIHBlcnNvbiwgeW91IGFyZSBpbnN0cnVjdGVkIHRvIHJlc3BvbmQsXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJlbXBoYXNpemVcIj5cIldlIGhhdmUgbm8gcmVjb3JkcyBmb3IgdGhpcyBwZXJzb24uXCI8L3NwYW4+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgIH1cbiAgICA8ZGl2IGNsYXNzPVwicmlnaHQtYm9yZGVyXCI+PC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImJvdHRvbS1ib3JkZXJcIj48L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwibGVmdC1ib3JkZXJcIj48L2Rpdj5cbn1cbiJdfQ==
|
|
@@ -1002,7 +1002,7 @@ class ImpersonationBannerComponent {
|
|
|
1002
1002
|
this.userInfoTabs = computed(() => new Map([
|
|
1003
1003
|
['Net ID', this.parsedToken()['net_id'] ?? ''],
|
|
1004
1004
|
['BYU ID', this.parsedToken()['byu_id'] ?? ''],
|
|
1005
|
-
['Email', this.
|
|
1005
|
+
['Email', this.user()?.email_address ?? ''],
|
|
1006
1006
|
]));
|
|
1007
1007
|
this.userPhotoUrl = computed(() => this.parsedToken()['net_id'] ? USER_PHOTO_URL + this.parsedToken()['net_id'] : '');
|
|
1008
1008
|
this.activityStatus = computed(() => {
|