stream-chat-angular 5.1.8 → 5.1.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- export declare const version = "5.1.8";
1
+ export declare const version = "5.1.10";
@@ -1,2 +1,2 @@
1
- export const version = '5.1.8';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3N0cmVhbS1jaGF0LWFuZ3VsYXIvc3JjL2Fzc2V0cy92ZXJzaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgdmVyc2lvbiA9ICc1LjEuOCc7XG4iXX0=
1
+ export const version = '5.1.10';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3N0cmVhbS1jaGF0LWFuZ3VsYXIvc3JjL2Fzc2V0cy92ZXJzaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgdmVyc2lvbiA9ICc1LjEuMTAnO1xuIl19
@@ -184,7 +184,7 @@ export class AutocompleteTextareaComponent {
184
184
  this.updateMentionedUsersFromText();
185
185
  }
186
186
  enterHit(event) {
187
- if (this.inputMode === 'desktop') {
187
+ if (this.inputMode === 'desktop' && !event.isComposing) {
188
188
  event.preventDefault();
189
189
  this.updateMentionedUsersFromText();
190
190
  this.send.next();
@@ -271,4 +271,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
271
271
  type: ViewChild,
272
272
  args: ['input']
273
273
  }] } });
274
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLXRleHRhcmVhLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N0cmVhbS1jaGF0LWFuZ3VsYXIvc3JjL2xpYi9tZXNzYWdlLWlucHV0L2F1dG9jb21wbGV0ZS10ZXh0YXJlYS9hdXRvY29tcGxldGUtdGV4dGFyZWEuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3RyZWFtLWNoYXQtYW5ndWxhci9zcmMvbGliL21lc3NhZ2UtaW5wdXQvYXV0b2NvbXBsZXRlLXRleHRhcmVhL2F1dG9jb21wbGV0ZS10ZXh0YXJlYS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0wsU0FBUyxFQUVULFlBQVksRUFDWixXQUFXLEVBQ1gsS0FBSyxFQUVMLE1BQU0sRUFHTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFRdkIsT0FBTyxFQUFFLGVBQWUsRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFLckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7Ozs7QUFNOUM7O0dBRUc7QUFNSCxNQUFNLE9BQU8sNkJBQTZCO0lBeUZ4QyxZQUNVLGNBQThCLEVBQzlCLGlCQUFvQyxFQUNwQyxzQkFBOEMsRUFDOUMsaUJBQW9DLEVBQ3BDLHNCQUE4QyxFQUM5QyxZQUEwQixFQUMxQixLQUF3QjtRQU54QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQywyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FBQzlDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQUM5QyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixVQUFLLEdBQUwsS0FBSyxDQUFtQjtRQTdGbkIsVUFB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T0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDaEMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQzNCLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsR0FBRyxFQUFFLENBQUMsRUFBRTtnQkFDM0QscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQy9CO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLHFCQUFxQixDQUFDLE1BQU0sS0FBSyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRTtZQUMvRCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcscUJBQXFCLENBQUMsQ0FBQyxDQUFDO1lBQ25ELElBQUksQ0FBQyxjQUFjLEdBQUcscUJBQXFCLENBQUM7U0FDN0M7SUFDSCxDQUFDOzswSEEvU1UsNkJBQTZCOzhHQUE3Qiw2QkFBNkIsc2ZDeEMxQyx1d0VBeUVBOzJGRGpDYSw2QkFBNkI7a0JBTHpDLFNBQVM7K0JBQ0UsOEJBQThCOzBTQU96QixLQUFLO3NCQUFuQixXQUFXO2dCQUtILEtBQUs7c0JBQWIsS0FBSztnQkFJRyxXQUFXO3NCQUFuQixLQUFLO2dCQUlHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFJRyxTQUFTO3NCQUFqQixLQUFLO2dCQUlHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBSUcsU0FBUztzQkFBakIsS0FBSztnQkFJYSxXQUFXO3NCQUE3QixNQUFNO2dCQUlZLElBQUk7c0JBQXRCLE1BQU07Z0JBSVksWUFBWTtzQkFBOUIsTUFBTTtnQkFhcUIsWUFBWTtzQkFBdkMsU0FBUzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0QmluZGluZyxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1lbnRpb25Db25maWcsIE1lbnRpb25zIH0gZnJvbSAnYW5ndWxhci1tZW50aW9ucyc7XG5pbXBvcnQge1xuICBNZW50aW9uQXV0Y29tcGxldGVMaXN0SXRlbUNvbnRleHQsXG4gIE1lbnRpb25BdXRjb21wbGV0ZUxpc3RJdGVtLFxuICBDb21tYW5kQXV0b2NvbXBsZXRlTGlzdEl0ZW1Db250ZXh0LFxufSBmcm9tICcuLi8uLi90eXBlcyc7XG5cbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBVc2VyUmVzcG9uc2UgfSBmcm9tICdzdHJlYW0tY2hhdCc7XG5pbXBvcnQgeyBDaGFubmVsU2VydmljZSB9IGZyb20gJy4uLy4uL2NoYW5uZWwuc2VydmljZSc7XG5pbXBvcnQgeyBUZXh0YXJlYUludGVyZmFjZSB9IGZyb20gJy4uL3RleHRhcmVhLmludGVyZmFjZSc7XG5pbXBvcnQgeyBDaGF0Q2xpZW50U2VydmljZSB9IGZyb20gJy4uLy4uL2NoYXQtY2xpZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgVHJhbnNsaXRlcmF0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3RyYW5zbGl0ZXJhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IEVtb2ppSW5wdXRTZXJ2aWNlIH0gZnJvbSAnLi4vZW1vamktaW5wdXQuc2VydmljZSc7XG5pbXBvcnQgeyBDdXN0b21UZW1wbGF0ZXNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY3VzdG9tLXRlbXBsYXRlcy5zZXJ2aWNlJztcbmltcG9ydCB7IFRoZW1lU2VydmljZSB9IGZyb20gJy4uLy4uL3RoZW1lLnNlcnZpY2UnO1xuXG4vKipcbiAqIFRoZSBgQXV0b2NvbXBsZXRlVGV4dGFyZWFgIGNvbXBvbmVudCBpcyB1c2VkIGJ5IHRoZSBbYE1lc3NhZ2VJbnB1dGBdKC4vTWVzc2FnZUlucHV0Q29tcG9uZW50Lm1keCkgY29tcG9uZW50IHRvIGRpc3BsYXkgdGhlIGlucHV0IEhUTUwgZWxlbWVudCB3aGVyZSB1c2VycyBjYW4gdHlwZSB0aGVpciBtZXNzYWdlLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzdHJlYW0tYXV0b2NvbXBsZXRlLXRleHRhcmVhJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2F1dG9jb21wbGV0ZS10ZXh0YXJlYS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlczogW10sXG59KVxuZXhwb3J0IGNsYXNzIEF1dG9jb21wbGV0ZVRleHRhcmVhQ29tcG9uZW50XG4gIGltcGxlbWVudHMgVGV4dGFyZWFJbnRlcmZhY2UsIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdFxue1xuICBASG9zdEJpbmRpbmcoKSBjbGFzcyA9XG4gICAgJ3N0ci1jaGF0X190ZXh0YXJlYSBzdHItY2hhdF9fbWVzc2FnZS10ZXh0YXJlYS1hbmd1bGFyLWhvc3QnO1xuICAvKipcbiAgICogVGhlIHZhbHVlIG9mIHRoZSBpbnB1dCBIVE1MIGVsZW1lbnQuXG4gICAqL1xuICBASW5wdXQoKSB2YWx1ZSA9ICcnO1xuICAvKipcbiAgICogUGxhY2Vob2xkZXIgb2YgdGhlIHRleHRhcmVhXG4gICAqL1xuICBASW5wdXQoKSBwbGFjZWhvbGRlciA9ICcnO1xuICAvKipcbiAgICogSWYgdHJ1ZSwgdXNlcnMgY2FuIG1lbnRpb24gb3RoZXIgdXNlcnMgaW4gbWVzc2FnZXMuIFlvdSBjYW4gYWxzbyBzZXQgdGhpcyBpbnB1dCBvbiB0aGUgW2BNZXNzYWdlSW5wdXRgXSguL01lc3NhZ2VJbnB1dENvbXBvbmVudC5tZHgvI2lucHV0cy1hbmQtb3V0cHV0cykgY29tcG9uZW50LlxuICAgKi9cbiAgQElucHV0KCkgYXJlTWVudGlvbnNFbmFibGVkOiBib29sZWFuIHwgdW5kZWZpbmVkID0gdHJ1ZTtcbiAgLyoqXG4gICAqIFNlZSBbYE1lc3NhZ2VJbnB1dENvbmZpZ1NlcnZpY2VgXSguLi9zZXJ2aWNlcy9NZXNzYWdlSW5wdXRDb25maWdTZXJ2aWNlLm1keCkgZm9yIG1vcmUgaW5mb3JtYXRpb25cbiAgICovXG4gIEBJbnB1dCgpIGlucHV0TW9kZSE6ICdkZXNrdG9wJyB8ICdtb2JpbGUnO1xuICAvKipcbiAgICogVGhlIHNjb3BlIGZvciB1c2VyIG1lbnRpb25zLCBlaXRoZXIgbWVtYmVycyBvZiB0aGUgY3VycmVudCBjaGFubmVsIG9mIG1lbWJlcnMgb2YgdGhlIGFwcGxpY2F0aW9uLiBZb3UgY2FuIGFsc28gc2V0IHRoaXMgaW5wdXQgb24gdGhlIFtgTWVzc2FnZUlucHV0YF0oLi9NZXNzYWdlSW5wdXRDb21wb25lbnQubWR4LyNpbnB1dHMtYW5kLW91dHB1dHMpIGNvbXBvbmVudC5cbiAgICovXG4gIEBJbnB1dCgpIG1lbnRpb25TY29wZTogJ2NoYW5uZWwnIHwgJ2FwcGxpY2F0aW9uJyA9ICdjaGFubmVsJztcbiAgLyoqXG4gICAqIEVuYWJsZXMgb3IgZGlzYWJsZXMgYXV0byBmb2N1cyBvbiB0aGUgdGV4dGFyZWEgZWxlbWVudFxuICAgKi9cbiAgQElucHV0KCkgYXV0b0ZvY3VzID0gdHJ1ZTtcbiAgLyoqXG4gICAqIEVtaXRzIHRoZSBjdXJyZW50IHZhbHVlIG9mIHRoZSBpbnB1dCBlbGVtZW50IHdoZW4gYSB1c2VyIHR5cGVzLlxuICAgKi9cbiAgQE91dHB1dCgpIHJlYWRvbmx5IHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG4gIC8qKlxuICAgKiBFbWl0cyB3aGVuIGEgdXNlciB0cmlnZ2VycyBhIG1lc3NhZ2Ugc2VuZCBldmVudCAodGhpcyBoYXBwZW5zIHdoZW4gdGhleSBoaXQgdGhlIGBFbnRlcmAga2V5KS5cbiAgICovXG4gIEBPdXRwdXQoKSByZWFkb25seSBzZW5kID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICAvKipcbiAgICogRW1pdHMgdGhlIGFycmF5IG9mIHVzZXJzIHRoYXQgYXJlIG1lbnRpb25lZCBpbiB0aGUgbWVzc2FnZSwgaXQgaXMgdXBkYXRlZCB3aGVuIGEgdXNlciBtZW50aW9ucyBhIG5ldyB1c2VyIG9yIGRlbGV0ZXMgYSBtZW50aW9uLlxuICAgKi9cbiAgQE91dHB1dCgpIHJlYWRvbmx5IHVzZXJNZW50aW9ucyA9IG5ldyBFdmVudEVtaXR0ZXI8VXNlclJlc3BvbnNlW10+KCk7XG4gIG1lbnRpb25BdXRvY29tcGxldGVJdGVtVGVtcGxhdGU6XG4gICAgfCBUZW1wbGF0ZVJlZjxNZW50aW9uQXV0Y29tcGxldGVMaXN0SXRlbUNvbnRleHQ+XG4gICAgfCB1bmRlZmluZWQ7XG4gIGNvbW1hbmRBdXRvY29tcGxldGVJdGVtVGVtcGxhdGU6XG4gICAgfCBUZW1wbGF0ZVJlZjxDb21tYW5kQXV0b2NvbXBsZXRlTGlzdEl0ZW1Db250ZXh0PlxuICAgIHwgdW5kZWZpbmVkO1xuICBwcml2YXRlIHJlYWRvbmx5IGF1dG9jb21wbGV0ZUtleSA9ICdhdXRvY29tcGxldGVMYWJlbCc7XG4gIHByaXZhdGUgcmVhZG9ubHkgbWVudGlvblRyaWdnZXJDaGFyID0gJ0AnO1xuICBwcml2YXRlIHJlYWRvbmx5IGNvbW1hbmRUcmlnZ2VyQ2hhciA9ICcvJztcbiAgYXV0b2NvbXBsZXRlQ29uZmlnOiBNZW50aW9uQ29uZmlnID0ge1xuICAgIG1lbnRpb25zOiBbXSxcbiAgfTtcbiAgQFZpZXdDaGlsZCgnaW5wdXQnKSBwcml2YXRlIG1lc3NhZ2VJbnB1dCE6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcbiAgcHJpdmF0ZSBtZW50aW9uZWRVc2VyczogVXNlclJlc3BvbnNlW10gPSBbXTtcbiAgcHJpdmF0ZSB1c2VyTWVudGlvbkNvbmZpZzogTWVudGlvbnMgPSB7XG4gICAgdHJpZ2dlckNoYXI6IHRoaXMubWVudGlvblRyaWdnZXJDaGFyLFxuICAgIGRyb3BVcDogdHJ1ZSxcbiAgICBsYWJlbEtleTogdGhpcy5hdXRvY29tcGxldGVLZXksXG4gICAgcmV0dXJuVHJpZ2dlcjogdHJ1ZSxcbiAgICBtZW50aW9uRmlsdGVyOiAoXG4gICAgICBzZWFyY2hTdHJpbmc6IHN0cmluZyxcbiAgICAgIGl0ZW1zOiB7IGF1dG9jb21wbGV0ZUxhYmVsOiBzdHJpbmcgfVtdXG4gICAgKSA9PiB0aGlzLmZpbHRlcihzZWFyY2hTdHJpbmcsIGl0ZW1zKSxcbiAgICBtZW50aW9uU2VsZWN0OiAoaXRlbSwgdHJpZ2dlckNoYXIpID0+XG4gICAgICB0aGlzLml0ZW1TZWxlY3RlZEZyb21BdXRvY29tcGxldGVMaXN0KFxuICAgICAgICBpdGVtIGFzIE1lbnRpb25BdXRjb21wbGV0ZUxpc3RJdGVtLFxuICAgICAgICB0cmlnZ2VyQ2hhclxuICAgICAgKSxcbiAgfTtcbiAgcHJpdmF0ZSBzbGFzaENvbW1hbmRDb25maWc6IE1lbnRpb25zID0ge1xuICAgIHRyaWdnZXJDaGFyOiB0aGlzLmNvbW1hbmRUcmlnZ2VyQ2hhcixcbiAgICBkcm9wVXA6IHRydWUsXG4gICAgbGFiZWxLZXk6ICduYW1lJyxcbiAgICByZXR1cm5UcmlnZ2VyOiB0cnVlLFxuICAgIG1lbnRpb25GaWx0ZXI6IChcbiAgICAgIHNlYXJjaFN0cmluZzogc3RyaW5nLFxuICAgICAgaXRlbXM6IHsgYXV0b2NvbXBsZXRlTGFiZWw6IHN0cmluZyB9W11cbiAgICApID0+IHRoaXMuZmlsdGVyKHNlYXJjaFN0cmluZywgaXRlbXMpLFxuICAgIG1lbnRpb25TZWxlY3Q6IChpdGVtLCB0cmlnZ2VyQ2hhcikgPT5cbiAgICAgIHRoaXMuaXRlbVNlbGVjdGVkRnJvbUF1dG9jb21wbGV0ZUxpc3QoXG4gICAgICAgIGl0ZW0gYXMgTWVudGlvbkF1dGNvbXBsZXRlTGlzdEl0ZW0sXG4gICAgICAgIHRyaWdnZXJDaGFyXG4gICAgICApLFxuICB9O1xuICBwcml2YXRlIHNlYXJjaFRlcm0kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCcnKTtcbiAgcHJpdmF0ZSBpc1ZpZXdJbml0ZWQgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNoYW5uZWxTZXJ2aWNlOiBDaGFubmVsU2VydmljZSxcbiAgICBwcml2YXRlIGNoYXRDbGllbnRTZXJ2aWNlOiBDaGF0Q2xpZW50U2VydmljZSxcbiAgICBwcml2YXRlIHRyYW5zbGl0ZXJhdGlvblNlcnZpY2U6IFRyYW5zbGl0ZXJhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBlbW9qaUlucHV0U2VydmljZTogRW1vamlJbnB1dFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjdXN0b21UZW1wbGF0ZXNTZXJ2aWNlOiBDdXN0b21UZW1wbGF0ZXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgdGhlbWVTZXJ2aWNlOiBUaGVtZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7XG4gICAgdGhpcy5zZWFyY2hUZXJtJC5waXBlKGRlYm91bmNlVGltZSgzMDApKS5zdWJzY3JpYmUoKHNlYXJjaFRlcm0pID0+IHtcbiAgICAgIGlmIChzZWFyY2hUZXJtLnN0YXJ0c1dpdGgodGhpcy5tZW50aW9uVHJpZ2dlckNoYXIpKSB7XG4gICAgICAgIHZvaWQgdGhpcy51cGRhdGVNZW50aW9uT3B0aW9ucyhzZWFyY2hUZXJtKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcbiAgICAgIHRoaXMuY2hhbm5lbFNlcnZpY2UuYWN0aXZlQ2hhbm5lbCQuc3Vic2NyaWJlKChjaGFubmVsKSA9PiB7XG4gICAgICAgIGNvbnN0IGNvbW1hbmRzID0gY2hhbm5lbD8uZ2V0Q29uZmlnKCk/LmNvbW1hbmRzIHx8IFtdO1xuICAgICAgICB0aGlzLnNsYXNoQ29tbWFuZENvbmZpZy5pdGVtcyA9IGNvbW1hbmRzLm1hcCgoYykgPT4gKHtcbiAgICAgICAgICAuLi5jLFxuICAgICAgICAgIFt0aGlzLmF1dG9jb21wbGV0ZUtleV06IGMubmFtZSxcbiAgICAgICAgICB0eXBlOiAnY29tbWFuZCcsXG4gICAgICAgIH0pKTtcbiAgICAgICAgdGhpcy5tZW50aW9uZWRVc2VycyA9IFtdO1xuICAgICAgICB0aGlzLnVzZXJNZW50aW9ucy5uZXh0KFsuLi50aGlzLm1lbnRpb25lZFVzZXJzXSk7XG4gICAgICAgIHZvaWQgdGhpcy51cGRhdGVNZW50aW9uT3B0aW9ucyh0aGlzLnNlYXJjaFRlcm0kLmdldFZhbHVlKCkpO1xuICAgICAgfSlcbiAgICApO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxuICAgICAgdGhpcy5lbW9qaUlucHV0U2VydmljZS5lbW9qaUlucHV0JC5zdWJzY3JpYmUoKGVtb2ppKSA9PiB7XG4gICAgICAgIHRoaXMubWVzc2FnZUlucHV0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgY29uc3QgeyBzZWxlY3Rpb25TdGFydCB9ID0gdGhpcy5tZXNzYWdlSW5wdXQubmF0aXZlRWxlbWVudDtcbiAgICAgICAgdGhpcy5tZXNzYWdlSW5wdXQubmF0aXZlRWxlbWVudC5zZXRSYW5nZVRleHQoZW1vamkpO1xuICAgICAgICB0aGlzLm1lc3NhZ2VJbnB1dC5uYXRpdmVFbGVtZW50LnNlbGVjdGlvblN0YXJ0ID1cbiAgICAgICAgICBzZWxlY3Rpb25TdGFydCEgKyBlbW9qaS5sZW5ndGg7XG4gICAgICAgIHRoaXMubWVzc2FnZUlucHV0Lm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uRW5kID1cbiAgICAgICAgICBzZWxlY3Rpb25TdGFydCEgKyBlbW9qaS5sZW5ndGg7XG4gICAgICAgIHRoaXMuaW5wdXRDaGFuZ2VkKCk7XG4gICAgICB9KVxuICAgICk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXG4gICAgICB0aGlzLmN1c3RvbVRlbXBsYXRlc1NlcnZpY2UubWVudGlvbkF1dG9jb21wbGV0ZUl0ZW1UZW1wbGF0ZSQuc3Vic2NyaWJlKFxuICAgICAgICAodGVtcGxhdGUpID0+ICh0aGlzLm1lbnRpb25BdXRvY29tcGxldGVJdGVtVGVtcGxhdGUgPSB0ZW1wbGF0ZSlcbiAgICAgIClcbiAgICApO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxuICAgICAgdGhpcy5jdXN0b21UZW1wbGF0ZXNTZXJ2aWNlLmNvbW1hbmRBdXRvY29tcGxldGVJdGVtVGVtcGxhdGUkLnN1YnNjcmliZShcbiAgICAgICAgKHRlbXBsYXRlKSA9PiAodGhpcy5jb21tYW5kQXV0b2NvbXBsZXRlSXRlbVRlbXBsYXRlID0gdGVtcGxhdGUpXG4gICAgICApXG4gICAgKTtcbiAgICB0aGlzLmF1dG9jb21wbGV0ZUNvbmZpZy5tZW50aW9ucyA9IFtcbiAgICAgIHRoaXMudXNlck1lbnRpb25Db25maWcsXG4gICAgICB0aGlzLnNsYXNoQ29tbWFuZENvbmZpZyxcbiAgICBdO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChjaGFuZ2VzLmFyZU1lbnRpb25zRW5hYmxlZCkge1xuICAgICAgaWYgKHRoaXMuYXJlTWVudGlvbnNFbmFibGVkKSB7XG4gICAgICAgIHRoaXMuYXV0b2NvbXBsZXRlQ29uZmlnLm1lbnRpb25zID0gW1xuICAgICAgICAgIHRoaXMudXNlck1lbnRpb25Db25maWcsXG4gICAgICAgICAgdGhpcy5zbGFzaENvbW1hbmRDb25maWcsXG4gICAgICAgIF07XG4gICAgICAgIHRoaXMuYXV0b2NvbXBsZXRlQ29uZmlnID0geyAuLi50aGlzLmF1dG9jb21wbGV0ZUNvbmZpZyB9O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5hdXRvY29tcGxldGVDb25maWcubWVudGlvbnMgPSBbdGhpcy5zbGFzaENvbW1hbmRDb25maWddO1xuICAgICAgICB0aGlzLmF1dG9jb21wbGV0ZUNvbmZpZyA9IHsgLi4udGhpcy5hdXRvY29tcGxldGVDb25maWcgfTtcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKGNoYW5nZXMubWVudGlvblNjb3BlKSB7XG4gICAgICB2b2lkIHRoaXMudXBkYXRlTWVudGlvbk9wdGlvbnModGhpcy5zZWFyY2hUZXJtJC5nZXRWYWx1ZSgpKTtcbiAgICB9XG4gICAgaWYgKGNoYW5nZXMudmFsdWUgJiYgIXRoaXMudmFsdWUgJiYgdGhpcy5tZXNzYWdlSW5wdXQpIHtcbiAgICAgIHRoaXMubWVzc2FnZUlucHV0Lm5hdGl2ZUVsZW1lbnQuc3R5bGUuaGVpZ2h0ID0gJ2F1dG8nO1xuICAgICAgdGhpcy5jaGF0Q2xpZW50U2VydmljZT8uY2hhdENsaWVudD8ubG9nZ2VyPy4oXG4gICAgICAgICdpbmZvJyxcbiAgICAgICAgJ1tBdXRvY29tcGxldGUgdGV4dGFyZWFdIFZhbHVlIHJlc2V0LCBhZGp1c3RpbmcgdGV4dGFyZWEgaGVpZ2h0IHRvIGF1dG8nXG4gICAgICApO1xuICAgICAgdGhpcy51cGRhdGVNZW50aW9uZWRVc2Vyc0Zyb21UZXh0KCk7XG4gICAgfSBlbHNlIGlmIChcbiAgICAgIGNoYW5nZXMudmFsdWUgJiZcbiAgICAgIHRoaXMudmFsdWUgJiZcbiAgICAgIHRoaXMubWVzc2FnZUlucHV0ICYmXG4gICAgICB0aGlzLmlzVmlld0luaXRlZFxuICAgICkge1xuICAgICAgdGhpcy5jaGF0Q2xpZW50U2VydmljZT8uY2hhdENsaWVudD8ubG9nZ2VyPy4oXG4gICAgICAgICdpbmZvJyxcbiAgICAgICAgJ1tBdXRvY29tcGxldGUgdGV4dGFyZWFdIFZhbHVlIGNoYW5nZWQnXG4gICAgICApO1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLm1lc3NhZ2VJbnB1dC5uYXRpdmVFbGVtZW50LnNjcm9sbEhlaWdodCA+IDApIHtcbiAgICAgICAgICB0aGlzLmFkanVzdFRleHRhcmVhSGVpZ2h0KCk7XG4gICAgICAgIH1cbiAgICAgIH0sIDApO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmlzVmlld0luaXRlZCA9IHRydWU7XG4gICAgdGhpcy5jaGF0Q2xpZW50U2VydmljZT8uY2hhdENsaWVudD8ubG9nZ2VyPy4oXG4gICAgICAnaW5mbycsXG4gICAgICAnW0F1dG9jb21wbGV0ZSB0ZXh0YXJlYV0gVmlldyBpbml0ZWQnXG4gICAgKTtcbiAgICBpZiAodGhpcy5tZXNzYWdlSW5wdXQubmF0aXZlRWxlbWVudC5zY3JvbGxIZWlnaHQgPiAwICYmIHRoaXMudmFsdWUpIHtcbiAgICAgIHRoaXMuYWRqdXN0VGV4dGFyZWFIZWlnaHQoKTtcbiAgICB9XG4gIH1cblxuICBmaWx0ZXIoc2VhcmNoU3RyaW5nOiBzdHJpbmcsIGl0ZW1zOiB7IGF1dG9jb21wbGV0ZUxhYmVsOiBzdHJpbmcgfVtdKSB7XG4gICAgcmV0dXJuIGl0ZW1zLmZpbHRlcigoaXRlbSkgPT5cbiAgICAgIHRoaXMudHJhbnNsaXRlcmF0ZShpdGVtLmF1dG9jb21wbGV0ZUxhYmVsLnRvTG93ZXJDYXNlKCkpLmluY2x1ZGVzKFxuICAgICAgICB0aGlzLnRyYW5zbGl0ZXJhdGUoc2VhcmNoU3RyaW5nLnRvTG93ZXJDYXNlKCkpXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIGl0ZW1TZWxlY3RlZEZyb21BdXRvY29tcGxldGVMaXN0KFxuICAgIGl0ZW06IE1lbnRpb25BdXRjb21wbGV0ZUxpc3RJdGVtLFxuICAgIHRyaWdnZXJDaGFyID0gJydcbiAgKSB7XG4gICAgaWYgKHRyaWdnZXJDaGFyID09PSB0aGlzLm1lbnRpb25UcmlnZ2VyQ2hhcikge1xuICAgICAgdGhpcy5tZW50aW9uZWRVc2Vycy5wdXNoKChpdGVtLnVzZXIgPyBpdGVtLnVzZXIgOiBpdGVtKSBhcyBVc2VyUmVzcG9uc2UpO1xuICAgICAgdGhpcy51c2VyTWVudGlvbnMubmV4dChbLi4udGhpcy5tZW50aW9uZWRVc2Vyc10pO1xuICAgIH1cbiAgICByZXR1cm4gdHJpZ2dlckNoYXIgKyBpdGVtLmF1dG9jb21wbGV0ZUxhYmVsICsgJyAnO1xuICB9XG5cbiAgYXV0Y29tcGxldGVTZWFyY2hUZXJtQ2hhbmdlZChzZWFyY2hUZXJtOiBzdHJpbmcpIHtcbiAgICBpZiAoc2VhcmNoVGVybSA9PT0gdGhpcy5tZW50aW9uVHJpZ2dlckNoYXIpIHtcbiAgICAgIHZvaWQgdGhpcy51cGRhdGVNZW50aW9uT3B0aW9ucygpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNlYXJjaFRlcm0kLm5leHQoc2VhcmNoVGVybSk7XG4gICAgfVxuICB9XG5cbiAgaW5wdXRDaGFuZ2VkKCkge1xuICAgIHRoaXMuY2hhdENsaWVudFNlcnZpY2U/LmNoYXRDbGllbnQ/LmxvZ2dlcj8uKFxuICAgICAgJ2luZm8nLFxuICAgICAgJ1tBdXRvY29tcGxldGUgdGV4dGFyZWFdIElucHV0IGNoYW5nZWQnXG4gICAgKTtcbiAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQodGhpcy5tZXNzYWdlSW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSk7XG4gICAgdGhpcy5hZGp1c3RUZXh0YXJlYUhlaWdodCgpO1xuICB9XG5cbiAgaW5wdXRMZWZ0KCkge1xuICAgIHRoaXMudXBkYXRlTWVudGlvbmVkVXNlcnNGcm9tVGV4dCgpO1xuICB9XG5cbiAgZW50ZXJIaXQoZXZlbnQ6IEV2ZW50KSB7XG4gICAgaWYgKHRoaXMuaW5wdXRNb2RlID09PSAnZGVza3RvcCcpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLnVwZGF0ZU1lbnRpb25lZFVzZXJzRnJvbVRleHQoKTtcbiAgICAgIHRoaXMuc2VuZC5uZXh0KCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhZGp1c3RUZXh0YXJlYUhlaWdodCgpIHtcbiAgICB0aGlzLmNoYXRDbGllbnRTZXJ2aWNlPy5jaGF0Q2xpZW50Py5sb2dnZXI/LihcbiAgICAgICdpbmZvJyxcbiAgICAgIGBbQXV0b2NvbXBsZXRlIHRleHRhcmVhXSBUZXh0YXJlYSBoZWlnaHQgc2V0IGZyb20gJHt0aGlzLm1lc3NhZ2VJbnB1dC5uYXRpdmVFbGVtZW50LnN0eWxlLmhlaWdodH0gdG8gJHt0aGlzLm1lc3NhZ2VJbnB1dC5uYXRpdmVFbGVtZW50LnNjcm9sbEhlaWdodH1weGBcbiAgICApO1xuICAgIHRoaXMubWVzc2FnZUlucHV0Lm5hdGl2ZUVsZW1lbnQuc3R5bGUuaGVpZ2h0ID0gJyc7XG4gICAgdGhpcy5tZXNzYWdlSW5wdXQubmF0aXZlRWxlbWVudC5zdHlsZS5oZWlnaHQgPSBgJHt0aGlzLm1lc3NhZ2VJbnB1dC5uYXRpdmVFbGVtZW50LnNjcm9sbEhlaWdodH1weGA7XG4gIH1cblxuICBwcml2YXRlIHRyYW5zbGl0ZXJhdGUoczogc3RyaW5nKSB7XG4gICAgaWYgKHRoaXMudHJhbnNsaXRlcmF0aW9uU2VydmljZSkge1xuICAgICAgcmV0dXJuIHRoaXMudHJhbnNsaXRlcmF0aW9uU2VydmljZS50cmFuc2xpdGVyYXRlKHMpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gcztcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHVwZGF0ZU1lbnRpb25PcHRpb25zKHNlYXJjaFRlcm0/OiBzdHJpbmcpIHtcbiAgICBpZiAoIXRoaXMuYXJlTWVudGlvbnNFbmFibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHNlYXJjaFRlcm0gPSBzZWFyY2hUZXJtPy5yZXBsYWNlKHRoaXMubWVudGlvblRyaWdnZXJDaGFyLCAnJyk7XG4gICAgY29uc3QgcmVxdWVzdCA9XG4gICAgICB0aGlzLm1lbnRpb25TY29wZSA9PT0gJ2FwcGxpY2F0aW9uJ1xuICAgICAgICA/IChzOiBzdHJpbmcpID0+IHRoaXMuY2hhdENsaWVudFNlcnZpY2UuYXV0b2NvbXBsZXRlVXNlcnMocylcbiAgICAgICAgOiAoczogc3RyaW5nKSA9PiB0aGlzLmNoYW5uZWxTZXJ2aWNlLmF1dG9jb21wbGV0ZU1lbWJlcnMocyk7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgcmVxdWVzdChzZWFyY2hUZXJtIHx8ICcnKTtcbiAgICBjb25zdCBpdGVtcyA9IHRoaXMuZmlsdGVyKFxuICAgICAgc2VhcmNoVGVybSB8fCAnJyxcbiAgICAgIHJlc3VsdC5tYXAoKGkpID0+IHtcbiAgICAgICAgY29uc3QgdXNlciA9IChpLnVzZXIgPyBpLnVzZXIgOiBpKSBhcyBVc2VyUmVzcG9uc2U7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgLi4uaSxcbiAgICAgICAgICBhdXRvY29tcGxldGVMYWJlbDogdXNlci5uYW1lIHx8IHVzZXIuaWQsXG4gICAgICAgICAgdHlwZTogJ21lbnRpb24nLFxuICAgICAgICB9O1xuICAgICAgfSlcbiAgICApO1xuICAgIHRoaXMudXNlck1lbnRpb25Db25maWcuaXRlbXMgPSBpdGVtcztcbiAgICB0aGlzLmF1dG9jb21wbGV0ZUNvbmZpZy5tZW50aW9ucyA9IFtcbiAgICAgIHRoaXMudXNlck1lbnRpb25Db25maWcsXG4gICAgICB0aGlzLnNsYXNoQ29tbWFuZENvbmZpZyxcbiAgICBdO1xuICAgIHRoaXMuYXV0b2NvbXBsZXRlQ29uZmlnID0geyAuLi50aGlzLmF1dG9jb21wbGV0ZUNvbmZpZyB9O1xuICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVNZW50aW9uZWRVc2Vyc0Zyb21UZXh0KCkge1xuICAgIGNvbnN0IHVwZGF0ZWRNZW50aW9uZWRVc2VyczogVXNlclJlc3BvbnNlW10gPSBbXTtcbiAgICB0aGlzLm1lbnRpb25lZFVzZXJzLmZvckVhY2goKHUpID0+IHtcbiAgICAgIGNvbnN0IGtleSA9IHUubmFtZSB8fCB1LmlkO1xuICAgICAgaWYgKHRoaXMudmFsdWUuaW5jbHVkZXMoYCR7dGhpcy5tZW50aW9uVHJpZ2dlckNoYXJ9JHtrZXl9YCkpIHtcbiAgICAgICAgdXBkYXRlZE1lbnRpb25lZFVzZXJzLnB1c2godSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgaWYgKHVwZGF0ZWRNZW50aW9uZWRVc2Vycy5sZW5ndGggIT09IHRoaXMubWVudGlvbmVkVXNlcnMubGVuZ3RoKSB7XG4gICAgICB0aGlzLnVzZXJNZW50aW9ucy5uZXh0KFsuLi51cGRhdGVkTWVudGlvbmVkVXNlcnNdKTtcbiAgICAgIHRoaXMubWVudGlvbmVkVXNlcnMgPSB1cGRhdGVkTWVudGlvbmVkVXNlcnM7XG4gICAgfVxuICB9XG59XG4iLCI8dGV4dGFyZWFcbiAgI2lucHV0XG4gIGRhdGEtdGVzdGlkPVwidGV4dGFyZWFcIlxuICBjbGFzcz1cIlxuICAgIHJ0YV9fdGV4dGFyZWFcbiAgICBzdHItY2hhdF9fdGV4dGFyZWFfX3RleHRhcmVhXG4gICAgc3RyLWNoYXRfX2FuZ3VsYXItdGV4dGFyZWFcbiAgICBzdHItY2hhdF9fbWVzc2FnZS10ZXh0YXJlYVxuICBcIlxuICByb3dzPVwiMVwiXG4gIFt2YWx1ZV09XCJ2YWx1ZSB8fCAnJ1wiXG4gIFthdXRvZm9jdXNdPVwiYXV0b0ZvY3VzXCJcbiAgcGxhY2Vob2xkZXI9XCJ7eyBwbGFjZWhvbGRlciB8IHRyYW5zbGF0ZSB9fVwiXG4gIFttZW50aW9uQ29uZmlnXT1cImF1dG9jb21wbGV0ZUNvbmZpZ1wiXG4gIFttZW50aW9uTGlzdFRlbXBsYXRlXT1cImF1dG9jb21wbGV0ZUl0ZW1cIlxuICAoaW5wdXQpPVwiaW5wdXRDaGFuZ2VkKClcIlxuICAoa2V5ZG93bi5lbnRlcik9XCJlbnRlckhpdCgkZXZlbnQpXCJcbiAgKHNlYXJjaFRlcm0pPVwiYXV0Y29tcGxldGVTZWFyY2hUZXJtQ2hhbmdlZCgkZXZlbnQpXCJcbiAgKGJsdXIpPVwiaW5wdXRMZWZ0KClcIlxuPjwvdGV4dGFyZWE+XG48bmctdGVtcGxhdGUgI2F1dG9jb21wbGV0ZUl0ZW0gbGV0LWl0ZW09XCJpdGVtXCI+XG4gIDxkaXYgY2xhc3M9XCJydGEgcnRhX19pdGVtIHN0ci1jaGF0X19lbW9qaXNlYXJjaF9faXRlbVwiIFtuZ1N3aXRjaF09XCJpdGVtLnR5cGVcIj5cbiAgICA8ZGl2ICpuZ1N3aXRjaENhc2U9XCInbWVudGlvbidcIiBjbGFzcz1cInJ0YV9fZW50aXR5XCI+XG4gICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgbWVudGlvbkF1dG9jb21wbGV0ZUl0ZW1UZW1wbGF0ZSB8fCBkZWZhdWx0TWVudGlvblRlbXBsYXRlO1xuICAgICAgICAgIGNvbnRleHQ6IHsgaXRlbTogaXRlbSB9XG4gICAgICAgIFwiXG4gICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdTd2l0Y2hDYXNlPVwiJ2NvbW1hbmQnXCIgY2xhc3M9XCJydGFfX2VudGl0eVwiPlxuICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgIGNvbW1hbmRBdXRvY29tcGxldGVJdGVtVGVtcGxhdGUgfHwgZGVmYXVsdENvbW1hbmRUZW1wbGF0ZTtcbiAgICAgICAgICBjb250ZXh0OiB7IGl0ZW06IGl0ZW0gfVxuICAgICAgICBcIlxuICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZGVmYXVsdENvbW1hbmRUZW1wbGF0ZSBsZXQtaXRlbT1cIml0ZW1cIj5cbiAgPGRpdiBjbGFzcz1cInN0ci1jaGF0X19zbGFzaC1jb21tYW5kXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJzdHItY2hhdF9fc2xhc2gtY29tbWFuZC1oZWFkZXJcIj5cbiAgICAgIDxzdHJvbmdcbiAgICAgICAgY2xhc3M9XCJzdHItY2hhdF9fc2xhc2gtY29tbWFuZC1uYW1lXCJcbiAgICAgICAgZGF0YS10ZXN0Y2xhc3M9XCJjb21tYW5kLW5hbWVcIlxuICAgICAgICA+e3sgaXRlbS5uYW1lIH19PC9zdHJvbmdcbiAgICAgID5cbiAgICAgIDxzcGFuIGNsYXNzPVwic3RyLWNoYXRfX3NsYXNoLWNvbW1hbmQtYXJnc1wiXG4gICAgICAgID4ve3sgaXRlbS5uYW1lIH19IHt7IGl0ZW0uYXJncyB9fTwvc3BhblxuICAgICAgPlxuICAgIDwvc3Bhbj5cbiAgICA8YnIgLz5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2RlZmF1bHRNZW50aW9uVGVtcGxhdGUgbGV0LWl0ZW09XCJpdGVtXCI+XG4gIDxkaXYgY2xhc3M9XCJzdHItY2hhdF9fdXNlci1pdGVtXCI+XG4gICAgPHN0cmVhbS1hdmF0YXItcGxhY2Vob2xkZXJcbiAgICAgIGRhdGEtdGVzdGNsYXNzPVwiYXZhdGFyXCJcbiAgICAgIGNsYXNzPVwic3RyLWNoYXRfX2F2YXRhciBzdHItY2hhdF9fYXZhdGFyLS1jaXJjbGVcIlxuICAgICAgdHlwZT1cInVzZXJcIlxuICAgICAgbG9jYXRpb249XCJhdXRvY29tcGxldGUtaXRlbVwiXG4gICAgICBbaW1hZ2VVcmxdPVwiaXRlbS5pbWFnZSB8fCBpdGVtLnVzZXI/LmltYWdlXCJcbiAgICAgIFtuYW1lXT1cIml0ZW0uYXV0b2NvbXBsZXRlTGFiZWxcIlxuICAgICAgW3VzZXJdPVwiaXRlbS51c2VyIHx8IGl0ZW1cIlxuICAgID48L3N0cmVhbS1hdmF0YXItcGxhY2Vob2xkZXI+XG4gICAgPHNwYW4gZGF0YS10ZXN0Y2xhc3M9XCJ1c2VybmFtZVwiIGNsYXNzPVwic3RyLWNoYXRfX3VzZXItaXRlbS0tbmFtZVwiPnt7XG4gICAgICBpdGVtLmF1dG9jb21wbGV0ZUxhYmVsXG4gICAgfX08L3NwYW4+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
274
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLXRleHRhcmVhLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3N0cmVhbS1jaGF0LWFuZ3VsYXIvc3JjL2xpYi9tZXNzYWdlLWlucHV0L2F1dG9jb21wbGV0ZS10ZXh0YXJlYS9hdXRvY29tcGxldGUtdGV4dGFyZWEuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3RyZWFtLWNoYXQtYW5ndWxhci9zcmMvbGliL21lc3NhZ2UtaW5wdXQvYXV0b2NvbXBsZXRlLXRleHRhcmVhL2F1dG9jb21wbGV0ZS10ZXh0YXJlYS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0wsU0FBUyxFQUVULFlBQVksRUFDWixXQUFXLEVBQ1gsS0FBSyxFQUVMLE1BQU0sRUFHTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFRdkIsT0FBTyxFQUFFLGVBQWUsRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFLckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7Ozs7QUFNOUM7O0dBRUc7QUFNSCxNQUFNLE9BQU8sNkJBQTZCO0lBeUZ4QyxZQUNVLGNBQThCLEVBQzlCLGlCQUFvQyxFQUNwQyxzQkFBOEMsRUFDOUMsaUJBQW9DLEVBQ3BDLHNCQUE4QyxFQUM5QyxZQUEwQixFQUMxQixLQUF3QjtRQU54QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQywyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FBQzlDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQUM5QyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixVQUFLLEdBQUwsS0FBSyxDQUFtQjtRQTdGbkIsVUFB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UUFDakQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNoQyxNQUFNLEdBQUcsR0FBRyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDM0IsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxHQUFHLEVBQUUsQ0FBQyxFQUFFO2dCQUMzRCxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDL0I7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILElBQUkscUJBQXFCLENBQUMsTUFBTSxLQUFLLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFO1lBQy9ELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxxQkFBcUIsQ0FBQyxDQUFDLENBQUM7WUFDbkQsSUFBSSxDQUFDLGNBQWMsR0FBRyxxQkFBcUIsQ0FBQztTQUM3QztJQUNILENBQUM7OzBIQS9TVSw2QkFBNkI7OEdBQTdCLDZCQUE2QixzZkN4QzFDLHV3RUF5RUE7MkZEakNhLDZCQUE2QjtrQkFMekMsU0FBUzsrQkFDRSw4QkFBOEI7MFNBT3pCLEtBQUs7c0JBQW5CLFdBQVc7Z0JBS0gsS0FBSztzQkFBYixLQUFLO2dCQUlHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBSUcsa0JBQWtCO3NCQUExQixLQUFLO2dCQUlHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBSUcsWUFBWTtzQkFBcEIsS0FBSztnQkFJRyxTQUFTO3NCQUFqQixLQUFLO2dCQUlhLFdBQVc7c0JBQTdCLE1BQU07Z0JBSVksSUFBSTtzQkFBdEIsTUFBTTtnQkFJWSxZQUFZO3NCQUE5QixNQUFNO2dCQWFxQixZQUFZO3NCQUF2QyxTQUFTO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RCaW5kaW5nLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWVudGlvbkNvbmZpZywgTWVudGlvbnMgfSBmcm9tICdhbmd1bGFyLW1lbnRpb25zJztcbmltcG9ydCB7XG4gIE1lbnRpb25BdXRjb21wbGV0ZUxpc3RJdGVtQ29udGV4dCxcbiAgTWVudGlvbkF1dGNvbXBsZXRlTGlzdEl0ZW0sXG4gIENvbW1hbmRBdXRvY29tcGxldGVMaXN0SXRlbUNvbnRleHQsXG59IGZyb20gJy4uLy4uL3R5cGVzJztcblxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFVzZXJSZXNwb25zZSB9IGZyb20gJ3N0cmVhbS1jaGF0JztcbmltcG9ydCB7IENoYW5uZWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY2hhbm5lbC5zZXJ2aWNlJztcbmltcG9ydCB7IFRleHRhcmVhSW50ZXJmYWNlIH0gZnJvbSAnLi4vdGV4dGFyZWEuaW50ZXJmYWNlJztcbmltcG9ydCB7IENoYXRDbGllbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY2hhdC1jbGllbnQuc2VydmljZSc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBUcmFuc2xpdGVyYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdHJhbnNsaXRlcmF0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgRW1vamlJbnB1dFNlcnZpY2UgfSBmcm9tICcuLi9lbW9qaS1pbnB1dC5zZXJ2aWNlJztcbmltcG9ydCB7IEN1c3RvbVRlbXBsYXRlc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9jdXN0b20tdGVtcGxhdGVzLnNlcnZpY2UnO1xuaW1wb3J0IHsgVGhlbWVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdGhlbWUuc2VydmljZSc7XG5cbi8qKlxuICogVGhlIGBBdXRvY29tcGxldGVUZXh0YXJlYWAgY29tcG9uZW50IGlzIHVzZWQgYnkgdGhlIFtgTWVzc2FnZUlucHV0YF0oLi9NZXNzYWdlSW5wdXRDb21wb25lbnQubWR4KSBjb21wb25lbnQgdG8gZGlzcGxheSB0aGUgaW5wdXQgSFRNTCBlbGVtZW50IHdoZXJlIHVzZXJzIGNhbiB0eXBlIHRoZWlyIG1lc3NhZ2UuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3N0cmVhbS1hdXRvY29tcGxldGUtdGV4dGFyZWEnLFxuICB0ZW1wbGF0ZVVybDogJy4vYXV0b2NvbXBsZXRlLXRleHRhcmVhLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgQXV0b2NvbXBsZXRlVGV4dGFyZWFDb21wb25lbnRcbiAgaW1wbGVtZW50cyBUZXh0YXJlYUludGVyZmFjZSwgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0XG57XG4gIEBIb3N0QmluZGluZygpIGNsYXNzID1cbiAgICAnc3RyLWNoYXRfX3RleHRhcmVhIHN0ci1jaGF0X19tZXNzYWdlLXRleHRhcmVhLWFuZ3VsYXItaG9zdCc7XG4gIC8qKlxuICAgKiBUaGUgdmFsdWUgb2YgdGhlIGlucHV0IEhUTUwgZWxlbWVudC5cbiAgICovXG4gIEBJbnB1dCgpIHZhbHVlID0gJyc7XG4gIC8qKlxuICAgKiBQbGFjZWhvbGRlciBvZiB0aGUgdGV4dGFyZWFcbiAgICovXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyID0gJyc7XG4gIC8qKlxuICAgKiBJZiB0cnVlLCB1c2VycyBjYW4gbWVudGlvbiBvdGhlciB1c2VycyBpbiBtZXNzYWdlcy4gWW91IGNhbiBhbHNvIHNldCB0aGlzIGlucHV0IG9uIHRoZSBbYE1lc3NhZ2VJbnB1dGBdKC4vTWVzc2FnZUlucHV0Q29tcG9uZW50Lm1keC8jaW5wdXRzLWFuZC1vdXRwdXRzKSBjb21wb25lbnQuXG4gICAqL1xuICBASW5wdXQoKSBhcmVNZW50aW9uc0VuYWJsZWQ6IGJvb2xlYW4gfCB1bmRlZmluZWQgPSB0cnVlO1xuICAvKipcbiAgICogU2VlIFtgTWVzc2FnZUlucHV0Q29uZmlnU2VydmljZWBdKC4uL3NlcnZpY2VzL01lc3NhZ2VJbnB1dENvbmZpZ1NlcnZpY2UubWR4KSBmb3IgbW9yZSBpbmZvcm1hdGlvblxuICAgKi9cbiAgQElucHV0KCkgaW5wdXRNb2RlITogJ2Rlc2t0b3AnIHwgJ21vYmlsZSc7XG4gIC8qKlxuICAgKiBUaGUgc2NvcGUgZm9yIHVzZXIgbWVudGlvbnMsIGVpdGhlciBtZW1iZXJzIG9mIHRoZSBjdXJyZW50IGNoYW5uZWwgb2YgbWVtYmVycyBvZiB0aGUgYXBwbGljYXRpb24uIFlvdSBjYW4gYWxzbyBzZXQgdGhpcyBpbnB1dCBvbiB0aGUgW2BNZXNzYWdlSW5wdXRgXSguL01lc3NhZ2VJbnB1dENvbXBvbmVudC5tZHgvI2lucHV0cy1hbmQtb3V0cHV0cykgY29tcG9uZW50LlxuICAgKi9cbiAgQElucHV0KCkgbWVudGlvblNjb3BlOiAnY2hhbm5lbCcgfCAnYXBwbGljYXRpb24nID0gJ2NoYW5uZWwnO1xuICAvKipcbiAgICogRW5hYmxlcyBvciBkaXNhYmxlcyBhdXRvIGZvY3VzIG9uIHRoZSB0ZXh0YXJlYSBlbGVtZW50XG4gICAqL1xuICBASW5wdXQoKSBhdXRvRm9jdXMgPSB0cnVlO1xuICAvKipcbiAgICogRW1pdHMgdGhlIGN1cnJlbnQgdmFsdWUgb2YgdGhlIGlucHV0IGVsZW1lbnQgd2hlbiBhIHVzZXIgdHlwZXMuXG4gICAqL1xuICBAT3V0cHV0KCkgcmVhZG9ubHkgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgLyoqXG4gICAqIEVtaXRzIHdoZW4gYSB1c2VyIHRyaWdnZXJzIGEgbWVzc2FnZSBzZW5kIGV2ZW50ICh0aGlzIGhhcHBlbnMgd2hlbiB0aGV5IGhpdCB0aGUgYEVudGVyYCBrZXkpLlxuICAgKi9cbiAgQE91dHB1dCgpIHJlYWRvbmx5IHNlbmQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIC8qKlxuICAgKiBFbWl0cyB0aGUgYXJyYXkgb2YgdXNlcnMgdGhhdCBhcmUgbWVudGlvbmVkIGluIHRoZSBtZXNzYWdlLCBpdCBpcyB1cGRhdGVkIHdoZW4gYSB1c2VyIG1lbnRpb25zIGEgbmV3IHVzZXIgb3IgZGVsZXRlcyBhIG1lbnRpb24uXG4gICAqL1xuICBAT3V0cHV0KCkgcmVhZG9ubHkgdXNlck1lbnRpb25zID0gbmV3IEV2ZW50RW1pdHRlcjxVc2VyUmVzcG9uc2VbXT4oKTtcbiAgbWVudGlvbkF1dG9jb21wbGV0ZUl0ZW1UZW1wbGF0ZTpcbiAgICB8IFRlbXBsYXRlUmVmPE1lbnRpb25BdXRjb21wbGV0ZUxpc3RJdGVtQ29udGV4dD5cbiAgICB8IHVuZGVmaW5lZDtcbiAgY29tbWFuZEF1dG9jb21wbGV0ZUl0ZW1UZW1wbGF0ZTpcbiAgICB8IFRlbXBsYXRlUmVmPENvbW1hbmRBdXRvY29tcGxldGVMaXN0SXRlbUNvbnRleHQ+XG4gICAgfCB1bmRlZmluZWQ7XG4gIHByaXZhdGUgcmVhZG9ubHkgYXV0b2NvbXBsZXRlS2V5ID0gJ2F1dG9jb21wbGV0ZUxhYmVsJztcbiAgcHJpdmF0ZSByZWFkb25seSBtZW50aW9uVHJpZ2dlckNoYXIgPSAnQCc7XG4gIHByaXZhdGUgcmVhZG9ubHkgY29tbWFuZFRyaWdnZXJDaGFyID0gJy8nO1xuICBhdXRvY29tcGxldGVDb25maWc6IE1lbnRpb25Db25maWcgPSB7XG4gICAgbWVudGlvbnM6IFtdLFxuICB9O1xuICBAVmlld0NoaWxkKCdpbnB1dCcpIHByaXZhdGUgbWVzc2FnZUlucHV0ITogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuICBwcml2YXRlIG1lbnRpb25lZFVzZXJzOiBVc2VyUmVzcG9uc2VbXSA9IFtdO1xuICBwcml2YXRlIHVzZXJNZW50aW9uQ29uZmlnOiBNZW50aW9ucyA9IHtcbiAgICB0cmlnZ2VyQ2hhcjogdGhpcy5tZW50aW9uVHJpZ2dlckNoYXIsXG4gICAgZHJvcFVwOiB0cnVlLFxuICAgIGxhYmVsS2V5OiB0aGlzLmF1dG9jb21wbGV0ZUtleSxcbiAgICByZXR1cm5UcmlnZ2VyOiB0cnVlLFxuICAgIG1lbnRpb25GaWx0ZXI6IChcbiAgICAgIHNlYXJjaFN0cmluZzogc3RyaW5nLFxuICAgICAgaXRlbXM6IHsgYXV0b2NvbXBsZXRlTGFiZWw6IHN0cmluZyB9W11cbiAgICApID0+IHRoaXMuZmlsdGVyKHNlYXJjaFN0cmluZywgaXRlbXMpLFxuICAgIG1lbnRpb25TZWxlY3Q6IChpdGVtLCB0cmlnZ2VyQ2hhcikgPT5cbiAgICAgIHRoaXMuaXRlbVNlbGVjdGVkRnJvbUF1dG9jb21wbGV0ZUxpc3QoXG4gICAgICAgIGl0ZW0gYXMgTWVudGlvbkF1dGNvbXBsZXRlTGlzdEl0ZW0sXG4gICAgICAgIHRyaWdnZXJDaGFyXG4gICAgICApLFxuICB9O1xuICBwcml2YXRlIHNsYXNoQ29tbWFuZENvbmZpZzogTWVudGlvbnMgPSB7XG4gICAgdHJpZ2dlckNoYXI6IHRoaXMuY29tbWFuZFRyaWdnZXJDaGFyLFxuICAgIGRyb3BVcDogdHJ1ZSxcbiAgICBsYWJlbEtleTogJ25hbWUnLFxuICAgIHJldHVyblRyaWdnZXI6IHRydWUsXG4gICAgbWVudGlvbkZpbHRlcjogKFxuICAgICAgc2VhcmNoU3RyaW5nOiBzdHJpbmcsXG4gICAgICBpdGVtczogeyBhdXRvY29tcGxldGVMYWJlbDogc3RyaW5nIH1bXVxuICAgICkgPT4gdGhpcy5maWx0ZXIoc2VhcmNoU3RyaW5nLCBpdGVtcyksXG4gICAgbWVudGlvblNlbGVjdDogKGl0ZW0sIHRyaWdnZXJDaGFyKSA9PlxuICAgICAgdGhpcy5pdGVtU2VsZWN0ZWRGcm9tQXV0b2NvbXBsZXRlTGlzdChcbiAgICAgICAgaXRlbSBhcyBNZW50aW9uQXV0Y29tcGxldGVMaXN0SXRlbSxcbiAgICAgICAgdHJpZ2dlckNoYXJcbiAgICAgICksXG4gIH07XG4gIHByaXZhdGUgc2VhcmNoVGVybSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xuICBwcml2YXRlIGlzVmlld0luaXRlZCA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY2hhbm5lbFNlcnZpY2U6IENoYW5uZWxTZXJ2aWNlLFxuICAgIHByaXZhdGUgY2hhdENsaWVudFNlcnZpY2U6IENoYXRDbGllbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgdHJhbnNsaXRlcmF0aW9uU2VydmljZTogVHJhbnNsaXRlcmF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIGVtb2ppSW5wdXRTZXJ2aWNlOiBFbW9qaUlucHV0U2VydmljZSxcbiAgICBwcml2YXRlIGN1c3RvbVRlbXBsYXRlc1NlcnZpY2U6IEN1c3RvbVRlbXBsYXRlc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSB0aGVtZVNlcnZpY2U6IFRoZW1lU2VydmljZSxcbiAgICBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHtcbiAgICB0aGlzLnNlYXJjaFRlcm0kLnBpcGUoZGVib3VuY2VUaW1lKDMwMCkpLnN1YnNjcmliZSgoc2VhcmNoVGVybSkgPT4ge1xuICAgICAgaWYgKHNlYXJjaFRlcm0uc3RhcnRzV2l0aCh0aGlzLm1lbnRpb25UcmlnZ2VyQ2hhcikpIHtcbiAgICAgICAgdm9pZCB0aGlzLnVwZGF0ZU1lbnRpb25PcHRpb25zKHNlYXJjaFRlcm0pO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxuICAgICAgdGhpcy5jaGFubmVsU2VydmljZS5hY3RpdmVDaGFubmVsJC5zdWJzY3JpYmUoKGNoYW5uZWwpID0+IHtcbiAgICAgICAgY29uc3QgY29tbWFuZHMgPSBjaGFubmVsPy5nZXRDb25maWcoKT8uY29tbWFuZHMgfHwgW107XG4gICAgICAgIHRoaXMuc2xhc2hDb21tYW5kQ29uZmlnLml0ZW1zID0gY29tbWFuZHMubWFwKChjKSA9PiAoe1xuICAgICAgICAgIC4uLmMsXG4gICAgICAgICAgW3RoaXMuYXV0b2NvbXBsZXRlS2V5XTogYy5uYW1lLFxuICAgICAgICAgIHR5cGU6ICdjb21tYW5kJyxcbiAgICAgICAgfSkpO1xuICAgICAgICB0aGlzLm1lbnRpb25lZFVzZXJzID0gW107XG4gICAgICAgIHRoaXMudXNlck1lbnRpb25zLm5leHQoWy4uLnRoaXMubWVudGlvbmVkVXNlcnNdKTtcbiAgICAgICAgdm9pZCB0aGlzLnVwZGF0ZU1lbnRpb25PcHRpb25zKHRoaXMuc2VhcmNoVGVybSQuZ2V0VmFsdWUoKSk7XG4gICAgICB9KVxuICAgICk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXG4gICAgICB0aGlzLmVtb2ppSW5wdXRTZXJ2aWNlLmVtb2ppSW5wdXQkLnN1YnNjcmliZSgoZW1vamkpID0+IHtcbiAgICAgICAgdGhpcy5tZXNzYWdlSW5wdXQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICBjb25zdCB7IHNlbGVjdGlvblN0YXJ0IH0gPSB0aGlzLm1lc3NhZ2VJbnB1dC5uYXRpdmVFbGVtZW50O1xuICAgICAgICB0aGlzLm1lc3NhZ2VJbnB1dC5uYXRpdmVFbGVtZW50LnNldFJhbmdlVGV4dChlbW9qaSk7XG4gICAgICAgIHRoaXMubWVzc2FnZUlucHV0Lm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uU3RhcnQgPVxuICAgICAgICAgIHNlbGVjdGlvblN0YXJ0ISArIGVtb2ppLmxlbmd0aDtcbiAgICAgICAgdGhpcy5tZXNzYWdlSW5wdXQubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25FbmQgPVxuICAgICAgICAgIHNlbGVjdGlvblN0YXJ0ISArIGVtb2ppLmxlbmd0aDtcbiAgICAgICAgdGhpcy5pbnB1dENoYW5nZWQoKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcbiAgICAgIHRoaXMuY3VzdG9tVGVtcGxhdGVzU2VydmljZS5tZW50aW9uQXV0b2NvbXBsZXRlSXRlbVRlbXBsYXRlJC5zdWJzY3JpYmUoXG4gICAgICAgICh0ZW1wbGF0ZSkgPT4gKHRoaXMubWVudGlvbkF1dG9jb21wbGV0ZUl0ZW1UZW1wbGF0ZSA9IHRlbXBsYXRlKVxuICAgICAgKVxuICAgICk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXG4gICAgICB0aGlzLmN1c3RvbVRlbXBsYXRlc1NlcnZpY2UuY29tbWFuZEF1dG9jb21wbGV0ZUl0ZW1UZW1wbGF0ZSQuc3Vic2NyaWJlKFxuICAgICAgICAodGVtcGxhdGUpID0+ICh0aGlzLmNvbW1hbmRBdXRvY29tcGxldGVJdGVtVGVtcGxhdGUgPSB0ZW1wbGF0ZSlcbiAgICAgIClcbiAgICApO1xuICAgIHRoaXMuYXV0b2NvbXBsZXRlQ29uZmlnLm1lbnRpb25zID0gW1xuICAgICAgdGhpcy51c2VyTWVudGlvbkNvbmZpZyxcbiAgICAgIHRoaXMuc2xhc2hDb21tYW5kQ29uZmlnLFxuICAgIF07XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZXMuYXJlTWVudGlvbnNFbmFibGVkKSB7XG4gICAgICBpZiAodGhpcy5hcmVNZW50aW9uc0VuYWJsZWQpIHtcbiAgICAgICAgdGhpcy5hdXRvY29tcGxldGVDb25maWcubWVudGlvbnMgPSBbXG4gICAgICAgICAgdGhpcy51c2VyTWVudGlvbkNvbmZpZyxcbiAgICAgICAgICB0aGlzLnNsYXNoQ29tbWFuZENvbmZpZyxcbiAgICAgICAgXTtcbiAgICAgICAgdGhpcy5hdXRvY29tcGxldGVDb25maWcgPSB7IC4uLnRoaXMuYXV0b2NvbXBsZXRlQ29uZmlnIH07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmF1dG9jb21wbGV0ZUNvbmZpZy5tZW50aW9ucyA9IFt0aGlzLnNsYXNoQ29tbWFuZENvbmZpZ107XG4gICAgICAgIHRoaXMuYXV0b2NvbXBsZXRlQ29uZmlnID0geyAuLi50aGlzLmF1dG9jb21wbGV0ZUNvbmZpZyB9O1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAoY2hhbmdlcy5tZW50aW9uU2NvcGUpIHtcbiAgICAgIHZvaWQgdGhpcy51cGRhdGVNZW50aW9uT3B0aW9ucyh0aGlzLnNlYXJjaFRlcm0kLmdldFZhbHVlKCkpO1xuICAgIH1cbiAgICBpZiAoY2hhbmdlcy52YWx1ZSAmJiAhdGhpcy52YWx1ZSAmJiB0aGlzLm1lc3NhZ2VJbnB1dCkge1xuICAgICAgdGhpcy5tZXNzYWdlSW5wdXQubmF0aXZlRWxlbWVudC5zdHlsZS5oZWlnaHQgPSAnYXV0byc7XG4gICAgICB0aGlzLmNoYXRDbGllbnRTZXJ2aWNlPy5jaGF0Q2xpZW50Py5sb2dnZXI/LihcbiAgICAgICAgJ2luZm8nLFxuICAgICAgICAnW0F1dG9jb21wbGV0ZSB0ZXh0YXJlYV0gVmFsdWUgcmVzZXQsIGFkanVzdGluZyB0ZXh0YXJlYSBoZWlnaHQgdG8gYXV0bydcbiAgICAgICk7XG4gICAgICB0aGlzLnVwZGF0ZU1lbnRpb25lZFVzZXJzRnJvbVRleHQoKTtcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgY2hhbmdlcy52YWx1ZSAmJlxuICAgICAgdGhpcy52YWx1ZSAmJlxuICAgICAgdGhpcy5tZXNzYWdlSW5wdXQgJiZcbiAgICAgIHRoaXMuaXNWaWV3SW5pdGVkXG4gICAgKSB7XG4gICAgICB0aGlzLmNoYXRDbGllbnRTZXJ2aWNlPy5jaGF0Q2xpZW50Py5sb2dnZXI/LihcbiAgICAgICAgJ2luZm8nLFxuICAgICAgICAnW0F1dG9jb21wbGV0ZSB0ZXh0YXJlYV0gVmFsdWUgY2hhbmdlZCdcbiAgICAgICk7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMubWVzc2FnZUlucHV0Lm5hdGl2ZUVsZW1lbnQuc2Nyb2xsSGVpZ2h0ID4gMCkge1xuICAgICAgICAgIHRoaXMuYWRqdXN0VGV4dGFyZWFIZWlnaHQoKTtcbiAgICAgICAgfVxuICAgICAgfSwgMCk7XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaXNWaWV3SW5pdGVkID0gdHJ1ZTtcbiAgICB0aGlzLmNoYXRDbGllbnRTZXJ2aWNlPy5jaGF0Q2xpZW50Py5sb2dnZXI/LihcbiAgICAgICdpbmZvJyxcbiAgICAgICdbQXV0b2NvbXBsZXRlIHRleHRhcmVhXSBWaWV3IGluaXRlZCdcbiAgICApO1xuICAgIGlmICh0aGlzLm1lc3NhZ2VJbnB1dC5uYXRpdmVFbGVtZW50LnNjcm9sbEhlaWdodCA+IDAgJiYgdGhpcy52YWx1ZSkge1xuICAgICAgdGhpcy5hZGp1c3RUZXh0YXJlYUhlaWdodCgpO1xuICAgIH1cbiAgfVxuXG4gIGZpbHRlcihzZWFyY2hTdHJpbmc6IHN0cmluZywgaXRlbXM6IHsgYXV0b2NvbXBsZXRlTGFiZWw6IHN0cmluZyB9W10pIHtcbiAgICByZXR1cm4gaXRlbXMuZmlsdGVyKChpdGVtKSA9PlxuICAgICAgdGhpcy50cmFuc2xpdGVyYXRlKGl0ZW0uYXV0b2NvbXBsZXRlTGFiZWwudG9Mb3dlckNhc2UoKSkuaW5jbHVkZXMoXG4gICAgICAgIHRoaXMudHJhbnNsaXRlcmF0ZShzZWFyY2hTdHJpbmcudG9Mb3dlckNhc2UoKSlcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgaXRlbVNlbGVjdGVkRnJvbUF1dG9jb21wbGV0ZUxpc3QoXG4gICAgaXRlbTogTWVudGlvbkF1dGNvbXBsZXRlTGlzdEl0ZW0sXG4gICAgdHJpZ2dlckNoYXIgPSAnJ1xuICApIHtcbiAgICBpZiAodHJpZ2dlckNoYXIgPT09IHRoaXMubWVudGlvblRyaWdnZXJDaGFyKSB7XG4gICAgICB0aGlzLm1lbnRpb25lZFVzZXJzLnB1c2goKGl0ZW0udXNlciA/IGl0ZW0udXNlciA6IGl0ZW0pIGFzIFVzZXJSZXNwb25zZSk7XG4gICAgICB0aGlzLnVzZXJNZW50aW9ucy5uZXh0KFsuLi50aGlzLm1lbnRpb25lZFVzZXJzXSk7XG4gICAgfVxuICAgIHJldHVybiB0cmlnZ2VyQ2hhciArIGl0ZW0uYXV0b2NvbXBsZXRlTGFiZWwgKyAnICc7XG4gIH1cblxuICBhdXRjb21wbGV0ZVNlYXJjaFRlcm1DaGFuZ2VkKHNlYXJjaFRlcm06IHN0cmluZykge1xuICAgIGlmIChzZWFyY2hUZXJtID09PSB0aGlzLm1lbnRpb25UcmlnZ2VyQ2hhcikge1xuICAgICAgdm9pZCB0aGlzLnVwZGF0ZU1lbnRpb25PcHRpb25zKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2VhcmNoVGVybSQubmV4dChzZWFyY2hUZXJtKTtcbiAgICB9XG4gIH1cblxuICBpbnB1dENoYW5nZWQoKSB7XG4gICAgdGhpcy5jaGF0Q2xpZW50U2VydmljZT8uY2hhdENsaWVudD8ubG9nZ2VyPy4oXG4gICAgICAnaW5mbycsXG4gICAgICAnW0F1dG9jb21wbGV0ZSB0ZXh0YXJlYV0gSW5wdXQgY2hhbmdlZCdcbiAgICApO1xuICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh0aGlzLm1lc3NhZ2VJbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlKTtcbiAgICB0aGlzLmFkanVzdFRleHRhcmVhSGVpZ2h0KCk7XG4gIH1cblxuICBpbnB1dExlZnQoKSB7XG4gICAgdGhpcy51cGRhdGVNZW50aW9uZWRVc2Vyc0Zyb21UZXh0KCk7XG4gIH1cblxuICBlbnRlckhpdChldmVudDogRXZlbnQpIHtcbiAgICBpZiAodGhpcy5pbnB1dE1vZGUgPT09ICdkZXNrdG9wJyAmJiAhKGV2ZW50IGFzIEtleWJvYXJkRXZlbnQpLmlzQ29tcG9zaW5nKSB7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgdGhpcy51cGRhdGVNZW50aW9uZWRVc2Vyc0Zyb21UZXh0KCk7XG4gICAgICB0aGlzLnNlbmQubmV4dCgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYWRqdXN0VGV4dGFyZWFIZWlnaHQoKSB7XG4gICAgdGhpcy5jaGF0Q2xpZW50U2VydmljZT8uY2hhdENsaWVudD8ubG9nZ2VyPy4oXG4gICAgICAnaW5mbycsXG4gICAgICBgW0F1dG9jb21wbGV0ZSB0ZXh0YXJlYV0gVGV4dGFyZWEgaGVpZ2h0IHNldCBmcm9tICR7dGhpcy5tZXNzYWdlSW5wdXQubmF0aXZlRWxlbWVudC5zdHlsZS5oZWlnaHR9IHRvICR7dGhpcy5tZXNzYWdlSW5wdXQubmF0aXZlRWxlbWVudC5zY3JvbGxIZWlnaHR9cHhgXG4gICAgKTtcbiAgICB0aGlzLm1lc3NhZ2VJbnB1dC5uYXRpdmVFbGVtZW50LnN0eWxlLmhlaWdodCA9ICcnO1xuICAgIHRoaXMubWVzc2FnZUlucHV0Lm5hdGl2ZUVsZW1lbnQuc3R5bGUuaGVpZ2h0ID0gYCR7dGhpcy5tZXNzYWdlSW5wdXQubmF0aXZlRWxlbWVudC5zY3JvbGxIZWlnaHR9cHhgO1xuICB9XG5cbiAgcHJpdmF0ZSB0cmFuc2xpdGVyYXRlKHM6IHN0cmluZykge1xuICAgIGlmICh0aGlzLnRyYW5zbGl0ZXJhdGlvblNlcnZpY2UpIHtcbiAgICAgIHJldHVybiB0aGlzLnRyYW5zbGl0ZXJhdGlvblNlcnZpY2UudHJhbnNsaXRlcmF0ZShzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHM7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyB1cGRhdGVNZW50aW9uT3B0aW9ucyhzZWFyY2hUZXJtPzogc3RyaW5nKSB7XG4gICAgaWYgKCF0aGlzLmFyZU1lbnRpb25zRW5hYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBzZWFyY2hUZXJtID0gc2VhcmNoVGVybT8ucmVwbGFjZSh0aGlzLm1lbnRpb25UcmlnZ2VyQ2hhciwgJycpO1xuICAgIGNvbnN0IHJlcXVlc3QgPVxuICAgICAgdGhpcy5tZW50aW9uU2NvcGUgPT09ICdhcHBsaWNhdGlvbidcbiAgICAgICAgPyAoczogc3RyaW5nKSA9PiB0aGlzLmNoYXRDbGllbnRTZXJ2aWNlLmF1dG9jb21wbGV0ZVVzZXJzKHMpXG4gICAgICAgIDogKHM6IHN0cmluZykgPT4gdGhpcy5jaGFubmVsU2VydmljZS5hdXRvY29tcGxldGVNZW1iZXJzKHMpO1xuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHJlcXVlc3Qoc2VhcmNoVGVybSB8fCAnJyk7XG4gICAgY29uc3QgaXRlbXMgPSB0aGlzLmZpbHRlcihcbiAgICAgIHNlYXJjaFRlcm0gfHwgJycsXG4gICAgICByZXN1bHQubWFwKChpKSA9PiB7XG4gICAgICAgIGNvbnN0IHVzZXIgPSAoaS51c2VyID8gaS51c2VyIDogaSkgYXMgVXNlclJlc3BvbnNlO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIC4uLmksXG4gICAgICAgICAgYXV0b2NvbXBsZXRlTGFiZWw6IHVzZXIubmFtZSB8fCB1c2VyLmlkLFxuICAgICAgICAgIHR5cGU6ICdtZW50aW9uJyxcbiAgICAgICAgfTtcbiAgICAgIH0pXG4gICAgKTtcbiAgICB0aGlzLnVzZXJNZW50aW9uQ29uZmlnLml0ZW1zID0gaXRlbXM7XG4gICAgdGhpcy5hdXRvY29tcGxldGVDb25maWcubWVudGlvbnMgPSBbXG4gICAgICB0aGlzLnVzZXJNZW50aW9uQ29uZmlnLFxuICAgICAgdGhpcy5zbGFzaENvbW1hbmRDb25maWcsXG4gICAgXTtcbiAgICB0aGlzLmF1dG9jb21wbGV0ZUNvbmZpZyA9IHsgLi4udGhpcy5hdXRvY29tcGxldGVDb25maWcgfTtcbiAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlTWVudGlvbmVkVXNlcnNGcm9tVGV4dCgpIHtcbiAgICBjb25zdCB1cGRhdGVkTWVudGlvbmVkVXNlcnM6IFVzZXJSZXNwb25zZVtdID0gW107XG4gICAgdGhpcy5tZW50aW9uZWRVc2Vycy5mb3JFYWNoKCh1KSA9PiB7XG4gICAgICBjb25zdCBrZXkgPSB1Lm5hbWUgfHwgdS5pZDtcbiAgICAgIGlmICh0aGlzLnZhbHVlLmluY2x1ZGVzKGAke3RoaXMubWVudGlvblRyaWdnZXJDaGFyfSR7a2V5fWApKSB7XG4gICAgICAgIHVwZGF0ZWRNZW50aW9uZWRVc2Vycy5wdXNoKHUpO1xuICAgICAgfVxuICAgIH0pO1xuICAgIGlmICh1cGRhdGVkTWVudGlvbmVkVXNlcnMubGVuZ3RoICE9PSB0aGlzLm1lbnRpb25lZFVzZXJzLmxlbmd0aCkge1xuICAgICAgdGhpcy51c2VyTWVudGlvbnMubmV4dChbLi4udXBkYXRlZE1lbnRpb25lZFVzZXJzXSk7XG4gICAgICB0aGlzLm1lbnRpb25lZFVzZXJzID0gdXBkYXRlZE1lbnRpb25lZFVzZXJzO1xuICAgIH1cbiAgfVxufVxuIiwiPHRleHRhcmVhXG4gICNpbnB1dFxuICBkYXRhLXRlc3RpZD1cInRleHRhcmVhXCJcbiAgY2xhc3M9XCJcbiAgICBydGFfX3RleHRhcmVhXG4gICAgc3RyLWNoYXRfX3RleHRhcmVhX190ZXh0YXJlYVxuICAgIHN0ci1jaGF0X19hbmd1bGFyLXRleHRhcmVhXG4gICAgc3RyLWNoYXRfX21lc3NhZ2UtdGV4dGFyZWFcbiAgXCJcbiAgcm93cz1cIjFcIlxuICBbdmFsdWVdPVwidmFsdWUgfHwgJydcIlxuICBbYXV0b2ZvY3VzXT1cImF1dG9Gb2N1c1wiXG4gIHBsYWNlaG9sZGVyPVwie3sgcGxhY2Vob2xkZXIgfCB0cmFuc2xhdGUgfX1cIlxuICBbbWVudGlvbkNvbmZpZ109XCJhdXRvY29tcGxldGVDb25maWdcIlxuICBbbWVudGlvbkxpc3RUZW1wbGF0ZV09XCJhdXRvY29tcGxldGVJdGVtXCJcbiAgKGlucHV0KT1cImlucHV0Q2hhbmdlZCgpXCJcbiAgKGtleWRvd24uZW50ZXIpPVwiZW50ZXJIaXQoJGV2ZW50KVwiXG4gIChzZWFyY2hUZXJtKT1cImF1dGNvbXBsZXRlU2VhcmNoVGVybUNoYW5nZWQoJGV2ZW50KVwiXG4gIChibHVyKT1cImlucHV0TGVmdCgpXCJcbj48L3RleHRhcmVhPlxuPG5nLXRlbXBsYXRlICNhdXRvY29tcGxldGVJdGVtIGxldC1pdGVtPVwiaXRlbVwiPlxuICA8ZGl2IGNsYXNzPVwicnRhIHJ0YV9faXRlbSBzdHItY2hhdF9fZW1vamlzZWFyY2hfX2l0ZW1cIiBbbmdTd2l0Y2hdPVwiaXRlbS50eXBlXCI+XG4gICAgPGRpdiAqbmdTd2l0Y2hDYXNlPVwiJ21lbnRpb24nXCIgY2xhc3M9XCJydGFfX2VudGl0eVwiPlxuICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgIG1lbnRpb25BdXRvY29tcGxldGVJdGVtVGVtcGxhdGUgfHwgZGVmYXVsdE1lbnRpb25UZW1wbGF0ZTtcbiAgICAgICAgICBjb250ZXh0OiB7IGl0ZW06IGl0ZW0gfVxuICAgICAgICBcIlxuICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nU3dpdGNoQ2FzZT1cIidjb21tYW5kJ1wiIGNsYXNzPVwicnRhX19lbnRpdHlcIj5cbiAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICBjb21tYW5kQXV0b2NvbXBsZXRlSXRlbVRlbXBsYXRlIHx8IGRlZmF1bHRDb21tYW5kVGVtcGxhdGU7XG4gICAgICAgICAgY29udGV4dDogeyBpdGVtOiBpdGVtIH1cbiAgICAgICAgXCJcbiAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2RlZmF1bHRDb21tYW5kVGVtcGxhdGUgbGV0LWl0ZW09XCJpdGVtXCI+XG4gIDxkaXYgY2xhc3M9XCJzdHItY2hhdF9fc2xhc2gtY29tbWFuZFwiPlxuICAgIDxzcGFuIGNsYXNzPVwic3RyLWNoYXRfX3NsYXNoLWNvbW1hbmQtaGVhZGVyXCI+XG4gICAgICA8c3Ryb25nXG4gICAgICAgIGNsYXNzPVwic3RyLWNoYXRfX3NsYXNoLWNvbW1hbmQtbmFtZVwiXG4gICAgICAgIGRhdGEtdGVzdGNsYXNzPVwiY29tbWFuZC1uYW1lXCJcbiAgICAgICAgPnt7IGl0ZW0ubmFtZSB9fTwvc3Ryb25nXG4gICAgICA+XG4gICAgICA8c3BhbiBjbGFzcz1cInN0ci1jaGF0X19zbGFzaC1jb21tYW5kLWFyZ3NcIlxuICAgICAgICA+L3t7IGl0ZW0ubmFtZSB9fSB7eyBpdGVtLmFyZ3MgfX08L3NwYW5cbiAgICAgID5cbiAgICA8L3NwYW4+XG4gICAgPGJyIC8+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNkZWZhdWx0TWVudGlvblRlbXBsYXRlIGxldC1pdGVtPVwiaXRlbVwiPlxuICA8ZGl2IGNsYXNzPVwic3RyLWNoYXRfX3VzZXItaXRlbVwiPlxuICAgIDxzdHJlYW0tYXZhdGFyLXBsYWNlaG9sZGVyXG4gICAgICBkYXRhLXRlc3RjbGFzcz1cImF2YXRhclwiXG4gICAgICBjbGFzcz1cInN0ci1jaGF0X19hdmF0YXIgc3RyLWNoYXRfX2F2YXRhci0tY2lyY2xlXCJcbiAgICAgIHR5cGU9XCJ1c2VyXCJcbiAgICAgIGxvY2F0aW9uPVwiYXV0b2NvbXBsZXRlLWl0ZW1cIlxuICAgICAgW2ltYWdlVXJsXT1cIml0ZW0uaW1hZ2UgfHwgaXRlbS51c2VyPy5pbWFnZVwiXG4gICAgICBbbmFtZV09XCJpdGVtLmF1dG9jb21wbGV0ZUxhYmVsXCJcbiAgICAgIFt1c2VyXT1cIml0ZW0udXNlciB8fCBpdGVtXCJcbiAgICA+PC9zdHJlYW0tYXZhdGFyLXBsYWNlaG9sZGVyPlxuICAgIDxzcGFuIGRhdGEtdGVzdGNsYXNzPVwidXNlcm5hbWVcIiBjbGFzcz1cInN0ci1jaGF0X191c2VyLWl0ZW0tLW5hbWVcIj57e1xuICAgICAgaXRlbS5hdXRvY29tcGxldGVMYWJlbFxuICAgIH19PC9zcGFuPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -73,7 +73,7 @@ export class TextareaComponent {
73
73
  this.adjustTextareaHeight();
74
74
  }
75
75
  enterHit(event) {
76
- if (this.inputMode === 'desktop') {
76
+ if (this.inputMode === 'desktop' && !event.isComposing) {
77
77
  event.preventDefault();
78
78
  this.send.next();
79
79
  }
@@ -106,4 +106,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
106
106
  type: ViewChild,
107
107
  args: ['input']
108
108
  }] } });
109
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGFyZWEuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3RyZWFtLWNoYXQtYW5ndWxhci9zcmMvbGliL21lc3NhZ2UtaW5wdXQvdGV4dGFyZWEvdGV4dGFyZWEuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3RyZWFtLWNoYXQtYW5ndWxhci9zcmMvbGliL21lc3NhZ2UtaW5wdXQvdGV4dGFyZWEvdGV4dGFyZWEuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFFVCxZQUFZLEVBQ1osV0FBVyxFQUNYLEtBQUssRUFHTCxNQUFNLEVBRU4sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDOzs7OztBQU12Qjs7R0FFRztBQU1ILE1BQU0sT0FBTyxpQkFBaUI7SUFpQzVCLFlBQ1UsaUJBQW9DLEVBQ3BDLFlBQTBCO1FBRDFCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMsaUJBQVksR0FBWixZQUFZLENBQWM7UUFoQ3JCLFVBQUssR0FDbEIsNERBQTRELENBQUM7UUFDL0Q7O1dBRUc7UUFDTSxVQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ3BCOztXQUVHO1FBQ00sZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFLMUI7O1dBRUc7UUFDTSxjQUFTLEdBQUcsSUFBSSxDQUFDO1FBQzFCOztXQUVHO1FBQ2dCLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUM1RDs7V0FFRztRQUNnQixTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUUzQyxrQkFBYSxHQUFtQixFQUFFLENBQUM7UUFDbkMsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFNM0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQ3JCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsS0FB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O2dCQUlhLFdBQVc7c0JBQTdCLE1BQU07Z0JBSVksSUFBSTtzQkFBdEIsTUFBTTtnQkFDcUIsWUFBWTtzQkFBdkMsU0FBUzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RCaW5kaW5nLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVGhlbWVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdGhlbWUuc2VydmljZSc7XG5pbXBvcnQgeyBFbW9qaUlucHV0U2VydmljZSB9IGZyb20gJy4uL2Vtb2ppLWlucHV0LnNlcnZpY2UnO1xuaW1wb3J0IHsgVGV4dGFyZWFJbnRlcmZhY2UgfSBmcm9tICcuLi90ZXh0YXJlYS5pbnRlcmZhY2UnO1xuXG4vKipcbiAqIFRoZSBgVGV4dGFyZWFgIGNvbXBvbmVudCBpcyB1c2VkIGJ5IHRoZSBbYE1lc3NhZ2VJbnB1dGBdKC4vTWVzc2FnZUlucHV0Q29tcG9uZW50Lm1keCkgY29tcG9uZW50IHRvIGRpc3BsYXkgdGhlIGlucHV0IEhUTUwgZWxlbWVudCB3aGVyZSB1c2VycyBjYW4gdHlwZSB0aGVpciBtZXNzYWdlLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzdHJlYW0tdGV4dGFyZWEnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGV4dGFyZWEuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZXM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBUZXh0YXJlYUNvbXBvbmVudFxuICBpbXBsZW1lbnRzIFRleHRhcmVhSW50ZXJmYWNlLCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3SW5pdFxue1xuICBASG9zdEJpbmRpbmcoKSBjbGFzcyA9XG4gICAgJ3N0ci1jaGF0X190ZXh0YXJlYSBzdHItY2hhdF9fbWVzc2FnZS10ZXh0YXJlYS1hbmd1bGFyLWhvc3QnO1xuICAvKipcbiAgICogVGhlIHZhbHVlIG9mIHRoZSBpbnB1dCBIVE1MIGVsZW1lbnQuXG4gICAqL1xuICBASW5wdXQoKSB2YWx1ZSA9ICcnO1xuICAvKipcbiAgICogUGxhY2Vob2xkZXIgb2YgdGhlIHRleHRhcmVhXG4gICAqL1xuICBASW5wdXQoKSBwbGFjZWhvbGRlciA9ICcnO1xuICAvKipcbiAgICogU2VlIFtgTWVzc2FnZUlucHV0Q29uZmlnU2VydmljZWBdKC4uL3NlcnZpY2VzL01lc3NhZ2VJbnB1dENvbmZpZ1NlcnZpY2UubWR4KSBmb3IgbW9yZSBpbmZvcm1hdGlvblxuICAgKi9cbiAgQElucHV0KCkgaW5wdXRNb2RlITogJ2Rlc2t0b3AnIHwgJ21vYmlsZSc7XG4gIC8qKlxuICAgKiBFbmFibGVzIG9yIGRpc2FibGVzIGF1dG8gZm9jdXMgb24gdGhlIHRleHRhcmVhIGVsZW1lbnRcbiAgICovXG4gIEBJbnB1dCgpIGF1dG9Gb2N1cyA9IHRydWU7XG4gIC8qKlxuICAgKiBFbWl0cyB0aGUgY3VycmVudCB2YWx1ZSBvZiB0aGUgaW5wdXQgZWxlbWVudCB3aGVuIGEgdXNlciB0eXBlcy5cbiAgICovXG4gIEBPdXRwdXQoKSByZWFkb25seSB2YWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICAvKipcbiAgICogRW1pdHMgd2hlbiBhIHVzZXIgdHJpZ2dlcnMgYSBtZXNzYWdlIHNlbmQgZXZlbnQgKHRoaXMgaGFwcGVucyB3aGVuIHRoZXkgaGl0IHRoZSBgRW50ZXJgIGtleSkuXG4gICAqL1xuICBAT3V0cHV0KCkgcmVhZG9ubHkgc2VuZCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQFZpZXdDaGlsZCgnaW5wdXQnKSBwcml2YXRlIG1lc3NhZ2VJbnB1dCE6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcbiAgcHJpdmF0ZSBpc1ZpZXdJbml0ZWQgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVtb2ppSW5wdXRTZXJ2aWNlOiBFbW9qaUlucHV0U2VydmljZSxcbiAgICBwcml2YXRlIHRoZW1lU2VydmljZTogVGhlbWVTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxuICAgICAgdGhpcy5lbW9qaUlucHV0U2VydmljZS5lbW9qaUlucHV0JC5zdWJzY3JpYmUoKGVtb2ppKSA9PiB7XG4gICAgICAgIHRoaXMubWVzc2FnZUlucHV0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgY29uc3QgeyBzZWxlY3Rpb25TdGFydCB9ID0gdGhpcy5tZXNzYWdlSW5wdXQubmF0aXZlRWxlbWVudDtcbiAgICAgICAgdGhpcy5tZXNzYWdlSW5wdXQubmF0aXZlRWxlbWVudC5zZXRSYW5nZVRleHQoZW1vamkpO1xuICAgICAgICB0aGlzLm1lc3NhZ2VJbnB1dC5uYXRpdmVFbGVtZW50LnNlbGVjdGlvblN0YXJ0ID1cbiAgICAgICAgICBzZWxlY3Rpb25TdGFydCEgKyBlbW9qaS5sZW5ndGg7XG4gICAgICAgIHRoaXMubWVzc2FnZUlucHV0Lm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uRW5kID1cbiAgICAgICAgICBzZWxlY3Rpb25TdGFydCEgKyBlbW9qaS5sZW5ndGg7XG4gICAgICAgIHRoaXMuaW5wdXRDaGFuZ2VkKCk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZXMudmFsdWUgJiYgIXRoaXMudmFsdWUgJiYgdGhpcy5tZXNzYWdlSW5wdXQpIHtcbiAgICAgIHRoaXMubWVzc2FnZUlucHV0Lm5hdGl2ZUVsZW1lbnQuc3R5bGUuaGVpZ2h0ID0gJ2F1dG8nO1xuICAgIH0gZWxzZSBpZiAoXG4gICAgICBjaGFuZ2VzLnZhbHVlICYmXG4gICAgICB0aGlzLnZhbHVlICYmXG4gICAgICB0aGlzLm1lc3NhZ2VJbnB1dCAmJlxuICAgICAgdGhpcy5pc1ZpZXdJbml0ZWRcbiAgICApIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5tZXNzYWdlSW5wdXQubmF0aXZlRWxlbWVudC5zY3JvbGxIZWlnaHQgPiAwKSB7XG4gICAgICAgICAgdGhpcy5hZGp1c3RUZXh0YXJlYUhlaWdodCgpO1xuICAgICAgICB9XG4gICAgICB9LCAwKTtcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pc1ZpZXdJbml0ZWQgPSB0cnVlO1xuICAgIGlmICh0aGlzLm1lc3NhZ2VJbnB1dC5uYXRpdmVFbGVtZW50LnNjcm9sbEhlaWdodCA+IDAgJiYgdGhpcy52YWx1ZSkge1xuICAgICAgdGhpcy5hZGp1c3RUZXh0YXJlYUhlaWdodCgpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5mb3JFYWNoKChzKSA9PiBzLnVuc3Vic2NyaWJlKCkpO1xuICB9XG5cbiAgaW5wdXRDaGFuZ2VkKCkge1xuICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh0aGlzLm1lc3NhZ2VJbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlKTtcbiAgICB0aGlzLmFkanVzdFRleHRhcmVhSGVpZ2h0KCk7XG4gIH1cblxuICBlbnRlckhpdChldmVudDogRXZlbnQpIHtcbiAgICBpZiAodGhpcy5pbnB1dE1vZGUgPT09ICdkZXNrdG9wJykge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHRoaXMuc2VuZC5uZXh0KCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhZGp1c3RUZXh0YXJlYUhlaWdodCgpIHtcbiAgICB0aGlzLm1lc3NhZ2VJbnB1dC5uYXRpdmVFbGVtZW50LnN0eWxlLmhlaWdodCA9ICcnO1xuICAgIHRoaXMubWVzc2FnZUlucHV0Lm5hdGl2ZUVsZW1lbnQuc3R5bGUuaGVpZ2h0ID0gYCR7dGhpcy5tZXNzYWdlSW5wdXQubmF0aXZlRWxlbWVudC5zY3JvbGxIZWlnaHR9cHhgO1xuICB9XG59XG4iLCI8dGV4dGFyZWFcbiAgI2lucHV0XG4gIGRhdGEtdGVzdGlkPVwidGV4dGFyZWFcIlxuICBjbGFzcz1cIlxuICAgIHJ0YV9fdGV4dGFyZWFcbiAgICBzdHItY2hhdF9fdGV4dGFyZWFfX3RleHRhcmVhXG4gICAgc3RyLWNoYXRfX2FuZ3VsYXItdGV4dGFyZWFcbiAgICBzdHItY2hhdF9fbWVzc2FnZS10ZXh0YXJlYVxuICBcIlxuICByb3dzPVwiMVwiXG4gIFt2YWx1ZV09XCJ2YWx1ZSB8fCAnJ1wiXG4gIFthdXRvZm9jdXNdPVwiYXV0b0ZvY3VzXCJcbiAgcGxhY2Vob2xkZXI9XCJ7eyBwbGFjZWhvbGRlciB8IHRyYW5zbGF0ZSB9fVwiXG4gIChpbnB1dCk9XCJpbnB1dENoYW5nZWQoKVwiXG4gIChrZXlkb3duLmVudGVyKT1cImVudGVySGl0KCRldmVudClcIlxuPjwvdGV4dGFyZWE+XG4iXX0=
109
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGFyZWEuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3RyZWFtLWNoYXQtYW5ndWxhci9zcmMvbGliL21lc3NhZ2UtaW5wdXQvdGV4dGFyZWEvdGV4dGFyZWEuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3RyZWFtLWNoYXQtYW5ndWxhci9zcmMvbGliL21lc3NhZ2UtaW5wdXQvdGV4dGFyZWEvdGV4dGFyZWEuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFFVCxZQUFZLEVBQ1osV0FBVyxFQUNYLEtBQUssRUFHTCxNQUFNLEVBRU4sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDOzs7OztBQU12Qjs7R0FFRztBQU1ILE1BQU0sT0FBTyxpQkFBaUI7SUFpQzVCLFlBQ1UsaUJBQW9DLEVBQ3BDLFlBQTBCO1FBRDFCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMsaUJBQVksR0FBWixZQUFZLENBQWM7UUFoQ3JCLFVBQUssR0FDbEIsNERBQTRELENBQUM7UUFDL0Q7O1dBRUc7UUFDTSxVQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ3BCOztXQUVHO1FBQ00sZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFLMUI7O1dBRUc7UUFDTSxjQUFTLEdBQUcsSUFBSSxDQUFDO1FBQzFCOztXQUVHO1FBQ2dCLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUM1RDs7V0FFRztRQUNnQixTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUUzQyxrQkFBYSxHQUFtQixFQUFFLENBQUM7UUFDbkMsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFNM0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQ3JCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsS0FB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QUFLO2dCQUlHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBSWEsV0FBVztzQkFBN0IsTUFBTTtnQkFJWSxJQUFJO3NCQUF0QixNQUFNO2dCQUNxQixZQUFZO3NCQUF2QyxTQUFTO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBUaGVtZVNlcnZpY2UgfSBmcm9tICcuLi8uLi90aGVtZS5zZXJ2aWNlJztcbmltcG9ydCB7IEVtb2ppSW5wdXRTZXJ2aWNlIH0gZnJvbSAnLi4vZW1vamktaW5wdXQuc2VydmljZSc7XG5pbXBvcnQgeyBUZXh0YXJlYUludGVyZmFjZSB9IGZyb20gJy4uL3RleHRhcmVhLmludGVyZmFjZSc7XG5cbi8qKlxuICogVGhlIGBUZXh0YXJlYWAgY29tcG9uZW50IGlzIHVzZWQgYnkgdGhlIFtgTWVzc2FnZUlucHV0YF0oLi9NZXNzYWdlSW5wdXRDb21wb25lbnQubWR4KSBjb21wb25lbnQgdG8gZGlzcGxheSB0aGUgaW5wdXQgSFRNTCBlbGVtZW50IHdoZXJlIHVzZXJzIGNhbiB0eXBlIHRoZWlyIG1lc3NhZ2UuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3N0cmVhbS10ZXh0YXJlYScsXG4gIHRlbXBsYXRlVXJsOiAnLi90ZXh0YXJlYS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlczogW10sXG59KVxuZXhwb3J0IGNsYXNzIFRleHRhcmVhQ29tcG9uZW50XG4gIGltcGxlbWVudHMgVGV4dGFyZWFJbnRlcmZhY2UsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBBZnRlclZpZXdJbml0XG57XG4gIEBIb3N0QmluZGluZygpIGNsYXNzID1cbiAgICAnc3RyLWNoYXRfX3RleHRhcmVhIHN0ci1jaGF0X19tZXNzYWdlLXRleHRhcmVhLWFuZ3VsYXItaG9zdCc7XG4gIC8qKlxuICAgKiBUaGUgdmFsdWUgb2YgdGhlIGlucHV0IEhUTUwgZWxlbWVudC5cbiAgICovXG4gIEBJbnB1dCgpIHZhbHVlID0gJyc7XG4gIC8qKlxuICAgKiBQbGFjZWhvbGRlciBvZiB0aGUgdGV4dGFyZWFcbiAgICovXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyID0gJyc7XG4gIC8qKlxuICAgKiBTZWUgW2BNZXNzYWdlSW5wdXRDb25maWdTZXJ2aWNlYF0oLi4vc2VydmljZXMvTWVzc2FnZUlucHV0Q29uZmlnU2VydmljZS5tZHgpIGZvciBtb3JlIGluZm9ybWF0aW9uXG4gICAqL1xuICBASW5wdXQoKSBpbnB1dE1vZGUhOiAnZGVza3RvcCcgfCAnbW9iaWxlJztcbiAgLyoqXG4gICAqIEVuYWJsZXMgb3IgZGlzYWJsZXMgYXV0byBmb2N1cyBvbiB0aGUgdGV4dGFyZWEgZWxlbWVudFxuICAgKi9cbiAgQElucHV0KCkgYXV0b0ZvY3VzID0gdHJ1ZTtcbiAgLyoqXG4gICAqIEVtaXRzIHRoZSBjdXJyZW50IHZhbHVlIG9mIHRoZSBpbnB1dCBlbGVtZW50IHdoZW4gYSB1c2VyIHR5cGVzLlxuICAgKi9cbiAgQE91dHB1dCgpIHJlYWRvbmx5IHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG4gIC8qKlxuICAgKiBFbWl0cyB3aGVuIGEgdXNlciB0cmlnZ2VycyBhIG1lc3NhZ2Ugc2VuZCBldmVudCAodGhpcyBoYXBwZW5zIHdoZW4gdGhleSBoaXQgdGhlIGBFbnRlcmAga2V5KS5cbiAgICovXG4gIEBPdXRwdXQoKSByZWFkb25seSBzZW5kID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBAVmlld0NoaWxkKCdpbnB1dCcpIHByaXZhdGUgbWVzc2FnZUlucHV0ITogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuICBwcml2YXRlIGlzVmlld0luaXRlZCA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZW1vamlJbnB1dFNlcnZpY2U6IEVtb2ppSW5wdXRTZXJ2aWNlLFxuICAgIHByaXZhdGUgdGhlbWVTZXJ2aWNlOiBUaGVtZVNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXG4gICAgICB0aGlzLmVtb2ppSW5wdXRTZXJ2aWNlLmVtb2ppSW5wdXQkLnN1YnNjcmliZSgoZW1vamkpID0+IHtcbiAgICAgICAgdGhpcy5tZXNzYWdlSW5wdXQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICBjb25zdCB7IHNlbGVjdGlvblN0YXJ0IH0gPSB0aGlzLm1lc3NhZ2VJbnB1dC5uYXRpdmVFbGVtZW50O1xuICAgICAgICB0aGlzLm1lc3NhZ2VJbnB1dC5uYXRpdmVFbGVtZW50LnNldFJhbmdlVGV4dChlbW9qaSk7XG4gICAgICAgIHRoaXMubWVzc2FnZUlucHV0Lm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uU3RhcnQgPVxuICAgICAgICAgIHNlbGVjdGlvblN0YXJ0ISArIGVtb2ppLmxlbmd0aDtcbiAgICAgICAgdGhpcy5tZXNzYWdlSW5wdXQubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25FbmQgPVxuICAgICAgICAgIHNlbGVjdGlvblN0YXJ0ISArIGVtb2ppLmxlbmd0aDtcbiAgICAgICAgdGhpcy5pbnB1dENoYW5nZWQoKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlcy52YWx1ZSAmJiAhdGhpcy52YWx1ZSAmJiB0aGlzLm1lc3NhZ2VJbnB1dCkge1xuICAgICAgdGhpcy5tZXNzYWdlSW5wdXQubmF0aXZlRWxlbWVudC5zdHlsZS5oZWlnaHQgPSAnYXV0byc7XG4gICAgfSBlbHNlIGlmIChcbiAgICAgIGNoYW5nZXMudmFsdWUgJiZcbiAgICAgIHRoaXMudmFsdWUgJiZcbiAgICAgIHRoaXMubWVzc2FnZUlucHV0ICYmXG4gICAgICB0aGlzLmlzVmlld0luaXRlZFxuICAgICkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLm1lc3NhZ2VJbnB1dC5uYXRpdmVFbGVtZW50LnNjcm9sbEhlaWdodCA+IDApIHtcbiAgICAgICAgICB0aGlzLmFkanVzdFRleHRhcmVhSGVpZ2h0KCk7XG4gICAgICAgIH1cbiAgICAgIH0sIDApO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmlzVmlld0luaXRlZCA9IHRydWU7XG4gICAgaWYgKHRoaXMubWVzc2FnZUlucHV0Lm5hdGl2ZUVsZW1lbnQuc2Nyb2xsSGVpZ2h0ID4gMCAmJiB0aGlzLnZhbHVlKSB7XG4gICAgICB0aGlzLmFkanVzdFRleHRhcmVhSGVpZ2h0KCk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmZvckVhY2goKHMpID0+IHMudW5zdWJzY3JpYmUoKSk7XG4gIH1cblxuICBpbnB1dENoYW5nZWQoKSB7XG4gICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHRoaXMubWVzc2FnZUlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUpO1xuICAgIHRoaXMuYWRqdXN0VGV4dGFyZWFIZWlnaHQoKTtcbiAgfVxuXG4gIGVudGVySGl0KGV2ZW50OiBFdmVudCkge1xuICAgIGlmICh0aGlzLmlucHV0TW9kZSA9PT0gJ2Rlc2t0b3AnICYmICEoZXZlbnQgYXMgS2V5Ym9hcmRFdmVudCkuaXNDb21wb3NpbmcpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLnNlbmQubmV4dCgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYWRqdXN0VGV4dGFyZWFIZWlnaHQoKSB7XG4gICAgdGhpcy5tZXNzYWdlSW5wdXQubmF0aXZlRWxlbWVudC5zdHlsZS5oZWlnaHQgPSAnJztcbiAgICB0aGlzLm1lc3NhZ2VJbnB1dC5uYXRpdmVFbGVtZW50LnN0eWxlLmhlaWdodCA9IGAke3RoaXMubWVzc2FnZUlucHV0Lm5hdGl2ZUVsZW1lbnQuc2Nyb2xsSGVpZ2h0fXB4YDtcbiAgfVxufVxuIiwiPHRleHRhcmVhXG4gICNpbnB1dFxuICBkYXRhLXRlc3RpZD1cInRleHRhcmVhXCJcbiAgY2xhc3M9XCJcbiAgICBydGFfX3RleHRhcmVhXG4gICAgc3RyLWNoYXRfX3RleHRhcmVhX190ZXh0YXJlYVxuICAgIHN0ci1jaGF0X19hbmd1bGFyLXRleHRhcmVhXG4gICAgc3RyLWNoYXRfX21lc3NhZ2UtdGV4dGFyZWFcbiAgXCJcbiAgcm93cz1cIjFcIlxuICBbdmFsdWVdPVwidmFsdWUgfHwgJydcIlxuICBbYXV0b2ZvY3VzXT1cImF1dG9Gb2N1c1wiXG4gIHBsYWNlaG9sZGVyPVwie3sgcGxhY2Vob2xkZXIgfCB0cmFuc2xhdGUgfX1cIlxuICAoaW5wdXQpPVwiaW5wdXRDaGFuZ2VkKClcIlxuICAoa2V5ZG93bi5lbnRlcik9XCJlbnRlckhpdCgkZXZlbnQpXCJcbj48L3RleHRhcmVhPlxuIl19