@myclub_se/data-access 3.1.10 → 3.1.11

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.
@@ -32,7 +32,7 @@ export class AuthenticationInterceptor {
32
32
  if (requestError instanceof HttpErrorResponse &&
33
33
  requestError.status === 401 &&
34
34
  !request.url.includes('accounts/token/')) {
35
- return this.handle401Error(request, next);
35
+ return this.handle401Error(request, next, result?.result);
36
36
  }
37
37
  return throwError(() => requestError);
38
38
  }));
@@ -56,27 +56,37 @@ export class AuthenticationInterceptor {
56
56
  }
57
57
  return request;
58
58
  }
59
- handle401Error(request, next) {
59
+ handle401Error(request, next, currentToken) {
60
60
  if (!this.refreshTokenInProgress) {
61
61
  this.refreshTokenInProgress = true;
62
62
  this.refreshTokenSubject = new BehaviorSubject(null);
63
- this.store.dispatch(reauthenticateTokenAction());
64
- return this.actions$.pipe(ofType(reauthenticateTokenFailureAction, reauthenticateTokenSuccessAction), take(1), switchMap(action => {
63
+ if (currentToken || typeof currentToken === undefined) {
64
+ this.store.dispatch(reauthenticateTokenAction());
65
+ return this.actions$.pipe(ofType(reauthenticateTokenFailureAction, reauthenticateTokenSuccessAction), take(1), switchMap(action => {
66
+ if (action.type === reauthenticateTokenSuccessAction.type) {
67
+ const token = action.payload;
68
+ this.refreshTokenSubject.next(token);
69
+ this.refreshTokenInProgress = false;
70
+ return next.handle(this.addAuthorizationHeader(request, token.accessToken));
71
+ }
72
+ else {
73
+ const error = new Error('Token re-authentication failed.');
74
+ this.refreshTokenSubject.error(error);
75
+ this.refreshTokenInProgress = false;
76
+ return throwError(() => error);
77
+ }
78
+ }), catchError(err => {
79
+ this.refreshTokenInProgress = false;
80
+ return throwError(() => err);
81
+ }));
82
+ }
83
+ else {
65
84
  this.refreshTokenInProgress = false;
66
- if (action.type === reauthenticateTokenSuccessAction.type) {
67
- const token = action.payload;
68
- this.refreshTokenSubject.next(token);
69
- return next.handle(this.addAuthorizationHeader(request, token.accessToken));
70
- }
71
- else {
72
- const error = new Error('Token re-authentication failed.');
73
- this.refreshTokenSubject.error(error);
74
- return throwError(() => error);
75
- }
76
- }));
85
+ return throwError(() => new Error('No token present.'));
86
+ }
77
87
  }
78
88
  else {
79
- return this.refreshTokenSubject.pipe(filter((token) => token !== null), take(1), switchMap((token) => next.handle(this.addAuthorizationHeader(request, token.accessToken))));
89
+ return this.refreshTokenSubject.pipe(filter((token) => !!token), take(1), switchMap((token) => next.handle(this.addAuthorizationHeader(request, token.accessToken))));
80
90
  }
81
91
  }
82
92
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AuthenticationInterceptor, deps: [{ token: i1.Store }, { token: i2.Actions }], target: i0.ɵɵFactoryTarget.Injectable });
@@ -85,4 +95,4 @@ export class AuthenticationInterceptor {
85
95
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AuthenticationInterceptor, decorators: [{
86
96
  type: Injectable
87
97
  }], ctorParameters: () => [{ type: i1.Store }, { type: i2.Actions }] });
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRpb24uaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhLWFjY2Vzcy9zcmMvbGliL2F1dGhlbnRpY2F0aW9uL2F1dGhlbnRpY2F0aW9uLmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGlCQUFpQixFQUF3RCxNQUFNLHNCQUFzQixDQUFDO0FBQy9HLE9BQU8sRUFBVyxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEQsT0FBTyxFQUFFLE1BQU0sRUFBUyxNQUFNLGFBQWEsQ0FBQztBQUM1QyxPQUFPLEVBQUUsZUFBZSxFQUFjLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckUsT0FBTyxFQUNMLHlCQUF5QixFQUN6QixnQ0FBZ0MsRUFDaEMsZ0NBQWdDLEVBRWhDLHdCQUF3QixFQUN4QixrQkFBa0IsRUFDbkIsTUFBTSxVQUFVLENBQUM7Ozs7QUFJbEIsTUFBTSxPQUFPLHlCQUF5QjtJQUloQjtJQUFzQjtJQUhsQyxzQkFBc0IsR0FBRyxLQUFLLENBQUM7SUFDL0IsbUJBQW1CLEdBQWtDLElBQUksZUFBZSxDQUFlLElBQUksQ0FBQyxDQUFDO0lBRXJHLFlBQW9CLEtBQVksRUFBVSxRQUFpQjtRQUF2QyxVQUFLLEdBQUwsS0FBSyxDQUFPO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBUztJQUFHLENBQUM7SUFFL0QsU0FBUyxDQUFDLE9BQXlCLEVBQUUsSUFBaUI7UUFDcEQsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1lBQ25DLE9BQU8sSUFBSSxDQUFD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S0FBSyxnQ0FBZ0MsQ0FBQyxJQUFJLEVBQUUsQ0FBQztvQkFDMUQsTUFBTSxLQUFLLEdBQVUsTUFBTSxDQUFDLE9BQU8sQ0FBQztvQkFDcEMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFFckMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7Z0JBQzlFLENBQUM7cUJBQU0sQ0FBQztvQkFDTixNQUFNLEtBQUssR0FBRyxJQUFJLEtBQUssQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO29CQUMzRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUN0QyxPQUFPLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDakMsQ0FBQztZQUNILENBQUMsQ0FBQyxDQUNILENBQUM7UUFDSixDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FDbEMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFrQixFQUFFLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxFQUNqRCxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQ1AsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDM0YsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDO3VHQS9GVSx5QkFBeUI7MkdBQXpCLHlCQUF5Qjs7MkZBQXpCLHlCQUF5QjtrQkFEckMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlLCBIdHRwRXZlbnQsIEh0dHBIYW5kbGVyLCBIdHRwSW50ZXJjZXB0b3IsIEh0dHBSZXF1ZXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQWN0aW9ucywgb2ZUeXBlIH0gZnJvbSAnQG5ncngvZWZmZWN0cyc7XG5pbXBvcnQgeyBzZWxlY3QsIFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBmaWx0ZXIsIHN3aXRjaE1hcCwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7XG4gIHJlYXV0aGVudGljYXRlVG9rZW5BY3Rpb24sXG4gIHJlYXV0aGVudGljYXRlVG9rZW5GYWlsdXJlQWN0aW9uLFxuICByZWF1dGhlbnRpY2F0ZVRva2VuU3VjY2Vzc0FjdGlvbixcbiAgUmV0cmlldmVSZXN1bHRJbnRlcmZhY2UsXG4gIHNlbGVjdEN1cnJlbnRQdWJsaWNUb2tlbixcbiAgc2VsZWN0Q3VycmVudFRva2VuXG59IGZyb20gJy4uL3N0b3JlJztcbmltcG9ydCB7IFB1YmxpY0F1dGhlbnRpY2F0aW9uLCBUb2tlbiB9IGZyb20gJy4uL21vZGVscyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBdXRoZW50aWNhdGlvbkludGVyY2VwdG9yIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcbiAgcHJpdmF0ZSByZWZyZXNoVG9rZW5JblByb2dyZXNzID0gZmFsc2U7XG4gIHByaXZhdGUgcmVmcmVzaFRva2VuU3ViamVjdDogQmVoYXZpb3JTdWJqZWN0PFRva2VuIHwgbnVsbD4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRva2VuIHwgbnVsbD4obnVsbCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzdG9yZTogU3RvcmUsIHByaXZhdGUgYWN0aW9ucyQ6IEFjdGlvbnMpIHt9XG5cbiAgaW50ZXJjZXB0KHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PGFueT4sIG5leHQ6IEh0dHBIYW5kbGVyKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj4ge1xuICAgIGlmIChyZXF1ZXN0LnVybC5pbmNsdWRlcygncHVibGljJykpIHtcbiAgICAgIHJldHVybiB0aGlzLmhhbmRsZVB1YmxpY1JlcXVlc3QocmVxdWVzdCwgbmV4dCk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmhhbmRsZUF1dGhlbnRpY2F0ZWRSZXF1ZXN0KHJlcXVlc3QsIG5leHQpO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVBdXRoZW50aWNhdGVkUmVxdWVzdChyZXF1ZXN0OiBIdHRwUmVxdWVzdDx1bmtub3duPiwgbmV4dDogSHR0cEhhbmRsZXIpOiBPYnNlcnZhYmxlPEh0dHBFdmVudDxhbnk+PiB7XG4gICAgcmV0dXJuIHRoaXMuc3RvcmUucGlwZShcbiAgICAgIHNlbGVjdChzZWxlY3RDdXJyZW50VG9rZW4pLFxuICAgICAgdGFrZSgxKSxcbiAgICAgIHN3aXRjaE1hcCgocmVzdWx0OiBSZXRyaWV2ZVJlc3VsdEludGVyZmFjZTxUb2tlbj4gfCB1bmRlZmluZWQpID0+IHtcbiAgICAgICAgaWYgKHJlc3VsdD8ucmVzdWx0KSB7XG4gICAgICAgICAgcmVxdWVzdCA9IHRoaXMuYWRkQXV0aG9yaXphdGlvbkhlYWRlcihyZXF1ZXN0LCByZXN1bHQucmVzdWx0LmFjY2Vzc1Rva2VuKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXF1ZXN0KS5waXBlKFxuICAgICAgICAgIGNhdGNoRXJyb3IoKHJlcXVlc3RFcnJvcjogYW55KSA9PiB7XG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgIHJlcXVlc3RFcnJvciBpbnN0YW5jZW9mIEh0dHBFcnJvclJlc3BvbnNlICYmXG4gICAgICAgICAgICAgIHJlcXVlc3RFcnJvci5zdGF0dXMgPT09IDQwMSAmJlxuICAgICAgICAgICAgICAhcmVxdWVzdC51cmwuaW5jbHVkZXMoJ2FjY291bnRzL3Rva2VuLycpXG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuaGFuZGxlNDAxRXJyb3IocmVxdWVzdCwgbmV4dCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiByZXF1ZXN0RXJyb3IpO1xuICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZVB1YmxpY1JlcXVlc3QocmVxdWVzdDogSHR0cFJlcXVlc3Q8dW5rbm93bj4sIG5leHQ6IEh0dHBIYW5kbGVyKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj4ge1xuICAgIHJldHVybiB0aGlzLnN0b3JlLnBpcGUoXG4gICAgICBzZWxlY3Qoc2VsZWN0Q3VycmVudFB1YmxpY1Rva2VuKSxcbiAgICAgIHRha2UoMSksXG4gICAgICBzd2l0Y2hNYXAoKHJlc3VsdDogUmV0cmlldmVSZXN1bHRJbnRlcmZhY2U8UHVibGljQXV0aGVudGljYXRpb24+IHwgdW5kZWZpbmVkKSA9PiB7XG4gICAgICAgIGlmIChyZXN1bHQ/LnJlc3VsdCkge1xuICAgICAgICAgIHJlcXVlc3QgPSB0aGlzLmFkZEF1dGhvcml6YXRpb25IZWFkZXIocmVxdWVzdCwgcmVzdWx0LnJlc3VsdC50b2tlbik7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxdWVzdCk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGFkZEF1dGhvcml6YXRpb25IZWFkZXIocmVxdWVzdDogSHR0cFJlcXVlc3Q8dW5rbm93bj4sIHRva2VuOiBzdHJpbmcpOiBIdHRwUmVxdWVzdDx1bmtub3duPiB7XG4gICAgaWYgKHRva2VuKSB7XG4gICAgICByZXR1cm4gcmVxdWVzdC5jbG9uZSh7XG4gICAgICAgIHNldEhlYWRlcnM6IHtcbiAgICAgICAgICBBdXRob3JpemF0aW9uOiBgQmVhcmVyICR7dG9rZW59YFxuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcXVlc3Q7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZTQwMUVycm9yKHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PHVua25vd24+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcbiAgICBpZiAoIXRoaXMucmVmcmVzaFRva2VuSW5Qcm9ncmVzcykge1xuICAgICAgdGhpcy5yZWZyZXNoVG9rZW5JblByb2dyZXNzID0gdHJ1ZTtcbiAgICAgIHRoaXMucmVmcmVzaFRva2VuU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VG9rZW4gfCBudWxsPihudWxsKTtcblxuICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChyZWF1dGhlbnRpY2F0ZVRva2VuQWN0aW9uKCkpO1xuXG4gICAgICByZXR1cm4gdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgICBvZlR5cGUocmVhdXRoZW50aWNhdGVUb2tlbkZhaWx1cmVBY3Rpb24sIHJlYXV0aGVudGljYXRlVG9rZW5TdWNjZXNzQWN0aW9uKSxcbiAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgc3dpdGNoTWFwKGFjdGlvbiA9PiB7XG4gICAgICAgICAgdGhpcy5yZWZyZXNoVG9rZW5JblByb2dyZXNzID0gZmFsc2U7XG5cbiAgICAgICAgICBpZiAoYWN0aW9uLnR5cGUgPT09IHJlYXV0aGVudGljYXRlVG9rZW5TdWNjZXNzQWN0aW9uLnR5cGUpIHtcbiAgICAgICAgICAgIGNvbnN0IHRva2VuOiBUb2tlbiA9IGFjdGlvbi5wYXlsb2FkO1xuICAgICAgICAgICAgdGhpcy5yZWZyZXNoVG9rZW5TdWJqZWN0Lm5leHQodG9rZW4pO1xuXG4gICAgICAgICAgICByZXR1cm4gbmV4dC5oYW5kbGUodGhpcy5hZGRBdXRob3JpemF0aW9uSGVhZGVyKHJlcXVlc3QsIHRva2VuLmFjY2Vzc1Rva2VuKSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IGVycm9yID0gbmV3IEVycm9yKCdUb2tlbiByZS1hdXRoZW50aWNhdGlvbiBmYWlsZWQuJyk7XG4gICAgICAgICAgICB0aGlzLnJlZnJlc2hUb2tlblN1YmplY3QuZXJyb3IoZXJyb3IpO1xuICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyb3IpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLnJlZnJlc2hUb2tlblN1YmplY3QucGlwZShcbiAgICAgICAgZmlsdGVyKCh0b2tlbik6IHRva2VuIGlzIFRva2VuID0+IHRva2VuICE9PSBudWxsKSxcbiAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgc3dpdGNoTWFwKCh0b2tlbikgPT4gbmV4dC5oYW5kbGUodGhpcy5hZGRBdXRob3JpemF0aW9uSGVhZGVyKHJlcXVlc3QsIHRva2VuLmFjY2Vzc1Rva2VuKSkpXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuIl19
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRpb24uaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhLWFjY2Vzcy9zcmMvbGliL2F1dGhlbnRpY2F0aW9uL2F1dGhlbnRpY2F0aW9uLmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGlCQUFpQixFQUF3RCxNQUFNLHNCQUFzQixDQUFDO0FBQy9HLE9BQU8sRUFBVyxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEQsT0FBTyxFQUFFLE1BQU0sRUFBUyxNQUFNLGFBQWEsQ0FBQztBQUM1QyxPQUFPLEVBQUUsZUFBZSxFQUFjLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckUsT0FBTyxFQUNMLHlCQUF5QixFQUN6QixnQ0FBZ0MsRUFDaEMsZ0NBQWdDLEVBRWhDLHdCQUF3QixFQUN4QixrQkFBa0IsRUFDbkIsTUFBTSxVQUFVLENBQUM7Ozs7QUFJbEIsTUFBTSxPQUFPLHlCQUF5QjtJQUloQjtJQUFzQjtJQUhsQyxzQkFBc0IsR0FBRyxLQUFLLENBQUM7SUFDL0IsbUJBQW1CLEdBQWtDLElBQUksZUFBZSxDQUFlLElBQUksQ0FBQyxDQUFDO0lBRXJHLFlBQW9CLEtBQVksRUFBVSxRQUFpQjtRQUF2QyxVQUFLLEdBQUwsS0FBSyxDQUFPO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBUztJQUFHLENBQUM7SUFFL0QsU0FBUyxDQUFDLE9BQXlCLEVBQUUsSUFBaUI7UUFDcEQsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1lBQ25DLE9BQU8sSUFBSSxDQUFD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QUksQ0FDbEMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFrQixFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxFQUMxQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQ1AsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDM0YsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDO3VHQXhHVSx5QkFBeUI7MkdBQXpCLHlCQUF5Qjs7MkZBQXpCLHlCQUF5QjtrQkFEckMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlLCBIdHRwRXZlbnQsIEh0dHBIYW5kbGVyLCBIdHRwSW50ZXJjZXB0b3IsIEh0dHBSZXF1ZXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQWN0aW9ucywgb2ZUeXBlIH0gZnJvbSAnQG5ncngvZWZmZWN0cyc7XG5pbXBvcnQgeyBzZWxlY3QsIFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBmaWx0ZXIsIHN3aXRjaE1hcCwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7XG4gIHJlYXV0aGVudGljYXRlVG9rZW5BY3Rpb24sXG4gIHJlYXV0aGVudGljYXRlVG9rZW5GYWlsdXJlQWN0aW9uLFxuICByZWF1dGhlbnRpY2F0ZVRva2VuU3VjY2Vzc0FjdGlvbixcbiAgUmV0cmlldmVSZXN1bHRJbnRlcmZhY2UsXG4gIHNlbGVjdEN1cnJlbnRQdWJsaWNUb2tlbixcbiAgc2VsZWN0Q3VycmVudFRva2VuXG59IGZyb20gJy4uL3N0b3JlJztcbmltcG9ydCB7IFB1YmxpY0F1dGhlbnRpY2F0aW9uLCBUb2tlbiB9IGZyb20gJy4uL21vZGVscyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBdXRoZW50aWNhdGlvbkludGVyY2VwdG9yIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcbiAgcHJpdmF0ZSByZWZyZXNoVG9rZW5JblByb2dyZXNzID0gZmFsc2U7XG4gIHByaXZhdGUgcmVmcmVzaFRva2VuU3ViamVjdDogQmVoYXZpb3JTdWJqZWN0PFRva2VuIHwgbnVsbD4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRva2VuIHwgbnVsbD4obnVsbCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzdG9yZTogU3RvcmUsIHByaXZhdGUgYWN0aW9ucyQ6IEFjdGlvbnMpIHt9XG5cbiAgaW50ZXJjZXB0KHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PGFueT4sIG5leHQ6IEh0dHBIYW5kbGVyKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj4ge1xuICAgIGlmIChyZXF1ZXN0LnVybC5pbmNsdWRlcygncHVibGljJykpIHtcbiAgICAgIHJldHVybiB0aGlzLmhhbmRsZVB1YmxpY1JlcXVlc3QocmVxdWVzdCwgbmV4dCk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmhhbmRsZUF1dGhlbnRpY2F0ZWRSZXF1ZXN0KHJlcXVlc3QsIG5leHQpO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVBdXRoZW50aWNhdGVkUmVxdWVzdChyZXF1ZXN0OiBIdHRwUmVxdWVzdDx1bmtub3duPiwgbmV4dDogSHR0cEhhbmRsZXIpOiBPYnNlcnZhYmxlPEh0dHBFdmVudDxhbnk+PiB7XG4gICAgcmV0dXJuIHRoaXMuc3RvcmUucGlwZShcbiAgICAgIHNlbGVjdChzZWxlY3RDdXJyZW50VG9rZW4pLFxuICAgICAgdGFrZSgxKSxcbiAgICAgIHN3aXRjaE1hcCgocmVzdWx0OiBSZXRyaWV2ZVJlc3VsdEludGVyZmFjZTxUb2tlbj4gfCB1bmRlZmluZWQpID0+IHtcbiAgICAgICAgaWYgKHJlc3VsdD8ucmVzdWx0KSB7XG4gICAgICAgICAgcmVxdWVzdCA9IHRoaXMuYWRkQXV0aG9yaXphdGlvbkhlYWRlcihyZXF1ZXN0LCByZXN1bHQucmVzdWx0LmFjY2Vzc1Rva2VuKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXF1ZXN0KS5waXBlKFxuICAgICAgICAgIGNhdGNoRXJyb3IoKHJlcXVlc3RFcnJvcjogYW55KSA9PiB7XG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgIHJlcXVlc3RFcnJvciBpbnN0YW5jZW9mIEh0dHBFcnJvclJlc3BvbnNlICYmXG4gICAgICAgICAgICAgIHJlcXVlc3RFcnJvci5zdGF0dXMgPT09IDQwMSAmJlxuICAgICAgICAgICAgICAhcmVxdWVzdC51cmwuaW5jbHVkZXMoJ2FjY291bnRzL3Rva2VuLycpXG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuaGFuZGxlNDAxRXJyb3IocmVxdWVzdCwgbmV4dCwgcmVzdWx0Py5yZXN1bHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gcmVxdWVzdEVycm9yKTtcbiAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVQdWJsaWNSZXF1ZXN0KHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PHVua25vd24+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5waXBlKFxuICAgICAgc2VsZWN0KHNlbGVjdEN1cnJlbnRQdWJsaWNUb2tlbiksXG4gICAgICB0YWtlKDEpLFxuICAgICAgc3dpdGNoTWFwKChyZXN1bHQ6IFJldHJpZXZlUmVzdWx0SW50ZXJmYWNlPFB1YmxpY0F1dGhlbnRpY2F0aW9uPiB8IHVuZGVmaW5lZCkgPT4ge1xuICAgICAgICBpZiAocmVzdWx0Py5yZXN1bHQpIHtcbiAgICAgICAgICByZXF1ZXN0ID0gdGhpcy5hZGRBdXRob3JpemF0aW9uSGVhZGVyKHJlcXVlc3QsIHJlc3VsdC5yZXN1bHQudG9rZW4pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcXVlc3QpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBhZGRBdXRob3JpemF0aW9uSGVhZGVyKHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PHVua25vd24+LCB0b2tlbjogc3RyaW5nKTogSHR0cFJlcXVlc3Q8dW5rbm93bj4ge1xuICAgIGlmICh0b2tlbikge1xuICAgICAgcmV0dXJuIHJlcXVlc3QuY2xvbmUoe1xuICAgICAgICBzZXRIZWFkZXJzOiB7XG4gICAgICAgICAgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke3Rva2VufWBcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiByZXF1ZXN0O1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGU0MDFFcnJvcihyZXF1ZXN0OiBIdHRwUmVxdWVzdDx1bmtub3duPiwgbmV4dDogSHR0cEhhbmRsZXIsIGN1cnJlbnRUb2tlbjogVG9rZW4gfCBudWxsIHwgdW5kZWZpbmVkKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj4ge1xuICAgIGlmICghdGhpcy5yZWZyZXNoVG9rZW5JblByb2dyZXNzKSB7XG4gICAgICB0aGlzLnJlZnJlc2hUb2tlbkluUHJvZ3Jlc3MgPSB0cnVlO1xuICAgICAgdGhpcy5yZWZyZXNoVG9rZW5TdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUb2tlbiB8IG51bGw+KG51bGwpO1xuXG4gICAgICBpZiAoY3VycmVudFRva2VuIHx8IHR5cGVvZiBjdXJyZW50VG9rZW4gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKHJlYXV0aGVudGljYXRlVG9rZW5BY3Rpb24oKSk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgICAgICBvZlR5cGUocmVhdXRoZW50aWNhdGVUb2tlbkZhaWx1cmVBY3Rpb24sIHJlYXV0aGVudGljYXRlVG9rZW5TdWNjZXNzQWN0aW9uKSxcbiAgICAgICAgICB0YWtlKDEpLFxuICAgICAgICAgIHN3aXRjaE1hcChhY3Rpb24gPT4ge1xuICAgICAgICAgICAgaWYgKGFjdGlvbi50eXBlID09PSByZWF1dGhlbnRpY2F0ZVRva2VuU3VjY2Vzc0FjdGlvbi50eXBlKSB7XG4gICAgICAgICAgICAgIGNvbnN0IHRva2VuOiBUb2tlbiA9IGFjdGlvbi5wYXlsb2FkO1xuICAgICAgICAgICAgICB0aGlzLnJlZnJlc2hUb2tlblN1YmplY3QubmV4dCh0b2tlbik7XG4gICAgICAgICAgICAgIHRoaXMucmVmcmVzaFRva2VuSW5Qcm9ncmVzcyA9IGZhbHNlO1xuXG4gICAgICAgICAgICAgIHJldHVybiBuZXh0LmhhbmRsZSh0aGlzLmFkZEF1dGhvcml6YXRpb25IZWFkZXIocmVxdWVzdCwgdG9rZW4uYWNjZXNzVG9rZW4pKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIGNvbnN0IGVycm9yID0gbmV3IEVycm9yKCdUb2tlbiByZS1hdXRoZW50aWNhdGlvbiBmYWlsZWQuJyk7XG4gICAgICAgICAgICAgIHRoaXMucmVmcmVzaFRva2VuU3ViamVjdC5lcnJvcihlcnJvcik7XG4gICAgICAgICAgICAgIHRoaXMucmVmcmVzaFRva2VuSW5Qcm9ncmVzcyA9IGZhbHNlO1xuICAgICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnJvcik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSksXG4gICAgICAgICAgY2F0Y2hFcnJvcihlcnIgPT4ge1xuICAgICAgICAgICAgdGhpcy5yZWZyZXNoVG9rZW5JblByb2dyZXNzID0gZmFsc2U7XG4gICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnIpO1xuICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnJlZnJlc2hUb2tlbkluUHJvZ3Jlc3MgPSBmYWxzZTtcbiAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gbmV3IEVycm9yKCdObyB0b2tlbiBwcmVzZW50LicpKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMucmVmcmVzaFRva2VuU3ViamVjdC5waXBlKFxuICAgICAgICBmaWx0ZXIoKHRva2VuKTogdG9rZW4gaXMgVG9rZW4gPT4gISF0b2tlbiksXG4gICAgICAgIHRha2UoMSksXG4gICAgICAgIHN3aXRjaE1hcCgodG9rZW4pID0+IG5leHQuaGFuZGxlKHRoaXMuYWRkQXV0aG9yaXphdGlvbkhlYWRlcihyZXF1ZXN0LCB0b2tlbi5hY2Nlc3NUb2tlbikpKVxuICAgICAgKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -81,18 +81,18 @@ export class AuthenticationService {
81
81
  clientSecret = this.app.authorizationCodeClientSecret || this.app.clientSecret;
82
82
  }
83
83
  return this.tokenService
84
- .getTokenByRefreshToken(clientId, clientSecret, this.authentication?.refreshToken)
84
+ .getTokenByRefreshToken(clientId, clientSecret, this.authentication?.refreshToken || null)
85
85
  .pipe(tap((token) => this.setToken(token)));
86
86
  }
87
- setAuthentication(accessToken, refreshToken) {
88
- this.authentication = new Authentication(accessToken, refreshToken);
89
- }
90
87
  setPublicToken(token) {
91
88
  this.publicAuthentication = new PublicAuthentication(token.token, token.tokenExpires);
92
89
  }
93
90
  setToken(token) {
94
91
  this.currentTokenSubject.next(token);
95
- this.setAuthentication(token.accessToken, token.refreshToken);
92
+ this.setAuthentication(token);
93
+ }
94
+ setAuthentication(token) {
95
+ this.authentication = !!token ? new Authentication(token.accessToken, token.refreshToken) : null;
96
96
  }
97
97
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AuthenticationService, deps: [{ token: i1.ApiService }, { token: APP }, { token: i2.TokenService }], target: i0.ɵɵFactoryTarget.Injectable });
98
98
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AuthenticationService, providedIn: 'root' });
@@ -106,4 +106,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
106
106
  type: Inject,
107
107
  args: [APP]
108
108
  }] }, { type: i2.TokenService }] });
109
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGEtYWNjZXNzL3NyYy9saWIvYXV0aGVudGljYXRpb24vYXV0aGVudGljYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxjQUFjLEVBQUUsb0JBQW9CLEVBQUUsSUFBSSxFQUFTLE1BQU0sV0FBVyxDQUFDO0FBRTlFLE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFFbkQsT0FBTyxFQUFFLDJCQUEyQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7QUFHdkYsTUFBTSxDQUFDLE1BQU0sR0FBRyxHQUFHLElBQUksY0FBYyxDQUFNLEtBQUssQ0FBQyxDQUFDO0FBRWxELE1BQU0sOEJBQThCLEdBQUcscUJBQXFCLENBQUM7QUFDN0QsTUFBTSxzQkFBc0IsR0FBRyxhQUFhLENBQUM7QUFDN0MsTUFBTSw2QkFBNkIsR0FBRyxvQkFBb0IsQ0FBQTtBQVkxRCxNQUFNLE9BQU8scUJBQXFCO0lBV1o7SUFBNkM7SUFBa0I7SUFWM0UsbUJBQW1CLEdBQUcsSUFBSSxlQUFlLENBQWUsSUFBSSxDQUFDLENBQUM7SUFFdEUsY0FBYyxHQUEwQixJQUFJLENBQUM7SUFDN0Msb0JBQW9CLEdBQWdDLElBQUksQ0FBQztJQUN6RCxhQUFhLEdBQTZCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUVsRixJQUFJLGVBQWU7UUFDakIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUMvQixDQUFDO0lBRUQsWUFBb0IsVUFBc0Is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LENBQUM7SUFDdEUsQ0FBQztJQUVELGNBQWMsQ0FBQyxLQUEyQjtRQUN4QyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN4RixDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQVk7UUFDbkIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDaEUsQ0FBQzt1R0F4R1UscUJBQXFCLDRDQVdvQixHQUFHOzJHQVg1QyxxQkFBcUIsY0FGcEIsTUFBTTs7MkZBRVAscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBWThDLE1BQU07MkJBQUMsR0FBRyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFRva2VuU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IEF1dGhlbnRpY2F0aW9uLCBQdWJsaWNBdXRoZW50aWNhdGlvbiwgUm9sZSwgVG9rZW4gfSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IHsgQXBpU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2FwaS5zZXJ2aWNlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgR3JhbnRUeXBlIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgcHVibGljQXV0aGVudGljYXRpb25GYWN0b3J5LCBzZWFyY2hDbHViRmFjdG9yeSB9IGZyb20gJy4uL3NlcnZpY2VzL2ZhY3Rvcmllcyc7XG5cblxuZXhwb3J0IGNvbnN0IEFQUCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxBcHA+KCdhcHAnKTtcblxuY29uc3QgUFVCTElDX0FVVEhfUkVUUklFVkVfQ09ERV9QQVRIID0gJ2F1dGgvcmV0cmlldmUtY29kZS8nO1xuY29uc3QgUFVCTElDX0FVVEhfVE9LRU5fUEFUSCA9ICdhdXRoL3Rva2VuLyc7XG5jb25zdCBQVUJMSUNfQVVUSF9DSEFOR0VfVE9LRU5fUEFUSCA9ICdhdXRoL2NoYW5nZS10b2tlbi8nXG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBwIHtcbiAgY2xpZW50SWQ6IHN0cmluZztcbiAgY2xpZW50U2VjcmV0OiBzdHJpbmc7XG4gIGF1dGhvcml6YXRpb25Db2RlQ2xpZW50SWQ/OiBzdHJpbmcsXG4gIGF1dGhvcml6YXRpb25Db2RlQ2xpZW50U2VjcmV0Pzogc3RyaW5nLFxufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBBdXRoZW50aWNhdGlvblNlcnZpY2Uge1xuICBwcml2YXRlIGN1cnJlbnRUb2tlblN1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRva2VuIHwgbnVsbD4obnVsbCk7XG5cbiAgYXV0aGVudGljYXRpb246IEF1dGhlbnRpY2F0aW9uIHwgbnVsbCA9IG51bGw7XG4gIHB1YmxpY0F1dGhlbnRpY2F0aW9uOiBQdWJsaWNBdXRoZW50aWNhdGlvbiB8IG51bGwgPSBudWxsO1xuICBjdXJyZW50VG9rZW4kOiBPYnNlcnZhYmxlPFRva2VuIHwgbnVsbD4gPSB0aGlzLmN1cnJlbnRUb2tlblN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG5cbiAgZ2V0IGlzQXV0aGVudGljYXRlZCgpIHtcbiAgICByZXR1cm4gISF0aGlzLmF1dGhlbnRpY2F0aW9uO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBhcGlTZXJ2aWNlOiBBcGlTZXJ2aWNlLCBASW5qZWN0KEFQUCkgcHJpdmF0ZSBhcHA6IEFwcCwgcHJpdmF0ZSB0b2tlblNlcnZpY2U6IFRva2VuU2VydmljZSkge31cblxuICBhdXRoZW50aWNhdGVCeUNyZWRlbnRpYWxzKHVzZXJuYW1lOiBzdHJpbmcsIHBhc3N3b3JkOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy50b2tlblNlcnZpY2VcbiAgICAgIC5nZXRUb2tlbkJ5Q3JlZGVudGlhbHModGhpcy5hcHAuY2xpZW50SWQsIHRoaXMuYXBwLmNsaWVudFNlY3JldCwgdXNlcm5hbWUsIHBhc3N3b3JkKVxuICAgICAgLnBpcGUodGFwKCh0b2tlbikgPT4gdGhpcy5zZXRUb2tlbih0b2tlbikpKTtcbiAgfVxuXG4gIGF1dGhlbnRpY2F0ZUJ5VG9rZW4odG9rZW46IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLnRva2VuU2VydmljZVxuICAgICAgLmdldFRva2VuQnlDb2RlKFxuICAgICAgICB0aGlzLmFwcC5hdXRob3JpemF0aW9uQ29kZUNsaWVudElkIHx8IHRoaXMuYXBwLmNsaWVudElkLFxuICAgICAgICB0aGlzLmFwcC5hdXRob3JpemF0aW9uQ29kZUNsaWVudFNlY3JldCB8fCB0aGlzLmFwcC5jbGllbnRTZWNyZXQsXG4gICAgICAgIHRva2VuLFxuICAgICAgKVxuICAgICAgLnBpcGUodGFwKCh0b2tlbikgPT4gdGhpcy5zZXRUb2tlbih0b2tlbikpKTtcbiAgfVxuXG4gIGNsZWFyQXV0aGVudGljYXRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5hdXRoZW50aWNhdGlvbiA9IG51bGw7XG4gICAgdGhpcy5wdWJsaWNBdXRoZW50aWNhdGlvbiA9IG51bGw7XG4gICAgdGhpcy5jdXJyZW50VG9rZW5TdWJqZWN0Lm5leHQobnVsbCk7XG4gIH1cblxuICBjbGVhclB1YmxpY0F1dGhlbnRpY2F0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMucHVibGljQXV0aGVudGljYXRpb24gPSBudWxsO1xuICB9XG5cbiAgZ2V0TG9naW5Db2RlKGVtYWlsOiBzdHJpbmcsIGNsdWJJZDogc3RyaW5nIHwgbnVsbCkge1xuICAgIGNvbnN0IHBhcmFtczogYW55ID0geyBlbWFpbCB9O1xuXG4gICAgaWYgKGNsdWJJZCkge1xuICAgICAgcGFyYW1zWydjbHViX2lkJ10gPSBjbHViSWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5nZXRDb2xsZWN0aW9uKHNlYXJjaENsdWJGYWN0b3J5LCBSb2xlLlB1YmxpYywgUFVCTElDX0FVVEhfUkVUUklFVkVfQ09ERV9QQVRILCB7fSwge3BhcmFtc30pO1xuICB9XG5cbiAgZ2V0UHVibGljVG9rZW4oZW1haWw6IHN0cmluZywgY29kZTogc3RyaW5nLCBjbHViSWQ6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UucG9zdFJlc291cmNlKHB1YmxpY0F1dGhlbnRpY2F0aW9uRmFjdG9yeSwgUm9sZS5QdWJsaWMsIFBVQkxJQ19BVVRIX1RPS0VOX1BBVEgsIHt9LCB7ZW1haWwsIGNvZGUsIGNsdWJfaWQ6IGNsdWJJZH0pXG4gICAgICAucGlwZSh0YXAoKHRva2VuKSA9PiB0aGlzLnNldFB1YmxpY1Rva2VuKHRva2VuKSkpO1xuICB9XG5cbiAgY2hhbmdlUHVibGljVG9rZW4obWVtYmVySWQ6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UucG9zdFJlc291cmNlKHB1YmxpY0F1dGhlbnRpY2F0aW9uRmFjdG9yeSwgUm9sZS5QdWJsaWMsIFBVQkxJQ19BVVRIX0NIQU5HRV9UT0tFTl9QQVRILCB7fSwge21lbWJlcl9pZDogbWVtYmVySWR9KVxuICAgICAgLnBpcGUodGFwKCh0b2tlbikgPT4gdGhpcy5zZXRQdWJsaWNUb2tlbih0b2tlbikpKTtcbiAgfVxuXG4gIGdldFNlc3Npb25Ub2tlbigpIHtcbiAgICByZXR1cm4gdGhpcy50b2tlblNlcnZpY2VcbiAgICAgIC5nZXRUb2tlbkJ5U2Vzc2lvbigpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKCh0b2tlbjogVG9rZW4gfCBudWxsKSA9PiB7XG4gICAgICAgICAgaWYgKHRva2VuKSB7XG4gICAgICAgICAgICB0aGlzLnNldFRva2VuKHRva2VuKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgfVxuXG4gIGxvZ291dCgpIHtcbiAgICByZXR1cm4gdGhpcy50b2tlblNlcnZpY2VcbiAgICAgIC5sb2dvdXQoKVxuICAgICAgLnBpcGUodGFwKCgpID0+IHRoaXMuY2xlYXJBdXRoZW50aWNhdGlvbigpKSk7XG4gIH1cblxuICByZWF1dGhlbnRpY2F0ZShncmFudFR5cGU6IEdyYW50VHlwZSB8IG51bGwgPSBudWxsKSB7XG4gICAgbGV0IGNsaWVudElkID0gdGhpcy5hcHAuY2xpZW50SWQ7XG4gICAgbGV0IGNsaWVudFNlY3JldCA9IHRoaXMuYXBwLmNsaWVudFNlY3JldDtcbiAgICBpZiAoZ3JhbnRUeXBlID09ICdhdXRob3JpemF0aW9uX2NvZGUnKSB7XG4gICAgICBjbGllbnRJZCA9IHRoaXMuYXBwLmF1dGhvcml6YXRpb25Db2RlQ2xpZW50SWQgfHwgdGhpcy5hcHAuY2xpZW50SWQ7XG4gICAgICBjbGllbnRTZWNyZXQgPSB0aGlzLmFwcC5hdXRob3JpemF0aW9uQ29kZUNsaWVudFNlY3JldCB8fCB0aGlzLmFwcC5jbGllbnRTZWNyZXQ7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnRva2VuU2VydmljZVxuICAgICAgLmdldFRva2VuQnlSZWZyZXNoVG9rZW4oXG4gICAgICAgIGNsaWVudElkLFxuICAgICAgICBjbGllbnRTZWNyZXQsXG4gICAgICAgIHRoaXMuYXV0aGVudGljYXRpb24/LnJlZnJlc2hUb2tlbiBhcyBzdHJpbmdcbiAgICAgIClcbiAgICAgIC5waXBlKHRhcCgodG9rZW46IFRva2VuKSA9PiB0aGlzLnNldFRva2VuKHRva2VuKSkpO1xuICB9XG5cbiAgc2V0QXV0aGVudGljYXRpb24oYWNjZXNzVG9rZW46IHN0cmluZywgcmVmcmVzaFRva2VuOiBzdHJpbmcpIHtcbiAgICB0aGlzLmF1dGhlbnRpY2F0aW9uID0gbmV3IEF1dGhlbnRpY2F0aW9uKGFjY2Vzc1Rva2VuLCByZWZyZXNoVG9rZW4pO1xuICB9XG5cbiAgc2V0UHVibGljVG9rZW4odG9rZW46IFB1YmxpY0F1dGhlbnRpY2F0aW9uKSB7XG4gICAgdGhpcy5wdWJsaWNBdXRoZW50aWNhdGlvbiA9IG5ldyBQdWJsaWNBdXRoZW50aWNhdGlvbih0b2tlbi50b2tlbiwgdG9rZW4udG9rZW5FeHBpcmVzKTtcbiAgfVxuXG4gIHNldFRva2VuKHRva2VuOiBUb2tlbikge1xuICAgIHRoaXMuY3VycmVudFRva2VuU3ViamVjdC5uZXh0KHRva2VuKTtcbiAgICB0aGlzLnNldEF1dGhlbnRpY2F0aW9uKHRva2VuLmFjY2Vzc1Rva2VuLCB0b2tlbi5yZWZyZXNoVG9rZW4pO1xuICB9XG59XG4iXX0=
109
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGEtYWNjZXNzL3NyYy9saWIvYXV0aGVudGljYXRpb24vYXV0aGVudGljYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxjQUFjLEVBQUUsb0JBQW9CLEVBQUUsSUFBSSxFQUFTLE1BQU0sV0FBVyxDQUFDO0FBRTlFLE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFFbkQsT0FBTyxFQUFFLDJCQUEyQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7QUFHdkYsTUFBTSxDQUFDLE1BQU0sR0FBRyxHQUFHLElBQUksY0FBYyxDQUFNLEtBQUssQ0FBQyxDQUFDO0FBRWxELE1BQU0sOEJBQThCLEdBQUcscUJBQXFCLENBQUM7QUFDN0QsTUFBTSxzQkFBc0IsR0FBRyxhQUFhLENBQUM7QUFDN0MsTUFBTSw2QkFBNkIsR0FBRyxvQkFBb0IsQ0FBQTtBQVkxRCxNQUFNLE9BQU8scUJBQXFCO0lBV1o7SUFBNkM7SUFBa0I7SUFWM0UsbUJBQW1CLEdBQUcsSUFBSSxlQUFlLENBQWUsSUFBSSxDQUFDLENBQUM7SUFFdEUsY0FBYyxHQUEwQixJQUFJLENBQUM7SUFDN0Msb0JBQW9CLEdBQWdDLElBQUksQ0FBQztJQUN6RCxhQUFhLEdBQTZCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUVsRixJQUFJLGVBQWU7UUFDakIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUMvQixDQUFDO0lBRUQsWUFBb0IsVUFBc0Is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LEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN4RixDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQW1CO1FBQzFCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxLQUFtQjtRQUMzQyxJQUFJLENBQUMsY0FBYyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksY0FBYyxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDbkcsQ0FBQzt1R0F4R1UscUJBQXFCLDRDQVdvQixHQUFHOzJHQVg1QyxxQkFBcUIsY0FGcEIsTUFBTTs7MkZBRVAscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBWThDLE1BQU07MkJBQUMsR0FBRyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFRva2VuU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IEF1dGhlbnRpY2F0aW9uLCBQdWJsaWNBdXRoZW50aWNhdGlvbiwgUm9sZSwgVG9rZW4gfSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IHsgQXBpU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2FwaS5zZXJ2aWNlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgR3JhbnRUeXBlIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgcHVibGljQXV0aGVudGljYXRpb25GYWN0b3J5LCBzZWFyY2hDbHViRmFjdG9yeSB9IGZyb20gJy4uL3NlcnZpY2VzL2ZhY3Rvcmllcyc7XG5cblxuZXhwb3J0IGNvbnN0IEFQUCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxBcHA+KCdhcHAnKTtcblxuY29uc3QgUFVCTElDX0FVVEhfUkVUUklFVkVfQ09ERV9QQVRIID0gJ2F1dGgvcmV0cmlldmUtY29kZS8nO1xuY29uc3QgUFVCTElDX0FVVEhfVE9LRU5fUEFUSCA9ICdhdXRoL3Rva2VuLyc7XG5jb25zdCBQVUJMSUNfQVVUSF9DSEFOR0VfVE9LRU5fUEFUSCA9ICdhdXRoL2NoYW5nZS10b2tlbi8nXG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBwIHtcbiAgY2xpZW50SWQ6IHN0cmluZztcbiAgY2xpZW50U2VjcmV0OiBzdHJpbmc7XG4gIGF1dGhvcml6YXRpb25Db2RlQ2xpZW50SWQ/OiBzdHJpbmcsXG4gIGF1dGhvcml6YXRpb25Db2RlQ2xpZW50U2VjcmV0Pzogc3RyaW5nLFxufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBBdXRoZW50aWNhdGlvblNlcnZpY2Uge1xuICBwcml2YXRlIGN1cnJlbnRUb2tlblN1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRva2VuIHwgbnVsbD4obnVsbCk7XG5cbiAgYXV0aGVudGljYXRpb246IEF1dGhlbnRpY2F0aW9uIHwgbnVsbCA9IG51bGw7XG4gIHB1YmxpY0F1dGhlbnRpY2F0aW9uOiBQdWJsaWNBdXRoZW50aWNhdGlvbiB8IG51bGwgPSBudWxsO1xuICBjdXJyZW50VG9rZW4kOiBPYnNlcnZhYmxlPFRva2VuIHwgbnVsbD4gPSB0aGlzLmN1cnJlbnRUb2tlblN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG5cbiAgZ2V0IGlzQXV0aGVudGljYXRlZCgpIHtcbiAgICByZXR1cm4gISF0aGlzLmF1dGhlbnRpY2F0aW9uO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBhcGlTZXJ2aWNlOiBBcGlTZXJ2aWNlLCBASW5qZWN0KEFQUCkgcHJpdmF0ZSBhcHA6IEFwcCwgcHJpdmF0ZSB0b2tlblNlcnZpY2U6IFRva2VuU2VydmljZSkge31cblxuICBhdXRoZW50aWNhdGVCeUNyZWRlbnRpYWxzKHVzZXJuYW1lOiBzdHJpbmcsIHBhc3N3b3JkOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy50b2tlblNlcnZpY2VcbiAgICAgIC5nZXRUb2tlbkJ5Q3JlZGVudGlhbHModGhpcy5hcHAuY2xpZW50SWQsIHRoaXMuYXBwLmNsaWVudFNlY3JldCwgdXNlcm5hbWUsIHBhc3N3b3JkKVxuICAgICAgLnBpcGUodGFwKCh0b2tlbikgPT4gdGhpcy5zZXRUb2tlbih0b2tlbikpKTtcbiAgfVxuXG4gIGF1dGhlbnRpY2F0ZUJ5VG9rZW4odG9rZW46IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLnRva2VuU2VydmljZVxuICAgICAgLmdldFRva2VuQnlDb2RlKFxuICAgICAgICB0aGlzLmFwcC5hdXRob3JpemF0aW9uQ29kZUNsaWVudElkIHx8IHRoaXMuYXBwLmNsaWVudElkLFxuICAgICAgICB0aGlzLmFwcC5hdXRob3JpemF0aW9uQ29kZUNsaWVudFNlY3JldCB8fCB0aGlzLmFwcC5jbGllbnRTZWNyZXQsXG4gICAgICAgIHRva2VuLFxuICAgICAgKVxuICAgICAgLnBpcGUodGFwKCh0b2tlbikgPT4gdGhpcy5zZXRUb2tlbih0b2tlbikpKTtcbiAgfVxuXG4gIGNsZWFyQXV0aGVudGljYXRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5hdXRoZW50aWNhdGlvbiA9IG51bGw7XG4gICAgdGhpcy5wdWJsaWNBdXRoZW50aWNhdGlvbiA9IG51bGw7XG4gICAgdGhpcy5jdXJyZW50VG9rZW5TdWJqZWN0Lm5leHQobnVsbCk7XG4gIH1cblxuICBjbGVhclB1YmxpY0F1dGhlbnRpY2F0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMucHVibGljQXV0aGVudGljYXRpb24gPSBudWxsO1xuICB9XG5cbiAgZ2V0TG9naW5Db2RlKGVtYWlsOiBzdHJpbmcsIGNsdWJJZDogc3RyaW5nIHwgbnVsbCkge1xuICAgIGNvbnN0IHBhcmFtczogYW55ID0geyBlbWFpbCB9O1xuXG4gICAgaWYgKGNsdWJJZCkge1xuICAgICAgcGFyYW1zWydjbHViX2lkJ10gPSBjbHViSWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5nZXRDb2xsZWN0aW9uKHNlYXJjaENsdWJGYWN0b3J5LCBSb2xlLlB1YmxpYywgUFVCTElDX0FVVEhfUkVUUklFVkVfQ09ERV9QQVRILCB7fSwge3BhcmFtc30pO1xuICB9XG5cbiAgZ2V0UHVibGljVG9rZW4oZW1haWw6IHN0cmluZywgY29kZTogc3RyaW5nLCBjbHViSWQ6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UucG9zdFJlc291cmNlKHB1YmxpY0F1dGhlbnRpY2F0aW9uRmFjdG9yeSwgUm9sZS5QdWJsaWMsIFBVQkxJQ19BVVRIX1RPS0VOX1BBVEgsIHt9LCB7ZW1haWwsIGNvZGUsIGNsdWJfaWQ6IGNsdWJJZH0pXG4gICAgICAucGlwZSh0YXAoKHRva2VuKSA9PiB0aGlzLnNldFB1YmxpY1Rva2VuKHRva2VuKSkpO1xuICB9XG5cbiAgY2hhbmdlUHVibGljVG9rZW4obWVtYmVySWQ6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UucG9zdFJlc291cmNlKHB1YmxpY0F1dGhlbnRpY2F0aW9uRmFjdG9yeSwgUm9sZS5QdWJsaWMsIFBVQkxJQ19BVVRIX0NIQU5HRV9UT0tFTl9QQVRILCB7fSwge21lbWJlcl9pZDogbWVtYmVySWR9KVxuICAgICAgLnBpcGUodGFwKCh0b2tlbikgPT4gdGhpcy5zZXRQdWJsaWNUb2tlbih0b2tlbikpKTtcbiAgfVxuXG4gIGdldFNlc3Npb25Ub2tlbigpIHtcbiAgICByZXR1cm4gdGhpcy50b2tlblNlcnZpY2VcbiAgICAgIC5nZXRUb2tlbkJ5U2Vzc2lvbigpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKCh0b2tlbjogVG9rZW4gfCBudWxsKSA9PiB7XG4gICAgICAgICAgaWYgKHRva2VuKSB7XG4gICAgICAgICAgICB0aGlzLnNldFRva2VuKHRva2VuKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgfVxuXG4gIGxvZ291dCgpIHtcbiAgICByZXR1cm4gdGhpcy50b2tlblNlcnZpY2VcbiAgICAgIC5sb2dvdXQoKVxuICAgICAgLnBpcGUodGFwKCgpID0+IHRoaXMuY2xlYXJBdXRoZW50aWNhdGlvbigpKSk7XG4gIH1cblxuICByZWF1dGhlbnRpY2F0ZShncmFudFR5cGU6IEdyYW50VHlwZSB8IG51bGwgPSBudWxsKSB7XG4gICAgbGV0IGNsaWVudElkID0gdGhpcy5hcHAuY2xpZW50SWQ7XG4gICAgbGV0IGNsaWVudFNlY3JldCA9IHRoaXMuYXBwLmNsaWVudFNlY3JldDtcblxuICAgIGlmIChncmFudFR5cGUgPT0gJ2F1dGhvcml6YXRpb25fY29kZScpIHtcbiAgICAgIGNsaWVudElkID0gdGhpcy5hcHAuYXV0aG9yaXphdGlvbkNvZGVDbGllbnRJZCB8fCB0aGlzLmFwcC5jbGllbnRJZDtcbiAgICAgIGNsaWVudFNlY3JldCA9IHRoaXMuYXBwLmF1dGhvcml6YXRpb25Db2RlQ2xpZW50U2VjcmV0IHx8IHRoaXMuYXBwLmNsaWVudFNlY3JldDtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy50b2tlblNlcnZpY2VcbiAgICAgIC5nZXRUb2tlbkJ5UmVmcmVzaFRva2VuKGNsaWVudElkLCBjbGllbnRTZWNyZXQsIHRoaXMuYXV0aGVudGljYXRpb24/LnJlZnJlc2hUb2tlbiB8fCBudWxsKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcCgodG9rZW46IFRva2VuIHwgbnVsbCkgPT4gdGhpcy5zZXRUb2tlbih0b2tlbikpXG4gICAgICApO1xuICB9XG5cbiAgc2V0UHVibGljVG9rZW4odG9rZW46IFB1YmxpY0F1dGhlbnRpY2F0aW9uKSB7XG4gICAgdGhpcy5wdWJsaWNBdXRoZW50aWNhdGlvbiA9IG5ldyBQdWJsaWNBdXRoZW50aWNhdGlvbih0b2tlbi50b2tlbiwgdG9rZW4udG9rZW5FeHBpcmVzKTtcbiAgfVxuXG4gIHNldFRva2VuKHRva2VuOiBUb2tlbiB8IG51bGwpIHtcbiAgICB0aGlzLmN1cnJlbnRUb2tlblN1YmplY3QubmV4dCh0b2tlbik7XG4gICAgdGhpcy5zZXRBdXRoZW50aWNhdGlvbih0b2tlbik7XG4gIH1cblxuICBwcml2YXRlIHNldEF1dGhlbnRpY2F0aW9uKHRva2VuOiBUb2tlbiB8IG51bGwpIHtcbiAgICB0aGlzLmF1dGhlbnRpY2F0aW9uID0gISF0b2tlbiA/IG5ldyBBdXRoZW50aWNhdGlvbih0b2tlbi5hY2Nlc3NUb2tlbiwgdG9rZW4ucmVmcmVzaFRva2VuKSA6IG51bGw7XG4gIH1cbn1cbiJdfQ==
@@ -23,6 +23,9 @@ export class TokenService {
23
23
  return this.getToken(clientId, clientSecret, CODE_GRANT_TYPE, { code, code_verifier: code });
24
24
  }
25
25
  getTokenByRefreshToken(clientId, clientSecret, refreshToken) {
26
+ if (!refreshToken) {
27
+ return of(null);
28
+ }
26
29
  return this.getToken(clientId, clientSecret, REFRESH_GRANT_TYPE, {
27
30
  refresh_token: refreshToken
28
31
  });
@@ -55,4 +58,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
55
58
  providedIn: 'root'
56
59
  }]
57
60
  }], ctorParameters: () => [{ type: i1.ApiService }] });
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGEtYWNjZXNzL3NyYy9saWIvc2VydmljZXMvdG9rZW4uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE9BQU8sRUFBRSxJQUFJLEVBQVMsTUFBTSxXQUFXLENBQUM7QUFFeEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxhQUFhLENBQUM7OztBQUUzQyxNQUFNLFNBQVMsR0FBRyxpQkFBaUIsQ0FBQztBQUNwQyxNQUFNLHFCQUFxQixHQUFHLFVBQVUsQ0FBQztBQUN6QyxNQUFNLGVBQWUsR0FBRyxvQkFBb0IsQ0FBQztBQUM3QyxNQUFNLFdBQVcsR0FBRyxrQkFBa0IsQ0FBQztBQUN2QyxNQUFNLGtCQUFrQixHQUFHLGVBQWUsQ0FBQztBQUMzQyxNQUFNLGtCQUFrQixHQUFHLHlCQUF5QixDQUFDO0FBS3JELE1BQU0sT0FBTyxZQUFZO0lBQ0g7SUFBcEIsWUFBb0IsVUFBc0I7UUFBdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtJQUFHLENBQUM7SUFFOUMscUJBQXFCLENBQ25CLFFBQWdCLEVBQ2hCLFlBQW9CLEVBQ3BCLFFBQWdCLEVBQ2hCLFFBQWdCO1FBRWhCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsWUFBWSxFQUFFLHFCQUFxQixFQUFFLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDOUYsQ0FBQztJQUVELGNBQWMsQ0FBQyxRQUFnQixFQUFFLFlBQW9CLEVBQUUsSUFBWTtRQUNqRSxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDL0YsQ0FBQztJQUVELHNCQUFzQixDQUFDLFFBQWdCLEVBQUUsWUFBb0IsRUFBRSxZQUFvQjtRQUNqRixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLFlBQVksRUFBRSxrQkFBa0IsRUFBRTtZQUMvRCxhQUFhLEVBQUUsWUFBWTtTQUM1QixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FDaEMsWUFBWSxFQUNaLElBQUksQ0FBQyxJQUFJLEVBQ1Qsa0JBQWtCLEVBQ2xCLEVBQUUsQ0FDSCxDQUFDLElBQUksQ0FDSixVQUFVLENBQUMsQ0FBQyxHQUFzQixFQUFFLEVBQUU7WUFDcEMsSUFBSSxHQUFHLENBQUMsTUFBTSxLQUFLLEdBQUcsRUFBRSxDQUFDO2dCQUN2QixPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNsQixDQUFDO1lBRUQsT0FBTyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDL0IsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRCxNQUFNO1FBQ0osT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxHQUFHLEVBQUUsR0FBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxXQUFXLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ2hGLENBQUM7SUFFTyxRQUFRLENBQ2QsUUFBZ0IsRUFDaEIsWUFBb0IsRUFDcEIsU0FBaUIsRUFDakIsTUFBaUM7UUFFakMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FDakMsWUFBWSxFQUNaLElBQUksQ0FBQyxJQUFJLEVBQ1QsU0FBUyxFQUNULEVBQUUsRUFDRjtZQUNFLFNBQVMsRUFBRSxRQUFRO1lBQ25CLGFBQWEsRUFBRSxZQUFZO1lBQzNCLFVBQVUsRUFBRSxTQUFTO1lBQ3JCLEdBQUcsTUFBTTtTQUNWLENBQ0YsQ0FBQztJQUNKLENBQUM7dUdBN0RVLFlBQVk7MkdBQVosWUFBWSxjQUZYLE1BQU07OzJGQUVQLFlBQVk7a0JBSHhCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXBpU2VydmljZSB9IGZyb20gJy4vYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXBpVG9rZW4gfSBmcm9tICcuLi9hcGktbW9kZWxzJztcbmltcG9ydCB7IFJvbGUsIFRva2VuIH0gZnJvbSAnLi4vbW9kZWxzJztcbmltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IG9mLCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0b2tlbkZhY3RvcnkgfSBmcm9tICcuL2ZhY3Rvcmllcyc7XG5cbmNvbnN0IEJBU0VfUEFUSCA9ICdhY2NvdW50cy90b2tlbi8nO1xuY29uc3QgQ1JFREVOVElBTF9HUkFOVF9UWVBFID0gJ3Bhc3N3b3JkJztcbmNvbnN0IENPREVfR1JBTlRfVFlQRSA9ICdhdXRob3JpemF0aW9uX2NvZGUnO1xuY29uc3QgTE9HT1VUX1BBVEggPSAnYWNjb3VudHMvbG9nb3V0Lyc7XG5jb25zdCBSRUZSRVNIX0dSQU5UX1RZUEUgPSAncmVmcmVzaF90b2tlbic7XG5jb25zdCBTRVNTSU9OX1RPS0VOX1BBVEggPSAnYWNjb3VudHMvc2Vzc2lvbi10b2tlbi8nO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBUb2tlblNlcnZpY2Uge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFwaVNlcnZpY2U6IEFwaVNlcnZpY2UpIHt9XG5cbiAgZ2V0VG9rZW5CeUNyZWRlbnRpYWxzKFxuICAgIGNsaWVudElkOiBzdHJpbmcsXG4gICAgY2xpZW50U2VjcmV0OiBzdHJpbmcsXG4gICAgdXNlcm5hbWU6IHN0cmluZyxcbiAgICBwYXNzd29yZDogc3RyaW5nXG4gICkge1xuICAgIHJldHVybiB0aGlzLmdldFRva2VuKGNsaWVudElkLCBjbGllbnRTZWNyZXQsIENSRURFTlRJQUxfR1JBTlRfVFlQRSwgeyB1c2VybmFtZSwgcGFzc3dvcmQgfSk7XG4gIH1cblxuICBnZXRUb2tlbkJ5Q29kZShjbGllbnRJZDogc3RyaW5nLCBjbGllbnRTZWNyZXQ6IHN0cmluZywgY29kZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0VG9rZW4oY2xpZW50SWQsIGNsaWVudFNlY3JldCwgQ09ERV9HUkFOVF9UWVBFLCB7IGNvZGUsIGNvZGVfdmVyaWZpZXI6IGNvZGUgfSk7XG4gIH1cblxuICBnZXRUb2tlbkJ5UmVmcmVzaFRva2VuKGNsaWVudElkOiBzdHJpbmcsIGNsaWVudFNlY3JldDogc3RyaW5nLCByZWZyZXNoVG9rZW46IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmdldFRva2VuKGNsaWVudElkLCBjbGllbnRTZWNyZXQsIFJFRlJFU0hfR1JBTlRfVFlQRSwge1xuICAgICAgcmVmcmVzaF90b2tlbjogcmVmcmVzaFRva2VuXG4gICAgfSk7XG4gIH1cblxuICBnZXRUb2tlbkJ5U2Vzc2lvbigpIHtcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmdldFJlc291cmNlKFxuICAgICAgdG9rZW5GYWN0b3J5LFxuICAgICAgUm9sZS5Ob25lLFxuICAgICAgU0VTU0lPTl9UT0tFTl9QQVRILFxuICAgICAge31cbiAgICApLnBpcGUoXG4gICAgICBjYXRjaEVycm9yKChlcnI6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XG4gICAgICAgIGlmIChlcnIuc3RhdHVzID09PSA0MDEpIHtcbiAgICAgICAgICByZXR1cm4gb2YobnVsbCk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnIpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgbG9nb3V0KCkge1xuICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UucG9zdFJlc291cmNlKCgpID0+IHt9LCBSb2xlLk5vbmUsIExPR09VVF9QQVRILCB7fSwge30pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRUb2tlbihcbiAgICBjbGllbnRJZDogc3RyaW5nLFxuICAgIGNsaWVudFNlY3JldDogc3RyaW5nLFxuICAgIGdyYW50VHlwZTogc3RyaW5nLFxuICAgIHBhcmFtczogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfVxuICApIHtcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnBvc3RGb3JtRGF0YTxBcGlUb2tlbiwgVG9rZW4+KFxuICAgICAgdG9rZW5GYWN0b3J5LFxuICAgICAgUm9sZS5Ob25lLFxuICAgICAgQkFTRV9QQVRILFxuICAgICAge30sXG4gICAgICB7XG4gICAgICAgIGNsaWVudF9pZDogY2xpZW50SWQsXG4gICAgICAgIGNsaWVudF9zZWNyZXQ6IGNsaWVudFNlY3JldCxcbiAgICAgICAgZ3JhbnRfdHlwZTogZ3JhbnRUeXBlLFxuICAgICAgICAuLi5wYXJhbXNcbiAgICAgIH1cbiAgICApO1xuICB9XG59XG4iXX0=
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGEtYWNjZXNzL3NyYy9saWIvc2VydmljZXMvdG9rZW4uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE9BQU8sRUFBRSxJQUFJLEVBQVMsTUFBTSxXQUFXLENBQUM7QUFFeEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sRUFBYyxFQUFFLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxhQUFhLENBQUM7OztBQUUzQyxNQUFNLFNBQVMsR0FBRyxpQkFBaUIsQ0FBQztBQUNwQyxNQUFNLHFCQUFxQixHQUFHLFVBQVUsQ0FBQztBQUN6QyxNQUFNLGVBQWUsR0FBRyxvQkFBb0IsQ0FBQztBQUM3QyxNQUFNLFdBQVcsR0FBRyxrQkFBa0IsQ0FBQztBQUN2QyxNQUFNLGtCQUFrQixHQUFHLGVBQWUsQ0FBQztBQUMzQyxNQUFNLGtCQUFrQixHQUFHLHlCQUF5QixDQUFDO0FBS3JELE1BQU0sT0FBTyxZQUFZO0lBQ0g7SUFBcEIsWUFBb0IsVUFBc0I7UUFBdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtJQUFHLENBQUM7SUFFOUMscUJBQXFCLENBQ25CLFFBQWdCLEVBQ2hCLFlBQW9CLEVBQ3BCLFFBQWdCLEVBQ2hCLFFBQWdCO1FBRWhCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsWUFBWSxFQUFFLHFCQUFxQixFQUFFLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDOUYsQ0FBQztJQUVELGNBQWMsQ0FBQyxRQUFnQixFQUFFLFlBQW9CLEVBQUUsSUFBWTtRQUNqRSxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDL0YsQ0FBQztJQUVELHNCQUFzQixDQUFDLFFBQWdCLEVBQUUsWUFBb0IsRUFBRSxZQUEyQjtRQUN4RixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDbEIsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEIsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsWUFBWSxFQUFFLGtCQUFrQixFQUFFO1lBQy9ELGFBQWEsRUFBRSxZQUFZO1NBQzVCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxpQkFBaUI7UUFDZixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUNoQyxZQUFZLEVBQ1osSUFBSSxDQUFDLElBQUksRUFDVCxrQkFBa0IsRUFDbEIsRUFBRSxDQUNILENBQUMsSUFBSSxDQUNKLFVBQVUsQ0FBQyxDQUFDLEdBQXNCLEVBQUUsRUFBRTtZQUNwQyxJQUFJLEdBQUcsQ0FBQyxNQUFNLEtBQUssR0FBRyxFQUFFLENBQUM7Z0JBQ3ZCLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2xCLENBQUM7WUFFRCxPQUFPLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMvQixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVELE1BQU07UUFDSixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxHQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDaEYsQ0FBQztJQUVPLFFBQVEsQ0FDZCxRQUFnQixFQUNoQixZQUFvQixFQUNwQixTQUFpQixFQUNqQixNQUFpQztRQUVqQyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUNqQyxZQUFZLEVBQ1osSUFBSSxDQUFDLElBQUksRUFDVCxTQUFTLEVBQ1QsRUFBRSxFQUNGO1lBQ0UsU0FBUyxFQUFFLFFBQVE7WUFDbkIsYUFBYSxFQUFFLFlBQVk7WUFDM0IsVUFBVSxFQUFFLFNBQVM7WUFDckIsR0FBRyxNQUFNO1NBQ1YsQ0FDRixDQUFDO0lBQ0osQ0FBQzt1R0FqRVUsWUFBWTsyR0FBWixZQUFZLGNBRlgsTUFBTTs7MkZBRVAsWUFBWTtrQkFIeEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBcGlTZXJ2aWNlIH0gZnJvbSAnLi9hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBBcGlUb2tlbiB9IGZyb20gJy4uL2FwaS1tb2RlbHMnO1xuaW1wb3J0IHsgUm9sZSwgVG9rZW4gfSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBjYXRjaEVycm9yIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRva2VuRmFjdG9yeSB9IGZyb20gJy4vZmFjdG9yaWVzJztcblxuY29uc3QgQkFTRV9QQVRIID0gJ2FjY291bnRzL3Rva2VuLyc7XG5jb25zdCBDUkVERU5USUFMX0dSQU5UX1RZUEUgPSAncGFzc3dvcmQnO1xuY29uc3QgQ09ERV9HUkFOVF9UWVBFID0gJ2F1dGhvcml6YXRpb25fY29kZSc7XG5jb25zdCBMT0dPVVRfUEFUSCA9ICdhY2NvdW50cy9sb2dvdXQvJztcbmNvbnN0IFJFRlJFU0hfR1JBTlRfVFlQRSA9ICdyZWZyZXNoX3Rva2VuJztcbmNvbnN0IFNFU1NJT05fVE9LRU5fUEFUSCA9ICdhY2NvdW50cy9zZXNzaW9uLXRva2VuLyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFRva2VuU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYXBpU2VydmljZTogQXBpU2VydmljZSkge31cblxuICBnZXRUb2tlbkJ5Q3JlZGVudGlhbHMoXG4gICAgY2xpZW50SWQ6IHN0cmluZyxcbiAgICBjbGllbnRTZWNyZXQ6IHN0cmluZyxcbiAgICB1c2VybmFtZTogc3RyaW5nLFxuICAgIHBhc3N3b3JkOiBzdHJpbmdcbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0VG9rZW4oY2xpZW50SWQsIGNsaWVudFNlY3JldCwgQ1JFREVOVElBTF9HUkFOVF9UWVBFLCB7IHVzZXJuYW1lLCBwYXNzd29yZCB9KTtcbiAgfVxuXG4gIGdldFRva2VuQnlDb2RlKGNsaWVudElkOiBzdHJpbmcsIGNsaWVudFNlY3JldDogc3RyaW5nLCBjb2RlOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRUb2tlbihjbGllbnRJZCwgY2xpZW50U2VjcmV0LCBDT0RFX0dSQU5UX1RZUEUsIHsgY29kZSwgY29kZV92ZXJpZmllcjogY29kZSB9KTtcbiAgfVxuXG4gIGdldFRva2VuQnlSZWZyZXNoVG9rZW4oY2xpZW50SWQ6IHN0cmluZywgY2xpZW50U2VjcmV0OiBzdHJpbmcsIHJlZnJlc2hUb2tlbjogc3RyaW5nIHwgbnVsbCk6IE9ic2VydmFibGU8VG9rZW4gfCBudWxsPiB7XG4gICAgaWYgKCFyZWZyZXNoVG9rZW4pIHtcbiAgICAgIHJldHVybiBvZihudWxsKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5nZXRUb2tlbihjbGllbnRJZCwgY2xpZW50U2VjcmV0LCBSRUZSRVNIX0dSQU5UX1RZUEUsIHtcbiAgICAgIHJlZnJlc2hfdG9rZW46IHJlZnJlc2hUb2tlblxuICAgIH0pO1xuICB9XG5cbiAgZ2V0VG9rZW5CeVNlc3Npb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5nZXRSZXNvdXJjZShcbiAgICAgIHRva2VuRmFjdG9yeSxcbiAgICAgIFJvbGUuTm9uZSxcbiAgICAgIFNFU1NJT05fVE9LRU5fUEFUSCxcbiAgICAgIHt9XG4gICAgKS5waXBlKFxuICAgICAgY2F0Y2hFcnJvcigoZXJyOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xuICAgICAgICBpZiAoZXJyLnN0YXR1cyA9PT0gNDAxKSB7XG4gICAgICAgICAgcmV0dXJuIG9mKG51bGwpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGxvZ291dCgpIHtcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnBvc3RSZXNvdXJjZSgoKSA9PiB7fSwgUm9sZS5Ob25lLCBMT0dPVVRfUEFUSCwge30sIHt9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0VG9rZW4oXG4gICAgY2xpZW50SWQ6IHN0cmluZyxcbiAgICBjbGllbnRTZWNyZXQ6IHN0cmluZyxcbiAgICBncmFudFR5cGU6IHN0cmluZyxcbiAgICBwYXJhbXM6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH1cbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5wb3N0Rm9ybURhdGE8QXBpVG9rZW4sIFRva2VuPihcbiAgICAgIHRva2VuRmFjdG9yeSxcbiAgICAgIFJvbGUuTm9uZSxcbiAgICAgIEJBU0VfUEFUSCxcbiAgICAgIHt9LFxuICAgICAge1xuICAgICAgICBjbGllbnRfaWQ6IGNsaWVudElkLFxuICAgICAgICBjbGllbnRfc2VjcmV0OiBjbGllbnRTZWNyZXQsXG4gICAgICAgIGdyYW50X3R5cGU6IGdyYW50VHlwZSxcbiAgICAgICAgLi4ucGFyYW1zXG4gICAgICB9XG4gICAgKTtcbiAgfVxufVxuIl19
@@ -1,6 +1,7 @@
1
1
  import { createAction, props } from '@ngrx/store';
2
2
  export var CalendarActionTypes;
3
3
  (function (CalendarActionTypes) {
4
+ CalendarActionTypes["ClearTeamActivities"] = "[Calendar] Clear team activities";
4
5
  CalendarActionTypes["ListMemberActivities"] = "[Calendar] List member activities";
5
6
  CalendarActionTypes["ListMemberActivitiesFailure"] = "[Calendar] List member activities failure";
6
7
  CalendarActionTypes["ListMemberActivitiesSuccess"] = "[Calendar] List member activities success";
@@ -38,6 +39,7 @@ export var CalendarActionTypes;
38
39
  CalendarActionTypes["ListTeamActivitiesFailure"] = "[Calendar] List team activities failure";
39
40
  CalendarActionTypes["ListTeamActivitiesSuccess"] = "[Calendar] List team activities success";
40
41
  })(CalendarActionTypes || (CalendarActionTypes = {}));
42
+ export const clearTeamActivitiesAction = createAction(CalendarActionTypes.ClearTeamActivities);
41
43
  export const listMemberActivitiesAction = createAction(CalendarActionTypes.ListMemberActivities, props());
42
44
  export const listMemberActivitiesFailureAction = createAction(CalendarActionTypes.ListMemberActivitiesFailure, props());
43
45
  export const listMemberActivitiesSuccessAction = createAction(CalendarActionTypes.ListMemberActivitiesSuccess, props());
@@ -74,4 +76,4 @@ export const listPublicOpenActivityTypesSuccessAction = createAction(CalendarAct
74
76
  export const listTeamActivitiesAction = createAction(CalendarActionTypes.ListTeamActivities, props());
75
77
  export const listTeamActivitiesFailureAction = createAction(CalendarActionTypes.ListTeamActivitiesFailure, props());
76
78
  export const listTeamActivitiesSuccessAction = createAction(CalendarActionTypes.ListTeamActivitiesSuccess, props());
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIuYWN0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGEtYWNjZXNzL3NyYy9saWIvc3RvcmUvYWN0aW9ucy9jYWxlbmRhci5hY3Rpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBTWxELE1BQU0sQ0FBTixJQUFZLG1CQXFDWDtBQXJDRCxXQUFZLG1CQUFtQjtJQUM3QixpRkFBMEQsQ0FBQTtJQUMxRCxnR0FBeUUsQ0FBQTtJQUN6RSxnR0FBeUUsQ0FBQTtJQUN6RSwwRkFBbUUsQ0FBQTtJQUNuRSx5R0FBa0YsQ0FBQTtJQUNsRix5R0FBa0YsQ0FBQTtJQUNsRixnSEFBeUYsQ0FBQTtJQUN6RiwrSEFBd0csQ0FBQTtJQUN4RywrSEFBd0csQ0FBQTtJQUN4Ryx3R0FBaUYsQ0FBQTtJQUNqRix1SEFBZ0csQ0FBQTtJQUNoRyx1SEFBZ0csQ0FBQTtJQUNoRyxnSEFBeUYsQ0FBQTtJQUN6RiwrSEFBd0csQ0FBQTtJQUN4RywrSEFBd0csQ0FBQTtJQUN4Ryx3R0FBaUYsQ0FBQTtJQUNqRix1SEFBZ0csQ0FBQTtJQUNoRyx1SEFBZ0csQ0FBQTtJQUNoRyx5R0FBa0YsQ0FBQTtJQUNsRix3SEFBaUcsQ0FBQTtJQUNqRyx3SEFBaUcsQ0FBQTtJQUNqRyxpR0FBMEUsQ0FBQTtJQUMxRSxnSEFBeUYsQ0FBQTtJQUN6RixnSEFBeUYsQ0FBQTtJQUN6RiwwRkFBbUUsQ0FBQTtJQUNuRSx5R0FBa0YsQ0FBQTtJQUNsRix5R0FBa0YsQ0FBQTtJQUNsRix5R0FBa0YsQ0FBQTtJQUNsRix3SEFBaUcsQ0FBQTtJQUNqRyx3SEFBaUcsQ0FBQTtJQUNqRyxpR0FBMEUsQ0FBQTtJQUMxRSxnSEFBeUYsQ0FBQTtJQUN6RixnSEFBeUYsQ0FBQTtJQUN6Riw2RUFBc0QsQ0FBQTtJQUN0RCw0RkFBcUUsQ0FB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S0FBSyxFQUEwRixDQUNoRyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0saUNBQWlDLEdBQUcsWUFBWSxDQUMzRCxtQkFBbUIsQ0FBQywyQkFBMkIsRUFDL0MsS0FBSyxFQUF1RCxDQUM3RCxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sd0NBQXdDLEdBQUcsWUFBWSxDQUNsRSxtQkFBbUIsQ0FBQyxrQ0FBa0MsRUFDdEQsS0FBSyxFQUFrQyxDQUN4QyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sd0NBQXdDLEdBQUcsWUFBWSxDQUNsRSxtQkFBbUIsQ0FBQyxrQ0FBa0MsRUFDdEQsS0FBSyxFQUFrRixDQUN4RixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsWUFBWSxDQUNsRCxtQkFBbUIsQ0FBQyxrQkFBa0IsRUFDdEMsS0FBSyxFQUF1RSxDQUM3RSxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQUcsWUFBWSxDQUN6RCxtQkFBbUIsQ0FBQyx5QkFBeUIsRUFDN0MsS0FBSyxFQUFpRyxDQUN2RyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQUcsWUFBWSxDQUN6RCxtQkFBbUIsQ0FBQyx5QkFBeUIsRUFDN0MsS0FBSyxFQUE4RixDQUNwRyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlQWN0aW9uLCBwcm9wcyB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQWN0aXZpdHlMb2NhdGlvbiwgQWN0aXZpdHlUeXBlLCBFdmVudCwgT3BlbkFjdGl2aXR5IH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IE9wZW5BY3Rpdml0eVNlYXJjaFBhcmFtc0ludGVyZmFjZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuXG5cbmV4cG9ydCBlbnVtIENhbGVuZGFyQWN0aW9uVHlwZXMge1xuICBMaXN0TWVtYmVyQWN0aXZpdGllcyA9ICdbQ2FsZW5kYXJdIExpc3QgbWVtYmVyIGFjdGl2aXRpZXMnLFxuICBMaXN0TWVtYmVyQWN0aXZpdGllc0ZhaWx1cmUgPSAnW0NhbGVuZGFyXSBMaXN0IG1lbWJlciBhY3Rpdml0aWVzIGZhaWx1cmUnLFxuICBMaXN0TWVtYmVyQWN0aXZpdGllc1N1Y2Nlc3MgPSAnW0NhbGVuZGFyXSBMaXN0IG1lbWJlciBhY3Rpdml0aWVzIHN1Y2Nlc3MnLFxuICBMaXN0TWVtYmVyT3BlbkFjdGl2aXRpZXMgPSAnW0NhbGVuZGFyXSBMaXN0IG1lbWJlciBvcGVuIGFjdGl2aXRpZXMnLFxuICBMaXN0TWVtYmVyT3BlbkFjdGl2aXRpZXNGYWlsdXJlID0gJ1tDYWxlbmRhcl0gTGlzdCBtZW1iZXIgb3BlbiBhY3Rpdml0aWVzIGZhaWx1cmUnLFxuICBMaXN0TWVtYmVyT3BlbkFjdGl2aXRpZXNTdWNjZXNzID0gJ1tDYWxlbmRhcl0gTGlzdCBtZW1iZXIgb3BlbiBhY3Rpdml0aWVzIHN1Y2Nlc3MnLFxuICBMaXN0QWxsTWVtYmVyT3BlbkFjdGl2aXR5TG9jYXRpb25zID0gJ1tDYWxlbmRhcl0gTGlzdCBhbGwgbWVtYmVyIG9wZW4gYWN0aXZpdHkgbG9jYXRpb25zJyxcbiAgTGlzdEFsbE1lbWJlck9wZW5BY3Rpdml0eUxvY2F0aW9uc0ZhaWx1cmUgPSAnW0NhbGVuZGFyXSBMaXN0IGFsbCBtZW1iZXIgb3BlbiBhY3Rpdml0eSBsb2NhdGlvbnMgZmFpbHVyZScsXG4gIExpc3RBbGxNZW1iZXJPcGVuQWN0aXZpdHlMb2NhdGlvbnNTdWNjZXNzID0gJ1tDYWxlbmRhcl0gTGlzdCBhbGwgbWVtYmVyIG9wZW4gYWN0aXZpdHkgbG9jYXRpb25zIHN1Y2Nlc3MnLFxuICBMaXN0QWxsTWVtYmVyT3BlbkFjdGl2aXR5VHlwZXMgPSAnW0NhbGVuZGFyXSBMaXN0IGFsbCBtZW1iZXIgb3BlbiBhY3Rpdml0eSB0eXBlcycsXG4gIExpc3RBbGxNZW1iZXJPcGVuQWN0aXZpdHlUeXBlc0ZhaWx1cmUgPSAnW0NhbGVuZGFyXSBMaXN0IGFsbCBtZW1iZXIgb3BlbiBhY3Rpdml0eSB0eXBlcyBmYWlsdXJlJyxcbiAgTGlzdEFsbE1lbWJlck9wZW5BY3Rpdml0eVR5cGVzU3VjY2VzcyA9ICdbQ2FsZW5kYXJdIExpc3QgYWxsIG1lbWJlciBvcGVuIGFjdGl2aXR5IHR5cGVzIHN1Y2Nlc3MnLFxuICBMaXN0QWxsUHVibGljT3BlbkFjdGl2aXR5TG9jYXRpb25zID0gJ1tDYWxlbmRhcl0gTGlzdCBhbGwgcHVibGljIG9wZW4gYWN0aXZpdHkgbG9jYXRpb25zJyxcbiAgTGlzdEFsbFB1YmxpY09wZW5BY3Rpdml0eUxvY2F0aW9uc0ZhaWx1cmUgPSAnW0NhbGVuZGFyXSBMaXN0IGFsbCBwdWJsaWMgb3BlbiBhY3Rpdml0eSBsb2NhdGlvbnMgZmFpbHVyZScsXG4gIExpc3RBbGxQdWJsaWNPcGVuQWN0aXZpdHlMb2NhdGlvbnNTdWNjZXNzID0gJ1tDYWxlbmRhcl0gTGlzdCBhbGwgcHVibGljIG9wZW4gYWN0aXZpdHkgbG9jYXRpb25zIHN1Y2Nlc3MnLFxuICBMaXN0QWxsUHVibGljT3BlbkFjdGl2aXR5VHlwZXMgPSAnW0NhbGVuZGFyXSBMaXN0IGFsbCBwdWJsaWMgb3BlbiBhY3Rpdml0eSB0eXBlcycsXG4gIExpc3RBbGxQdWJsaWNPcGVuQWN0aXZpdHlUeXBlc0ZhaWx1cmUgPSAnW0NhbGVuZGFyXSBMaXN0IGFsbCBwdWJsaWMgb3BlbiBhY3Rpdml0eSB0eXBlcyBmYWlsdXJlJyxcbiAgTGlzdEFsbFB1YmxpY09wZW5BY3Rpdml0eVR5cGVzU3VjY2VzcyA9ICdbQ2FsZW5kYXJdIExpc3QgYWxsIHB1YmxpYyBvcGVuIGFjdGl2aXR5IHR5cGVzIHN1Y2Nlc3MnLFxuICBMaXN0TWVtYmVyT3BlbkFjdGl2aXR5TG9jYXRpb25zID0gJ1tDYWxlbmRhcl0gTGlzdCBtZW1iZXIgb3BlbiBhY3Rpdml0eSBsb2NhdGlvbnMnLFxuICBMaXN0TWVtYmVyT3BlbkFjdGl2aXR5TG9jYXRpb25zRmFpbHVyZSA9ICdbQ2FsZW5kYXJdIExpc3QgbWVtYmVyIG9wZW4gYWN0aXZpdHkgbG9jYXRpb25zIGZhaWx1cmUnLFxuICBMaXN0TWVtYmVyT3BlbkFjdGl2aXR5TG9jYXRpb25zU3VjY2VzcyA9ICdbQ2FsZW5kYXJdIExpc3QgbWVtYmVyIG9wZW4gYWN0aXZpdHkgbG9jYXRpb25zIHN1Y2Nlc3MnLFxuICBMaXN0TWVtYmVyT3BlbkFjdGl2aXR5VHlwZXMgPSAnW0NhbGVuZGFyXSBMaXN0IG1lbWJlciBvcGVuIGFjdGl2aXR5IHR5cGVzJyxcbiAgTGlzdE1lbWJlck9wZW5BY3Rpdml0eVR5cGVzRmFpbHVyZSA9ICdbQ2FsZW5kYXJdIExpc3QgbWVtYmVyIG9wZW4gYWN0aXZpdHkgdHlwZXMgZmFpbHVyZScsXG4gIExpc3RNZW1iZXJPcGVuQWN0aXZpdHlUeXBlc1N1Y2Nlc3MgPSAnW0NhbGVuZGFyXSBMaXN0IG1lbWJlciBvcGVuIGFjdGl2aXR5IHR5cGVzIHN1Y2Nlc3MnLFxuICBMaXN0UHVibGljT3BlbkFjdGl2aXRpZXMgPSAnW0NhbGVuZGFyXSBMaXN0IHB1YmxpYyBvcGVuIGFjdGl2aXRpZXMnLFxuICBMaXN0UHVibGljT3BlbkFjdGl2aXRpZXNGYWlsdXJlID0gJ1tDYWxlbmRhcl0gTGlzdCBwdWJsaWMgb3BlbiBhY3Rpdml0aWVzIGZhaWx1cmUnLFxuICBMaXN0UHVibGljT3BlbkFjdGl2aXRpZXNTdWNjZXNzID0gJ1tDYWxlbmRhcl0gTGlzdCBwdWJsaWMgb3BlbiBhY3Rpdml0aWVzIHN1Y2Nlc3MnLFxuICBMaXN0UHVibGljT3BlbkFjdGl2aXR5TG9jYXRpb25zID0gJ1tDYWxlbmRhcl0gTGlzdCBwdWJsaWMgb3BlbiBhY3Rpdml0eSBsb2NhdGlvbnMnLFxuICBMaXN0UHVibGljT3BlbkFjdGl2aXR5TG9jYXRpb25zRmFpbHVyZSA9ICdbQ2FsZW5kYXJdIExpc3QgcHVibGljIG9wZW4gYWN0aXZpdHkgbG9jYXRpb25zIGZhaWx1cmUnLFxuICBMaXN0UHVibGljT3BlbkFjdGl2aXR5TG9jYXRpb25zU3VjY2VzcyA9ICdbQ2FsZW5kYXJdIExpc3QgcHVibGljIG9wZW4gYWN0aXZpdHkgbG9jYXRpb25zIHN1Y2Nlc3MnLFxuICBMaXN0UHVibGljT3BlbkFjdGl2aXR5VHlwZXMgPSAnW0NhbGVuZGFyXSBMaXN0IHB1YmxpYyBvcGVuIGFjdGl2aXR5IHR5cGVzJyxcbiAgTGlzdFB1YmxpY09wZW5BY3Rpdml0eVR5cGVzRmFpbHVyZSA9ICdbQ2FsZW5kYXJdIExpc3QgcHVibGljIG9wZW4gYWN0aXZpdHkgdHlwZXMgZmFpbHVyZScsXG4gIExpc3RQdWJsaWNPcGVuQWN0aXZpdHlUeXBlc1N1Y2Nlc3MgPSAnW0NhbGVuZGFyXSBMaXN0IHB1YmxpYyBvcGVuIGFjdGl2aXR5IHR5cGVzIHN1Y2Nlc3MnLFxuICBMaXN0VGVhbUFjdGl2aXRpZXMgPSAnW0NhbGVuZGFyXSBMaXN0IHRlYW0gYWN0aXZpdGllcycsXG4gIExpc3RUZWFtQWN0aXZpdGllc0ZhaWx1cmUgPSAnW0NhbGVuZGFyXSBMaXN0IHRlYW0gYWN0aXZpdGllcyBmYWlsdXJlJyxcbiAgTGlzdFRlYW1BY3Rpdml0aWVzU3VjY2VzcyA9ICdbQ2FsZW5kYXJdIExpc3QgdGVhbSBhY3Rpdml0aWVzIHN1Y2Nlc3MnLFxufVxuXG5leHBvcnQgY29uc3QgbGlzdE1lbWJlckFjdGl2aXRpZXNBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdE1lbWJlckFjdGl2aXRpZXMsXG4gIHByb3BzPHsgcGF5bG9hZDogeyBtZW1iZXJJZHM6IEFycmF5PHN0cmluZz4sIHN0YXJ0RGF0ZTogc3RyaW5nLCBlbmREYXRlOiBzdHJpbmcgfSB9PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdE1lbWJlckFjdGl2aXRpZXNGYWlsdXJlQWN0aW9uID0gY3JlYXRlQWN0aW9uKFxuICBDYWxlbmRhckFjdGlvblR5cGVzLkxpc3RNZW1iZXJBY3Rpdml0aWVzRmFpbHVyZSxcbiAgcHJvcHM8eyBwYXlsb2FkOiB7IG1lbWJlcklkczogQXJyYXk8c3RyaW5nPiwgc3RhcnREYXRlOiBzdHJpbmcsIGVuZERhdGU6IHN0cmluZywgZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlIH0gfT4oKVxuKTtcblxuZXhwb3J0IGNvbnN0IGxpc3RNZW1iZXJBY3Rpdml0aWVzU3VjY2Vzc0FjdGlvbiA9IGNyZWF0ZUFjdGlvbihcbiAgQ2FsZW5kYXJBY3Rpb25UeXBlcy5MaXN0TWVtYmVyQWN0aXZpdGllc1N1Y2Nlc3MsXG4gIHByb3BzPHtcbiAgICBwYXlsb2FkOiB7IG1lbWJlcklkczogQXJyYXk8c3RyaW5nPiwgc3RhcnREYXRlOiBzdHJpbmcsIGVuZERhdGU6IHN0cmluZywgcmVzdWx0czogTWFwPHN0cmluZywgQXJyYXk8RXZlbnQ+PiB9XG4gIH0+KClcbik7XG5cbmV4cG9ydCBjb25zdCBsaXN0TWVtYmVyT3BlbkFjdGl2aXRpZXNBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdE1lbWJlck9wZW5BY3Rpdml0aWVzLFxuICBwcm9wczx7IHBheWxvYWQ6IHsgbWVtYmVySWRzOiBBcnJheTxzdHJpbmc+LCBvcGVuQWN0aXZpdHlTZWFyY2hQYXJhbXM6IE9wZW5BY3Rpdml0eVNlYXJjaFBhcmFtc0ludGVyZmFjZSB9IH0+KClcbik7XG5cbmV4cG9ydCBjb25zdCBsaXN0TWVtYmVyT3BlbkFjdGl2aXRpZXNGYWlsdXJlQWN0aW9uID0gY3JlYXRlQWN0aW9uKFxuICBDYWxlbmRhckFjdGlvblR5cGVzLkxpc3RNZW1iZXJPcGVuQWN0aXZpdGllc0ZhaWx1cmUsXG4gIHByb3BzPHtcbiAgICBwYXlsb2FkOiB7XG4gICAgICBtZW1iZXJJZHM6IEFycmF5PHN0cmluZz4sXG4gICAgICBvcGVuQWN0aXZpdHlTZWFyY2hQYXJhbXM6IE9wZW5BY3Rpdml0eVNlYXJjaFBhcmFtc0ludGVyZmFjZSxcbiAgICAgIGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZVxuICAgIH1cbiAgfT4oKVxuKTtcblxuZXhwb3J0IGNvbnN0IGxpc3RNZW1iZXJPcGVuQWN0aXZpdGllc1N1Y2Nlc3NBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdE1lbWJlck9wZW5BY3Rpdml0aWVzU3VjY2VzcyxcbiAgcHJvcHM8e1xuICAgIHBheWxvYWQ6IHtcbiAgICAgIG1lbWJlcklkczogQXJyYXk8c3RyaW5nPixcbiAgICAgIG9wZW5BY3Rpdml0eVNlYXJjaFBhcmFtczogT3BlbkFjdGl2aXR5U2VhcmNoUGFyYW1zSW50ZXJmYWNlLFxuICAgICAgcmVzdWx0czogTWFwPHN0cmluZywgQXJyYXk8T3BlbkFjdGl2aXR5Pj5cbiAgICB9XG4gIH0+KClcbik7XG5cbmV4cG9ydCBjb25zdCBsaXN0QWxsTWVtYmVyT3BlbkFjdGl2aXR5TG9jYXRpb25zQWN0aW9uID0gY3JlYXRlQWN0aW9uKFxuICBDYWxlbmRhckFjdGlvblR5cGVzLkxpc3RBbGxNZW1iZXJPcGVuQWN0aXZpdHlMb2NhdGlvbnMsXG4gIHByb3BzPHsgcGF5bG9hZDogc3RyaW5nfT4oKVxuKTtcblxuZXhwb3J0IGNvbnN0IGxpc3RBbGxNZW1iZXJPcGVuQWN0aXZpdHlMb2NhdGlvbnNGYWlsdXJlQWN0aW9uID0gY3JlYXRlQWN0aW9uKFxuICBDYWxlbmRhckFjdGlvblR5cGVzLkxpc3RBbGxNZW1iZXJPcGVuQWN0aXZpdHlMb2NhdGlvbnNGYWlsdXJlLFxuICBwcm9wczx7IHBheWxvYWQ6IEh0dHBFcnJvclJlc3BvbnNlIH0+KClcbik7XG5cbmV4cG9ydCBjb25zdCBsaXN0QWxsTWVtYmVyT3BlbkFjdGl2aXR5TG9jYXRpb25zU3VjY2Vzc0FjdGlvbiA9IGNyZWF0ZUFjdGlvbihcbiAgQ2FsZW5kYXJBY3Rpb25UeXBlcy5MaXN0QWxsTWVtYmVyT3BlbkFjdGl2aXR5TG9jYXRpb25zU3VjY2VzcyxcbiAgcHJvcHM8eyBwYXlsb2FkOiBBcnJheTxBY3Rpdml0eUxvY2F0aW9uPiB9PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdEFsbE1lbWJlck9wZW5BY3Rpdml0eVR5cGVzQWN0aW9uID0gY3JlYXRlQWN0aW9uKFxuICBDYWxlbmRhckFjdGlvblR5cGVzLkxpc3RBbGxNZW1iZXJPcGVuQWN0aXZpdHlUeXBlcyxcbiAgcHJvcHM8eyBwYXlsb2FkOiBzdHJpbmcgfT4oKVxuKTtcblxuZXhwb3J0IGNvbnN0IGxpc3RBbGxNZW1iZXJPcGVuQWN0aXZpdHlUeXBlc0ZhaWx1cmVBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdEFsbE1lbWJlck9wZW5BY3Rpdml0eVR5cGVzRmFpbHVyZSxcbiAgcHJvcHM8eyBwYXlsb2FkOiBIdHRwRXJyb3JSZXNwb25zZSB9PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdEFsbE1lbWJlck9wZW5BY3Rpdml0eVR5cGVzU3VjY2Vzc0FjdGlvbiA9IGNyZWF0ZUFjdGlvbihcbiAgQ2FsZW5kYXJBY3Rpb25UeXBlcy5MaXN0QWxsTWVtYmVyT3BlbkFjdGl2aXR5VHlwZXNTdWNjZXNzLFxuICBwcm9wczx7IHBheWxvYWQ6IEFycmF5PEFjdGl2aXR5VHlwZT4gfT4oKVxuKTtcblxuZXhwb3J0IGNvbnN0IGxpc3RBbGxQdWJsaWNPcGVuQWN0aXZpdHlMb2NhdGlvbnNBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdEFsbFB1YmxpY09wZW5BY3Rpdml0eUxvY2F0aW9uc1xuKTtcblxuZXhwb3J0IGNvbnN0IGxpc3RBbGxQdWJsaWNPcGVuQWN0aXZpdHlMb2NhdGlvbnNGYWlsdXJlQWN0aW9uID0gY3JlYXRlQWN0aW9uKFxuICBDYWxlbmRhckFjdGlvblR5cGVzLkxpc3RBbGxQdWJsaWNPcGVuQWN0aXZpdHlMb2NhdGlvbnNGYWlsdXJlLFxuICBwcm9wczx7IHBheWxvYWQ6IEh0dHBFcnJvclJlc3BvbnNlIH0+KClcbik7XG5cbmV4cG9ydCBjb25zdCBsaXN0QWxsUHVibGljT3BlbkFjdGl2aXR5TG9jYXRpb25zU3VjY2Vzc0FjdGlvbiA9IGNyZWF0ZUFjdGlvbihcbiAgQ2FsZW5kYXJBY3Rpb25UeXBlcy5MaXN0QWxsUHVibGljT3BlbkFjdGl2aXR5TG9jYXRpb25zU3VjY2VzcyxcbiAgcHJvcHM8eyBwYXlsb2FkOiBBcnJheTxBY3Rpdml0eUxvY2F0aW9uPiB9PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdEFsbFB1YmxpY09wZW5BY3Rpdml0eVR5cGVzQWN0aW9uID0gY3JlYXRlQWN0aW9uKFxuICBDYWxlbmRhckFjdGlvblR5cGVzLkxpc3RBbGxQdWJsaWNPcGVuQWN0aXZpdHlUeXBlc1xuKTtcblxuZXhwb3J0IGNvbnN0IGxpc3RBbGxQdWJsaWNPcGVuQWN0aXZpdHlUeXBlc0ZhaWx1cmVBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdEFsbFB1YmxpY09wZW5BY3Rpdml0eVR5cGVzRmFpbHVyZSxcbiAgcHJvcHM8eyBwYXlsb2FkOiBIdHRwRXJyb3JSZXNwb25zZSB9PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdEFsbFB1YmxpY09wZW5BY3Rpdml0eVR5cGVzU3VjY2Vzc0FjdGlvbiA9IGNyZWF0ZUFjdGlvbihcbiAgQ2FsZW5kYXJBY3Rpb25UeXBlcy5MaXN0QWxsUHVibGljT3BlbkFjdGl2aXR5VHlwZXNTdWNjZXNzLFxuICBwcm9wczx7IHBheWxvYWQ6IEFycmF5PEFjdGl2aXR5VHlwZT4gfT4oKVxuKTtcblxuZXhwb3J0IGNvbnN0IGxpc3RNZW1iZXJPcGVuQWN0aXZpdHlMb2NhdGlvbnNBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdE1lbWJlck9wZW5BY3Rpdml0eUxvY2F0aW9ucyxcbiAgcHJvcHM8eyBwYXlsb2FkOiB7IG1lbWJlcklkOiBzdHJpbmcsIHN0YXJ0RGF0ZTogc3RyaW5nLCBlbmREYXRlOiBzdHJpbmcgfSB9PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdE1lbWJlck9wZW5BY3Rpdml0eUxvY2F0aW9uc0ZhaWx1cmVBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdE1lbWJlck9wZW5BY3Rpdml0eUxvY2F0aW9uc0ZhaWx1cmUsXG4gIHByb3BzPHsgcGF5bG9hZDogeyBtZW1iZXJJZDogc3RyaW5nLCBzdGFydERhdGU6IHN0cmluZywgZW5kRGF0ZTogc3RyaW5nLCBlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UgfSB9PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdE1lbWJlck9wZW5BY3Rpdml0eUxvY2F0aW9uc1N1Y2Nlc3NBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdE1lbWJlck9wZW5BY3Rpdml0eUxvY2F0aW9uc1N1Y2Nlc3MsXG4gIHByb3BzPHsgcGF5bG9hZDogeyBtZW1iZXJJZDogc3RyaW5nLCBzdGFydERhdGU6IHN0cmluZywgZW5kRGF0ZTogc3RyaW5nLCBsb2NhdGlvbnM6IEFycmF5PEFjdGl2aXR5TG9jYXRpb24+IH19PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdE1lbWJlck9wZW5BY3Rpdml0eVR5cGVzQWN0aW9uID0gY3JlYXRlQWN0aW9uKFxuICBDYWxlbmRhckFjdGlvblR5cGVzLkxpc3RNZW1iZXJPcGVuQWN0aXZpdHlUeXBlcyxcbiAgcHJvcHM8eyBwYXlsb2FkOiB7IG1lbWJlcklkOiBzdHJpbmcsIHN0YXJ0RGF0ZTogc3RyaW5nLCBlbmREYXRlOiBzdHJpbmcgfSB9PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdE1lbWJlck9wZW5BY3Rpdml0eVR5cGVzRmFpbHVyZUFjdGlvbiA9IGNyZWF0ZUFjdGlvbihcbiAgQ2FsZW5kYXJBY3Rpb25UeXBlcy5MaXN0TWVtYmVyT3BlbkFjdGl2aXR5VHlwZXNGYWlsdXJlLFxuICBwcm9wczx7IHBheWxvYWQ6IHsgbWVtYmVySWQ6IHN0cmluZywgc3RhcnREYXRlOiBzdHJpbmcsIGVuZERhdGU6IHN0cmluZywgZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlIH0gfT4oKVxuKTtcblxuZXhwb3J0IGNvbnN0IGxpc3RNZW1iZXJPcGVuQWN0aXZpdHlUeXBlc1N1Y2Nlc3NBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdE1lbWJlck9wZW5BY3Rpdml0eVR5cGVzU3VjY2VzcyxcbiAgcHJvcHM8eyBwYXlsb2FkOiB7IG1lbWJlcklkOiBzdHJpbmcsIHN0YXJ0RGF0ZTogc3RyaW5nLCBlbmREYXRlOiBzdHJpbmcsIHR5cGVzOiBBcnJheTxBY3Rpdml0eVR5cGU+IH19PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdFB1YmxpY09wZW5BY3Rpdml0aWVzQWN0aW9uID0gY3JlYXRlQWN0aW9uKFxuICBDYWxlbmRhckFjdGlvblR5cGVzLkxpc3RQdWJsaWNPcGVuQWN0aXZpdGllcyxcbiAgcHJvcHM8eyBwYXlsb2FkOiBPcGVuQWN0aXZpdHlTZWFyY2hQYXJhbXNJbnRlcmZhY2UgfT4oKVxuKTtcblxuZXhwb3J0IGNvbnN0IGxpc3RQdWJsaWNPcGVuQWN0aXZpdGllc0ZhaWx1cmVBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdFB1YmxpY09wZW5BY3Rpdml0aWVzRmFpbHVyZSxcbiAgcHJvcHM8eyBwYXlsb2FkOiBIdHRwRXJyb3JSZXNwb25zZSB9PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdFB1YmxpY09wZW5BY3Rpdml0aWVzU3VjY2Vzc0FjdGlvbiA9IGNyZWF0ZUFjdGlvbihcbiAgQ2FsZW5kYXJBY3Rpb25UeXBlcy5MaXN0UHVibGljT3BlbkFjdGl2aXRpZXNTdWNjZXNzLFxuICBwcm9wczx7IHBheWxvYWQ6IHtcbiAgICBvcGVuQWN0aXZpdHlTZWFyY2hQYXJhbXM6IE9wZW5BY3Rpdml0eVNlYXJjaFBhcmFtc0ludGVyZmFjZSxcbiAgICByZXN1bHRzOiBBcnJheTxPcGVuQWN0aXZpdHk+XG4gIH19PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdFB1YmxpY09wZW5BY3Rpdml0eUxvY2F0aW9uc0FjdGlvbiA9IGNyZWF0ZUFjdGlvbihcbiAgQ2FsZW5kYXJBY3Rpb25UeXBlcy5MaXN0UHVibGljT3BlbkFjdGl2aXR5TG9jYXRpb25zLFxuICBwcm9wczx7IHBheWxvYWQ6IHsgc3RhcnREYXRlOiBzdHJpbmcsIGVuZERhdGU6IHN0cmluZyB9IH0+KClcbik7XG5cbmV4cG9ydCBjb25zdCBsaXN0UHVibGljT3BlbkFjdGl2aXR5TG9jYXRpb25zRmFpbHVyZUFjdGlvbiA9IGNyZWF0ZUFjdGlvbihcbiAgQ2FsZW5kYXJBY3Rpb25UeXBlcy5MaXN0UHVibGljT3BlbkFjdGl2aXR5TG9jYXRpb25zRmFpbHVyZSxcbiAgcHJvcHM8eyBwYXlsb2FkOiBIdHRwRXJyb3JSZXNwb25zZSB9PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdFB1YmxpY09wZW5BY3Rpdml0eUxvY2F0aW9uc1N1Y2Nlc3NBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdFB1YmxpY09wZW5BY3Rpdml0eUxvY2F0aW9uc1N1Y2Nlc3MsXG4gIHByb3BzPHsgcGF5bG9hZDogeyBzdGFydERhdGU6IHN0cmluZywgZW5kRGF0ZTogc3RyaW5nLCBsb2NhdGlvbnM6IEFycmF5PEFjdGl2aXR5TG9jYXRpb24+IH19PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdFB1YmxpY09wZW5BY3Rpdml0eVR5cGVzQWN0aW9uID0gY3JlYXRlQWN0aW9uKFxuICBDYWxlbmRhckFjdGlvblR5cGVzLkxpc3RQdWJsaWNPcGVuQWN0aXZpdHlUeXBlcyxcbiAgcHJvcHM8eyBwYXlsb2FkOiB7IHN0YXJ0RGF0ZTogc3RyaW5nLCBlbmREYXRlOiBzdHJpbmcgfSB9PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdFB1YmxpY09wZW5BY3Rpdml0eVR5cGVzRmFpbHVyZUFjdGlvbiA9IGNyZWF0ZUFjdGlvbihcbiAgQ2FsZW5kYXJBY3Rpb25UeXBlcy5MaXN0UHVibGljT3BlbkFjdGl2aXR5VHlwZXNGYWlsdXJlLFxuICBwcm9wczx7IHBheWxvYWQ6IEh0dHBFcnJvclJlc3BvbnNlIH0+KClcbik7XG5cbmV4cG9ydCBjb25zdCBsaXN0UHVibGljT3BlbkFjdGl2aXR5VHlwZXNTdWNjZXNzQWN0aW9uID0gY3JlYXRlQWN0aW9uKFxuICBDYWxlbmRhckFjdGlvblR5cGVzLkxpc3RQdWJsaWNPcGVuQWN0aXZpdHlUeXBlc1N1Y2Nlc3MsXG4gIHByb3BzPHsgcGF5bG9hZDogeyBzdGFydERhdGU6IHN0cmluZywgZW5kRGF0ZTogc3RyaW5nLCB0eXBlczogQXJyYXk8QWN0aXZpdHlUeXBlPiB9fT4oKVxuKTtcblxuZXhwb3J0IGNvbnN0IGxpc3RUZWFtQWN0aXZpdGllc0FjdGlvbiA9IGNyZWF0ZUFjdGlvbihcbiAgQ2FsZW5kYXJBY3Rpb25UeXBlcy5MaXN0VGVhbUFjdGl2aXRpZXMsXG4gIHByb3BzPHsgcGF5bG9hZDogeyB0ZWFtSWQ6IHN0cmluZywgc3RhcnREYXRlOiBzdHJpbmcsIGVuZERhdGU6IHN0cmluZyB9IH0+KClcbik7XG5cbmV4cG9ydCBjb25zdCBsaXN0VGVhbUFjdGl2aXRpZXNGYWlsdXJlQWN0aW9uID0gY3JlYXRlQWN0aW9uKFxuICBDYWxlbmRhckFjdGlvblR5cGVzLkxpc3RUZWFtQWN0aXZpdGllc0ZhaWx1cmUsXG4gIHByb3BzPHsgcGF5bG9hZDogeyB0ZWFtSWQ6IHN0cmluZywgc3RhcnREYXRlOiBzdHJpbmcsIGVuZERhdGU6IHN0cmluZywgZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlIH0gfT4oKVxuKTtcblxuZXhwb3J0IGNvbnN0IGxpc3RUZWFtQWN0aXZpdGllc1N1Y2Nlc3NBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdFRlYW1BY3Rpdml0aWVzU3VjY2VzcyxcbiAgcHJvcHM8eyBwYXlsb2FkOiB7IHRlYW1JZDogc3RyaW5nLCBzdGFydERhdGU6IHN0cmluZywgZW5kRGF0ZTogc3RyaW5nLCByZXN1bHRzOiBBcnJheTxFdmVudD4gfSB9PigpXG4pO1xuIl19
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIuYWN0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGEtYWNjZXNzL3NyYy9saWIvc3RvcmUvYWN0aW9ucy9jYWxlbmRhci5hY3Rpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBTWxELE1BQU0sQ0FBTixJQUFZLG1CQXNDWDtBQXRDRCxXQUFZLG1CQUFtQjtJQUM3QiwrRUFBd0QsQ0FBQTtJQUN4RCxpRkFBMEQsQ0FBQTtJQUMxRCxnR0FBeUUsQ0FBQTtJQUN6RSxnR0FBeUUsQ0FBQTtJQUN6RSwwRkFBbUUsQ0FBQTtJQUNuRSx5R0FBa0YsQ0FBQTtJQUNsRix5R0FBa0YsQ0FBQTtJQUNsRixnSEFBeUYsQ0FBQTtJQUN6RiwrSEFBd0csQ0FBQTtJQUN4RywrSEFBd0csQ0FBQTtJQUN4Ryx3R0FBaUYsQ0FBQTtJQUNqRix1SEFBZ0csQ0FBQTtJQUNoRyx1SEFBZ0csQ0FBQTtJQUNoRyxnSEFBeUYsQ0FBQTtJQUN6RiwrSEFBd0csQ0FBQTtJQUN4RywrSEFBd0csQ0FBQTtJQUN4Ryx3R0FBaUYsQ0FBQTtJQUNqRix1SEFBZ0csQ0FBQTtJQUNoRyx1SEFBZ0csQ0FBQTtJQUNoRyx5R0FBa0YsQ0FBQTtJQUNsRix3SEFBaUcsQ0FBQTtJQUNqRyx3SEFBaUcsQ0FBQTtJQUNqRyxpR0FBMEUsQ0FBQTtJQUMxRSxnSEFBeUYsQ0FBQTtJQUN6RixnSEFBeUYsQ0FBQTtJQUN6RiwwRkFBbUUsQ0FBQTtJQUNuRSx5R0FBa0YsQ0FBQTtJQUNsRix5R0FBa0YsQ0FBQTtJQUNsRix5R0FBa0YsQ0FBQTtJQUNsRix3SEFBaUcsQ0FBQTtJQUNqRyx3SEFBaUcsQ0FBQTtJQUNqRyxpR0FBMEUsQ0FBQTtJQUMxRSxnSEFBeUYsQ0FBQTtJQUN6RixnSEFBeUYsQ0FBQTtJQUN6Riw2RUFBc0QsQ0FBQTtJQUN0RCw0RkFBcUUsQ0FBQTtJQUNyRSw0RkFBcUUsQ0FBQTtBQUN2RSxDQUFDLEVBdENXLG1CQUFtQixLQUFuQixtQkFBbUIsUUFzQzlCO0FBRUQsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsWUFBWSxDQUNuRCxtQkFBbUIsQ0FBQyxtQkFBbUIsQ0FDeEMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLFlBQVksQ0FDcEQsbUJBQW1CLENBQUMsb0JBQW9CLEVBQ3hDLEtBQUssRUFBaUYsQ0FDdkYsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGlDQUFpQyxHQUFHLFlBQVksQ0FDM0QsbUJBQW1CLENBQUMsMkJBQTJCLEVBQy9DLEtBQUssRUFBMkcsQ0FDakgsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGlDQUFpQyxHQUFHLFlBQVksQ0FDM0QsbUJBQW1CLENBQUMsMkJBQTJCLEVBQy9DLEtBQUssRUFFRCxDQUNMLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSw4QkFBOEIsR0FBRyxZQUFZLENBQ3hELG1CQUFtQixDQUFDLHdCQUF3QixFQUM1QyxLQUFLLEVBQTBHLENBQ2hILENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxxQ0FBcUMsR0FBRyxZQUFZLENBQy9ELG1CQUFtQixDQUFDLCtCQUErQixFQUNuRCxLQUFLLEVBTUQsQ0FDTCxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0scUNBQXFDLEdBQUcsWUFBWSxDQUMvRCxtQkFBbUIsQ0FBQywrQkFBK0IsRUFDbkQsS0FBSyxFQU1ELENBQ0wsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHdDQUF3QyxHQUFHLFlBQVksQ0FDbEUsbUJBQW1CLENBQUMsa0NBQWtDLEVBQ3RELEtBQUssRUFBc0IsQ0FDNUIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLCtDQUErQyxHQUFHLFlBQVksQ0FDekUsbUJBQW1CLENBQUMseUNBQXlDLEVBQzdELEtBQUssRUFBa0MsQ0FDeEMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLCtDQUErQyxHQUFHLFlBQVksQ0FDekUsbUJBQW1CLENBQUMseUNBQXlDLEVBQzdELEtBQUssRUFBd0MsQ0FDOUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLG9DQUFvQyxHQUFHLFlBQVksQ0FDOUQsbUJBQW1CLENBQUMsOEJBQThCLEVBQ2xELEtBQUssRUFBdUIsQ0FDN0IsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLDJDQUEyQyxHQUFHLFlBQVksQ0FDckUsbUJBQW1CLENBQUMscUNBQXFDLEVBQ3pELEtBQUssRUFBa0MsQ0FDeEMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLDJDQUEyQyxHQUFHLFlBQVksQ0FDckUsbUJBQW1CLENBQUMscUNBQXFDLEVBQ3pELEtBQUssRUFBb0MsQ0FDMUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHdDQUF3QyxHQUFHLFlBQVksQ0FDbEUsbUJBQW1CLENBQUMsa0NBQWtDLENBQ3ZELENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSwrQ0FBK0MsR0FBRyxZQUFZLENBQ3pFLG1CQUFtQixDQUFDLHlDQUF5QyxFQUM3RCxLQUFLLEVBQWtDLENBQ3hDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSwrQ0FBK0MsR0FBRyxZQUFZLENBQ3pFLG1CQUFtQixDQUFDLHlDQUF5QyxFQUM3RCxLQUFLLEVBQXdDLENBQzlDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxvQ0FBb0MsR0FBRyxZQUFZLENBQzlELG1CQUFtQixDQUFDLDhCQUE4QixDQUNuRCxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sMkNBQTJDLEdBQUcsWUFBWSxDQUNyRSxtQkFBbUIsQ0FBQyxxQ0FBcUMsRUFDekQsS0FBSyxFQUFrQyxDQUN4QyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sMkNBQTJDLEdBQUcsWUFBWSxDQUNyRSxtQkFBbUIsQ0FBQyxxQ0FBcUMsRUFDekQsS0FBSyxFQUFvQyxDQUMxQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0scUNBQXFDLEdBQUcsWUFBWSxDQUMvRCxtQkFBbUIsQ0FBQywrQkFBK0IsRUFDbkQsS0FBSyxFQUF5RSxDQUMvRSxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sNENBQTRDLEdBQUcsWUFBWSxDQUN0RSxtQkFBbUIsQ0FBQyxzQ0FBc0MsRUFDMUQsS0FBSyxFQUFtRyxDQUN6RyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sNENBQTRDLEdBQUcsWUFBWSxDQUN0RSxtQkFBbUIsQ0FBQyxzQ0FBc0MsRUFDMUQsS0FBSyxFQUE0RyxDQUNsSCxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0saUNBQWlDLEdBQUcsWUFBWSxDQUMzRCxtQkFBbUIsQ0FBQywyQkFBMkIsRUFDL0MsS0FBSyxFQUF5RSxDQUMvRSxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sd0NBQXdDLEdBQUcsWUFBWSxDQUNsRSxtQkFBbUIsQ0FBQyxrQ0FBa0MsRUFDdEQsS0FBSyxFQUFtRyxDQUN6RyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sd0NBQXdDLEdBQUcsWUFBWSxDQUNsRSxtQkFBbUIsQ0FBQyxrQ0FBa0MsRUFDdEQsS0FBSyxFQUFvRyxDQUMxRyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sOEJBQThCLEdBQUcsWUFBWSxDQUN4RCxtQkFBbUIsQ0FBQyx3QkFBd0IsRUFDNUMsS0FBSyxFQUFrRCxDQUN4RCxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0scUNBQXFDLEdBQUcsWUFBWSxDQUMvRCxtQkFBbUIsQ0FBQywrQkFBK0IsRUFDbkQsS0FBSyxFQUFrQyxDQUN4QyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0scUNBQXFDLEdBQUcsWUFBWSxDQUMvRCxtQkFBbUIsQ0FBQywrQkFBK0IsRUFDbkQsS0FBSyxFQUdBLENBQ04sQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHFDQUFxQyxHQUFHLFlBQVksQ0FDL0QsbUJBQW1CLENBQUMsK0JBQStCLEVBQ25ELEtBQUssRUFBdUQsQ0FDN0QsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLDRDQUE0QyxHQUFHLFlBQVksQ0FDdEUsbUJBQW1CLENBQUMsc0NBQXNDLEVBQzFELEtBQUssRUFBa0MsQ0FDeEMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLDRDQUE0QyxHQUFHLFlBQVksQ0FDdEUsbUJBQW1CLENBQUMsc0NBQXNDLEVBQzFELEtBQUssRUFBMEYsQ0FDaEcsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGlDQUFpQyxHQUFHLFlBQVksQ0FDM0QsbUJBQW1CLENBQUMsMkJBQTJCLEVBQy9DLEtBQUssRUFBdUQsQ0FDN0QsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHdDQUF3QyxHQUFHLFlBQVksQ0FDbEUsbUJBQW1CLENBQUMsa0NBQWtDLEVBQ3RELEtBQUssRUFBa0MsQ0FDeEMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHdDQUF3QyxHQUFHLFlBQVksQ0FDbEUsbUJBQW1CLENBQUMsa0NBQWtDLEVBQ3RELEtBQUssRUFBa0YsQ0FDeEYsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLFlBQVksQ0FDbEQsbUJBQW1CLENBQUMsa0JBQWtCLEVBQ3RDLEtBQUssRUFBdUUsQ0FDN0UsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLCtCQUErQixHQUFHLFlBQVksQ0FDekQsbUJBQW1CLENBQUMseUJBQXlCLEVBQzdDLEtBQUssRUFBaUcsQ0FDdkcsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLCtCQUErQixHQUFHLFlBQVksQ0FDekQsbUJBQW1CLENBQUMseUJBQXlCLEVBQzdDLEtBQUssRUFBOEYsQ0FDcEcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUFjdGlvbiwgcHJvcHMgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEFjdGl2aXR5TG9jYXRpb24sIEFjdGl2aXR5VHlwZSwgRXZlbnQsIE9wZW5BY3Rpdml0eSB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBPcGVuQWN0aXZpdHlTZWFyY2hQYXJhbXNJbnRlcmZhY2UgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcblxuXG5leHBvcnQgZW51bSBDYWxlbmRhckFjdGlvblR5cGVzIHtcbiAgQ2xlYXJUZWFtQWN0aXZpdGllcyA9ICdbQ2FsZW5kYXJdIENsZWFyIHRlYW0gYWN0aXZpdGllcycsXG4gIExpc3RNZW1iZXJBY3Rpdml0aWVzID0gJ1tDYWxlbmRhcl0gTGlzdCBtZW1iZXIgYWN0aXZpdGllcycsXG4gIExpc3RNZW1iZXJBY3Rpdml0aWVzRmFpbHVyZSA9ICdbQ2FsZW5kYXJdIExpc3QgbWVtYmVyIGFjdGl2aXRpZXMgZmFpbHVyZScsXG4gIExpc3RNZW1iZXJBY3Rpdml0aWVzU3VjY2VzcyA9ICdbQ2FsZW5kYXJdIExpc3QgbWVtYmVyIGFjdGl2aXRpZXMgc3VjY2VzcycsXG4gIExpc3RNZW1iZXJPcGVuQWN0aXZpdGllcyA9ICdbQ2FsZW5kYXJdIExpc3QgbWVtYmVyIG9wZW4gYWN0aXZpdGllcycsXG4gIExpc3RNZW1iZXJPcGVuQWN0aXZpdGllc0ZhaWx1cmUgPSAnW0NhbGVuZGFyXSBMaXN0IG1lbWJlciBvcGVuIGFjdGl2aXRpZXMgZmFpbHVyZScsXG4gIExpc3RNZW1iZXJPcGVuQWN0aXZpdGllc1N1Y2Nlc3MgPSAnW0NhbGVuZGFyXSBMaXN0IG1lbWJlciBvcGVuIGFjdGl2aXRpZXMgc3VjY2VzcycsXG4gIExpc3RBbGxNZW1iZXJPcGVuQWN0aXZpdHlMb2NhdGlvbnMgPSAnW0NhbGVuZGFyXSBMaXN0IGFsbCBtZW1iZXIgb3BlbiBhY3Rpdml0eSBsb2NhdGlvbnMnLFxuICBMaXN0QWxsTWVtYmVyT3BlbkFjdGl2aXR5TG9jYXRpb25zRmFpbHVyZSA9ICdbQ2FsZW5kYXJdIExpc3QgYWxsIG1lbWJlciBvcGVuIGFjdGl2aXR5IGxvY2F0aW9ucyBmYWlsdXJlJyxcbiAgTGlzdEFsbE1lbWJlck9wZW5BY3Rpdml0eUxvY2F0aW9uc1N1Y2Nlc3MgPSAnW0NhbGVuZGFyXSBMaXN0IGFsbCBtZW1iZXIgb3BlbiBhY3Rpdml0eSBsb2NhdGlvbnMgc3VjY2VzcycsXG4gIExpc3RBbGxNZW1iZXJPcGVuQWN0aXZpdHlUeXBlcyA9ICdbQ2FsZW5kYXJdIExpc3QgYWxsIG1lbWJlciBvcGVuIGFjdGl2aXR5IHR5cGVzJyxcbiAgTGlzdEFsbE1lbWJlck9wZW5BY3Rpdml0eVR5cGVzRmFpbHVyZSA9ICdbQ2FsZW5kYXJdIExpc3QgYWxsIG1lbWJlciBvcGVuIGFjdGl2aXR5IHR5cGVzIGZhaWx1cmUnLFxuICBMaXN0QWxsTWVtYmVyT3BlbkFjdGl2aXR5VHlwZXNTdWNjZXNzID0gJ1tDYWxlbmRhcl0gTGlzdCBhbGwgbWVtYmVyIG9wZW4gYWN0aXZpdHkgdHlwZXMgc3VjY2VzcycsXG4gIExpc3RBbGxQdWJsaWNPcGVuQWN0aXZpdHlMb2NhdGlvbnMgPSAnW0NhbGVuZGFyXSBMaXN0IGFsbCBwdWJsaWMgb3BlbiBhY3Rpdml0eSBsb2NhdGlvbnMnLFxuICBMaXN0QWxsUHVibGljT3BlbkFjdGl2aXR5TG9jYXRpb25zRmFpbHVyZSA9ICdbQ2FsZW5kYXJdIExpc3QgYWxsIHB1YmxpYyBvcGVuIGFjdGl2aXR5IGxvY2F0aW9ucyBmYWlsdXJlJyxcbiAgTGlzdEFsbFB1YmxpY09wZW5BY3Rpdml0eUxvY2F0aW9uc1N1Y2Nlc3MgPSAnW0NhbGVuZGFyXSBMaXN0IGFsbCBwdWJsaWMgb3BlbiBhY3Rpdml0eSBsb2NhdGlvbnMgc3VjY2VzcycsXG4gIExpc3RBbGxQdWJsaWNPcGVuQWN0aXZpdHlUeXBlcyA9ICdbQ2FsZW5kYXJdIExpc3QgYWxsIHB1YmxpYyBvcGVuIGFjdGl2aXR5IHR5cGVzJyxcbiAgTGlzdEFsbFB1YmxpY09wZW5BY3Rpdml0eVR5cGVzRmFpbHVyZSA9ICdbQ2FsZW5kYXJdIExpc3QgYWxsIHB1YmxpYyBvcGVuIGFjdGl2aXR5IHR5cGVzIGZhaWx1cmUnLFxuICBMaXN0QWxsUHVibGljT3BlbkFjdGl2aXR5VHlwZXNTdWNjZXNzID0gJ1tDYWxlbmRhcl0gTGlzdCBhbGwgcHVibGljIG9wZW4gYWN0aXZpdHkgdHlwZXMgc3VjY2VzcycsXG4gIExpc3RNZW1iZXJPcGVuQWN0aXZpdHlMb2NhdGlvbnMgPSAnW0NhbGVuZGFyXSBMaXN0IG1lbWJlciBvcGVuIGFjdGl2aXR5IGxvY2F0aW9ucycsXG4gIExpc3RNZW1iZXJPcGVuQWN0aXZpdHlMb2NhdGlvbnNGYWlsdXJlID0gJ1tDYWxlbmRhcl0gTGlzdCBtZW1iZXIgb3BlbiBhY3Rpdml0eSBsb2NhdGlvbnMgZmFpbHVyZScsXG4gIExpc3RNZW1iZXJPcGVuQWN0aXZpdHlMb2NhdGlvbnNTdWNjZXNzID0gJ1tDYWxlbmRhcl0gTGlzdCBtZW1iZXIgb3BlbiBhY3Rpdml0eSBsb2NhdGlvbnMgc3VjY2VzcycsXG4gIExpc3RNZW1iZXJPcGVuQWN0aXZpdHlUeXBlcyA9ICdbQ2FsZW5kYXJdIExpc3QgbWVtYmVyIG9wZW4gYWN0aXZpdHkgdHlwZXMnLFxuICBMaXN0TWVtYmVyT3BlbkFjdGl2aXR5VHlwZXNGYWlsdXJlID0gJ1tDYWxlbmRhcl0gTGlzdCBtZW1iZXIgb3BlbiBhY3Rpdml0eSB0eXBlcyBmYWlsdXJlJyxcbiAgTGlzdE1lbWJlck9wZW5BY3Rpdml0eVR5cGVzU3VjY2VzcyA9ICdbQ2FsZW5kYXJdIExpc3QgbWVtYmVyIG9wZW4gYWN0aXZpdHkgdHlwZXMgc3VjY2VzcycsXG4gIExpc3RQdWJsaWNPcGVuQWN0aXZpdGllcyA9ICdbQ2FsZW5kYXJdIExpc3QgcHVibGljIG9wZW4gYWN0aXZpdGllcycsXG4gIExpc3RQdWJsaWNPcGVuQWN0aXZpdGllc0ZhaWx1cmUgPSAnW0NhbGVuZGFyXSBMaXN0IHB1YmxpYyBvcGVuIGFjdGl2aXRpZXMgZmFpbHVyZScsXG4gIExpc3RQdWJsaWNPcGVuQWN0aXZpdGllc1N1Y2Nlc3MgPSAnW0NhbGVuZGFyXSBMaXN0IHB1YmxpYyBvcGVuIGFjdGl2aXRpZXMgc3VjY2VzcycsXG4gIExpc3RQdWJsaWNPcGVuQWN0aXZpdHlMb2NhdGlvbnMgPSAnW0NhbGVuZGFyXSBMaXN0IHB1YmxpYyBvcGVuIGFjdGl2aXR5IGxvY2F0aW9ucycsXG4gIExpc3RQdWJsaWNPcGVuQWN0aXZpdHlMb2NhdGlvbnNGYWlsdXJlID0gJ1tDYWxlbmRhcl0gTGlzdCBwdWJsaWMgb3BlbiBhY3Rpdml0eSBsb2NhdGlvbnMgZmFpbHVyZScsXG4gIExpc3RQdWJsaWNPcGVuQWN0aXZpdHlMb2NhdGlvbnNTdWNjZXNzID0gJ1tDYWxlbmRhcl0gTGlzdCBwdWJsaWMgb3BlbiBhY3Rpdml0eSBsb2NhdGlvbnMgc3VjY2VzcycsXG4gIExpc3RQdWJsaWNPcGVuQWN0aXZpdHlUeXBlcyA9ICdbQ2FsZW5kYXJdIExpc3QgcHVibGljIG9wZW4gYWN0aXZpdHkgdHlwZXMnLFxuICBMaXN0UHVibGljT3BlbkFjdGl2aXR5VHlwZXNGYWlsdXJlID0gJ1tDYWxlbmRhcl0gTGlzdCBwdWJsaWMgb3BlbiBhY3Rpdml0eSB0eXBlcyBmYWlsdXJlJyxcbiAgTGlzdFB1YmxpY09wZW5BY3Rpdml0eVR5cGVzU3VjY2VzcyA9ICdbQ2FsZW5kYXJdIExpc3QgcHVibGljIG9wZW4gYWN0aXZpdHkgdHlwZXMgc3VjY2VzcycsXG4gIExpc3RUZWFtQWN0aXZpdGllcyA9ICdbQ2FsZW5kYXJdIExpc3QgdGVhbSBhY3Rpdml0aWVzJyxcbiAgTGlzdFRlYW1BY3Rpdml0aWVzRmFpbHVyZSA9ICdbQ2FsZW5kYXJdIExpc3QgdGVhbSBhY3Rpdml0aWVzIGZhaWx1cmUnLFxuICBMaXN0VGVhbUFjdGl2aXRpZXNTdWNjZXNzID0gJ1tDYWxlbmRhcl0gTGlzdCB0ZWFtIGFjdGl2aXRpZXMgc3VjY2VzcycsXG59XG5cbmV4cG9ydCBjb25zdCBjbGVhclRlYW1BY3Rpdml0aWVzQWN0aW9uID0gY3JlYXRlQWN0aW9uKFxuICBDYWxlbmRhckFjdGlvblR5cGVzLkNsZWFyVGVhbUFjdGl2aXRpZXNcbik7XG5cbmV4cG9ydCBjb25zdCBsaXN0TWVtYmVyQWN0aXZpdGllc0FjdGlvbiA9IGNyZWF0ZUFjdGlvbihcbiAgQ2FsZW5kYXJBY3Rpb25UeXBlcy5MaXN0TWVtYmVyQWN0aXZpdGllcyxcbiAgcHJvcHM8eyBwYXlsb2FkOiB7IG1lbWJlcklkczogQXJyYXk8c3RyaW5nPiwgc3RhcnREYXRlOiBzdHJpbmcsIGVuZERhdGU6IHN0cmluZyB9IH0+KClcbik7XG5cbmV4cG9ydCBjb25zdCBsaXN0TWVtYmVyQWN0aXZpdGllc0ZhaWx1cmVBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdE1lbWJlckFjdGl2aXRpZXNGYWlsdXJlLFxuICBwcm9wczx7IHBheWxvYWQ6IHsgbWVtYmVySWRzOiBBcnJheTxzdHJpbmc+LCBzdGFydERhdGU6IHN0cmluZywgZW5kRGF0ZTogc3RyaW5nLCBlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UgfSB9PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdE1lbWJlckFjdGl2aXRpZXNTdWNjZXNzQWN0aW9uID0gY3JlYXRlQWN0aW9uKFxuICBDYWxlbmRhckFjdGlvblR5cGVzLkxpc3RNZW1iZXJBY3Rpdml0aWVzU3VjY2VzcyxcbiAgcHJvcHM8e1xuICAgIHBheWxvYWQ6IHsgbWVtYmVySWRzOiBBcnJheTxzdHJpbmc+LCBzdGFydERhdGU6IHN0cmluZywgZW5kRGF0ZTogc3RyaW5nLCByZXN1bHRzOiBNYXA8c3RyaW5nLCBBcnJheTxFdmVudD4+IH1cbiAgfT4oKVxuKTtcblxuZXhwb3J0IGNvbnN0IGxpc3RNZW1iZXJPcGVuQWN0aXZpdGllc0FjdGlvbiA9IGNyZWF0ZUFjdGlvbihcbiAgQ2FsZW5kYXJBY3Rpb25UeXBlcy5MaXN0TWVtYmVyT3BlbkFjdGl2aXRpZXMsXG4gIHByb3BzPHsgcGF5bG9hZDogeyBtZW1iZXJJZHM6IEFycmF5PHN0cmluZz4sIG9wZW5BY3Rpdml0eVNlYXJjaFBhcmFtczogT3BlbkFjdGl2aXR5U2VhcmNoUGFyYW1zSW50ZXJmYWNlIH0gfT4oKVxuKTtcblxuZXhwb3J0IGNvbnN0IGxpc3RNZW1iZXJPcGVuQWN0aXZpdGllc0ZhaWx1cmVBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdE1lbWJlck9wZW5BY3Rpdml0aWVzRmFpbHVyZSxcbiAgcHJvcHM8e1xuICAgIHBheWxvYWQ6IHtcbiAgICAgIG1lbWJlcklkczogQXJyYXk8c3RyaW5nPixcbiAgICAgIG9wZW5BY3Rpdml0eVNlYXJjaFBhcmFtczogT3BlbkFjdGl2aXR5U2VhcmNoUGFyYW1zSW50ZXJmYWNlLFxuICAgICAgZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlXG4gICAgfVxuICB9PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdE1lbWJlck9wZW5BY3Rpdml0aWVzU3VjY2Vzc0FjdGlvbiA9IGNyZWF0ZUFjdGlvbihcbiAgQ2FsZW5kYXJBY3Rpb25UeXBlcy5MaXN0TWVtYmVyT3BlbkFjdGl2aXRpZXNTdWNjZXNzLFxuICBwcm9wczx7XG4gICAgcGF5bG9hZDoge1xuICAgICAgbWVtYmVySWRzOiBBcnJheTxzdHJpbmc+LFxuICAgICAgb3BlbkFjdGl2aXR5U2VhcmNoUGFyYW1zOiBPcGVuQWN0aXZpdHlTZWFyY2hQYXJhbXNJbnRlcmZhY2UsXG4gICAgICByZXN1bHRzOiBNYXA8c3RyaW5nLCBBcnJheTxPcGVuQWN0aXZpdHk+PlxuICAgIH1cbiAgfT4oKVxuKTtcblxuZXhwb3J0IGNvbnN0IGxpc3RBbGxNZW1iZXJPcGVuQWN0aXZpdHlMb2NhdGlvbnNBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdEFsbE1lbWJlck9wZW5BY3Rpdml0eUxvY2F0aW9ucyxcbiAgcHJvcHM8eyBwYXlsb2FkOiBzdHJpbmd9PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdEFsbE1lbWJlck9wZW5BY3Rpdml0eUxvY2F0aW9uc0ZhaWx1cmVBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdEFsbE1lbWJlck9wZW5BY3Rpdml0eUxvY2F0aW9uc0ZhaWx1cmUsXG4gIHByb3BzPHsgcGF5bG9hZDogSHR0cEVycm9yUmVzcG9uc2UgfT4oKVxuKTtcblxuZXhwb3J0IGNvbnN0IGxpc3RBbGxNZW1iZXJPcGVuQWN0aXZpdHlMb2NhdGlvbnNTdWNjZXNzQWN0aW9uID0gY3JlYXRlQWN0aW9uKFxuICBDYWxlbmRhckFjdGlvblR5cGVzLkxpc3RBbGxNZW1iZXJPcGVuQWN0aXZpdHlMb2NhdGlvbnNTdWNjZXNzLFxuICBwcm9wczx7IHBheWxvYWQ6IEFycmF5PEFjdGl2aXR5TG9jYXRpb24+IH0+KClcbik7XG5cbmV4cG9ydCBjb25zdCBsaXN0QWxsTWVtYmVyT3BlbkFjdGl2aXR5VHlwZXNBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdEFsbE1lbWJlck9wZW5BY3Rpdml0eVR5cGVzLFxuICBwcm9wczx7IHBheWxvYWQ6IHN0cmluZyB9PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdEFsbE1lbWJlck9wZW5BY3Rpdml0eVR5cGVzRmFpbHVyZUFjdGlvbiA9IGNyZWF0ZUFjdGlvbihcbiAgQ2FsZW5kYXJBY3Rpb25UeXBlcy5MaXN0QWxsTWVtYmVyT3BlbkFjdGl2aXR5VHlwZXNGYWlsdXJlLFxuICBwcm9wczx7IHBheWxvYWQ6IEh0dHBFcnJvclJlc3BvbnNlIH0+KClcbik7XG5cbmV4cG9ydCBjb25zdCBsaXN0QWxsTWVtYmVyT3BlbkFjdGl2aXR5VHlwZXNTdWNjZXNzQWN0aW9uID0gY3JlYXRlQWN0aW9uKFxuICBDYWxlbmRhckFjdGlvblR5cGVzLkxpc3RBbGxNZW1iZXJPcGVuQWN0aXZpdHlUeXBlc1N1Y2Nlc3MsXG4gIHByb3BzPHsgcGF5bG9hZDogQXJyYXk8QWN0aXZpdHlUeXBlPiB9PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdEFsbFB1YmxpY09wZW5BY3Rpdml0eUxvY2F0aW9uc0FjdGlvbiA9IGNyZWF0ZUFjdGlvbihcbiAgQ2FsZW5kYXJBY3Rpb25UeXBlcy5MaXN0QWxsUHVibGljT3BlbkFjdGl2aXR5TG9jYXRpb25zXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdEFsbFB1YmxpY09wZW5BY3Rpdml0eUxvY2F0aW9uc0ZhaWx1cmVBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdEFsbFB1YmxpY09wZW5BY3Rpdml0eUxvY2F0aW9uc0ZhaWx1cmUsXG4gIHByb3BzPHsgcGF5bG9hZDogSHR0cEVycm9yUmVzcG9uc2UgfT4oKVxuKTtcblxuZXhwb3J0IGNvbnN0IGxpc3RBbGxQdWJsaWNPcGVuQWN0aXZpdHlMb2NhdGlvbnNTdWNjZXNzQWN0aW9uID0gY3JlYXRlQWN0aW9uKFxuICBDYWxlbmRhckFjdGlvblR5cGVzLkxpc3RBbGxQdWJsaWNPcGVuQWN0aXZpdHlMb2NhdGlvbnNTdWNjZXNzLFxuICBwcm9wczx7IHBheWxvYWQ6IEFycmF5PEFjdGl2aXR5TG9jYXRpb24+IH0+KClcbik7XG5cbmV4cG9ydCBjb25zdCBsaXN0QWxsUHVibGljT3BlbkFjdGl2aXR5VHlwZXNBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdEFsbFB1YmxpY09wZW5BY3Rpdml0eVR5cGVzXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdEFsbFB1YmxpY09wZW5BY3Rpdml0eVR5cGVzRmFpbHVyZUFjdGlvbiA9IGNyZWF0ZUFjdGlvbihcbiAgQ2FsZW5kYXJBY3Rpb25UeXBlcy5MaXN0QWxsUHVibGljT3BlbkFjdGl2aXR5VHlwZXNGYWlsdXJlLFxuICBwcm9wczx7IHBheWxvYWQ6IEh0dHBFcnJvclJlc3BvbnNlIH0+KClcbik7XG5cbmV4cG9ydCBjb25zdCBsaXN0QWxsUHVibGljT3BlbkFjdGl2aXR5VHlwZXNTdWNjZXNzQWN0aW9uID0gY3JlYXRlQWN0aW9uKFxuICBDYWxlbmRhckFjdGlvblR5cGVzLkxpc3RBbGxQdWJsaWNPcGVuQWN0aXZpdHlUeXBlc1N1Y2Nlc3MsXG4gIHByb3BzPHsgcGF5bG9hZDogQXJyYXk8QWN0aXZpdHlUeXBlPiB9PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdE1lbWJlck9wZW5BY3Rpdml0eUxvY2F0aW9uc0FjdGlvbiA9IGNyZWF0ZUFjdGlvbihcbiAgQ2FsZW5kYXJBY3Rpb25UeXBlcy5MaXN0TWVtYmVyT3BlbkFjdGl2aXR5TG9jYXRpb25zLFxuICBwcm9wczx7IHBheWxvYWQ6IHsgbWVtYmVySWQ6IHN0cmluZywgc3RhcnREYXRlOiBzdHJpbmcsIGVuZERhdGU6IHN0cmluZyB9IH0+KClcbik7XG5cbmV4cG9ydCBjb25zdCBsaXN0TWVtYmVyT3BlbkFjdGl2aXR5TG9jYXRpb25zRmFpbHVyZUFjdGlvbiA9IGNyZWF0ZUFjdGlvbihcbiAgQ2FsZW5kYXJBY3Rpb25UeXBlcy5MaXN0TWVtYmVyT3BlbkFjdGl2aXR5TG9jYXRpb25zRmFpbHVyZSxcbiAgcHJvcHM8eyBwYXlsb2FkOiB7IG1lbWJlcklkOiBzdHJpbmcsIHN0YXJ0RGF0ZTogc3RyaW5nLCBlbmREYXRlOiBzdHJpbmcsIGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSB9IH0+KClcbik7XG5cbmV4cG9ydCBjb25zdCBsaXN0TWVtYmVyT3BlbkFjdGl2aXR5TG9jYXRpb25zU3VjY2Vzc0FjdGlvbiA9IGNyZWF0ZUFjdGlvbihcbiAgQ2FsZW5kYXJBY3Rpb25UeXBlcy5MaXN0TWVtYmVyT3BlbkFjdGl2aXR5TG9jYXRpb25zU3VjY2VzcyxcbiAgcHJvcHM8eyBwYXlsb2FkOiB7IG1lbWJlcklkOiBzdHJpbmcsIHN0YXJ0RGF0ZTogc3RyaW5nLCBlbmREYXRlOiBzdHJpbmcsIGxvY2F0aW9uczogQXJyYXk8QWN0aXZpdHlMb2NhdGlvbj4gfX0+KClcbik7XG5cbmV4cG9ydCBjb25zdCBsaXN0TWVtYmVyT3BlbkFjdGl2aXR5VHlwZXNBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdE1lbWJlck9wZW5BY3Rpdml0eVR5cGVzLFxuICBwcm9wczx7IHBheWxvYWQ6IHsgbWVtYmVySWQ6IHN0cmluZywgc3RhcnREYXRlOiBzdHJpbmcsIGVuZERhdGU6IHN0cmluZyB9IH0+KClcbik7XG5cbmV4cG9ydCBjb25zdCBsaXN0TWVtYmVyT3BlbkFjdGl2aXR5VHlwZXNGYWlsdXJlQWN0aW9uID0gY3JlYXRlQWN0aW9uKFxuICBDYWxlbmRhckFjdGlvblR5cGVzLkxpc3RNZW1iZXJPcGVuQWN0aXZpdHlUeXBlc0ZhaWx1cmUsXG4gIHByb3BzPHsgcGF5bG9hZDogeyBtZW1iZXJJZDogc3RyaW5nLCBzdGFydERhdGU6IHN0cmluZywgZW5kRGF0ZTogc3RyaW5nLCBlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UgfSB9PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdE1lbWJlck9wZW5BY3Rpdml0eVR5cGVzU3VjY2Vzc0FjdGlvbiA9IGNyZWF0ZUFjdGlvbihcbiAgQ2FsZW5kYXJBY3Rpb25UeXBlcy5MaXN0TWVtYmVyT3BlbkFjdGl2aXR5VHlwZXNTdWNjZXNzLFxuICBwcm9wczx7IHBheWxvYWQ6IHsgbWVtYmVySWQ6IHN0cmluZywgc3RhcnREYXRlOiBzdHJpbmcsIGVuZERhdGU6IHN0cmluZywgdHlwZXM6IEFycmF5PEFjdGl2aXR5VHlwZT4gfX0+KClcbik7XG5cbmV4cG9ydCBjb25zdCBsaXN0UHVibGljT3BlbkFjdGl2aXRpZXNBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdFB1YmxpY09wZW5BY3Rpdml0aWVzLFxuICBwcm9wczx7IHBheWxvYWQ6IE9wZW5BY3Rpdml0eVNlYXJjaFBhcmFtc0ludGVyZmFjZSB9PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdFB1YmxpY09wZW5BY3Rpdml0aWVzRmFpbHVyZUFjdGlvbiA9IGNyZWF0ZUFjdGlvbihcbiAgQ2FsZW5kYXJBY3Rpb25UeXBlcy5MaXN0UHVibGljT3BlbkFjdGl2aXRpZXNGYWlsdXJlLFxuICBwcm9wczx7IHBheWxvYWQ6IEh0dHBFcnJvclJlc3BvbnNlIH0+KClcbik7XG5cbmV4cG9ydCBjb25zdCBsaXN0UHVibGljT3BlbkFjdGl2aXRpZXNTdWNjZXNzQWN0aW9uID0gY3JlYXRlQWN0aW9uKFxuICBDYWxlbmRhckFjdGlvblR5cGVzLkxpc3RQdWJsaWNPcGVuQWN0aXZpdGllc1N1Y2Nlc3MsXG4gIHByb3BzPHsgcGF5bG9hZDoge1xuICAgIG9wZW5BY3Rpdml0eVNlYXJjaFBhcmFtczogT3BlbkFjdGl2aXR5U2VhcmNoUGFyYW1zSW50ZXJmYWNlLFxuICAgIHJlc3VsdHM6IEFycmF5PE9wZW5BY3Rpdml0eT5cbiAgfX0+KClcbik7XG5cbmV4cG9ydCBjb25zdCBsaXN0UHVibGljT3BlbkFjdGl2aXR5TG9jYXRpb25zQWN0aW9uID0gY3JlYXRlQWN0aW9uKFxuICBDYWxlbmRhckFjdGlvblR5cGVzLkxpc3RQdWJsaWNPcGVuQWN0aXZpdHlMb2NhdGlvbnMsXG4gIHByb3BzPHsgcGF5bG9hZDogeyBzdGFydERhdGU6IHN0cmluZywgZW5kRGF0ZTogc3RyaW5nIH0gfT4oKVxuKTtcblxuZXhwb3J0IGNvbnN0IGxpc3RQdWJsaWNPcGVuQWN0aXZpdHlMb2NhdGlvbnNGYWlsdXJlQWN0aW9uID0gY3JlYXRlQWN0aW9uKFxuICBDYWxlbmRhckFjdGlvblR5cGVzLkxpc3RQdWJsaWNPcGVuQWN0aXZpdHlMb2NhdGlvbnNGYWlsdXJlLFxuICBwcm9wczx7IHBheWxvYWQ6IEh0dHBFcnJvclJlc3BvbnNlIH0+KClcbik7XG5cbmV4cG9ydCBjb25zdCBsaXN0UHVibGljT3BlbkFjdGl2aXR5TG9jYXRpb25zU3VjY2Vzc0FjdGlvbiA9IGNyZWF0ZUFjdGlvbihcbiAgQ2FsZW5kYXJBY3Rpb25UeXBlcy5MaXN0UHVibGljT3BlbkFjdGl2aXR5TG9jYXRpb25zU3VjY2VzcyxcbiAgcHJvcHM8eyBwYXlsb2FkOiB7IHN0YXJ0RGF0ZTogc3RyaW5nLCBlbmREYXRlOiBzdHJpbmcsIGxvY2F0aW9uczogQXJyYXk8QWN0aXZpdHlMb2NhdGlvbj4gfX0+KClcbik7XG5cbmV4cG9ydCBjb25zdCBsaXN0UHVibGljT3BlbkFjdGl2aXR5VHlwZXNBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdFB1YmxpY09wZW5BY3Rpdml0eVR5cGVzLFxuICBwcm9wczx7IHBheWxvYWQ6IHsgc3RhcnREYXRlOiBzdHJpbmcsIGVuZERhdGU6IHN0cmluZyB9IH0+KClcbik7XG5cbmV4cG9ydCBjb25zdCBsaXN0UHVibGljT3BlbkFjdGl2aXR5VHlwZXNGYWlsdXJlQWN0aW9uID0gY3JlYXRlQWN0aW9uKFxuICBDYWxlbmRhckFjdGlvblR5cGVzLkxpc3RQdWJsaWNPcGVuQWN0aXZpdHlUeXBlc0ZhaWx1cmUsXG4gIHByb3BzPHsgcGF5bG9hZDogSHR0cEVycm9yUmVzcG9uc2UgfT4oKVxuKTtcblxuZXhwb3J0IGNvbnN0IGxpc3RQdWJsaWNPcGVuQWN0aXZpdHlUeXBlc1N1Y2Nlc3NBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdFB1YmxpY09wZW5BY3Rpdml0eVR5cGVzU3VjY2VzcyxcbiAgcHJvcHM8eyBwYXlsb2FkOiB7IHN0YXJ0RGF0ZTogc3RyaW5nLCBlbmREYXRlOiBzdHJpbmcsIHR5cGVzOiBBcnJheTxBY3Rpdml0eVR5cGU+IH19PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdFRlYW1BY3Rpdml0aWVzQWN0aW9uID0gY3JlYXRlQWN0aW9uKFxuICBDYWxlbmRhckFjdGlvblR5cGVzLkxpc3RUZWFtQWN0aXZpdGllcyxcbiAgcHJvcHM8eyBwYXlsb2FkOiB7IHRlYW1JZDogc3RyaW5nLCBzdGFydERhdGU6IHN0cmluZywgZW5kRGF0ZTogc3RyaW5nIH0gfT4oKVxuKTtcblxuZXhwb3J0IGNvbnN0IGxpc3RUZWFtQWN0aXZpdGllc0ZhaWx1cmVBY3Rpb24gPSBjcmVhdGVBY3Rpb24oXG4gIENhbGVuZGFyQWN0aW9uVHlwZXMuTGlzdFRlYW1BY3Rpdml0aWVzRmFpbHVyZSxcbiAgcHJvcHM8eyBwYXlsb2FkOiB7IHRlYW1JZDogc3RyaW5nLCBzdGFydERhdGU6IHN0cmluZywgZW5kRGF0ZTogc3RyaW5nLCBlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UgfSB9PigpXG4pO1xuXG5leHBvcnQgY29uc3QgbGlzdFRlYW1BY3Rpdml0aWVzU3VjY2Vzc0FjdGlvbiA9IGNyZWF0ZUFjdGlvbihcbiAgQ2FsZW5kYXJBY3Rpb25UeXBlcy5MaXN0VGVhbUFjdGl2aXRpZXNTdWNjZXNzLFxuICBwcm9wczx7IHBheWxvYWQ6IHsgdGVhbUlkOiBzdHJpbmcsIHN0YXJ0RGF0ZTogc3RyaW5nLCBlbmREYXRlOiBzdHJpbmcsIHJlc3VsdHM6IEFycmF5PEV2ZW50PiB9IH0+KClcbik7XG4iXX0=
@@ -20,8 +20,8 @@ export class AuthEffects {
20
20
  }).pipe(mergeMap(() => {
21
21
  this.authenticationService.clearAuthentication();
22
22
  return [
23
- clearAuthenticationSuccessAction(),
24
- clearStoreAction()
23
+ clearStoreAction(),
24
+ clearAuthenticationSuccessAction()
25
25
  ];
26
26
  })))));
27
27
  getCurrent$ = createEffect(() => this.actions$
@@ -105,4 +105,4 @@ export class AuthEffects {
105
105
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AuthEffects, decorators: [{
106
106
  type: Injectable
107
107
  }] });
108
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5lZmZlY3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YS1hY2Nlc3Mvc3JjL2xpYi9zdG9yZS9lZmZlY3RzL2F1dGguZWZmZWN0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUNMLFdBQVcsRUFDWCxxQkFBcUIsRUFDckIsd0JBQXdCLEVBQ3hCLGFBQWEsRUFDYixjQUFjLEVBQ2QsV0FBVyxFQUNaLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUNMLHlCQUF5QixFQUN6QixnQ0FBZ0MsRUFDaEMsZ0JBQWdCLEVBQ2hCLG9CQUFvQixFQUNwQiwyQkFBMkIsRUFDM0IsY0FBYyxFQUNkLHFCQUFxQixFQUNyQixxQkFBcUIsRUFDckIsbUJBQW1CLEVBQ25CLDBCQUEwQixFQUMxQiwwQkFBMEIsRUFDMUIsa0JBQWtCLEVBQ2xCLHlCQUF5QixFQUN6Qix5QkFBeUIsRUFDekIsc0JBQXNCLEVBQ3RCLDZCQUE2QixFQUM3Qiw2QkFBNkIsRUFDN0Isb0JBQW9CLEVBQ3BCLDJCQUEyQixFQUMzQiwyQkFBMkIsRUFDM0Isb0JBQW9CLEVBQ3JCLE1BQU0sWUFBWSxDQUFDO0FBQ3BCLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUlqRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7QUFHN0QsTUFBTSxPQUFPLFdBQVc7SUFDZCxRQUFRLEdBQUcsTUFBTSxDQUFDLE9BQU8s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Q0FBQyxxQkFBcUIsRUFBRSxPQUFPLENBQUM7YUFDdkUsSUFBSSxDQUNILFFBQVEsQ0FBQyxDQUFDLE9BQWEsRUFBRSxFQUFFO1lBQ3pCLElBQUksT0FBTyxJQUFJLE9BQU8sQ0FBQyxFQUFFLEtBQUssT0FBTyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sS0FBSyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sS0FBSyxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDeE8sT0FBTztvQkFDTCwyQkFBMkIsQ0FBQyxFQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUMsQ0FBQztpQkFDaEQsQ0FBQTtZQUNILENBQUM7aUJBQU0sQ0FBQztnQkFDTixPQUFPO29CQUNMLDJCQUEyQixDQUFDLEVBQUMsT0FBTyxFQUFFLE9BQU8sRUFBQyxDQUFDO29CQUMvQyxnQkFBZ0IsRUFBRTtpQkFDbkIsQ0FBQTtZQUNILENBQUM7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFBO0lBQ0wsQ0FBQyxDQUFDLENBQ0gsQ0FDRixDQUNGLENBQ0YsQ0FBQzt1R0E3S1MsV0FBVzsyR0FBWCxXQUFXOzsyRkFBWCxXQUFXO2tCQUR2QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3Rpb25zLCBjcmVhdGVFZmZlY3QsIG9mVHlwZSB9IGZyb20gJ0BuZ3J4L2VmZmVjdHMnO1xuaW1wb3J0IHtcbiAgQXV0aFNlcnZpY2UsXG4gIFNUT1JBR0VfU0VMRUNURURfQVVUSCxcbiAgU1RPUkFHRV9TRUxFQ1RFRF9NRU1CRVJTLFxuICBTVE9SQUdFX1RPS0VOLFxuICBTdG9yYWdlU2VydmljZSxcbiAgVGVhbVNlcnZpY2Vcbn0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHtcbiAgY2xlYXJBdXRoZW50aWNhdGlvbkFjdGlvbixcbiAgY2xlYXJBdXRoZW50aWNhdGlvblN1Y2Nlc3NBY3Rpb24sXG4gIGNsZWFyU3RvcmVBY3Rpb24sXG4gIGdldEN1cnJlbnRBdXRoQWN0aW9uLFxuICBnZXRDdXJyZW50QXV0aFN1Y2Nlc3NBY3Rpb24sXG4gIGxpc3RBdXRoQWN0aW9uLFxuICBsaXN0QXV0aEZhaWx1cmVBY3Rpb24sXG4gIGxpc3RBdXRoU3VjY2Vzc0FjdGlvbixcbiAgbGlzdEF1dGhUZWFtc0FjdGlvbixcbiAgbGlzdEF1dGhUZWFtc0ZhaWx1cmVBY3Rpb24sXG4gIGxpc3RBdXRoVGVhbXNTdWNjZXNzQWN0aW9uLFxuICByZWZyZXNoQXV0aHNBY3Rpb24sXG4gIHJlZnJlc2hBdXRoc0ZhaWx1cmVBY3Rpb24sXG4gIHJlZnJlc2hBdXRoc1N1Y2Nlc3NBY3Rpb24sXG4gIHJlbW92ZU1lbWJlckF1dGhBY3Rpb24sXG4gIHJlbW92ZU1lbWJlckF1dGhGYWlsdXJlQWN0aW9uLFxuICByZW1vdmVNZW1iZXJBdXRoU3VjY2Vzc0FjdGlvbixcbiAgcmVtb3ZlVGVhbUF1dGhBY3Rpb24sXG4gIHJlbW92ZVRlYW1BdXRoRmFpbHVyZUFjdGlvbixcbiAgcmVtb3ZlVGVhbUF1dGhTdWNjZXNzQWN0aW9uLFxuICBzZXRDdXJyZW50QXV0aEFjdGlvblxufSBmcm9tICcuLi9hY3Rpb25zJztcbmltcG9ydCB7IGV4aGF1c3RNYXAsIGZvcmtKb2luLCBtZXJnZU1hcCwgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQXV0aCwgQ29sbGVjdGlvbiwgU2VhcmNoVGVhbSB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBSZW1vdmVNZW1iZXJBdXRoSW50ZXJmYWNlLCBSZW1vdmVUZWFtQXV0aEludGVyZmFjZSB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgQXV0aGVudGljYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vYXV0aGVudGljYXRpb24nO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQXV0aEVmZmVjdHMge1xuICBwcml2YXRlIGFjdGlvbnMkID0gaW5qZWN0KEFjdGlvbnMpO1xuICBwcml2YXRlIGF1dGhlbnRpY2F0aW9uU2VydmljZSA9IGluamVjdChBdXRoZW50aWNhdGlvblNlcnZpY2UpO1xuICBwcml2YXRlIGF1dGhTZXJ2aWNlID0gaW5qZWN0KEF1dGhTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBzdG9yYWdlU2VydmljZSA9IGluamVjdChTdG9yYWdlU2VydmljZSk7XG4gIHByaXZhdGUgdGVhbVNlcnZpY2UgPSBpbmplY3QoVGVhbVNlcnZpY2UpO1xuXG4gIGNsZWFyQXV0aGVudGljYXRpb24kID0gY3JlYXRlRWZmZWN0KCgpID0+IHRoaXMuYWN0aW9ucyRcbiAgICAucGlwZShcbiAgICAgIG9mVHlwZShjbGVhckF1dGhlbnRpY2F0aW9uQWN0aW9uKSxcbiAgICAgIGV4aGF1c3RNYXAoKCkgPT5cbiAgICAgICAgZm9ya0pvaW4oXG4gICAgICAgICAge1xuICAgICAgICAgICAgdG9rZW5SZW1vdmFsOiB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnJlbW92ZUFzT2JzZXJ2YWJsZShTVE9SQUdFX1RPS0VOKSxcbiAgICAgICAgICAgIHNlbGVjdGVkQXV0aFJlbW92YWw6IHRoaXMuc3RvcmFnZVNlcnZpY2UucmVtb3ZlQXNPYnNlcnZhYmxlKFNUT1JBR0VfU0VMRUNURURfQVVUSCksXG4gICAgICAgICAgICBzZWxlY3RlZE1lbWJlcnNSZW1vdmFsOiB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnJlbW92ZUFzT2JzZXJ2YWJsZShTVE9SQUdFX1NFTEVDVEVEX01FTUJFUlMpLFxuICAgICAgICAgIH1cbiAgICAgICAgKS5waXBlKFxuICAgICAgICAgIG1lcmdlTWFwKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuYXV0aGVudGljYXRpb25TZXJ2aWNlLmNsZWFyQXV0aGVudGljYXRpb24oKTtcbiAgICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAgIGNsZWFyQXV0aGVudGljYXRpb25TdWNjZXNzQWN0aW9uKCksXG4gICAgICAgICAgICAgIGNsZWFyU3RvcmVBY3Rpb24oKVxuICAgICAgICAgICAgXVxuICAgICAgICAgIH0pXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG5cbiAgZ2V0Q3VycmVudCQgPSBjcmVhdGVFZmZlY3QoKCkgPT4gdGhpcy5hY3Rpb25zJFxuICAgIC5waXBlKFxuICAgICAgb2ZUeXBlKGdldEN1cnJlbnRBdXRoQWN0aW9uKSxcbiAgICAgIGV4aGF1c3RNYXAoKCkgPT4gdGhpcy5zdG9yYWdlU2VydmljZS5nZXRBc09ic2VydmFibGUoU1RPUkFHRV9TRUxFQ1RFRF9BVVRIKVxuICAgICAgICAucGlwZShcbiAgICAgICAgICBtYXAoKGF1dGg6IEF1dGggfCBudWxsIHwgdW5kZWZpbmVkKSA9PiB7XG4gICAgICAgICAgICBpZiAoYXV0aCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgIHJldHVybiBnZXRDdXJyZW50QXV0aFN1Y2Nlc3NBY3Rpb24oe3BheWxvYWQ6IG51bGx9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBnZXRDdXJyZW50QXV0aFN1Y2Nlc3NBY3Rpb24oe3BheWxvYWQ6IGF1dGh9KTtcbiAgICAgICAgICB9KVxuICAgICAgICApXG4gICAgICApXG4gICAgKVxuICApO1xuXG4gIGxpc3RBdXRoJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PiB0aGlzLmFjdGlvbnMkXG4gICAgLnBpcGUoXG4gICAgICBvZlR5cGUobGlzdEF1dGhBY3Rpb24pLFxuICAgICAgZXhoYXVzdE1hcCgoe3BheWxvYWR9KSA9PiB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhzKHBheWxvYWQpXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIG1hcCgoYXV0aHM6IENvbGxlY3Rpb248QXV0aD4pID0+IGxpc3RBdXRoU3VjY2Vzc0FjdGlvbih7cGF5bG9hZDogYXV0aHMudG9BcnJheSgpfSkpLFxuICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4gb2YobGlzdEF1dGhGYWlsdXJlQWN0aW9uKHtwYXlsb2FkOiBlcnJvcn0pKSlcbiAgICAgICAgKVxuICAgICAgKVxuICAgIClcbiAgKTtcblxuICBsaXN0QXV0aFRlYW1zJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PiB0aGlzLmFjdGlvbnMkXG4gICAgLnBpcGUoXG4gICAgICBvZlR5cGUobGlzdEF1dGhUZWFtc0FjdGlvbiksXG4gICAgICBleGhhdXN0TWFwKCh7cGF5bG9hZH0pID0+IHtcbiAgICAgICAgaWYgKHBheWxvYWQuY2x1YkFkbWluKSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMudGVhbVNlcnZpY2UuZ2V0Q2x1YlRlYW1zKHBheWxvYWQuaWQpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgbWFwKChzZWFyY2hUZWFtczogQ29sbGVjdGlvbjxTZWFyY2hUZWFtPikgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGF1dGggPSB7XG4gICAgICAgICAgICAgICAgICAuLi5wYXlsb2FkLFxuICAgICAgICAgICAgICAgICAgdGVhbXM6IHNlYXJjaFRlYW1zLnRvQXJyYXkoKVxuICAgICAgICAgICAgICAgICAgICAuc29ydCgoYTogU2VhcmNoVGVhbSwgYjogU2VhcmNoVGVhbSkgPT4gYS5uYW1lLmxvY2FsZUNvbXBhcmUoYi5uYW1lKSlcbiAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIGxpc3RBdXRoVGVhbXNTdWNjZXNzQWN0aW9uKHtwYXlsb2FkOiBhdXRofSk7XG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IG9mKGxpc3RBdXRoVGVhbXNGYWlsdXJlQWN0aW9uKHtwYXlsb2FkOiBlcnJvcn0pKSlcbiAgICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc3Qgc2VjdGlvbnNUZWFtcyQ6IEFycmF5PE9ic2VydmFibGU8Q29sbGVjdGlvbjxTZWFyY2hUZWFtPj4+ID0gcGF5bG9hZC5zZWN0aW9ucy5tYXAoKHNlY3Rpb24pID0+XG4gICAgICAgICAgICB0aGlzLnRlYW1TZXJ2aWNlLmdldFNlY3Rpb25UZWFtcyhzZWN0aW9uLmlkKVxuICAgICAgICAgICk7XG5cbiAgICAgICAgICByZXR1cm4gZm9ya0pvaW4oc2VjdGlvbnNUZWFtcyQpLnBpcGUoXG4gICAgICAgICAgICBtYXAoKHJlc3VsdHM6IEFycmF5PENvbGxlY3Rpb248U2VhcmNoVGVhbT4+KSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IHNvcnRlZFRlYW1zOiBBcnJheTxTZWFyY2hUZWFtPiA9IHJlc3VsdHNcbiAgICAgICAgICAgICAgICAuZmxhdE1hcCgocmVzdWx0OiBDb2xsZWN0aW9uPFNlYXJjaFRlYW0+KSA9PiByZXN1bHQudG9BcnJheSgpKVxuICAgICAgICAgICAgICAgIC5zb3J0KChhLCBiKSA9PiBhLm5hbWUubG9jYWxlQ29tcGFyZShiLm5hbWUpKTtcbiAgICAgICAgICAgICAgY29uc3QgYXV0aCA9IHtcbiAgICAgICAgICAgICAgICAuLi5wYXlsb2FkLFxuICAgICAgICAgICAgICAgIHRlYW1zOiBzb3J0ZWRUZWFtcyxcbiAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgcmV0dXJuIGxpc3RBdXRoVGVhbXNTdWNjZXNzQWN0aW9uKHtwYXlsb2FkOiBhdXRofSk7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4gb2YobGlzdEF1dGhUZWFtc0ZhaWx1cmVBY3Rpb24oe3BheWxvYWQ6IGVycm9yfSkpKVxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKVxuICApO1xuXG4gIHJlZnJlc2gkID0gY3JlYXRlRWZmZWN0KCgpID0+IHRoaXMuYWN0aW9ucyRcbiAgICAucGlwZShcbiAgICAgIG9mVHlwZShyZWZyZXNoQXV0aHNBY3Rpb24pLFxuICAgICAgZXhoYXVzdE1hcCgoKSA9PiB0aGlzLmF1dGhTZXJ2aWNlLnVwZGF0ZU1lbWJlcnMoKVxuICAgICAgICAucGlwZShcbiAgICAgICAgICBtZXJnZU1hcCgoc3VjY2VzczogYm9vbGVhbikgPT4ge1xuICAgICAgICAgICAgaWYgKHN1Y2Nlc3MpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICAgICByZWZyZXNoQXV0aHNTdWNjZXNzQWN0aW9uKCksXG4gICAgICAgICAgICAgICAgbGlzdEF1dGhBY3Rpb24oKVxuICAgICAgICAgICAgICBdO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgcmV0dXJuIG9mKHJlZnJlc2hBdXRoc0ZhaWx1cmVBY3Rpb24oKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSksXG4gICAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiBvZihyZWZyZXNoQXV0aHNGYWlsdXJlQWN0aW9uKCkpKVxuICAgICAgICApXG4gICAgICApXG4gICAgKVxuICApO1xuXG4gIHJlbW92ZU1lbWJlciQgPSBjcmVhdGVFZmZlY3QoKCkgPT4gdGhpcy5hY3Rpb25zJFxuICAgIC5waXBlKFxuICAgICAgb2ZUeXBlKHJlbW92ZU1lbWJlckF1dGhBY3Rpb24pLFxuICAgICAgZXhoYXVzdE1hcCgoe3BheWxvYWR9OiB7XG4gICAgICAgICAgcGF5bG9hZDogUmVtb3ZlTWVtYmVyQXV0aEludGVyZmFjZVxuICAgICAgICB9KSA9PiB0aGlzLmF1dGhTZXJ2aWNlLnJlbW92ZU1lbWJlckF1dGgocGF5bG9hZC5hdXRoSWQsIHBheWxvYWQubWVtYmVySWQpXG4gICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICBtYXAoKHZhbHVlOiBib29sZWFuKSA9PiB2YWx1ZSA/IHJlbW92ZU1lbWJlckF1dGhTdWNjZXNzQWN0aW9uKCkgOiByZW1vdmVNZW1iZXJBdXRoRmFpbHVyZUFjdGlvbigpKSxcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKCkgPT4gb2YocmVtb3ZlTWVtYmVyQXV0aEZhaWx1cmVBY3Rpb24oKSkpXG4gICAgICAgICAgKVxuICAgICAgKVxuICAgIClcbiAgKTtcblxuICByZW1vdmVUZWFtJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PiB0aGlzLmFjdGlvbnMkXG4gICAgLnBpcGUoXG4gICAgICBvZlR5cGUocmVtb3ZlVGVhbUF1dGhBY3Rpb24pLFxuICAgICAgZXhoYXVzdE1hcCgoe3BheWxvYWR9OiB7XG4gICAgICAgICAgcGF5bG9hZDogUmVtb3ZlVGVhbUF1dGhJbnRlcmZhY2VcbiAgICAgICAgfSkgPT4gdGhpcy5hdXRoU2VydmljZS5yZW1vdmVUZWFtQXV0aChwYXlsb2FkLmF1dGhJZCwgcGF5bG9hZC50ZWFtSWQpXG4gICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICBtYXAoKHZhbHVlOiBib29sZWFuKSA9PiB2YWx1ZSA/IHJlbW92ZVRlYW1BdXRoU3VjY2Vzc0FjdGlvbigpIDogcmVtb3ZlVGVhbUF1dGhGYWlsdXJlQWN0aW9uKCkpLFxuICAgICAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiBvZihyZW1vdmVNZW1iZXJBdXRoRmFpbHVyZUFjdGlvbigpKSlcbiAgICAgICAgICApXG4gICAgICApXG4gICAgKVxuICApO1xuXG4gIHNldEN1cnJlbnQkID0gY3JlYXRlRWZmZWN0KCgpID0+IHRoaXMuYWN0aW9ucyRcbiAgICAucGlwZShcbiAgICAgIG9mVHlwZShzZXRDdXJyZW50QXV0aEFjdGlvbiksXG4gICAgICBleGhhdXN0TWFwKCh7cGF5bG9hZH06IHsgcGF5bG9hZDogQXV0aCB9KSA9PiB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldEFzT2JzZXJ2YWJsZShTVE9SQUdFX1NFTEVDVEVEX0FVVEgpXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIG1lcmdlTWFwKChvbGRBdXRoOiBBdXRoKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5zdG9yYWdlU2VydmljZS5zZXRBc09ic2VydmFibGUoU1RPUkFHRV9TRUxFQ1RFRF9BVVRILCBwYXlsb2FkKVxuICAgICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtZXJnZU1hcCgobmV3QXV0aDogQXV0aCkgPT4ge1xuICAgICAgICAgICAgICAgICAgaWYgKG9sZEF1dGggJiYgbmV3QXV0aC5pZCA9PT0gb2xkQXV0aC5pZCAmJiAoKG5ld0F1dGgubWVtYmVycyAmJiBuZXdBdXRoLm1lbWJlcnMubGVuZ3RoID09PSBvbGRBdXRoLm1lbWJlcnMubGVuZ3RoKSB8fCAobmV3QXV0aC50ZWFtcyAmJiBuZXdBdXRoLnRlYW1zLmxlbmd0aCA9PT0gb2xkQXV0aC50ZWFtcy5sZW5ndGggJiYgbmV3QXV0aC50ZWFtc1swXS5pZCA9PT0gb2xkQXV0aC50ZWFtc1swXS5pZCkpKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAgICAgICAgICAgZ2V0Q3VycmVudEF1dGhTdWNjZXNzQWN0aW9uKHtwYXlsb2FkOiBuZXdBdXRofSlcbiAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICAgICAgICAgICBnZXRDdXJyZW50QXV0aFN1Y2Nlc3NBY3Rpb24oe3BheWxvYWQ6IG5ld0F1dGh9KSxcbiAgICAgICAgICAgICAgICAgICAgICBjbGVhclN0b3JlQWN0aW9uKClcbiAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICB9KVxuICAgICAgICApXG4gICAgICApXG4gICAgKVxuICApO1xufVxuIl19
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5lZmZlY3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YS1hY2Nlc3Mvc3JjL2xpYi9zdG9yZS9lZmZlY3RzL2F1dGguZWZmZWN0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUNMLFdBQVcsRUFDWCxxQkFBcUIsRUFDckIsd0JBQXdCLEVBQ3hCLGFBQWEsRUFDYixjQUFjLEVBQ2QsV0FBVyxFQUNaLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUNMLHlCQUF5QixFQUN6QixnQ0FBZ0MsRUFDaEMsZ0JBQWdCLEVBQ2hCLG9CQUFvQixFQUNwQiwyQkFBMkIsRUFDM0IsY0FBYyxFQUNkLHFCQUFxQixFQUNyQixxQkFBcUIsRUFDckIsbUJBQW1CLEVBQ25CLDBCQUEwQixFQUMxQiwwQkFBMEIsRUFDMUIsa0JBQWtCLEVBQ2xCLHlCQUF5QixFQUN6Qix5QkFBeUIsRUFDekIsc0JBQXNCLEVBQ3RCLDZCQUE2QixFQUM3Qiw2QkFBNkIsRUFDN0Isb0JBQW9CLEVBQ3BCLDJCQUEyQixFQUMzQiwyQkFBMkIsRUFDM0Isb0JBQW9CLEVBQ3JCLE1BQU0sWUFBWSxDQUFDO0FBQ3BCLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUlqRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7QUFHN0QsTUFBTSxPQUFPLFdBQVc7SUFDZCxRQUFRLEdBQUcsTUFBTSxDQUFDLE9BQU8s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Q0FBQyxxQkFBcUIsRUFBRSxPQUFPLENBQUM7YUFDdkUsSUFBSSxDQUNILFFBQVEsQ0FBQyxDQUFDLE9BQWEsRUFBRSxFQUFFO1lBQ3pCLElBQUksT0FBTyxJQUFJLE9BQU8sQ0FBQyxFQUFFLEtBQUssT0FBTyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sS0FBSyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sS0FBSyxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDeE8sT0FBTztvQkFDTCwyQkFBMkIsQ0FBQyxFQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUMsQ0FBQztpQkFDaEQsQ0FBQTtZQUNILENBQUM7aUJBQU0sQ0FBQztnQkFDTixPQUFPO29CQUNMLDJCQUEyQixDQUFDLEVBQUMsT0FBTyxFQUFFLE9BQU8sRUFBQyxDQUFDO29CQUMvQyxnQkFBZ0IsRUFBRTtpQkFDbkIsQ0FBQTtZQUNILENBQUM7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFBO0lBQ0wsQ0FBQyxDQUFDLENBQ0gsQ0FDRixDQUNGLENBQ0YsQ0FBQzt1R0E3S1MsV0FBVzsyR0FBWCxXQUFXOzsyRkFBWCxXQUFXO2tCQUR2QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3Rpb25zLCBjcmVhdGVFZmZlY3QsIG9mVHlwZSB9IGZyb20gJ0BuZ3J4L2VmZmVjdHMnO1xuaW1wb3J0IHtcbiAgQXV0aFNlcnZpY2UsXG4gIFNUT1JBR0VfU0VMRUNURURfQVVUSCxcbiAgU1RPUkFHRV9TRUxFQ1RFRF9NRU1CRVJTLFxuICBTVE9SQUdFX1RPS0VOLFxuICBTdG9yYWdlU2VydmljZSxcbiAgVGVhbVNlcnZpY2Vcbn0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHtcbiAgY2xlYXJBdXRoZW50aWNhdGlvbkFjdGlvbixcbiAgY2xlYXJBdXRoZW50aWNhdGlvblN1Y2Nlc3NBY3Rpb24sXG4gIGNsZWFyU3RvcmVBY3Rpb24sXG4gIGdldEN1cnJlbnRBdXRoQWN0aW9uLFxuICBnZXRDdXJyZW50QXV0aFN1Y2Nlc3NBY3Rpb24sXG4gIGxpc3RBdXRoQWN0aW9uLFxuICBsaXN0QXV0aEZhaWx1cmVBY3Rpb24sXG4gIGxpc3RBdXRoU3VjY2Vzc0FjdGlvbixcbiAgbGlzdEF1dGhUZWFtc0FjdGlvbixcbiAgbGlzdEF1dGhUZWFtc0ZhaWx1cmVBY3Rpb24sXG4gIGxpc3RBdXRoVGVhbXNTdWNjZXNzQWN0aW9uLFxuICByZWZyZXNoQXV0aHNBY3Rpb24sXG4gIHJlZnJlc2hBdXRoc0ZhaWx1cmVBY3Rpb24sXG4gIHJlZnJlc2hBdXRoc1N1Y2Nlc3NBY3Rpb24sXG4gIHJlbW92ZU1lbWJlckF1dGhBY3Rpb24sXG4gIHJlbW92ZU1lbWJlckF1dGhGYWlsdXJlQWN0aW9uLFxuICByZW1vdmVNZW1iZXJBdXRoU3VjY2Vzc0FjdGlvbixcbiAgcmVtb3ZlVGVhbUF1dGhBY3Rpb24sXG4gIHJlbW92ZVRlYW1BdXRoRmFpbHVyZUFjdGlvbixcbiAgcmVtb3ZlVGVhbUF1dGhTdWNjZXNzQWN0aW9uLFxuICBzZXRDdXJyZW50QXV0aEFjdGlvblxufSBmcm9tICcuLi9hY3Rpb25zJztcbmltcG9ydCB7IGV4aGF1c3RNYXAsIGZvcmtKb2luLCBtZXJnZU1hcCwgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQXV0aCwgQ29sbGVjdGlvbiwgU2VhcmNoVGVhbSB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBSZW1vdmVNZW1iZXJBdXRoSW50ZXJmYWNlLCBSZW1vdmVUZWFtQXV0aEludGVyZmFjZSB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgQXV0aGVudGljYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vYXV0aGVudGljYXRpb24nO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQXV0aEVmZmVjdHMge1xuICBwcml2YXRlIGFjdGlvbnMkID0gaW5qZWN0KEFjdGlvbnMpO1xuICBwcml2YXRlIGF1dGhlbnRpY2F0aW9uU2VydmljZSA9IGluamVjdChBdXRoZW50aWNhdGlvblNlcnZpY2UpO1xuICBwcml2YXRlIGF1dGhTZXJ2aWNlID0gaW5qZWN0KEF1dGhTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBzdG9yYWdlU2VydmljZSA9IGluamVjdChTdG9yYWdlU2VydmljZSk7XG4gIHByaXZhdGUgdGVhbVNlcnZpY2UgPSBpbmplY3QoVGVhbVNlcnZpY2UpO1xuXG4gIGNsZWFyQXV0aGVudGljYXRpb24kID0gY3JlYXRlRWZmZWN0KCgpID0+IHRoaXMuYWN0aW9ucyRcbiAgICAucGlwZShcbiAgICAgIG9mVHlwZShjbGVhckF1dGhlbnRpY2F0aW9uQWN0aW9uKSxcbiAgICAgIGV4aGF1c3RNYXAoKCkgPT5cbiAgICAgICAgZm9ya0pvaW4oXG4gICAgICAgICAge1xuICAgICAgICAgICAgdG9rZW5SZW1vdmFsOiB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnJlbW92ZUFzT2JzZXJ2YWJsZShTVE9SQUdFX1RPS0VOKSxcbiAgICAgICAgICAgIHNlbGVjdGVkQXV0aFJlbW92YWw6IHRoaXMuc3RvcmFnZVNlcnZpY2UucmVtb3ZlQXNPYnNlcnZhYmxlKFNUT1JBR0VfU0VMRUNURURfQVVUSCksXG4gICAgICAgICAgICBzZWxlY3RlZE1lbWJlcnNSZW1vdmFsOiB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnJlbW92ZUFzT2JzZXJ2YWJsZShTVE9SQUdFX1NFTEVDVEVEX01FTUJFUlMpLFxuICAgICAgICAgIH1cbiAgICAgICAgKS5waXBlKFxuICAgICAgICAgIG1lcmdlTWFwKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuYXV0aGVudGljYXRpb25TZXJ2aWNlLmNsZWFyQXV0aGVudGljYXRpb24oKTtcbiAgICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAgIGNsZWFyU3RvcmVBY3Rpb24oKSxcbiAgICAgICAgICAgICAgY2xlYXJBdXRoZW50aWNhdGlvblN1Y2Nlc3NBY3Rpb24oKVxuICAgICAgICAgICAgXVxuICAgICAgICAgIH0pXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG5cbiAgZ2V0Q3VycmVudCQgPSBjcmVhdGVFZmZlY3QoKCkgPT4gdGhpcy5hY3Rpb25zJFxuICAgIC5waXBlKFxuICAgICAgb2ZUeXBlKGdldEN1cnJlbnRBdXRoQWN0aW9uKSxcbiAgICAgIGV4aGF1c3RNYXAoKCkgPT4gdGhpcy5zdG9yYWdlU2VydmljZS5nZXRBc09ic2VydmFibGUoU1RPUkFHRV9TRUxFQ1RFRF9BVVRIKVxuICAgICAgICAucGlwZShcbiAgICAgICAgICBtYXAoKGF1dGg6IEF1dGggfCBudWxsIHwgdW5kZWZpbmVkKSA9PiB7XG4gICAgICAgICAgICBpZiAoYXV0aCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgIHJldHVybiBnZXRDdXJyZW50QXV0aFN1Y2Nlc3NBY3Rpb24oe3BheWxvYWQ6IG51bGx9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBnZXRDdXJyZW50QXV0aFN1Y2Nlc3NBY3Rpb24oe3BheWxvYWQ6IGF1dGh9KTtcbiAgICAgICAgICB9KVxuICAgICAgICApXG4gICAgICApXG4gICAgKVxuICApO1xuXG4gIGxpc3RBdXRoJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PiB0aGlzLmFjdGlvbnMkXG4gICAgLnBpcGUoXG4gICAgICBvZlR5cGUobGlzdEF1dGhBY3Rpb24pLFxuICAgICAgZXhoYXVzdE1hcCgoe3BheWxvYWR9KSA9PiB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhzKHBheWxvYWQpXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIG1hcCgoYXV0aHM6IENvbGxlY3Rpb248QXV0aD4pID0+IGxpc3RBdXRoU3VjY2Vzc0FjdGlvbih7cGF5bG9hZDogYXV0aHMudG9BcnJheSgpfSkpLFxuICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4gb2YobGlzdEF1dGhGYWlsdXJlQWN0aW9uKHtwYXlsb2FkOiBlcnJvcn0pKSlcbiAgICAgICAgKVxuICAgICAgKVxuICAgIClcbiAgKTtcblxuICBsaXN0QXV0aFRlYW1zJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PiB0aGlzLmFjdGlvbnMkXG4gICAgLnBpcGUoXG4gICAgICBvZlR5cGUobGlzdEF1dGhUZWFtc0FjdGlvbiksXG4gICAgICBleGhhdXN0TWFwKCh7cGF5bG9hZH0pID0+IHtcbiAgICAgICAgaWYgKHBheWxvYWQuY2x1YkFkbWluKSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMudGVhbVNlcnZpY2UuZ2V0Q2x1YlRlYW1zKHBheWxvYWQuaWQpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgbWFwKChzZWFyY2hUZWFtczogQ29sbGVjdGlvbjxTZWFyY2hUZWFtPikgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGF1dGggPSB7XG4gICAgICAgICAgICAgICAgICAuLi5wYXlsb2FkLFxuICAgICAgICAgICAgICAgICAgdGVhbXM6IHNlYXJjaFRlYW1zLnRvQXJyYXkoKVxuICAgICAgICAgICAgICAgICAgICAuc29ydCgoYTogU2VhcmNoVGVhbSwgYjogU2VhcmNoVGVhbSkgPT4gYS5uYW1lLmxvY2FsZUNvbXBhcmUoYi5uYW1lKSlcbiAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIGxpc3RBdXRoVGVhbXNTdWNjZXNzQWN0aW9uKHtwYXlsb2FkOiBhdXRofSk7XG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IG9mKGxpc3RBdXRoVGVhbXNGYWlsdXJlQWN0aW9uKHtwYXlsb2FkOiBlcnJvcn0pKSlcbiAgICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc3Qgc2VjdGlvbnNUZWFtcyQ6IEFycmF5PE9ic2VydmFibGU8Q29sbGVjdGlvbjxTZWFyY2hUZWFtPj4+ID0gcGF5bG9hZC5zZWN0aW9ucy5tYXAoKHNlY3Rpb24pID0+XG4gICAgICAgICAgICB0aGlzLnRlYW1TZXJ2aWNlLmdldFNlY3Rpb25UZWFtcyhzZWN0aW9uLmlkKVxuICAgICAgICAgICk7XG5cbiAgICAgICAgICByZXR1cm4gZm9ya0pvaW4oc2VjdGlvbnNUZWFtcyQpLnBpcGUoXG4gICAgICAgICAgICBtYXAoKHJlc3VsdHM6IEFycmF5PENvbGxlY3Rpb248U2VhcmNoVGVhbT4+KSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IHNvcnRlZFRlYW1zOiBBcnJheTxTZWFyY2hUZWFtPiA9IHJlc3VsdHNcbiAgICAgICAgICAgICAgICAuZmxhdE1hcCgocmVzdWx0OiBDb2xsZWN0aW9uPFNlYXJjaFRlYW0+KSA9PiByZXN1bHQudG9BcnJheSgpKVxuICAgICAgICAgICAgICAgIC5zb3J0KChhLCBiKSA9PiBhLm5hbWUubG9jYWxlQ29tcGFyZShiLm5hbWUpKTtcbiAgICAgICAgICAgICAgY29uc3QgYXV0aCA9IHtcbiAgICAgICAgICAgICAgICAuLi5wYXlsb2FkLFxuICAgICAgICAgICAgICAgIHRlYW1zOiBzb3J0ZWRUZWFtcyxcbiAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgcmV0dXJuIGxpc3RBdXRoVGVhbXNTdWNjZXNzQWN0aW9uKHtwYXlsb2FkOiBhdXRofSk7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4gb2YobGlzdEF1dGhUZWFtc0ZhaWx1cmVBY3Rpb24oe3BheWxvYWQ6IGVycm9yfSkpKVxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKVxuICApO1xuXG4gIHJlZnJlc2gkID0gY3JlYXRlRWZmZWN0KCgpID0+IHRoaXMuYWN0aW9ucyRcbiAgICAucGlwZShcbiAgICAgIG9mVHlwZShyZWZyZXNoQXV0aHNBY3Rpb24pLFxuICAgICAgZXhoYXVzdE1hcCgoKSA9PiB0aGlzLmF1dGhTZXJ2aWNlLnVwZGF0ZU1lbWJlcnMoKVxuICAgICAgICAucGlwZShcbiAgICAgICAgICBtZXJnZU1hcCgoc3VjY2VzczogYm9vbGVhbikgPT4ge1xuICAgICAgICAgICAgaWYgKHN1Y2Nlc3MpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICAgICByZWZyZXNoQXV0aHNTdWNjZXNzQWN0aW9uKCksXG4gICAgICAgICAgICAgICAgbGlzdEF1dGhBY3Rpb24oKVxuICAgICAgICAgICAgICBdO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgcmV0dXJuIG9mKHJlZnJlc2hBdXRoc0ZhaWx1cmVBY3Rpb24oKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSksXG4gICAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiBvZihyZWZyZXNoQXV0aHNGYWlsdXJlQWN0aW9uKCkpKVxuICAgICAgICApXG4gICAgICApXG4gICAgKVxuICApO1xuXG4gIHJlbW92ZU1lbWJlciQgPSBjcmVhdGVFZmZlY3QoKCkgPT4gdGhpcy5hY3Rpb25zJFxuICAgIC5waXBlKFxuICAgICAgb2ZUeXBlKHJlbW92ZU1lbWJlckF1dGhBY3Rpb24pLFxuICAgICAgZXhoYXVzdE1hcCgoe3BheWxvYWR9OiB7XG4gICAgICAgICAgcGF5bG9hZDogUmVtb3ZlTWVtYmVyQXV0aEludGVyZmFjZVxuICAgICAgICB9KSA9PiB0aGlzLmF1dGhTZXJ2aWNlLnJlbW92ZU1lbWJlckF1dGgocGF5bG9hZC5hdXRoSWQsIHBheWxvYWQubWVtYmVySWQpXG4gICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICBtYXAoKHZhbHVlOiBib29sZWFuKSA9PiB2YWx1ZSA/IHJlbW92ZU1lbWJlckF1dGhTdWNjZXNzQWN0aW9uKCkgOiByZW1vdmVNZW1iZXJBdXRoRmFpbHVyZUFjdGlvbigpKSxcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKCkgPT4gb2YocmVtb3ZlTWVtYmVyQXV0aEZhaWx1cmVBY3Rpb24oKSkpXG4gICAgICAgICAgKVxuICAgICAgKVxuICAgIClcbiAgKTtcblxuICByZW1vdmVUZWFtJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PiB0aGlzLmFjdGlvbnMkXG4gICAgLnBpcGUoXG4gICAgICBvZlR5cGUocmVtb3ZlVGVhbUF1dGhBY3Rpb24pLFxuICAgICAgZXhoYXVzdE1hcCgoe3BheWxvYWR9OiB7XG4gICAgICAgICAgcGF5bG9hZDogUmVtb3ZlVGVhbUF1dGhJbnRlcmZhY2VcbiAgICAgICAgfSkgPT4gdGhpcy5hdXRoU2VydmljZS5yZW1vdmVUZWFtQXV0aChwYXlsb2FkLmF1dGhJZCwgcGF5bG9hZC50ZWFtSWQpXG4gICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICBtYXAoKHZhbHVlOiBib29sZWFuKSA9PiB2YWx1ZSA/IHJlbW92ZVRlYW1BdXRoU3VjY2Vzc0FjdGlvbigpIDogcmVtb3ZlVGVhbUF1dGhGYWlsdXJlQWN0aW9uKCkpLFxuICAgICAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiBvZihyZW1vdmVNZW1iZXJBdXRoRmFpbHVyZUFjdGlvbigpKSlcbiAgICAgICAgICApXG4gICAgICApXG4gICAgKVxuICApO1xuXG4gIHNldEN1cnJlbnQkID0gY3JlYXRlRWZmZWN0KCgpID0+IHRoaXMuYWN0aW9ucyRcbiAgICAucGlwZShcbiAgICAgIG9mVHlwZShzZXRDdXJyZW50QXV0aEFjdGlvbiksXG4gICAgICBleGhhdXN0TWFwKCh7cGF5bG9hZH06IHsgcGF5bG9hZDogQXV0aCB9KSA9PiB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldEFzT2JzZXJ2YWJsZShTVE9SQUdFX1NFTEVDVEVEX0FVVEgpXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIG1lcmdlTWFwKChvbGRBdXRoOiBBdXRoKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5zdG9yYWdlU2VydmljZS5zZXRBc09ic2VydmFibGUoU1RPUkFHRV9TRUxFQ1RFRF9BVVRILCBwYXlsb2FkKVxuICAgICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtZXJnZU1hcCgobmV3QXV0aDogQXV0aCkgPT4ge1xuICAgICAgICAgICAgICAgICAgaWYgKG9sZEF1dGggJiYgbmV3QXV0aC5pZCA9PT0gb2xkQXV0aC5pZCAmJiAoKG5ld0F1dGgubWVtYmVycyAmJiBuZXdBdXRoLm1lbWJlcnMubGVuZ3RoID09PSBvbGRBdXRoLm1lbWJlcnMubGVuZ3RoKSB8fCAobmV3QXV0aC50ZWFtcyAmJiBuZXdBdXRoLnRlYW1zLmxlbmd0aCA9PT0gb2xkQXV0aC50ZWFtcy5sZW5ndGggJiYgbmV3QXV0aC50ZWFtc1swXS5pZCA9PT0gb2xkQXV0aC50ZWFtc1swXS5pZCkpKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAgICAgICAgICAgZ2V0Q3VycmVudEF1dGhTdWNjZXNzQWN0aW9uKHtwYXlsb2FkOiBuZXdBdXRofSlcbiAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICAgICAgICAgICBnZXRDdXJyZW50QXV0aFN1Y2Nlc3NBY3Rpb24oe3BheWxvYWQ6IG5ld0F1dGh9KSxcbiAgICAgICAgICAgICAgICAgICAgICBjbGVhclN0b3JlQWN0aW9uKClcbiAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICB9KVxuICAgICAgICApXG4gICAgICApXG4gICAgKVxuICApO1xufVxuIl19