@colijnit/transaction 253.1.9 → 253.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.
@@ -42,13 +42,24 @@ export class AddProductComponent {
42
42
  this.searchText = undefined;
43
43
  this._changeDetector.detectChanges();
44
44
  // first check if there's a single article found
45
- const foundArticles = yield this.transactionService.getArticles(this.catalogParameters);
46
- if (foundArticles && foundArticles.length === 1) {
47
- const article = yield this.transactionService.getArticleExtended(foundArticles[0].articleNumber);
45
+ // This is a two check step:
46
+ // Check if there is an exact match on barcode, ean or articlenumber
47
+ // if not: check with search like
48
+ // else open catalogus
49
+ const fullMatchSearch = yield this.transactionService.getArticleListWithBarcodeArticleNrEanCode(text);
50
+ if (fullMatchSearch && fullMatchSearch.length === 1) {
51
+ const article = yield this.transactionService.getArticleExtended(fullMatchSearch[0].articleNr);
48
52
  yield this.handleAddArticle(article);
49
53
  }
50
- else { // else open the catalog
51
- this.showCatalogDialog();
54
+ else {
55
+ const foundArticles = yield this.transactionService.getArticles(this.catalogParameters);
56
+ if (foundArticles && foundArticles.length === 1) {
57
+ const article = yield this.transactionService.getArticleExtended(foundArticles[0].articleNumber);
58
+ yield this.handleAddArticle(article);
59
+ }
60
+ else {
61
+ this.showCatalogDialog();
62
+ }
52
63
  }
53
64
  });
54
65
  }
@@ -221,4 +232,4 @@ AddProductComponent.propDecorators = {
221
232
  showClass: [{ type: HostBinding, args: ['class.co-add-product',] }],
222
233
  return: [{ type: HostBinding, args: ['class.return',] }]
223
234
  };
224
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLXByb2R1Y3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvYWRkLXByb2R1Y3QvYWRkLXByb2R1Y3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osV0FBVyxFQUNYLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sc0RBQXNELENBQUM7QUFDckYsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQzFDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ2xFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBR3JFLE9BQU8sRUFDTCxnQ0FBZ0MsRUFDakMsTUFBTSwyRUFBMkUsQ0FBQztBQUNuRixPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxpRUFBaUUsQ0FBQztBQThDckcsTUFBTSxPQUFPLG1CQUFtQjtJQWtDOUIsWUFDUyxXQUE2QixFQUM3QixrQkFBc0MsRUFDckMsZUFBa0M7UUFGbkMsZ0JBQVcsR0FBWCxXQUFXLENBQWtCO1FBQzdCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDckMsb0JBQWUsR0FBZixlQUFlLENBQW1CO1FBcEM1QixVQUFLLEdBQWdCLElBQUksQ0FBQztRQUduQywrQkFBMEIsR0FBWSxJQUFJLENBQUM7UUFHM0MsZUFBVSxHQUFzQyxJQUFJLFlBQVksRUFBdUIsQ0FBQztRQVV4RixXQUFNLEdBQVksS0FBSyxDQUFDO1FBRXhCLG1CQUFjLEdBQVE7WUFDM0IsYUFBYSxFQUFFLElBQUk7WUFDbkIsYUFBYSxFQUFFLEtBQUs7WUFDcEIsdUJBQXVCLEVBQUUsS0FBSztZQUM5QixvQkFBb0IsRUFBRSxJQUFJO1lBQzFCLFVBQVUsRUFBRSxLQUFLO1NBQ2xCLENBQUM7UUFDSyxzQkFBaUIsR0FBUSxFQUFFLENBQUM7UUFDNUIsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFDN0IseUJBQW9CLEdBQVksS0FBSyxDQUFDO1FBR3RDLGlCQUFZLEdBQWEsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUM5RSxnQkFBVyxHQUFhLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQU9yRixDQUFDO0lBM0JNLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUEyQlksWUFBWSxDQUFDLElBQVk7O1lBQ3BDLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUU7Z0JBQzlCLE9BQU87YUFDUjtZQUVELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDckMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7WUFDOUIsSUFBSSxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUM7WUFDNUIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNyQyxnREFBZ0Q7WUFDaEQsTUFBTSxhQUFhLEdBQW1CLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztZQUN4RyxJQUFJLGFBQWEsSUFBSSxhQUFhLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtnQkFDL0MsTUFBTSxPQUFPLEdBQW9CLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixDQUFDLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQztnQkFDbEgsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7YUFDdEM7aUJBQU0sRUFBRSx3QkFBd0I7Z0JBQy9CLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO2FBQzFCO1FBQ0gsQ0FBQztLQUFBO0lBRU0sZ0JBQWdCLENBQUMsU0FBa0I7UUFDeEMsSUFBSSxDQUFDLG9CQUFvQixHQUFHLFNBQVMsQ0FBQztJQUN4QyxDQUFDO0lBRVksZ0JBQWdCLENBQUMsT0FBd0I7O1lBQ3BELElBQUksSUFBSSxDQUFDLDBCQUEwQixFQUFFO2dCQUNuQyxPQUFPLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUM5RjtpQkFBTTtnQkFDTCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQztvQkFDbkIsT0FBTyxFQUFFLE9BQU87b0JBQ2hCLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDOUIsV0FBVyxFQUFFLENBQUM7b0JBQ2QsV0FBVyxFQUFFLENBQUM7b0JBQ2QsV0FBVyxFQUFFLElBQUk7aUJBQ2xCLENBQUMsQ0FBQzthQUNKO1FBQ0gsQ0FBQztLQUFBO0lBRVkscUJBQXFCLENBQUMsSUFBNkQ7O1lBQzlGLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1lBQ3pCLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxPQUFPLFlBQVksZUFBZSxFQUFFO2dCQUNuRCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQztvQkFDbkIsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO29CQUNyQixRQUFRLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7b0JBQy9DLFdBQVcsRUFBRSxDQUFDO29CQUNkLFdBQVcsRUFBRSxDQUFDO29CQUNkLFdBQVcsRUFBRSxJQUFJO2lCQUNsQixDQUFDLENBQUM7YUFDSjtpQkFBTTtnQkFDTCxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7b0JBQ2hCLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQWlCLENBQUMsQ0FBQztvQkFDM0QsSUFBSSxlQUFlLENBQUMsV0FBVyxJQUFJLGVBQWUsQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFO3dCQUN0RSxJQUFJLGVBQWUsQ0FBQyxXQUFXLENBQUMsY0FBYyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUM7NEJBQ3pHLGVBQWUsQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksZUFBZSxDQUFDLFdBQVcsQ0FBQyxXQUFXLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxFQUFFOzRCQUM1SixNQUFNLGNBQWMsR0FBRyxlQUFlLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQzs0QkFDbEUsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxhQUFhLEdBQUcsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDOzRCQUMxRSxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsY0FBYyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtnQ0FDOUMsTUFBTSxXQUFXLEdBQVksQ0FBQyxLQUFLLGNBQWMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO2dDQUM3RCxNQUFNLElBQUksR0FBRyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0NBQy9CLE1BQU0sVUFBVSxHQUFHLGVBQWUsQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO2dDQUNyRyxJQUFJLFVBQVUsRUFBRTtvQ0FDZCxNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsV0FBVyxDQUFDLENBQUM7aUNBQzlIOzZCQUNGO3lCQUNGOzZCQUFNOzRCQUNMLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO3lCQUMvSTtxQkFDRjtpQkFDRjthQUNGO1FBQ0gsQ0FBQztLQUFBO0lBRU0saUJBQWlCLENBQUMsYUFBYTtRQUNwQyxJQUFJLFFBQVEsR0FBVyxDQUFDLENBQUM7UUFDekIsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLGFBQWEsR0FBRyxDQUFDLEVBQUU7WUFDcEMsUUFBUSxHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQ2Y7YUFBTTtZQUNMLFFBQVEsR0FBRyxhQUFhLENBQUM7U0FDMUI7UUFDRCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRVkseUJBQXlCLENBQUMsT0FBd0I7O1lBQzdELE1BQU0sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3JDLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQzNCLENBQUM7S0FBQTtJQUVNLGlCQUFpQjtRQUN0QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztJQUMxQixDQUFDO0lBRU0sbUJBQW1CLENBQUMsS0FBaUI7UUFDMUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDN0IsQ0FBQztJQUVNLHFCQUFxQjtRQUMxQixJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxFQUFFO1lBQzlCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUM7U0FDOUM7UUFDRCxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztRQUM5QixJQUFJLENBQUMsVUFBVSxHQUFHLFNBQVMsQ0FBQztRQUM1QixJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFWSxvQkFBb0IsQ0FBQyxvQkFJakM7O1lBQ0MsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7WUFDekIsSUFBSSxPQUFPLEdBQXFDLElBQUksZ0NBQWdDLEVBQUUsQ0FBQztZQUN2RixPQUFPLENBQUMsU0FBUyxHQUFHLG9CQUFvQixDQUFDLE9BQU8sQ0FBQztZQUNqRCxPQUFPLENBQUMsV0FBVyxHQUFHLG9CQUFvQixDQUFDLFVBQVUsQ0FBQztZQUN0RCxPQUFPLENBQUMsV0FBVyxHQUFHLG9CQUFvQixDQUFDLFVBQVUsQ0FBQztZQUN0RCxNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyx5QkFBeUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNuRSxDQUFDO0tBQUE7SUFFWSw0QkFBNEIsQ0FBQyxJQUl6Qzs7WUFDQyxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztZQUN6QixJQUFJLE9BQU8sR0FBcUMsSUFBSSxnQ0FBZ0MsRUFBRSxDQUFDO1lBQ3ZGLE9BQU8sQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztZQUNqQyxPQUFPLENBQUMsV0FBVyxHQUFHLG9CQUFvQixDQUFDLFdBQVcsQ0FBQztZQUN2RCxPQUFPLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7WUFDdEMsTUFBTSxJQUFJLENBQUMsa0JBQWtCLENBQUMseUJBQXlCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDbkUsQ0FBQztLQUFBO0lBRU8sc0JBQXNCO1FBQzFCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUNqRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQztRQUNwQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO1FBQ2xELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxzQkFBc0IsR0FBRyxLQUFLLENBQUM7UUFDdEQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLHdCQUF3QixHQUFHLElBQUksQ0FBQztRQUN2RCxJQUFJLENBQUMsaUJBQWlCLENBQUMsdUJBQXVCLEdBQUUsS0FBSyxDQUFDO1FBQ3RELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxzQkFBc0IsR0FBRSxLQUFLLENBQUM7UUFDckQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLG9CQUFvQixHQUFHLEtBQUssQ0FBQztRQUNwRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsZUFBZSxHQUFHLEVBQUUsQ0FBQyxDQUFDLGtCQUFrQjtRQUMvRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDbEQsQ0FBQzs7O1lBMU5GLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO2dCQUMxQixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQThCVDtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBcERPLGdCQUFnQjtZQUNoQixrQkFBa0I7WUFaeEIsaUJBQWlCOzs7eUNBbUVoQixLQUFLO3lCQUdMLE1BQU07OEJBR04sU0FBUyxTQUFDLGFBQWE7d0JBRXZCLFdBQVcsU0FBQyxzQkFBc0I7cUJBS2xDLFdBQVcsU0FBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEhvc3RCaW5kaW5nLFxyXG4gIElucHV0LFxyXG4gIE91dHB1dCxcclxuICBWaWV3Q2hpbGQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb25cclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtBcnRpY2xlRXh0ZW5kZWR9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZXh0ZW5kZWQuYm8nO1xyXG5pbXBvcnQge0ljb259IGZyb20gJy4uLy4uL2VudW0vaWNvbi5lbnVtJztcclxuaW1wb3J0IHtJY29uQ2FjaGVTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL2ljb24tY2FjaGUuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQge0FydGljbGVMaWdodH0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1saWdodC5ibyc7XHJcbmltcG9ydCB7U2FmZUh0bWx9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xyXG5pbXBvcnQge1xyXG4gIEV4dGVybmFsQ2F0YWxvZ0FkZEFydGljbGVSZXF1ZXN0XHJcbn0gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL2V4dGVybmFsLWNhdGFsb2ctYWRkLWFydGljbGUtcmVxdWVzdCc7XHJcbmltcG9ydCB7RXh0ZXJuYWxDYXRhbG9nVHlwZXN9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9lbnVtL2V4dGVybmFsLWNhdGFsb2ctdHlwZXMuZW51bSc7XHJcbmltcG9ydCB7SW5wdXRTY2FubmVyQ29tcG9uZW50fSBmcm9tIFwiQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMlwiO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBZGRBcnRpY2xlSW50ZXJmYWNlIHtcclxuICBhcnRpY2xlOiBBcnRpY2xlRXh0ZW5kZWQ7XHJcbiAgcXVhbnRpdHk6IG51bWJlcjtcclxuICBhYm92ZUxpbmVOcjogbnVtYmVyO1xyXG4gIGJlbG93TGluZU5yOiBudW1iZXI7XHJcbiAgbGFzdEFydGljbGU6IGJvb2xlYW47XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY28tYWRkLXByb2R1Y3QnLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8Y28taW5wdXQtc2Nhbm5lclxyXG4gICAgICAjaW5wdXRTZWFyY2hcclxuICAgICAgW2N1c3RvbUNzc0NsYXNzXT1cIiduby1mb2N1cy1saW5lJ1wiXHJcbiAgICAgIFsobW9kZWwpXT1cInNlYXJjaFRleHRcIlxyXG4gICAgICBbcGxhY2Vob2xkZXJdPVwiJ1NFQVJDSF9BRERfQVJUSUNMRScgfCBsb2NhbGl6ZVwiXHJcbiAgICAgIFtjZW50ZXJMYWJlbF09XCJ0cnVlXCJcclxuICAgICAgW3VzZUxlZnRJY29uXT1cInRydWVcIlxyXG4gICAgICBbbGVmdEljb25EYXRhXT1cInJldHVybiA/IGNhcnRNaW5JY29uIDogY2FydFBsdXNJY29uXCJcclxuICAgICAgW3VzZVJpZ2h0SWNvbl09XCJ0cnVlXCJcclxuICAgICAgKGxlZnRJY29uQ2xpY2spPVwiaGFuZGxlQ2FydEljb25DbGljaygkZXZlbnQpXCJcclxuICAgICAgKHJpZ2h0SWNvbkNsaWNrKT1cImhhbmRsZVNlYXJjaEljb25DbGljaygpXCJcclxuICAgICAgKGJhckNvZGVTY2FubmVkKT1cImhhbmRsZVNlYXJjaCgkZXZlbnQpXCJcclxuICAgICAgKHNlYXJjaCk9XCJoYW5kbGVTZWFyY2goJGV2ZW50KVwiXHJcbiAgICAgIChpc0ZvY3VzZWQpPVwiaGFuZGxlSW5wdXRGb2N1cygkZXZlbnQpXCJcclxuICAgID48L2NvLWlucHV0LXNjYW5uZXI+XHJcbiAgICA8Y28tZGlhbG9nLWNhdGFsb2cgKm5nSWY9XCJzaG93Q2F0YWxvZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW29wdGlvbnNdPVwiY2F0YWxvZ09wdGlvbnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtwYXJhbWV0ZXJzXT1cImNhdGFsb2dQYXJhbWV0ZXJzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbaGFuZGxlQWRkQXJ0aWNsZUludGVybmFsbHldPVwiaGFuZGxlQWRkQXJ0aWNsZUludGVybmFsbHlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtzaG93TmF2aWdhdGlvbl09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbaXNSZXR1cm5dPVwidGhpcy5yZXR1cm5cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFt0cmFuc2FjdGlvbl09XCJ0cmFuc2FjdGlvblNlcnZpY2UuY3VycmVudFRyYW5zYWN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAoY2xvc2VDbGljayk9XCJzaG93Q2F0YWxvZyA9IGZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAoYXJ0aWNsZUNsaWNrZWQpPVwiaGFuZGxlQ2F0YWxvZ0FydGljbGVDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAoYWRkQXJ0aWNsZUNsaWNrZWQpPVwiaGFuZGxlQWRkQXJ0aWNsZUNsaWNrKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIChhZGRDYXRGYXJtQXJ0aWNsZUNsaWNrZWQpPVwiaGFuZGxlQWRkQ2F0RmFybUFydGljbGVDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAoaUZyYW1lRmVlZGJhY2spPVwiaGFuZGxlSUZyYW1lRmVlZGJhY2soJGV2ZW50KVwiXHJcbiAgICA+XHJcbiAgICA8L2NvLWRpYWxvZy1jYXRhbG9nPlxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRkUHJvZHVjdENvbXBvbmVudCB7XHJcbiAgcHVibGljIHJlYWRvbmx5IGljb25zOiB0eXBlb2YgSWNvbiA9IEljb247XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGhhbmRsZUFkZEFydGljbGVJbnRlcm5hbGx5OiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIGFkZEFydGljbGU6IEV2ZW50RW1pdHRlcjxBZGRBcnRpY2xlSW50ZXJmYWNlPiA9IG5ldyBFdmVudEVtaXR0ZXI8QWRkQXJ0aWNsZUludGVyZmFjZT4oKTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnaW5wdXRTZWFyY2gnKSBwdWJsaWMgaW5wdXRTZWFyY2hUZXh0OiBJbnB1dFNjYW5uZXJDb21wb25lbnQ7XHJcblxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuY28tYWRkLXByb2R1Y3QnKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MucmV0dXJuJylcclxuICBwdWJsaWMgcmV0dXJuOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHB1YmxpYyBjYXRhbG9nT3B0aW9uczogYW55ID0ge1xyXG4gICAgc2VhcmNoT25TdGFydDogdHJ1ZSxcclxuICAgIHNob3dBZGRUb0NhcnQ6IGZhbHNlLFxyXG4gICAgc2hvd0xvb2tBdEFydGljbGVCdXR0b246IGZhbHNlLFxyXG4gICAgc2hvd0FkZEFydGljbGVCdXR0b246IHRydWUsXHJcbiAgICBvbmx5VGhyZWVEOiBmYWxzZVxyXG4gIH07XHJcbiAgcHVibGljIGNhdGFsb2dQYXJhbWV0ZXJzOiBhbnkgPSB7fTtcclxuICBwdWJsaWMgc2hvd0NhdGFsb2c6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgaXNTZWFyY2hJbnB1dEZvY3VzZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc2VhcmNoVGV4dDogc3RyaW5nO1xyXG5cclxuICBwdWJsaWMgY2FydFBsdXNJY29uOiBTYWZlSHRtbCA9IHRoaXMuaWNvblNlcnZpY2UuZ2V0SWNvbih0aGlzLmljb25zLkNhcnRQbHVzUmVndWxhcik7XHJcbiAgcHVibGljIGNhcnRNaW5JY29uOiBTYWZlSHRtbCA9IHRoaXMuaWNvblNlcnZpY2UuZ2V0SWNvbih0aGlzLmljb25zLkNhcnRNaW51c1JlZ3VsYXIpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBpY29uU2VydmljZTogSWNvbkNhY2hlU2VydmljZSxcclxuICAgIHB1YmxpYyB0cmFuc2FjdGlvblNlcnZpY2U6IFRyYW5zYWN0aW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgX2NoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZlxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGhhbmRsZVNlYXJjaCh0ZXh0OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmICghdGhpcy5pc1NlYXJjaElucHV0Rm9jdXNlZCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zZWFyY2hUZXh0ID0gdGV4dDtcclxuICAgIHRoaXMuX2NoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcclxuICAgIHRoaXMuX3ByZXBhcmVDYXRhbG9nUmVxdWVzdCgpO1xyXG4gICAgdGhpcy5zZWFyY2hUZXh0ID0gdW5kZWZpbmVkO1xyXG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgLy8gZmlyc3QgY2hlY2sgaWYgdGhlcmUncyBhIHNpbmdsZSBhcnRpY2xlIGZvdW5kXHJcbiAgICBjb25zdCBmb3VuZEFydGljbGVzOiBBcnRpY2xlTGlnaHRbXSA9IGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldEFydGljbGVzKHRoaXMuY2F0YWxvZ1BhcmFtZXRlcnMpO1xyXG4gICAgaWYgKGZvdW5kQXJ0aWNsZXMgJiYgZm91bmRBcnRpY2xlcy5sZW5ndGggPT09IDEpIHtcclxuICAgICAgY29uc3QgYXJ0aWNsZTogQXJ0aWNsZUV4dGVuZGVkID0gYXdhaXQgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0QXJ0aWNsZUV4dGVuZGVkKGZvdW5kQXJ0aWNsZXNbMF0uYXJ0aWNsZU51bWJlcik7XHJcbiAgICAgIGF3YWl0IHRoaXMuaGFuZGxlQWRkQXJ0aWNsZShhcnRpY2xlKTtcclxuICAgIH0gZWxzZSB7IC8vIGVsc2Ugb3BlbiB0aGUgY2F0YWxvZ1xyXG4gICAgICB0aGlzLnNob3dDYXRhbG9nRGlhbG9nKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlSW5wdXRGb2N1cyhpc0ZvY3VzZWQ6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuaXNTZWFyY2hJbnB1dEZvY3VzZWQgPSBpc0ZvY3VzZWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgaGFuZGxlQWRkQXJ0aWNsZShhcnRpY2xlOiBBcnRpY2xlRXh0ZW5kZWQpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgIGlmICh0aGlzLmhhbmRsZUFkZEFydGljbGVJbnRlcm5hbGx5KSB7XHJcbiAgICAgIHJldHVybiBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5hZGRBcnRpY2xlKGFydGljbGUuYXJ0aWNsZU51bWJlciwgdGhpcy5yZXR1cm4gPyAtMSA6IDEpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5hZGRBcnRpY2xlLm5leHQoe1xyXG4gICAgICAgIGFydGljbGU6IGFydGljbGUsXHJcbiAgICAgICAgcXVhbnRpdHk6IHRoaXMucmV0dXJuID8gLTEgOiAxLFxyXG4gICAgICAgIGFib3ZlTGluZU5yOiAwLFxyXG4gICAgICAgIGJlbG93TGluZU5yOiAwLFxyXG4gICAgICAgIGxhc3RBcnRpY2xlOiB0cnVlXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGhhbmRsZUFkZEFydGljbGVDbGljayhkYXRhOiB7IGFydGljbGU6IHN0cmluZyB8IEFydGljbGVFeHRlbmRlZCwgcXVhbnRpdHk6IG51bWJlciB9KTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLnNob3dDYXRhbG9nID0gZmFsc2U7XHJcbiAgICBpZiAoZGF0YSAmJiBkYXRhLmFydGljbGUgaW5zdGFuY2VvZiBBcnRpY2xlRXh0ZW5kZWQpIHtcclxuICAgICAgdGhpcy5hZGRBcnRpY2xlLm5leHQoe1xyXG4gICAgICAgIGFydGljbGU6IGRhdGEuYXJ0aWNsZSxcclxuICAgICAgICBxdWFudGl0eTogdGhpcy5nZXRBY3R1YWxRdWFudGl0eShkYXRhLnF1YW50aXR5KSxcclxuICAgICAgICBhYm92ZUxpbmVOcjogMCxcclxuICAgICAgICBiZWxvd0xpbmVOcjogMCxcclxuICAgICAgICBsYXN0QXJ0aWNsZTogdHJ1ZVxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmIChkYXRhLmFydGljbGUpIHtcclxuICAgICAgICBjb25zdCBhcnRpY2xlVHJlZURhdGEgPSBKU09OLnBhcnNlKGRhdGEuYXJ0aWNsZSBhcyBzdHJpbmcpO1xyXG4gICAgICAgIGlmIChhcnRpY2xlVHJlZURhdGEuYXJ0aWNsZVRyZWUgJiYgYXJ0aWNsZVRyZWVEYXRhLmFydGljbGVUcmVlLmFydGljbGUpIHtcclxuICAgICAgICAgIGlmIChhcnRpY2xlVHJlZURhdGEuYXJ0aWNsZVRyZWUuY29tcG9zaXRlR29vZHMgJiYgQXJyYXkuaXNBcnJheShhcnRpY2xlVHJlZURhdGEuYXJ0aWNsZVRyZWUuY29tcG9zaXRlR29vZHMpICYmXHJcbiAgICAgICAgICAgIGFydGljbGVUcmVlRGF0YS5hcnRpY2xlVHJlZS5jb21wb3NpdGVHb29kcy5sZW5ndGggPiAwICYmIGFydGljbGVUcmVlRGF0YS5hcnRpY2xlVHJlZS5zdWJBcnRpY2xlcyAmJiBBcnJheS5pc0FycmF5KGFydGljbGVUcmVlRGF0YS5hcnRpY2xlVHJlZS5zdWJBcnRpY2xlcykpIHtcclxuICAgICAgICAgICAgY29uc3QgY29tcG9zaXRlR29vZHMgPSBhcnRpY2xlVHJlZURhdGEuYXJ0aWNsZVRyZWUuY29tcG9zaXRlR29vZHM7XHJcbiAgICAgICAgICAgIGNvbXBvc2l0ZUdvb2RzLnNvcnQoKGEsIGIpID0+IGEudmVyc2lvbk51bWJlciA8IGIudmVyc2lvbk51bWJlciA/IC0xIDogMSk7XHJcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY29tcG9zaXRlR29vZHMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgICAgICBjb25zdCBsYXN0QXJ0aWNsZTogYm9vbGVhbiA9IGkgPT09IGNvbXBvc2l0ZUdvb2RzLmxlbmd0aCAtIDE7XHJcbiAgICAgICAgICAgICAgY29uc3QgZ29vZCA9IGNvbXBvc2l0ZUdvb2RzW2ldO1xyXG4gICAgICAgICAgICAgIGNvbnN0IHN1YkFydGljbGUgPSBhcnRpY2xlVHJlZURhdGEuYXJ0aWNsZVRyZWUuc3ViQXJ0aWNsZXMuZmluZChzID0+IHMuZ29vZElkID09PSBnb29kLm1lbWJlckdvb2RJZCk7XHJcbiAgICAgICAgICAgICAgaWYgKHN1YkFydGljbGUpIHtcclxuICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmFkZEFydGljbGUoc3ViQXJ0aWNsZS5hcnRpY2xlTnVtYmVyLCB0aGlzLmdldEFjdHVhbFF1YW50aXR5KGdvb2QucXVhbnRpdHkpLCAwLCAwLCBsYXN0QXJ0aWNsZSk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5hZGRBcnRpY2xlKGFydGljbGVUcmVlRGF0YS5hcnRpY2xlVHJlZS5hcnRpY2xlLmFydGljbGVOdW1iZXIsIHRoaXMuZ2V0QWN0dWFsUXVhbnRpdHkoYXJ0aWNsZVRyZWVEYXRhLnF1YW50aXR5KSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0QWN0dWFsUXVhbnRpdHkocXVhbnRpdHlJbnB1dCk6IG51bWJlciB7XHJcbiAgICBsZXQgcXVhbnRpdHk6IG51bWJlciA9IDA7XHJcbiAgICBpZiAodGhpcy5yZXR1cm4gJiYgcXVhbnRpdHlJbnB1dCA+IDApIHtcclxuICAgICAgcXVhbnRpdHkgPSAtMTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHF1YW50aXR5ID0gcXVhbnRpdHlJbnB1dDtcclxuICAgIH1cclxuICAgIHJldHVybiBxdWFudGl0eTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBoYW5kbGVDYXRhbG9nQXJ0aWNsZUNsaWNrKGFydGljbGU6IEFydGljbGVFeHRlbmRlZCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgYXdhaXQgdGhpcy5oYW5kbGVBZGRBcnRpY2xlKGFydGljbGUpO1xyXG4gICAgdGhpcy5zaG93Q2F0YWxvZyA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNob3dDYXRhbG9nRGlhbG9nKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zaG93Q2F0YWxvZyA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlQ2FydEljb25DbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZXR1cm4gPSAhdGhpcy5yZXR1cm47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU2VhcmNoSWNvbkNsaWNrKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuaW5wdXRTZWFyY2hUZXh0Lm1vZGVsKSB7XHJcbiAgICAgIHRoaXMuc2VhcmNoVGV4dCA9IHRoaXMuaW5wdXRTZWFyY2hUZXh0Lm1vZGVsO1xyXG4gICAgfVxyXG4gICAgdGhpcy5fcHJlcGFyZUNhdGFsb2dSZXF1ZXN0KCk7XHJcbiAgICB0aGlzLnNlYXJjaFRleHQgPSB1bmRlZmluZWQ7XHJcbiAgICB0aGlzLl9jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB0aGlzLnNob3dDYXRhbG9nRGlhbG9nKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgaGFuZGxlSUZyYW1lRmVlZGJhY2soaUZyYW1lRmVlZGJhY2tPYmplY3Q6IHtcclxuICAgIGpzb25TdHJpbmc6IHN0cmluZyxcclxuICAgIGNhdGFsb2c6IG51bWJlcixcclxuICAgIHNvdXJjZVR5cGU6IHN0cmluZ1xyXG4gIH0pOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMuc2hvd0NhdGFsb2cgPSBmYWxzZTtcclxuICAgIGxldCByZXF1ZXN0OiBFeHRlcm5hbENhdGFsb2dBZGRBcnRpY2xlUmVxdWVzdCA9IG5ldyBFeHRlcm5hbENhdGFsb2dBZGRBcnRpY2xlUmVxdWVzdCgpO1xyXG4gICAgcmVxdWVzdC5jYXRhbG9nSWQgPSBpRnJhbWVGZWVkYmFja09iamVjdC5jYXRhbG9nO1xyXG4gICAgcmVxdWVzdC5jYXRhbG9nVHlwZSA9IGlGcmFtZUZlZWRiYWNrT2JqZWN0LnNvdXJjZVR5cGU7XHJcbiAgICByZXF1ZXN0LmFydGljbGVKc29uID0gaUZyYW1lRmVlZGJhY2tPYmplY3QuanNvblN0cmluZztcclxuICAgIGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmFkZEV4dGVybmFsQ2F0YWxvZ0FydGljbGUocmVxdWVzdCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgaGFuZGxlQWRkQ2F0RmFybUFydGljbGVDbGljayhkYXRhOiB7XHJcbiAgICBxdWFudGl0eTogbnVtYmVyLFxyXG4gICAganNvblN0cmluZzogc3RyaW5nLFxyXG4gICAgY2F0YWxvZzogbnVtYmVyXHJcbiAgfSk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy5zaG93Q2F0YWxvZyA9IGZhbHNlO1xyXG4gICAgbGV0IHJlcXVlc3Q6IEV4dGVybmFsQ2F0YWxvZ0FkZEFydGljbGVSZXF1ZXN0ID0gbmV3IEV4dGVybmFsQ2F0YWxvZ0FkZEFydGljbGVSZXF1ZXN0KCk7XHJcbiAgICByZXF1ZXN0LmNhdGFsb2dJZCA9IGRhdGEuY2F0YWxvZztcclxuICAgIHJlcXVlc3QuY2F0YWxvZ1R5cGUgPSBFeHRlcm5hbENhdGFsb2dUeXBlcy5DYXRhbG9nRmFybTtcclxuICAgIHJlcXVlc3QuYXJ0aWNsZUpzb24gPSBkYXRhLmpzb25TdHJpbmc7XHJcbiAgICBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5hZGRFeHRlcm5hbENhdGFsb2dBcnRpY2xlKHJlcXVlc3QpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfcHJlcGFyZUNhdGFsb2dSZXF1ZXN0KCk6IHZvaWQge1xyXG4gICAgICB0aGlzLmNhdGFsb2dQYXJhbWV0ZXJzLmdlbmVyYWwgPSB0aGlzLnNlYXJjaFRleHQ7XHJcbiAgICAgIHRoaXMuY2F0YWxvZ1BhcmFtZXRlcnMuZG9TeW5jID0gJ0onO1xyXG4gICAgICB0aGlzLmNhdGFsb2dQYXJhbWV0ZXJzLnNob3dSZWd1bGFyQXJ0aWNsZXMgPSB0cnVlO1xyXG4gICAgICB0aGlzLmNhdGFsb2dQYXJhbWV0ZXJzLnNob3dDb25maWd1cmVkQXJ0aWNsZXMgPSBmYWxzZTtcclxuICAgICAgdGhpcy5jYXRhbG9nUGFyYW1ldGVycy5zaG93Q29uZmlndXJhYmxlQXJ0aWNsZXMgPSB0cnVlO1xyXG4gICAgICB0aGlzLmNhdGFsb2dQYXJhbWV0ZXJzLnNob3dDb21wb3NpdGlvbkFydGljbGVzPSBmYWxzZTtcclxuICAgICAgdGhpcy5jYXRhbG9nUGFyYW1ldGVycy5zaG93Q3VzdG9taXplZEFydGljbGVzPSBmYWxzZTtcclxuICAgICAgdGhpcy5jYXRhbG9nUGFyYW1ldGVycy5zaG93SW5hY3RpdmVBcnRpY2xlcyA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmNhdGFsb2dQYXJhbWV0ZXJzLnB1YmxpY2F0aW9uQ29kZSA9IDcxOyAvLyB0b2RvOiBmaXggdGhpcz9cclxuICAgICAgdGhpcy5jYXRhbG9nUGFyYW1ldGVycy5pc1JldHVybiA9IHRoaXMucmV0dXJuO1xyXG4gIH1cclxufVxyXG4iXX0=
235
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLXByb2R1Y3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvYWRkLXByb2R1Y3QvYWRkLXByb2R1Y3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osV0FBVyxFQUNYLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sc0RBQXNELENBQUM7QUFDckYsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQzFDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ2xFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBR3JFLE9BQU8sRUFDTCxnQ0FBZ0MsRUFDakMsTUFBTSwyRUFBMkUsQ0FBQztBQUNuRixPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxpRUFBaUUsQ0FBQztBQThDckcsTUFBTSxPQUFPLG1CQUFtQjtJQWtDOUIsWUFDUyxXQUE2QixFQUM3QixrQkFBc0MsRUFDckMsZUFBa0M7UUFGbkMsZ0JBQVcsR0FBWCxXQUFXLENBQWtCO1FBQzdCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDckMsb0JBQWUsR0FBZixlQUFlLENBQW1CO1FBcEM1QixVQUFLLEdBQWdCLElBQUksQ0FBQztRQUduQywrQkFBMEIsR0FBWSxJQUFJLENBQUM7UUFHM0MsZUFBVSxHQUFzQyxJQUFJLFlBQVksRUFBdUIsQ0FBQztRQVV4RixXQUFNLEdBQVksS0FBSyxDQUFDO1FBRXhCLG1CQUFjLEdBQVE7WUFDM0IsYUFBYSxFQUFFLElBQUk7WUFDbkIsYUFB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LElBQUksQ0FBQyxNQUFNLENBQUM7SUFDbEQsQ0FBQzs7O1lBck9GLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO2dCQUMxQixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQThCVDtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBcERPLGdCQUFnQjtZQUNoQixrQkFBa0I7WUFaeEIsaUJBQWlCOzs7eUNBbUVoQixLQUFLO3lCQUdMLE1BQU07OEJBR04sU0FBUyxTQUFDLGFBQWE7d0JBRXZCLFdBQVcsU0FBQyxzQkFBc0I7cUJBS2xDLFdBQVcsU0FBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEhvc3RCaW5kaW5nLFxyXG4gIElucHV0LFxyXG4gIE91dHB1dCxcclxuICBWaWV3Q2hpbGQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb25cclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtBcnRpY2xlRXh0ZW5kZWR9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZXh0ZW5kZWQuYm8nO1xyXG5pbXBvcnQge0ljb259IGZyb20gJy4uLy4uL2VudW0vaWNvbi5lbnVtJztcclxuaW1wb3J0IHtJY29uQ2FjaGVTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL2ljb24tY2FjaGUuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQge0FydGljbGVMaWdodH0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1saWdodC5ibyc7XHJcbmltcG9ydCB7U2FmZUh0bWx9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xyXG5pbXBvcnQge1xyXG4gIEV4dGVybmFsQ2F0YWxvZ0FkZEFydGljbGVSZXF1ZXN0XHJcbn0gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL2V4dGVybmFsLWNhdGFsb2ctYWRkLWFydGljbGUtcmVxdWVzdCc7XHJcbmltcG9ydCB7RXh0ZXJuYWxDYXRhbG9nVHlwZXN9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9lbnVtL2V4dGVybmFsLWNhdGFsb2ctdHlwZXMuZW51bSc7XHJcbmltcG9ydCB7SW5wdXRTY2FubmVyQ29tcG9uZW50fSBmcm9tIFwiQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMlwiO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBZGRBcnRpY2xlSW50ZXJmYWNlIHtcclxuICBhcnRpY2xlOiBBcnRpY2xlRXh0ZW5kZWQ7XHJcbiAgcXVhbnRpdHk6IG51bWJlcjtcclxuICBhYm92ZUxpbmVOcjogbnVtYmVyO1xyXG4gIGJlbG93TGluZU5yOiBudW1iZXI7XHJcbiAgbGFzdEFydGljbGU6IGJvb2xlYW47XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY28tYWRkLXByb2R1Y3QnLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8Y28taW5wdXQtc2Nhbm5lclxyXG4gICAgICAjaW5wdXRTZWFyY2hcclxuICAgICAgW2N1c3RvbUNzc0NsYXNzXT1cIiduby1mb2N1cy1saW5lJ1wiXHJcbiAgICAgIFsobW9kZWwpXT1cInNlYXJjaFRleHRcIlxyXG4gICAgICBbcGxhY2Vob2xkZXJdPVwiJ1NFQVJDSF9BRERfQVJUSUNMRScgfCBsb2NhbGl6ZVwiXHJcbiAgICAgIFtjZW50ZXJMYWJlbF09XCJ0cnVlXCJcclxuICAgICAgW3VzZUxlZnRJY29uXT1cInRydWVcIlxyXG4gICAgICBbbGVmdEljb25EYXRhXT1cInJldHVybiA/IGNhcnRNaW5JY29uIDogY2FydFBsdXNJY29uXCJcclxuICAgICAgW3VzZVJpZ2h0SWNvbl09XCJ0cnVlXCJcclxuICAgICAgKGxlZnRJY29uQ2xpY2spPVwiaGFuZGxlQ2FydEljb25DbGljaygkZXZlbnQpXCJcclxuICAgICAgKHJpZ2h0SWNvbkNsaWNrKT1cImhhbmRsZVNlYXJjaEljb25DbGljaygpXCJcclxuICAgICAgKGJhckNvZGVTY2FubmVkKT1cImhhbmRsZVNlYXJjaCgkZXZlbnQpXCJcclxuICAgICAgKHNlYXJjaCk9XCJoYW5kbGVTZWFyY2goJGV2ZW50KVwiXHJcbiAgICAgIChpc0ZvY3VzZWQpPVwiaGFuZGxlSW5wdXRGb2N1cygkZXZlbnQpXCJcclxuICAgID48L2NvLWlucHV0LXNjYW5uZXI+XHJcbiAgICA8Y28tZGlhbG9nLWNhdGFsb2cgKm5nSWY9XCJzaG93Q2F0YWxvZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW29wdGlvbnNdPVwiY2F0YWxvZ09wdGlvbnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtwYXJhbWV0ZXJzXT1cImNhdGFsb2dQYXJhbWV0ZXJzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbaGFuZGxlQWRkQXJ0aWNsZUludGVybmFsbHldPVwiaGFuZGxlQWRkQXJ0aWNsZUludGVybmFsbHlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtzaG93TmF2aWdhdGlvbl09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbaXNSZXR1cm5dPVwidGhpcy5yZXR1cm5cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFt0cmFuc2FjdGlvbl09XCJ0cmFuc2FjdGlvblNlcnZpY2UuY3VycmVudFRyYW5zYWN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAoY2xvc2VDbGljayk9XCJzaG93Q2F0YWxvZyA9IGZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAoYXJ0aWNsZUNsaWNrZWQpPVwiaGFuZGxlQ2F0YWxvZ0FydGljbGVDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAoYWRkQXJ0aWNsZUNsaWNrZWQpPVwiaGFuZGxlQWRkQXJ0aWNsZUNsaWNrKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIChhZGRDYXRGYXJtQXJ0aWNsZUNsaWNrZWQpPVwiaGFuZGxlQWRkQ2F0RmFybUFydGljbGVDbGljaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAoaUZyYW1lRmVlZGJhY2spPVwiaGFuZGxlSUZyYW1lRmVlZGJhY2soJGV2ZW50KVwiXHJcbiAgICA+XHJcbiAgICA8L2NvLWRpYWxvZy1jYXRhbG9nPlxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWRkUHJvZHVjdENvbXBvbmVudCB7XHJcbiAgcHVibGljIHJlYWRvbmx5IGljb25zOiB0eXBlb2YgSWNvbiA9IEljb247XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGhhbmRsZUFkZEFydGljbGVJbnRlcm5hbGx5OiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIGFkZEFydGljbGU6IEV2ZW50RW1pdHRlcjxBZGRBcnRpY2xlSW50ZXJmYWNlPiA9IG5ldyBFdmVudEVtaXR0ZXI8QWRkQXJ0aWNsZUludGVyZmFjZT4oKTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnaW5wdXRTZWFyY2gnKSBwdWJsaWMgaW5wdXRTZWFyY2hUZXh0OiBJbnB1dFNjYW5uZXJDb21wb25lbnQ7XHJcblxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuY28tYWRkLXByb2R1Y3QnKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MucmV0dXJuJylcclxuICBwdWJsaWMgcmV0dXJuOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHB1YmxpYyBjYXRhbG9nT3B0aW9uczogYW55ID0ge1xyXG4gICAgc2VhcmNoT25TdGFydDogdHJ1ZSxcclxuICAgIHNob3dBZGRUb0NhcnQ6IGZhbHNlLFxyXG4gICAgc2hvd0xvb2tBdEFydGljbGVCdXR0b246IGZhbHNlLFxyXG4gICAgc2hvd0FkZEFydGljbGVCdXR0b246IHRydWUsXHJcbiAgICBvbmx5VGhyZWVEOiBmYWxzZVxyXG4gIH07XHJcbiAgcHVibGljIGNhdGFsb2dQYXJhbWV0ZXJzOiBhbnkgPSB7fTtcclxuICBwdWJsaWMgc2hvd0NhdGFsb2c6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgaXNTZWFyY2hJbnB1dEZvY3VzZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc2VhcmNoVGV4dDogc3RyaW5nO1xyXG5cclxuICBwdWJsaWMgY2FydFBsdXNJY29uOiBTYWZlSHRtbCA9IHRoaXMuaWNvblNlcnZpY2UuZ2V0SWNvbih0aGlzLmljb25zLkNhcnRQbHVzUmVndWxhcik7XHJcbiAgcHVibGljIGNhcnRNaW5JY29uOiBTYWZlSHRtbCA9IHRoaXMuaWNvblNlcnZpY2UuZ2V0SWNvbih0aGlzLmljb25zLkNhcnRNaW51c1JlZ3VsYXIpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBpY29uU2VydmljZTogSWNvbkNhY2hlU2VydmljZSxcclxuICAgIHB1YmxpYyB0cmFuc2FjdGlvblNlcnZpY2U6IFRyYW5zYWN0aW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgX2NoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZlxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGhhbmRsZVNlYXJjaCh0ZXh0OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmICghdGhpcy5pc1NlYXJjaElucHV0Rm9jdXNlZCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zZWFyY2hUZXh0ID0gdGV4dDtcclxuICAgIHRoaXMuX2NoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcclxuICAgIHRoaXMuX3ByZXBhcmVDYXRhbG9nUmVxdWVzdCgpO1xyXG4gICAgdGhpcy5zZWFyY2hUZXh0ID0gdW5kZWZpbmVkO1xyXG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgLy8gZmlyc3QgY2hlY2sgaWYgdGhlcmUncyBhIHNpbmdsZSBhcnRpY2xlIGZvdW5kXHJcbiAgICAvLyBUaGlzIGlzIGEgdHdvIGNoZWNrIHN0ZXA6XHJcbiAgICAvLyBDaGVjayBpZiB0aGVyZSBpcyBhbiBleGFjdCBtYXRjaCBvbiBiYXJjb2RlLCBlYW4gb3IgYXJ0aWNsZW51bWJlclxyXG4gICAgLy8gaWYgbm90OiBjaGVjayB3aXRoIHNlYXJjaCBsaWtlXHJcbiAgICAvLyBlbHNlIG9wZW4gY2F0YWxvZ3VzXHJcblxyXG4gICAgY29uc3QgZnVsbE1hdGNoU2VhcmNoOiBhbnlbXSA9IGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldEFydGljbGVMaXN0V2l0aEJhcmNvZGVBcnRpY2xlTnJFYW5Db2RlKHRleHQpO1xyXG4gICAgaWYgKGZ1bGxNYXRjaFNlYXJjaCAmJiBmdWxsTWF0Y2hTZWFyY2gubGVuZ3RoID09PSAxKSB7XHJcbiAgICAgIGNvbnN0IGFydGljbGU6IEFydGljbGVFeHRlbmRlZCA9IGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldEFydGljbGVFeHRlbmRlZChmdWxsTWF0Y2hTZWFyY2hbMF0uYXJ0aWNsZU5yKTtcclxuICAgICAgYXdhaXQgdGhpcy5oYW5kbGVBZGRBcnRpY2xlKGFydGljbGUpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgZm91bmRBcnRpY2xlczogQXJ0aWNsZUxpZ2h0W10gPSBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRBcnRpY2xlcyh0aGlzLmNhdGFsb2dQYXJhbWV0ZXJzKTtcclxuICAgICAgaWYgKGZvdW5kQXJ0aWNsZXMgJiYgZm91bmRBcnRpY2xlcy5sZW5ndGggPT09IDEpIHtcclxuICAgICAgICBjb25zdCBhcnRpY2xlOiBBcnRpY2xlRXh0ZW5kZWQgPSBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRBcnRpY2xlRXh0ZW5kZWQoZm91bmRBcnRpY2xlc1swXS5hcnRpY2xlTnVtYmVyKTtcclxuICAgICAgICBhd2FpdCB0aGlzLmhhbmRsZUFkZEFydGljbGUoYXJ0aWNsZSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5zaG93Q2F0YWxvZ0RpYWxvZygpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlSW5wdXRGb2N1cyhpc0ZvY3VzZWQ6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuaXNTZWFyY2hJbnB1dEZvY3VzZWQgPSBpc0ZvY3VzZWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgaGFuZGxlQWRkQXJ0aWNsZShhcnRpY2xlOiBBcnRpY2xlRXh0ZW5kZWQpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgIGlmICh0aGlzLmhhbmRsZUFkZEFydGljbGVJbnRlcm5hbGx5KSB7XHJcbiAgICAgIHJldHVybiBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5hZGRBcnRpY2xlKGFydGljbGUuYXJ0aWNsZU51bWJlciwgdGhpcy5yZXR1cm4gPyAtMSA6IDEpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5hZGRBcnRpY2xlLm5leHQoe1xyXG4gICAgICAgIGFydGljbGU6IGFydGljbGUsXHJcbiAgICAgICAgcXVhbnRpdHk6IHRoaXMucmV0dXJuID8gLTEgOiAxLFxyXG4gICAgICAgIGFib3ZlTGluZU5yOiAwLFxyXG4gICAgICAgIGJlbG93TGluZU5yOiAwLFxyXG4gICAgICAgIGxhc3RBcnRpY2xlOiB0cnVlXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGhhbmRsZUFkZEFydGljbGVDbGljayhkYXRhOiB7IGFydGljbGU6IHN0cmluZyB8IEFydGljbGVFeHRlbmRlZCwgcXVhbnRpdHk6IG51bWJlciB9KTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLnNob3dDYXRhbG9nID0gZmFsc2U7XHJcbiAgICBpZiAoZGF0YSAmJiBkYXRhLmFydGljbGUgaW5zdGFuY2VvZiBBcnRpY2xlRXh0ZW5kZWQpIHtcclxuICAgICAgdGhpcy5hZGRBcnRpY2xlLm5leHQoe1xyXG4gICAgICAgIGFydGljbGU6IGRhdGEuYXJ0aWNsZSxcclxuICAgICAgICBxdWFudGl0eTogdGhpcy5nZXRBY3R1YWxRdWFudGl0eShkYXRhLnF1YW50aXR5KSxcclxuICAgICAgICBhYm92ZUxpbmVOcjogMCxcclxuICAgICAgICBiZWxvd0xpbmVOcjogMCxcclxuICAgICAgICBsYXN0QXJ0aWNsZTogdHJ1ZVxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmIChkYXRhLmFydGljbGUpIHtcclxuICAgICAgICBjb25zdCBhcnRpY2xlVHJlZURhdGEgPSBKU09OLnBhcnNlKGRhdGEuYXJ0aWNsZSBhcyBzdHJpbmcpO1xyXG4gICAgICAgIGlmIChhcnRpY2xlVHJlZURhdGEuYXJ0aWNsZVRyZWUgJiYgYXJ0aWNsZVRyZWVEYXRhLmFydGljbGVUcmVlLmFydGljbGUpIHtcclxuICAgICAgICAgIGlmIChhcnRpY2xlVHJlZURhdGEuYXJ0aWNsZVRyZWUuY29tcG9zaXRlR29vZHMgJiYgQXJyYXkuaXNBcnJheShhcnRpY2xlVHJlZURhdGEuYXJ0aWNsZVRyZWUuY29tcG9zaXRlR29vZHMpICYmXHJcbiAgICAgICAgICAgIGFydGljbGVUcmVlRGF0YS5hcnRpY2xlVHJlZS5jb21wb3NpdGVHb29kcy5sZW5ndGggPiAwICYmIGFydGljbGVUcmVlRGF0YS5hcnRpY2xlVHJlZS5zdWJBcnRpY2xlcyAmJiBBcnJheS5pc0FycmF5KGFydGljbGVUcmVlRGF0YS5hcnRpY2xlVHJlZS5zdWJBcnRpY2xlcykpIHtcclxuICAgICAgICAgICAgY29uc3QgY29tcG9zaXRlR29vZHMgPSBhcnRpY2xlVHJlZURhdGEuYXJ0aWNsZVRyZWUuY29tcG9zaXRlR29vZHM7XHJcbiAgICAgICAgICAgIGNvbXBvc2l0ZUdvb2RzLnNvcnQoKGEsIGIpID0+IGEudmVyc2lvbk51bWJlciA8IGIudmVyc2lvbk51bWJlciA/IC0xIDogMSk7XHJcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY29tcG9zaXRlR29vZHMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgICAgICBjb25zdCBsYXN0QXJ0aWNsZTogYm9vbGVhbiA9IGkgPT09IGNvbXBvc2l0ZUdvb2RzLmxlbmd0aCAtIDE7XHJcbiAgICAgICAgICAgICAgY29uc3QgZ29vZCA9IGNvbXBvc2l0ZUdvb2RzW2ldO1xyXG4gICAgICAgICAgICAgIGNvbnN0IHN1YkFydGljbGUgPSBhcnRpY2xlVHJlZURhdGEuYXJ0aWNsZVRyZWUuc3ViQXJ0aWNsZXMuZmluZChzID0+IHMuZ29vZElkID09PSBnb29kLm1lbWJlckdvb2RJZCk7XHJcbiAgICAgICAgICAgICAgaWYgKHN1YkFydGljbGUpIHtcclxuICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmFkZEFydGljbGUoc3ViQXJ0aWNsZS5hcnRpY2xlTnVtYmVyLCB0aGlzLmdldEFjdHVhbFF1YW50aXR5KGdvb2QucXVhbnRpdHkpLCAwLCAwLCBsYXN0QXJ0aWNsZSk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5hZGRBcnRpY2xlKGFydGljbGVUcmVlRGF0YS5hcnRpY2xlVHJlZS5hcnRpY2xlLmFydGljbGVOdW1iZXIsIHRoaXMuZ2V0QWN0dWFsUXVhbnRpdHkoYXJ0aWNsZVRyZWVEYXRhLnF1YW50aXR5KSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0QWN0dWFsUXVhbnRpdHkocXVhbnRpdHlJbnB1dCk6IG51bWJlciB7XHJcbiAgICBsZXQgcXVhbnRpdHk6IG51bWJlciA9IDA7XHJcbiAgICBpZiAodGhpcy5yZXR1cm4gJiYgcXVhbnRpdHlJbnB1dCA+IDApIHtcclxuICAgICAgcXVhbnRpdHkgPSAtMTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHF1YW50aXR5ID0gcXVhbnRpdHlJbnB1dDtcclxuICAgIH1cclxuICAgIHJldHVybiBxdWFudGl0eTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBoYW5kbGVDYXRhbG9nQXJ0aWNsZUNsaWNrKGFydGljbGU6IEFydGljbGVFeHRlbmRlZCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgYXdhaXQgdGhpcy5oYW5kbGVBZGRBcnRpY2xlKGFydGljbGUpO1xyXG4gICAgdGhpcy5zaG93Q2F0YWxvZyA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNob3dDYXRhbG9nRGlhbG9nKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zaG93Q2F0YWxvZyA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlQ2FydEljb25DbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZXR1cm4gPSAhdGhpcy5yZXR1cm47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU2VhcmNoSWNvbkNsaWNrKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuaW5wdXRTZWFyY2hUZXh0Lm1vZGVsKSB7XHJcbiAgICAgIHRoaXMuc2VhcmNoVGV4dCA9IHRoaXMuaW5wdXRTZWFyY2hUZXh0Lm1vZGVsO1xyXG4gICAgfVxyXG4gICAgdGhpcy5fcHJlcGFyZUNhdGFsb2dSZXF1ZXN0KCk7XHJcbiAgICB0aGlzLnNlYXJjaFRleHQgPSB1bmRlZmluZWQ7XHJcbiAgICB0aGlzLl9jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB0aGlzLnNob3dDYXRhbG9nRGlhbG9nKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgaGFuZGxlSUZyYW1lRmVlZGJhY2soaUZyYW1lRmVlZGJhY2tPYmplY3Q6IHtcclxuICAgIGpzb25TdHJpbmc6IHN0cmluZyxcclxuICAgIGNhdGFsb2c6IG51bWJlcixcclxuICAgIHNvdXJjZVR5cGU6IHN0cmluZ1xyXG4gIH0pOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMuc2hvd0NhdGFsb2cgPSBmYWxzZTtcclxuICAgIGxldCByZXF1ZXN0OiBFeHRlcm5hbENhdGFsb2dBZGRBcnRpY2xlUmVxdWVzdCA9IG5ldyBFeHRlcm5hbENhdGFsb2dBZGRBcnRpY2xlUmVxdWVzdCgpO1xyXG4gICAgcmVxdWVzdC5jYXRhbG9nSWQgPSBpRnJhbWVGZWVkYmFja09iamVjdC5jYXRhbG9nO1xyXG4gICAgcmVxdWVzdC5jYXRhbG9nVHlwZSA9IGlGcmFtZUZlZWRiYWNrT2JqZWN0LnNvdXJjZVR5cGU7XHJcbiAgICByZXF1ZXN0LmFydGljbGVKc29uID0gaUZyYW1lRmVlZGJhY2tPYmplY3QuanNvblN0cmluZztcclxuICAgIGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmFkZEV4dGVybmFsQ2F0YWxvZ0FydGljbGUocmVxdWVzdCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgaGFuZGxlQWRkQ2F0RmFybUFydGljbGVDbGljayhkYXRhOiB7XHJcbiAgICBxdWFudGl0eTogbnVtYmVyLFxyXG4gICAganNvblN0cmluZzogc3RyaW5nLFxyXG4gICAgY2F0YWxvZzogbnVtYmVyXHJcbiAgfSk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy5zaG93Q2F0YWxvZyA9IGZhbHNlO1xyXG4gICAgbGV0IHJlcXVlc3Q6IEV4dGVybmFsQ2F0YWxvZ0FkZEFydGljbGVSZXF1ZXN0ID0gbmV3IEV4dGVybmFsQ2F0YWxvZ0FkZEFydGljbGVSZXF1ZXN0KCk7XHJcbiAgICByZXF1ZXN0LmNhdGFsb2dJZCA9IGRhdGEuY2F0YWxvZztcclxuICAgIHJlcXVlc3QuY2F0YWxvZ1R5cGUgPSBFeHRlcm5hbENhdGFsb2dUeXBlcy5DYXRhbG9nRmFybTtcclxuICAgIHJlcXVlc3QuYXJ0aWNsZUpzb24gPSBkYXRhLmpzb25TdHJpbmc7XHJcbiAgICBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5hZGRFeHRlcm5hbENhdGFsb2dBcnRpY2xlKHJlcXVlc3QpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfcHJlcGFyZUNhdGFsb2dSZXF1ZXN0KCk6IHZvaWQge1xyXG4gICAgICB0aGlzLmNhdGFsb2dQYXJhbWV0ZXJzLmdlbmVyYWwgPSB0aGlzLnNlYXJjaFRleHQ7XHJcbiAgICAgIHRoaXMuY2F0YWxvZ1BhcmFtZXRlcnMuZG9TeW5jID0gJ0onO1xyXG4gICAgICB0aGlzLmNhdGFsb2dQYXJhbWV0ZXJzLnNob3dSZWd1bGFyQXJ0aWNsZXMgPSB0cnVlO1xyXG4gICAgICB0aGlzLmNhdGFsb2dQYXJhbWV0ZXJzLnNob3dDb25maWd1cmVkQXJ0aWNsZXMgPSBmYWxzZTtcclxuICAgICAgdGhpcy5jYXRhbG9nUGFyYW1ldGVycy5zaG93Q29uZmlndXJhYmxlQXJ0aWNsZXMgPSB0cnVlO1xyXG4gICAgICB0aGlzLmNhdGFsb2dQYXJhbWV0ZXJzLnNob3dDb21wb3NpdGlvbkFydGljbGVzPSBmYWxzZTtcclxuICAgICAgdGhpcy5jYXRhbG9nUGFyYW1ldGVycy5zaG93Q3VzdG9taXplZEFydGljbGVzPSBmYWxzZTtcclxuICAgICAgdGhpcy5jYXRhbG9nUGFyYW1ldGVycy5zaG93SW5hY3RpdmVBcnRpY2xlcyA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmNhdGFsb2dQYXJhbWV0ZXJzLnB1YmxpY2F0aW9uQ29kZSA9IDcxOyAvLyB0b2RvOiBmaXggdGhpcz9cclxuICAgICAgdGhpcy5jYXRhbG9nUGFyYW1ldGVycy5pc1JldHVybiA9IHRoaXMucmV0dXJuO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -238,4 +238,4 @@ TransactionPaymentBaseComponent.propDecorators = {
238
238
  doNotFetchAmountToPayForRemaining: [{ type: Input }],
239
239
  payed: [{ type: Output }]
240
240
  };
241
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tcGF5bWVudC1iYXNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L2NvcmUvYmFzZS90cmFuc2FjdGlvbi1wYXltZW50LWJhc2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBVyxNQUFNLGVBQWUsQ0FBQztBQUlySCxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFFN0MsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFDeEUsT0FBTyxFQUFDLGtDQUFrQyxFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFDMUcsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDbkYsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDckUsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sOENBQThDLENBQUM7QUFLdkYsTUFBTSxPQUFnQiwrQkFBK0I7SUFtTG5ELFlBQ1ksa0JBQXNDLEVBQ3RDLHVCQUEyRCxFQUMzRCx1QkFBZ0QsRUFDaEQsY0FBaUMsRUFDcEMsY0FBeUMsRUFDekMsZ0JBQWtDO1FBTC9CLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUFvQztRQUMzRCw0QkFBdUIsR0FBdkIsdUJBQXVCLENBQXlCO1FBQ2hELG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQUNwQyxtQkFBYyxHQUFkLGNBQWMsQ0FBMkI7UUFDekMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQXhMM0IsVUFBSyxHQUFnQixJQUFJLENBQUM7UUFpSG5DLGVB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SUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUU7b0JBQzdCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztpQkFDL0c7Z0JBQ0QsT0FBTyxFQUFFLENBQUM7WUFDWixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7O1lBblJGLFNBQVM7OztZQVJGLGtCQUFrQjtZQUNsQixrQ0FBa0M7WUFDbEMsdUJBQXVCO1lBUnZCLGlCQUFpQjtZQVVqQix5QkFBeUI7WUFEekIsZ0JBQWdCOzs7c0JBU3JCLEtBQUs7OEJBVUwsS0FBSztxQkFVTCxLQUFLO3FCQVVMLEtBQUs7eUJBVUwsS0FBSzs2QkFVTCxLQUFLO2tDQVVMLEtBQUs7bUNBVUwsS0FBSzswQkFVTCxLQUFLOzBCQVVMLEtBQUs7NEJBVUwsS0FBSzt5QkFVTCxLQUFLOytCQUdMLEtBQUs7bUNBWUwsS0FBSztnREFVTCxLQUFLO29CQVVMLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdG9yUmVmLCBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFNraXBTZWxmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtDYXNoUmVnaXN0ZXJ9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9jYXNoLXJlZ2lzdGVyJztcclxuaW1wb3J0IHtQYXltZW50TWV0aG9kfSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvcGF5bWVudC1tZXRob2QuYm8nO1xyXG5pbXBvcnQge1N1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7SWNvbn0gZnJvbSAnLi4vLi4vLi4vZW51bS9pY29uLmVudW0nO1xyXG5pbXBvcnQge1BheW1lbnRWaWV3bW9kZWx9IGZyb20gJy4uLy4uLy4uL21vZGVsL3BheW1lbnQudmlld21vZGVsJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25QYXltZW50Q29ubmVjdG9yU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1wYXltZW50LWNvbm5lY3Rvci5zZXJ2aWNlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkV2ZW50U2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1ldmVudC5zZXJ2aWNlJztcclxuaW1wb3J0IHtJY29uQ2FjaGVTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL2ljb24tY2FjaGUuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25QYXltZW50U2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1wYXltZW50LnNlcnZpY2UnO1xyXG5pbXBvcnQge1JlcG9ydExheW91dFNlbGVjdGlvblByaW50fSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9yZXBvcnQtbGF5b3V0LXNlbGVjdGlvbi1wcmludC5ibyc7XHJcbmltcG9ydCB7UmVwb3J0TGF5b3V0U2VsZWN0aW9uRW1haWx9IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL3JlcG9ydC1sYXlvdXQtc2VsZWN0aW9uLWVtYWlsLmJvJztcclxuXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVHJhbnNhY3Rpb25QYXltZW50QmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBwdWJsaWMgcmVhZG9ubHkgaWNvbnM6IHR5cGVvZiBJY29uID0gSWNvbjtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IHRyYW5zSWQodmFsdWU6IG51bWJlcikge1xyXG4gICAgdGhpcy5fdHJhbnNJZCA9IHZhbHVlO1xyXG4gICAgdGhpcy5wYXltZW50U2VydmljZS50cmFuc0lkID0gdGhpcy5fdHJhbnNJZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgdHJhbnNJZCgpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIHRoaXMuX3RyYW5zSWQ7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgdHJhbnNhY3Rpb25VdWlkKHZhbHVlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX3RyYW5zYWN0aW9uVXVpZCA9IHZhbHVlO1xyXG4gICAgdGhpcy5wYXltZW50U2VydmljZS50cmFuc2FjdGlvblV1aWQgPSB0aGlzLl90cmFuc2FjdGlvblV1aWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IHRyYW5zYWN0aW9uVXVpZCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuX3RyYW5zYWN0aW9uVXVpZDtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBicmFuY2godmFsdWU6IHN0cmluZykge1xyXG4gICAgdGhpcy5fYnJhbmNoID0gdmFsdWU7XHJcbiAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLmJyYW5jaCA9IHRoaXMuX2JyYW5jaDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgYnJhbmNoKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5fYnJhbmNoO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IGFtb3VudCh2YWx1ZTogbnVtYmVyKSB7XHJcbiAgICB0aGlzLl9hbW91bnQgPSB2YWx1ZTtcclxuICAgIHRoaXMucGF5bWVudFNlcnZpY2UuYW1vdW50ID0gdGhpcy5fYW1vdW50O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBhbW91bnQoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLl9hbW91bnQ7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgY3VycmVuY3lJZCh2YWx1ZTogbnVtYmVyKSB7XHJcbiAgICB0aGlzLl9jdXJyZW5jeUlkID0gdmFsdWU7XHJcbiAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLmN1cnJlbmN5SWQgPSB0aGlzLl9jdXJyZW5jeUlkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBjdXJyZW5jeUlkKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5fY3VycmVuY3lJZDtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBjYXNoUmVnaXN0ZXJOcih2YWx1ZTogbnVtYmVyKSB7XHJcbiAgICB0aGlzLl9jYXNoUmVnaXN0ZXJOciA9IHZhbHVlO1xyXG4gICAgdGhpcy5wYXltZW50U2VydmljZS5jYXNoUmVnaXN0ZXJOciA9IHRoaXMuX2Nhc2hSZWdpc3Rlck5yO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBjYXNoUmVnaXN0ZXJOcigpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIHRoaXMuX2Nhc2hSZWdpc3Rlck5yO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IGNhc2hSZWdpc3Rlckdyb3VwSWQodmFsdWU6IG51bWJlcikge1xyXG4gICAgdGhpcy5fY2FzaFJlZ2lzdGVyR3JvdXBJZCA9IHZhbHVlO1xyXG4gICAgdGhpcy5wYXltZW50U2VydmljZS5jYXNoUmVnaXN0ZXJHcm91cElkID0gdGhpcy5fY2FzaFJlZ2lzdGVyR3JvdXBJZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgY2FzaFJlZ2lzdGVyR3JvdXBJZCgpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIHRoaXMuX2Nhc2hSZWdpc3Rlckdyb3VwSWQ7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgY2FzaFJlZ2lzdGVyRHJhd2VySWQodmFsdWU6IG51bWJlcikge1xyXG4gICAgdGhpcy5fY2FzaFJlZ2lzdGVyRHJhd2VySWQgPSB2YWx1ZTtcclxuICAgIHRoaXMucGF5bWVudFNlcnZpY2UuY2FzaFJlZ2lzdGVyRHJhd2VySWQgPSB0aGlzLl9jYXNoUmVnaXN0ZXJEcmF3ZXJJZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgY2FzaFJlZ2lzdGVyRHJhd2VySWQoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLl9jYXNoUmVnaXN0ZXJEcmF3ZXJJZDtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBwcmludGVyTmFtZSh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICB0aGlzLl9wcmludGVyTmFtZSA9IHZhbHVlO1xyXG4gICAgdGhpcy5wYXltZW50U2VydmljZS5wcmludGVyTmFtZSA9IHRoaXMuX3ByaW50ZXJOYW1lO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBwcmludGVyTmFtZSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuX3ByaW50ZXJOYW1lO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IGVtYWlsTGF5b3V0KHZhbHVlOiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25FbWFpbCkge1xyXG4gICAgdGhpcy5fZW1haWxMYXlvdXQgPSB2YWx1ZTtcclxuICAgIHRoaXMucGF5bWVudFNlcnZpY2UuZW1haWxMYXlvdXQgPSB0aGlzLl9lbWFpbExheW91dDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZW1haWxMYXlvdXQoKTogUmVwb3J0TGF5b3V0U2VsZWN0aW9uRW1haWwge1xyXG4gICAgcmV0dXJuIHRoaXMuX2VtYWlsTGF5b3V0O1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IHByaW50ZXJMYXlvdXQodmFsdWU6IFJlcG9ydExheW91dFNlbGVjdGlvblByaW50KSB7XHJcbiAgICB0aGlzLl9wcmludGVyTGF5b3V0ID0gdmFsdWU7XHJcbiAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLnByaW50ZXJMYXlvdXQgPSB0aGlzLl9wcmludGVyTGF5b3V0O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBwcmludGVyTGF5b3V0KCk6IFJlcG9ydExheW91dFNlbGVjdGlvblByaW50IHtcclxuICAgIHJldHVybiB0aGlzLl9wcmludGVyTGF5b3V0O1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2hvd0tleVBhZDogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCByZW1haW5pbmdQYXltZW50KHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLl9yZW1haW5pbmdQYXltZW50ID0gdmFsdWU7XHJcbiAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLmdldERlcG9zaXRBbW91bnQgPSAhdGhpcy5fcmVtYWluaW5nUGF5bWVudDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgcmVtYWluaW5nUGF5bWVudCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9yZW1haW5pbmdQYXltZW50O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfcmVtYWluaW5nUGF5bWVudDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgY3VycmVudFBheW1lbnRNZXRob2QodmFsdWU6IFBheW1lbnRNZXRob2QpIHtcclxuICAgIHRoaXMuX2N1cnJlbnRQYXltZW50TWV0aG9kID0gdmFsdWU7XHJcbiAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLmN1cnJlbnRQYXltZW50TWV0aG9kID0gdGhpcy5fY3VycmVudFBheW1lbnRNZXRob2Q7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGN1cnJlbnRQYXltZW50TWV0aG9kKCk6IFBheW1lbnRNZXRob2Qge1xyXG4gICAgcmV0dXJuIHRoaXMuX2N1cnJlbnRQYXltZW50TWV0aG9kO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IGRvTm90RmV0Y2hBbW91bnRUb1BheUZvclJlbWFpbmluZyh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5fZG9Ob3RGZXRjaEFtb3VudFRvUGF5Rm9yUmVtYWluaW5nID0gdmFsdWU7XHJcbiAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLmRvTm90RmV0Y2hBbW91bnRUb1BheUZvclJlbWFpbmluZyA9IHRoaXMuX2RvTm90RmV0Y2hBbW91bnRUb1BheUZvclJlbWFpbmluZztcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZG9Ob3RGZXRjaEFtb3VudFRvUGF5Rm9yUmVtYWluaW5nKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2RvTm90RmV0Y2hBbW91bnRUb1BheUZvclJlbWFpbmluZztcclxuICB9XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBwYXllZDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBwdWJsaWMgcGF5bWVudE1ldGhvZElkeDogbnVtYmVyID0gMDtcclxuICBwdWJsaWMgY2FzaFJlZ2lzdGVySWR4OiBudW1iZXIgPSAwO1xyXG4gIHB1YmxpYyBwYXltZW50TWV0aG9kczogUGF5bWVudFZpZXdtb2RlbFtdID0gW107XHJcbiAgcHVibGljIGNhc2hSZWdpc3RlcnM6IGFueVtdID0gW107XHJcbiAgcHVibGljIHNob3dDYXNoUmVnaXN0ZXJzOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHVzZUNhc2hSZWdpc3RlcnM6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIC8vIHB1YmxpYyBzaG93UHNwUXJDb2RlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgLy8gcHVibGljIHFyQ29kZUltYWdlOiBzdHJpbmc7XHJcbiAgcHVibGljIHNob3dMb2FkZXI6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIC8vIHB1YmxpYyBhbW91bnRUb1BheTogbnVtYmVyID0gMDtcclxuICAvLyBwdWJsaWMgc3RhdHVzTWVzc2FnZTogc3RyaW5nID0gXCJcIjtcclxuXHJcbiAgcHJvdGVjdGVkIHN1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gIHByaXZhdGUgX3RyYW5zSWQ6IG51bWJlcjtcclxuICBwcml2YXRlIF90cmFuc2FjdGlvblV1aWQ6IHN0cmluZztcclxuICBwcml2YXRlIF9icmFuY2g6IHN0cmluZztcclxuICBwcml2YXRlIF9hbW91bnQ6IG51bWJlciA9IDA7XHJcbiAgcHJpdmF0ZSBfY3VycmVuY3lJZDogbnVtYmVyO1xyXG4gIHByaXZhdGUgX2Nhc2hSZWdpc3Rlck5yOiBudW1iZXI7XHJcbiAgcHJpdmF0ZSBfY2FzaFJlZ2lzdGVyR3JvdXBJZDogbnVtYmVyO1xyXG4gIHByaXZhdGUgX2Nhc2hSZWdpc3RlckRyYXdlcklkOiBudW1iZXI7XHJcbiAgcHJpdmF0ZSBfY3VycmVudFBheW1lbnRNZXRob2Q6IFBheW1lbnRNZXRob2Q7XHJcbiAgcHJpdmF0ZSBfZG9Ob3RGZXRjaEFtb3VudFRvUGF5Rm9yUmVtYWluaW5nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHJpdmF0ZSBfcHJpbnRlck5hbWU6IHN0cmluZztcclxuICBwcml2YXRlIF9wcmludGVyTGF5b3V0OiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25QcmludDtcclxuICBwcml2YXRlIF9lbWFpbExheW91dDogUmVwb3J0TGF5b3V0U2VsZWN0aW9uRW1haWw7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJvdGVjdGVkIHRyYW5zYWN0aW9uU2VydmljZTogVHJhbnNhY3Rpb25TZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIHBheW1lbnRDb25uZWN0b3JTZXJ2aWNlOiBUcmFuc2FjdGlvblBheW1lbnRDb25uZWN0b3JTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIHRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlOiBUcmFuc2FjdGlvbkV2ZW50U2VydmljZSxcclxuICAgIHByb3RlY3RlZCBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwdWJsaWMgcGF5bWVudFNlcnZpY2U6IFRyYW5zYWN0aW9uUGF5bWVudFNlcnZpY2UsXHJcbiAgICBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZVxyXG4gICl7XHJcbiAgfVxyXG5cclxuICBhc3luYyBuZ09uSW5pdCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIC8vIGlmICh0aGlzLnVwZGF0ZURlcG9zaXRBbW91bnQpIHtcclxuICAgIC8vICAgYXdhaXQgdGhpcy5fdHJhbnNhY3Rpb25TZXJ2aWNlLnVwZGF0ZUhlYWRlclRyYW5zYWN0aW9uRGVwb3NpdEFtb3VudCh0aGlzLnRyYW5zYWN0aW9uVXVpZCwgdGhpcy5hbW91bnRUb1BheSwgdHJ1ZSk7XHJcbiAgICAvLyB9XHJcbiAgICB0aGlzLnN1YnMucHVzaChcclxuICAgICAgdGhpcy5wYXltZW50U2VydmljZS5wYXllZC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5wYXllZC5lbWl0KCkpXHJcbiAgICApXHJcbiAgICBhd2FpdCB0aGlzLl9nZXRQYXltZW50TWV0aG9kcygpO1xyXG4gICAgdGhpcy5zaG93TG9hZGVyID0gZmFsc2U7XHJcbiAgICBhd2FpdCB0aGlzLnBheW1lbnRTZXJ2aWNlLnByZXBhcmVQYXltZW50SW5mbygpO1xyXG4gICAgdGhpcy5fcHJlcGFyZUNhc2hSZWdpc3RlcnMoKTtcclxuICAgIHRoaXMucGF5bWVudEluZm9SZWFkeSgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnN1YnMuZm9yRWFjaChzID0+IHMudW5zdWJzY3JpYmUoKSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcGF5bWVudE1ldGhvZFNlbGVjdGVkKG1ldGhvZDogUGF5bWVudE1ldGhvZCwgaW5kZXg6IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5wYXltZW50TWV0aG9kSWR4ID0gaW5kZXg7XHJcbiAgICB0aGlzLl9wcmVwYXJlQ2FzaFJlZ2lzdGVycygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNhc2hSZWdpc3RlclNlbGVjdGVkKGNhc2hSZWdpc3RlcjogQ2FzaFJlZ2lzdGVyLCBpbmRleDogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB0aGlzLmNhc2hSZWdpc3RlcklkeCA9IGluZGV4O1xyXG4gICAgdGhpcy5jYXNoUmVnaXN0ZXJOciA9IGNhc2hSZWdpc3Rlci5ucjtcclxuICAgIHRoaXMuY2FzaFJlZ2lzdGVyR3JvdXBJZCA9IGNhc2hSZWdpc3Rlci5ncm91cDtcclxuICAgIHRoaXMuY2FzaFJlZ2lzdGVyRHJhd2VySWQgPSArY2FzaFJlZ2lzdGVyLmRlZmF1bHREcmF3ZXJOdW1iZXI7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlUGF5bWVudCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHJldHVybiB0aGlzLnBheW1lbnRTZXJ2aWNlLmhhbmRsZVBheW1lbnQoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVLZXlQYWRNb2RlbENoYW5nZShtb2RlbDogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLmFtb3VudFRvUGF5ID0gbW9kZWw7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgcGF5bWVudEluZm9SZWFkeSgpOiB2b2lkIHtcclxuXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKlxyXG4gICAqIEBwcml2YXRlXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBfcHJlcGFyZUNhc2hSZWdpc3RlcnMoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMudXNlQ2FzaFJlZ2lzdGVycykge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLmN1cnJlbnRQYXltZW50TWV0aG9kID0gdGhpcy5wYXltZW50TWV0aG9kc1t0aGlzLnBheW1lbnRNZXRob2RJZHhdLnBheW1lbnQ7XHJcbiAgICBpZiAodGhpcy5jdXJyZW50UGF5bWVudE1ldGhvZCAmJiAoIXRoaXMuY3VycmVudFBheW1lbnRNZXRob2QuZXh0ZXJuYWxTb3VyY2VJZCB8fCB0aGlzLmN1cnJlbnRQYXltZW50TWV0aG9kLnBpblRlcm1pbmFsKSkge1xyXG4gICAgICB0aGlzLmNhc2hSZWdpc3RlcnMubGVuZ3RoID0gMDtcclxuICAgICAgdGhpcy5jdXJyZW50UGF5bWVudE1ldGhvZC5wb3NHcm91cHMuZm9yRWFjaChjcmcgPT4ge1xyXG4gICAgICAgIHRoaXMuX2dldENhc2hSZWdpc3RlcnModGhpcy5icmFuY2gsIGNyZy5pZCk7XHJcbiAgICAgIH0pO1xyXG4gICAgICB0aGlzLnNob3dDYXNoUmVnaXN0ZXJzID0gdHJ1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc2hvd0Nhc2hSZWdpc3RlcnMgPSBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2dldENhc2hSZWdpc3RlcnMoYnJhbmNoPzogc3RyaW5nLCBncm91cD86IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0Q2FzaFJlZ2lzdGVycyhicmFuY2gsIGdyb3VwKS50aGVuKChjYXNoUmVnaXN0ZXJzOiBDYXNoUmVnaXN0ZXJbXSkgPT4ge1xyXG4gICAgICB0aGlzLmNhc2hSZWdpc3RlcnMucHVzaCguLi5jYXNoUmVnaXN0ZXJzKTtcclxuICAgICAgY29uc3QgY3VycmVudENhc2hSZWdpc3RlcjogQ2FzaFJlZ2lzdGVyID0gdGhpcy5jYXNoUmVnaXN0ZXJzW3RoaXMuY2FzaFJlZ2lzdGVySWR4XTtcclxuICAgICAgaWYgKGN1cnJlbnRDYXNoUmVnaXN0ZXIpIHtcclxuICAgICAgICB0aGlzLmNhc2hSZWdpc3Rlck5yID0gY3VycmVudENhc2hSZWdpc3Rlci5ucjtcclxuICAgICAgICB0aGlzLmNhc2hSZWdpc3Rlckdyb3VwSWQgPSBjdXJyZW50Q2FzaFJlZ2lzdGVyLmdyb3VwO1xyXG4gICAgICAgIHRoaXMuY2FzaFJlZ2lzdGVyRHJhd2VySWQgPSArY3VycmVudENhc2hSZWdpc3Rlci5kZWZhdWx0RHJhd2VyTnVtYmVyO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2dldFBheW1lbnRNZXRob2RzKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlOiBGdW5jdGlvbikgPT4ge1xyXG4gICAgICB0aGlzLnBheW1lbnRNZXRob2RzLmxlbmd0aCA9IDA7XHJcbiAgICAgIHRoaXMucGF5bWVudENvbm5lY3RvclNlcnZpY2UuZ2V0UGF5bWVudE1ldGhvZHNWaWV3TW9kZWxzKHRoaXMuYnJhbmNoKS50aGVuKChtZXRob2RzOiBQYXltZW50Vmlld21vZGVsW10pID0+IHtcclxuICAgICAgICB0aGlzLnBheW1lbnRNZXRob2RzID0gbWV0aG9kcy5zbGljZSgpO1xyXG4gICAgICAgIGlmICh0aGlzLmN1cnJlbnRQYXltZW50TWV0aG9kKSB7XHJcbiAgICAgICAgICB0aGlzLnBheW1lbnRNZXRob2RJZHggPSB0aGlzLnBheW1lbnRNZXRob2RzLmZpbmRJbmRleChwID0+IHAucGF5bWVudC5jb2RlID09PSB0aGlzLmN1cnJlbnRQYXltZW50TWV0aG9kLmNvZGUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXNvbHZlKCk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
241
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tcGF5bWVudC1iYXNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L2NvcmUvYmFzZS90cmFuc2FjdGlvbi1wYXltZW50LWJhc2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUkzRyxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFFN0MsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFDeEUsT0FBTyxFQUFDLGtDQUFrQyxFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFDMUcsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDbkYsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDckUsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sOENBQThDLENBQUM7QUFLdkYsTUFBTSxPQUFnQiwrQkFBK0I7SUFtTG5ELFlBQ1ksa0JBQXNDLEVBQ3RDLHVCQUEyRCxFQUMzRCx1QkFBZ0QsRUFDaEQsY0FBaUMsRUFDcEMsY0FBeUMsRUFDekMsZ0JBQWtDO1FBTC9CLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUFvQztRQUMzRCw0QkFBdUIsR0FBdkIsdUJBQXVCLENBQXlCO1FBQ2hELG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQUNwQyxtQkFBYyxHQUFkLGNBQWMsQ0FBMkI7UUFDekMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQXhMM0IsVUFBSyxHQUFnQixJQUFJLENBQUM7UUFpSG5DLGVB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SUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUU7b0JBQzdCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztpQkFDL0c7Z0JBQ0QsT0FBTyxFQUFFLENBQUM7WUFDWixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7O1lBblJGLFNBQVM7OztZQVJGLGtCQUFrQjtZQUNsQixrQ0FBa0M7WUFDbEMsdUJBQXVCO1lBUnZCLGlCQUFpQjtZQVVqQix5QkFBeUI7WUFEekIsZ0JBQWdCOzs7c0JBU3JCLEtBQUs7OEJBVUwsS0FBSztxQkFVTCxLQUFLO3FCQVVMLEtBQUs7eUJBVUwsS0FBSzs2QkFVTCxLQUFLO2tDQVVMLEtBQUs7bUNBVUwsS0FBSzswQkFVTCxLQUFLOzBCQVVMLEtBQUs7NEJBVUwsS0FBSzt5QkFVTCxLQUFLOytCQUdMLEtBQUs7bUNBWUwsS0FBSztnREFVTCxLQUFLO29CQVVMLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdG9yUmVmLCBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0Nhc2hSZWdpc3Rlcn0gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL2Nhc2gtcmVnaXN0ZXInO1xyXG5pbXBvcnQge1BheW1lbnRNZXRob2R9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9wYXltZW50LW1ldGhvZC5ibyc7XHJcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtJY29ufSBmcm9tICcuLi8uLi8uLi9lbnVtL2ljb24uZW51bSc7XHJcbmltcG9ydCB7UGF5bWVudFZpZXdtb2RlbH0gZnJvbSAnLi4vLi4vLi4vbW9kZWwvcGF5bWVudC52aWV3bW9kZWwnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvblBheW1lbnRDb25uZWN0b3JTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLXBheW1lbnQtY29ubmVjdG9yLnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWV2ZW50LnNlcnZpY2UnO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvblBheW1lbnRTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLXBheW1lbnQuc2VydmljZSc7XHJcbmltcG9ydCB7UmVwb3J0TGF5b3V0U2VsZWN0aW9uUHJpbnR9IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL3JlcG9ydC1sYXlvdXQtc2VsZWN0aW9uLXByaW50LmJvJztcclxuaW1wb3J0IHtSZXBvcnRMYXlvdXRTZWxlY3Rpb25FbWFpbH0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcmVwb3J0LWxheW91dC1zZWxlY3Rpb24tZW1haWwuYm8nO1xyXG5cclxuQERpcmVjdGl2ZSgpXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBUcmFuc2FjdGlvblBheW1lbnRCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHB1YmxpYyByZWFkb25seSBpY29uczogdHlwZW9mIEljb24gPSBJY29uO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgdHJhbnNJZCh2YWx1ZTogbnVtYmVyKSB7XHJcbiAgICB0aGlzLl90cmFuc0lkID0gdmFsdWU7XHJcbiAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLnRyYW5zSWQgPSB0aGlzLl90cmFuc0lkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCB0cmFuc0lkKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHJhbnNJZDtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCB0cmFuc2FjdGlvblV1aWQodmFsdWU6IHN0cmluZykge1xyXG4gICAgdGhpcy5fdHJhbnNhY3Rpb25VdWlkID0gdmFsdWU7XHJcbiAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLnRyYW5zYWN0aW9uVXVpZCA9IHRoaXMuX3RyYW5zYWN0aW9uVXVpZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgdHJhbnNhY3Rpb25VdWlkKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHJhbnNhY3Rpb25VdWlkO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IGJyYW5jaCh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICB0aGlzLl9icmFuY2ggPSB2YWx1ZTtcclxuICAgIHRoaXMucGF5bWVudFNlcnZpY2UuYnJhbmNoID0gdGhpcy5fYnJhbmNoO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBicmFuY2goKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLl9icmFuY2g7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgYW1vdW50KHZhbHVlOiBudW1iZXIpIHtcclxuICAgIHRoaXMuX2Ftb3VudCA9IHZhbHVlO1xyXG4gICAgdGhpcy5wYXltZW50U2VydmljZS5hbW91bnQgPSB0aGlzLl9hbW91bnQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGFtb3VudCgpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIHRoaXMuX2Ftb3VudDtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBjdXJyZW5jeUlkKHZhbHVlOiBudW1iZXIpIHtcclxuICAgIHRoaXMuX2N1cnJlbmN5SWQgPSB2YWx1ZTtcclxuICAgIHRoaXMucGF5bWVudFNlcnZpY2UuY3VycmVuY3lJZCA9IHRoaXMuX2N1cnJlbmN5SWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGN1cnJlbmN5SWQoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLl9jdXJyZW5jeUlkO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IGNhc2hSZWdpc3Rlck5yKHZhbHVlOiBudW1iZXIpIHtcclxuICAgIHRoaXMuX2Nhc2hSZWdpc3Rlck5yID0gdmFsdWU7XHJcbiAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLmNhc2hSZWdpc3Rlck5yID0gdGhpcy5fY2FzaFJlZ2lzdGVyTnI7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGNhc2hSZWdpc3Rlck5yKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5fY2FzaFJlZ2lzdGVyTnI7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgY2FzaFJlZ2lzdGVyR3JvdXBJZCh2YWx1ZTogbnVtYmVyKSB7XHJcbiAgICB0aGlzLl9jYXNoUmVnaXN0ZXJHcm91cElkID0gdmFsdWU7XHJcbiAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLmNhc2hSZWdpc3Rlckdyb3VwSWQgPSB0aGlzLl9jYXNoUmVnaXN0ZXJHcm91cElkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBjYXNoUmVnaXN0ZXJHcm91cElkKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5fY2FzaFJlZ2lzdGVyR3JvdXBJZDtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBjYXNoUmVnaXN0ZXJEcmF3ZXJJZCh2YWx1ZTogbnVtYmVyKSB7XHJcbiAgICB0aGlzLl9jYXNoUmVnaXN0ZXJEcmF3ZXJJZCA9IHZhbHVlO1xyXG4gICAgdGhpcy5wYXltZW50U2VydmljZS5jYXNoUmVnaXN0ZXJEcmF3ZXJJZCA9IHRoaXMuX2Nhc2hSZWdpc3RlckRyYXdlcklkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBjYXNoUmVnaXN0ZXJEcmF3ZXJJZCgpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIHRoaXMuX2Nhc2hSZWdpc3RlckRyYXdlcklkO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IHByaW50ZXJOYW1lKHZhbHVlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX3ByaW50ZXJOYW1lID0gdmFsdWU7XHJcbiAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLnByaW50ZXJOYW1lID0gdGhpcy5fcHJpbnRlck5hbWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IHByaW50ZXJOYW1lKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5fcHJpbnRlck5hbWU7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgZW1haWxMYXlvdXQodmFsdWU6IFJlcG9ydExheW91dFNlbGVjdGlvbkVtYWlsKSB7XHJcbiAgICB0aGlzLl9lbWFpbExheW91dCA9IHZhbHVlO1xyXG4gICAgdGhpcy5wYXltZW50U2VydmljZS5lbWFpbExheW91dCA9IHRoaXMuX2VtYWlsTGF5b3V0O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBlbWFpbExheW91dCgpOiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25FbWFpbCB7XHJcbiAgICByZXR1cm4gdGhpcy5fZW1haWxMYXlvdXQ7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgcHJpbnRlckxheW91dCh2YWx1ZTogUmVwb3J0TGF5b3V0U2VsZWN0aW9uUHJpbnQpIHtcclxuICAgIHRoaXMuX3ByaW50ZXJMYXlvdXQgPSB2YWx1ZTtcclxuICAgIHRoaXMucGF5bWVudFNlcnZpY2UucHJpbnRlckxheW91dCA9IHRoaXMuX3ByaW50ZXJMYXlvdXQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IHByaW50ZXJMYXlvdXQoKTogUmVwb3J0TGF5b3V0U2VsZWN0aW9uUHJpbnQge1xyXG4gICAgcmV0dXJuIHRoaXMuX3ByaW50ZXJMYXlvdXQ7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzaG93S2V5UGFkOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IHJlbWFpbmluZ1BheW1lbnQodmFsdWU6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuX3JlbWFpbmluZ1BheW1lbnQgPSB2YWx1ZTtcclxuICAgIHRoaXMucGF5bWVudFNlcnZpY2UuZ2V0RGVwb3NpdEFtb3VudCA9ICF0aGlzLl9yZW1haW5pbmdQYXltZW50O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCByZW1haW5pbmdQYXltZW50KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3JlbWFpbmluZ1BheW1lbnQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9yZW1haW5pbmdQYXltZW50OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBjdXJyZW50UGF5bWVudE1ldGhvZCh2YWx1ZTogUGF5bWVudE1ldGhvZCkge1xyXG4gICAgdGhpcy5fY3VycmVudFBheW1lbnRNZXRob2QgPSB2YWx1ZTtcclxuICAgIHRoaXMucGF5bWVudFNlcnZpY2UuY3VycmVudFBheW1lbnRNZXRob2QgPSB0aGlzLl9jdXJyZW50UGF5bWVudE1ldGhvZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgY3VycmVudFBheW1lbnRNZXRob2QoKTogUGF5bWVudE1ldGhvZCB7XHJcbiAgICByZXR1cm4gdGhpcy5fY3VycmVudFBheW1lbnRNZXRob2Q7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgZG9Ob3RGZXRjaEFtb3VudFRvUGF5Rm9yUmVtYWluaW5nKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLl9kb05vdEZldGNoQW1vdW50VG9QYXlGb3JSZW1haW5pbmcgPSB2YWx1ZTtcclxuICAgIHRoaXMucGF5bWVudFNlcnZpY2UuZG9Ob3RGZXRjaEFtb3VudFRvUGF5Rm9yUmVtYWluaW5nID0gdGhpcy5fZG9Ob3RGZXRjaEFtb3VudFRvUGF5Rm9yUmVtYWluaW5nO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBkb05vdEZldGNoQW1vdW50VG9QYXlGb3JSZW1haW5pbmcoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fZG9Ob3RGZXRjaEFtb3VudFRvUGF5Rm9yUmVtYWluaW5nO1xyXG4gIH1cclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHBheWVkOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIHB1YmxpYyBwYXltZW50TWV0aG9kSWR4OiBudW1iZXIgPSAwO1xyXG4gIHB1YmxpYyBjYXNoUmVnaXN0ZXJJZHg6IG51bWJlciA9IDA7XHJcbiAgcHVibGljIHBheW1lbnRNZXRob2RzOiBQYXltZW50Vmlld21vZGVsW10gPSBbXTtcclxuICBwdWJsaWMgY2FzaFJlZ2lzdGVyczogYW55W10gPSBbXTtcclxuICBwdWJsaWMgc2hvd0Nhc2hSZWdpc3RlcnM6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgdXNlQ2FzaFJlZ2lzdGVyczogYm9vbGVhbiA9IHRydWU7XHJcbiAgLy8gcHVibGljIHNob3dQc3BRckNvZGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAvLyBwdWJsaWMgcXJDb2RlSW1hZ2U6IHN0cmluZztcclxuICBwdWJsaWMgc2hvd0xvYWRlcjogYm9vbGVhbiA9IHRydWU7XHJcbiAgLy8gcHVibGljIGFtb3VudFRvUGF5OiBudW1iZXIgPSAwO1xyXG4gIC8vIHB1YmxpYyBzdGF0dXNNZXNzYWdlOiBzdHJpbmcgPSBcIlwiO1xyXG5cclxuICBwcm90ZWN0ZWQgc3ViczogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuXHJcbiAgcHJpdmF0ZSBfdHJhbnNJZDogbnVtYmVyO1xyXG4gIHByaXZhdGUgX3RyYW5zYWN0aW9uVXVpZDogc3RyaW5nO1xyXG4gIHByaXZhdGUgX2JyYW5jaDogc3RyaW5nO1xyXG4gIHByaXZhdGUgX2Ftb3VudDogbnVtYmVyID0gMDtcclxuICBwcml2YXRlIF9jdXJyZW5jeUlkOiBudW1iZXI7XHJcbiAgcHJpdmF0ZSBfY2FzaFJlZ2lzdGVyTnI6IG51bWJlcjtcclxuICBwcml2YXRlIF9jYXNoUmVnaXN0ZXJHcm91cElkOiBudW1iZXI7XHJcbiAgcHJpdmF0ZSBfY2FzaFJlZ2lzdGVyRHJhd2VySWQ6IG51bWJlcjtcclxuICBwcml2YXRlIF9jdXJyZW50UGF5bWVudE1ldGhvZDogUGF5bWVudE1ldGhvZDtcclxuICBwcml2YXRlIF9kb05vdEZldGNoQW1vdW50VG9QYXlGb3JSZW1haW5pbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwcml2YXRlIF9wcmludGVyTmFtZTogc3RyaW5nO1xyXG4gIHByaXZhdGUgX3ByaW50ZXJMYXlvdXQ6IFJlcG9ydExheW91dFNlbGVjdGlvblByaW50O1xyXG4gIHByaXZhdGUgX2VtYWlsTGF5b3V0OiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25FbWFpbDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcm90ZWN0ZWQgdHJhbnNhY3Rpb25TZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgcGF5bWVudENvbm5lY3RvclNlcnZpY2U6IFRyYW5zYWN0aW9uUGF5bWVudENvbm5lY3RvclNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgdHJhbnNhY3Rpb25FdmVudFNlcnZpY2U6IFRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHB1YmxpYyBwYXltZW50U2VydmljZTogVHJhbnNhY3Rpb25QYXltZW50U2VydmljZSxcclxuICAgIHB1YmxpYyBpY29uQ2FjaGVTZXJ2aWNlOiBJY29uQ2FjaGVTZXJ2aWNlXHJcbiAgKXtcclxuICB9XHJcblxyXG4gIGFzeW5jIG5nT25Jbml0KCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgLy8gaWYgKHRoaXMudXBkYXRlRGVwb3NpdEFtb3VudCkge1xyXG4gICAgLy8gICBhd2FpdCB0aGlzLl90cmFuc2FjdGlvblNlcnZpY2UudXBkYXRlSGVhZGVyVHJhbnNhY3Rpb25EZXBvc2l0QW1vdW50KHRoaXMudHJhbnNhY3Rpb25VdWlkLCB0aGlzLmFtb3VudFRvUGF5LCB0cnVlKTtcclxuICAgIC8vIH1cclxuICAgIHRoaXMuc3Vicy5wdXNoKFxyXG4gICAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLnBheWVkLnN1YnNjcmliZSgoKSA9PiB0aGlzLnBheWVkLmVtaXQoKSlcclxuICAgIClcclxuICAgIGF3YWl0IHRoaXMuX2dldFBheW1lbnRNZXRob2RzKCk7XHJcbiAgICB0aGlzLnNob3dMb2FkZXIgPSBmYWxzZTtcclxuICAgIGF3YWl0IHRoaXMucGF5bWVudFNlcnZpY2UucHJlcGFyZVBheW1lbnRJbmZvKCk7XHJcbiAgICB0aGlzLl9wcmVwYXJlQ2FzaFJlZ2lzdGVycygpO1xyXG4gICAgdGhpcy5wYXltZW50SW5mb1JlYWR5KCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3Vicy5mb3JFYWNoKHMgPT4gcy51bnN1YnNjcmliZSgpKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBwYXltZW50TWV0aG9kU2VsZWN0ZWQobWV0aG9kOiBQYXltZW50TWV0aG9kLCBpbmRleDogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB0aGlzLnBheW1lbnRNZXRob2RJZHggPSBpbmRleDtcclxuICAgIHRoaXMuX3ByZXBhcmVDYXNoUmVnaXN0ZXJzKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2FzaFJlZ2lzdGVyU2VsZWN0ZWQoY2FzaFJlZ2lzdGVyOiBDYXNoUmVnaXN0ZXIsIGluZGV4OiBudW1iZXIpOiB2b2lkIHtcclxuICAgIHRoaXMuY2FzaFJlZ2lzdGVySWR4ID0gaW5kZXg7XHJcbiAgICB0aGlzLmNhc2hSZWdpc3Rlck5yID0gY2FzaFJlZ2lzdGVyLm5yO1xyXG4gICAgdGhpcy5jYXNoUmVnaXN0ZXJHcm91cElkID0gY2FzaFJlZ2lzdGVyLmdyb3VwO1xyXG4gICAgdGhpcy5jYXNoUmVnaXN0ZXJEcmF3ZXJJZCA9ICtjYXNoUmVnaXN0ZXIuZGVmYXVsdERyYXdlck51bWJlcjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVQYXltZW50KCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgcmV0dXJuIHRoaXMucGF5bWVudFNlcnZpY2UuaGFuZGxlUGF5bWVudCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZUtleVBhZE1vZGVsQ2hhbmdlKG1vZGVsOiBudW1iZXIpOiB2b2lkIHtcclxuICAgIHRoaXMucGF5bWVudFNlcnZpY2UuYW1vdW50VG9QYXkgPSBtb2RlbDtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBwYXltZW50SW5mb1JlYWR5KCk6IHZvaWQge1xyXG5cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqXHJcbiAgICogQHByaXZhdGVcclxuICAgKi9cclxuICBwcml2YXRlIF9wcmVwYXJlQ2FzaFJlZ2lzdGVycygpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy51c2VDYXNoUmVnaXN0ZXJzKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMuY3VycmVudFBheW1lbnRNZXRob2QgPSB0aGlzLnBheW1lbnRNZXRob2RzW3RoaXMucGF5bWVudE1ldGhvZElkeF0ucGF5bWVudDtcclxuICAgIGlmICh0aGlzLmN1cnJlbnRQYXltZW50TWV0aG9kICYmICghdGhpcy5jdXJyZW50UGF5bWVudE1ldGhvZC5leHRlcm5hbFNvdXJjZUlkIHx8IHRoaXMuY3VycmVudFBheW1lbnRNZXRob2QucGluVGVybWluYWwpKSB7XHJcbiAgICAgIHRoaXMuY2FzaFJlZ2lzdGVycy5sZW5ndGggPSAwO1xyXG4gICAgICB0aGlzLmN1cnJlbnRQYXltZW50TWV0aG9kLnBvc0dyb3Vwcy5mb3JFYWNoKGNyZyA9PiB7XHJcbiAgICAgICAgdGhpcy5fZ2V0Q2FzaFJlZ2lzdGVycyh0aGlzLmJyYW5jaCwgY3JnLmlkKTtcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMuc2hvd0Nhc2hSZWdpc3RlcnMgPSB0cnVlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zaG93Q2FzaFJlZ2lzdGVycyA9IGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZ2V0Q2FzaFJlZ2lzdGVycyhicmFuY2g/OiBzdHJpbmcsIGdyb3VwPzogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRDYXNoUmVnaXN0ZXJzKGJyYW5jaCwgZ3JvdXApLnRoZW4oKGNhc2hSZWdpc3RlcnM6IENhc2hSZWdpc3RlcltdKSA9PiB7XHJcbiAgICAgIHRoaXMuY2FzaFJlZ2lzdGVycy5wdXNoKC4uLmNhc2hSZWdpc3RlcnMpO1xyXG4gICAgICBjb25zdCBjdXJyZW50Q2FzaFJlZ2lzdGVyOiBDYXNoUmVnaXN0ZXIgPSB0aGlzLmNhc2hSZWdpc3RlcnNbdGhpcy5jYXNoUmVnaXN0ZXJJZHhdO1xyXG4gICAgICBpZiAoY3VycmVudENhc2hSZWdpc3Rlcikge1xyXG4gICAgICAgIHRoaXMuY2FzaFJlZ2lzdGVyTnIgPSBjdXJyZW50Q2FzaFJlZ2lzdGVyLm5yO1xyXG4gICAgICAgIHRoaXMuY2FzaFJlZ2lzdGVyR3JvdXBJZCA9IGN1cnJlbnRDYXNoUmVnaXN0ZXIuZ3JvdXA7XHJcbiAgICAgICAgdGhpcy5jYXNoUmVnaXN0ZXJEcmF3ZXJJZCA9ICtjdXJyZW50Q2FzaFJlZ2lzdGVyLmRlZmF1bHREcmF3ZXJOdW1iZXI7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZ2V0UGF5bWVudE1ldGhvZHMoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmU6IEZ1bmN0aW9uKSA9PiB7XHJcbiAgICAgIHRoaXMucGF5bWVudE1ldGhvZHMubGVuZ3RoID0gMDtcclxuICAgICAgdGhpcy5wYXltZW50Q29ubmVjdG9yU2VydmljZS5nZXRQYXltZW50TWV0aG9kc1ZpZXdNb2RlbHModGhpcy5icmFuY2gpLnRoZW4oKG1ldGhvZHM6IFBheW1lbnRWaWV3bW9kZWxbXSkgPT4ge1xyXG4gICAgICAgIHRoaXMucGF5bWVudE1ldGhvZHMgPSBtZXRob2RzLnNsaWNlKCk7XHJcbiAgICAgICAgaWYgKHRoaXMuY3VycmVudFBheW1lbnRNZXRob2QpIHtcclxuICAgICAgICAgIHRoaXMucGF5bWVudE1ldGhvZElkeCA9IHRoaXMucGF5bWVudE1ldGhvZHMuZmluZEluZGV4KHAgPT4gcC5wYXltZW50LmNvZGUgPT09IHRoaXMuY3VycmVudFBheW1lbnRNZXRob2QuY29kZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJlc29sdmUoKTtcclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIl19
@@ -224,4 +224,4 @@ TransactionHeaderPaymentComponent.ctorParameters = () => [
224
224
  TransactionHeaderPaymentComponent.propDecorators = {
225
225
  showClass: [{ type: HostBinding, args: ["class.co-transaction-header-payment",] }]
226
226
  };
227
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24taGVhZGVyLXBheW1lbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvdHJhbnNhY3Rpb24taGVhZGVyL3RyYW5zYWN0aW9uLWhlYWRlci1wYXltZW50L3RyYW5zYWN0aW9uLWhlYWRlci1wYXltZW50LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFxQixpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMxSCxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQUNwRixPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDckUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFDeEUsT0FBTyxFQUFDLGtDQUFrQyxFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFJMUcsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDdEUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDbkYsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDbkYsT0FBTyxFQUFDLHFDQUFxQyxFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFFaEgsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sOENBQThDLENBQUM7QUFDckYsT0FBTyxFQUFDLDhDQUE4QyxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUEySTVGLE1BQU0sT0FBTyxpQ0FBa0MsU0FBUSx3QkFBd0I7SUFvQjdFLFlBQ1MsdUJBQWdELEVBQ2hELE9BQTJCLEVBQzNCLGdCQUFrQyxFQUNsQyxxQ0FBNEUsRUFDekUsaUJBQW9DLEVBQ3BDLFlBQXFDLEVBQ3JDLGNBQWlDLEVBQ25DLHdCQUE0RDtRQUVwRSxLQUFLLENBQUMsdUJBQXVCLEVBQUUsZ0JBQWdCLEVBQUUscUNBQXFDLEVBQUUsWUFBWSxFQUFFLGlCQUFpQixFQUFFLE9BQU8sRUFBRSxjQUFjLENBQUMsQ0FBQztRQVQzSSw0QkFBdUIsR0FBdkIsdUJBQXVCLENBQXlCO1FBQ2hELFlBQU8sR0FBUCxPQUFPLENBQW9CO1FBQzNCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsMENBQXFDLEdBQXJDLHFDQUFxQyxDQUF1QztRQUN6RSxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLGlCQUFZLEdBQVosWUFBWSxDQUF5QjtRQUNyQyxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFDbkMsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUFvQztRQTNCdEQsVUFBSyxHQUFnQixJQUFJLENBQUM7UUFPbkMsbUJBQWMsR0FBdUIsRUFBRSxDQUFDO1FBQ3hDLG9CQUFlLEdBQThCLEVBQUUsQ0FBQztRQUNoRCxlQUFVLEdBQVksS0FBSyxDQUFDO1FBQzVCLHNCQUFpQixHQUFZLEtBQUssQ0FBQztRQUNuQyw4QkFBeUIsR0FBWSxJQUFJLENBQUM7UUFDMUMsU0FBSSxHQUFXLENBQUMsQ0FBQztRQUNqQixVQUFLLEdBQVcsQ0FBQyxDQUFDO1FBQ2xCLG1CQUFjLEdBQVcsQ0FBQyxDQUFDO1FBQzNCLHlCQUFvQixHQUFZLEtBQUssQ0FBQztRQUVyQyxVQUFLLEdBQW1CLEVBQUUsQ0FBQztJQWFuQyxDQUFDO0lBM0JNLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUEyQkQsUUFBUTtRQUNOLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDWCxJQUFJLENBQUMsdUJBQXVCLENBQUMsc0JBQXNCLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLEVBQ2xHLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxNQUErQixFQUFFLEVBQUU7WUFDNUYsSUFBSSxDQUFDLG9CQUFvQixHQUFHLE1BQU0sS0FBSyx1QkFBdUIsQ0FBQyxzQkFBc0IsSUFBSSxNQUFNLEtBQUssdUJBQXVCLENBQUMsaUJBQWlCLENBQUM7UUFDaEosQ0FBQyxDQUFDLENBQ0wsQ0FBQTtJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUN6QyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVZLFdBQVcsQ0FBQyxLQUFpQjs7WUFDeEMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3ZCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUN4QixJQUFJLE1BQU0sSUFBSSxDQUFDLGVBQWUsRUFBRSxFQUFFO2dCQUNoQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO2FBQy9CO1FBQ0gsQ0FBQztLQUFBO0lBRVksY0FBYzs7WUFDekIsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7UUFDaEMsQ0FBQztLQUFBO0lBRU8sc0JBQXNCO1FBQzVCLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUNoQyxJQUFJLElBQUksQ0FBQyxlQUFlLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxFQUFFLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUU7WUFDaEYsSUFBSSxDQUFDLHdCQUF3QixDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBbUMsRUFBRSxFQUFFO2dCQUMxSCxJQUFJLElBQUksRUFBRTtvQkFDUixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7b0JBQ2hDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDO2lCQUM1QztZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDOzs7WUE5TUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSwrQkFBK0I7Z0JBQ3pDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnSVQ7Z0JBQ0QsU0FBUyxFQUFFO29CQUNULEVBQUMsT0FBTyxFQUFFLDhDQUE4QyxFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsaUNBQWlDLENBQUMsRUFBQztpQkFDNUg7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7OztZQS9JTyx1QkFBdUI7WUFOdkIsa0JBQWtCO1lBRGxCLGdCQUFnQjtZQVNoQixxQ0FBcUM7WUFIckMsaUJBQWlCO1lBRWpCLHVCQUF1QjtZQVh2QixpQkFBaUI7WUFLakIsa0NBQWtDOzs7d0JBd0p2QyxXQUFXLFNBQUMscUNBQXFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBmb3J3YXJkUmVmLCBIb3N0QmluZGluZywgT25EZXN0cm95LCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkJhc2VDb21wb25lbnR9IGZyb20gJy4uLy4uL2NvcmUvYmFzZS90cmFuc2FjdGlvbi1iYXNlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7SWNvbn0gZnJvbSAnLi4vLi4vLi4vZW51bS9pY29uLmVudW0nO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25QYXltZW50Q29ubmVjdG9yU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1wYXltZW50LWNvbm5lY3Rvci5zZXJ2aWNlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkRlcG9zaXRQYXltZW50SW5mb30gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3RyYW5zYWN0aW9uLWRlcG9zaXQtcGF5bWVudC1pbmZvLmJvJztcclxuaW1wb3J0IHtEZXBvc2l0UGF5bWVudFZpZXdNb2RlbH0gZnJvbSAnLi4vLi4vLi4vbW9kZWwvZGVwb3NpdC1wYXltZW50LXZpZXctbW9kZWwnO1xyXG5pbXBvcnQge1BheW1lbnRWaWV3bW9kZWx9IGZyb20gJy4uLy4uLy4uL21vZGVsL3BheW1lbnQudmlld21vZGVsJztcclxuaW1wb3J0IHtEaWN0aW9uYXJ5U2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS9kaWN0aW9uYXJ5LnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWV2ZW50LnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uSW1hZ2VTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWltYWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2NyZWVuQ29uZmlndXJhdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tc2NyZWVuLWNvbmZpZ3VyYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvblR5cGVDYXRlZ29yeX0gZnJvbSAnLi4vLi4vLi4vZW51bS90cmFuc2FjdGlvbi10eXBlLWNhdGVnb3J5LmVudW0nO1xyXG5pbXBvcnQge1NDUkVFTl9DT05GSUdfQURBUFRFUl9DT01QT05FTlRfSU5URVJGQUNFX05BTUV9IGZyb20gJ0Bjb2xpam5pdC9jb3JlY29tcG9uZW50c192MTInO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uUGF5bWVudFNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tcGF5bWVudC5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImNvLXRyYW5zYWN0aW9uLWhlYWRlci1wYXltZW50XCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1oZWFkZXItcGF5bWVudC13cmFwcGVyXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1oZWFkZXItcGF5bWVudC13cmFwcGVyLWNvbnRlbnRcIiBbY2xhc3Muc2hvdy1yZW1haW5pbmddPVwic2hvd1JlbWFpbmluZ1BheW1lbnRcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24taGVhZGVyLWJsb2NrXHJcbiAgICAgICAgICBbZmlyc3RCbG9ja1RlbXBsYXRlXT1cImZpcnN0QmxvY2tcIlxyXG4gICAgICAgICAgW3NlY29uZEJsb2NrVGVtcGxhdGVdPVwic2Vjb25kQmxvY2tcIlxyXG4gICAgICAgICAgW3RoaXJkQmxvY2tUZW1wbGF0ZV09XCJ0aGlyZEJsb2NrXCJcclxuICAgICAgICAgIFtoaWRkZW5CbG9ja1RlbXBsYXRlXT1cImhpZGRlbkJsb2NrXCJcclxuICAgICAgICAgIChoZWFkZXJDbGljayk9XCJzaG93RGlhbG9nID0gdHJ1ZVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgIDwvY28tdHJhbnNhY3Rpb24taGVhZGVyLWJsb2NrPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1oZWFkZXItYmxvY2sgKm5nSWY9XCJzaG93UmVtYWluaW5nUGF5bWVudFwiXHJcbiAgICAgICAgICBbZmlyc3RCbG9ja1RlbXBsYXRlXT1cImZpcnN0QmxvY2tSZXN0XCJcclxuICAgICAgICAgIChoZWFkZXJDbGljayk9XCJzaG93RGlhbG9nID0gdHJ1ZVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgIDwvY28tdHJhbnNhY3Rpb24taGVhZGVyLWJsb2NrPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPG5nLXRlbXBsYXRlICNmaXJzdEJsb2NrPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLWJsb2NrLXJvd1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1oZWFkZXItaWNvblwiIFtzY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0XT1cImNmZ05hbWVzLkhlYWRlclBheW1lbnRBdmF0YXJIZWFkZXJcIiBzY3JlZW5Db25maWdOYXRpdmVFbGVtZW50PlxyXG4gICAgICAgICAgPGNvLWljb24gY2xhc3M9XCJoZWFkZXItb3JkZXItaWNvblwiXHJcbiAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2hvd0RpYWxvZyA9IHRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5DcmVkaXRDYXJkUmVndWxhcilcIj5cclxuICAgICAgICAgIDwvY28taWNvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyLWRvd25wYXltZW50LWFtb3VudC13cmFwcGVyXCIgW3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3RdPVwiY2ZnTmFtZXMuSGVhZGVyUGF5bWVudEFtb3VudEhlYWRlclwiIHNjcmVlbkNvbmZpZ05hdGl2ZUVsZW1lbnQ+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyLWRlcG9zaXQtbGFiZWwgY28tdHJhbnNhY3Rpb24tbGFiZWxcIiBbdGV4dENvbnRlbnRdPVwiJ0RPV05QQVlNRU5UX0FNT1VOVCcgfCBsb2NhbGl6ZVwiPjwvZGl2PlxyXG4gICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWhlYWRlci1kZXBvc2l0LWFtb3VudCBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1kZXBvc2l0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3RdPVwiY2ZnTmFtZXMuSGVhZGVyUGF5bWVudEFtb3VudEhlYWRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0cmFuc2FjdGlvbl09XCJ0cmFuc2FjdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkZWZhdWx0RWRpdE1vZGVdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2hvd0xhYmVsXT1cImZhbHNlXCJcclxuICAgICAgICAgID48L2NvLXRyYW5zYWN0aW9uLWhlYWRlci1kZXBvc2l0LWFtb3VudD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgPG5nLXRlbXBsYXRlICNmaXJzdEJsb2NrUmVzdD5cclxuICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1ibG9jay1yb3dcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLWljb25cIiBbc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdF09XCJjZmdOYW1lcy5IZWFkZXJQYXltZW50QXZhdGFySGVhZGVyXCIgc2NyZWVuQ29uZmlnTmF0aXZlRWxlbWVudD5cclxuICAgICAgICAgIDxjby1pY29uIGNsYXNzPVwiaGVhZGVyLW9yZGVyLWljb25cIlxyXG4gICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNob3dQYXltZW50RGlhbG9nID0gdHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkNyZWRpdENhcmRSZWd1bGFyQ2hlY2spXCI+XHJcbiAgICAgICAgICA8L2NvLWljb24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlci1yZW1haW5pbmctcGF5bWVudC1hbW91bnQtd3JhcHBlclwiIFtzY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0XT1cImNmZ05hbWVzLkhlYWRlclBheW1lbnRBbW91bnRIZWFkZXJcIiBzY3JlZW5Db25maWdOYXRpdmVFbGVtZW50PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlci1kZXBvc2l0LWxhYmVsIGNvLXRyYW5zYWN0aW9uLWxhYmVsXCIgW3RleHRDb250ZW50XT1cIidSRU1BSU5JTkdfUEFZTUVOVCcgfCBsb2NhbGl6ZVwiPjwvZGl2PlxyXG4gICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWhlYWRlci1yZW1haW5pbmctYW1vdW50IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLXJlbWFpbmluZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3RdPVwiY2ZnTmFtZXMuSGVhZGVyUGF5bWVudEFtb3VudEhlYWRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RyYW5zYWN0aW9uVXVpZF09XCJ0cmFuc2FjdGlvbi50cmFuc2FjdGlvbkluZm8udXVpZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHJlbWFpbmluZ0Ftb3VudENoYW5nZSk9XCJyZW1haW5pbmdUb1BheSA9ICRldmVudFwiXHJcbiAgICAgICAgICA+PC9jby10cmFuc2FjdGlvbi1oZWFkZXItcmVtYWluaW5nLWFtb3VudD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgPG5nLXRlbXBsYXRlICNzZWNvbmRCbG9jaz5cclxuICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1ibG9jay1yb3dcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyLWRvd25wYXltZW50LXBlcmNlbnRhZ2Utd3JhcHBlclwiIFtzY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0XT1cImNmZ05hbWVzLkhlYWRlclBheW1lbnRQZXJjZW50YWdlSGVhZGVyXCIgc2NyZWVuQ29uZmlnTmF0aXZlRWxlbWVudD5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItZGVwb3NpdC1sYWJlbCBjby10cmFuc2FjdGlvbi1sYWJlbFwiIFt0ZXh0Q29udGVudF09XCInJScgfCBsb2NhbGl6ZVwiPjwvZGl2PlxyXG4gICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWhlYWRlci1kZXBvc2l0LXBlcmNlbnRhZ2UgY2xhc3M9XCJ0cmFuc2FjdGlvbi1oZWFkZXItZGVwb3NpdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdF09XCJjZmdOYW1lcy5IZWFkZXJQYXltZW50UGVyY2VudGFnZUhlYWRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHJhbnNhY3Rpb25JbmZvXT1cInRyYW5zYWN0aW9uSW5mb1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGVmYXVsdEVkaXRNb2RlXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzaG93TGFiZWxdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgPjwvY28tdHJhbnNhY3Rpb24taGVhZGVyLWRlcG9zaXQtcGVyY2VudGFnZT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgPG5nLXRlbXBsYXRlICN0aGlyZEJsb2NrPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLWJsb2NrLXJvd1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItcGF5bWVudC1idXR0b24td3JhcHBlclwiIChjbGljayk9XCJvcGVuUGF5bWVudCgkZXZlbnQpXCIgW3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3RdPVwiY2ZnTmFtZXMuSGVhZGVyUGF5bWVudFBheW1lbnRIZWFkZXJcIiBzY3JlZW5Db25maWdOYXRpdmVFbGVtZW50PlxyXG4gICAgICAgICAgICA8Y28taWNvbiBjbGFzcz1cImhlYWRlci1vcmRlci1pY29uXCIgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5DcmVkaXRDYXJkUmVndWxhckNoZWNrKVwiPlxyXG4gICAgICAgICAgICA8L2NvLWljb24+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic3BhY2VyXCI+PC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicGF5bWVudC1wYXllZC13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgIDwhLS1kaXYgY2xhc3M9XCJoZWFkZXItcGF5ZWQtbGFiZWwgY28tdHJhbnNhY3Rpb24tbGFiZWxcIiBbdGV4dENvbnRlbnRdPVwiJ0RPV05QQVlNRU5UX0RPTkUnIHwgbG9jYWxpemVcIj48L2Rpdi0tPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInBheW1lbnQtcGFpZFwiIFtjbGFzcy5zdWNjZXNzXT1cInBhaWQgPj0gdG9QYXlcIiBbdGV4dENvbnRlbnRdPVwiKHBhaWQgfCBjb0N1cnJlbmN5KSB8fCAwXCI+PC9zcGFuPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8IS0tY28tdHJhbnNhY3Rpb24taGVhZGVyLXBheW1lbnQtYnV0dG9uICpuZ0lmPVwidHJhbnNhY3Rpb25JbmZvLnRyYW5zYWN0aW9uS2luZCAhPT0gdHJhbnNLaW5kLlB1cmNoYXNlT3JkZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHJhbnNhY3Rpb25JbmZvXT1cInRyYW5zYWN0aW9uSW5mb1wiXHJcbiAgICAgICAgICA+PC9jby10cmFuc2FjdGlvbi1oZWFkZXItcGF5bWVudC1idXR0b24tLT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgPG5nLXRlbXBsYXRlICNoaWRkZW5CbG9jaz5cclxuICAgICAgPCEtLWRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1ibG9jay1yb3dcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyLWJyYW5jaC1sYWJlbCBjby10cmFuc2FjdGlvbi1sYWJlbFwiIFt0ZXh0Q29udGVudF09XCInQlJBTkNIJyB8IGxvY2FsaXplXCI+PC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImJyYW5jaC1sYWJlbFwiIFt0ZXh0Q29udGVudF09XCJ0cmFuc2FjdGlvbkluZm8uYnJhbmNoPy5mYW1pbHlOYW1lXCI+PC9kaXY+XHJcbiAgICAgIDwvZGl2LS0+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgPGNvLXRyYW5zYWN0aW9uLWhlYWRlci1wb3B1cCAqbmdJZj1cInNob3dEaWFsb2dcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYWN0aXZlQ2F0ZWdvcnlEZXNjcmlwdGlvbl09XCInUEFZTUVOVF9JTkZPUk1BVElPTidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVsYXRpb25dPVwicmVsYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHJhbnNhY3Rpb25dPVwidHJhbnNhY3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xvc2VDbGljayk9XCJzaG93RGlhbG9nID0gZmFsc2VcIj48L2NvLXRyYW5zYWN0aW9uLWhlYWRlci1wb3B1cD5cclxuPCEtLVxyXG4gICAgPGNvLWRpYWxvZyBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1wYXltZW50LWRpYWxvZ1wiIFtoZWFkZXJUZW1wbGF0ZV09XCJoZWFkZXJUZW1wbGF0ZVwiICpuZ0lmPVwic2hvd0RpYWxvZ1wiIChjbG9zZUNsaWNrKT1cInNob3dEaWFsb2cgPSBmYWxzZVwiPlxyXG4gICAgICA8bmctdGVtcGxhdGUgI2hlYWRlclRlbXBsYXRlPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjby1kaWFsb2ctaGVhZGVyLXRpdGxlXCIgW3RleHRDb250ZW50XT1cIidQQVlNRU5UX0lORk9STUFUSU9OJyB8IGxvY2FsaXplXCI+PC9kaXY+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWhlYWRlci1ibG9ja1xyXG4gICAgICAgICAgW2hlYWRlckJsb2NrVGVtcGxhdGVdPVwiaGVhZGVyQmxvY2tcIlxyXG4gICAgICAgICAgW2ZpcnN0QmxvY2tUZW1wbGF0ZV09XCJmaXJzdEJsb2NrXCJcclxuICAgICAgICAgIFtzZWNvbmRCbG9ja1RlbXBsYXRlXT1cInNlY29uZEJsb2NrXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1oZWFkZXItYmxvY2s+XHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJwYXltZW50LWRpYWxvZy1zZWN0aW9uXCI+XHJcbiAgICAgICAgPGNvLWRlcG9zaXQtcGF5bWVudCBbYnJhbmNoXT1cInRyYW5zYWN0aW9uSW5mby5icmFuY2g/LnJlbGF0aW9uTnJcIiBbdHJhbnNhY3Rpb25VdWlkXT1cInRyYW5zYWN0aW9uSW5mby51dWlkXCI+PC9jby1kZXBvc2l0LXBheW1lbnQ+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9jby1kaWFsb2c+XHJcbi0tPlxyXG4gICAgPGNvLWRpYWxvZyBjbGFzcz1cInBheW1lbnQtZGlhbG9nXCIgW21vZGFsXT1cInRydWVcIiBbaGVhZGVyVGVtcGxhdGVdPVwiaGVhZGVyVGVtcGxhdGVcIiAqbmdJZj1cInNob3dQYXltZW50RGlhbG9nXCIgKGNsb3NlQ2xpY2spPVwic2hvd1BheW1lbnREaWFsb2cgPSBmYWxzZVwiPlxyXG4gICAgICA8bmctdGVtcGxhdGUgI2hlYWRlclRlbXBsYXRlPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjby1kaWFsb2ctd3JhcHBlci1wb3B1cC10aXRsZVwiPlxyXG4gICAgICAgICAgPGNvLWljb24gW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5DcmVkaXRDYXJkUmVndWxhckNoZWNrKVwiPjwvY28taWNvbj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjby1kaWFsb2ctaGVhZGVyLXRpdGxlXCIgW3RleHRDb250ZW50XT1cIidQQVlNRU5UX01FVEhPRCcgfCBsb2NhbGl6ZVwiPjwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICA8Y28tcGF5bWVudFxyXG4gICAgICAgIFt0cmFuc0lkXT1cInRyYW5zYWN0aW9uSW5mby5pZFwiXHJcbiAgICAgICAgW2JyYW5jaF09XCJ0cmFuc2FjdGlvbkluZm8uYnJhbmNoPy5yZWxhdGlvbk5yXCJcclxuICAgICAgICBbdHJhbnNhY3Rpb25VdWlkXT1cInRyYW5zYWN0aW9uSW5mby51dWlkXCJcclxuICAgICAgICBbYW1vdW50XT1cInNob3dSZW1haW5pbmdQYXltZW50ID8gcmVtYWluaW5nVG9QYXkgOiB0b1BheVwiXHJcbiAgICAgICAgW3JlbWFpbmluZ1BheW1lbnRdPVwic2hvd1JlbWFpbmluZ1BheW1lbnRcIlxyXG4gICAgICAgIFtjdXJyZW5jeUlkXT1cInRyYW5zYWN0aW9uSW5mby5jdXJyZW5jeUlkXCJcclxuICAgICAgICBbZG9Ob3RGZXRjaEFtb3VudFRvUGF5Rm9yUmVtYWluaW5nXT1cInRydWVcIlxyXG4gICAgICA+PC9jby1wYXltZW50PlxyXG4gICAgPC9jby1kaWFsb2c+XHJcbiAgYCxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtwcm92aWRlOiBTQ1JFRU5fQ09ORklHX0FEQVBURVJfQ09NUE9ORU5UX0lOVEVSRkFDRV9OQU1FLCB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUcmFuc2FjdGlvbkhlYWRlclBheW1lbnRDb21wb25lbnQpfVxyXG4gIF0sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25IZWFkZXJQYXltZW50Q29tcG9uZW50IGV4dGVuZHMgVHJhbnNhY3Rpb25CYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHB1YmxpYyByZWFkb25seSBpY29uczogdHlwZW9mIEljb24gPSBJY29uO1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby10cmFuc2FjdGlvbi1oZWFkZXItcGF5bWVudFwiKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBwYXltZW50TWV0aG9kczogUGF5bWVudFZpZXdtb2RlbFtdID0gW107XHJcbiAgcHVibGljIGRlcG9zaXRQYXltZW50czogRGVwb3NpdFBheW1lbnRWaWV3TW9kZWxbXSA9IFtdO1xyXG4gIHB1YmxpYyBzaG93RGlhbG9nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHNob3dQYXltZW50RGlhbG9nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHNob3dMb2FkZXJEZXBvc2l0UGF5bWVudHM6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIHB1YmxpYyBwYWlkOiBudW1iZXIgPSAwO1xyXG4gIHB1YmxpYyB0b1BheTogbnVtYmVyID0gMDtcclxuICBwdWJsaWMgcmVtYWluaW5nVG9QYXk6IG51bWJlciA9IDA7XHJcbiAgcHVibGljIHNob3dSZW1haW5pbmdQYXltZW50OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHByaXZhdGUgX3N1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlOiBUcmFuc2FjdGlvbkV2ZW50U2VydmljZSxcclxuICAgIHB1YmxpYyBzZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZSxcclxuICAgIHB1YmxpYyB0cmFuc2FjdGlvblNjcmVlbkNvbmZpZ3VyYXRpb25TZXJ2aWNlOiBUcmFuc2FjdGlvblNjcmVlbkNvbmZpZ3VyYXRpb25TZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGRpY3Rpb25hcnlTZXJ2aWNlOiBEaWN0aW9uYXJ5U2VydmljZSxcclxuICAgIHByb3RlY3RlZCBpbWFnZVNlcnZpY2U6IFRyYW5zYWN0aW9uSW1hZ2VTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByaXZhdGUgX3BheW1lbnRDb25uZWN0b3JTZXJ2aWNlOiBUcmFuc2FjdGlvblBheW1lbnRDb25uZWN0b3JTZXJ2aWNlLFxyXG4gICkge1xyXG4gICAgc3VwZXIodHJhbnNhY3Rpb25FdmVudFNlcnZpY2UsIGljb25DYWNoZVNlcnZpY2UsIHRyYW5zYWN0aW9uU2NyZWVuQ29uZmlndXJhdGlvblNlcnZpY2UsIGltYWdlU2VydmljZSwgZGljdGlvbmFyeVNlcnZpY2UsIHNlcnZpY2UsIGNoYW5nZURldGVjdG9yKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgIHRoaXMuX3N1YnMucHVzaChcclxuICAgICAgICB0aGlzLnRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlLnRyYW5zYWN0aW9uUGF5bWVudERvbmUuc3Vic2NyaWJlKCgpID0+IHRoaXMuX2dldERlcG9zaXRQYXltZW50SW5mbygpKSxcclxuICAgICAgICB0aGlzLnRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlLmFjdGl2ZVJ1YnJpY0NoYW5nZS5zdWJzY3JpYmUoKHJ1YnJpYzogVHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnkpID0+IHtcclxuICAgICAgICAgIHRoaXMuc2hvd1JlbWFpbmluZ1BheW1lbnQgPSBydWJyaWMgPT09IFRyYW5zYWN0aW9uVHlwZUNhdGVnb3J5LlNhbGVzT3JkZXJEZWxpdmVyeU5vdGUgfHwgcnVicmljID09PSBUcmFuc2FjdGlvblR5cGVDYXRlZ29yeS5TYWxlc09yZGVySW52b2ljZTtcclxuICAgICAgICB9KVxyXG4gICAgKVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLl9zdWJzLmZvckVhY2gocyA9PiBzLnVuc3Vic2NyaWJlKCkpO1xyXG4gICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBvcGVuUGF5bWVudChldmVudDogTW91c2VFdmVudCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgaWYgKGF3YWl0IHRoaXMubG9ja1RyYW5zYWN0aW9uKCkpIHtcclxuICAgICAgdGhpcy5zaG93UGF5bWVudERpYWxvZyA9IHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgdHJhbnNhY3Rpb25TZXQoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLl9nZXREZXBvc2l0UGF5bWVudEluZm8oKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2dldERlcG9zaXRQYXltZW50SW5mbygpOiB2b2lkIHtcclxuICAgIHRoaXMuZGVwb3NpdFBheW1lbnRzLmxlbmd0aCA9IDA7XHJcbiAgICBpZiAodGhpcy50cmFuc2FjdGlvbkluZm8gJiYgdGhpcy50cmFuc2FjdGlvbkluZm8uaWQgJiYgdGhpcy50cmFuc2FjdGlvbkluZm8udXVpZCkge1xyXG4gICAgICB0aGlzLl9wYXltZW50Q29ubmVjdG9yU2VydmljZS5nZXREZXBvc2l0UGF5bWVudEluZm8odGhpcy50cmFuc2FjdGlvbkluZm8udXVpZCkudGhlbigoaW5mbzogVHJhbnNhY3Rpb25EZXBvc2l0UGF5bWVudEluZm8pID0+IHtcclxuICAgICAgICBpZiAoaW5mbykge1xyXG4gICAgICAgICAgdGhpcy50b1BheSA9IGluZm8uZGVwb3NpdEFtb3VudDtcclxuICAgICAgICAgIHRoaXMucGFpZCA9IGluZm8uZGVwb3NpdFBheW1lbnRBbW91bnRUb3RhbDtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
227
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24taGVhZGVyLXBheW1lbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvdHJhbnNhY3Rpb24taGVhZGVyL3RyYW5zYWN0aW9uLWhlYWRlci1wYXltZW50L3RyYW5zYWN0aW9uLWhlYWRlci1wYXltZW50LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFxQixpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMxSCxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQUNwRixPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDckUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFDeEUsT0FBTyxFQUFDLGtDQUFrQyxFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFJMUcsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDdEUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDbkYsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDbkYsT0FBTyxFQUFDLHFDQUFxQyxFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFFaEgsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sOENBQThDLENBQUM7QUFDckYsT0FBTyxFQUFDLDhDQUE4QyxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUEwSTVGLE1BQU0sT0FBTyxpQ0FBa0MsU0FBUSx3QkFBd0I7SUFvQjdFLFlBQ1MsdUJBQWdELEVBQ2hE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RTtvQkFDUixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7b0JBQ2hDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDO2lCQUM1QztZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDOzs7WUE5TUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSwrQkFBK0I7Z0JBQ3pDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnSVQ7Z0JBQ0QsU0FBUyxFQUFFO29CQUNULEVBQUMsT0FBTyxFQUFFLDhDQUE4QyxFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsaUNBQWlDLENBQUMsRUFBQztpQkFDNUg7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7OztZQTlJTyx1QkFBdUI7WUFOdkIsa0JBQWtCO1lBRGxCLGdCQUFnQjtZQVNoQixxQ0FBcUM7WUFIckMsaUJBQWlCO1lBRWpCLHVCQUF1QjtZQVh2QixpQkFBaUI7WUFLakIsa0NBQWtDOzs7d0JBdUp2QyxXQUFXLFNBQUMscUNBQXFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBmb3J3YXJkUmVmLCBIb3N0QmluZGluZywgT25EZXN0cm95LCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkJhc2VDb21wb25lbnR9IGZyb20gJy4uLy4uL2NvcmUvYmFzZS90cmFuc2FjdGlvbi1iYXNlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7SWNvbn0gZnJvbSAnLi4vLi4vLi4vZW51bS9pY29uLmVudW0nO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25QYXltZW50Q29ubmVjdG9yU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1wYXltZW50LWNvbm5lY3Rvci5zZXJ2aWNlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkRlcG9zaXRQYXltZW50SW5mb30gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3RyYW5zYWN0aW9uLWRlcG9zaXQtcGF5bWVudC1pbmZvLmJvJztcclxuaW1wb3J0IHtEZXBvc2l0UGF5bWVudFZpZXdNb2RlbH0gZnJvbSAnLi4vLi4vLi4vbW9kZWwvZGVwb3NpdC1wYXltZW50LXZpZXctbW9kZWwnO1xyXG5pbXBvcnQge1BheW1lbnRWaWV3bW9kZWx9IGZyb20gJy4uLy4uLy4uL21vZGVsL3BheW1lbnQudmlld21vZGVsJztcclxuaW1wb3J0IHtEaWN0aW9uYXJ5U2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS9kaWN0aW9uYXJ5LnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWV2ZW50LnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uSW1hZ2VTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWltYWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2NyZWVuQ29uZmlndXJhdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tc2NyZWVuLWNvbmZpZ3VyYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvblR5cGVDYXRlZ29yeX0gZnJvbSAnLi4vLi4vLi4vZW51bS90cmFuc2FjdGlvbi10eXBlLWNhdGVnb3J5LmVudW0nO1xyXG5pbXBvcnQge1NDUkVFTl9DT05GSUdfQURBUFRFUl9DT01QT05FTlRfSU5URVJGQUNFX05BTUV9IGZyb20gJ0Bjb2xpam5pdC9jb3JlY29tcG9uZW50c192MTInO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiY28tdHJhbnNhY3Rpb24taGVhZGVyLXBheW1lbnRcIixcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1wYXltZW50LXdyYXBwZXJcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1wYXltZW50LXdyYXBwZXItY29udGVudFwiIFtjbGFzcy5zaG93LXJlbWFpbmluZ109XCJzaG93UmVtYWluaW5nUGF5bWVudFwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1oZWFkZXItYmxvY2tcclxuICAgICAgICAgIFtmaXJzdEJsb2NrVGVtcGxhdGVdPVwiZmlyc3RCbG9ja1wiXHJcbiAgICAgICAgICBbc2Vjb25kQmxvY2tUZW1wbGF0ZV09XCJzZWNvbmRCbG9ja1wiXHJcbiAgICAgICAgICBbdGhpcmRCbG9ja1RlbXBsYXRlXT1cInRoaXJkQmxvY2tcIlxyXG4gICAgICAgICAgW2hpZGRlbkJsb2NrVGVtcGxhdGVdPVwiaGlkZGVuQmxvY2tcIlxyXG4gICAgICAgICAgKGhlYWRlckNsaWNrKT1cInNob3dEaWFsb2cgPSB0cnVlXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1oZWFkZXItYmxvY2s+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWhlYWRlci1ibG9jayAqbmdJZj1cInNob3dSZW1haW5pbmdQYXltZW50XCJcclxuICAgICAgICAgIFtmaXJzdEJsb2NrVGVtcGxhdGVdPVwiZmlyc3RCbG9ja1Jlc3RcIlxyXG4gICAgICAgICAgKGhlYWRlckNsaWNrKT1cInNob3dEaWFsb2cgPSB0cnVlXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1oZWFkZXItYmxvY2s+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8bmctdGVtcGxhdGUgI2ZpcnN0QmxvY2s+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1oZWFkZXItYmxvY2stcm93XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1pY29uXCIgW3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3RdPVwiY2ZnTmFtZXMuSGVhZGVyUGF5bWVudEF2YXRhckhlYWRlclwiIHNjcmVlbkNvbmZpZ05hdGl2ZUVsZW1lbnQ+XHJcbiAgICAgICAgICA8Y28taWNvbiBjbGFzcz1cImhlYWRlci1vcmRlci1pY29uXCJcclxuICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzaG93RGlhbG9nID0gdHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkNyZWRpdENhcmRSZWd1bGFyKVwiPlxyXG4gICAgICAgICAgPC9jby1pY29uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItZG93bnBheW1lbnQtYW1vdW50LXdyYXBwZXJcIiBbc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdF09XCJjZmdOYW1lcy5IZWFkZXJQYXltZW50QW1vdW50SGVhZGVyXCIgc2NyZWVuQ29uZmlnTmF0aXZlRWxlbWVudD5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItZGVwb3NpdC1sYWJlbCBjby10cmFuc2FjdGlvbi1sYWJlbFwiIFt0ZXh0Q29udGVudF09XCInRE9XTlBBWU1FTlRfQU1PVU5UJyB8IGxvY2FsaXplXCI+PC9kaXY+XHJcbiAgICAgICAgICA8Y28tdHJhbnNhY3Rpb24taGVhZGVyLWRlcG9zaXQtYW1vdW50IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLWRlcG9zaXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdF09XCJjZmdOYW1lcy5IZWFkZXJQYXltZW50QW1vdW50SGVhZGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RyYW5zYWN0aW9uXT1cInRyYW5zYWN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RlZmF1bHRFZGl0TW9kZV09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzaG93TGFiZWxdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgPjwvY28tdHJhbnNhY3Rpb24taGVhZGVyLWRlcG9zaXQtYW1vdW50PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8bmctdGVtcGxhdGUgI2ZpcnN0QmxvY2tSZXN0PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLWJsb2NrLXJvd1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1oZWFkZXItaWNvblwiIFtzY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0XT1cImNmZ05hbWVzLkhlYWRlclBheW1lbnRBdmF0YXJIZWFkZXJcIiBzY3JlZW5Db25maWdOYXRpdmVFbGVtZW50PlxyXG4gICAgICAgICAgPGNvLWljb24gY2xhc3M9XCJoZWFkZXItb3JkZXItaWNvblwiXHJcbiAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2hvd1BheW1lbnREaWFsb2cgPSB0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuQ3JlZGl0Q2FyZFJlZ3VsYXJDaGVjaylcIj5cclxuICAgICAgICAgIDwvY28taWNvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyLXJlbWFpbmluZy1wYXltZW50LWFtb3VudC13cmFwcGVyXCIgW3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3RdPVwiY2ZnTmFtZXMuSGVhZGVyUGF5bWVudEFtb3VudEhlYWRlclwiIHNjcmVlbkNvbmZpZ05hdGl2ZUVsZW1lbnQ+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyLWRlcG9zaXQtbGFiZWwgY28tdHJhbnNhY3Rpb24tbGFiZWxcIiBbdGV4dENvbnRlbnRdPVwiJ1JFTUFJTklOR19QQVlNRU5UJyB8IGxvY2FsaXplXCI+PC9kaXY+XHJcbiAgICAgICAgICA8Y28tdHJhbnNhY3Rpb24taGVhZGVyLXJlbWFpbmluZy1hbW91bnQgY2xhc3M9XCJ0cmFuc2FjdGlvbi1oZWFkZXItcmVtYWluaW5nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdF09XCJjZmdOYW1lcy5IZWFkZXJQYXltZW50QW1vdW50SGVhZGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHJhbnNhY3Rpb25VdWlkXT1cInRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uSW5mby51dWlkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocmVtYWluaW5nQW1vdW50Q2hhbmdlKT1cInJlbWFpbmluZ1RvUGF5ID0gJGV2ZW50XCJcclxuICAgICAgICAgID48L2NvLXRyYW5zYWN0aW9uLWhlYWRlci1yZW1haW5pbmctYW1vdW50PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8bmctdGVtcGxhdGUgI3NlY29uZEJsb2NrPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLWJsb2NrLXJvd1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItZG93bnBheW1lbnQtcGVyY2VudGFnZS13cmFwcGVyXCIgW3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3RdPVwiY2ZnTmFtZXMuSGVhZGVyUGF5bWVudFBlcmNlbnRhZ2VIZWFkZXJcIiBzY3JlZW5Db25maWdOYXRpdmVFbGVtZW50PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlci1kZXBvc2l0LWxhYmVsIGNvLXRyYW5zYWN0aW9uLWxhYmVsXCIgW3RleHRDb250ZW50XT1cIiclJyB8IGxvY2FsaXplXCI+PC9kaXY+XHJcbiAgICAgICAgICA8Y28tdHJhbnNhY3Rpb24taGVhZGVyLWRlcG9zaXQtcGVyY2VudGFnZSBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1kZXBvc2l0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0XT1cImNmZ05hbWVzLkhlYWRlclBheW1lbnRQZXJjZW50YWdlSGVhZGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0cmFuc2FjdGlvbkluZm9dPVwidHJhbnNhY3Rpb25JbmZvXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkZWZhdWx0RWRpdE1vZGVdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3Nob3dMYWJlbF09XCJmYWxzZVwiXHJcbiAgICAgICAgICA+PC9jby10cmFuc2FjdGlvbi1oZWFkZXItZGVwb3NpdC1wZXJjZW50YWdlPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8bmctdGVtcGxhdGUgI3RoaXJkQmxvY2s+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1oZWFkZXItYmxvY2stcm93XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlci1wYXltZW50LWJ1dHRvbi13cmFwcGVyXCIgKGNsaWNrKT1cIm9wZW5QYXltZW50KCRldmVudClcIiBbc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdF09XCJjZmdOYW1lcy5IZWFkZXJQYXltZW50UGF5bWVudEhlYWRlclwiIHNjcmVlbkNvbmZpZ05hdGl2ZUVsZW1lbnQ+XHJcbiAgICAgICAgICAgIDxjby1pY29uIGNsYXNzPVwiaGVhZGVyLW9yZGVyLWljb25cIiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkNyZWRpdENhcmRSZWd1bGFyQ2hlY2spXCI+XHJcbiAgICAgICAgICAgIDwvY28taWNvbj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzcGFjZXJcIj48L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJwYXltZW50LXBheWVkLXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgPCEtLWRpdiBjbGFzcz1cImhlYWRlci1wYXllZC1sYWJlbCBjby10cmFuc2FjdGlvbi1sYWJlbFwiIFt0ZXh0Q29udGVudF09XCInRE9XTlBBWU1FTlRfRE9ORScgfCBsb2NhbGl6ZVwiPjwvZGl2LS0+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicGF5bWVudC1wYWlkXCIgW2NsYXNzLnN1Y2Nlc3NdPVwicGFpZCA+PSB0b1BheVwiIFt0ZXh0Q29udGVudF09XCIocGFpZCB8IGNvQ3VycmVuY3kpIHx8IDBcIj48L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwhLS1jby10cmFuc2FjdGlvbi1oZWFkZXItcGF5bWVudC1idXR0b24gKm5nSWY9XCJ0cmFuc2FjdGlvbkluZm8udHJhbnNhY3Rpb25LaW5kICE9PSB0cmFuc0tpbmQuUHVyY2hhc2VPcmRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0cmFuc2FjdGlvbkluZm9dPVwidHJhbnNhY3Rpb25JbmZvXCJcclxuICAgICAgICAgID48L2NvLXRyYW5zYWN0aW9uLWhlYWRlci1wYXltZW50LWJ1dHRvbi0tPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8bmctdGVtcGxhdGUgI2hpZGRlbkJsb2NrPlxyXG4gICAgICA8IS0tZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLWJsb2NrLXJvd1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItYnJhbmNoLWxhYmVsIGNvLXRyYW5zYWN0aW9uLWxhYmVsXCIgW3RleHRDb250ZW50XT1cIidCUkFOQ0gnIHwgbG9jYWxpemVcIj48L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYnJhbmNoLWxhYmVsXCIgW3RleHRDb250ZW50XT1cInRyYW5zYWN0aW9uSW5mby5icmFuY2g/LmZhbWlseU5hbWVcIj48L2Rpdj5cclxuICAgICAgPC9kaXYtLT5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8Y28tdHJhbnNhY3Rpb24taGVhZGVyLXBvcHVwICpuZ0lmPVwic2hvd0RpYWxvZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthY3RpdmVDYXRlZ29yeURlc2NyaXB0aW9uXT1cIidQQVlNRU5UX0lORk9STUFUSU9OJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWxhdGlvbl09XCJyZWxhdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0cmFuc2FjdGlvbl09XCJ0cmFuc2FjdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbG9zZUNsaWNrKT1cInNob3dEaWFsb2cgPSBmYWxzZVwiPjwvY28tdHJhbnNhY3Rpb24taGVhZGVyLXBvcHVwPlxyXG48IS0tXHJcbiAgICA8Y28tZGlhbG9nIGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLXBheW1lbnQtZGlhbG9nXCIgW2hlYWRlclRlbXBsYXRlXT1cImhlYWRlclRlbXBsYXRlXCIgKm5nSWY9XCJzaG93RGlhbG9nXCIgKGNsb3NlQ2xpY2spPVwic2hvd0RpYWxvZyA9IGZhbHNlXCI+XHJcbiAgICAgIDxuZy10ZW1wbGF0ZSAjaGVhZGVyVGVtcGxhdGU+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy1oZWFkZXItdGl0bGVcIiBbdGV4dENvbnRlbnRdPVwiJ1BBWU1FTlRfSU5GT1JNQVRJT04nIHwgbG9jYWxpemVcIj48L2Rpdj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24taGVhZGVyLWJsb2NrXHJcbiAgICAgICAgICBbaGVhZGVyQmxvY2tUZW1wbGF0ZV09XCJoZWFkZXJCbG9ja1wiXHJcbiAgICAgICAgICBbZmlyc3RCbG9ja1RlbXBsYXRlXT1cImZpcnN0QmxvY2tcIlxyXG4gICAgICAgICAgW3NlY29uZEJsb2NrVGVtcGxhdGVdPVwic2Vjb25kQmxvY2tcIlxyXG4gICAgICAgID5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWhlYWRlci1ibG9jaz5cclxuICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgPGRpdiBjbGFzcz1cInBheW1lbnQtZGlhbG9nLXNlY3Rpb25cIj5cclxuICAgICAgICA8Y28tZGVwb3NpdC1wYXltZW50IFticmFuY2hdPVwidHJhbnNhY3Rpb25JbmZvLmJyYW5jaD8ucmVsYXRpb25OclwiIFt0cmFuc2FjdGlvblV1aWRdPVwidHJhbnNhY3Rpb25JbmZvLnV1aWRcIj48L2NvLWRlcG9zaXQtcGF5bWVudD5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2NvLWRpYWxvZz5cclxuLS0+XHJcbiAgICA8Y28tZGlhbG9nIGNsYXNzPVwicGF5bWVudC1kaWFsb2dcIiBbbW9kYWxdPVwidHJ1ZVwiIFtoZWFkZXJUZW1wbGF0ZV09XCJoZWFkZXJUZW1wbGF0ZVwiICpuZ0lmPVwic2hvd1BheW1lbnREaWFsb2dcIiAoY2xvc2VDbGljayk9XCJzaG93UGF5bWVudERpYWxvZyA9IGZhbHNlXCI+XHJcbiAgICAgIDxuZy10ZW1wbGF0ZSAjaGVhZGVyVGVtcGxhdGU+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy13cmFwcGVyLXBvcHVwLXRpdGxlXCI+XHJcbiAgICAgICAgICA8Y28taWNvbiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkNyZWRpdENhcmRSZWd1bGFyQ2hlY2spXCI+PC9jby1pY29uPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy1oZWFkZXItdGl0bGVcIiBbdGV4dENvbnRlbnRdPVwiJ1BBWU1FTlRfTUVUSE9EJyB8IGxvY2FsaXplXCI+PC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDxjby1wYXltZW50XHJcbiAgICAgICAgW3RyYW5zSWRdPVwidHJhbnNhY3Rpb25JbmZvLmlkXCJcclxuICAgICAgICBbYnJhbmNoXT1cInRyYW5zYWN0aW9uSW5mby5icmFuY2g/LnJlbGF0aW9uTnJcIlxyXG4gICAgICAgIFt0cmFuc2FjdGlvblV1aWRdPVwidHJhbnNhY3Rpb25JbmZvLnV1aWRcIlxyXG4gICAgICAgIFthbW91bnRdPVwic2hvd1JlbWFpbmluZ1BheW1lbnQgPyByZW1haW5pbmdUb1BheSA6IHRvUGF5XCJcclxuICAgICAgICBbcmVtYWluaW5nUGF5bWVudF09XCJzaG93UmVtYWluaW5nUGF5bWVudFwiXHJcbiAgICAgICAgW2N1cnJlbmN5SWRdPVwidHJhbnNhY3Rpb25JbmZvLmN1cnJlbmN5SWRcIlxyXG4gICAgICAgIFtkb05vdEZldGNoQW1vdW50VG9QYXlGb3JSZW1haW5pbmddPVwidHJ1ZVwiXHJcbiAgICAgID48L2NvLXBheW1lbnQ+XHJcbiAgICA8L2NvLWRpYWxvZz5cclxuICBgLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge3Byb3ZpZGU6IFNDUkVFTl9DT05GSUdfQURBUFRFUl9DT01QT05FTlRfSU5URVJGQUNFX05BTUUsIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRyYW5zYWN0aW9uSGVhZGVyUGF5bWVudENvbXBvbmVudCl9XHJcbiAgXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkhlYWRlclBheW1lbnRDb21wb25lbnQgZXh0ZW5kcyBUcmFuc2FjdGlvbkJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgcHVibGljIHJlYWRvbmx5IGljb25zOiB0eXBlb2YgSWNvbiA9IEljb247XHJcblxyXG4gIEBIb3N0QmluZGluZyhcImNsYXNzLmNvLXRyYW5zYWN0aW9uLWhlYWRlci1wYXltZW50XCIpXHJcbiAgcHVibGljIHNob3dDbGFzcygpIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHBheW1lbnRNZXRob2RzOiBQYXltZW50Vmlld21vZGVsW10gPSBbXTtcclxuICBwdWJsaWMgZGVwb3NpdFBheW1lbnRzOiBEZXBvc2l0UGF5bWVudFZpZXdNb2RlbFtdID0gW107XHJcbiAgcHVibGljIHNob3dEaWFsb2c6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc2hvd1BheW1lbnREaWFsb2c6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc2hvd0xvYWRlckRlcG9zaXRQYXltZW50czogYm9vbGVhbiA9IHRydWU7XHJcbiAgcHVibGljIHBhaWQ6IG51bWJlciA9IDA7XHJcbiAgcHVibGljIHRvUGF5OiBudW1iZXIgPSAwO1xyXG4gIHB1YmxpYyByZW1haW5pbmdUb1BheTogbnVtYmVyID0gMDtcclxuICBwdWJsaWMgc2hvd1JlbWFpbmluZ1BheW1lbnQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgcHJpdmF0ZSBfc3ViczogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgdHJhbnNhY3Rpb25FdmVudFNlcnZpY2U6IFRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlLFxyXG4gICAgcHVibGljIHNlcnZpY2U6IFRyYW5zYWN0aW9uU2VydmljZSxcclxuICAgIHB1YmxpYyBpY29uQ2FjaGVTZXJ2aWNlOiBJY29uQ2FjaGVTZXJ2aWNlLFxyXG4gICAgcHVibGljIHRyYW5zYWN0aW9uU2NyZWVuQ29uZmlndXJhdGlvblNlcnZpY2U6IFRyYW5zYWN0aW9uU2NyZWVuQ29uZmlndXJhdGlvblNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgZGljdGlvbmFyeVNlcnZpY2U6IERpY3Rpb25hcnlTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGltYWdlU2VydmljZTogVHJhbnNhY3Rpb25JbWFnZVNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSBfcGF5bWVudENvbm5lY3RvclNlcnZpY2U6IFRyYW5zYWN0aW9uUGF5bWVudENvbm5lY3RvclNlcnZpY2UsXHJcbiAgKSB7XHJcbiAgICBzdXBlcih0cmFuc2FjdGlvbkV2ZW50U2VydmljZSwgaWNvbkNhY2hlU2VydmljZSwgdHJhbnNhY3Rpb25TY3JlZW5Db25maWd1cmF0aW9uU2VydmljZSwgaW1hZ2VTZXJ2aWNlLCBkaWN0aW9uYXJ5U2VydmljZSwgc2VydmljZSwgY2hhbmdlRGV0ZWN0b3IpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gICAgdGhpcy5fc3Vicy5wdXNoKFxyXG4gICAgICAgIHRoaXMudHJhbnNhY3Rpb25FdmVudFNlcnZpY2UudHJhbnNhY3Rpb25QYXltZW50RG9uZS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5fZ2V0RGVwb3NpdFBheW1lbnRJbmZvKCkpLFxyXG4gICAgICAgIHRoaXMudHJhbnNhY3Rpb25FdmVudFNlcnZpY2UuYWN0aXZlUnVicmljQ2hhbmdlLnN1YnNjcmliZSgocnVicmljOiBUcmFuc2FjdGlvblR5cGVDYXRlZ29yeSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5zaG93UmVtYWluaW5nUGF5bWVudCA9IHJ1YnJpYyA9PT0gVHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnkuU2FsZXNPcmRlckRlbGl2ZXJ5Tm90ZSB8fCBydWJyaWMgPT09IFRyYW5zYWN0aW9uVHlwZUNhdGVnb3J5LlNhbGVzT3JkZXJJbnZvaWNlO1xyXG4gICAgICAgIH0pXHJcbiAgICApXHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMuX3N1YnMuZm9yRWFjaChzID0+IHMudW5zdWJzY3JpYmUoKSk7XHJcbiAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIG9wZW5QYXltZW50KGV2ZW50OiBNb3VzZUV2ZW50KTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICBpZiAoYXdhaXQgdGhpcy5sb2NrVHJhbnNhY3Rpb24oKSkge1xyXG4gICAgICB0aGlzLnNob3dQYXltZW50RGlhbG9nID0gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyB0cmFuc2FjdGlvblNldCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMuX2dldERlcG9zaXRQYXltZW50SW5mbygpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZ2V0RGVwb3NpdFBheW1lbnRJbmZvKCk6IHZvaWQge1xyXG4gICAgdGhpcy5kZXBvc2l0UGF5bWVudHMubGVuZ3RoID0gMDtcclxuICAgIGlmICh0aGlzLnRyYW5zYWN0aW9uSW5mbyAmJiB0aGlzLnRyYW5zYWN0aW9uSW5mby5pZCAmJiB0aGlzLnRyYW5zYWN0aW9uSW5mby51dWlkKSB7XHJcbiAgICAgIHRoaXMuX3BheW1lbnRDb25uZWN0b3JTZXJ2aWNlLmdldERlcG9zaXRQYXltZW50SW5mbyh0aGlzLnRyYW5zYWN0aW9uSW5mby51dWlkKS50aGVuKChpbmZvOiBUcmFuc2FjdGlvbkRlcG9zaXRQYXltZW50SW5mbykgPT4ge1xyXG4gICAgICAgIGlmIChpbmZvKSB7XHJcbiAgICAgICAgICB0aGlzLnRvUGF5ID0gaW5mby5kZXBvc2l0QW1vdW50O1xyXG4gICAgICAgICAgdGhpcy5wYWlkID0gaW5mby5kZXBvc2l0UGF5bWVudEFtb3VudFRvdGFsO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -9,6 +9,7 @@ export class TransactionPurchaseOrderFilterContentLogisticsComponent extends Tra
9
9
  this.deliveryMethodFields = { text: "description", value: "code" };
10
10
  this.warehouseFields = { text: "description", value: "warehouseNo" };
11
11
  this.sourceWarehouseFields = { text: "description", value: "warehouseNo" };
12
+ this.partDeliveryFields = { text: "description", value: "code" };
12
13
  }
13
14
  showClass() {
14
15
  return true;
@@ -20,6 +21,7 @@ export class TransactionPurchaseOrderFilterContentLogisticsComponent extends Tra
20
21
  this._setDeliveryMethods();
21
22
  this._setWarehouses();
22
23
  this._setSourceWarehouses();
24
+ this._setPartDelivery();
23
25
  }
24
26
  //Delivery Methods
25
27
  _setDeliveryMethods() {
@@ -39,6 +41,11 @@ export class TransactionPurchaseOrderFilterContentLogisticsComponent extends Tra
39
41
  this.sourceWarehouses = new FilterViewmodel(warehouses, this.sourceWarehouseFields).filterItems;
40
42
  });
41
43
  }
44
+ _setPartDelivery() {
45
+ this.transactionService.getYesNo("NL").then((partDelivery) => {
46
+ this.partDelivery = new FilterViewmodel(partDelivery, this.partDeliveryFields).filterItems;
47
+ });
48
+ }
42
49
  }
43
50
  TransactionPurchaseOrderFilterContentLogisticsComponent.decorators = [
44
51
  { type: Component, args: [{
@@ -72,15 +79,6 @@ TransactionPurchaseOrderFilterContentLogisticsComponent.decorators = [
72
79
  </co-transaction-filter-item>
73
80
  </div>
74
81
 
75
- <!--Geleverd-->
76
- <div class="filter-item-wrapper">
77
- <co-transaction-filter-historic-state [label]="'DELIVERED'"
78
- [(model)]="searchService.searchRequest.quantityDelivered"
79
- [mode]="modes.SelectListWithStringCollectionOutput">
80
- >
81
- </co-transaction-filter-historic-state>
82
- </div>
83
-
84
82
  <!--Gefactureerd-->
85
83
  <div class="filter-item-wrapper">
86
84
  <co-transaction-filter-historic-state [label]="'INVOICED'"
@@ -145,11 +143,11 @@ TransactionPurchaseOrderFilterContentLogisticsComponent.decorators = [
145
143
 
146
144
  <!--Deellevering-->
147
145
  <div class="filter-item-wrapper">
148
- <co-transaction-filter-historic-state [label]="'PART_DELIVERY'"
149
- [(model)]="searchService.searchRequest.partialDelivery"
150
- [mode]="modes.CheckboxToText">
151
- >
152
- </co-transaction-filter-historic-state>
146
+ <co-transaction-filter-item [placeholder]="'PART_DELIVERY'"
147
+ [collection]="partDelivery"
148
+ [(model)]="searchService.searchRequest.partialDelivery"
149
+ [mode]="modes.Filterlist">
150
+ </co-transaction-filter-item>
153
151
  </div>
154
152
 
155
153
  <!--Magazijn-->
@@ -197,4 +195,4 @@ TransactionPurchaseOrderFilterContentLogisticsComponent.decorators = [
197
195
  TransactionPurchaseOrderFilterContentLogisticsComponent.propDecorators = {
198
196
  showClass: [{ type: HostBinding, args: ["class.co-transaction-search-filter-content",] }]
199
197
  };
200
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tcHVyY2hhc2Utb3JkZXItZmlsdGVyLWNvbnRlbnQtbG9naXN0aWNzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLXNlYXJjaC90cmFuc2FjdGlvbi1maWx0ZXItY29udGVudC9wdXJjaGFzZS1vcmRlci1maWx0ZXItY29udGVudC90cmFuc2FjdGlvbi1wdXJjaGFzZS1vcmRlci1maWx0ZXItY29udGVudC1sb2dpc3RpY3MvdHJhbnNhY3Rpb24tcHVyY2hhc2Utb3JkZXItZmlsdGVyLWNvbnRlbnQtbG9naXN0aWNzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFdBQVcsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUdyRCxPQUFPLEVBQUMsY0FBYyxFQUF1QixlQUFlLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRyxPQUFPLEVBQUMscUNBQXFDLEVBQUMsTUFBTSxpRUFBaUUsQ0FBQztBQTBKdEgsTUFBTSxPQUFPLHVEQUF3RCxTQUFRLHFDQUFxQztJQXhKbEg7O1FBeUprQixVQUFLLEdBQTBCLGNBQWMsQ0FBQztRQU92RCxvQkFBZSxHQUFHLEVBQUUsQ0FBQztRQUNyQix5QkFBb0IsR0FBb0IsRUFBQyxJQUFJLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUMsQ0FBQztRQUc3RSxvQkFBZSxHQUFvQixFQUFDLElBQUksRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBQyxDQUFDO1FBRy9FLDBCQUFxQixHQUFvQixFQUFDLElBQUksRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBQyxDQUFDO0lBZ0M5RixDQUFDO0lBM0NRLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFXTSxXQUFXLENBQUMsR0FBUTtRQUN6QixJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFFUyxlQUFlO1FBQ3ZCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRUQsa0JBQWtCO0lBQ1YsbUJBQW1CO1FBQ3pCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLGVBQWlDLEVBQUUsRUFBRTtZQUN0RixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksZUFBZSxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxXQUFXLENBQUM7UUFDckcsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsWUFBWTtJQUNKLGNBQWM7UUFDcEIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGFBQWEsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLFVBQXVCLEVBQUUsRUFBRTtZQUN2RSxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksZUFBZSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsV0FBVyxDQUFDO1FBQ3RGLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELG1CQUFtQjtJQUNYLG9CQUFvQjtRQUMxQixJQUFJLENBQUMsa0JBQWtCLENBQUMsYUFBYSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsVUFBdUIsRUFBRSxFQUFFO1lBQ3ZFLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLGVBQWUsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUMsV0FBVyxDQUFDO1FBQ2xHLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7O1lBdE1GLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsd0RBQXdEO2dCQUNsRSxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvSlQ7YUFDRjs7O3dCQUlFLFdBQVcsU0FBQyw0Q0FBNEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSG9zdEJpbmRpbmd9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0RlbGl2ZXJ5TWV0aG9kfSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvZGVsaXZlcnktbWV0aG9kLmJvJztcclxuaW1wb3J0IHtXYXJlaG91c2V9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC93YXJlaG91c2UuYm8nO1xyXG5pbXBvcnQge0ZpbHRlckl0ZW1Nb2RlLCBGaWx0ZXJJdGVtVmlld21vZGVsLCBGaWx0ZXJWaWV3bW9kZWx9IGZyb20gJ0Bjb2xpam5pdC9jb3JlY29tcG9uZW50c192MTInO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uRmlsdGVyQ29udGVudEJhc2VDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uLy4uL2NvcmUvYmFzZS90cmFuc2FjdGlvbi1maWx0ZXItY29udGVudC1iYXNlLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2NvLXRyYW5zYWN0aW9uLXB1cmNoYXNlLW9yZGVyLWZpbHRlci1jb250ZW50LWxvZ2lzdGljcycsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1maWx0ZXItY29udGVudC1sb2dpc3RpY3Mtd3JhcHBlciB0cmFuc2FjdGlvbi1maWx0ZXItY29udGVudC13cmFwcGVyXCI+XHJcblxyXG4gICAgICA8IS0tQmV2ZXN0aWdkZSBsZXZlcmRhdHVtLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtIFtwbGFjZWhvbGRlcl09XCInQ09ORklSTUVEX0RFTElWRVJZX0RBVEUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwic2VhcmNoU2VydmljZS5zZWFyY2hSZXF1ZXN0LmNvbmZpcm1lZERlbGl2ZXJ5RGF0ZVJhbmdlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVdPVwibW9kZXMuRGF0ZVJhbmdlRmllbGRcIj5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1TZXJpZW51bW1lciAtLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0gW3BsYWNlaG9sZGVyXT1cIidTRVJJQUxfTlVNQkVSJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cInNlYXJjaFNlcnZpY2Uuc2VhcmNoUmVxdWVzdC5zZXJpYWxOdW1iZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbW9kZV09XCJtb2Rlcy5UZXh0RmllbGRcIlxyXG4gICAgICAgID5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1CYXRjaG51bW1lciAtLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0gW3BsYWNlaG9sZGVyXT1cIidCQVRDSF9OVU1CRVInXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwic2VhcmNoU2VydmljZS5zZWFyY2hSZXF1ZXN0LmJhdGNoTnVtYmVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVdPVwibW9kZXMuVGV4dEZpZWxkXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbT5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8IS0tR2VsZXZlcmQtLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWhpc3RvcmljLXN0YXRlIFtsYWJlbF09XCInREVMSVZFUkVEJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJzZWFyY2hTZXJ2aWNlLnNlYXJjaFJlcXVlc3QucXVhbnRpdHlEZWxpdmVyZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVdPVwibW9kZXMuU2VsZWN0TGlzdFdpdGhTdHJpbmdDb2xsZWN0aW9uT3V0cHV0XCI+XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1maWx0ZXItaGlzdG9yaWMtc3RhdGU+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLUdlZmFjdHVyZWVyZC0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWl0ZW0td3JhcHBlclwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItaGlzdG9yaWMtc3RhdGUgW2xhYmVsXT1cIidJTlZPSUNFRCdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwic2VhcmNoU2VydmljZS5zZWFyY2hSZXF1ZXN0LnF1YW50aXR5SW52b2ljZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVdPVwibW9kZXMuU2VsZWN0TGlzdFdpdGhTdHJpbmdDb2xsZWN0aW9uT3V0cHV0XCI+XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1maWx0ZXItaGlzdG9yaWMtc3RhdGU+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLUJpbm5lbmdlbWVsZCAvIEdlbGV2ZXJkIC0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWl0ZW0td3JhcHBlclwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItaGlzdG9yaWMtc3RhdGUgW2xhYmVsXT1cIidSRUNFSVZFRF9ERUxJVkVSRUQnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cInNlYXJjaFNlcnZpY2Uuc2VhcmNoUmVxdWVzdC5xdWFudGl0eVJlY2VpdmVkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttb2RlXT1cIm1vZGVzLlNlbGVjdExpc3RXaXRoU3RyaW5nQ29sbGVjdGlvbk91dHB1dFwiPlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgIDwvY28tdHJhbnNhY3Rpb24tZmlsdGVyLWhpc3RvcmljLXN0YXRlPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1CZXZlc3RpZ2QtLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWhpc3RvcmljLXN0YXRlIFtsYWJlbF09XCInQ09ORklSTUVEJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJzZWFyY2hTZXJ2aWNlLnNlYXJjaFJlcXVlc3QucXVhbnRpdHlDb25maXJtZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVdPVwibW9kZXMuU2VsZWN0TGlzdFdpdGhTdHJpbmdDb2xsZWN0aW9uT3V0cHV0XCI+XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1maWx0ZXItaGlzdG9yaWMtc3RhdGU+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLUFhbmtvbXN0ZGF0dW0tLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0gW3BsYWNlaG9sZGVyXT1cIidBUlJJVkFMX0RBVEUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwic2VhcmNoU2VydmljZS5zZWFyY2hSZXF1ZXN0LmFycml2YWxEYXRlUmFuZ2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbW9kZV09XCJtb2Rlcy5EYXRlUmFuZ2VGaWVsZFwiPlxyXG4gICAgICAgIDwvY28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLVRvZWdld2V6ZW4tLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWhpc3RvcmljLXN0YXRlIFtsYWJlbF09XCInQUxMT0NBVEVEJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJzZWFyY2hTZXJ2aWNlLnNlYXJjaFJlcXVlc3QucXVhbnRpdHlBbGxvY2F0ZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVdPVwibW9kZXMuU2VsZWN0TGlzdFdpdGhTdHJpbmdDb2xsZWN0aW9uT3V0cHV0XCI+XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1maWx0ZXItaGlzdG9yaWMtc3RhdGU+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLVRlIHBpY2tlbi0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWl0ZW0td3JhcHBlclwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItaGlzdG9yaWMtc3RhdGUgW2xhYmVsXT1cIidUT19CRV9QSUNLRUQnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cInNlYXJjaFNlcnZpY2Uuc2VhcmNoUmVxdWVzdC5xdWFudGl0eVRvQmVQaWNrZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVdPVwibW9kZXMuU2VsZWN0TGlzdFdpdGhTdHJpbmdDb2xsZWN0aW9uT3V0cHV0XCI+XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1maWx0ZXItaGlzdG9yaWMtc3RhdGU+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLUdlcGlja2VkLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1oaXN0b3JpYy1zdGF0ZSBbbGFiZWxdPVwiJ1BJQ0tFRCdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwic2VhcmNoU2VydmljZS5zZWFyY2hSZXF1ZXN0LnF1YW50aXR5UGlja2VkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttb2RlXT1cIm1vZGVzLlNlbGVjdExpc3RXaXRoU3RyaW5nQ29sbGVjdGlvbk91dHB1dFwiPlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgIDwvY28tdHJhbnNhY3Rpb24tZmlsdGVyLWhpc3RvcmljLXN0YXRlPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1EZWVsbGV2ZXJpbmctLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWhpc3RvcmljLXN0YXRlIFtsYWJlbF09XCInUEFSVF9ERUxJVkVSWSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwic2VhcmNoU2VydmljZS5zZWFyY2hSZXF1ZXN0LnBhcnRpYWxEZWxpdmVyeVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbW9kZV09XCJtb2Rlcy5DaGVja2JveFRvVGV4dFwiPlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgIDwvY28tdHJhbnNhY3Rpb24tZmlsdGVyLWhpc3RvcmljLXN0YXRlPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1NYWdhemlqbi0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWl0ZW0td3JhcHBlclwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbSBbcGxhY2Vob2xkZXJdPVwiJ1dBUkVIT1VTRSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJ3YXJlaG91c2VzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwic2VhcmNoU2VydmljZS5zZWFyY2hSZXF1ZXN0LndhcmVob3VzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttb2RlXT1cIm1vZGVzLkZpbHRlcmxpc3RcIj5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1Ccm9uIG1hZ2F6aWpuLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtIFtwbGFjZWhvbGRlcl09XCInU09VUkNFX1dBUkVIT1VTRSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJzZWFyY2hTZXJ2aWNlLnNlYXJjaFJlcXVlc3Quc291cmNlV2FyZWhvdXNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVdPVwibW9kZXMuRmlsdGVybGlzdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xsZWN0aW9uXT1cInNvdXJjZVdhcmVob3VzZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwibW9kZWxDaGFuZ2UoJGV2ZW50KVwiPlxyXG4gICAgICAgIDwvY28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLUxldmVybWV0aG9kZS0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWl0ZW0td3JhcHBlclwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbSBbcGxhY2Vob2xkZXJdPVwiJ0RFTElWRVJZX01FVEhPRCdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJkZWxpdmVyeU1ldGhvZHNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJzZWFyY2hTZXJ2aWNlLnNlYXJjaFJlcXVlc3QucmFuZ2VEZWxpdmVyeU1ldGhvZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttb2RlXT1cIm1vZGVzLkZpbHRlcmxpc3RcIlxyXG4gICAgICAgID5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1MZXZlcmRhdHVtIGRlZmluaXRpZWYtLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0gW3BsYWNlaG9sZGVyXT1cIidERUxJVkVSWV9EQVRFX0ZJTkFMJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cInNlYXJjaFNlcnZpY2Uuc2VhcmNoUmVxdWVzdC5kZWxpdmVyeURhdGVEZWZpbml0aXZlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVdPVwibW9kZXMuQ2hlY2tib3hUb1RleHRcIj5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1VaXR2b2VyYmFhcjogdG9kbzogdnJhYWcgc3RhYXQgdWl0IHdhdCBoaWVybWVlIGJlZG9lbGQgd29yZHQuIERhYXJuYSBoaWVyIGFhbnZ1bGxlbiAtLT5cclxuICAgIDwvZGl2PlxyXG4gIGBcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uUHVyY2hhc2VPcmRlckZpbHRlckNvbnRlbnRMb2dpc3RpY3NDb21wb25lbnQgZXh0ZW5kcyBUcmFuc2FjdGlvbkZpbHRlckNvbnRlbnRCYXNlQ29tcG9uZW50IHtcclxuICBwdWJsaWMgcmVhZG9ubHkgbW9kZXM6IHR5cGVvZiBGaWx0ZXJJdGVtTW9kZSA9IEZpbHRlckl0ZW1Nb2RlO1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby10cmFuc2FjdGlvbi1zZWFyY2gtZmlsdGVyLWNvbnRlbnRcIilcclxuICBwdWJsaWMgc2hvd0NsYXNzKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZGVsaXZlcnlNZXRob2RzID0gW107XHJcbiAgcHVibGljIGRlbGl2ZXJ5TWV0aG9kRmllbGRzOiB7IHRleHQsIHZhbHVlIH0gPSB7dGV4dDogXCJkZXNjcmlwdGlvblwiLCB2YWx1ZTogXCJjb2RlXCJ9O1xyXG5cclxuICBwdWJsaWMgd2FyZWhvdXNlczogRmlsdGVySXRlbVZpZXdtb2RlbFtdO1xyXG4gIHB1YmxpYyB3YXJlaG91c2VGaWVsZHM6IHsgdGV4dCwgdmFsdWUgfSA9IHt0ZXh0OiBcImRlc2NyaXB0aW9uXCIsIHZhbHVlOiBcIndhcmVob3VzZU5vXCJ9O1xyXG5cclxuICBwdWJsaWMgc291cmNlV2FyZWhvdXNlczogRmlsdGVySXRlbVZpZXdtb2RlbFtdO1xyXG4gIHB1YmxpYyBzb3VyY2VXYXJlaG91c2VGaWVsZHM6IHsgdGV4dCwgdmFsdWUgfSA9IHt0ZXh0OiBcImRlc2NyaXB0aW9uXCIsIHZhbHVlOiBcIndhcmVob3VzZU5vXCJ9O1xyXG5cclxuICBwdWJsaWMgbW9kZWxDaGFuZ2UoYW55OiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGxvYWRDb2xsZWN0aW9ucygpOiB2b2lkIHtcclxuICAgIHRoaXMuX3NldERlbGl2ZXJ5TWV0aG9kcygpO1xyXG4gICAgdGhpcy5fc2V0V2FyZWhvdXNlcygpO1xyXG4gICAgdGhpcy5fc2V0U291cmNlV2FyZWhvdXNlcygpO1xyXG4gIH1cclxuXHJcbiAgLy9EZWxpdmVyeSBNZXRob2RzXHJcbiAgcHJpdmF0ZSBfc2V0RGVsaXZlcnlNZXRob2RzKCk6IHZvaWQge1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0RGVsaXZlcnlNZXRob2RzKCkudGhlbigoZGVsaXZlcnlNZXRob2RzOiBEZWxpdmVyeU1ldGhvZFtdKSA9PiB7XHJcbiAgICAgIHRoaXMuZGVsaXZlcnlNZXRob2RzID0gbmV3IEZpbHRlclZpZXdtb2RlbChkZWxpdmVyeU1ldGhvZHMsIHRoaXMuZGVsaXZlcnlNZXRob2RGaWVsZHMpLmZpbHRlckl0ZW1zO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvL1dhcmVob3VzZXNcclxuICBwcml2YXRlIF9zZXRXYXJlaG91c2VzKCk6IHZvaWQge1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0V2FyZWhvdXNlcygpLnRoZW4oKHdhcmVob3VzZXM6IFdhcmVob3VzZVtdKSA9PiB7XHJcbiAgICAgIHRoaXMud2FyZWhvdXNlcyA9IG5ldyBGaWx0ZXJWaWV3bW9kZWwod2FyZWhvdXNlcywgdGhpcy53YXJlaG91c2VGaWVsZHMpLmZpbHRlckl0ZW1zO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvL1NvdXJjZSBXYXJlaG91c2VzXHJcbiAgcHJpdmF0ZSBfc2V0U291cmNlV2FyZWhvdXNlcygpOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldFdhcmVob3VzZXMoKS50aGVuKCh3YXJlaG91c2VzOiBXYXJlaG91c2VbXSkgPT4ge1xyXG4gICAgICB0aGlzLnNvdXJjZVdhcmVob3VzZXMgPSBuZXcgRmlsdGVyVmlld21vZGVsKHdhcmVob3VzZXMsIHRoaXMuc291cmNlV2FyZWhvdXNlRmllbGRzKS5maWx0ZXJJdGVtcztcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
198
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tcHVyY2hhc2Utb3JkZXItZmlsdGVyLWNvbnRlbnQtbG9naXN0aWNzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLXNlYXJjaC90cmFuc2FjdGlvbi1maWx0ZXItY29udGVudC9wdXJjaGFzZS1vcmRlci1maWx0ZXItY29udGVudC90cmFuc2FjdGlvbi1wdXJjaGFzZS1vcmRlci1maWx0ZXItY29udGVudC1sb2dpc3RpY3MvdHJhbnNhY3Rpb24tcHVyY2hhc2Utb3JkZXItZmlsdGVyLWNvbnRlbnQtbG9naXN0aWNzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFdBQVcsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUdyRCxPQUFPLEVBQUMsY0FBYyxFQUF1QixlQUFlLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRyxPQUFPLEVBQUMscUNBQXFDLEVBQUMsTUFBTSxpRUFBaUUsQ0FBQztBQWtKdEgsTUFBTSxPQUFPLHVEQUF3RCxTQUFRLHFDQUFxQztJQS9JbEg7O1FBZ0prQixVQUFLLEdBQTBCLGNBQWMsQ0FBQztRQU92RCxvQkFBZSxHQUFHLEVBQUUsQ0FBQztRQUNyQix5QkFBb0IsR0FBb0IsRUFBQyxJQUFJLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUMsQ0FBQztRQUc3RSxvQkFBZSxHQUFvQixFQUFDLElBQUksRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBQyxDQUFDO1FBRy9FLDBCQUFxQixHQUFvQixFQUFDLElBQUksRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBQyxDQUFDO1FBR3JGLHVCQUFrQixHQUFvQixFQUFDLElBQUksRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBQyxDQUFDO0lBc0NwRixDQUFDO0lBcERRLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFhTSxXQUFXLENBQUMsR0FBUTtRQUN6QixJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFFUyxlQUFlO1FBQ3ZCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsa0JBQWtCO0lBQ1YsbUJBQW1CO1FBQ3pCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLGVBQWlDLEVBQUUsRUFBRTtZQUN0RixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksZUFBZSxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxXQUFXLENBQUM7UUFDckcsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsWUFBWTtJQUNKLGNBQWM7UUFDcEIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGFBQWEsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLFVBQXVCLEVBQUUsRUFBRTtZQUN2RSxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksZUFBZSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsV0FBVyxDQUFDO1FBQ3RGLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELG1CQUFtQjtJQUNYLG9CQUFvQjtRQUMxQixJQUFJLENBQUMsa0JBQWtCLENBQUMsYUFBYSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsVUFBdUIsRUFBRSxFQUFFO1lBQ3ZFLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLGVBQWUsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUMsV0FBVyxDQUFDO1FBQ2xHLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGdCQUFnQjtRQUN0QixJQUFJLENBQUMsa0JBQWtCLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLFlBQTZCLEVBQUUsRUFBRTtZQUM1RSxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksZUFBZSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxXQUFXLENBQUM7UUFDN0YsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzs7WUF0TUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSx3REFBd0Q7Z0JBQ2xFLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTJJVDthQUNGOzs7d0JBSUUsV0FBVyxTQUFDLDRDQUE0QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBIb3N0QmluZGluZ30gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7RGVsaXZlcnlNZXRob2R9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9kZWxpdmVyeS1tZXRob2QuYm8nO1xyXG5pbXBvcnQge1dhcmVob3VzZX0gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3dhcmVob3VzZS5ibyc7XHJcbmltcG9ydCB7RmlsdGVySXRlbU1vZGUsIEZpbHRlckl0ZW1WaWV3bW9kZWwsIEZpbHRlclZpZXdtb2RlbH0gZnJvbSAnQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMic7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25GaWx0ZXJDb250ZW50QmFzZUNvbXBvbmVudH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9iYXNlL3RyYW5zYWN0aW9uLWZpbHRlci1jb250ZW50LWJhc2UuY29tcG9uZW50JztcclxuaW1wb3J0IHtDb0RvbWFpblZhbHVlfSBmcm9tIFwiQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvY28tZG9tYWluLXZhbHVlLmJvXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2NvLXRyYW5zYWN0aW9uLXB1cmNoYXNlLW9yZGVyLWZpbHRlci1jb250ZW50LWxvZ2lzdGljcycsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1maWx0ZXItY29udGVudC1sb2dpc3RpY3Mtd3JhcHBlciB0cmFuc2FjdGlvbi1maWx0ZXItY29udGVudC13cmFwcGVyXCI+XHJcblxyXG4gICAgICA8IS0tQmV2ZXN0aWdkZSBsZXZlcmRhdHVtLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtIFtwbGFjZWhvbGRlcl09XCInQ09ORklSTUVEX0RFTElWRVJZX0RBVEUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwic2VhcmNoU2VydmljZS5zZWFyY2hSZXF1ZXN0LmNvbmZpcm1lZERlbGl2ZXJ5RGF0ZVJhbmdlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVdPVwibW9kZXMuRGF0ZVJhbmdlRmllbGRcIj5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1TZXJpZW51bW1lciAtLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0gW3BsYWNlaG9sZGVyXT1cIidTRVJJQUxfTlVNQkVSJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cInNlYXJjaFNlcnZpY2Uuc2VhcmNoUmVxdWVzdC5zZXJpYWxOdW1iZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbW9kZV09XCJtb2Rlcy5UZXh0RmllbGRcIlxyXG4gICAgICAgID5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1CYXRjaG51bW1lciAtLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0gW3BsYWNlaG9sZGVyXT1cIidCQVRDSF9OVU1CRVInXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwic2VhcmNoU2VydmljZS5zZWFyY2hSZXF1ZXN0LmJhdGNoTnVtYmVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVdPVwibW9kZXMuVGV4dEZpZWxkXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbT5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8IS0tR2VmYWN0dXJlZXJkLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1oaXN0b3JpYy1zdGF0ZSBbbGFiZWxdPVwiJ0lOVk9JQ0VEJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJzZWFyY2hTZXJ2aWNlLnNlYXJjaFJlcXVlc3QucXVhbnRpdHlJbnZvaWNlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbW9kZV09XCJtb2Rlcy5TZWxlY3RMaXN0V2l0aFN0cmluZ0NvbGxlY3Rpb25PdXRwdXRcIj5cclxuICAgICAgICAgID5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1oaXN0b3JpYy1zdGF0ZT5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8IS0tQmlubmVuZ2VtZWxkIC8gR2VsZXZlcmQgLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1oaXN0b3JpYy1zdGF0ZSBbbGFiZWxdPVwiJ1JFQ0VJVkVEX0RFTElWRVJFRCdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwic2VhcmNoU2VydmljZS5zZWFyY2hSZXF1ZXN0LnF1YW50aXR5UmVjZWl2ZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVdPVwibW9kZXMuU2VsZWN0TGlzdFdpdGhTdHJpbmdDb2xsZWN0aW9uT3V0cHV0XCI+XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1maWx0ZXItaGlzdG9yaWMtc3RhdGU+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLUJldmVzdGlnZC0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWl0ZW0td3JhcHBlclwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItaGlzdG9yaWMtc3RhdGUgW2xhYmVsXT1cIidDT05GSVJNRUQnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cInNlYXJjaFNlcnZpY2Uuc2VhcmNoUmVxdWVzdC5xdWFudGl0eUNvbmZpcm1lZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbW9kZV09XCJtb2Rlcy5TZWxlY3RMaXN0V2l0aFN0cmluZ0NvbGxlY3Rpb25PdXRwdXRcIj5cclxuICAgICAgICAgID5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1oaXN0b3JpYy1zdGF0ZT5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8IS0tQWFua29tc3RkYXR1bS0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWl0ZW0td3JhcHBlclwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbSBbcGxhY2Vob2xkZXJdPVwiJ0FSUklWQUxfREFURSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJzZWFyY2hTZXJ2aWNlLnNlYXJjaFJlcXVlc3QuYXJyaXZhbERhdGVSYW5nZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttb2RlXT1cIm1vZGVzLkRhdGVSYW5nZUZpZWxkXCI+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbT5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8IS0tVG9lZ2V3ZXplbi0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWl0ZW0td3JhcHBlclwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItaGlzdG9yaWMtc3RhdGUgW2xhYmVsXT1cIidBTExPQ0FURUQnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cInNlYXJjaFNlcnZpY2Uuc2VhcmNoUmVxdWVzdC5xdWFudGl0eUFsbG9jYXRlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbW9kZV09XCJtb2Rlcy5TZWxlY3RMaXN0V2l0aFN0cmluZ0NvbGxlY3Rpb25PdXRwdXRcIj5cclxuICAgICAgICAgID5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1oaXN0b3JpYy1zdGF0ZT5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8IS0tVGUgcGlja2VuLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1oaXN0b3JpYy1zdGF0ZSBbbGFiZWxdPVwiJ1RPX0JFX1BJQ0tFRCdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwic2VhcmNoU2VydmljZS5zZWFyY2hSZXF1ZXN0LnF1YW50aXR5VG9CZVBpY2tlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbW9kZV09XCJtb2Rlcy5TZWxlY3RMaXN0V2l0aFN0cmluZ0NvbGxlY3Rpb25PdXRwdXRcIj5cclxuICAgICAgICAgID5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1oaXN0b3JpYy1zdGF0ZT5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8IS0tR2VwaWNrZWQtLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWhpc3RvcmljLXN0YXRlIFtsYWJlbF09XCInUElDS0VEJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJzZWFyY2hTZXJ2aWNlLnNlYXJjaFJlcXVlc3QucXVhbnRpdHlQaWNrZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVdPVwibW9kZXMuU2VsZWN0TGlzdFdpdGhTdHJpbmdDb2xsZWN0aW9uT3V0cHV0XCI+XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1maWx0ZXItaGlzdG9yaWMtc3RhdGU+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLURlZWxsZXZlcmluZy0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWl0ZW0td3JhcHBlclwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbSBbcGxhY2Vob2xkZXJdPVwiJ1BBUlRfREVMSVZFUlknXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbGxlY3Rpb25dPVwicGFydERlbGl2ZXJ5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwic2VhcmNoU2VydmljZS5zZWFyY2hSZXF1ZXN0LnBhcnRpYWxEZWxpdmVyeVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttb2RlXT1cIm1vZGVzLkZpbHRlcmxpc3RcIj5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1NYWdhemlqbi0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWl0ZW0td3JhcHBlclwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbSBbcGxhY2Vob2xkZXJdPVwiJ1dBUkVIT1VTRSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJ3YXJlaG91c2VzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwic2VhcmNoU2VydmljZS5zZWFyY2hSZXF1ZXN0LndhcmVob3VzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttb2RlXT1cIm1vZGVzLkZpbHRlcmxpc3RcIj5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1Ccm9uIG1hZ2F6aWpuLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtIFtwbGFjZWhvbGRlcl09XCInU09VUkNFX1dBUkVIT1VTRSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJzZWFyY2hTZXJ2aWNlLnNlYXJjaFJlcXVlc3Quc291cmNlV2FyZWhvdXNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVdPVwibW9kZXMuRmlsdGVybGlzdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xsZWN0aW9uXT1cInNvdXJjZVdhcmVob3VzZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwibW9kZWxDaGFuZ2UoJGV2ZW50KVwiPlxyXG4gICAgICAgIDwvY28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLUxldmVybWV0aG9kZS0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWl0ZW0td3JhcHBlclwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbSBbcGxhY2Vob2xkZXJdPVwiJ0RFTElWRVJZX01FVEhPRCdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJkZWxpdmVyeU1ldGhvZHNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJzZWFyY2hTZXJ2aWNlLnNlYXJjaFJlcXVlc3QucmFuZ2VEZWxpdmVyeU1ldGhvZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttb2RlXT1cIm1vZGVzLkZpbHRlcmxpc3RcIlxyXG4gICAgICAgID5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1MZXZlcmRhdHVtIGRlZmluaXRpZWYtLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0gW3BsYWNlaG9sZGVyXT1cIidERUxJVkVSWV9EQVRFX0ZJTkFMJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cInNlYXJjaFNlcnZpY2Uuc2VhcmNoUmVxdWVzdC5kZWxpdmVyeURhdGVEZWZpbml0aXZlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVdPVwibW9kZXMuQ2hlY2tib3hUb1RleHRcIj5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1VaXR2b2VyYmFhcjogdG9kbzogdnJhYWcgc3RhYXQgdWl0IHdhdCBoaWVybWVlIGJlZG9lbGQgd29yZHQuIERhYXJuYSBoaWVyIGFhbnZ1bGxlbiAtLT5cclxuICAgIDwvZGl2PlxyXG4gIGBcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uUHVyY2hhc2VPcmRlckZpbHRlckNvbnRlbnRMb2dpc3RpY3NDb21wb25lbnQgZXh0ZW5kcyBUcmFuc2FjdGlvbkZpbHRlckNvbnRlbnRCYXNlQ29tcG9uZW50IHtcclxuICBwdWJsaWMgcmVhZG9ubHkgbW9kZXM6IHR5cGVvZiBGaWx0ZXJJdGVtTW9kZSA9IEZpbHRlckl0ZW1Nb2RlO1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby10cmFuc2FjdGlvbi1zZWFyY2gtZmlsdGVyLWNvbnRlbnRcIilcclxuICBwdWJsaWMgc2hvd0NsYXNzKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZGVsaXZlcnlNZXRob2RzID0gW107XHJcbiAgcHVibGljIGRlbGl2ZXJ5TWV0aG9kRmllbGRzOiB7IHRleHQsIHZhbHVlIH0gPSB7dGV4dDogXCJkZXNjcmlwdGlvblwiLCB2YWx1ZTogXCJjb2RlXCJ9O1xyXG5cclxuICBwdWJsaWMgd2FyZWhvdXNlczogRmlsdGVySXRlbVZpZXdtb2RlbFtdO1xyXG4gIHB1YmxpYyB3YXJlaG91c2VGaWVsZHM6IHsgdGV4dCwgdmFsdWUgfSA9IHt0ZXh0OiBcImRlc2NyaXB0aW9uXCIsIHZhbHVlOiBcIndhcmVob3VzZU5vXCJ9O1xyXG5cclxuICBwdWJsaWMgc291cmNlV2FyZWhvdXNlczogRmlsdGVySXRlbVZpZXdtb2RlbFtdO1xyXG4gIHB1YmxpYyBzb3VyY2VXYXJlaG91c2VGaWVsZHM6IHsgdGV4dCwgdmFsdWUgfSA9IHt0ZXh0OiBcImRlc2NyaXB0aW9uXCIsIHZhbHVlOiBcIndhcmVob3VzZU5vXCJ9O1xyXG5cclxuICBwdWJsaWMgcGFydERlbGl2ZXJ5OiBGaWx0ZXJJdGVtVmlld21vZGVsW107XHJcbiAgcHVibGljIHBhcnREZWxpdmVyeUZpZWxkczogeyB0ZXh0LCB2YWx1ZSB9ID0ge3RleHQ6IFwiZGVzY3JpcHRpb25cIiwgdmFsdWU6IFwiY29kZVwifTtcclxuICBwdWJsaWMgbW9kZWxDaGFuZ2UoYW55OiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGxvYWRDb2xsZWN0aW9ucygpOiB2b2lkIHtcclxuICAgIHRoaXMuX3NldERlbGl2ZXJ5TWV0aG9kcygpO1xyXG4gICAgdGhpcy5fc2V0V2FyZWhvdXNlcygpO1xyXG4gICAgdGhpcy5fc2V0U291cmNlV2FyZWhvdXNlcygpO1xyXG4gICAgdGhpcy5fc2V0UGFydERlbGl2ZXJ5KCk7XHJcbiAgfVxyXG5cclxuICAvL0RlbGl2ZXJ5IE1ldGhvZHNcclxuICBwcml2YXRlIF9zZXREZWxpdmVyeU1ldGhvZHMoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXREZWxpdmVyeU1ldGhvZHMoKS50aGVuKChkZWxpdmVyeU1ldGhvZHM6IERlbGl2ZXJ5TWV0aG9kW10pID0+IHtcclxuICAgICAgdGhpcy5kZWxpdmVyeU1ldGhvZHMgPSBuZXcgRmlsdGVyVmlld21vZGVsKGRlbGl2ZXJ5TWV0aG9kcywgdGhpcy5kZWxpdmVyeU1ldGhvZEZpZWxkcykuZmlsdGVySXRlbXM7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8vV2FyZWhvdXNlc1xyXG4gIHByaXZhdGUgX3NldFdhcmVob3VzZXMoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRXYXJlaG91c2VzKCkudGhlbigod2FyZWhvdXNlczogV2FyZWhvdXNlW10pID0+IHtcclxuICAgICAgdGhpcy53YXJlaG91c2VzID0gbmV3IEZpbHRlclZpZXdtb2RlbCh3YXJlaG91c2VzLCB0aGlzLndhcmVob3VzZUZpZWxkcykuZmlsdGVySXRlbXM7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8vU291cmNlIFdhcmVob3VzZXNcclxuICBwcml2YXRlIF9zZXRTb3VyY2VXYXJlaG91c2VzKCk6IHZvaWQge1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0V2FyZWhvdXNlcygpLnRoZW4oKHdhcmVob3VzZXM6IFdhcmVob3VzZVtdKSA9PiB7XHJcbiAgICAgIHRoaXMuc291cmNlV2FyZWhvdXNlcyA9IG5ldyBGaWx0ZXJWaWV3bW9kZWwod2FyZWhvdXNlcywgdGhpcy5zb3VyY2VXYXJlaG91c2VGaWVsZHMpLmZpbHRlckl0ZW1zO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9zZXRQYXJ0RGVsaXZlcnkoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRZZXNObyhcIk5MXCIpLnRoZW4oKHBhcnREZWxpdmVyeTogQ29Eb21haW5WYWx1ZVtdKSA9PiB7XHJcbiAgICAgIHRoaXMucGFydERlbGl2ZXJ5ID0gbmV3IEZpbHRlclZpZXdtb2RlbChwYXJ0RGVsaXZlcnksIHRoaXMucGFydERlbGl2ZXJ5RmllbGRzKS5maWx0ZXJJdGVtcztcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -73,6 +73,23 @@ export class ArticleConnectorService {
73
73
  });
74
74
  });
75
75
  }
76
+ getArticleListWithBarcodeArticleNrEanCode(search) {
77
+ return __awaiter(this, void 0, void 0, function* () {
78
+ return new Promise((resolve, reject) => {
79
+ return this.connector.getArticleListWithBarcodeArticleNrEanCode(search).then((response) => {
80
+ if (response && response.validationResult && response.validationResult.success) {
81
+ // return this._boFactory.makeWithRawBackendData(ArticleExtended, response.resultObject) as ArticleLight;
82
+ const collection = this._boFactory.makeBOArrayFromRawBackendDataArray(ArticleLight, response.resultObject);
83
+ resolve(collection);
84
+ }
85
+ else {
86
+ this._handleExceptionFromResponse(response);
87
+ reject(null);
88
+ }
89
+ });
90
+ });
91
+ });
92
+ }
76
93
  getMainArticles() {
77
94
  return __awaiter(this, void 0, void 0, function* () {
78
95
  return new Promise((resolve, reject) => {
@@ -150,4 +167,4 @@ ArticleConnectorService.ctorParameters = () => [
150
167
  { type: DialogService },
151
168
  { type: ErrorService }
152
169
  ];
153
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJ0aWNsZS1jb25uZWN0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvc2VydmljZS9hcnRpY2xlLWNvbm5lY3Rvci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUM3RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sb0RBQW9ELENBQUM7QUFDakYsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDakcsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBQy9FLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDBEQUEwRCxDQUFDO0FBQzVGLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxrREFBa0QsQ0FBQztBQUM3RSxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUVwRSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSwrREFBK0QsQ0FBQztBQUVwRyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFFL0MsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sZ0VBQWdFLENBQUM7QUFDMUcsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBQ3JGLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7QUFLN0MsTUFBTSxPQUFPLHVCQUF1QjtJQUtsQyxZQUNVLHdCQUFpRCxFQUNqRCxjQUE2QixFQUM3QixhQUEyQjtRQUYzQiw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQXlCO1FBQ2pELG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQzdCLGtCQUFhLEdBQWIsYUFB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QWE7WUFJYixZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtBcnRpY2xlc30gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvYXJ0aWNsZXMnO1xyXG5pbXBvcnQge1N0b2NrTG9jYXRpb259IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL3N0b2NrLWxvY2F0aW9uLmJvJztcclxuaW1wb3J0IHtBcnRpY2xlRXh0ZW5kZWRSZXF1ZXN0fSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWV4dGVuZGVkLXJlcXVlc3QnO1xyXG5pbXBvcnQge0FydGljbGVMaWdodH0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1saWdodC5ibyc7XHJcbmltcG9ydCB7VHVybm92ZXJHcm91cEltYWdlfSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC90dXJub3Zlci1ncm91cC1pbWFnZS5ibyc7XHJcbmltcG9ydCB7TWFpbkFydGljbGV9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL21haW4tYXJ0aWNsZS5ibyc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25FdmVudFNlcnZpY2V9IGZyb20gJy4vdHJhbnNhY3Rpb24tZXZlbnQuc2VydmljZSc7XHJcbmltcG9ydCB7RGF0YVNlcnZpY2VSZXNwb25zZURhdGF9IGZyb20gJ0Bjb2xpam5pdC9pb25lY29ubmVjdG9yL2J1aWxkL21vZGVsL2RhdGEtc2VydmljZS1yZXNwb25zZS1kYXRhJztcclxuaW1wb3J0IHtCdXNpbmVzc09iamVjdEZhY3Rvcnl9IGZyb20gJ0Bjb2xpam5pdC9pb25lY29ubmVjdG9yL2J1aWxkL3NlcnZpY2UvYnVzaW5lc3Mtb2JqZWN0LWZhY3RvcnknO1xyXG5pbXBvcnQge0FydGljbGVGbGF0VHJlZURUT30gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1mbGF0LXRyZWUuYm8nO1xyXG5pbXBvcnQge0RpYWxvZ1NlcnZpY2V9IGZyb20gJy4vZGlhbG9nLnNlcnZpY2UnO1xyXG5pbXBvcnQge0V4dGVybmFsQ2F0YWxvZ1N0YXJ0dXBJbmZvUmVxdWVzdH0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvZXh0ZXJuYWwtY2F0YWxvZy1zdGFydHVwLWluZm8tcmVxdWVzdCc7XHJcbmltcG9ydCB7RXh0ZXJuYWxDYXRhbG9nU3RhcnR1cEluZm99IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2V4dGVybmFsLWNhdGFsb2ctc3RhcnR1cC1pbmZvJztcclxuaW1wb3J0IHtBcnRpY2xlRXh0ZW5kZWR9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZXh0ZW5kZWQuYm8nO1xyXG5pbXBvcnQge0Vycm9yU2VydmljZX0gZnJvbSAnLi9lcnJvci5zZXJ2aWNlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiBcInJvb3RcIlxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXJ0aWNsZUNvbm5lY3RvclNlcnZpY2Uge1xyXG4gIHB1YmxpYyBjb25uZWN0b3I6IEFydGljbGVzO1xyXG5cclxuICBwcml2YXRlIF9ib0ZhY3Rvcnk6IEJ1c2luZXNzT2JqZWN0RmFjdG9yeSA9IG5ldyBCdXNpbmVzc09iamVjdEZhY3RvcnkoKTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF90cmFuc2FjdGlvbkV2ZW50U2VydmljZTogVHJhbnNhY3Rpb25FdmVudFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9kaWFsb2dTZXJ2aWNlOiBEaWFsb2dTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfZXJyb3JTZXJ2aWNlOiBFcnJvclNlcnZpY2VcclxuICApIHtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjb25uZWN0KHNldHRpbmdzOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMuY29ubmVjdG9yID0gbmV3IEFydGljbGVzKHNldHRpbmdzKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRXYXJlaG91c2VMb2NhdGlvbnMod2FyZWhvdXNlTnI6IG51bWJlcik6IFByb21pc2U8U3RvY2tMb2NhdGlvbltdPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmNvbm5lY3Rvci5nZXRTdG9ja01hbmFnZW1lbnRMb2NhdGlvbnMod2FyZWhvdXNlTnIpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICBpZiAocmVzcG9uc2UgJiYgcmVzcG9uc2UudmFsaWRhdGlvblJlc3VsdCAmJiByZXNwb25zZS52YWxpZGF0aW9uUmVzdWx0LnN1Y2Nlc3MpIHtcclxuICAgICAgICAgICAgY29uc3QgY29sbGVjdGlvbjogU3RvY2tMb2NhdGlvbltdID0gdGhpcy5fYm9GYWN0b3J5Lm1ha2VCT0FycmF5RnJvbVJhd0JhY2tlbmREYXRhQXJyYXkoU3RvY2tMb2NhdGlvbiwgcmVzcG9uc2UucmVzdWx0T2JqZWN0cykgYXMgdW5rbm93biBhcyBTdG9ja0xvY2F0aW9uW107XHJcbiAgICAgICAgICAgIHJlc29sdmUoY29sbGVjdGlvbik7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZWplY3QocmVzcG9uc2UudmFsaWRhdGlvbk1lc3NhZ2VzQXNTdHJpbmcpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRBcnRpY2xlRXh0ZW5kZWQoYXJ0aWNsZU5yOiBzdHJpbmcpOiBQcm9taXNlPEFydGljbGVFeHRlbmRlZD4ge1xyXG4gICAgY29uc3QgcmVxdWVzdDogQXJ0aWNsZUV4dGVuZGVkUmVxdWVzdCA9IG5ldyBBcnRpY2xlRXh0ZW5kZWRSZXF1ZXN0KCk7XHJcbiAgICByZXF1ZXN0LmFydGljbGVOdW1iZXIgPSBhcnRpY2xlTnI7XHJcbiAgICBjb25zdCByZXN1bHQ6IERhdGFTZXJ2aWNlUmVzcG9uc2VEYXRhID0gYXdhaXQgdGhpcy5jb25uZWN0b3Iuc2VhcmNoQXJ0aWNsZXMocmVxdWVzdCk7XHJcbiAgICBpZiAocmVzdWx0LnZhbGlkYXRpb25SZXN1bHQgJiYgcmVzdWx0LnZhbGlkYXRpb25SZXN1bHQuc3VjY2Vzcykge1xyXG4gICAgICBpZiAocmVzdWx0LnJlc3VsdE9iamVjdHMgJiYgcmVzdWx0LnJlc3VsdE9iamVjdHMubGVuZ3RoID09PSAxKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2JvRmFjdG9yeS5tYWtlV2l0aFJhd0JhY2tlbmREYXRhKEFydGljbGVFeHRlbmRlZCwgcmVzdWx0LnJlc3VsdE9iamVjdHNbMF0pIGFzIEFydGljbGVFeHRlbmRlZDtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5faGFuZGxlRXhjZXB0aW9uRnJvbVJlc3BvbnNlKHJlc3VsdCk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBzZWFyY2hBcnRpY2xlcyhyZXF1ZXN0OiBBcnRpY2xlRXh0ZW5kZWRSZXF1ZXN0KTogUHJvbWlzZTxBcnRpY2xlTGlnaHRbXT4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgcmV0dXJuIHRoaXMuY29ubmVjdG9yLnNlYXJjaEFydGljbGVzTGlnaHQocmVxdWVzdCkudGhlbigocmVzcG9uc2UpID0+IHtcclxuICAgICAgICBpZiAocmVzcG9uc2UgJiYgcmVzcG9uc2UudmFsaWRhdGlvblJlc3VsdCAmJiByZXNwb25zZS52YWxpZGF0aW9uUmVzdWx0LnN1Y2Nlc3MpIHtcclxuICAgICAgICAgIGNvbnN0IGNvbGxlY3Rpb246IEFydGljbGVMaWdodFtdID0gdGhpcy5fYm9GYWN0b3J5Lm1ha2VCT0FycmF5RnJvbVJhd0JhY2tlbmREYXRhQXJyYXkoQXJ0aWNsZUxpZ2h0LCByZXNwb25zZS5yZXN1bHRPYmplY3RzKSBhcyB1bmtub3duIGFzIEFydGljbGVMaWdodFtdO1xyXG4gICAgICAgICAgcmVzb2x2ZShjb2xsZWN0aW9uKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5faGFuZGxlRXhjZXB0aW9uRnJvbVJlc3BvbnNlKHJlc3BvbnNlKTtcclxuICAgICAgICAgIHJlamVjdChudWxsKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgZ2V0TWFpbkFydGljbGVzKCk6IFByb21pc2U8TWFpbkFydGljbGVbXT4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgcmV0dXJuIHRoaXMuY29ubmVjdG9yLmdldE1haW5BcnRpY2xlcygpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3BvbnNlICYmIHJlc3BvbnNlLnZhbGlkYXRpb25SZXN1bHQgJiYgcmVzcG9uc2UudmFsaWRhdGlvblJlc3VsdC5zdWNjZXNzKSB7XHJcbiAgICAgICAgICBjb25zdCBjb2xsZWN0aW9uOiBNYWluQXJ0aWNsZVtdID0gdGhpcy5fYm9GYWN0b3J5Lm1ha2VCT0FycmF5RnJvbVJhd0JhY2tlbmREYXRhQXJyYXkoTWFpbkFydGljbGUsIHJlc3BvbnNlLnJlc3VsdE9iamVjdHMpIGFzIHVua25vd24gYXMgTWFpbkFydGljbGVbXTtcclxuICAgICAgICAgIHJlc29sdmUoY29sbGVjdGlvbik7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuX2hhbmRsZUV4Y2VwdGlvbkZyb21SZXNwb25zZShyZXNwb25zZSk7XHJcbiAgICAgICAgICByZWplY3QobnVsbCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGdldFR1cm5vdmVyR3JvdXBzKGNhdGVnb3J5Pzogc3RyaW5nKTogUHJvbWlzZTxUdXJub3Zlckdyb3VwSW1hZ2VbXT4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlOiBGdW5jdGlvbiwgcmVqZWN0OiBGdW5jdGlvbikgPT4ge1xyXG4gICAgICAvLyBjb25zdCBjb2xsZWN0aW9uID0gdGhpcy5fY29sbGVjdGlvblNlcnZpY2UuZ2V0Q29sbGVjdGlvbihUdXJub3Zlckdyb3VwSW1hZ2UubmFtZSk7XHJcbiAgICAgIC8vIGlmIChjb2xsZWN0aW9uKSB7XHJcbiAgICAgIC8vICAgcmV0dXJuIHJlc29sdmUoY29sbGVjdGlvbik7XHJcbiAgICAgIC8vIH1cclxuICAgICAgcmV0dXJuIHRoaXMuY29ubmVjdG9yLmdldFR1cm5vdmVyR3JvdXBzKGNhdGVnb3J5KS50aGVuKChyZXN1bHQ6IERhdGFTZXJ2aWNlUmVzcG9uc2VEYXRhKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3VsdC52YWxpZGF0aW9uUmVzdWx0ICYmIHJlc3VsdC52YWxpZGF0aW9uUmVzdWx0LnN1Y2Nlc3MpIHtcclxuICAgICAgICAgIGNvbnN0IGNvbGxlY3Rpb246IFR1cm5vdmVyR3JvdXBJbWFnZVtdID0gdGhpcy5fYm9GYWN0b3J5Lm1ha2VCT0FycmF5RnJvbVJhd0JhY2tlbmREYXRhQXJyYXkoVHVybm92ZXJHcm91cEltYWdlLCByZXN1bHQucmVzdWx0T2JqZWN0cykgYXMgdW5rbm93biBhcyBUdXJub3Zlckdyb3VwSW1hZ2VbXTtcclxuICAgICAgICAgIC8vIHRoaXMuX2NvbGxlY3Rpb25TZXJ2aWNlLmNhY2hlQ29sbGVjdGlvbihUdXJub3Zlckdyb3VwSW1hZ2UubmFtZSwgY29sbGVjdGlvbik7XHJcbiAgICAgICAgICByZXNvbHZlKGNvbGxlY3Rpb24pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLl9oYW5kbGVFeGNlcHRpb25Gcm9tUmVzcG9uc2UocmVzdWx0KTtcclxuICAgICAgICAgIHJlamVjdChudWxsKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgc3RvcmVDYXRGYXJtQ29tcG9zaXRpb25BcnRpY2xlKGNhdGFsb2dJZDogbnVtYmVyLCBhcnRpY2xlRmxhdFRyZWU6IEFydGljbGVGbGF0VHJlZURUTyk6IFByb21pc2U8c3RyaW5nPiB7XHJcbiAgICBjb25zdCByZXNwb25zZTogRGF0YVNlcnZpY2VSZXNwb25zZURhdGEgPSBhd2FpdCB0aGlzLmNvbm5lY3Rvci5zdG9yZUNhdEZhcm1Db21wb3NpdGlvbkFydGljbGUoY2F0YWxvZ0lkLCBhcnRpY2xlRmxhdFRyZWUpO1xyXG4gICAgaWYgKHJlc3BvbnNlICYmIHJlc3BvbnNlLnZhbGlkYXRpb25SZXN1bHQgJiYgcmVzcG9uc2UudmFsaWRhdGlvblJlc3VsdC5zdWNjZXNzICYmIHJlc3BvbnNlLnJlc3VsdE9iamVjdCAhPT0gbnVsbCkge1xyXG4gICAgICByZXR1cm4gcmVzcG9uc2UucmVzdWx0T2JqZWN0O1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5faGFuZGxlRXhjZXB0aW9uRnJvbVJlc3BvbnNlKHJlc3BvbnNlKTtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgZ2V0V2ViVmlld1N0YXJ0dXBJbmZvKHJlcXVlc3Q6IEV4dGVybmFsQ2F0YWxvZ1N0YXJ0dXBJbmZvUmVxdWVzdCk6IFByb21pc2U8RXh0ZXJuYWxDYXRhbG9nU3RhcnR1cEluZm8+IHtcclxuICAgIC8vIEB0cy1pZ25vcmVcclxuICAgIGNvbnN0IHJlc3BvbnNlOiBEYXRhU2VydmljZVJlc3BvbnNlRGF0YSA9IGF3YWl0IHRoaXMuY29ubmVjdG9yLmdldFdlYnZpZXdTdGFydHVwSW5mbyhyZXF1ZXN0KTtcclxuICAgIGlmIChyZXNwb25zZSAmJiByZXNwb25zZS52YWxpZGF0aW9uUmVzdWx0ICYmIHJlc3BvbnNlLnZhbGlkYXRpb25SZXN1bHQuc3VjY2Vzcykge1xyXG4gICAgICByZXR1cm4gdGhpcy5fYm9GYWN0b3J5Lm1ha2VXaXRoUmF3QmFja2VuZERhdGEoRXh0ZXJuYWxDYXRhbG9nU3RhcnR1cEluZm8sIHJlc3BvbnNlLnJlc3VsdE9iamVjdCkgYXMgdW5rbm93biBhcyBFeHRlcm5hbENhdGFsb2dTdGFydHVwSW5mbztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuX2hhbmRsZUV4Y2VwdGlvbkZyb21SZXNwb25zZShyZXNwb25zZSk7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfaGFuZGxlRXhjZXB0aW9uRnJvbVJlc3BvbnNlKHJlc3VsdDogRGF0YVNlcnZpY2VSZXNwb25zZURhdGEpOiB2b2lkIHtcclxuICAgIHRoaXMuX2Vycm9yU2VydmljZS5zaG93VmFsaWRhdGlvbkVycm9yKHJlc3VsdCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
170
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJ0aWNsZS1jb25uZWN0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvc2VydmljZS9hcnRpY2xlLWNvbm5lY3Rvci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUM3RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sb0RBQW9ELENBQUM7QUFDakYsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDakcsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBQy9FLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDBEQUEwRCxDQUFDO0FBQzVGLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxrREFBa0QsQ0FBQztBQUM3RSxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUVwRSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSwrREFBK0QsQ0FBQztBQUVwRyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFFL0MsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sZ0VBQWdFLENBQUM7QUFDMUcsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBQ3JGLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7QUFLN0MsTUFBTSxPQUFPLHVCQUF1QjtJQUtsQyxZQUNVLHdCQUFpRCxFQUNqRCxjQUE2QixFQUM3QixhQUEyQjtRQUYzQiw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQXlCO1FBQ2pELG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQzdCLGtCQUFhLEdBQWIsYUFB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QUNILENBQUM7S0FBQTtJQUVZLHFCQUFxQixDQUFDLE9BQTBDOztZQUMzRSxhQUFhO1lBQ2IsTUFBTSxRQUFRLEdBQTRCLE1BQU0sSUFBSSxDQUFDLFNBQVMsQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUM5RixJQUFJLFFBQVEsSUFBSSxRQUFRLENBQUMsZ0JBQWdCLElBQUksUUFBUSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRTtnQkFDOUUsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLHNCQUFzQixDQUFDLDBCQUEwQixFQUFFLFFBQVEsQ0FBQyxZQUFZLENBQTBDLENBQUM7YUFDM0k7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLDRCQUE0QixDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUM1QyxPQUFPLElBQUksQ0FBQzthQUNiO1FBQ0gsQ0FBQztLQUFBO0lBRU8sNEJBQTRCLENBQUMsTUFBK0I7UUFDbEUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNqRCxDQUFDOzs7O1lBbklGLFVBQVUsU0FBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQjs7O1lBWk8sdUJBQXVCO1lBSXZCLGFBQWE7WUFJYixZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtBcnRpY2xlc30gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvYXJ0aWNsZXMnO1xyXG5pbXBvcnQge1N0b2NrTG9jYXRpb259IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL3N0b2NrLWxvY2F0aW9uLmJvJztcclxuaW1wb3J0IHtBcnRpY2xlRXh0ZW5kZWRSZXF1ZXN0fSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWV4dGVuZGVkLXJlcXVlc3QnO1xyXG5pbXBvcnQge0FydGljbGVMaWdodH0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1saWdodC5ibyc7XHJcbmltcG9ydCB7VHVybm92ZXJHcm91cEltYWdlfSBmcm9tICdAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC90dXJub3Zlci1ncm91cC1pbWFnZS5ibyc7XHJcbmltcG9ydCB7TWFpbkFydGljbGV9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL21haW4tYXJ0aWNsZS5ibyc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25FdmVudFNlcnZpY2V9IGZyb20gJy4vdHJhbnNhY3Rpb24tZXZlbnQuc2VydmljZSc7XHJcbmltcG9ydCB7RGF0YVNlcnZpY2VSZXNwb25zZURhdGF9IGZyb20gJ0Bjb2xpam5pdC9pb25lY29ubmVjdG9yL2J1aWxkL21vZGVsL2RhdGEtc2VydmljZS1yZXNwb25zZS1kYXRhJztcclxuaW1wb3J0IHtCdXNpbmVzc09iamVjdEZhY3Rvcnl9IGZyb20gJ0Bjb2xpam5pdC9pb25lY29ubmVjdG9yL2J1aWxkL3NlcnZpY2UvYnVzaW5lc3Mtb2JqZWN0LWZhY3RvcnknO1xyXG5pbXBvcnQge0FydGljbGVGbGF0VHJlZURUT30gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1mbGF0LXRyZWUuYm8nO1xyXG5pbXBvcnQge0RpYWxvZ1NlcnZpY2V9IGZyb20gJy4vZGlhbG9nLnNlcnZpY2UnO1xyXG5pbXBvcnQge0V4dGVybmFsQ2F0YWxvZ1N0YXJ0dXBJbmZvUmVxdWVzdH0gZnJvbSAnQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvZXh0ZXJuYWwtY2F0YWxvZy1zdGFydHVwLWluZm8tcmVxdWVzdCc7XHJcbmltcG9ydCB7RXh0ZXJuYWxDYXRhbG9nU3RhcnR1cEluZm99IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2V4dGVybmFsLWNhdGFsb2ctc3RhcnR1cC1pbmZvJztcclxuaW1wb3J0IHtBcnRpY2xlRXh0ZW5kZWR9IGZyb20gJ0Bjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtZXh0ZW5kZWQuYm8nO1xyXG5pbXBvcnQge0Vycm9yU2VydmljZX0gZnJvbSAnLi9lcnJvci5zZXJ2aWNlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiBcInJvb3RcIlxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXJ0aWNsZUNvbm5lY3RvclNlcnZpY2Uge1xyXG4gIHB1YmxpYyBjb25uZWN0b3I6IEFydGljbGVzO1xyXG5cclxuICBwcml2YXRlIF9ib0ZhY3Rvcnk6IEJ1c2luZXNzT2JqZWN0RmFjdG9yeSA9IG5ldyBCdXNpbmVzc09iamVjdEZhY3RvcnkoKTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF90cmFuc2FjdGlvbkV2ZW50U2VydmljZTogVHJhbnNhY3Rpb25FdmVudFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9kaWFsb2dTZXJ2aWNlOiBEaWFsb2dTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfZXJyb3JTZXJ2aWNlOiBFcnJvclNlcnZpY2VcclxuICApIHtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjb25uZWN0KHNldHRpbmdzOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMuY29ubmVjdG9yID0gbmV3IEFydGljbGVzKHNldHRpbmdzKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRXYXJlaG91c2VMb2NhdGlvbnMod2FyZWhvdXNlTnI6IG51bWJlcik6IFByb21pc2U8U3RvY2tMb2NhdGlvbltdPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmNvbm5lY3Rvci5nZXRTdG9ja01hbmFnZW1lbnRMb2NhdGlvbnMod2FyZWhvdXNlTnIpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICBpZiAocmVzcG9uc2UgJiYgcmVzcG9uc2UudmFsaWRhdGlvblJlc3VsdCAmJiByZXNwb25zZS52YWxpZGF0aW9uUmVzdWx0LnN1Y2Nlc3MpIHtcclxuICAgICAgICAgICAgY29uc3QgY29sbGVjdGlvbjogU3RvY2tMb2NhdGlvbltdID0gdGhpcy5fYm9GYWN0b3J5Lm1ha2VCT0FycmF5RnJvbVJhd0JhY2tlbmREYXRhQXJyYXkoU3RvY2tMb2NhdGlvbiwgcmVzcG9uc2UucmVzdWx0T2JqZWN0cykgYXMgdW5rbm93biBhcyBTdG9ja0xvY2F0aW9uW107XHJcbiAgICAgICAgICAgIHJlc29sdmUoY29sbGVjdGlvbik7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZWplY3QocmVzcG9uc2UudmFsaWRhdGlvbk1lc3NhZ2VzQXNTdHJpbmcpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRBcnRpY2xlRXh0ZW5kZWQoYXJ0aWNsZU5yOiBzdHJpbmcpOiBQcm9taXNlPEFydGljbGVFeHRlbmRlZD4ge1xyXG4gICAgY29uc3QgcmVxdWVzdDogQXJ0aWNsZUV4dGVuZGVkUmVxdWVzdCA9IG5ldyBBcnRpY2xlRXh0ZW5kZWRSZXF1ZXN0KCk7XHJcbiAgICByZXF1ZXN0LmFydGljbGVOdW1iZXIgPSBhcnRpY2xlTnI7XHJcbiAgICBjb25zdCByZXN1bHQ6IERhdGFTZXJ2aWNlUmVzcG9uc2VEYXRhID0gYXdhaXQgdGhpcy5jb25uZWN0b3Iuc2VhcmNoQXJ0aWNsZXMocmVxdWVzdCk7XHJcbiAgICBpZiAocmVzdWx0LnZhbGlkYXRpb25SZXN1bHQgJiYgcmVzdWx0LnZhbGlkYXRpb25SZXN1bHQuc3VjY2Vzcykge1xyXG4gICAgICBpZiAocmVzdWx0LnJlc3VsdE9iamVjdHMgJiYgcmVzdWx0LnJlc3VsdE9iamVjdHMubGVuZ3RoID09PSAxKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2JvRmFjdG9yeS5tYWtlV2l0aFJhd0JhY2tlbmREYXRhKEFydGljbGVFeHRlbmRlZCwgcmVzdWx0LnJlc3VsdE9iamVjdHNbMF0pIGFzIEFydGljbGVFeHRlbmRlZDtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5faGFuZGxlRXhjZXB0aW9uRnJvbVJlc3BvbnNlKHJlc3VsdCk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBzZWFyY2hBcnRpY2xlcyhyZXF1ZXN0OiBBcnRpY2xlRXh0ZW5kZWRSZXF1ZXN0KTogUHJvbWlzZTxBcnRpY2xlTGlnaHRbXT4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgcmV0dXJuIHRoaXMuY29ubmVjdG9yLnNlYXJjaEFydGljbGVzTGlnaHQocmVxdWVzdCkudGhlbigocmVzcG9uc2UpID0+IHtcclxuICAgICAgICBpZiAocmVzcG9uc2UgJiYgcmVzcG9uc2UudmFsaWRhdGlvblJlc3VsdCAmJiByZXNwb25zZS52YWxpZGF0aW9uUmVzdWx0LnN1Y2Nlc3MpIHtcclxuICAgICAgICAgIGNvbnN0IGNvbGxlY3Rpb246IEFydGljbGVMaWdodFtdID0gdGhpcy5fYm9GYWN0b3J5Lm1ha2VCT0FycmF5RnJvbVJhd0JhY2tlbmREYXRhQXJyYXkoQXJ0aWNsZUxpZ2h0LCByZXNwb25zZS5yZXN1bHRPYmplY3RzKSBhcyB1bmtub3duIGFzIEFydGljbGVMaWdodFtdO1xyXG4gICAgICAgICAgcmVzb2x2ZShjb2xsZWN0aW9uKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5faGFuZGxlRXhjZXB0aW9uRnJvbVJlc3BvbnNlKHJlc3BvbnNlKTtcclxuICAgICAgICAgIHJlamVjdChudWxsKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgZ2V0QXJ0aWNsZUxpc3RXaXRoQmFyY29kZUFydGljbGVOckVhbkNvZGUoc2VhcmNoOiBzdHJpbmcpOiBQcm9taXNlPEFydGljbGVMaWdodFtdPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICByZXR1cm4gdGhpcy5jb25uZWN0b3IuZ2V0QXJ0aWNsZUxpc3RXaXRoQmFyY29kZUFydGljbGVOckVhbkNvZGUoc2VhcmNoKS50aGVuKChyZXNwb25zZSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXNwb25zZSAmJiByZXNwb25zZS52YWxpZGF0aW9uUmVzdWx0ICYmIHJlc3BvbnNlLnZhbGlkYXRpb25SZXN1bHQuc3VjY2Vzcykge1xyXG4gICAgICAgICAgLy8gcmV0dXJuIHRoaXMuX2JvRmFjdG9yeS5tYWtlV2l0aFJhd0JhY2tlbmREYXRhKEFydGljbGVFeHRlbmRlZCwgcmVzcG9uc2UucmVzdWx0T2JqZWN0KSBhcyBBcnRpY2xlTGlnaHQ7XHJcbiAgICAgICAgICBjb25zdCBjb2xsZWN0aW9uOiBBcnRpY2xlTGlnaHRbXSA9IHRoaXMuX2JvRmFjdG9yeS5tYWtlQk9BcnJheUZyb21SYXdCYWNrZW5kRGF0YUFycmF5KEFydGljbGVMaWdodCwgcmVzcG9uc2UucmVzdWx0T2JqZWN0KSBhcyB1bmtub3duIGFzIEFydGljbGVMaWdodFtdO1xyXG4gICAgICAgICAgcmVzb2x2ZShjb2xsZWN0aW9uKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5faGFuZGxlRXhjZXB0aW9uRnJvbVJlc3BvbnNlKHJlc3BvbnNlKTtcclxuICAgICAgICAgIHJlamVjdChudWxsKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgZ2V0TWFpbkFydGljbGVzKCk6IFByb21pc2U8TWFpbkFydGljbGVbXT4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgcmV0dXJuIHRoaXMuY29ubmVjdG9yLmdldE1haW5BcnRpY2xlcygpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3BvbnNlICYmIHJlc3BvbnNlLnZhbGlkYXRpb25SZXN1bHQgJiYgcmVzcG9uc2UudmFsaWRhdGlvblJlc3VsdC5zdWNjZXNzKSB7XHJcbiAgICAgICAgICBjb25zdCBjb2xsZWN0aW9uOiBNYWluQXJ0aWNsZVtdID0gdGhpcy5fYm9GYWN0b3J5Lm1ha2VCT0FycmF5RnJvbVJhd0JhY2tlbmREYXRhQXJyYXkoTWFpbkFydGljbGUsIHJlc3BvbnNlLnJlc3VsdE9iamVjdHMpIGFzIHVua25vd24gYXMgTWFpbkFydGljbGVbXTtcclxuICAgICAgICAgIHJlc29sdmUoY29sbGVjdGlvbik7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuX2hhbmRsZUV4Y2VwdGlvbkZyb21SZXNwb25zZShyZXNwb25zZSk7XHJcbiAgICAgICAgICByZWplY3QobnVsbCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGdldFR1cm5vdmVyR3JvdXBzKGNhdGVnb3J5Pzogc3RyaW5nKTogUHJvbWlzZTxUdXJub3Zlckdyb3VwSW1hZ2VbXT4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlOiBGdW5jdGlvbiwgcmVqZWN0OiBGdW5jdGlvbikgPT4ge1xyXG4gICAgICAvLyBjb25zdCBjb2xsZWN0aW9uID0gdGhpcy5fY29sbGVjdGlvblNlcnZpY2UuZ2V0Q29sbGVjdGlvbihUdXJub3Zlckdyb3VwSW1hZ2UubmFtZSk7XHJcbiAgICAgIC8vIGlmIChjb2xsZWN0aW9uKSB7XHJcbiAgICAgIC8vICAgcmV0dXJuIHJlc29sdmUoY29sbGVjdGlvbik7XHJcbiAgICAgIC8vIH1cclxuICAgICAgcmV0dXJuIHRoaXMuY29ubmVjdG9yLmdldFR1cm5vdmVyR3JvdXBzKGNhdGVnb3J5KS50aGVuKChyZXN1bHQ6IERhdGFTZXJ2aWNlUmVzcG9uc2VEYXRhKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3VsdC52YWxpZGF0aW9uUmVzdWx0ICYmIHJlc3VsdC52YWxpZGF0aW9uUmVzdWx0LnN1Y2Nlc3MpIHtcclxuICAgICAgICAgIGNvbnN0IGNvbGxlY3Rpb246IFR1cm5vdmVyR3JvdXBJbWFnZVtdID0gdGhpcy5fYm9GYWN0b3J5Lm1ha2VCT0FycmF5RnJvbVJhd0JhY2tlbmREYXRhQXJyYXkoVHVybm92ZXJHcm91cEltYWdlLCByZXN1bHQucmVzdWx0T2JqZWN0cykgYXMgdW5rbm93biBhcyBUdXJub3Zlckdyb3VwSW1hZ2VbXTtcclxuICAgICAgICAgIC8vIHRoaXMuX2NvbGxlY3Rpb25TZXJ2aWNlLmNhY2hlQ29sbGVjdGlvbihUdXJub3Zlckdyb3VwSW1hZ2UubmFtZSwgY29sbGVjdGlvbik7XHJcbiAgICAgICAgICByZXNvbHZlKGNvbGxlY3Rpb24pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLl9oYW5kbGVFeGNlcHRpb25Gcm9tUmVzcG9uc2UocmVzdWx0KTtcclxuICAgICAgICAgIHJlamVjdChudWxsKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgc3RvcmVDYXRGYXJtQ29tcG9zaXRpb25BcnRpY2xlKGNhdGFsb2dJZDogbnVtYmVyLCBhcnRpY2xlRmxhdFRyZWU6IEFydGljbGVGbGF0VHJlZURUTyk6IFByb21pc2U8c3RyaW5nPiB7XHJcbiAgICBjb25zdCByZXNwb25zZTogRGF0YVNlcnZpY2VSZXNwb25zZURhdGEgPSBhd2FpdCB0aGlzLmNvbm5lY3Rvci5zdG9yZUNhdEZhcm1Db21wb3NpdGlvbkFydGljbGUoY2F0YWxvZ0lkLCBhcnRpY2xlRmxhdFRyZWUpO1xyXG4gICAgaWYgKHJlc3BvbnNlICYmIHJlc3BvbnNlLnZhbGlkYXRpb25SZXN1bHQgJiYgcmVzcG9uc2UudmFsaWRhdGlvblJlc3VsdC5zdWNjZXNzICYmIHJlc3BvbnNlLnJlc3VsdE9iamVjdCAhPT0gbnVsbCkge1xyXG4gICAgICByZXR1cm4gcmVzcG9uc2UucmVzdWx0T2JqZWN0O1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5faGFuZGxlRXhjZXB0aW9uRnJvbVJlc3BvbnNlKHJlc3BvbnNlKTtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgZ2V0V2ViVmlld1N0YXJ0dXBJbmZvKHJlcXVlc3Q6IEV4dGVybmFsQ2F0YWxvZ1N0YXJ0dXBJbmZvUmVxdWVzdCk6IFByb21pc2U8RXh0ZXJuYWxDYXRhbG9nU3RhcnR1cEluZm8+IHtcclxuICAgIC8vIEB0cy1pZ25vcmVcclxuICAgIGNvbnN0IHJlc3BvbnNlOiBEYXRhU2VydmljZVJlc3BvbnNlRGF0YSA9IGF3YWl0IHRoaXMuY29ubmVjdG9yLmdldFdlYnZpZXdTdGFydHVwSW5mbyhyZXF1ZXN0KTtcclxuICAgIGlmIChyZXNwb25zZSAmJiByZXNwb25zZS52YWxpZGF0aW9uUmVzdWx0ICYmIHJlc3BvbnNlLnZhbGlkYXRpb25SZXN1bHQuc3VjY2Vzcykge1xyXG4gICAgICByZXR1cm4gdGhpcy5fYm9GYWN0b3J5Lm1ha2VXaXRoUmF3QmFja2VuZERhdGEoRXh0ZXJuYWxDYXRhbG9nU3RhcnR1cEluZm8sIHJlc3BvbnNlLnJlc3VsdE9iamVjdCkgYXMgdW5rbm93biBhcyBFeHRlcm5hbENhdGFsb2dTdGFydHVwSW5mbztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuX2hhbmRsZUV4Y2VwdGlvbkZyb21SZXNwb25zZShyZXNwb25zZSk7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfaGFuZGxlRXhjZXB0aW9uRnJvbVJlc3BvbnNlKHJlc3VsdDogRGF0YVNlcnZpY2VSZXNwb25zZURhdGEpOiB2b2lkIHtcclxuICAgIHRoaXMuX2Vycm9yU2VydmljZS5zaG93VmFsaWRhdGlvbkVycm9yKHJlc3VsdCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==