@colijnit/transaction 12.1.66 → 12.1.67

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.
Files changed (34) hide show
  1. package/bundles/colijnit-transaction.umd.js +178 -149
  2. package/bundles/colijnit-transaction.umd.js.map +1 -1
  3. package/colijnit-transaction.d.ts +58 -58
  4. package/colijnit-transaction.metadata.json +1 -1
  5. package/esm2015/colijnit-transaction.js +59 -59
  6. package/esm2015/lib/component/transaction/transaction.component.js +1 -1
  7. package/esm2015/lib/component/transaction-confirmation-details/transaction-confirmation-details.component.js +3 -3
  8. package/esm2015/lib/component/transaction-confirmation-history/transaction-confirmation-history.component.js +5 -3
  9. package/esm2015/lib/component/transaction-header/transaction-header/transaction-header.component.js +6 -3
  10. package/esm2015/lib/component/transaction-line-fields/transaction-line-warehouse-location-button.component.js +24 -8
  11. package/esm2015/lib/component/transaction-line-side-panel/transaction-line-side-panel.component.js +2 -2
  12. package/esm2015/lib/component/transaction-receiving-goods-history/transaction-receiving-goods-history.component.js +1 -4
  13. package/esm2015/lib/component/transaction-search/transaction-filter-content/purchase-order-filter-content/transaction-purchase-order-filter-content-order/transaction-purchase-order-filter-content-order.component.js +7 -3
  14. package/esm2015/lib/component/transaction-search/transaction-filter-content/sales-order-filter-content/transaction-sales-order-filter-content-order/transaction-sales-order-filter-content-order.component.js +6 -3
  15. package/esm2015/lib/component/transaction-search/transaction-search-header/transaction-search-header.module.js +1 -1
  16. package/esm2015/lib/component/transaction-search/transaction-search.component.js +1 -1
  17. package/esm2015/lib/component/transaction-side-panel-edit-request-details/components/receive-goods-request.component.js +36 -30
  18. package/esm2015/lib/component/transaction-side-panel-edit-request-details/transaction-side-panel-edit-request-details.module.js +8 -3
  19. package/esm2015/lib/service/transaction.service.js +1 -1
  20. package/fesm2015/colijnit-transaction.js +126 -100
  21. package/fesm2015/colijnit-transaction.js.map +1 -1
  22. package/lib/component/transaction-confirmation-details/transaction-confirmation-details.component.d.ts +0 -1
  23. package/lib/component/transaction-confirmation-history/style/_layout.scss +4 -0
  24. package/lib/component/transaction-confirmation-history/transaction-confirmation-history.component.d.ts +2 -0
  25. package/lib/component/transaction-header/transaction-header/transaction-header.component.d.ts +1 -0
  26. package/lib/component/transaction-line-fields/transaction-line-warehouse-location-button.component.d.ts +6 -2
  27. package/lib/component/transaction-line-side-panel/style/_layout.scss +5 -0
  28. package/lib/component/transaction-line-side-panel/style/_material-definition.scss +1 -0
  29. package/lib/component/transaction-quick-access/transaction-quick-access-received-goods/style/_layout.scss +5 -8
  30. package/lib/component/transaction-receiving-goods-history/transaction-receiving-goods-history.component.d.ts +2 -3
  31. package/lib/component/transaction-side-panel-edit-request-details/components/receive-goods-request.component.d.ts +9 -6
  32. package/lib/component/transaction-side-panel-edit-request-details/style/_layout.scss +55 -16
  33. package/lib/component/transaction-side-panel-edit-request-details/style/_material-definition.scss +0 -1
  34. package/package.json +1 -1
@@ -5,6 +5,8 @@ import { TransactionFilterContentBaseComponent } from "../../../../core/base/tra
5
5
  import { FilterRequestService } from "../../../service/filter-request.service";
6
6
  import { TransactionSearchService } from "../../../service/transaction-search.service";
7
7
  import { RelationService } from "../../../../../service/relation.service";
8
+ import { RelationRequest } from "@colijnit/relationapi/build/model/relation-request";
9
+ import { RelationKind } from "@colijnit/relationapi/build/enum/relation-kind.enum";
8
10
  export class TransactionPurchaseOrderFilterContentOrderComponent extends TransactionFilterContentBaseComponent {
9
11
  constructor(searchService, filterRequestService, transactionService, relationService) {
10
12
  super(searchService, filterRequestService, transactionService);
@@ -14,7 +16,7 @@ export class TransactionPurchaseOrderFilterContentOrderComponent extends Transac
14
16
  this.relationService = relationService;
15
17
  this.purchasePersonsFields = { text: "name", value: "relationId" };
16
18
  this.tagsFields = { text: "description", value: "tagValueId" };
17
- this.branchFields = { text: "description", value: "relationId" };
19
+ this.branchFields = { text: "familyName", value: "relationId" };
18
20
  this.onHoldCodeFields = { text: "description", value: "onHoldCode" };
19
21
  this.commissionCodeFields = { text: "description", value: "code" };
20
22
  }
@@ -49,7 +51,9 @@ export class TransactionPurchaseOrderFilterContentOrderComponent extends Transac
49
51
  }
50
52
  //Branches
51
53
  _setBranches() {
52
- this.relationService.getBranches().then((branches) => {
54
+ const request = new RelationRequest();
55
+ request.relationType = RelationKind.Branch;
56
+ this.relationService.getRelationListObjects(request).then((branches) => {
53
57
  this.branches = new FilterViewmodel(branches, this.branchFields).filterItems;
54
58
  });
55
59
  }
@@ -213,4 +217,4 @@ TransactionPurchaseOrderFilterContentOrderComponent.ctorParameters = () => [
213
217
  TransactionPurchaseOrderFilterContentOrderComponent.propDecorators = {
214
218
  showClass: [{ type: HostBinding, args: ["class.co-transaction-search-filter-content",] }]
215
219
  };
216
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tcHVyY2hhc2Utb3JkZXItZmlsdGVyLWNvbnRlbnQtb3JkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvdHJhbnNhY3Rpb24tc2VhcmNoL3RyYW5zYWN0aW9uLWZpbHRlci1jb250ZW50L3B1cmNoYXNlLW9yZGVyLWZpbHRlci1jb250ZW50L3RyYW5zYWN0aW9uLXB1cmNoYXNlLW9yZGVyLWZpbHRlci1jb250ZW50LW9yZGVyL3RyYW5zYWN0aW9uLXB1cmNoYXNlLW9yZGVyLWZpbHRlci1jb250ZW50LW9yZGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFdBQVcsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUdyRCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDdEUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDOUUsT0FBTyxFQUFDLHFDQUFxQyxFQUFDLE1BQU0saUVBQWlFLENBQUM7QUFDdEgsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDN0UsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFLckYsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBMEl4RSxNQUFNLE9BQU8sbURBQW9ELFNBQVEscUNBQXFDO0lBMkI1RyxZQUNTLGFBQXVDLEVBQ3ZDLG9CQUEwQyxFQUMxQyxrQkFBc0MsRUFDdEMsZUFBZ0M7UUFFdkMsS0FBSyxDQUFDLGFBQWEsRUFBRSxvQkFBb0IsRUFBRSxrQkFBa0IsQ0FBQyxDQUFBO1FBTHZELGtCQUFhLEdBQWIsYUFBYSxDQUEwQjtRQUN2Qyx5QkFBb0IsR0FBcEIsb0JB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QyxrQkFBa0IsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxXQUF5QixFQUFFLEVBQUU7WUFDMUUsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsV0FBVyxDQUFDO1FBQ3pGLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGlCQUFpQjtJQUNULG1CQUFtQjtRQUN6QixJQUFJLENBQUMsa0JBQWtCLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsZUFBZ0MsRUFBRSxFQUFFO1lBQ3pGLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxlQUFlLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLFdBQVcsQ0FBQztRQUNyRyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OztZQTdORixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLG9EQUFvRDtnQkFDOUQsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvSVQ7YUFDRjs7O1lBOUlPLHdCQUF3QjtZQUR4QixvQkFBb0I7WUFGcEIsa0JBQWtCO1lBUWxCLGVBQWU7Ozt3QkE0SXBCLFdBQVcsU0FBQyw0Q0FBNEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSG9zdEJpbmRpbmd9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7T25Ib2xkQ29kZX0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9vbi1ob2xkLWNvZGUuYm9cIjtcclxuaW1wb3J0IHtGaWx0ZXJJdGVtVmlld21vZGVsfSBmcm9tIFwiLi4vLi4vLi4vLi4vLi4vbW9kZWwvZmlsdGVyLWl0ZW0udmlld21vZGVsXCI7XHJcbmltcG9ydCB7RmlsdGVyVmlld21vZGVsfSBmcm9tIFwiLi4vLi4vLi4vLi4vLi4vbW9kZWwvZmlsdGVyLXZpZXdtb2RlbFwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uRmlsdGVyQ29udGVudEJhc2VDb21wb25lbnR9IGZyb20gXCIuLi8uLi8uLi8uLi9jb3JlL2Jhc2UvdHJhbnNhY3Rpb24tZmlsdGVyLWNvbnRlbnQtYmFzZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtGaWx0ZXJSZXF1ZXN0U2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvZmlsdGVyLXJlcXVlc3Quc2VydmljZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VhcmNoU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tc2VhcmNoLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtTYWxlc1BlcnNvbn0gZnJvbSBcIkBjb2xpam5pdC9yZWxhdGlvbmFwaS9idWlsZC9tb2RlbC9zYWxlcy1wZXJzb24uYm9cIjtcclxuaW1wb3J0IHtUYWd9IGZyb20gXCJAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC90YWdcIjtcclxuaW1wb3J0IHtCcmFuY2hMb3Z9IGZyb20gXCJAY29saWpuaXQvcmVsYXRpb25hcGkvYnVpbGQvbW9kZWwvYnJhbmNoLWxvdi5ib1wiO1xyXG5pbXBvcnQge0NvRG9tYWluVmFsdWV9IGZyb20gXCJAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9jby1kb21haW4tdmFsdWUuYm9cIjtcclxuaW1wb3J0IHtSZWxhdGlvblNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi8uLi8uLi9zZXJ2aWNlL3JlbGF0aW9uLnNlcnZpY2VcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY28tdHJhbnNhY3Rpb24tcHVyY2hhc2Utb3JkZXItZmlsdGVyLWNvbnRlbnQtb3JkZXInLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tZmlsdGVyLWNvbnRlbnQtb3JkZXItd3JhcHBlciB0cmFuc2FjdGlvbi1maWx0ZXItY29udGVudC13cmFwcGVyXCIgbGF6eVJlbmRlck1hc3Rlcj5cclxuXHJcbiAgICAgIDwhLS1Jbmtvb3BudW1tZXItLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIiBsYXp5UmVuZGVyICNsYXp5UmVuZGVyVHJhbnNOcj1cImxhenlSZW5kZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0gICpuZ0lmPVwibGF6eVJlbmRlclRyYW5zTnIuaXNTaG93aW5nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidQVVJDSEFTRU5VTUJFUidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbY3VzdG9tQ29udGVudF09XCJ0cnVlXCI+XHJcbiAgICAgICAgICA8Y28taW5wdXQtdGV4dCBbKG1vZGVsKV09XCJzZWFyY2hSZXF1ZXN0LnRyYW5zTnJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidQVVJDSEFTRU5VTUJFUicgfCBsb2NhbGl6ZVwiPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1PcmRlcmRhdHVtLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCIgbGF6eVJlbmRlciAjbGF6eVJlbmRlclRyYW5zRGF0ZT1cImxhenlSZW5kZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0gKm5nSWY9XCJsYXp5UmVuZGVyVHJhbnNEYXRlLmlzU2hvd2luZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInT1JERVJfREFURSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbY3VzdG9tQ29udGVudF09XCJ0cnVlXCI+XHJcbiAgICAgICAgICA8Y28taW5wdXQtZGF0ZS1yYW5nZVxyXG4gICAgICAgICAgICBbc3RhcnREYXRlXT1cInRyYW5zU3RhcnREYXRlXCJcclxuICAgICAgICAgICAgW2VuZERhdGVdPVwidHJhbnNFbmREYXRlXCJcclxuICAgICAgICAgICAgKGRhdGVSYW5nZUNoYW5nZSk9XCJvbkRhdGVSYW5nZUNoYW5nZSgkZXZlbnQsICdyYW5nZVRyYW5zRGF0ZScpXCJcclxuICAgICAgICAgICAgKGNsZWFyZWQpPVwib25DbGVhcmVkRGF0ZVJhbmdlQ2hhbmdlKCdyYW5nZVRyYW5zRGF0ZScpXCJcclxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidTRUxFQ1RfREFURScgfCBsb2NhbGl6ZVwiPlxyXG4gICAgICAgICAgPC9jby1pbnB1dC1kYXRlLXJhbmdlPlxyXG4gICAgICAgIDwvY28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLUxldmVyZGF0dW0tLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIiBsYXp5UmVuZGVyICNsYXp5UmVuZGVyRGVsaXZlcnlEYXRlPVwibGF6eVJlbmRlclwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbSAqbmdJZj1cImxhenlSZW5kZXJEZWxpdmVyeURhdGUuaXNTaG93aW5nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidERUxJVkVSWV9EQVRFJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjdXN0b21Db250ZW50XT1cInRydWVcIj5cclxuICAgICAgICAgIDxjby1pbnB1dC1kYXRlLXJhbmdlXHJcbiAgICAgICAgICAgIFtzdGFydERhdGVdPVwiZGVsaXZlcnlTdGFydERhdGVcIlxyXG4gICAgICAgICAgICBbZW5kRGF0ZV09XCJkZWxpdmVyeUVuZERhdGVcIlxyXG4gICAgICAgICAgICAoZGF0ZVJhbmdlQ2hhbmdlKT1cIm9uRGF0ZVJhbmdlQ2hhbmdlKCRldmVudCwgJ2RlbGl2ZXJ5RGF0ZVJhbmdlJylcIlxyXG4gICAgICAgICAgICAoY2xlYXJlZCk9XCJvbkNsZWFyZWREYXRlUmFuZ2VDaGFuZ2UoJ2RlbGl2ZXJ5RGF0ZVJhbmdlJylcIlxyXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1NFTEVDVF9EQVRFJyB8IGxvY2FsaXplXCI+XHJcbiAgICAgICAgICA8L2NvLWlucHV0LWRhdGUtcmFuZ2U+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbT5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8IS0tRmlsaWFhbC0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWl0ZW0td3JhcHBlclwiIGxhenlSZW5kZXIgI2xhenlSZW5kZXJCcmFuY2g9XCJsYXp5UmVuZGVyXCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtICpuZ0lmPVwibGF6eVJlbmRlckJyYW5jaC5pc1Nob3dpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0JSQU5DSCdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJicmFuY2hlc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjb2xsZWN0aW9uQ2hhbmdlKT1cImZpbHRlclJlcXVlc3RTZXJ2aWNlLmhhbmRsZUNvbGxlY3Rpb25DaGFuZ2VGb3JSYW5nZSgkZXZlbnQsICdyYW5nZUJyYW5jaElkJylcIj5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1JbmtvcGVyLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCIgbGF6eVJlbmRlciAjbGF6eVJlbmRlclNhbGVzUGVyc29uPVwibGF6eVJlbmRlclwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbSAqbmdJZj1cImxhenlSZW5kZXJTYWxlc1BlcnNvbi5pc1Nob3dpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1BVUkNIQVNFX1BFUlNPTidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJwdXJjaGFzZVBlcnNvbnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY29sbGVjdGlvbkNoYW5nZSk9XCJmaWx0ZXJSZXF1ZXN0U2VydmljZS5oYW5kbGVDb2xsZWN0aW9uQ2hhbmdlRm9yUmFuZ2UoJGV2ZW50LCAncmFuZ2VTYWxlc1BlcnNvbicpXCI+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbT5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8IS0tRWlnZW4gcmVmZXJlbnRpZS0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWl0ZW0td3JhcHBlclwiIGxhenlSZW5kZXIgI2xhenlSZW5kZXJVc2VyUmVmZXJlbmNlPVwibGF6eVJlbmRlclwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbSAqbmdJZj1cImxhenlSZW5kZXJVc2VyUmVmZXJlbmNlLmlzU2hvd2luZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInT1dOX1JFRkVSRU5DRSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbY3VzdG9tQ29udGVudF09XCJ0cnVlXCI+XHJcbiAgICAgICAgICA8Y28taW5wdXQtdGV4dCBbKG1vZGVsKV09XCJzZWFyY2hSZXF1ZXN0LnVzZXJSZWZlcmVuY2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidPV05fUkVGRVJFTkNFJyB8IGxvY2FsaXplXCI+PC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICAgIDwvY28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLVRhZ3MtLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIiBsYXp5UmVuZGVyICNsYXp5UmVuZGVyVGFncz1cImxhenlSZW5kZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0gKm5nSWY9XCJsYXp5UmVuZGVyVGFncy5pc1Nob3dpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1RBR1MnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbGxlY3Rpb25dPVwidGFnc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjb2xsZWN0aW9uQ2hhbmdlKT1cImZpbHRlclJlcXVlc3RTZXJ2aWNlLmhhbmRsZUNvbGxlY3Rpb25DaGFuZ2VGb3JSYW5nZSgkZXZlbnQsICd0YWdSYW5nZScpXCI+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbT5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8IS0tT24gaG9sZCBjb2Rlcy0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWl0ZW0td3JhcHBlclwiIGxhenlSZW5kZXIgI2xhenlSZW5kZXJPbkhvbGQ9XCJsYXp5UmVuZGVyXCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtICpuZ0lmPVwibGF6eVJlbmRlck9uSG9sZC5pc1Nob3dpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ09OX0hPTEQnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbGxlY3Rpb25dPVwib25Ib2xkQ29kZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY29sbGVjdGlvbkNoYW5nZSk9XCJmaWx0ZXJSZXF1ZXN0U2VydmljZS5oYW5kbGVDb2xsZWN0aW9uQ2hhbmdlRm9yUmFuZ2UoJGV2ZW50LCdyYW5nZU9uSG9sZENvZGVzJylcIj5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1Db21taXNzaWVjb2RlLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCIgbGF6eVJlbmRlciAjbGF6eVJlbmRlckNvbW1pc3Npb25Db2RlPVwibGF6eVJlbmRlclwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbSAqbmdJZj1cImxhenlSZW5kZXJDb21taXNzaW9uQ29kZS5pc1Nob3dpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0NPTU1JU1NJT05fQ09ERSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJjb21taXNzaW9uQ29kZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY29sbGVjdGlvbkNoYW5nZSk9XCJmaWx0ZXJSZXF1ZXN0U2VydmljZS5oYW5kbGVDb2xsZWN0aW9uQ2hhbmdlRm9yQXJyYXkoJGV2ZW50LCAnY29tbWlzc2lvbkNvZGVzJylcIj5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1NZWVyIGZpbHRlcnMgLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCIgbGF6eVJlbmRlciAjbGF6eVJlbmRlck1vcmU9XCJsYXp5UmVuZGVyXCI+XHJcbiAgICAgICAgPGNvLWZpbHRlci1pdGVtICpuZ0lmPVwibGF6eVJlbmRlck1vcmUuaXNTaG93aW5nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidNT1JFX0ZJTFRFUlMnIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbY3VzdG9tQ29udGVudF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2ZpbHRlckJ1dHRvbkxhYmVsXT1cImZpbHRlckJ1dHRvbkxhYmVsIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoZmlsdGVyQnV0dG9uQ2xpY2tlZCk9XCJvbkZpbHRlckJ1dHRvbkNsaWNrKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbZXhwYW5kZWRdPVwiZmFsc2VcIj5cclxuXHJcbiAgICAgICAgICA8IS0tT3JkZXIgZGVmaW5pdGllZi0tPlxyXG4gICAgICAgICAgPGNvLWlucHV0LWNoZWNrYm94XHJcbiAgICAgICAgICAgIFttb2RlbF09XCJzZWFyY2hSZXF1ZXN0LnRyYW5zYWN0aW9uRGVmaW5pdGl2ZSA9PT0gJ0onXCJcclxuICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cImZpbHRlclJlcXVlc3RTZXJ2aWNlLmhhbmRsZUNoZWNrYm94VmFsdWVDaGFuZ2VGb3JTdHJpbmcoJGV2ZW50LCAndHJhbnNhY3Rpb25EZWZpbml0aXZlJylcIlxyXG4gICAgICAgICAgICBbbGFiZWxdPVwiJ09SREVSX0RFRklOSVRJVkUnIHwgbG9jYWxpemVcIj48L2NvLWlucHV0LWNoZWNrYm94PlxyXG5cclxuICAgICAgICAgIDwhLS1JbmFjdGlldmUgdHJhbnNhY3RpZXMtLT5cclxuICAgICAgICAgIDxjby1pbnB1dC1jaGVja2JveFxyXG4gICAgICAgICAgICBbbW9kZWxdPVwic2VhcmNoUmVxdWVzdC5hY3RpdmUgPT09IGZhbHNlXCJcclxuICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cInNlYXJjaFJlcXVlc3QuYWN0aXZlID0gISRldmVudFwiXHJcbiAgICAgICAgICAgIFtsYWJlbF09XCInSU5BQ1RJVkVfVFJBTlNBQ1RJT05TJyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgID48L2NvLWlucHV0LWNoZWNrYm94PlxyXG5cclxuICAgICAgICAgIDwhLS1JbmNsdXNpZWYgcmV0b3VyZW4gLS0+XHJcbiAgICAgICAgICA8Y28taW5wdXQtY2hlY2tib3hcclxuICAgICAgICAgICAgW2xhYmVsXT1cIidJTkNMVURJTkdfUkVUVVJOUycgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgIFttb2RlbF09XCJzZWFyY2hSZXF1ZXN0LmluY2x1ZGluZ1JldHVybnMgPT09IDFcIlxyXG4gICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwiZmlsdGVyUmVxdWVzdFNlcnZpY2UuaGFuZGxlQ2hlY2tib3hWYWx1ZUNoYW5nZUZvck51bWJlcigkZXZlbnQsICdpbmNsdWRpbmdSZXR1cm5zJylcIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgPC9jby1pbnB1dC1jaGVja2JveD5cclxuXHJcbiAgICAgICAgICA8IS0tTGV2ZXJtZXRob2RlIG9wIChyZWdlbC9oZWFkZXIpOiBub2cgbmlldCBpbiBBUEkgLS0+XHJcbiAgICAgICAgPC9jby1maWx0ZXItaXRlbT5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICBgXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvblB1cmNoYXNlT3JkZXJGaWx0ZXJDb250ZW50T3JkZXJDb21wb25lbnQgZXh0ZW5kcyBUcmFuc2FjdGlvbkZpbHRlckNvbnRlbnRCYXNlQ29tcG9uZW50IHtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY28tdHJhbnNhY3Rpb24tc2VhcmNoLWZpbHRlci1jb250ZW50XCIpXHJcbiAgcHVibGljIHNob3dDbGFzcygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHB1cmNoYXNlUGVyc29uczogRmlsdGVySXRlbVZpZXdtb2RlbFtdO1xyXG4gIHB1YmxpYyBwdXJjaGFzZVBlcnNvbnNGaWVsZHM6IHsgdGV4dCwgdmFsdWUgfSA9IHt0ZXh0OiBcIm5hbWVcIiwgdmFsdWU6IFwicmVsYXRpb25JZFwifTtcclxuXHJcbiAgcHVibGljIHRhZ3M6IEZpbHRlckl0ZW1WaWV3bW9kZWxbXTtcclxuICBwdWJsaWMgdGFnc0ZpZWxkczogeyB0ZXh0LCB2YWx1ZSB9ID0ge3RleHQ6IFwiZGVzY3JpcHRpb25cIiwgdmFsdWU6IFwidGFnVmFsdWVJZFwifTtcclxuXHJcbiAgcHVibGljIGJyYW5jaGVzOiBGaWx0ZXJJdGVtVmlld21vZGVsW107XHJcbiAgcHVibGljIGJyYW5jaEZpZWxkczogeyB0ZXh0LCB2YWx1ZSB9ID0ge3RleHQ6IFwiZGVzY3JpcHRpb25cIiwgdmFsdWU6IFwicmVsYXRpb25JZFwifTtcclxuXHJcbiAgcHVibGljIG9uSG9sZENvZGVzOiBGaWx0ZXJJdGVtVmlld21vZGVsW107XHJcbiAgcHVibGljIG9uSG9sZENvZGVGaWVsZHM6IHsgdGV4dCwgdmFsdWUgfSA9IHt0ZXh0OiBcImRlc2NyaXB0aW9uXCIsIHZhbHVlOiBcIm9uSG9sZENvZGVcIn07XHJcblxyXG4gIHB1YmxpYyBjb21taXNzaW9uQ29kZXM6IEZpbHRlckl0ZW1WaWV3bW9kZWxbXTtcclxuICBwdWJsaWMgY29tbWlzc2lvbkNvZGVGaWVsZHM6IHsgdGV4dCwgdmFsdWUgfSA9IHt0ZXh0OiBcImRlc2NyaXB0aW9uXCIsIHZhbHVlOiBcImNvZGVcIn07XHJcblxyXG4gIHB1YmxpYyB0cmFuc1N0YXJ0RGF0ZTogRGF0ZTtcclxuICBwdWJsaWMgdHJhbnNFbmREYXRlOiBEYXRlO1xyXG4gIHB1YmxpYyBkZWxpdmVyeVN0YXJ0RGF0ZTogRGF0ZTtcclxuICBwdWJsaWMgZGVsaXZlcnlFbmREYXRlOiBEYXRlO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBzZWFyY2hTZXJ2aWNlOiBUcmFuc2FjdGlvblNlYXJjaFNlcnZpY2UsXHJcbiAgICBwdWJsaWMgZmlsdGVyUmVxdWVzdFNlcnZpY2U6IEZpbHRlclJlcXVlc3RTZXJ2aWNlLFxyXG4gICAgcHVibGljIHRyYW5zYWN0aW9uU2VydmljZTogVHJhbnNhY3Rpb25TZXJ2aWNlLFxyXG4gICAgcHVibGljIHJlbGF0aW9uU2VydmljZTogUmVsYXRpb25TZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICBzdXBlcihzZWFyY2hTZXJ2aWNlLCBmaWx0ZXJSZXF1ZXN0U2VydmljZSwgdHJhbnNhY3Rpb25TZXJ2aWNlKVxyXG4gIH1cclxuXHJcbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fc2V0UmFuZ2VEYXRlcygpO1xyXG4gICAgdGhpcy5fc2V0UHVyY2hhc2VQZXJzb25zKCk7XHJcbiAgICB0aGlzLl9zZXRUYWdzKCk7XHJcbiAgICB0aGlzLl9zZXRCcmFuY2hlcygpO1xyXG4gICAgdGhpcy5fc2V0T25Ib2xkQ29kZXMoKTtcclxuICAgIHRoaXMuX3NldENvbW1pc3Npb25Db2RlcygpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfc2V0UmFuZ2VEYXRlcygpOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnNTdGFydERhdGUgPSB0aGlzLmZpbHRlclJlcXVlc3RTZXJ2aWNlLmdldERhdGVGcm9tRmlsdGVyUmVxdWVzdFJhbmdlKHRoaXMuc2VhcmNoUmVxdWVzdC5yYW5nZVRyYW5zRGF0ZSwgMCk7XHJcbiAgICB0aGlzLnRyYW5zRW5kRGF0ZSA9IHRoaXMuZmlsdGVyUmVxdWVzdFNlcnZpY2UuZ2V0RGF0ZUZyb21GaWx0ZXJSZXF1ZXN0UmFuZ2UodGhpcy5zZWFyY2hSZXF1ZXN0LnJhbmdlVHJhbnNEYXRlLCAxKTtcclxuICAgIHRoaXMuZGVsaXZlcnlTdGFydERhdGUgPSB0aGlzLmZpbHRlclJlcXVlc3RTZXJ2aWNlLmdldERhdGVGcm9tRmlsdGVyUmVxdWVzdFJhbmdlKHRoaXMuc2VhcmNoUmVxdWVzdC5kZWxpdmVyeURhdGVSYW5nZSwgMCk7XHJcbiAgICB0aGlzLmRlbGl2ZXJ5RW5kRGF0ZSA9IHRoaXMuZmlsdGVyUmVxdWVzdFNlcnZpY2UuZ2V0RGF0ZUZyb21GaWx0ZXJSZXF1ZXN0UmFuZ2UodGhpcy5zZWFyY2hSZXF1ZXN0LmRlbGl2ZXJ5RGF0ZVJhbmdlLCAxKTtcclxuICB9XHJcblxyXG4gIC8vSW5rb3BlclxyXG4gIHByaXZhdGUgX3NldFB1cmNoYXNlUGVyc29ucygpOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldFNhbGVzUGVyc29ucygpLnRoZW4oKHBlcnNvbnM6IFNhbGVzUGVyc29uW10pID0+IHtcclxuICAgICAgdGhpcy5wdXJjaGFzZVBlcnNvbnMgPSBuZXcgRmlsdGVyVmlld21vZGVsKHBlcnNvbnMsIHRoaXMucHVyY2hhc2VQZXJzb25zRmllbGRzKS5maWx0ZXJJdGVtcztcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLy8gVGFnc1xyXG4gIHByaXZhdGUgX3NldFRhZ3MoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRUYWdzKDEpLnRoZW4oKHRhZ3M6IFRhZ1tdKSA9PiB7XHJcbiAgICAgIHRoaXMudGFncyA9IG5ldyBGaWx0ZXJWaWV3bW9kZWwodGFncywgdGhpcy50YWdzRmllbGRzKS5maWx0ZXJJdGVtcztcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLy9CcmFuY2hlc1xyXG4gIHByaXZhdGUgX3NldEJyYW5jaGVzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZWxhdGlvblNlcnZpY2UuZ2V0QnJhbmNoZXMoKS50aGVuKChicmFuY2hlczogQnJhbmNoTG92W10pID0+IHtcclxuICAgICAgdGhpcy5icmFuY2hlcyA9IG5ldyBGaWx0ZXJWaWV3bW9kZWwoYnJhbmNoZXMsIHRoaXMuYnJhbmNoRmllbGRzKS5maWx0ZXJJdGVtcztcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLy9PbkhvbGRDb2Rlc1xyXG4gIHByaXZhdGUgX3NldE9uSG9sZENvZGVzKCk6IHZvaWQge1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0T25Ib2xkQ29kZXMoKS50aGVuKChvbkhvbGRDb2RlczogT25Ib2xkQ29kZVtdKSA9PiB7XHJcbiAgICAgIHRoaXMub25Ib2xkQ29kZXMgPSBuZXcgRmlsdGVyVmlld21vZGVsKG9uSG9sZENvZGVzLCB0aGlzLm9uSG9sZENvZGVGaWVsZHMpLmZpbHRlckl0ZW1zO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvL0NvbW1pc3Npb25Db2Rlc1xyXG4gIHByaXZhdGUgX3NldENvbW1pc3Npb25Db2RlcygpOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldENvbW1pc3Npb25Db2RlcyhcIk5MXCIpLnRoZW4oKGNvbW1pc3Npb25Db2RlczogQ29Eb21haW5WYWx1ZVtdKSA9PiB7XHJcbiAgICAgIHRoaXMuY29tbWlzc2lvbkNvZGVzID0gbmV3IEZpbHRlclZpZXdtb2RlbChjb21taXNzaW9uQ29kZXMsIHRoaXMuY29tbWlzc2lvbkNvZGVGaWVsZHMpLmZpbHRlckl0ZW1zO1xyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
220
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tcHVyY2hhc2Utb3JkZXItZmlsdGVyLWNvbnRlbnQtb3JkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvdHJhbnNhY3Rpb24tc2VhcmNoL3RyYW5zYWN0aW9uLWZpbHRlci1jb250ZW50L3B1cmNoYXNlLW9yZGVyLWZpbHRlci1jb250ZW50L3RyYW5zYWN0aW9uLXB1cmNoYXNlLW9yZGVyLWZpbHRlci1jb250ZW50LW9yZGVyL3RyYW5zYWN0aW9uLXB1cmNoYXNlLW9yZGVyLWZpbHRlci1jb250ZW50LW9yZGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFdBQVcsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUdyRCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDdEUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDOUUsT0FBTyxFQUFDLHFDQUFxQyxFQUFDLE1BQU0saUVBQWlFLENBQUM7QUFDdEgsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDN0UsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFJckYsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUNyRixPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0scURBQXFELENBQUM7QUEySWpGLE1BQU0sT0FBTyxtREFBb0QsU0FBUSxxQ0FBcUM7SUEyQjVHLFlBQ1MsYUFBdUMsRUFDdkMsb0JBQTBDLEVBQzFDLGtCQUFzQyxFQUN0QyxlQUFnQztRQUV2QyxLQUFLLENBQUMsYUFBYSxFQUFFLG9CQUFvQixFQUFFLGtCQUFrQixDQUFDLENBQUE7UUFMdkQsa0JBQWEsR0FBYixhQUFhLENBQTBCO1FBQ3ZDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUN0QyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUF2QmxDLDBCQUFxQixHQUFvQixFQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBQyxDQUFDO1FBRzdFLGVBQVUsR0FBb0IsRUFBQyxJQUFJLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUMsQ0FBQztRQUd6RSxpQkFBWSxHQUFvQixFQUFDLElBQUksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBQyxDQUFDO1FBRzFFLHFCQUFnQixHQUFvQixFQUFDLElBQUksRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBQyxDQUFDO1FBRy9FLHlCQUFvQixHQUFvQixFQUFDLElBQUksRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBQyxDQUFDO0lBY3BGLENBQUM7SUEvQk0sU0FBUztRQUNkLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQStCTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNoQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFTyxjQUFjO1FBQ3BCLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLDZCQUE2QixDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3BILElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLDZCQUE2QixDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2xILElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsNkJBQTZCLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUMxSCxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyw2QkFBNkIsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGlCQUFpQixFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzFILENBQUM7SUFFRCxTQUFTO0lBQ0QsbUJBQW1CO1FBQ3pCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFzQixFQUFFLEVBQUU7WUFDeEUsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLGVBQWUsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUMsV0FBVyxDQUFDO1FBQzlGLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE9BQU87SUFDQyxRQUFRO1FBQ2QsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFXLEVBQUUsRUFBRTtZQUN0RCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksZUFBZSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsV0FBVyxDQUFDO1FBQ3JFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFVBQVU7SUFDRixZQUFZO1FBQ2xCLE1BQU0sT0FBTyxHQUFvQixJQUFJLGVBQWUsRUFBRSxDQUFDO1FBQ3ZELE9BQU8sQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDLE1BQU0sQ0FBQztRQUMzQyxJQUFJLENBQUMsZUFBZSxDQUFDLHNCQUFzQixDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLFFBQThCLEVBQUUsRUFBRTtZQUMzRixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksZUFBZSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsV0FBVyxDQUFDO1FBQy9FLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGFBQWE7SUFDTCxlQUFlO1FBQ3JCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxXQUF5QixFQUFFLEVBQUU7WUFDMUUsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsV0FBVyxDQUFDO1FBQ3pGLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGlCQUFpQjtJQUNULG1CQUFtQjtRQUN6QixJQUFJLENBQUMsa0JBQWtCLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsZUFBZ0MsRUFBRSxFQUFFO1lBQ3pGLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxlQUFlLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLFdBQVcsQ0FBQztRQUNyRyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OztZQS9ORixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLG9EQUFvRDtnQkFDOUQsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvSVQ7YUFDRjs7O1lBaEpPLHdCQUF3QjtZQUR4QixvQkFBb0I7WUFGcEIsa0JBQWtCO1lBT2xCLGVBQWU7Ozt3QkErSXBCLFdBQVcsU0FBQyw0Q0FBNEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSG9zdEJpbmRpbmd9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7T25Ib2xkQ29kZX0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9vbi1ob2xkLWNvZGUuYm9cIjtcclxuaW1wb3J0IHtGaWx0ZXJJdGVtVmlld21vZGVsfSBmcm9tIFwiLi4vLi4vLi4vLi4vLi4vbW9kZWwvZmlsdGVyLWl0ZW0udmlld21vZGVsXCI7XHJcbmltcG9ydCB7RmlsdGVyVmlld21vZGVsfSBmcm9tIFwiLi4vLi4vLi4vLi4vLi4vbW9kZWwvZmlsdGVyLXZpZXdtb2RlbFwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uRmlsdGVyQ29udGVudEJhc2VDb21wb25lbnR9IGZyb20gXCIuLi8uLi8uLi8uLi9jb3JlL2Jhc2UvdHJhbnNhY3Rpb24tZmlsdGVyLWNvbnRlbnQtYmFzZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtGaWx0ZXJSZXF1ZXN0U2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvZmlsdGVyLXJlcXVlc3Quc2VydmljZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VhcmNoU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tc2VhcmNoLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtTYWxlc1BlcnNvbn0gZnJvbSBcIkBjb2xpam5pdC9yZWxhdGlvbmFwaS9idWlsZC9tb2RlbC9zYWxlcy1wZXJzb24uYm9cIjtcclxuaW1wb3J0IHtUYWd9IGZyb20gXCJAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC90YWdcIjtcclxuaW1wb3J0IHtDb0RvbWFpblZhbHVlfSBmcm9tIFwiQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvY28tZG9tYWluLXZhbHVlLmJvXCI7XHJcbmltcG9ydCB7UmVsYXRpb25TZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vLi4vLi4vc2VydmljZS9yZWxhdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFJlbGF0aW9uUmVxdWVzdCB9IGZyb20gXCJAY29saWpuaXQvcmVsYXRpb25hcGkvYnVpbGQvbW9kZWwvcmVsYXRpb24tcmVxdWVzdFwiO1xyXG5pbXBvcnQge1JlbGF0aW9uS2luZH0gZnJvbSBcIkBjb2xpam5pdC9yZWxhdGlvbmFwaS9idWlsZC9lbnVtL3JlbGF0aW9uLWtpbmQuZW51bVwiO1xyXG5pbXBvcnQge1JlbGF0aW9uTGlzdE9iamVjdH0gZnJvbSBcIkBjb2xpam5pdC9yZWxhdGlvbmFwaS9idWlsZC9tb2RlbC9yZWxhdGlvbi1saXN0LW9iamVjdC5ib1wiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjby10cmFuc2FjdGlvbi1wdXJjaGFzZS1vcmRlci1maWx0ZXItY29udGVudC1vcmRlcicsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1maWx0ZXItY29udGVudC1vcmRlci13cmFwcGVyIHRyYW5zYWN0aW9uLWZpbHRlci1jb250ZW50LXdyYXBwZXJcIiBsYXp5UmVuZGVyTWFzdGVyPlxyXG5cclxuICAgICAgPCEtLUlua29vcG51bW1lci0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWl0ZW0td3JhcHBlclwiIGxhenlSZW5kZXIgI2xhenlSZW5kZXJUcmFuc05yPVwibGF6eVJlbmRlclwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbSAgKm5nSWY9XCJsYXp5UmVuZGVyVHJhbnNOci5pc1Nob3dpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1BVUkNIQVNFTlVNQkVSJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjdXN0b21Db250ZW50XT1cInRydWVcIj5cclxuICAgICAgICAgIDxjby1pbnB1dC10ZXh0IFsobW9kZWwpXT1cInNlYXJjaFJlcXVlc3QudHJhbnNOclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1BVUkNIQVNFTlVNQkVSJyB8IGxvY2FsaXplXCI+PC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICAgIDwvY28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLU9yZGVyZGF0dW0tLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIiBsYXp5UmVuZGVyICNsYXp5UmVuZGVyVHJhbnNEYXRlPVwibGF6eVJlbmRlclwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbSAqbmdJZj1cImxhenlSZW5kZXJUcmFuc0RhdGUuaXNTaG93aW5nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidPUkRFUl9EQVRFJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjdXN0b21Db250ZW50XT1cInRydWVcIj5cclxuICAgICAgICAgIDxjby1pbnB1dC1kYXRlLXJhbmdlXHJcbiAgICAgICAgICAgIFtzdGFydERhdGVdPVwidHJhbnNTdGFydERhdGVcIlxyXG4gICAgICAgICAgICBbZW5kRGF0ZV09XCJ0cmFuc0VuZERhdGVcIlxyXG4gICAgICAgICAgICAoZGF0ZVJhbmdlQ2hhbmdlKT1cIm9uRGF0ZVJhbmdlQ2hhbmdlKCRldmVudCwgJ3JhbmdlVHJhbnNEYXRlJylcIlxyXG4gICAgICAgICAgICAoY2xlYXJlZCk9XCJvbkNsZWFyZWREYXRlUmFuZ2VDaGFuZ2UoJ3JhbmdlVHJhbnNEYXRlJylcIlxyXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1NFTEVDVF9EQVRFJyB8IGxvY2FsaXplXCI+XHJcbiAgICAgICAgICA8L2NvLWlucHV0LWRhdGUtcmFuZ2U+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbT5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8IS0tTGV2ZXJkYXR1bS0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWl0ZW0td3JhcHBlclwiIGxhenlSZW5kZXIgI2xhenlSZW5kZXJEZWxpdmVyeURhdGU9XCJsYXp5UmVuZGVyXCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtICpuZ0lmPVwibGF6eVJlbmRlckRlbGl2ZXJ5RGF0ZS5pc1Nob3dpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0RFTElWRVJZX0RBVEUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2N1c3RvbUNvbnRlbnRdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgPGNvLWlucHV0LWRhdGUtcmFuZ2VcclxuICAgICAgICAgICAgW3N0YXJ0RGF0ZV09XCJkZWxpdmVyeVN0YXJ0RGF0ZVwiXHJcbiAgICAgICAgICAgIFtlbmREYXRlXT1cImRlbGl2ZXJ5RW5kRGF0ZVwiXHJcbiAgICAgICAgICAgIChkYXRlUmFuZ2VDaGFuZ2UpPVwib25EYXRlUmFuZ2VDaGFuZ2UoJGV2ZW50LCAnZGVsaXZlcnlEYXRlUmFuZ2UnKVwiXHJcbiAgICAgICAgICAgIChjbGVhcmVkKT1cIm9uQ2xlYXJlZERhdGVSYW5nZUNoYW5nZSgnZGVsaXZlcnlEYXRlUmFuZ2UnKVwiXHJcbiAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInU0VMRUNUX0RBVEUnIHwgbG9jYWxpemVcIj5cclxuICAgICAgICAgIDwvY28taW5wdXQtZGF0ZS1yYW5nZT5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1GaWxpYWFsLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCIgbGF6eVJlbmRlciAjbGF6eVJlbmRlckJyYW5jaD1cImxhenlSZW5kZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0gKm5nSWY9XCJsYXp5UmVuZGVyQnJhbmNoLmlzU2hvd2luZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInQlJBTkNIJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xsZWN0aW9uXT1cImJyYW5jaGVzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNvbGxlY3Rpb25DaGFuZ2UpPVwiZmlsdGVyUmVxdWVzdFNlcnZpY2UuaGFuZGxlQ29sbGVjdGlvbkNoYW5nZUZvclJhbmdlKCRldmVudCwgJ3JhbmdlQnJhbmNoSWQnKVwiPlxyXG4gICAgICAgIDwvY28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLUlua29wZXItLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIiBsYXp5UmVuZGVyICNsYXp5UmVuZGVyU2FsZXNQZXJzb249XCJsYXp5UmVuZGVyXCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtICpuZ0lmPVwibGF6eVJlbmRlclNhbGVzUGVyc29uLmlzU2hvd2luZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInUFVSQ0hBU0VfUEVSU09OJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xsZWN0aW9uXT1cInB1cmNoYXNlUGVyc29uc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjb2xsZWN0aW9uQ2hhbmdlKT1cImZpbHRlclJlcXVlc3RTZXJ2aWNlLmhhbmRsZUNvbGxlY3Rpb25DaGFuZ2VGb3JSYW5nZSgkZXZlbnQsICdyYW5nZVNhbGVzUGVyc29uJylcIj5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1FaWdlbiByZWZlcmVudGllLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCIgbGF6eVJlbmRlciAjbGF6eVJlbmRlclVzZXJSZWZlcmVuY2U9XCJsYXp5UmVuZGVyXCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtICpuZ0lmPVwibGF6eVJlbmRlclVzZXJSZWZlcmVuY2UuaXNTaG93aW5nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidPV05fUkVGRVJFTkNFJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjdXN0b21Db250ZW50XT1cInRydWVcIj5cclxuICAgICAgICAgIDxjby1pbnB1dC10ZXh0IFsobW9kZWwpXT1cInNlYXJjaFJlcXVlc3QudXNlclJlZmVyZW5jZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ09XTl9SRUZFUkVOQ0UnIHwgbG9jYWxpemVcIj48L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbT5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8IS0tVGFncy0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWl0ZW0td3JhcHBlclwiIGxhenlSZW5kZXIgI2xhenlSZW5kZXJUYWdzPVwibGF6eVJlbmRlclwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbSAqbmdJZj1cImxhenlSZW5kZXJUYWdzLmlzU2hvd2luZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInVEFHUydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJ0YWdzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNvbGxlY3Rpb25DaGFuZ2UpPVwiZmlsdGVyUmVxdWVzdFNlcnZpY2UuaGFuZGxlQ29sbGVjdGlvbkNoYW5nZUZvclJhbmdlKCRldmVudCwgJ3RhZ1JhbmdlJylcIj5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1PbiBob2xkIGNvZGVzLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCIgbGF6eVJlbmRlciAjbGF6eVJlbmRlck9uSG9sZD1cImxhenlSZW5kZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0gKm5nSWY9XCJsYXp5UmVuZGVyT25Ib2xkLmlzU2hvd2luZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInT05fSE9MRCdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJvbkhvbGRDb2Rlc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjb2xsZWN0aW9uQ2hhbmdlKT1cImZpbHRlclJlcXVlc3RTZXJ2aWNlLmhhbmRsZUNvbGxlY3Rpb25DaGFuZ2VGb3JSYW5nZSgkZXZlbnQsJ3JhbmdlT25Ib2xkQ29kZXMnKVwiPlxyXG4gICAgICAgIDwvY28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLUNvbW1pc3NpZWNvZGUtLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIiBsYXp5UmVuZGVyICNsYXp5UmVuZGVyQ29tbWlzc2lvbkNvZGU9XCJsYXp5UmVuZGVyXCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtICpuZ0lmPVwibGF6eVJlbmRlckNvbW1pc3Npb25Db2RlLmlzU2hvd2luZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInQ09NTUlTU0lPTl9DT0RFJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xsZWN0aW9uXT1cImNvbW1pc3Npb25Db2Rlc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjb2xsZWN0aW9uQ2hhbmdlKT1cImZpbHRlclJlcXVlc3RTZXJ2aWNlLmhhbmRsZUNvbGxlY3Rpb25DaGFuZ2VGb3JBcnJheSgkZXZlbnQsICdjb21taXNzaW9uQ29kZXMnKVwiPlxyXG4gICAgICAgIDwvY28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLU1lZXIgZmlsdGVycyAtLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIiBsYXp5UmVuZGVyICNsYXp5UmVuZGVyTW9yZT1cImxhenlSZW5kZXJcIj5cclxuICAgICAgICA8Y28tZmlsdGVyLWl0ZW0gKm5nSWY9XCJsYXp5UmVuZGVyTW9yZS5pc1Nob3dpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ01PUkVfRklMVEVSUycgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjdXN0b21Db250ZW50XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbZmlsdGVyQnV0dG9uTGFiZWxdPVwiZmlsdGVyQnV0dG9uTGFiZWwgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChmaWx0ZXJCdXR0b25DbGlja2VkKT1cIm9uRmlsdGVyQnV0dG9uQ2xpY2soKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtleHBhbmRlZF09XCJmYWxzZVwiPlxyXG5cclxuICAgICAgICAgIDwhLS1PcmRlciBkZWZpbml0aWVmLS0+XHJcbiAgICAgICAgICA8Y28taW5wdXQtY2hlY2tib3hcclxuICAgICAgICAgICAgW21vZGVsXT1cInNlYXJjaFJlcXVlc3QudHJhbnNhY3Rpb25EZWZpbml0aXZlID09PSAnSidcIlxyXG4gICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwiZmlsdGVyUmVxdWVzdFNlcnZpY2UuaGFuZGxlQ2hlY2tib3hWYWx1ZUNoYW5nZUZvclN0cmluZygkZXZlbnQsICd0cmFuc2FjdGlvbkRlZmluaXRpdmUnKVwiXHJcbiAgICAgICAgICAgIFtsYWJlbF09XCInT1JERVJfREVGSU5JVElWRScgfCBsb2NhbGl6ZVwiPjwvY28taW5wdXQtY2hlY2tib3g+XHJcblxyXG4gICAgICAgICAgPCEtLUluYWN0aWV2ZSB0cmFuc2FjdGllcy0tPlxyXG4gICAgICAgICAgPGNvLWlucHV0LWNoZWNrYm94XHJcbiAgICAgICAgICAgIFttb2RlbF09XCJzZWFyY2hSZXF1ZXN0LmFjdGl2ZSA9PT0gZmFsc2VcIlxyXG4gICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwic2VhcmNoUmVxdWVzdC5hY3RpdmUgPSAhJGV2ZW50XCJcclxuICAgICAgICAgICAgW2xhYmVsXT1cIidJTkFDVElWRV9UUkFOU0FDVElPTlMnIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgPjwvY28taW5wdXQtY2hlY2tib3g+XHJcblxyXG4gICAgICAgICAgPCEtLUluY2x1c2llZiByZXRvdXJlbiAtLT5cclxuICAgICAgICAgIDxjby1pbnB1dC1jaGVja2JveFxyXG4gICAgICAgICAgICBbbGFiZWxdPVwiJ0lOQ0xVRElOR19SRVRVUk5TJyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgICAgW21vZGVsXT1cInNlYXJjaFJlcXVlc3QuaW5jbHVkaW5nUmV0dXJucyA9PT0gMVwiXHJcbiAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJmaWx0ZXJSZXF1ZXN0U2VydmljZS5oYW5kbGVDaGVja2JveFZhbHVlQ2hhbmdlRm9yTnVtYmVyKCRldmVudCwgJ2luY2x1ZGluZ1JldHVybnMnKVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICA8L2NvLWlucHV0LWNoZWNrYm94PlxyXG5cclxuICAgICAgICAgIDwhLS1MZXZlcm1ldGhvZGUgb3AgKHJlZ2VsL2hlYWRlcik6IG5vZyBuaWV0IGluIEFQSSAtLT5cclxuICAgICAgICA8L2NvLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIGBcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uUHVyY2hhc2VPcmRlckZpbHRlckNvbnRlbnRPcmRlckNvbXBvbmVudCBleHRlbmRzIFRyYW5zYWN0aW9uRmlsdGVyQ29udGVudEJhc2VDb21wb25lbnQge1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby10cmFuc2FjdGlvbi1zZWFyY2gtZmlsdGVyLWNvbnRlbnRcIilcclxuICBwdWJsaWMgc2hvd0NsYXNzKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcHVyY2hhc2VQZXJzb25zOiBGaWx0ZXJJdGVtVmlld21vZGVsW107XHJcbiAgcHVibGljIHB1cmNoYXNlUGVyc29uc0ZpZWxkczogeyB0ZXh0LCB2YWx1ZSB9ID0ge3RleHQ6IFwibmFtZVwiLCB2YWx1ZTogXCJyZWxhdGlvbklkXCJ9O1xyXG5cclxuICBwdWJsaWMgdGFnczogRmlsdGVySXRlbVZpZXdtb2RlbFtdO1xyXG4gIHB1YmxpYyB0YWdzRmllbGRzOiB7IHRleHQsIHZhbHVlIH0gPSB7dGV4dDogXCJkZXNjcmlwdGlvblwiLCB2YWx1ZTogXCJ0YWdWYWx1ZUlkXCJ9O1xyXG5cclxuICBwdWJsaWMgYnJhbmNoZXM6IEZpbHRlckl0ZW1WaWV3bW9kZWxbXTtcclxuICBwdWJsaWMgYnJhbmNoRmllbGRzOiB7IHRleHQsIHZhbHVlIH0gPSB7dGV4dDogXCJmYW1pbHlOYW1lXCIsIHZhbHVlOiBcInJlbGF0aW9uSWRcIn07XHJcblxyXG4gIHB1YmxpYyBvbkhvbGRDb2RlczogRmlsdGVySXRlbVZpZXdtb2RlbFtdO1xyXG4gIHB1YmxpYyBvbkhvbGRDb2RlRmllbGRzOiB7IHRleHQsIHZhbHVlIH0gPSB7dGV4dDogXCJkZXNjcmlwdGlvblwiLCB2YWx1ZTogXCJvbkhvbGRDb2RlXCJ9O1xyXG5cclxuICBwdWJsaWMgY29tbWlzc2lvbkNvZGVzOiBGaWx0ZXJJdGVtVmlld21vZGVsW107XHJcbiAgcHVibGljIGNvbW1pc3Npb25Db2RlRmllbGRzOiB7IHRleHQsIHZhbHVlIH0gPSB7dGV4dDogXCJkZXNjcmlwdGlvblwiLCB2YWx1ZTogXCJjb2RlXCJ9O1xyXG5cclxuICBwdWJsaWMgdHJhbnNTdGFydERhdGU6IERhdGU7XHJcbiAgcHVibGljIHRyYW5zRW5kRGF0ZTogRGF0ZTtcclxuICBwdWJsaWMgZGVsaXZlcnlTdGFydERhdGU6IERhdGU7XHJcbiAgcHVibGljIGRlbGl2ZXJ5RW5kRGF0ZTogRGF0ZTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgc2VhcmNoU2VydmljZTogVHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLFxyXG4gICAgcHVibGljIGZpbHRlclJlcXVlc3RTZXJ2aWNlOiBGaWx0ZXJSZXF1ZXN0U2VydmljZSxcclxuICAgIHB1YmxpYyB0cmFuc2FjdGlvblNlcnZpY2U6IFRyYW5zYWN0aW9uU2VydmljZSxcclxuICAgIHB1YmxpYyByZWxhdGlvblNlcnZpY2U6IFJlbGF0aW9uU2VydmljZVxyXG4gICkge1xyXG4gICAgc3VwZXIoc2VhcmNoU2VydmljZSwgZmlsdGVyUmVxdWVzdFNlcnZpY2UsIHRyYW5zYWN0aW9uU2VydmljZSlcclxuICB9XHJcblxyXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3NldFJhbmdlRGF0ZXMoKTtcclxuICAgIHRoaXMuX3NldFB1cmNoYXNlUGVyc29ucygpO1xyXG4gICAgdGhpcy5fc2V0VGFncygpO1xyXG4gICAgdGhpcy5fc2V0QnJhbmNoZXMoKTtcclxuICAgIHRoaXMuX3NldE9uSG9sZENvZGVzKCk7XHJcbiAgICB0aGlzLl9zZXRDb21taXNzaW9uQ29kZXMoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3NldFJhbmdlRGF0ZXMoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRyYW5zU3RhcnREYXRlID0gdGhpcy5maWx0ZXJSZXF1ZXN0U2VydmljZS5nZXREYXRlRnJvbUZpbHRlclJlcXVlc3RSYW5nZSh0aGlzLnNlYXJjaFJlcXVlc3QucmFuZ2VUcmFuc0RhdGUsIDApO1xyXG4gICAgdGhpcy50cmFuc0VuZERhdGUgPSB0aGlzLmZpbHRlclJlcXVlc3RTZXJ2aWNlLmdldERhdGVGcm9tRmlsdGVyUmVxdWVzdFJhbmdlKHRoaXMuc2VhcmNoUmVxdWVzdC5yYW5nZVRyYW5zRGF0ZSwgMSk7XHJcbiAgICB0aGlzLmRlbGl2ZXJ5U3RhcnREYXRlID0gdGhpcy5maWx0ZXJSZXF1ZXN0U2VydmljZS5nZXREYXRlRnJvbUZpbHRlclJlcXVlc3RSYW5nZSh0aGlzLnNlYXJjaFJlcXVlc3QuZGVsaXZlcnlEYXRlUmFuZ2UsIDApO1xyXG4gICAgdGhpcy5kZWxpdmVyeUVuZERhdGUgPSB0aGlzLmZpbHRlclJlcXVlc3RTZXJ2aWNlLmdldERhdGVGcm9tRmlsdGVyUmVxdWVzdFJhbmdlKHRoaXMuc2VhcmNoUmVxdWVzdC5kZWxpdmVyeURhdGVSYW5nZSwgMSk7XHJcbiAgfVxyXG5cclxuICAvL0lua29wZXJcclxuICBwcml2YXRlIF9zZXRQdXJjaGFzZVBlcnNvbnMoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRTYWxlc1BlcnNvbnMoKS50aGVuKChwZXJzb25zOiBTYWxlc1BlcnNvbltdKSA9PiB7XHJcbiAgICAgIHRoaXMucHVyY2hhc2VQZXJzb25zID0gbmV3IEZpbHRlclZpZXdtb2RlbChwZXJzb25zLCB0aGlzLnB1cmNoYXNlUGVyc29uc0ZpZWxkcykuZmlsdGVySXRlbXM7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8vIFRhZ3NcclxuICBwcml2YXRlIF9zZXRUYWdzKCk6IHZvaWQge1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0VGFncygxKS50aGVuKCh0YWdzOiBUYWdbXSkgPT4ge1xyXG4gICAgICB0aGlzLnRhZ3MgPSBuZXcgRmlsdGVyVmlld21vZGVsKHRhZ3MsIHRoaXMudGFnc0ZpZWxkcykuZmlsdGVySXRlbXM7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8vQnJhbmNoZXNcclxuICBwcml2YXRlIF9zZXRCcmFuY2hlcygpOiB2b2lkIHtcclxuICAgIGNvbnN0IHJlcXVlc3Q6IFJlbGF0aW9uUmVxdWVzdCA9IG5ldyBSZWxhdGlvblJlcXVlc3QoKTtcclxuICAgIHJlcXVlc3QucmVsYXRpb25UeXBlID0gUmVsYXRpb25LaW5kLkJyYW5jaDtcclxuICAgIHRoaXMucmVsYXRpb25TZXJ2aWNlLmdldFJlbGF0aW9uTGlzdE9iamVjdHMocmVxdWVzdCkudGhlbigoYnJhbmNoZXM6IFJlbGF0aW9uTGlzdE9iamVjdFtdKSA9PiB7XHJcbiAgICAgIHRoaXMuYnJhbmNoZXMgPSBuZXcgRmlsdGVyVmlld21vZGVsKGJyYW5jaGVzLCB0aGlzLmJyYW5jaEZpZWxkcykuZmlsdGVySXRlbXM7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8vT25Ib2xkQ29kZXNcclxuICBwcml2YXRlIF9zZXRPbkhvbGRDb2RlcygpOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldE9uSG9sZENvZGVzKCkudGhlbigob25Ib2xkQ29kZXM6IE9uSG9sZENvZGVbXSkgPT4ge1xyXG4gICAgICB0aGlzLm9uSG9sZENvZGVzID0gbmV3IEZpbHRlclZpZXdtb2RlbChvbkhvbGRDb2RlcywgdGhpcy5vbkhvbGRDb2RlRmllbGRzKS5maWx0ZXJJdGVtcztcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLy9Db21taXNzaW9uQ29kZXNcclxuICBwcml2YXRlIF9zZXRDb21taXNzaW9uQ29kZXMoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRDb21taXNzaW9uQ29kZXMoXCJOTFwiKS50aGVuKChjb21taXNzaW9uQ29kZXM6IENvRG9tYWluVmFsdWVbXSkgPT4ge1xyXG4gICAgICB0aGlzLmNvbW1pc3Npb25Db2RlcyA9IG5ldyBGaWx0ZXJWaWV3bW9kZWwoY29tbWlzc2lvbkNvZGVzLCB0aGlzLmNvbW1pc3Npb25Db2RlRmllbGRzKS5maWx0ZXJJdGVtcztcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -7,6 +7,7 @@ import { TransactionFilterContentBaseComponent } from "../../../../core/base/tra
7
7
  import { FilterRequestService } from "../../../service/filter-request.service";
8
8
  import { TransactionSearchService } from "../../../service/transaction-search.service";
9
9
  import { RelationService } from "../../../../../service/relation.service";
10
+ import { RelationKind } from "@colijnit/relationapi/build/enum/relation-kind.enum";
10
11
  export class TransactionSalesOrderFilterContentOrderComponent extends TransactionFilterContentBaseComponent {
11
12
  constructor(searchService, filterRequestService, transactionService, relationService) {
12
13
  super(searchService, filterRequestService, transactionService);
@@ -16,7 +17,7 @@ export class TransactionSalesOrderFilterContentOrderComponent extends Transactio
16
17
  this.relationService = relationService;
17
18
  this.salesPersonsFields = { text: "name", value: "relationId" };
18
19
  this.tagsFields = { text: "description", value: "tagValueId" };
19
- this.branchFields = { text: "description", value: "relationId" };
20
+ this.branchFields = { text: "familyName", value: "relationId" };
20
21
  this.onHoldCodeFields = { text: "description", value: "onHoldCode" };
21
22
  this.commissionCodeFields = { text: "description", value: "code" };
22
23
  this.customerGroupFields = { text: "naam", value: "groepsnummer" };
@@ -60,7 +61,9 @@ export class TransactionSalesOrderFilterContentOrderComponent extends Transactio
60
61
  }
61
62
  //Branches
62
63
  _setBranches() {
63
- this.relationService.getBranches().then((branches) => {
64
+ const request = new RelationRequest();
65
+ request.relationType = RelationKind.Branch;
66
+ this.relationService.getRelationListObjects(request).then((branches) => {
64
67
  this.branches = new FilterViewmodel(branches, this.branchFields).filterItems;
65
68
  });
66
69
  }
@@ -236,4 +239,4 @@ TransactionSalesOrderFilterContentOrderComponent.ctorParameters = () => [
236
239
  TransactionSalesOrderFilterContentOrderComponent.propDecorators = {
237
240
  showClass: [{ type: HostBinding, args: ["class.co-transaction-search-filter-content",] }]
238
241
  };
239
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tc2FsZXMtb3JkZXItZmlsdGVyLWNvbnRlbnQtb3JkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvdHJhbnNhY3Rpb24tc2VhcmNoL3RyYW5zYWN0aW9uLWZpbHRlci1jb250ZW50L3NhbGVzLW9yZGVyLWZpbHRlci1jb250ZW50L3RyYW5zYWN0aW9uLXNhbGVzLW9yZGVyLWZpbHRlci1jb250ZW50LW9yZGVyL3RyYW5zYWN0aW9uLXNhbGVzLW9yZGVyLWZpbHRlci1jb250ZW50LW9yZGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFJckQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLG9EQUFvRCxDQUFDO0FBRW5GLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUN0RSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQUM5RSxPQUFPLEVBQUMscUNBQXFDLEVBQUMsTUFBTSxpRUFBaUUsQ0FBQztBQUN0SCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUM3RSxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSw2Q0FBNkMsQ0FBQztBQUtyRixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFnSnhFLE1BQU0sT0FBTyxnREFBaUQsU0FBUSxxQ0FBcUM7SUE4QnpHLFlBQ1MsYUFBdUMsRUFDdkMsb0JBQTBDLEVBQzFDLGtCQUFzQyxFQUN0QyxlQUFnQztRQUV2QyxLQUFLLENBQUMsYUFBYSxFQUFFLG9CQUFvQixFQUFFLGtCQUFrQixDQUFDLENBQUE7UUFMdkQsa0JBQWEsR0FBYixh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Z0I7SUFDUixrQkFBa0I7UUFDeEIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGlCQUFpQixFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsY0FBK0IsRUFBRSxFQUFFO1lBQ25GLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxlQUFlLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLFdBQVcsQ0FBQztRQUNsRyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OztZQXZQRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGlEQUFpRDtnQkFDM0QsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EwSVQ7YUFDRjs7O1lBcEpPLHdCQUF3QjtZQUR4QixvQkFBb0I7WUFGcEIsa0JBQWtCO1lBUWxCLGVBQWU7Ozt3QkFrSnBCLFdBQVcsU0FBQyw0Q0FBNEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSG9zdEJpbmRpbmd9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7Q29Eb21haW5WYWx1ZX0gZnJvbSBcIkBjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL2NvLWRvbWFpbi12YWx1ZS5ib1wiO1xyXG5pbXBvcnQge0N1c3RvbWVyR3JvdXB9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvY3VzdG9tZXItZ3JvdXAuYm9cIjtcclxuaW1wb3J0IHtPbkhvbGRDb2RlfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL29uLWhvbGQtY29kZS5ib1wiO1xyXG5pbXBvcnQge1JlbGF0aW9uUmVxdWVzdH0gZnJvbSBcIkBjb2xpam5pdC9yZWxhdGlvbmFwaS9idWlsZC9tb2RlbC9yZWxhdGlvbi1yZXF1ZXN0XCI7XHJcbmltcG9ydCB7RmlsdGVySXRlbVZpZXdtb2RlbH0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uL21vZGVsL2ZpbHRlci1pdGVtLnZpZXdtb2RlbFwiO1xyXG5pbXBvcnQge0ZpbHRlclZpZXdtb2RlbH0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uL21vZGVsL2ZpbHRlci12aWV3bW9kZWxcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkZpbHRlckNvbnRlbnRCYXNlQ29tcG9uZW50fSBmcm9tIFwiLi4vLi4vLi4vLi4vY29yZS9iYXNlL3RyYW5zYWN0aW9uLWZpbHRlci1jb250ZW50LWJhc2UuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7RmlsdGVyUmVxdWVzdFNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlL2ZpbHRlci1yZXF1ZXN0LnNlcnZpY2VcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNlYXJjaFNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLXNlYXJjaC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VGFnfSBmcm9tIFwiQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvdGFnXCI7XHJcbmltcG9ydCB7U2FsZXNQZXJzb259IGZyb20gXCJAY29saWpuaXQvcmVsYXRpb25hcGkvYnVpbGQvbW9kZWwvc2FsZXMtcGVyc29uLmJvXCI7XHJcbmltcG9ydCB7QnJhbmNoTG92fSBmcm9tIFwiQGNvbGlqbml0L3JlbGF0aW9uYXBpL2J1aWxkL21vZGVsL2JyYW5jaC1sb3YuYm9cIjtcclxuaW1wb3J0IHtSZWxhdGlvbkxpc3RPYmplY3R9IGZyb20gXCJAY29saWpuaXQvcmVsYXRpb25hcGkvYnVpbGQvbW9kZWwvcmVsYXRpb24tbGlzdC1vYmplY3QuYm9cIjtcclxuaW1wb3J0IHtSZWxhdGlvblNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi8uLi8uLi9zZXJ2aWNlL3JlbGF0aW9uLnNlcnZpY2VcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY28tdHJhbnNhY3Rpb24tc2FsZXMtb3JkZXItZmlsdGVyLWNvbnRlbnQtb3JkZXInLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tZmlsdGVyLWNvbnRlbnQtb3JkZXItd3JhcHBlciB0cmFuc2FjdGlvbi1maWx0ZXItY29udGVudC13cmFwcGVyXCIgbGF6eVJlbmRlck1hc3Rlcj5cclxuXHJcbiAgICAgIDwhLS1PcmRlcmRhdHVtLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCIgbGF6eVJlbmRlciAjbGF6eVJlbmRlck9yZGVyRGF0ZT1cImxhenlSZW5kZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0gKm5nSWY9XCJsYXp5UmVuZGVyT3JkZXJEYXRlLmlzU2hvd2luZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInT1JERVJfREFURSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbY3VzdG9tQ29udGVudF09XCJ0cnVlXCI+XHJcbiAgICAgICAgICA8Y28taW5wdXQtZGF0ZS1yYW5nZVxyXG4gICAgICAgICAgICBbc3RhcnREYXRlXT1cInRyYW5zU3RhcnREYXRlXCJcclxuICAgICAgICAgICAgW2VuZERhdGVdPVwidHJhbnNFbmREYXRlXCJcclxuICAgICAgICAgICAgKGRhdGVSYW5nZUNoYW5nZSk9XCJvbkRhdGVSYW5nZUNoYW5nZSgkZXZlbnQsICdyYW5nZVRyYW5zRGF0ZScpXCJcclxuICAgICAgICAgICAgKGNsZWFyZWQpPVwib25DbGVhcmVkRGF0ZVJhbmdlQ2hhbmdlKCdyYW5nZVRyYW5zRGF0ZScpXCJcclxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidTRUxFQ1RfREFURScgfCBsb2NhbGl6ZVwiPlxyXG4gICAgICAgICAgPC9jby1pbnB1dC1kYXRlLXJhbmdlPlxyXG4gICAgICAgIDwvY28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLUxldmVyZGF0dW0tLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIiBsYXp5UmVuZGVyICNsYXp5UmVuZGVyRGVsaXZlcnlEYXRlPVwibGF6eVJlbmRlclwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbSAqbmdJZj1cImxhenlSZW5kZXJEZWxpdmVyeURhdGUuaXNTaG93aW5nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidERUxJVkVSWV9EQVRFJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjdXN0b21Db250ZW50XT1cInRydWVcIj5cclxuICAgICAgICAgIDxjby1pbnB1dC1kYXRlLXJhbmdlXHJcbiAgICAgICAgICAgIFtzdGFydERhdGVdPVwiZGVsaXZlcnlTdGFydERhdGVcIlxyXG4gICAgICAgICAgICBbZW5kRGF0ZV09XCJkZWxpdmVyeUVuZERhdGVcIlxyXG4gICAgICAgICAgICAoZGF0ZVJhbmdlQ2hhbmdlKT1cIm9uRGF0ZVJhbmdlQ2hhbmdlKCRldmVudCwgJ2RlbGl2ZXJ5RGF0ZVJhbmdlJylcIlxyXG4gICAgICAgICAgICAoY2xlYXJlZCk9XCJvbkNsZWFyZWREYXRlUmFuZ2VDaGFuZ2UoJ2RlbGl2ZXJ5RGF0ZVJhbmdlJylcIlxyXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1NFTEVDVF9EQVRFJyB8IGxvY2FsaXplXCI+XHJcbiAgICAgICAgICA8L2NvLWlucHV0LWRhdGUtcmFuZ2U+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbT5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8IS0tRmlsaWFhbC0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWl0ZW0td3JhcHBlclwiIGxhenlSZW5kZXIgI2xhenlSZW5kZXJCcmFuY2g9XCJsYXp5UmVuZGVyXCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtICpuZ0lmPVwibGF6eVJlbmRlckJyYW5jaC5pc1Nob3dpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0JSQU5DSCdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJicmFuY2hlc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjb2xsZWN0aW9uQ2hhbmdlKT1cImZpbHRlclJlcXVlc3RTZXJ2aWNlLmhhbmRsZUNvbGxlY3Rpb25DaGFuZ2VGb3JSYW5nZSgkZXZlbnQsICdyYW5nZUJyYW5jaElkJylcIj5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1WZXJrb3Blci0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWl0ZW0td3JhcHBlclwiIGxhenlSZW5kZXIgI2xhenlSZW5kZXJIYW5kbGVkQnk9XCJsYXp5UmVuZGVyXCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtICpuZ0lmPVwibGF6eVJlbmRlckhhbmRsZWRCeS5pc1Nob3dpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0hBTkRMRURfQlknXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbGxlY3Rpb25dPVwic2FsZXNQZXJzb25zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNvbGxlY3Rpb25DaGFuZ2UpPVwiZmlsdGVyUmVxdWVzdFNlcnZpY2UuaGFuZGxlQ29sbGVjdGlvbkNoYW5nZUZvclJhbmdlKCRldmVudCwgJ3JhbmdlU2FsZXNQZXJzb24nKVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgIDwvY28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLUVpZ2VuIHJlZmVyZW50aWUtLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIiBsYXp5UmVuZGVyICNsYXp5UmVuZGVyVXNlclJlZmVyZW5jZT1cImxhenlSZW5kZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0gKm5nSWY9XCJsYXp5UmVuZGVyVXNlclJlZmVyZW5jZS5pc1Nob3dpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ09XTl9SRUZFUkVOQ0UnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2N1c3RvbUNvbnRlbnRdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgPGNvLWlucHV0LXRleHQgWyhtb2RlbCldPVwic2VhcmNoUmVxdWVzdC51c2VyUmVmZXJlbmNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInT1dOX1JFRkVSRU5DRScgfCBsb2NhbGl6ZVwiPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1UYWdzLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCIgbGF6eVJlbmRlciAjbGF6eVJlbmRlclRhZ3M9XCJsYXp5UmVuZGVyXCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtICpuZ0lmPVwibGF6eVJlbmRlclRhZ3MuaXNTaG93aW5nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidUQUdTJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xsZWN0aW9uXT1cInRhZ3NcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY29sbGVjdGlvbkNoYW5nZSk9XCJmaWx0ZXJSZXF1ZXN0U2VydmljZS5oYW5kbGVDb2xsZWN0aW9uQ2hhbmdlRm9yUmFuZ2UoJGV2ZW50LCAndGFnUmFuZ2UnKVwiPlxyXG4gICAgICAgICAgPGNvLWlucHV0LXRleHQgWyhtb2RlbCldPVwic2VhcmNoUmVxdWVzdC50YWdSYW5nZVwiIFtwbGFjZWhvbGRlcl09XCInVEFHUycgfCBsb2NhbGl6ZVwiPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1PbiBob2xkIGNvZGVzLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCIgbGF6eVJlbmRlciAjbGF6eVJlbmRlck9uSG9sZD1cImxhenlSZW5kZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0gKm5nSWY9XCJsYXp5UmVuZGVyT25Ib2xkLmlzU2hvd2luZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInT05fSE9MRCdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJvbkhvbGRDb2Rlc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjb2xsZWN0aW9uQ2hhbmdlKT1cImZpbHRlclJlcXVlc3RTZXJ2aWNlLmhhbmRsZUNvbGxlY3Rpb25DaGFuZ2VGb3JSYW5nZSgkZXZlbnQsJ3JhbmdlT25Ib2xkQ29kZXMnKVwiPlxyXG4gICAgICAgICAgPGNvLWlucHV0LXRleHQgWyhtb2RlbCldPVwic2VhcmNoUmVxdWVzdC50YWdSYW5nZVwiIFtwbGFjZWhvbGRlcl09XCInVEFHUycgfCBsb2NhbGl6ZVwiPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1PcmRlciBkZWZpbml0aWVmLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCIgbGF6eVJlbmRlciAjbGF6eVJlbmRlclRyYW5zRGVmPVwibGF6eVJlbmRlclwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbSAqbmdJZj1cImxhenlSZW5kZXJUcmFuc0RlZi5pc1Nob3dpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ09SREVSX0RFRklOSVRJVkUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2N1c3RvbUNvbnRlbnRdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgPGNvLWlucHV0LWNoZWNrYm94XHJcbiAgICAgICAgICAgIFttb2RlbF09XCJzZWFyY2hSZXF1ZXN0LnRyYW5zYWN0aW9uRGVmaW5pdGl2ZSA9PT0gJ0onXCJcclxuICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cImZpbHRlclJlcXVlc3RTZXJ2aWNlLmhhbmRsZUNoZWNrYm94VmFsdWVDaGFuZ2VGb3JTdHJpbmcoJGV2ZW50LCAndHJhbnNhY3Rpb25EZWZpbml0aXZlJylcIlxyXG4gICAgICAgICAgICBbbGFiZWxdPVwiJ09SREVSX0RFRklOSVRJVkUnIHwgbG9jYWxpemVcIj48L2NvLWlucHV0LWNoZWNrYm94PlxyXG4gICAgICAgIDwvY28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLUNvbW1pc3NpZWNvZGUtLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIiBsYXp5UmVuZGVyICNsYXp5UmVuZGVyQ29tbWlzc2lvbkNvZGVzPVwibGF6eVJlbmRlclwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbSAqbmdJZj1cImxhenlSZW5kZXJDb21taXNzaW9uQ29kZXMuaXNTaG93aW5nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidDT01NSVNTSU9OX0NPREUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbGxlY3Rpb25dPVwiY29tbWlzc2lvbkNvZGVzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNvbGxlY3Rpb25DaGFuZ2UpPVwiZmlsdGVyUmVxdWVzdFNlcnZpY2UuaGFuZGxlQ29sbGVjdGlvbkNoYW5nZUZvckFycmF5KCRldmVudCwgJ2NvbW1pc3Npb25Db2RlcycpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbT5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8IS0tSW5hY3RpZXZlIHRyYW5zYWN0aWVzLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCIgbGF6eVJlbmRlciAjbGF6eVJlbmRlckluYWN0aXZlVHJhbnM9XCJsYXp5UmVuZGVyXCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtICpuZ0lmPVwibGF6eVJlbmRlckluYWN0aXZlVHJhbnMuaXNTaG93aW5nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidJTkFDVElWRV9UUkFOU0FDVElPTlMnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2N1c3RvbUNvbnRlbnRdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgPGNvLWlucHV0LWNoZWNrYm94XHJcbiAgICAgICAgICAgIFttb2RlbF09XCJzZWFyY2hSZXF1ZXN0LmFjdGl2ZSA9PT0gZmFsc2VcIlxyXG4gICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwic2VhcmNoUmVxdWVzdC5hY3RpdmUgPSAhJGV2ZW50XCJcclxuICAgICAgICAgICAgW2xhYmVsXT1cIidJTkFDVElWRV9UUkFOU0FDVElPTlMnIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgPjwvY28taW5wdXQtY2hlY2tib3g+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbT5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8IS0tS2xhbnRuYWFtLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCIgbGF6eVJlbmRlciAjbGF6eVJlbmRlclJlbGF0aW9uTmFtZT1cImxhenlSZW5kZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0gKm5nSWY9XCJsYXp5UmVuZGVyUmVsYXRpb25OYW1lLmlzU2hvd2luZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInQ1VTVE9NRVJfTkFNRSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbc2luZ2xlU2VsZWN0XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbbWluU2VhcmNoQ2hhcnNUb0xvYWRDb2xsZWN0aW9uXT1cIjNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbkxvYWRGbl09XCJsb2FkQ3VzdG9tZXJzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNvbGxlY3Rpb25DaGFuZ2UpPVwiZmlsdGVyUmVxdWVzdFNlcnZpY2UuaGFuZGxlQ29sbGVjdGlvbkNoYW5nZUZvclNpbmdsZVNlbGVjdCgkZXZlbnQsICdyZWxhdGlvbk5hbWUnIClcIj5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1LbGFudGdyb2VwLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCIgbGF6eVJlbmRlciAjbGF6eVJlbmRlckN1c3RvbWVyR3JvdXA9XCJsYXp5UmVuZGVyXCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtICpuZ0lmPVwibGF6eVJlbmRlckN1c3RvbWVyR3JvdXAuaXNTaG93aW5nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidDVVNUT01FUl9HUk9VUCdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbc2luZ2xlU2VsZWN0XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJjdXN0b21lckdyb3Vwc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjb2xsZWN0aW9uQ2hhbmdlKT1cImZpbHRlclJlcXVlc3RTZXJ2aWNlLmhhbmRsZUNvbGxlY3Rpb25DaGFuZ2VGb3JTaW5nbGVTZWxlY3QoJGV2ZW50LCAnY3VzdG9tZXJHcm91cElkJylcIj5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIGBcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uU2FsZXNPcmRlckZpbHRlckNvbnRlbnRPcmRlckNvbXBvbmVudCBleHRlbmRzIFRyYW5zYWN0aW9uRmlsdGVyQ29udGVudEJhc2VDb21wb25lbnQge1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby10cmFuc2FjdGlvbi1zZWFyY2gtZmlsdGVyLWNvbnRlbnRcIilcclxuICBwdWJsaWMgc2hvd0NsYXNzKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2FsZXNQZXJzb25zOiBGaWx0ZXJJdGVtVmlld21vZGVsW107XHJcbiAgcHVibGljIHNhbGVzUGVyc29uc0ZpZWxkczogeyB0ZXh0LCB2YWx1ZSB9ID0ge3RleHQ6IFwibmFtZVwiLCB2YWx1ZTogXCJyZWxhdGlvbklkXCJ9O1xyXG5cclxuICBwdWJsaWMgdGFnczogRmlsdGVySXRlbVZpZXdtb2RlbFtdO1xyXG4gIHB1YmxpYyB0YWdzRmllbGRzOiB7IHRleHQsIHZhbHVlIH0gPSB7dGV4dDogXCJkZXNjcmlwdGlvblwiLCB2YWx1ZTogXCJ0YWdWYWx1ZUlkXCJ9O1xyXG5cclxuICBwdWJsaWMgYnJhbmNoZXM6IEZpbHRlckl0ZW1WaWV3bW9kZWxbXTtcclxuICBwdWJsaWMgYnJhbmNoRmllbGRzOiB7IHRleHQsIHZhbHVlIH0gPSB7dGV4dDogXCJkZXNjcmlwdGlvblwiLCB2YWx1ZTogXCJyZWxhdGlvbklkXCJ9O1xyXG5cclxuICBwdWJsaWMgb25Ib2xkQ29kZXM6IEZpbHRlckl0ZW1WaWV3bW9kZWxbXTtcclxuICBwdWJsaWMgb25Ib2xkQ29kZUZpZWxkczogeyB0ZXh0LCB2YWx1ZSB9ID0ge3RleHQ6IFwiZGVzY3JpcHRpb25cIiwgdmFsdWU6IFwib25Ib2xkQ29kZVwifTtcclxuXHJcbiAgcHVibGljIGNvbW1pc3Npb25Db2RlczogRmlsdGVySXRlbVZpZXdtb2RlbFtdO1xyXG4gIHB1YmxpYyBjb21taXNzaW9uQ29kZUZpZWxkczogeyB0ZXh0LCB2YWx1ZSB9ID0ge3RleHQ6IFwiZGVzY3JpcHRpb25cIiwgdmFsdWU6IFwiY29kZVwifTtcclxuXHJcbiAgcHVibGljIGN1c3RvbWVyR3JvdXBzOiBGaWx0ZXJJdGVtVmlld21vZGVsW107XHJcbiAgcHVibGljIGN1c3RvbWVyR3JvdXBGaWVsZHM6IHsgdGV4dCwgdmFsdWUgfSA9IHt0ZXh0OiBcIm5hYW1cIiwgdmFsdWU6IFwiZ3JvZXBzbnVtbWVyXCJ9O1xyXG5cclxuICBwdWJsaWMgdHJhbnNTdGFydERhdGU6IERhdGU7XHJcbiAgcHVibGljIHRyYW5zRW5kRGF0ZTogRGF0ZTtcclxuICBwdWJsaWMgZGVsaXZlcnlTdGFydERhdGU6IERhdGU7XHJcbiAgcHVibGljIGRlbGl2ZXJ5RW5kRGF0ZTogRGF0ZTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgc2VhcmNoU2VydmljZTogVHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLFxyXG4gICAgcHVibGljIGZpbHRlclJlcXVlc3RTZXJ2aWNlOiBGaWx0ZXJSZXF1ZXN0U2VydmljZSxcclxuICAgIHB1YmxpYyB0cmFuc2FjdGlvblNlcnZpY2U6IFRyYW5zYWN0aW9uU2VydmljZSxcclxuICAgIHB1YmxpYyByZWxhdGlvblNlcnZpY2U6IFJlbGF0aW9uU2VydmljZSxcclxuICApIHtcclxuICAgIHN1cGVyKHNlYXJjaFNlcnZpY2UsIGZpbHRlclJlcXVlc3RTZXJ2aWNlLCB0cmFuc2FjdGlvblNlcnZpY2UpXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9zZXRSYW5nZURhdGVzKCk7XHJcbiAgICB0aGlzLl9zZXRTYWxlc1BlcnNvbnMoKTtcclxuICAgIHRoaXMuX3NldFRhZ3MoKTtcclxuICAgIHRoaXMuX3NldEJyYW5jaGVzKCk7XHJcbiAgICB0aGlzLl9zZXRPbkhvbGRDb2RlcygpO1xyXG4gICAgdGhpcy5fc2V0Q29tbWlzc2lvbkNvZGVzKCk7XHJcbiAgICB0aGlzLl9zZXRDdXN0b21lckdyb3VwcygpO1xyXG4gIH1cclxuXHJcblxyXG4gIHB1YmxpYyBsb2FkQ3VzdG9tZXJzID0gYXN5bmMgKG5hbWVGaWx0ZXI6IHN0cmluZykgPT4ge1xyXG4gICAgY29uc3QgcmVxdWVzdDogUmVsYXRpb25SZXF1ZXN0ID0gbmV3IFJlbGF0aW9uUmVxdWVzdCgpO1xyXG4gICAgcmVxdWVzdC5mYW1pbHlOYW1lID0gbmFtZUZpbHRlcjtcclxuICAgIHJldHVybiB0aGlzLnJlbGF0aW9uU2VydmljZS5nZXRSZWxhdGlvbkxpc3RPYmplY3RzKHJlcXVlc3QpLnRoZW4oKHJlbGF0aW9uczogUmVsYXRpb25MaXN0T2JqZWN0W10pID0+IHtcclxuICAgICAgcmV0dXJuIG5ldyBGaWx0ZXJWaWV3bW9kZWwocmVsYXRpb25zLCB7dGV4dDogJ2ZhbWlseU5hbWUnLCB2YWx1ZTogJ2ZhbWlseU5hbWUnfSkuZmlsdGVySXRlbXM7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3NldFJhbmdlRGF0ZXMoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRyYW5zU3RhcnREYXRlID0gdGhpcy5maWx0ZXJSZXF1ZXN0U2VydmljZS5nZXREYXRlRnJvbUZpbHRlclJlcXVlc3RSYW5nZSh0aGlzLnNlYXJjaFJlcXVlc3QucmFuZ2VUcmFuc0RhdGUsIDApO1xyXG4gICAgdGhpcy50cmFuc0VuZERhdGUgPSB0aGlzLmZpbHRlclJlcXVlc3RTZXJ2aWNlLmdldERhdGVGcm9tRmlsdGVyUmVxdWVzdFJhbmdlKHRoaXMuc2VhcmNoUmVxdWVzdC5yYW5nZVRyYW5zRGF0ZSwgMSk7XHJcbiAgICB0aGlzLmRlbGl2ZXJ5U3RhcnREYXRlID0gdGhpcy5maWx0ZXJSZXF1ZXN0U2VydmljZS5nZXREYXRlRnJvbUZpbHRlclJlcXVlc3RSYW5nZSh0aGlzLnNlYXJjaFJlcXVlc3QuZGVsaXZlcnlEYXRlUmFuZ2UsIDApO1xyXG4gICAgdGhpcy5kZWxpdmVyeUVuZERhdGUgPSB0aGlzLmZpbHRlclJlcXVlc3RTZXJ2aWNlLmdldERhdGVGcm9tRmlsdGVyUmVxdWVzdFJhbmdlKHRoaXMuc2VhcmNoUmVxdWVzdC5kZWxpdmVyeURhdGVSYW5nZSwgMSk7XHJcbiAgfVxyXG5cclxuICAvL1ZlcmtvcGVyXHJcbiAgcHJpdmF0ZSBfc2V0U2FsZXNQZXJzb25zKCk6IHZvaWQge1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0U2FsZXNQZXJzb25zKCkudGhlbigoc2FsZXNQZXJzb25zOiBTYWxlc1BlcnNvbltdKSA9PiB7XHJcbiAgICAgIHRoaXMuc2FsZXNQZXJzb25zID0gbmV3IEZpbHRlclZpZXdtb2RlbChzYWxlc1BlcnNvbnMsIHRoaXMuc2FsZXNQZXJzb25zRmllbGRzKS5maWx0ZXJJdGVtcztcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLy8gVGFnc1xyXG4gIHByaXZhdGUgX3NldFRhZ3MoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRUYWdzKDEpLnRoZW4oKHRhZ3M6IFRhZ1tdKSA9PiB7XHJcbiAgICAgIHRoaXMudGFncyA9IG5ldyBGaWx0ZXJWaWV3bW9kZWwodGFncywgdGhpcy50YWdzRmllbGRzKS5maWx0ZXJJdGVtcztcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLy9CcmFuY2hlc1xyXG4gIHByaXZhdGUgX3NldEJyYW5jaGVzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZWxhdGlvblNlcnZpY2UuZ2V0QnJhbmNoZXMoKS50aGVuKChicmFuY2hlczogQnJhbmNoTG92W10pID0+IHtcclxuICAgICAgdGhpcy5icmFuY2hlcyA9IG5ldyBGaWx0ZXJWaWV3bW9kZWwoYnJhbmNoZXMsIHRoaXMuYnJhbmNoRmllbGRzKS5maWx0ZXJJdGVtcztcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLy9PbkhvbGRDb2Rlc1xyXG4gIHByaXZhdGUgX3NldE9uSG9sZENvZGVzKCk6IHZvaWQge1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0T25Ib2xkQ29kZXMoKS50aGVuKChvbkhvbGRDb2RlczogT25Ib2xkQ29kZVtdKSA9PiB7XHJcbiAgICAgIHRoaXMub25Ib2xkQ29kZXMgPSBuZXcgRmlsdGVyVmlld21vZGVsKG9uSG9sZENvZGVzLCB0aGlzLm9uSG9sZENvZGVGaWVsZHMpLmZpbHRlckl0ZW1zO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvL0NvbW1pc3Npb25Db2Rlc1xyXG4gIHByaXZhdGUgX3NldENvbW1pc3Npb25Db2RlcygpOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldENvbW1pc3Npb25Db2RlcyhcIk5MXCIpLnRoZW4oKGNvbW1pc3Npb25Db2RlczogQ29Eb21haW5WYWx1ZVtdKSA9PiB7XHJcbiAgICAgIHRoaXMuY29tbWlzc2lvbkNvZGVzID0gbmV3IEZpbHRlclZpZXdtb2RlbChjb21taXNzaW9uQ29kZXMsIHRoaXMuY29tbWlzc2lvbkNvZGVGaWVsZHMpLmZpbHRlckl0ZW1zO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvL0N1c3RvbWVyR3JvdXBzXHJcbiAgcHJpdmF0ZSBfc2V0Q3VzdG9tZXJHcm91cHMoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRDdXN0b21lckdyb3VwcygpLnRoZW4oKGN1c3RvbWVyR3JvdXBzOiBDdXN0b21lckdyb3VwW10pID0+IHtcclxuICAgICAgdGhpcy5jdXN0b21lckdyb3VwcyA9IG5ldyBGaWx0ZXJWaWV3bW9kZWwoY3VzdG9tZXJHcm91cHMsIHRoaXMuY3VzdG9tZXJHcm91cEZpZWxkcykuZmlsdGVySXRlbXM7XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIl19
242
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tc2FsZXMtb3JkZXItZmlsdGVyLWNvbnRlbnQtb3JkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvdHJhbnNhY3Rpb24tc2VhcmNoL3RyYW5zYWN0aW9uLWZpbHRlci1jb250ZW50L3NhbGVzLW9yZGVyLWZpbHRlci1jb250ZW50L3RyYW5zYWN0aW9uLXNhbGVzLW9yZGVyLWZpbHRlci1jb250ZW50LW9yZGVyL3RyYW5zYWN0aW9uLXNhbGVzLW9yZGVyLWZpbHRlci1jb250ZW50LW9yZGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFJckQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLG9EQUFvRCxDQUFDO0FBRW5GLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUN0RSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQUM5RSxPQUFPLEVBQUMscUNBQXFDLEVBQUMsTUFBTSxpRUFBaUUsQ0FBQztBQUN0SCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUM3RSxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSw2Q0FBNkMsQ0FBQztBQUlyRixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDeEUsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBZ0pqRixNQUFNLE9BQU8sZ0RBQWlELFNBQVEscUNBQXFDO0lBOEJ6RyxZQUNTLGFBQXVDLEVBQ3ZDLG9CQUEwQyxFQUMxQyxrQkFBc0MsRUFDdEMsZUFBZ0M7UUFFdkMsS0FBSyxDQUFDLGFBQWEsRUFBRSxvQkFB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QUFnQyxFQUFFLEVBQUU7WUFDekYsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLGVBQWUsQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUMsV0FBVyxDQUFDO1FBQ3JHLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGdCQUFnQjtJQUNSLGtCQUFrQjtRQUN4QixJQUFJLENBQUMsa0JBQWtCLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxjQUErQixFQUFFLEVBQUU7WUFDbkYsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLGVBQWUsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUMsV0FBVyxDQUFDO1FBQ2xHLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7O1lBelBGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsaURBQWlEO2dCQUMzRCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTBJVDthQUNGOzs7WUFwSk8sd0JBQXdCO1lBRHhCLG9CQUFvQjtZQUZwQixrQkFBa0I7WUFPbEIsZUFBZTs7O3dCQW1KcEIsV0FBVyxTQUFDLDRDQUE0QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBIb3N0QmluZGluZ30gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtDb0RvbWFpblZhbHVlfSBmcm9tIFwiQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvY28tZG9tYWluLXZhbHVlLmJvXCI7XHJcbmltcG9ydCB7Q3VzdG9tZXJHcm91cH0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9jdXN0b21lci1ncm91cC5ib1wiO1xyXG5pbXBvcnQge09uSG9sZENvZGV9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvb24taG9sZC1jb2RlLmJvXCI7XHJcbmltcG9ydCB7UmVsYXRpb25SZXF1ZXN0fSBmcm9tIFwiQGNvbGlqbml0L3JlbGF0aW9uYXBpL2J1aWxkL21vZGVsL3JlbGF0aW9uLXJlcXVlc3RcIjtcclxuaW1wb3J0IHtGaWx0ZXJJdGVtVmlld21vZGVsfSBmcm9tIFwiLi4vLi4vLi4vLi4vLi4vbW9kZWwvZmlsdGVyLWl0ZW0udmlld21vZGVsXCI7XHJcbmltcG9ydCB7RmlsdGVyVmlld21vZGVsfSBmcm9tIFwiLi4vLi4vLi4vLi4vLi4vbW9kZWwvZmlsdGVyLXZpZXdtb2RlbFwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uRmlsdGVyQ29udGVudEJhc2VDb21wb25lbnR9IGZyb20gXCIuLi8uLi8uLi8uLi9jb3JlL2Jhc2UvdHJhbnNhY3Rpb24tZmlsdGVyLWNvbnRlbnQtYmFzZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtGaWx0ZXJSZXF1ZXN0U2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvZmlsdGVyLXJlcXVlc3Quc2VydmljZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VhcmNoU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tc2VhcmNoLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtUYWd9IGZyb20gXCJAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC90YWdcIjtcclxuaW1wb3J0IHtTYWxlc1BlcnNvbn0gZnJvbSBcIkBjb2xpam5pdC9yZWxhdGlvbmFwaS9idWlsZC9tb2RlbC9zYWxlcy1wZXJzb24uYm9cIjtcclxuaW1wb3J0IHtSZWxhdGlvbkxpc3RPYmplY3R9IGZyb20gXCJAY29saWpuaXQvcmVsYXRpb25hcGkvYnVpbGQvbW9kZWwvcmVsYXRpb24tbGlzdC1vYmplY3QuYm9cIjtcclxuaW1wb3J0IHtSZWxhdGlvblNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi8uLi8uLi9zZXJ2aWNlL3JlbGF0aW9uLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtSZWxhdGlvbktpbmR9IGZyb20gXCJAY29saWpuaXQvcmVsYXRpb25hcGkvYnVpbGQvZW51bS9yZWxhdGlvbi1raW5kLmVudW1cIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY28tdHJhbnNhY3Rpb24tc2FsZXMtb3JkZXItZmlsdGVyLWNvbnRlbnQtb3JkZXInLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tZmlsdGVyLWNvbnRlbnQtb3JkZXItd3JhcHBlciB0cmFuc2FjdGlvbi1maWx0ZXItY29udGVudC13cmFwcGVyXCIgbGF6eVJlbmRlck1hc3Rlcj5cclxuXHJcbiAgICAgIDwhLS1PcmRlcmRhdHVtLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCIgbGF6eVJlbmRlciAjbGF6eVJlbmRlck9yZGVyRGF0ZT1cImxhenlSZW5kZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0gKm5nSWY9XCJsYXp5UmVuZGVyT3JkZXJEYXRlLmlzU2hvd2luZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInT1JERVJfREFURSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbY3VzdG9tQ29udGVudF09XCJ0cnVlXCI+XHJcbiAgICAgICAgICA8Y28taW5wdXQtZGF0ZS1yYW5nZVxyXG4gICAgICAgICAgICBbc3RhcnREYXRlXT1cInRyYW5zU3RhcnREYXRlXCJcclxuICAgICAgICAgICAgW2VuZERhdGVdPVwidHJhbnNFbmREYXRlXCJcclxuICAgICAgICAgICAgKGRhdGVSYW5nZUNoYW5nZSk9XCJvbkRhdGVSYW5nZUNoYW5nZSgkZXZlbnQsICdyYW5nZVRyYW5zRGF0ZScpXCJcclxuICAgICAgICAgICAgKGNsZWFyZWQpPVwib25DbGVhcmVkRGF0ZVJhbmdlQ2hhbmdlKCdyYW5nZVRyYW5zRGF0ZScpXCJcclxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidTRUxFQ1RfREFURScgfCBsb2NhbGl6ZVwiPlxyXG4gICAgICAgICAgPC9jby1pbnB1dC1kYXRlLXJhbmdlPlxyXG4gICAgICAgIDwvY28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLUxldmVyZGF0dW0tLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIiBsYXp5UmVuZGVyICNsYXp5UmVuZGVyRGVsaXZlcnlEYXRlPVwibGF6eVJlbmRlclwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbSAqbmdJZj1cImxhenlSZW5kZXJEZWxpdmVyeURhdGUuaXNTaG93aW5nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidERUxJVkVSWV9EQVRFJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjdXN0b21Db250ZW50XT1cInRydWVcIj5cclxuICAgICAgICAgIDxjby1pbnB1dC1kYXRlLXJhbmdlXHJcbiAgICAgICAgICAgIFtzdGFydERhdGVdPVwiZGVsaXZlcnlTdGFydERhdGVcIlxyXG4gICAgICAgICAgICBbZW5kRGF0ZV09XCJkZWxpdmVyeUVuZERhdGVcIlxyXG4gICAgICAgICAgICAoZGF0ZVJhbmdlQ2hhbmdlKT1cIm9uRGF0ZVJhbmdlQ2hhbmdlKCRldmVudCwgJ2RlbGl2ZXJ5RGF0ZVJhbmdlJylcIlxyXG4gICAgICAgICAgICAoY2xlYXJlZCk9XCJvbkNsZWFyZWREYXRlUmFuZ2VDaGFuZ2UoJ2RlbGl2ZXJ5RGF0ZVJhbmdlJylcIlxyXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1NFTEVDVF9EQVRFJyB8IGxvY2FsaXplXCI+XHJcbiAgICAgICAgICA8L2NvLWlucHV0LWRhdGUtcmFuZ2U+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbT5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8IS0tRmlsaWFhbC0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWl0ZW0td3JhcHBlclwiIGxhenlSZW5kZXIgI2xhenlSZW5kZXJCcmFuY2g9XCJsYXp5UmVuZGVyXCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtICpuZ0lmPVwibGF6eVJlbmRlckJyYW5jaC5pc1Nob3dpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0JSQU5DSCdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJicmFuY2hlc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjb2xsZWN0aW9uQ2hhbmdlKT1cImZpbHRlclJlcXVlc3RTZXJ2aWNlLmhhbmRsZUNvbGxlY3Rpb25DaGFuZ2VGb3JSYW5nZSgkZXZlbnQsICdyYW5nZUJyYW5jaElkJylcIj5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1WZXJrb3Blci0tPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWl0ZW0td3JhcHBlclwiIGxhenlSZW5kZXIgI2xhenlSZW5kZXJIYW5kbGVkQnk9XCJsYXp5UmVuZGVyXCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtICpuZ0lmPVwibGF6eVJlbmRlckhhbmRsZWRCeS5pc1Nob3dpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0hBTkRMRURfQlknXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbGxlY3Rpb25dPVwic2FsZXNQZXJzb25zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNvbGxlY3Rpb25DaGFuZ2UpPVwiZmlsdGVyUmVxdWVzdFNlcnZpY2UuaGFuZGxlQ29sbGVjdGlvbkNoYW5nZUZvclJhbmdlKCRldmVudCwgJ3JhbmdlU2FsZXNQZXJzb24nKVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgIDwvY28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLUVpZ2VuIHJlZmVyZW50aWUtLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIiBsYXp5UmVuZGVyICNsYXp5UmVuZGVyVXNlclJlZmVyZW5jZT1cImxhenlSZW5kZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0gKm5nSWY9XCJsYXp5UmVuZGVyVXNlclJlZmVyZW5jZS5pc1Nob3dpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ09XTl9SRUZFUkVOQ0UnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2N1c3RvbUNvbnRlbnRdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgPGNvLWlucHV0LXRleHQgWyhtb2RlbCldPVwic2VhcmNoUmVxdWVzdC51c2VyUmVmZXJlbmNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInT1dOX1JFRkVSRU5DRScgfCBsb2NhbGl6ZVwiPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1UYWdzLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCIgbGF6eVJlbmRlciAjbGF6eVJlbmRlclRhZ3M9XCJsYXp5UmVuZGVyXCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtICpuZ0lmPVwibGF6eVJlbmRlclRhZ3MuaXNTaG93aW5nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidUQUdTJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xsZWN0aW9uXT1cInRhZ3NcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY29sbGVjdGlvbkNoYW5nZSk9XCJmaWx0ZXJSZXF1ZXN0U2VydmljZS5oYW5kbGVDb2xsZWN0aW9uQ2hhbmdlRm9yUmFuZ2UoJGV2ZW50LCAndGFnUmFuZ2UnKVwiPlxyXG4gICAgICAgICAgPGNvLWlucHV0LXRleHQgWyhtb2RlbCldPVwic2VhcmNoUmVxdWVzdC50YWdSYW5nZVwiIFtwbGFjZWhvbGRlcl09XCInVEFHUycgfCBsb2NhbGl6ZVwiPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1PbiBob2xkIGNvZGVzLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCIgbGF6eVJlbmRlciAjbGF6eVJlbmRlck9uSG9sZD1cImxhenlSZW5kZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0gKm5nSWY9XCJsYXp5UmVuZGVyT25Ib2xkLmlzU2hvd2luZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInT05fSE9MRCdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJvbkhvbGRDb2Rlc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjb2xsZWN0aW9uQ2hhbmdlKT1cImZpbHRlclJlcXVlc3RTZXJ2aWNlLmhhbmRsZUNvbGxlY3Rpb25DaGFuZ2VGb3JSYW5nZSgkZXZlbnQsJ3JhbmdlT25Ib2xkQ29kZXMnKVwiPlxyXG4gICAgICAgICAgPGNvLWlucHV0LXRleHQgWyhtb2RlbCldPVwic2VhcmNoUmVxdWVzdC50YWdSYW5nZVwiIFtwbGFjZWhvbGRlcl09XCInVEFHUycgfCBsb2NhbGl6ZVwiPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1PcmRlciBkZWZpbml0aWVmLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCIgbGF6eVJlbmRlciAjbGF6eVJlbmRlclRyYW5zRGVmPVwibGF6eVJlbmRlclwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbSAqbmdJZj1cImxhenlSZW5kZXJUcmFuc0RlZi5pc1Nob3dpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ09SREVSX0RFRklOSVRJVkUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2N1c3RvbUNvbnRlbnRdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgPGNvLWlucHV0LWNoZWNrYm94XHJcbiAgICAgICAgICAgIFttb2RlbF09XCJzZWFyY2hSZXF1ZXN0LnRyYW5zYWN0aW9uRGVmaW5pdGl2ZSA9PT0gJ0onXCJcclxuICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cImZpbHRlclJlcXVlc3RTZXJ2aWNlLmhhbmRsZUNoZWNrYm94VmFsdWVDaGFuZ2VGb3JTdHJpbmcoJGV2ZW50LCAndHJhbnNhY3Rpb25EZWZpbml0aXZlJylcIlxyXG4gICAgICAgICAgICBbbGFiZWxdPVwiJ09SREVSX0RFRklOSVRJVkUnIHwgbG9jYWxpemVcIj48L2NvLWlucHV0LWNoZWNrYm94PlxyXG4gICAgICAgIDwvY28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCEtLUNvbW1pc3NpZWNvZGUtLT5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtLXdyYXBwZXJcIiBsYXp5UmVuZGVyICNsYXp5UmVuZGVyQ29tbWlzc2lvbkNvZGVzPVwibGF6eVJlbmRlclwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbSAqbmdJZj1cImxhenlSZW5kZXJDb21taXNzaW9uQ29kZXMuaXNTaG93aW5nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidDT01NSVNTSU9OX0NPREUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbGxlY3Rpb25dPVwiY29tbWlzc2lvbkNvZGVzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNvbGxlY3Rpb25DaGFuZ2UpPVwiZmlsdGVyUmVxdWVzdFNlcnZpY2UuaGFuZGxlQ29sbGVjdGlvbkNoYW5nZUZvckFycmF5KCRldmVudCwgJ2NvbW1pc3Npb25Db2RlcycpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbT5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8IS0tSW5hY3RpZXZlIHRyYW5zYWN0aWVzLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCIgbGF6eVJlbmRlciAjbGF6eVJlbmRlckluYWN0aXZlVHJhbnM9XCJsYXp5UmVuZGVyXCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtICpuZ0lmPVwibGF6eVJlbmRlckluYWN0aXZlVHJhbnMuaXNTaG93aW5nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidJTkFDVElWRV9UUkFOU0FDVElPTlMnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2N1c3RvbUNvbnRlbnRdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgPGNvLWlucHV0LWNoZWNrYm94XHJcbiAgICAgICAgICAgIFttb2RlbF09XCJzZWFyY2hSZXF1ZXN0LmFjdGl2ZSA9PT0gZmFsc2VcIlxyXG4gICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwic2VhcmNoUmVxdWVzdC5hY3RpdmUgPSAhJGV2ZW50XCJcclxuICAgICAgICAgICAgW2xhYmVsXT1cIidJTkFDVElWRV9UUkFOU0FDVElPTlMnIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgPjwvY28taW5wdXQtY2hlY2tib3g+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1maWx0ZXItaXRlbT5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8IS0tS2xhbnRuYWFtLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCIgbGF6eVJlbmRlciAjbGF6eVJlbmRlclJlbGF0aW9uTmFtZT1cImxhenlSZW5kZXJcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyLWl0ZW0gKm5nSWY9XCJsYXp5UmVuZGVyUmVsYXRpb25OYW1lLmlzU2hvd2luZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInQ1VTVE9NRVJfTkFNRSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbc2luZ2xlU2VsZWN0XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbbWluU2VhcmNoQ2hhcnNUb0xvYWRDb2xsZWN0aW9uXT1cIjNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbkxvYWRGbl09XCJsb2FkQ3VzdG9tZXJzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNvbGxlY3Rpb25DaGFuZ2UpPVwiZmlsdGVyUmVxdWVzdFNlcnZpY2UuaGFuZGxlQ29sbGVjdGlvbkNoYW5nZUZvclNpbmdsZVNlbGVjdCgkZXZlbnQsICdyZWxhdGlvbk5hbWUnIClcIj5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS1LbGFudGdyb2VwLS0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaXRlbS13cmFwcGVyXCIgbGF6eVJlbmRlciAjbGF6eVJlbmRlckN1c3RvbWVyR3JvdXA9XCJsYXp5UmVuZGVyXCI+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtICpuZ0lmPVwibGF6eVJlbmRlckN1c3RvbWVyR3JvdXAuaXNTaG93aW5nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidDVVNUT01FUl9HUk9VUCdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbc2luZ2xlU2VsZWN0XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJjdXN0b21lckdyb3Vwc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjb2xsZWN0aW9uQ2hhbmdlKT1cImZpbHRlclJlcXVlc3RTZXJ2aWNlLmhhbmRsZUNvbGxlY3Rpb25DaGFuZ2VGb3JTaW5nbGVTZWxlY3QoJGV2ZW50LCAnY3VzdG9tZXJHcm91cElkJylcIj5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWZpbHRlci1pdGVtPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIGBcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uU2FsZXNPcmRlckZpbHRlckNvbnRlbnRPcmRlckNvbXBvbmVudCBleHRlbmRzIFRyYW5zYWN0aW9uRmlsdGVyQ29udGVudEJhc2VDb21wb25lbnQge1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby10cmFuc2FjdGlvbi1zZWFyY2gtZmlsdGVyLWNvbnRlbnRcIilcclxuICBwdWJsaWMgc2hvd0NsYXNzKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2FsZXNQZXJzb25zOiBGaWx0ZXJJdGVtVmlld21vZGVsW107XHJcbiAgcHVibGljIHNhbGVzUGVyc29uc0ZpZWxkczogeyB0ZXh0LCB2YWx1ZSB9ID0ge3RleHQ6IFwibmFtZVwiLCB2YWx1ZTogXCJyZWxhdGlvbklkXCJ9O1xyXG5cclxuICBwdWJsaWMgdGFnczogRmlsdGVySXRlbVZpZXdtb2RlbFtdO1xyXG4gIHB1YmxpYyB0YWdzRmllbGRzOiB7IHRleHQsIHZhbHVlIH0gPSB7dGV4dDogXCJkZXNjcmlwdGlvblwiLCB2YWx1ZTogXCJ0YWdWYWx1ZUlkXCJ9O1xyXG5cclxuICBwdWJsaWMgYnJhbmNoZXM6IEZpbHRlckl0ZW1WaWV3bW9kZWxbXTtcclxuICBwdWJsaWMgYnJhbmNoRmllbGRzOiB7IHRleHQsIHZhbHVlIH0gPSB7dGV4dDogXCJmYW1pbHlOYW1lXCIsIHZhbHVlOiBcInJlbGF0aW9uSWRcIn07XHJcblxyXG4gIHB1YmxpYyBvbkhvbGRDb2RlczogRmlsdGVySXRlbVZpZXdtb2RlbFtdO1xyXG4gIHB1YmxpYyBvbkhvbGRDb2RlRmllbGRzOiB7IHRleHQsIHZhbHVlIH0gPSB7dGV4dDogXCJkZXNjcmlwdGlvblwiLCB2YWx1ZTogXCJvbkhvbGRDb2RlXCJ9O1xyXG5cclxuICBwdWJsaWMgY29tbWlzc2lvbkNvZGVzOiBGaWx0ZXJJdGVtVmlld21vZGVsW107XHJcbiAgcHVibGljIGNvbW1pc3Npb25Db2RlRmllbGRzOiB7IHRleHQsIHZhbHVlIH0gPSB7dGV4dDogXCJkZXNjcmlwdGlvblwiLCB2YWx1ZTogXCJjb2RlXCJ9O1xyXG5cclxuICBwdWJsaWMgY3VzdG9tZXJHcm91cHM6IEZpbHRlckl0ZW1WaWV3bW9kZWxbXTtcclxuICBwdWJsaWMgY3VzdG9tZXJHcm91cEZpZWxkczogeyB0ZXh0LCB2YWx1ZSB9ID0ge3RleHQ6IFwibmFhbVwiLCB2YWx1ZTogXCJncm9lcHNudW1tZXJcIn07XHJcblxyXG4gIHB1YmxpYyB0cmFuc1N0YXJ0RGF0ZTogRGF0ZTtcclxuICBwdWJsaWMgdHJhbnNFbmREYXRlOiBEYXRlO1xyXG4gIHB1YmxpYyBkZWxpdmVyeVN0YXJ0RGF0ZTogRGF0ZTtcclxuICBwdWJsaWMgZGVsaXZlcnlFbmREYXRlOiBEYXRlO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBzZWFyY2hTZXJ2aWNlOiBUcmFuc2FjdGlvblNlYXJjaFNlcnZpY2UsXHJcbiAgICBwdWJsaWMgZmlsdGVyUmVxdWVzdFNlcnZpY2U6IEZpbHRlclJlcXVlc3RTZXJ2aWNlLFxyXG4gICAgcHVibGljIHRyYW5zYWN0aW9uU2VydmljZTogVHJhbnNhY3Rpb25TZXJ2aWNlLFxyXG4gICAgcHVibGljIHJlbGF0aW9uU2VydmljZTogUmVsYXRpb25TZXJ2aWNlLFxyXG4gICkge1xyXG4gICAgc3VwZXIoc2VhcmNoU2VydmljZSwgZmlsdGVyUmVxdWVzdFNlcnZpY2UsIHRyYW5zYWN0aW9uU2VydmljZSlcclxuICB9XHJcblxyXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3NldFJhbmdlRGF0ZXMoKTtcclxuICAgIHRoaXMuX3NldFNhbGVzUGVyc29ucygpO1xyXG4gICAgdGhpcy5fc2V0VGFncygpO1xyXG4gICAgdGhpcy5fc2V0QnJhbmNoZXMoKTtcclxuICAgIHRoaXMuX3NldE9uSG9sZENvZGVzKCk7XHJcbiAgICB0aGlzLl9zZXRDb21taXNzaW9uQ29kZXMoKTtcclxuICAgIHRoaXMuX3NldEN1c3RvbWVyR3JvdXBzKCk7XHJcbiAgfVxyXG5cclxuXHJcbiAgcHVibGljIGxvYWRDdXN0b21lcnMgPSBhc3luYyAobmFtZUZpbHRlcjogc3RyaW5nKSA9PiB7XHJcbiAgICBjb25zdCByZXF1ZXN0OiBSZWxhdGlvblJlcXVlc3QgPSBuZXcgUmVsYXRpb25SZXF1ZXN0KCk7XHJcbiAgICByZXF1ZXN0LmZhbWlseU5hbWUgPSBuYW1lRmlsdGVyO1xyXG4gICAgcmV0dXJuIHRoaXMucmVsYXRpb25TZXJ2aWNlLmdldFJlbGF0aW9uTGlzdE9iamVjdHMocmVxdWVzdCkudGhlbigocmVsYXRpb25zOiBSZWxhdGlvbkxpc3RPYmplY3RbXSkgPT4ge1xyXG4gICAgICByZXR1cm4gbmV3IEZpbHRlclZpZXdtb2RlbChyZWxhdGlvbnMsIHt0ZXh0OiAnZmFtaWx5TmFtZScsIHZhbHVlOiAnZmFtaWx5TmFtZSd9KS5maWx0ZXJJdGVtcztcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfc2V0UmFuZ2VEYXRlcygpOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnNTdGFydERhdGUgPSB0aGlzLmZpbHRlclJlcXVlc3RTZXJ2aWNlLmdldERhdGVGcm9tRmlsdGVyUmVxdWVzdFJhbmdlKHRoaXMuc2VhcmNoUmVxdWVzdC5yYW5nZVRyYW5zRGF0ZSwgMCk7XHJcbiAgICB0aGlzLnRyYW5zRW5kRGF0ZSA9IHRoaXMuZmlsdGVyUmVxdWVzdFNlcnZpY2UuZ2V0RGF0ZUZyb21GaWx0ZXJSZXF1ZXN0UmFuZ2UodGhpcy5zZWFyY2hSZXF1ZXN0LnJhbmdlVHJhbnNEYXRlLCAxKTtcclxuICAgIHRoaXMuZGVsaXZlcnlTdGFydERhdGUgPSB0aGlzLmZpbHRlclJlcXVlc3RTZXJ2aWNlLmdldERhdGVGcm9tRmlsdGVyUmVxdWVzdFJhbmdlKHRoaXMuc2VhcmNoUmVxdWVzdC5kZWxpdmVyeURhdGVSYW5nZSwgMCk7XHJcbiAgICB0aGlzLmRlbGl2ZXJ5RW5kRGF0ZSA9IHRoaXMuZmlsdGVyUmVxdWVzdFNlcnZpY2UuZ2V0RGF0ZUZyb21GaWx0ZXJSZXF1ZXN0UmFuZ2UodGhpcy5zZWFyY2hSZXF1ZXN0LmRlbGl2ZXJ5RGF0ZVJhbmdlLCAxKTtcclxuICB9XHJcblxyXG4gIC8vVmVya29wZXJcclxuICBwcml2YXRlIF9zZXRTYWxlc1BlcnNvbnMoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRTYWxlc1BlcnNvbnMoKS50aGVuKChzYWxlc1BlcnNvbnM6IFNhbGVzUGVyc29uW10pID0+IHtcclxuICAgICAgdGhpcy5zYWxlc1BlcnNvbnMgPSBuZXcgRmlsdGVyVmlld21vZGVsKHNhbGVzUGVyc29ucywgdGhpcy5zYWxlc1BlcnNvbnNGaWVsZHMpLmZpbHRlckl0ZW1zO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvLyBUYWdzXHJcbiAgcHJpdmF0ZSBfc2V0VGFncygpOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldFRhZ3MoMSkudGhlbigodGFnczogVGFnW10pID0+IHtcclxuICAgICAgdGhpcy50YWdzID0gbmV3IEZpbHRlclZpZXdtb2RlbCh0YWdzLCB0aGlzLnRhZ3NGaWVsZHMpLmZpbHRlckl0ZW1zO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvL0JyYW5jaGVzXHJcbiAgcHJpdmF0ZSBfc2V0QnJhbmNoZXMoKTogdm9pZCB7XHJcbiAgICBjb25zdCByZXF1ZXN0OiBSZWxhdGlvblJlcXVlc3QgPSBuZXcgUmVsYXRpb25SZXF1ZXN0KCk7XHJcbiAgICByZXF1ZXN0LnJlbGF0aW9uVHlwZSA9IFJlbGF0aW9uS2luZC5CcmFuY2g7XHJcbiAgICB0aGlzLnJlbGF0aW9uU2VydmljZS5nZXRSZWxhdGlvbkxpc3RPYmplY3RzKHJlcXVlc3QpLnRoZW4oKGJyYW5jaGVzOiBSZWxhdGlvbkxpc3RPYmplY3RbXSkgPT4ge1xyXG4gICAgICB0aGlzLmJyYW5jaGVzID0gbmV3IEZpbHRlclZpZXdtb2RlbChicmFuY2hlcywgdGhpcy5icmFuY2hGaWVsZHMpLmZpbHRlckl0ZW1zO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvL09uSG9sZENvZGVzXHJcbiAgcHJpdmF0ZSBfc2V0T25Ib2xkQ29kZXMoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRPbkhvbGRDb2RlcygpLnRoZW4oKG9uSG9sZENvZGVzOiBPbkhvbGRDb2RlW10pID0+IHtcclxuICAgICAgdGhpcy5vbkhvbGRDb2RlcyA9IG5ldyBGaWx0ZXJWaWV3bW9kZWwob25Ib2xkQ29kZXMsIHRoaXMub25Ib2xkQ29kZUZpZWxkcykuZmlsdGVySXRlbXM7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8vQ29tbWlzc2lvbkNvZGVzXHJcbiAgcHJpdmF0ZSBfc2V0Q29tbWlzc2lvbkNvZGVzKCk6IHZvaWQge1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0Q29tbWlzc2lvbkNvZGVzKFwiTkxcIikudGhlbigoY29tbWlzc2lvbkNvZGVzOiBDb0RvbWFpblZhbHVlW10pID0+IHtcclxuICAgICAgdGhpcy5jb21taXNzaW9uQ29kZXMgPSBuZXcgRmlsdGVyVmlld21vZGVsKGNvbW1pc3Npb25Db2RlcywgdGhpcy5jb21taXNzaW9uQ29kZUZpZWxkcykuZmlsdGVySXRlbXM7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8vQ3VzdG9tZXJHcm91cHNcclxuICBwcml2YXRlIF9zZXRDdXN0b21lckdyb3VwcygpOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldEN1c3RvbWVyR3JvdXBzKCkudGhlbigoY3VzdG9tZXJHcm91cHM6IEN1c3RvbWVyR3JvdXBbXSkgPT4ge1xyXG4gICAgICB0aGlzLmN1c3RvbWVyR3JvdXBzID0gbmV3IEZpbHRlclZpZXdtb2RlbChjdXN0b21lckdyb3VwcywgdGhpcy5jdXN0b21lckdyb3VwRmllbGRzKS5maWx0ZXJJdGVtcztcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -24,4 +24,4 @@ TransactionSearchHeaderModule.decorators = [
24
24
  ]
25
25
  },] }
26
26
  ];
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tc2VhcmNoLWhlYWRlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC90cmFuc2FjdGlvbi1zZWFyY2gvdHJhbnNhY3Rpb24tc2VhcmNoLWhlYWRlci90cmFuc2FjdGlvbi1zZWFyY2gtaGVhZGVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUMsWUFBWSxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ3pGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN2RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN6RixPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQWtCekYsTUFBTSxPQUFPLDZCQUE2Qjs7O1lBaEJ6QyxRQUFRLFNBQUM7Z0JBQ04sT0FBTyxFQUFFO29CQUNMLFlBQVk7b0JBQ1osVUFBVTtvQkFDVixZQUFZO29CQUNaLGlCQUFpQjtvQkFDakIscUJBQXFCO29CQUNyQixVQUFVO2lCQUNiO2dCQUNILFlBQVksRUFBRTtvQkFDWixnQ0FBZ0M7aUJBQ2pDO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxnQ0FBZ0M7aUJBQ2pDO2FBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcclxuaW1wb3J0IHtCdXR0b25Nb2R1bGUsIEljb25Nb2R1bGUsIElucHV0U2VhcmNoTW9kdWxlfSBmcm9tIFwiQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMlwiO1xyXG5pbXBvcnQgeyBQaXBlTW9kdWxlIH0gZnJvbSBcIi4uLy4uLy4uL3BpcGUvcGlwZS5tb2R1bGVcIjtcclxuaW1wb3J0IHsgVmlld01vZGVCdXR0b25zTW9kdWxlIH0gZnJvbSBcIi4uLy4uL3ZpZXctbW9kZS1idXR0b25zL3ZpZXctbW9kZS1idXR0b25zLm1vZHVsZVwiO1xyXG5pbXBvcnQgeyBUcmFuc2FjdGlvblNlYXJjaEhlYWRlckNvbXBvbmVudCB9IGZyb20gXCIuL3RyYW5zYWN0aW9uLXNlYXJjaC1oZWFkZXIuY29tcG9uZW50XCI7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgaW1wb3J0czogW1xyXG4gICAgICAgIENvbW1vbk1vZHVsZSxcclxuICAgICAgICBQaXBlTW9kdWxlLFxyXG4gICAgICAgIEJ1dHRvbk1vZHVsZSxcclxuICAgICAgICBJbnB1dFNlYXJjaE1vZHVsZSxcclxuICAgICAgICBWaWV3TW9kZUJ1dHRvbnNNb2R1bGUsXHJcbiAgICAgICAgSWNvbk1vZHVsZVxyXG4gICAgXSxcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIFRyYW5zYWN0aW9uU2VhcmNoSGVhZGVyQ29tcG9uZW50XHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBUcmFuc2FjdGlvblNlYXJjaEhlYWRlckNvbXBvbmVudFxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uU2VhcmNoSGVhZGVyTW9kdWxlIHtcclxufVxyXG4iXX0=
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tc2VhcmNoLWhlYWRlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC90cmFuc2FjdGlvbi1zZWFyY2gvdHJhbnNhY3Rpb24tc2VhcmNoLWhlYWRlci90cmFuc2FjdGlvbi1zZWFyY2gtaGVhZGVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsWUFBWSxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ3pGLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNyRCxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxrREFBa0QsQ0FBQztBQUN2RixPQUFPLEVBQUMsZ0NBQWdDLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQWtCdkYsTUFBTSxPQUFPLDZCQUE2Qjs7O1lBaEJ6QyxRQUFRLFNBQUM7Z0JBQ04sT0FBTyxFQUFFO29CQUNMLFlBQVk7b0JBQ1osVUFBVTtvQkFDVixZQUFZO29CQUNaLGlCQUFpQjtvQkFDakIscUJBQXFCO29CQUNyQixVQUFVO2lCQUNiO2dCQUNILFlBQVksRUFBRTtvQkFDWixnQ0FBZ0M7aUJBQ2pDO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxnQ0FBZ0M7aUJBQ2pDO2FBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nTW9kdWxlfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQge0J1dHRvbk1vZHVsZSwgSWNvbk1vZHVsZSwgSW5wdXRTZWFyY2hNb2R1bGV9IGZyb20gXCJAY29saWpuaXQvY29yZWNvbXBvbmVudHNfdjEyXCI7XHJcbmltcG9ydCB7UGlwZU1vZHVsZX0gZnJvbSBcIi4uLy4uLy4uL3BpcGUvcGlwZS5tb2R1bGVcIjtcclxuaW1wb3J0IHtWaWV3TW9kZUJ1dHRvbnNNb2R1bGV9IGZyb20gXCIuLi8uLi92aWV3LW1vZGUtYnV0dG9ucy92aWV3LW1vZGUtYnV0dG9ucy5tb2R1bGVcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNlYXJjaEhlYWRlckNvbXBvbmVudH0gZnJvbSBcIi4vdHJhbnNhY3Rpb24tc2VhcmNoLWhlYWRlci5jb21wb25lbnRcIjtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgICBpbXBvcnRzOiBbXHJcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgICAgIFBpcGVNb2R1bGUsXHJcbiAgICAgICAgQnV0dG9uTW9kdWxlLFxyXG4gICAgICAgIElucHV0U2VhcmNoTW9kdWxlLFxyXG4gICAgICAgIFZpZXdNb2RlQnV0dG9uc01vZHVsZSxcclxuICAgICAgICBJY29uTW9kdWxlXHJcbiAgICBdLFxyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgVHJhbnNhY3Rpb25TZWFyY2hIZWFkZXJDb21wb25lbnRcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtcclxuICAgIFRyYW5zYWN0aW9uU2VhcmNoSGVhZGVyQ29tcG9uZW50XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25TZWFyY2hIZWFkZXJNb2R1bGUge1xyXG59XHJcbiJdfQ==
@@ -143,4 +143,4 @@ TransactionSearchComponent.propDecorators = {
143
143
  createTransactionClick: [{ type: Output }],
144
144
  showClass: [{ type: HostBinding, args: ["class.co-transaction-search",] }]
145
145
  };
146
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tc2VhcmNoLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLXNlYXJjaC90cmFuc2FjdGlvbi1zZWFyY2guY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDL0UsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEgsT0FBTyxFQUFDLFdBQVcsRUFBRSxhQUFhLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUd4RSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDaEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDeEUsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFDOUUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUF1RGhGLE1BQU0sT0FBTywwQkFBMEI7SUFrQ3JDLFlBQ1Msd0JBQWtELEVBQ2pELHdCQUFpRDtRQURsRCw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO1FBQ2pELDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBeUI7UUFsQzNDLG9CQUFlLEdBQTBCLGNBQWMsQ0FBQztRQUN4RCxpQkFBWSxHQUF5QixhQUFhLENBQUM7UUFDbkQsbUJBQWMsR0FBZ0IsV0FBVyxDQUFDLEtBQUssQ0FBQztRQWV6RCxxQkFBZ0IsR0FBd0MsSUFBSSxZQUFZLEVBQXlCLENBQUM7UUFHbEcseUJBQW9CLEdBQWlDLElBQUks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cmFuc2l0aW9uLCB0cmlnZ2VyfSBmcm9tIFwiQGFuZ3VsYXIvYW5pbWF0aW9uc1wiO1xyXG5pbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE9uRGVzdHJveSwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtDb0RpcmVjdGlvbiwgQ29PcmllbnRhdGlvbn0gZnJvbSBcIkBjb2xpam5pdC9jb3JlY29tcG9uZW50c192MTJcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbktpbmR9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvZW51bS90cmFuc2FjdGlvbi1raW5kLmVudW1cIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNlYXJjaFZpZXd9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvdHJhbnNhY3Rpb24tc2VhcmNoLXZpZXcuYm9cIjtcclxuaW1wb3J0IHtTZWFyY2hWaWV3TW9kZX0gZnJvbSBcIi4uLy4uL2VudW0vc2VhcmNoLXZpZXctbW9kZS5lbnVtXCI7XHJcbmltcG9ydCB7IFNlYXJjaGJhclZpZXdNb2RlIH0gZnJvbSBcIi4uLy4uL2VudW0vc2VhcmNoYmFyLXZpZXctbW9kZS5lbnVtXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlfSBmcm9tIFwiLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLXNlYXJjaC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25FdmVudFNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWV2ZW50LnNlcnZpY2VcIjtcclxuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gXCJyeGpzXCI7XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjby10cmFuc2FjdGlvbi1zZWFyY2gnLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tc2VhcmNoLW1haW4td3JhcHBlclwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tc2VhcmNoLXdyYXBwZXJcIlxyXG4gICAgICAgICAgIFtuZ0NsYXNzXT1cImNhbGN1bGF0ZUNsYXNzZXMoKVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1maWx0ZXItd3JhcHBlciBuYXJyb3ctc2Nyb2xsYmFyXCJcclxuICAgICAgICAgICAgIFtuZ0NsYXNzXT1cImNhbGN1bGF0ZUNsYXNzZXMoKVwiXHJcbiAgICAgICAgICAgICAqbmdJZj1cInRyYW5zYWN0aW9uU2VhcmNoU2VydmljZS5zaG93RmlsdGVyU2lkZWJhclwiIEBzaG93SGlkZUZpbHRlclNpZGViYXI+XHJcbiAgICAgICAgICA8Y28tdHJhbnNhY3Rpb24tZmlsdGVyXHJcbiAgICAgICAgICAgIFt0cmFuc2FjdGlvblR5cGVdPVwidHJhbnNhY3Rpb25UeXBlXCJcclxuICAgICAgICAgICAgW2FjdGl2ZVNlYXJjaFZpZXdNb2RlXT1cInRyYW5zYWN0aW9uU2VhcmNoU2VydmljZS5hY3RpdmVTZWFyY2hWaWV3TW9kZVwiXHJcbiAgICAgICAgICAgIChjbG9zZUJ1dHRvbkNsaWNrKT1cInRyYW5zYWN0aW9uU2VhcmNoU2VydmljZS5oYW5kbGVIaWRlRmlsdGVyKClcIlxyXG4gICAgICAgICAgICAocmVzZXRGaWx0ZXJDbGljayk9XCJ0cmFuc2FjdGlvblNlYXJjaFNlcnZpY2UuaGFuZGxlUmVzZXRGaWx0ZXIoKVwiPjwvY28tdHJhbnNhY3Rpb24tZmlsdGVyPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1zZWFyY2gtcmVzdWx0LXdyYXBwZXIgY28tdHJhbnNhY3Rpb24tc21hbGwtdG9vbGJhclwiXHJcbiAgICAgICAgICAgICBbY2xhc3MuZnVsbHNjcmVlbl09XCJ0cmFuc2FjdGlvblNlYXJjaFNlcnZpY2UuZnVsbHNjcmVlblwiXHJcbiAgICAgICAgICAgICBbY2xhc3Muc2lkZWJhcl09XCIhdHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLmZ1bGxzY3JlZW5cIlxyXG4gICAgICAgICAgICAgW2NsYXNzLmNvbGxhcHNlZF09XCJ0cmFuc2FjdGlvblNlYXJjaFNlcnZpY2UuY29sbGFwc2VkXCJcclxuICAgICAgICAgICAgIFtjbGFzcy5leHBhbmRlZF09XCIhdHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLmNvbGxhcHNlZFwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLXNlYXJjaC1yZXN1bHRcclxuICAgICAgICAgICAgW3RyYW5zYWN0aW9uVHlwZV09XCJ0cmFuc2FjdGlvblR5cGVcIlxyXG4gICAgICAgICAgICBbYWN0aXZlU2VhcmNoVmlld01vZGVdPVwidHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLmFjdGl2ZVNlYXJjaFZpZXdNb2RlXCJcclxuICAgICAgICAgICAgKGZpbHRlckNsaWNrKT1cInRyYW5zYWN0aW9uU2VhcmNoU2VydmljZS50b2dnbGVGaWx0ZXIoKVwiXHJcbiAgICAgICAgICAgICh0cmFuc2FjdGlvbkNsaWNrKT1cIm9uVHJhbnNhY3Rpb25DbGljaygkZXZlbnQpXCJcclxuICAgICAgICAgICAgKHJlc2l6ZUNsaWNrKT1cIm9uU2VhcmNoVmlld1Jlc2l6ZUNsaWNrKClcIlxyXG4gICAgICAgICAgICAoY2xvc2VDbGljayk9XCJjb2xsYXBzZVNlYXJjaEJhcigpXCJcclxuICAgICAgICAgID48L2NvLXRyYW5zYWN0aW9uLXNlYXJjaC1yZXN1bHQ+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tc2VhcmNoLWNvbnRlbnQtd3JhcHBlclwiXHJcbiAgICAgICAgICAgW2NsYXNzLmZ1bGxzY3JlZW5dPVwidHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLmZ1bGxzY3JlZW5cIlxyXG4gICAgICAgICAgIFtjbGFzcy5zaWRlYmFyXT1cIiF0cmFuc2FjdGlvblNlYXJjaFNlcnZpY2UuZnVsbHNjcmVlblwiXHJcbiAgICAgICAgICAgW2NsYXNzLmNvbGxhcHNlZF09XCJ0cmFuc2FjdGlvblNlYXJjaFNlcnZpY2UuY29sbGFwc2VkXCJcclxuICAgICAgICAgICBbY2xhc3MuZXhwYW5kZWRdPVwiIXRyYW5zYWN0aW9uU2VhcmNoU2VydmljZS5jb2xsYXBzZWRcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIGAsXHJcbiAgYW5pbWF0aW9uczogW1xyXG4gICAgdHJpZ2dlcihcInNob3dIaWRlRmlsdGVyU2lkZWJhclwiLCBbXHJcbiAgICAgIHN0YXRlKFwidm9pZFwiLCBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWCgtMTAwJSknfSkpLFxyXG4gICAgICBzdGF0ZShcIipcIiwgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoMCknfSkpLFxyXG4gICAgICB0cmFuc2l0aW9uKFwidm9pZCA8PT4gKlwiLCBhbmltYXRlKFwiMjAwbXMgZWFzZS1pbi1vdXRcIikpXHJcbiAgICBdKVxyXG4gIF0sXHJcblxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uU2VhcmNoQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcclxuXHJcbiAgcHVibGljIHJlYWRvbmx5IHNlYXJjaFZpZXdNb2RlczogdHlwZW9mIFNlYXJjaFZpZXdNb2RlID0gU2VhcmNoVmlld01vZGU7XHJcbiAgcHVibGljIHJlYWRvbmx5IG9yaWVudGF0aW9uczogdHlwZW9mIENvT3JpZW50YXRpb24gPSBDb09yaWVudGF0aW9uO1xyXG4gIHB1YmxpYyByZWFkb25seSBkaXJlY3Rpb25SaWdodDogQ29EaXJlY3Rpb24gPSBDb0RpcmVjdGlvbi5SaWdodDtcclxuXHJcbiAgcHJpdmF0ZSBfdHJhbnNhY3Rpb25UeXBlOiBUcmFuc2FjdGlvbktpbmQ7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCB0cmFuc2FjdGlvblR5cGUodmFsdWU6IFRyYW5zYWN0aW9uS2luZCkge1xyXG4gICAgdGhpcy5fdHJhbnNhY3Rpb25UeXBlID0gdmFsdWU7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uU2VhcmNoU2VydmljZS50cmFuc2FjdGlvblR5cGUgPSB0aGlzLl90cmFuc2FjdGlvblR5cGU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IHRyYW5zYWN0aW9uVHlwZSgpOiBUcmFuc2FjdGlvbktpbmQge1xyXG4gICAgcmV0dXJuIHRoaXMuX3RyYW5zYWN0aW9uVHlwZTtcclxuICB9XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyB0cmFuc2FjdGlvbkNsaWNrOiBFdmVudEVtaXR0ZXI8VHJhbnNhY3Rpb25TZWFyY2hWaWV3PiA9IG5ldyBFdmVudEVtaXR0ZXI8VHJhbnNhY3Rpb25TZWFyY2hWaWV3PigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgc2VhcmNoVmlld01vZGVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxTZWFyY2hWaWV3TW9kZT4gPSBuZXcgRXZlbnRFbWl0dGVyPFNlYXJjaFZpZXdNb2RlPigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgY3JlYXRlVHJhbnNhY3Rpb25DbGljazogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby10cmFuc2FjdGlvbi1zZWFyY2hcIilcclxuICBwdWJsaWMgc2hvd0NsYXNzKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9zdWJzOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyB0cmFuc2FjdGlvblNlYXJjaFNlcnZpY2U6IFRyYW5zYWN0aW9uU2VhcmNoU2VydmljZSxcclxuICAgIHByaXZhdGUgX3RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlOiBUcmFuc2FjdGlvbkV2ZW50U2VydmljZVxyXG4gICkge1xyXG4gICAgdGhpcy5fc3Vicy5wdXNoKFxyXG4gICAgICB0aGlzLl90cmFuc2FjdGlvbkV2ZW50U2VydmljZS5jcmVhdGVUcmFuc2FjdGlvbi5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jcmVhdGVUcmFuc2FjdGlvbkNsaWNrLmVtaXQoKSlcclxuICAgIClcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fc3Vicy5mb3JFYWNoKHMgPT4gcy51bnN1YnNjcmliZSgpKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvblRyYW5zYWN0aW9uQ2xpY2sodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uU2VhcmNoVmlldyk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLmFjdGl2ZVNlYXJjaFZpZXdNb2RlID09PSB0aGlzLnNlYXJjaFZpZXdNb2Rlcy5GdWxsU2NyZWVuKSB7XHJcbiAgICAgIHRoaXMuY29sbGFwc2VTZWFyY2hCYXIoKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLl9zY3JvbGxUb1RvcCgpO1xyXG4gICAgdGhpcy50cmFuc2FjdGlvbkNsaWNrLmVtaXQodHJhbnNhY3Rpb24pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uU2VhcmNoVmlld1Jlc2l6ZUNsaWNrKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLmFjdGl2ZVNlYXJjaFZpZXdNb2RlID09PSB0aGlzLnNlYXJjaFZpZXdNb2Rlcy5TaWRlQmFyKSB7XHJcbiAgICAgIHRoaXMudHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLmFjdGl2ZVNlYXJjaFZpZXdNb2RlID0gdGhpcy5zZWFyY2hWaWV3TW9kZXMuRnVsbFNjcmVlbjtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMudHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLmFjdGl2ZVNlYXJjaFZpZXdNb2RlID0gdGhpcy5zZWFyY2hWaWV3TW9kZXMuU2lkZUJhcjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnNlYXJjaFZpZXdNb2RlQ2hhbmdlLmVtaXQodGhpcy50cmFuc2FjdGlvblNlYXJjaFNlcnZpY2UuYWN0aXZlU2VhcmNoVmlld01vZGUpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uU2lkZUNvbGxhcHNlSGFuZGxlQ2xpY2soKTogdm9pZCB7XHJcbiAgICB0aGlzLnRvZ2dsZVNlYXJjaEJhcigpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHRvZ2dsZVNlYXJjaEJhcigpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnRyYW5zYWN0aW9uU2VhcmNoU2VydmljZS5jb2xsYXBzZWQgfHwgdGhpcy50cmFuc2FjdGlvblNlYXJjaFNlcnZpY2UuZnVsbHNjcmVlbikge1xyXG4gICAgICB0aGlzLmV4cGFuZFNlYXJjaEJhcigpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5jb2xsYXBzZVNlYXJjaEJhcigpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGNvbGxhcHNlU2VhcmNoQmFyKCk6IHZvaWQge1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlYXJjaFNlcnZpY2UuYWN0aXZlU2VhcmNoVmlld01vZGUgPSB0aGlzLnNlYXJjaFZpZXdNb2Rlcy5TaWRlQmFyO1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlYXJjaFNlcnZpY2UuYWN0aXZlU2VhcmNoQmFyVmlld01vZGUgPSBTZWFyY2hiYXJWaWV3TW9kZS5Db2xsYXBzZWQ7XHJcbiAgICB0aGlzLnNlYXJjaFZpZXdNb2RlQ2hhbmdlLmVtaXQodGhpcy5zZWFyY2hWaWV3TW9kZXMuU2lkZUJhcik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZXhwYW5kU2VhcmNoQmFyKCk6IHZvaWQge1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlYXJjaFNlcnZpY2UuYWN0aXZlU2VhcmNoVmlld01vZGUgPSB0aGlzLnNlYXJjaFZpZXdNb2Rlcy5TaWRlQmFyO1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlYXJjaFNlcnZpY2UuYWN0aXZlU2VhcmNoQmFyVmlld01vZGUgPSBTZWFyY2hiYXJWaWV3TW9kZS5FeHBhbmRlZDtcclxuICAgIHRoaXMuc2VhcmNoVmlld01vZGVDaGFuZ2UuZW1pdCh0aGlzLnNlYXJjaFZpZXdNb2Rlcy5TaWRlQmFyKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjYWxjdWxhdGVDbGFzc2VzKCk6IGFueSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAnZnVsbHNjcmVlbic6IHRoaXMudHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLmZ1bGxzY3JlZW4sXHJcbiAgICAgICdzaWRlYmFyJzogIXRoaXMudHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLmZ1bGxzY3JlZW4sXHJcbiAgICAgICdjb2xsYXBzZWQnOiB0aGlzLnRyYW5zYWN0aW9uU2VhcmNoU2VydmljZS5jb2xsYXBzZWQsXHJcbiAgICAgICdleHBhbmRlZCc6ICF0aGlzLnRyYW5zYWN0aW9uU2VhcmNoU2VydmljZS5jb2xsYXBzZWQsXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfc2Nyb2xsVG9Ub3AoKTogdm9pZCB7XHJcbiAgICB3aW5kb3cuc2Nyb2xsVG8oeyB0b3A6IDAsIGJlaGF2aW9yOiAnc21vb3RoJyB9KTtcclxuICB9XHJcbn1cclxuIl19
146
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tc2VhcmNoLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLXNlYXJjaC90cmFuc2FjdGlvbi1zZWFyY2guY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDL0UsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEgsT0FBTyxFQUFDLFdBQVcsRUFBRSxhQUFhLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUd4RSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDaEUsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDdEUsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFDOUUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUF1RGhGLE1BQU0sT0FBTywwQkFBMEI7SUFrQ3JDLFlBQ1Msd0JBQWtELEVBQ2pELHdCQUFpRDtRQURsRCw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO1FBQ2pELDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBeUI7UUFsQzNDLG9CQUFlLEdBQTBCLGNBQWMsQ0FBQztRQUN4RCxpQkFBWSxHQUF5QixhQUFhLENBQUM7UUFDbkQsbUJBQWMsR0FBZ0IsV0FBVyxDQUFDLEtBQUssQ0FBQztRQWV6RCxxQkFBZ0IsR0FBd0MsSUFBSSxZQUFZLEVBQXlCLENBQUM7UUFHbEcseUJBQW9CLEdBQWlDLElBQUks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cmFuc2l0aW9uLCB0cmlnZ2VyfSBmcm9tIFwiQGFuZ3VsYXIvYW5pbWF0aW9uc1wiO1xyXG5pbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE9uRGVzdHJveSwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtDb0RpcmVjdGlvbiwgQ29PcmllbnRhdGlvbn0gZnJvbSBcIkBjb2xpam5pdC9jb3JlY29tcG9uZW50c192MTJcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbktpbmR9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvZW51bS90cmFuc2FjdGlvbi1raW5kLmVudW1cIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNlYXJjaFZpZXd9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvdHJhbnNhY3Rpb24tc2VhcmNoLXZpZXcuYm9cIjtcclxuaW1wb3J0IHtTZWFyY2hWaWV3TW9kZX0gZnJvbSBcIi4uLy4uL2VudW0vc2VhcmNoLXZpZXctbW9kZS5lbnVtXCI7XHJcbmltcG9ydCB7U2VhcmNoYmFyVmlld01vZGV9IGZyb20gXCIuLi8uLi9lbnVtL3NlYXJjaGJhci12aWV3LW1vZGUuZW51bVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VhcmNoU2VydmljZX0gZnJvbSBcIi4vc2VydmljZS90cmFuc2FjdGlvbi1zZWFyY2guc2VydmljZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1ldmVudC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tIFwicnhqc1wiO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY28tdHJhbnNhY3Rpb24tc2VhcmNoJyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLXNlYXJjaC1tYWluLXdyYXBwZXJcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLXNlYXJjaC13cmFwcGVyXCJcclxuICAgICAgICAgICBbbmdDbGFzc109XCJjYWxjdWxhdGVDbGFzc2VzKClcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tZmlsdGVyLXdyYXBwZXIgbmFycm93LXNjcm9sbGJhclwiXHJcbiAgICAgICAgICAgICBbbmdDbGFzc109XCJjYWxjdWxhdGVDbGFzc2VzKClcIlxyXG4gICAgICAgICAgICAgKm5nSWY9XCJ0cmFuc2FjdGlvblNlYXJjaFNlcnZpY2Uuc2hvd0ZpbHRlclNpZGViYXJcIiBAc2hvd0hpZGVGaWx0ZXJTaWRlYmFyPlxyXG4gICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWZpbHRlclxyXG4gICAgICAgICAgICBbdHJhbnNhY3Rpb25UeXBlXT1cInRyYW5zYWN0aW9uVHlwZVwiXHJcbiAgICAgICAgICAgIFthY3RpdmVTZWFyY2hWaWV3TW9kZV09XCJ0cmFuc2FjdGlvblNlYXJjaFNlcnZpY2UuYWN0aXZlU2VhcmNoVmlld01vZGVcIlxyXG4gICAgICAgICAgICAoY2xvc2VCdXR0b25DbGljayk9XCJ0cmFuc2FjdGlvblNlYXJjaFNlcnZpY2UuaGFuZGxlSGlkZUZpbHRlcigpXCJcclxuICAgICAgICAgICAgKHJlc2V0RmlsdGVyQ2xpY2spPVwidHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLmhhbmRsZVJlc2V0RmlsdGVyKClcIj48L2NvLXRyYW5zYWN0aW9uLWZpbHRlcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tc2VhcmNoLXJlc3VsdC13cmFwcGVyIGNvLXRyYW5zYWN0aW9uLXNtYWxsLXRvb2xiYXJcIlxyXG4gICAgICAgICAgICAgW2NsYXNzLmZ1bGxzY3JlZW5dPVwidHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLmZ1bGxzY3JlZW5cIlxyXG4gICAgICAgICAgICAgW2NsYXNzLnNpZGViYXJdPVwiIXRyYW5zYWN0aW9uU2VhcmNoU2VydmljZS5mdWxsc2NyZWVuXCJcclxuICAgICAgICAgICAgIFtjbGFzcy5jb2xsYXBzZWRdPVwidHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLmNvbGxhcHNlZFwiXHJcbiAgICAgICAgICAgICBbY2xhc3MuZXhwYW5kZWRdPVwiIXRyYW5zYWN0aW9uU2VhcmNoU2VydmljZS5jb2xsYXBzZWRcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxjby10cmFuc2FjdGlvbi1zZWFyY2gtcmVzdWx0XHJcbiAgICAgICAgICAgIFt0cmFuc2FjdGlvblR5cGVdPVwidHJhbnNhY3Rpb25UeXBlXCJcclxuICAgICAgICAgICAgW2FjdGl2ZVNlYXJjaFZpZXdNb2RlXT1cInRyYW5zYWN0aW9uU2VhcmNoU2VydmljZS5hY3RpdmVTZWFyY2hWaWV3TW9kZVwiXHJcbiAgICAgICAgICAgIChmaWx0ZXJDbGljayk9XCJ0cmFuc2FjdGlvblNlYXJjaFNlcnZpY2UudG9nZ2xlRmlsdGVyKClcIlxyXG4gICAgICAgICAgICAodHJhbnNhY3Rpb25DbGljayk9XCJvblRyYW5zYWN0aW9uQ2xpY2soJGV2ZW50KVwiXHJcbiAgICAgICAgICAgIChyZXNpemVDbGljayk9XCJvblNlYXJjaFZpZXdSZXNpemVDbGljaygpXCJcclxuICAgICAgICAgICAgKGNsb3NlQ2xpY2spPVwiY29sbGFwc2VTZWFyY2hCYXIoKVwiXHJcbiAgICAgICAgICA+PC9jby10cmFuc2FjdGlvbi1zZWFyY2gtcmVzdWx0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLXNlYXJjaC1jb250ZW50LXdyYXBwZXJcIlxyXG4gICAgICAgICAgIFtjbGFzcy5mdWxsc2NyZWVuXT1cInRyYW5zYWN0aW9uU2VhcmNoU2VydmljZS5mdWxsc2NyZWVuXCJcclxuICAgICAgICAgICBbY2xhc3Muc2lkZWJhcl09XCIhdHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLmZ1bGxzY3JlZW5cIlxyXG4gICAgICAgICAgIFtjbGFzcy5jb2xsYXBzZWRdPVwidHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLmNvbGxhcHNlZFwiXHJcbiAgICAgICAgICAgW2NsYXNzLmV4cGFuZGVkXT1cIiF0cmFuc2FjdGlvblNlYXJjaFNlcnZpY2UuY29sbGFwc2VkXCJcclxuICAgICAgPlxyXG4gICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICBgLFxyXG4gIGFuaW1hdGlvbnM6IFtcclxuICAgIHRyaWdnZXIoXCJzaG93SGlkZUZpbHRlclNpZGViYXJcIiwgW1xyXG4gICAgICBzdGF0ZShcInZvaWRcIiwgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoLTEwMCUpJ30pKSxcclxuICAgICAgc3RhdGUoXCIqXCIsIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDApJ30pKSxcclxuICAgICAgdHJhbnNpdGlvbihcInZvaWQgPD0+ICpcIiwgYW5pbWF0ZShcIjIwMG1zIGVhc2UtaW4tb3V0XCIpKVxyXG4gICAgXSlcclxuICBdLFxyXG5cclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvblNlYXJjaENvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XHJcblxyXG4gIHB1YmxpYyByZWFkb25seSBzZWFyY2hWaWV3TW9kZXM6IHR5cGVvZiBTZWFyY2hWaWV3TW9kZSA9IFNlYXJjaFZpZXdNb2RlO1xyXG4gIHB1YmxpYyByZWFkb25seSBvcmllbnRhdGlvbnM6IHR5cGVvZiBDb09yaWVudGF0aW9uID0gQ29PcmllbnRhdGlvbjtcclxuICBwdWJsaWMgcmVhZG9ubHkgZGlyZWN0aW9uUmlnaHQ6IENvRGlyZWN0aW9uID0gQ29EaXJlY3Rpb24uUmlnaHQ7XHJcblxyXG4gIHByaXZhdGUgX3RyYW5zYWN0aW9uVHlwZTogVHJhbnNhY3Rpb25LaW5kO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgdHJhbnNhY3Rpb25UeXBlKHZhbHVlOiBUcmFuc2FjdGlvbktpbmQpIHtcclxuICAgIHRoaXMuX3RyYW5zYWN0aW9uVHlwZSA9IHZhbHVlO1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlYXJjaFNlcnZpY2UudHJhbnNhY3Rpb25UeXBlID0gdGhpcy5fdHJhbnNhY3Rpb25UeXBlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25LaW5kIHtcclxuICAgIHJldHVybiB0aGlzLl90cmFuc2FjdGlvblR5cGU7XHJcbiAgfVxyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgdHJhbnNhY3Rpb25DbGljazogRXZlbnRFbWl0dGVyPFRyYW5zYWN0aW9uU2VhcmNoVmlldz4gPSBuZXcgRXZlbnRFbWl0dGVyPFRyYW5zYWN0aW9uU2VhcmNoVmlldz4oKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHNlYXJjaFZpZXdNb2RlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8U2VhcmNoVmlld01vZGU+ID0gbmV3IEV2ZW50RW1pdHRlcjxTZWFyY2hWaWV3TW9kZT4oKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIGNyZWF0ZVRyYW5zYWN0aW9uQ2xpY2s6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY28tdHJhbnNhY3Rpb24tc2VhcmNoXCIpXHJcbiAgcHVibGljIHNob3dDbGFzcygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfc3ViczogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgdHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlOiBUcmFuc2FjdGlvblNlYXJjaFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF90cmFuc2FjdGlvbkV2ZW50U2VydmljZTogVHJhbnNhY3Rpb25FdmVudFNlcnZpY2VcclxuICApIHtcclxuICAgIHRoaXMuX3N1YnMucHVzaChcclxuICAgICAgdGhpcy5fdHJhbnNhY3Rpb25FdmVudFNlcnZpY2UuY3JlYXRlVHJhbnNhY3Rpb24uc3Vic2NyaWJlKCgpID0+IHRoaXMuY3JlYXRlVHJhbnNhY3Rpb25DbGljay5lbWl0KCkpXHJcbiAgICApXHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3N1YnMuZm9yRWFjaChzID0+IHMudW5zdWJzY3JpYmUoKSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25UcmFuc2FjdGlvbkNsaWNrKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvblNlYXJjaFZpZXcpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnRyYW5zYWN0aW9uU2VhcmNoU2VydmljZS5hY3RpdmVTZWFyY2hWaWV3TW9kZSA9PT0gdGhpcy5zZWFyY2hWaWV3TW9kZXMuRnVsbFNjcmVlbikge1xyXG4gICAgICB0aGlzLmNvbGxhcHNlU2VhcmNoQmFyKCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5fc2Nyb2xsVG9Ub3AoKTtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25DbGljay5lbWl0KHRyYW5zYWN0aW9uKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvblNlYXJjaFZpZXdSZXNpemVDbGljaygpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnRyYW5zYWN0aW9uU2VhcmNoU2VydmljZS5hY3RpdmVTZWFyY2hWaWV3TW9kZSA9PT0gdGhpcy5zZWFyY2hWaWV3TW9kZXMuU2lkZUJhcikge1xyXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uU2VhcmNoU2VydmljZS5hY3RpdmVTZWFyY2hWaWV3TW9kZSA9IHRoaXMuc2VhcmNoVmlld01vZGVzLkZ1bGxTY3JlZW47XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uU2VhcmNoU2VydmljZS5hY3RpdmVTZWFyY2hWaWV3TW9kZSA9IHRoaXMuc2VhcmNoVmlld01vZGVzLlNpZGVCYXI7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zZWFyY2hWaWV3TW9kZUNoYW5nZS5lbWl0KHRoaXMudHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLmFjdGl2ZVNlYXJjaFZpZXdNb2RlKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvblNpZGVDb2xsYXBzZUhhbmRsZUNsaWNrKCk6IHZvaWQge1xyXG4gICAgdGhpcy50b2dnbGVTZWFyY2hCYXIoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB0b2dnbGVTZWFyY2hCYXIoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy50cmFuc2FjdGlvblNlYXJjaFNlcnZpY2UuY29sbGFwc2VkIHx8IHRoaXMudHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLmZ1bGxzY3JlZW4pIHtcclxuICAgICAgdGhpcy5leHBhbmRTZWFyY2hCYXIoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY29sbGFwc2VTZWFyY2hCYXIoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBjb2xsYXBzZVNlYXJjaEJhcigpOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLmFjdGl2ZVNlYXJjaFZpZXdNb2RlID0gdGhpcy5zZWFyY2hWaWV3TW9kZXMuU2lkZUJhcjtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLmFjdGl2ZVNlYXJjaEJhclZpZXdNb2RlID0gU2VhcmNoYmFyVmlld01vZGUuQ29sbGFwc2VkO1xyXG4gICAgdGhpcy5zZWFyY2hWaWV3TW9kZUNoYW5nZS5lbWl0KHRoaXMuc2VhcmNoVmlld01vZGVzLlNpZGVCYXIpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGV4cGFuZFNlYXJjaEJhcigpOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLmFjdGl2ZVNlYXJjaFZpZXdNb2RlID0gdGhpcy5zZWFyY2hWaWV3TW9kZXMuU2lkZUJhcjtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25TZWFyY2hTZXJ2aWNlLmFjdGl2ZVNlYXJjaEJhclZpZXdNb2RlID0gU2VhcmNoYmFyVmlld01vZGUuRXhwYW5kZWQ7XHJcbiAgICB0aGlzLnNlYXJjaFZpZXdNb2RlQ2hhbmdlLmVtaXQodGhpcy5zZWFyY2hWaWV3TW9kZXMuU2lkZUJhcik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2FsY3VsYXRlQ2xhc3NlcygpOiBhbnkge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgJ2Z1bGxzY3JlZW4nOiB0aGlzLnRyYW5zYWN0aW9uU2VhcmNoU2VydmljZS5mdWxsc2NyZWVuLFxyXG4gICAgICAnc2lkZWJhcic6ICF0aGlzLnRyYW5zYWN0aW9uU2VhcmNoU2VydmljZS5mdWxsc2NyZWVuLFxyXG4gICAgICAnY29sbGFwc2VkJzogdGhpcy50cmFuc2FjdGlvblNlYXJjaFNlcnZpY2UuY29sbGFwc2VkLFxyXG4gICAgICAnZXhwYW5kZWQnOiAhdGhpcy50cmFuc2FjdGlvblNlYXJjaFNlcnZpY2UuY29sbGFwc2VkLFxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3Njcm9sbFRvVG9wKCk6IHZvaWQge1xyXG4gICAgd2luZG93LnNjcm9sbFRvKHsgdG9wOiAwLCBiZWhhdmlvcjogJ3Ntb290aCcgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -8,6 +8,8 @@ import { TransactionService } from "../../../service/transaction.service";
8
8
  import { ArticleService } from "../../../service/article.service";
9
9
  import { DialogService } from "../../../service/dialog.service";
10
10
  import { TransactionReceiveGoodsService } from "../../transaction-line/transaction-receive-goods-line/service/transaction-receive-goods.service";
11
+ import { TransactionKind } from "@colijnit/transactionapi/build/enum/transaction-kind.enum";
12
+ import { TransactionTypeCategory } from "../../../enum/transaction-type-category.enum";
11
13
  export class ReceiveGoodsRequestComponent {
12
14
  constructor(iconCacheService, _formMaster, _service, _articleService, _dialogService, _receiveGoodsService) {
13
15
  this.iconCacheService = iconCacheService;
@@ -17,20 +19,14 @@ export class ReceiveGoodsRequestComponent {
17
19
  this._dialogService = _dialogService;
18
20
  this._receiveGoodsService = _receiveGoodsService;
19
21
  this.icons = Icon;
22
+ this.transactionKind = TransactionKind;
23
+ this.transactionTypeCategory = TransactionTypeCategory;
20
24
  this.reloadReceivingGoodsHistory = new EventEmitter();
21
25
  this.receiptDetails = new PurchaseOrderLineReceiptDetails();
22
26
  this.request = new ReceiveGoodsForPurchaseOrderRequest();
23
27
  this.saveButtonDisabled = false;
24
- this.locationDropdownFields = { text: "locationNo", value: "locationNo" };
25
28
  this.readonly = false;
26
29
  this._subscriptions = [];
27
- this.request.purchaseOrderLineReceiptDetailsDTOS = [this.receiptDetails];
28
- const timeElapsed = Date.now();
29
- this.request.receivedDate = new Date(timeElapsed);
30
- }
31
- set amountLeftToReceive(value) {
32
- this._amountLeftToReceive = value;
33
- this.receiptDetails.quantityToReceive = value;
34
30
  }
35
31
  set transactionLine(value) {
36
32
  this._transactionLine = value;
@@ -38,6 +34,12 @@ export class ReceiveGoodsRequestComponent {
38
34
  this.receiptDetails.warehouseNr = value.warehouseNumber;
39
35
  this.receiptDetails.lineNr = value.lineNr;
40
36
  }
37
+ set amountLeftToReceive(value) {
38
+ this._amountLeftToReceive = value;
39
+ if (!this.returnStockMode()) {
40
+ this.receiptDetails.quantityToReceive = value;
41
+ }
42
+ }
41
43
  showClass() {
42
44
  return true;
43
45
  }
@@ -51,10 +53,16 @@ export class ReceiveGoodsRequestComponent {
51
53
  this._subscriptions.push(this._receiveGoodsService.returnArticleSelected.subscribe((availableStock) => {
52
54
  this._handleReturnStock(availableStock);
53
55
  }));
56
+ this.request.purchaseOrderLineReceiptDetailsDTOS = [this.receiptDetails];
57
+ const timeElapsed = Date.now();
58
+ this.request.receivedDate = new Date(timeElapsed);
54
59
  }
55
60
  ngOnDestroy() {
56
61
  this._subscriptions.forEach((subscription) => subscription.unsubscribe());
57
62
  }
63
+ ngAfterViewInit() {
64
+ this.reloadReceivingGoodsHistory.next();
65
+ }
58
66
  submit() {
59
67
  return this._formMaster.submitSlaves();
60
68
  }
@@ -83,12 +91,6 @@ export class ReceiveGoodsRequestComponent {
83
91
  this.saveButtonDisabled = false;
84
92
  }
85
93
  }
86
- openWarehouseLocationDialog() {
87
- if (!this.returnStockMode()) {
88
- this._dialogService.showWarehouseLocation(this.receiptDetails.warehouseNr, true, true, true, this.transactionLine)
89
- .then(() => this.receiptDetails.locationNr = this.transactionLine.locationNr);
90
- }
91
- }
92
94
  returnStockMode() {
93
95
  return this.transactionLine.amount < 0;
94
96
  }
@@ -98,6 +100,7 @@ export class ReceiveGoodsRequestComponent {
98
100
  this.receiptDetails.quantityToReceive = this.returnMaxToReceive;
99
101
  this.receiptDetails.warehouseNr = availableStock.warehouseNumber;
100
102
  this.receiptDetails.locationNr = availableStock.locationNumber;
103
+ this.selectedLocation = this.receiptDetails.locationNr;
101
104
  this.receiptDetails.serialNr = availableStock.serialNumber;
102
105
  this.receiptDetails.batchNr = availableStock.batchNumber;
103
106
  this.receiptDetails.lineNr = this.transactionLine.lineNr;
@@ -108,18 +111,22 @@ ReceiveGoodsRequestComponent.decorators = [
108
111
  selector: "co-receive-goods-request",
109
112
  template: `
110
113
  <co-form>
111
- <div class="details-header" [textContent]="returnStockMode() ? ('RETURN_DETAILS' | localize | uppercase) : ('RECEIPT_DETAILS' | localize | uppercase)"></div>
114
+ <div class="header-wrapper">
115
+ <div class="details-header" [textContent]="returnStockMode() ? ('RETURN_DETAILS' | localize | uppercase) : ('RECEIPT_DETAILS' | localize | uppercase)"></div>
116
+ <co-transaction-line-statusbar class="status-bar-wrapper" [transaction]="transactionLine" [transactionKind]="transactionKind.SalesOrder" [transactionTypeCategory]="transactionTypeCategory.PurchaseOrderReceivedGoods"></co-transaction-line-statusbar>
117
+ </div>
112
118
  <div class="columns-wrapper">
113
119
  <div class="details-column">
114
- <co-input-text class="details-input"
115
- [max]="returnStockMode() ? returnMaxToReceive : amountLeftToReceive"
116
- [(model)]="receiptDetails.serialNr ? 1 : receiptDetails.quantityToReceive"
117
- [disabled]="!!receiptDetails.serialNr || receiptDetails.quantityToReceive === 0"
118
- [readonly]="!!receiptDetails.serialNr || receiptDetails.quantityToReceive === 0 || readonly"
119
- [required]="true"
120
- [type]="'number'"
121
- [min]="1"
122
- [placeholder]="'AMOUNT' | localize"></co-input-text>
120
+ <div class="transaction-line-totals-amount">
121
+ <co-input-number-picker class="amount-number-picker"
122
+ [max]="returnStockMode() ? returnMaxToReceive : amountLeftToReceive"
123
+ [(model)]="receiptDetails.serialNr ? 1 : receiptDetails.quantityToReceive"
124
+ [min]="1"
125
+ [readonly]="!!receiptDetails.serialNr || receiptDetails.quantityToReceive === 0 || !receiptDetails.quantityToReceive || readonly"
126
+ [disabled]="!!receiptDetails.serialNr || receiptDetails.quantityToReceive === 0 || !receiptDetails.quantityToReceive"
127
+ [required]="true"
128
+ ></co-input-number-picker>
129
+ </div>
123
130
  <co-input-text class="details-input" [(model)]="receiptDetails.warehouseNr"
124
131
  [type]="'number'"
125
132
  [hideArrowButtons]="true"
@@ -127,10 +134,9 @@ ReceiveGoodsRequestComponent.decorators = [
127
134
  [disabled]="transactionLine.warehouseNumber !== undefined || returnStockMode()"
128
135
  [required]="transactionLine.isWarehouseRequired"
129
136
  [placeholder]="'WAREHOUSE' | localize"></co-input-text>
130
- <div class="location-wrapper" [class.clickable]="!returnStockMode()" (click)="openWarehouseLocationDialog()">
131
- <span *ngIf="!receiptDetails.locationNr && transactionLine.isLocationRequired" class="required" [textContent]="'*'"></span>
132
- <co-icon *ngIf="receiptDetails.locationNr" [iconData]="iconCacheService.getIcon(icons.ShelvesLight)"></co-icon>
133
- <div [textContent]="receiptDetails.locationNr ? receiptDetails.locationNr : ('LOCATION' | localize)"></div>
137
+ <div class="location-wrapper">
138
+ <!-- <span *ngIf="!receiptDetails.locationNr && transactionLine.isLocationRequired" class="required" [textContent]="'*'"></span>-->
139
+ <co-transaction-line-warehouse-location-button [locationNr]="selectedLocation" [readonly]="returnStockMode() || receiptDetails.quantityToReceive === 0" [line]="transactionLine" (locationSelected)="receiptDetails.locationNr = $event"></co-transaction-line-warehouse-location-button>
134
140
  </div>
135
141
  <co-input-text class="details-input"
136
142
  *ngIf="!returnStockMode()"
@@ -187,9 +193,9 @@ ReceiveGoodsRequestComponent.ctorParameters = () => [
187
193
  { type: TransactionReceiveGoodsService }
188
194
  ];
189
195
  ReceiveGoodsRequestComponent.propDecorators = {
190
- amountLeftToReceive: [{ type: Input }],
191
196
  transactionLine: [{ type: Input }],
197
+ amountLeftToReceive: [{ type: Input }],
192
198
  reloadReceivingGoodsHistory: [{ type: Output }],
193
199
  showClass: [{ type: HostBinding, args: ["class.co-transaction-receiving-goods-details",] }]
194
200
  };
195
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjZWl2ZS1nb29kcy1yZXF1ZXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLXNpZGUtcGFuZWwtZWRpdC1yZXF1ZXN0LWRldGFpbHMvY29tcG9uZW50cy9yZWNlaXZlLWdvb2RzLXJlcXVlc3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3JHLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUU3QyxPQUFPLEVBQ0wsK0JBQStCLEVBQ2hDLE1BQU0sNkVBQTZFLENBQUM7QUFDckYsT0FBTyxFQUNMLG1DQUFtQyxFQUNwQyxNQUFNLGtGQUFrRixDQUFDO0FBRTFGLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQy9ELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3hFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNoRSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDOUQsT0FBTyxFQUNMLDhCQUE4QixFQUMvQixNQUFNLGlHQUFpRyxDQUFDO0FBNEV6RyxNQUFNLE9BQU8sNEJBQTRCO0lBNkN2QyxZQUNTLGdCQUFrQyxFQUNqQyxXQUE4QixFQUM5QixRQUE0QixFQUM1QixlQUErQixFQUMvQixjQUE2QixFQUM3QixvQkFBb0Q7UUFMckQscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNqQyxnQkFB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Q0QsU0FBUyxFQUFFO29CQUNULGlCQUFpQjtpQkFDbEI7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7OztZQWxGTyxnQkFBZ0I7WUFDaEIsaUJBQWlCO1lBQ2pCLGtCQUFrQjtZQUNsQixjQUFjO1lBQ2QsYUFBYTtZQUVuQiw4QkFBOEI7OztrQ0FnRjdCLEtBQUs7OEJBTUwsS0FBSzswQ0FRTCxNQUFNO3dCQUdOLFdBQVcsU0FBQyw4Q0FBOEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7SWNvbn0gZnJvbSBcIi4uLy4uLy4uL2VudW0vaWNvbi5lbnVtXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25MaW5lSW5mb30gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC90cmFuc2FjdGlvbi1saW5lLWluZm8uYm9cIjtcclxuaW1wb3J0IHtcclxuICBQdXJjaGFzZU9yZGVyTGluZVJlY2VpcHREZXRhaWxzXHJcbn0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9wdXJjaGFzZS1vcmRlci1saW5lLXJlY2VpcHQtZGV0YWlscy5ib1wiO1xyXG5pbXBvcnQge1xyXG4gIFJlY2VpdmVHb29kc0ZvclB1cmNoYXNlT3JkZXJSZXF1ZXN0XHJcbn0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9yZWNlaXZlLWdvb2RzLWZvci1wdXJjaGFzZS1vcmRlci1yZXF1ZXN0LmJvXCI7XHJcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlL2ljb24tY2FjaGUuc2VydmljZVwiO1xyXG5pbXBvcnQge0Zvcm1NYXN0ZXJTZXJ2aWNlfSBmcm9tIFwiQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMlwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZVwiO1xyXG5pbXBvcnQge0FydGljbGVTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZS9hcnRpY2xlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtEaWFsb2dTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZS9kaWFsb2cuc2VydmljZVwiO1xyXG5pbXBvcnQge1xyXG4gIFRyYW5zYWN0aW9uUmVjZWl2ZUdvb2RzU2VydmljZVxyXG59IGZyb20gXCIuLi8uLi90cmFuc2FjdGlvbi1saW5lL3RyYW5zYWN0aW9uLXJlY2VpdmUtZ29vZHMtbGluZS9zZXJ2aWNlL3RyYW5zYWN0aW9uLXJlY2VpdmUtZ29vZHMuc2VydmljZVwiO1xyXG5pbXBvcnQge0F2YWlsYWJsZVN0b2NrfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL2F2YWlsYWJsZS1zdG9jay5ib1wiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiY28tcmVjZWl2ZS1nb29kcy1yZXF1ZXN0XCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxjby1mb3JtPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZGV0YWlscy1oZWFkZXJcIiBbdGV4dENvbnRlbnRdPVwicmV0dXJuU3RvY2tNb2RlKCkgPyAoJ1JFVFVSTl9ERVRBSUxTJyB8IGxvY2FsaXplIHwgdXBwZXJjYXNlKSA6ICgnUkVDRUlQVF9ERVRBSUxTJyB8IGxvY2FsaXplIHwgdXBwZXJjYXNlKVwiPjwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29sdW1ucy13cmFwcGVyXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImRldGFpbHMtY29sdW1uXCI+XHJcbiAgICAgICAgICA8Y28taW5wdXQtdGV4dCBjbGFzcz1cImRldGFpbHMtaW5wdXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW21heF09XCJyZXR1cm5TdG9ja01vZGUoKSA/IHJldHVybk1heFRvUmVjZWl2ZSA6IGFtb3VudExlZnRUb1JlY2VpdmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwicmVjZWlwdERldGFpbHMuc2VyaWFsTnIgPyAxIDogcmVjZWlwdERldGFpbHMucXVhbnRpdHlUb1JlY2VpdmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiEhcmVjZWlwdERldGFpbHMuc2VyaWFsTnIgfHwgcmVjZWlwdERldGFpbHMucXVhbnRpdHlUb1JlY2VpdmUgPT09IDBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cIiEhcmVjZWlwdERldGFpbHMuc2VyaWFsTnIgfHwgcmVjZWlwdERldGFpbHMucXVhbnRpdHlUb1JlY2VpdmUgPT09IDAgfHwgcmVhZG9ubHlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3R5cGVdPVwiJ251bWJlcidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW21pbl09XCIxXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInQU1PVU5UJyB8IGxvY2FsaXplXCI+PC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICAgICAgPGNvLWlucHV0LXRleHQgY2xhc3M9XCJkZXRhaWxzLWlucHV0XCIgWyhtb2RlbCldPVwicmVjZWlwdERldGFpbHMud2FyZWhvdXNlTnJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3R5cGVdPVwiJ251bWJlcidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2hpZGVBcnJvd0J1dHRvbnNdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwidHJhbnNhY3Rpb25MaW5lLndhcmVob3VzZU51bWJlciAhPT0gdW5kZWZpbmVkIHx8IHJlYWRvbmx5IHx8IHJldHVyblN0b2NrTW9kZSgpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJ0cmFuc2FjdGlvbkxpbmUud2FyZWhvdXNlTnVtYmVyICE9PSB1bmRlZmluZWQgfHwgcmV0dXJuU3RvY2tNb2RlKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cInRyYW5zYWN0aW9uTGluZS5pc1dhcmVob3VzZVJlcXVpcmVkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInV0FSRUhPVVNFJyB8IGxvY2FsaXplXCI+PC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImxvY2F0aW9uLXdyYXBwZXJcIiBbY2xhc3MuY2xpY2thYmxlXT1cIiFyZXR1cm5TdG9ja01vZGUoKVwiIChjbGljayk9XCJvcGVuV2FyZWhvdXNlTG9jYXRpb25EaWFsb2coKVwiPlxyXG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFyZWNlaXB0RGV0YWlscy5sb2NhdGlvbk5yICYmIHRyYW5zYWN0aW9uTGluZS5pc0xvY2F0aW9uUmVxdWlyZWRcIiBjbGFzcz1cInJlcXVpcmVkXCIgW3RleHRDb250ZW50XT1cIicqJ1wiPjwvc3Bhbj5cclxuICAgICAgICAgICAgPGNvLWljb24gKm5nSWY9XCJyZWNlaXB0RGV0YWlscy5sb2NhdGlvbk5yXCIgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5TaGVsdmVzTGlnaHQpXCI+PC9jby1pY29uPlxyXG4gICAgICAgICAgICA8ZGl2IFt0ZXh0Q29udGVudF09XCJyZWNlaXB0RGV0YWlscy5sb2NhdGlvbk5yID8gcmVjZWlwdERldGFpbHMubG9jYXRpb25OciA6ICgnTE9DQVRJT04nIHwgbG9jYWxpemUpXCI+PC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxjby1pbnB1dC10ZXh0IGNsYXNzPVwiZGV0YWlscy1pbnB1dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiFyZXR1cm5TdG9ja01vZGUoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJyZXF1ZXN0LnBhY2tpbmdTbGlwTnJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidQQUNLSU5HX1NMSVAnIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgICAgID48L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImRpdmlkZXItd3JhcHBlclwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImRpdmlkZXJcIj48L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGV0YWlscy1jb2x1bW5cIj5cclxuICAgICAgICAgIDxjby1pbnB1dC1kYXRlIGNsYXNzPVwiZGV0YWlscy1pbnB1dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJyZXF1ZXN0LnJlY2VpdmVkRGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxyXG4gICAgICAgICAgPjwvY28taW5wdXQtZGF0ZT5cclxuICAgICAgICAgIDxjby1pbnB1dC10ZXh0ICpuZ0lmPVwidHJhbnNhY3Rpb25MaW5lLmlzQmF0Y2hOclJlcXVpcmVkXCIgY2xhc3M9XCJkZXRhaWxzLWlucHV0XCIgWyhtb2RlbCldPVwicmVjZWlwdERldGFpbHMuYmF0Y2hOclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbdHlwZV09XCInbnVtYmVyJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbaGlkZUFycm93QnV0dG9uc109XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seSB8fCByZXR1cm5TdG9ja01vZGUoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwicmV0dXJuU3RvY2tNb2RlKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cInRyYW5zYWN0aW9uTGluZS5pc0JhdGNoTnJSZXF1aXJlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0JBVENIX05VTUJFUicgfCBsb2NhbGl6ZVwiPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICAgIDxjby1pbnB1dC10ZXh0ICpuZ0lmPVwidHJhbnNhY3Rpb25MaW5lLmlzU2VyaWFsTnJSZXF1aXJlZFwiIGNsYXNzPVwiZGV0YWlscy1pbnB1dFwiIFsobW9kZWwpXT1cInJlY2VpcHREZXRhaWxzLnNlcmlhbE5yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFt0eXBlXT1cIidudW1iZXInXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtoaWRlQXJyb3dCdXR0b25zXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5IHx8IHJldHVyblN0b2NrTW9kZSgpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJyZXR1cm5TdG9ja01vZGUoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwidHJhbnNhY3Rpb25MaW5lLmlzU2VyaWFsTnJSZXF1aXJlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1NFUklBTF9OVU1CRVInIHwgbG9jYWxpemVcIj48L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9jby1mb3JtPlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJjb21taXQtYnV0dG9uLXdyYXBwZXJcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbW1pdC1idXR0b24gY2xpY2thYmxlXCIgKm5nSWY9XCIhcmVhZG9ubHlcIiAoY2xpY2spPVwiaGFuZGxlU2F2ZURldGFpbHNFZGl0KClcIiBbY2xhc3MuZGlzYWJsZWRdPVwic2F2ZUJ1dHRvbkRpc2FibGVkIHx8IGFtb3VudExlZnRUb1JlY2VpdmUgPT09IDBcIj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cImNvbW1pdC10ZXh0XCIgW3RleHRDb250ZW50XT1cInJldHVyblN0b2NrTW9kZSgpID8gKCdSRVRVUk5fU1RPQ0snIHwgbG9jYWxpemUpIDogKCdSRUNFSVZFJyB8IGxvY2FsaXplKVwiPjwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICBgLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAgRm9ybU1hc3RlclNlcnZpY2VcclxuICBdLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIFJlY2VpdmVHb29kc1JlcXVlc3RDb21wb25lbnQge1xyXG4gIHB1YmxpYyByZWFkb25seSBpY29uczogdHlwZW9mIEljb24gPSBJY29uO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgYW1vdW50TGVmdFRvUmVjZWl2ZSh2YWx1ZTogbnVtYmVyKSB7XHJcbiAgICB0aGlzLl9hbW91bnRMZWZ0VG9SZWNlaXZlID0gdmFsdWU7XHJcbiAgICB0aGlzLnJlY2VpcHREZXRhaWxzLnF1YW50aXR5VG9SZWNlaXZlID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgdHJhbnNhY3Rpb25MaW5lKHZhbHVlOiBUcmFuc2FjdGlvbkxpbmVJbmZvKSB7XHJcbiAgICB0aGlzLl90cmFuc2FjdGlvbkxpbmUgPSB2YWx1ZTtcclxuICAgIHRoaXMucmVhZG9ubHkgPSB0aGlzLl90cmFuc2FjdGlvbkxpbmUuaGFzSW52b2ljZXM7XHJcbiAgICB0aGlzLnJlY2VpcHREZXRhaWxzLndhcmVob3VzZU5yID0gdmFsdWUud2FyZWhvdXNlTnVtYmVyO1xyXG4gICAgdGhpcy5yZWNlaXB0RGV0YWlscy5saW5lTnIgPSB2YWx1ZS5saW5lTnI7XHJcbiAgfVxyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgcmVsb2FkUmVjZWl2aW5nR29vZHNIaXN0b3J5OiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIEBIb3N0QmluZGluZyhcImNsYXNzLmNvLXRyYW5zYWN0aW9uLXJlY2VpdmluZy1nb29kcy1kZXRhaWxzXCIpXHJcbiAgcHVibGljIHNob3dDbGFzcygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuICBwdWJsaWMgZ2V0IGFtb3VudExlZnRUb1JlY2VpdmUoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLl9hbW91bnRMZWZ0VG9SZWNlaXZlO1xyXG4gIH1cclxuXHJcblxyXG4gIHB1YmxpYyBnZXQgdHJhbnNhY3Rpb25MaW5lKCk6IFRyYW5zYWN0aW9uTGluZUluZm8ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3RyYW5zYWN0aW9uTGluZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWNlaXB0RGV0YWlsczogUHVyY2hhc2VPcmRlckxpbmVSZWNlaXB0RGV0YWlscyA9IG5ldyBQdXJjaGFzZU9yZGVyTGluZVJlY2VpcHREZXRhaWxzKCk7XHJcbiAgcHVibGljIHJlcXVlc3Q6IFJlY2VpdmVHb29kc0ZvclB1cmNoYXNlT3JkZXJSZXF1ZXN0ID0gbmV3IFJlY2VpdmVHb29kc0ZvclB1cmNoYXNlT3JkZXJSZXF1ZXN0KCk7XHJcbiAgcHVibGljIHNhdmVCdXR0b25EaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBsb2NhdGlvbnM6IHN0cmluZ1tdO1xyXG4gIHB1YmxpYyBsb2NhdGlvbkRyb3Bkb3duRmllbGRzOiB7fSA9IHt0ZXh0OiBcImxvY2F0aW9uTm9cIiwgdmFsdWU6IFwibG9jYXRpb25Ob1wifTtcclxuICBwdWJsaWMgcmVhZG9ubHk6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgcmV0dXJuTWF4VG9SZWNlaXZlOiBudW1iZXI7XHJcblxyXG4gIHByaXZhdGUgX3RyYW5zYWN0aW9uTGluZTogVHJhbnNhY3Rpb25MaW5lSW5mbztcclxuICBwcml2YXRlIF9hbW91bnRMZWZ0VG9SZWNlaXZlOiBudW1iZXI7XHJcbiAgcHJpdmF0ZSBfc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZSxcclxuICAgIHByaXZhdGUgX2Zvcm1NYXN0ZXI6IEZvcm1NYXN0ZXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfc2VydmljZTogVHJhbnNhY3Rpb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfYXJ0aWNsZVNlcnZpY2U6IEFydGljbGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSxcclxuICAgIHByaXZhdGUgX3JlY2VpdmVHb29kc1NlcnZpY2U6IFRyYW5zYWN0aW9uUmVjZWl2ZUdvb2RzU2VydmljZVxyXG4gICkge1xyXG4gICAgdGhpcy5yZXF1ZXN0LnB1cmNoYXNlT3JkZXJMaW5lUmVjZWlwdERldGFpbHNEVE9TID0gW3RoaXMucmVjZWlwdERldGFpbHNdO1xyXG4gICAgY29uc3QgdGltZUVsYXBzZWQ6IG51bWJlciA9IERhdGUubm93KCk7XHJcbiAgICB0aGlzLnJlcXVlc3QucmVjZWl2ZWREYXRlID0gbmV3IERhdGUodGltZUVsYXBzZWQpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICB0aGlzLl9yZWNlaXZlR29vZHNTZXJ2aWNlLnJldHVybkFydGljbGVTZWxlY3RlZC5zdWJzY3JpYmUoKGF2YWlsYWJsZVN0b2NrOiBBdmFpbGFibGVTdG9jaykgPT4ge1xyXG4gICAgICAgIHRoaXMuX2hhbmRsZVJldHVyblN0b2NrKGF2YWlsYWJsZVN0b2NrKTtcclxuICAgICAgfSlcclxuICAgIClcclxuICB9XHJcblxyXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3N1YnNjcmlwdGlvbnMuZm9yRWFjaCgoc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24pID0+IHN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdWJtaXQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fZm9ybU1hc3Rlci5zdWJtaXRTbGF2ZXMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBsb2NhdGlvblJlcXVpcmVkKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3RyYW5zYWN0aW9uTGluZS5pc0xvY2F0aW9uUmVxdWlyZWQgfHxcclxuICAgICAgdGhpcy5fdHJhbnNhY3Rpb25MaW5lLmlzQmF0Y2hOclJlcXVpcmVkIHx8XHJcbiAgICAgIHRoaXMuX3RyYW5zYWN0aW9uTGluZS5pc1NlcmlhbE5yUmVxdWlyZWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU2F2ZURldGFpbHNFZGl0KCk6IHZvaWQge1xyXG4gICAgY29uc3QgdmFsaWQgPSB0aGlzLnN1Ym1pdCgpO1xyXG4gICAgaWYgKHZhbGlkKSB7XHJcbiAgICAgIHRoaXMuc2F2ZUJ1dHRvbkRpc2FibGVkID0gdHJ1ZTtcclxuICAgICAgY29uc3QgcmVxdWVzdDogUmVjZWl2ZUdvb2RzRm9yUHVyY2hhc2VPcmRlclJlcXVlc3QgPSB0aGlzLnJlcXVlc3Q7XHJcbiAgICAgIHRoaXMucmVjZWlwdERldGFpbHMucXVhbnRpdHlUb1JlY2VpdmUgPSB0aGlzLnJldHVyblN0b2NrTW9kZSgpID9cclxuICAgICAgICAtdGhpcy5yZWNlaXB0RGV0YWlscy5xdWFudGl0eVRvUmVjZWl2ZSA6IHRoaXMucmVjZWlwdERldGFpbHMucXVhbnRpdHlUb1JlY2VpdmU7XHJcbiAgICAgIHJlcXVlc3QudHJhbnNJZCA9IHRoaXMuX3NlcnZpY2UuY3VycmVudFRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uSW5mby5pZDtcclxuICAgICAgdGhpcy5fc2VydmljZS5yZWNlaXZlR29vZHNGb3JQdXJjaGFzZU9yZGVyKHJlcXVlc3QpLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgIGlmICh0aGlzLnJldHVyblN0b2NrTW9kZSgpKSB7XHJcbiAgICAgICAgICB0aGlzLl9yZWNlaXZlR29vZHNTZXJ2aWNlLnJlbG9hZEF2YWlsYWJsZVN0b2NrRGF0YS5uZXh0KCk7XHJcbiAgICAgICAgICB0aGlzLnJlY2VpcHREZXRhaWxzLmxvY2F0aW9uTnIgPSB1bmRlZmluZWQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMucmVsb2FkUmVjZWl2aW5nR29vZHNIaXN0b3J5Lm5leHQoKTtcclxuICAgICAgfSkuY2F0Y2goKGUpID0+IHtcclxuICAgICAgICB0aGlzLnNhdmVCdXR0b25EaXNhYmxlZCA9IGZhbHNlO1xyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy5zYXZlQnV0dG9uRGlzYWJsZWQgPSBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBvcGVuV2FyZWhvdXNlTG9jYXRpb25EaWFsb2coKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMucmV0dXJuU3RvY2tNb2RlKCkpIHtcclxuICAgICAgdGhpcy5fZGlhbG9nU2VydmljZS5zaG93V2FyZWhvdXNlTG9jYXRpb24odGhpcy5yZWNlaXB0RGV0YWlscy53YXJlaG91c2VOciwgdHJ1ZSwgdHJ1ZSwgdHJ1ZSwgdGhpcy50cmFuc2FjdGlvbkxpbmUpXHJcbiAgICAgICAgLnRoZW4oKCkgPT4gdGhpcy5yZWNlaXB0RGV0YWlscy5sb2NhdGlvbk5yID0gKDxhbnk+dGhpcy50cmFuc2FjdGlvbkxpbmUpLmxvY2F0aW9uTnIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHJldHVyblN0b2NrTW9kZSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uTGluZS5hbW91bnQgPCAwO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfaGFuZGxlUmV0dXJuU3RvY2soYXZhaWxhYmxlU3RvY2s6IEF2YWlsYWJsZVN0b2NrKTogdm9pZCB7XHJcbiAgICBjb25zdCBtYXhUb1JldHVybiA9IHRoaXMuYW1vdW50TGVmdFRvUmVjZWl2ZSA8IDAgPyBNYXRoLmFicyh0aGlzLmFtb3VudExlZnRUb1JlY2VpdmUpIDogdGhpcy5hbW91bnRMZWZ0VG9SZWNlaXZlO1xyXG4gICAgdGhpcy5yZXR1cm5NYXhUb1JlY2VpdmUgPSBtYXhUb1JldHVybiA+IGF2YWlsYWJsZVN0b2NrLmF2YWlsYWJsZVF1YW50aXR5ID8gYXZhaWxhYmxlU3RvY2suYXZhaWxhYmxlUXVhbnRpdHkgOiBtYXhUb1JldHVybjtcclxuICAgIHRoaXMucmVjZWlwdERldGFpbHMucXVhbnRpdHlUb1JlY2VpdmUgPSB0aGlzLnJldHVybk1heFRvUmVjZWl2ZTtcclxuICAgIHRoaXMucmVjZWlwdERldGFpbHMud2FyZWhvdXNlTnIgPSBhdmFpbGFibGVTdG9jay53YXJlaG91c2VOdW1iZXI7XHJcbiAgICB0aGlzLnJlY2VpcHREZXRhaWxzLmxvY2F0aW9uTnIgPSBhdmFpbGFibGVTdG9jay5sb2NhdGlvbk51bWJlcjtcclxuICAgIHRoaXMucmVjZWlwdERldGFpbHMuc2VyaWFsTnIgPSBhdmFpbGFibGVTdG9jay5zZXJpYWxOdW1iZXI7XHJcbiAgICB0aGlzLnJlY2VpcHREZXRhaWxzLmJhdGNoTnIgPSBhdmFpbGFibGVTdG9jay5iYXRjaE51bWJlcjtcclxuICAgIHRoaXMucmVjZWlwdERldGFpbHMubGluZU5yID0gdGhpcy50cmFuc2FjdGlvbkxpbmUubGluZU5yO1xyXG4gIH1cclxufVxyXG4iXX0=
201
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjZWl2ZS1nb29kcy1yZXF1ZXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLXNpZGUtcGFuZWwtZWRpdC1yZXF1ZXN0LWRldGFpbHMvY29tcG9uZW50cy9yZWNlaXZlLWdvb2RzLXJlcXVlc3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNwSCxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFFN0MsT0FBTyxFQUNMLCtCQUErQixFQUNoQyxNQUFNLDZFQUE2RSxDQUFDO0FBQ3JGLE9BQU8sRUFDTCxtQ0FBbUMsRUFDcEMsTUFBTSxrRkFBa0YsQ0FBQztBQUUxRixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUMvRCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUN4RSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDaEUsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQzlELE9BQU8sRUFDTCw4QkFBOEIsRUFDL0IsTUFBTSxpR0FBaUcsQ0FBQztBQUV6RyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDMUYsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sOENBQThDLENBQUM7QUE4RXJGLE1BQU0sT0FBTyw0QkFBNEI7SUFnRHZDLFlBQ1MsZ0JBQWtDLEVBQ2pDLFdBQThCLEVB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QkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBdkZPLGdCQUFnQjtZQUNoQixpQkFBaUI7WUFDakIsa0JBQWtCO1lBQ2xCLGNBQWM7WUFDZCxhQUFhO1lBRW5CLDhCQUE4Qjs7OzhCQXVGN0IsS0FBSztrQ0FRTCxLQUFLOzBDQVFMLE1BQU07d0JBR04sV0FBVyxTQUFDLDhDQUE4QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtJY29ufSBmcm9tIFwiLi4vLi4vLi4vZW51bS9pY29uLmVudW1cIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkxpbmVJbmZvfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3RyYW5zYWN0aW9uLWxpbmUtaW5mby5ib1wiO1xyXG5pbXBvcnQge1xyXG4gIFB1cmNoYXNlT3JkZXJMaW5lUmVjZWlwdERldGFpbHNcclxufSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3B1cmNoYXNlLW9yZGVyLWxpbmUtcmVjZWlwdC1kZXRhaWxzLmJvXCI7XHJcbmltcG9ydCB7XHJcbiAgUmVjZWl2ZUdvb2RzRm9yUHVyY2hhc2VPcmRlclJlcXVlc3RcclxufSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3JlY2VpdmUtZ29vZHMtZm9yLXB1cmNoYXNlLW9yZGVyLXJlcXVlc3QuYm9cIjtcclxuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7SWNvbkNhY2hlU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7Rm9ybU1hc3RlclNlcnZpY2V9IGZyb20gXCJAY29saWpuaXQvY29yZWNvbXBvbmVudHNfdjEyXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7QXJ0aWNsZVNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlL2FydGljbGUuc2VydmljZVwiO1xyXG5pbXBvcnQge0RpYWxvZ1NlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlL2RpYWxvZy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7XHJcbiAgVHJhbnNhY3Rpb25SZWNlaXZlR29vZHNTZXJ2aWNlXHJcbn0gZnJvbSBcIi4uLy4uL3RyYW5zYWN0aW9uLWxpbmUvdHJhbnNhY3Rpb24tcmVjZWl2ZS1nb29kcy1saW5lL3NlcnZpY2UvdHJhbnNhY3Rpb24tcmVjZWl2ZS1nb29kcy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7QXZhaWxhYmxlU3RvY2t9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvYXZhaWxhYmxlLXN0b2NrLmJvXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25LaW5kfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL2VudW0vdHJhbnNhY3Rpb24ta2luZC5lbnVtXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnl9IGZyb20gXCIuLi8uLi8uLi9lbnVtL3RyYW5zYWN0aW9uLXR5cGUtY2F0ZWdvcnkuZW51bVwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiY28tcmVjZWl2ZS1nb29kcy1yZXF1ZXN0XCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxjby1mb3JtPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyLXdyYXBwZXJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGV0YWlscy1oZWFkZXJcIiBbdGV4dENvbnRlbnRdPVwicmV0dXJuU3RvY2tNb2RlKCkgPyAoJ1JFVFVSTl9ERVRBSUxTJyB8IGxvY2FsaXplIHwgdXBwZXJjYXNlKSA6ICgnUkVDRUlQVF9ERVRBSUxTJyB8IGxvY2FsaXplIHwgdXBwZXJjYXNlKVwiPjwvZGl2PlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1saW5lLXN0YXR1c2JhciBjbGFzcz1cInN0YXR1cy1iYXItd3JhcHBlclwiIFt0cmFuc2FjdGlvbl09XCJ0cmFuc2FjdGlvbkxpbmVcIiBbdHJhbnNhY3Rpb25LaW5kXT1cInRyYW5zYWN0aW9uS2luZC5TYWxlc09yZGVyXCIgW3RyYW5zYWN0aW9uVHlwZUNhdGVnb3J5XT1cInRyYW5zYWN0aW9uVHlwZUNhdGVnb3J5LlB1cmNoYXNlT3JkZXJSZWNlaXZlZEdvb2RzXCI+PC9jby10cmFuc2FjdGlvbi1saW5lLXN0YXR1c2Jhcj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjb2x1bW5zLXdyYXBwZXJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGV0YWlscy1jb2x1bW5cIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1saW5lLXRvdGFscy1hbW91bnRcIj5cclxuICAgICAgICAgICAgPGNvLWlucHV0LW51bWJlci1waWNrZXIgY2xhc3M9XCJhbW91bnQtbnVtYmVyLXBpY2tlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttYXhdPVwicmV0dXJuU3RvY2tNb2RlKCkgPyByZXR1cm5NYXhUb1JlY2VpdmUgOiBhbW91bnRMZWZ0VG9SZWNlaXZlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwicmVjZWlwdERldGFpbHMuc2VyaWFsTnIgPyAxIDogcmVjZWlwdERldGFpbHMucXVhbnRpdHlUb1JlY2VpdmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbWluXT1cIjFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwiISFyZWNlaXB0RGV0YWlscy5zZXJpYWxOciB8fCByZWNlaXB0RGV0YWlscy5xdWFudGl0eVRvUmVjZWl2ZSA9PT0gMCB8fCAhcmVjZWlwdERldGFpbHMucXVhbnRpdHlUb1JlY2VpdmUgfHwgcmVhZG9ubHlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiISFyZWNlaXB0RGV0YWlscy5zZXJpYWxOciB8fCByZWNlaXB0RGV0YWlscy5xdWFudGl0eVRvUmVjZWl2ZSA9PT0gMCB8fCAhcmVjZWlwdERldGFpbHMucXVhbnRpdHlUb1JlY2VpdmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgID48L2NvLWlucHV0LW51bWJlci1waWNrZXI+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxjby1pbnB1dC10ZXh0IGNsYXNzPVwiZGV0YWlscy1pbnB1dFwiIFsobW9kZWwpXT1cInJlY2VpcHREZXRhaWxzLndhcmVob3VzZU5yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFt0eXBlXT1cIidudW1iZXInXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtoaWRlQXJyb3dCdXR0b25zXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInRyYW5zYWN0aW9uTGluZS53YXJlaG91c2VOdW1iZXIgIT09IHVuZGVmaW5lZCB8fCByZWFkb25seSB8fCByZXR1cm5TdG9ja01vZGUoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwidHJhbnNhY3Rpb25MaW5lLndhcmVob3VzZU51bWJlciAhPT0gdW5kZWZpbmVkIHx8IHJldHVyblN0b2NrTW9kZSgpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cmFuc2FjdGlvbkxpbmUuaXNXYXJlaG91c2VSZXF1aXJlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1dBUkVIT1VTRScgfCBsb2NhbGl6ZVwiPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJsb2NhdGlvbi13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgIDwhLS0gICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFyZWNlaXB0RGV0YWlscy5sb2NhdGlvbk5yICYmIHRyYW5zYWN0aW9uTGluZS5pc0xvY2F0aW9uUmVxdWlyZWRcIiBjbGFzcz1cInJlcXVpcmVkXCIgW3RleHRDb250ZW50XT1cIicqJ1wiPjwvc3Bhbj4tLT5cclxuICAgICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWxpbmUtd2FyZWhvdXNlLWxvY2F0aW9uLWJ1dHRvbiBbbG9jYXRpb25Ocl09XCJzZWxlY3RlZExvY2F0aW9uXCIgW3JlYWRvbmx5XT1cInJldHVyblN0b2NrTW9kZSgpIHx8IHJlY2VpcHREZXRhaWxzLnF1YW50aXR5VG9SZWNlaXZlID09PSAwXCIgW2xpbmVdPVwidHJhbnNhY3Rpb25MaW5lXCIgKGxvY2F0aW9uU2VsZWN0ZWQpPVwicmVjZWlwdERldGFpbHMubG9jYXRpb25OciA9ICRldmVudFwiPjwvY28tdHJhbnNhY3Rpb24tbGluZS13YXJlaG91c2UtbG9jYXRpb24tYnV0dG9uPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8Y28taW5wdXQtdGV4dCBjbGFzcz1cImRldGFpbHMtaW5wdXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCIhcmV0dXJuU3RvY2tNb2RlKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwicmVxdWVzdC5wYWNraW5nU2xpcE5yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInUEFDS0lOR19TTElQJyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXHJcbiAgICAgICAgICA+PC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkaXZpZGVyLXdyYXBwZXJcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkaXZpZGVyXCI+PC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImRldGFpbHMtY29sdW1uXCI+XHJcbiAgICAgICAgICA8Y28taW5wdXQtZGF0ZSBjbGFzcz1cImRldGFpbHMtaW5wdXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwicmVxdWVzdC5yZWNlaXZlZERhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgICAgID48L2NvLWlucHV0LWRhdGU+XHJcbiAgICAgICAgICA8Y28taW5wdXQtdGV4dCAqbmdJZj1cInRyYW5zYWN0aW9uTGluZS5pc0JhdGNoTnJSZXF1aXJlZFwiIGNsYXNzPVwiZGV0YWlscy1pbnB1dFwiIFsobW9kZWwpXT1cInJlY2VpcHREZXRhaWxzLmJhdGNoTnJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3R5cGVdPVwiJ251bWJlcidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2hpZGVBcnJvd0J1dHRvbnNdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHkgfHwgcmV0dXJuU3RvY2tNb2RlKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInJldHVyblN0b2NrTW9kZSgpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cmFuc2FjdGlvbkxpbmUuaXNCYXRjaE5yUmVxdWlyZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidCQVRDSF9OVU1CRVInIHwgbG9jYWxpemVcIj48L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgICAgICA8Y28taW5wdXQtdGV4dCAqbmdJZj1cInRyYW5zYWN0aW9uTGluZS5pc1NlcmlhbE5yUmVxdWlyZWRcIiBjbGFzcz1cImRldGFpbHMtaW5wdXRcIiBbKG1vZGVsKV09XCJyZWNlaXB0RGV0YWlscy5zZXJpYWxOclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbdHlwZV09XCInbnVtYmVyJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbaGlkZUFycm93QnV0dG9uc109XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seSB8fCByZXR1cm5TdG9ja01vZGUoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwicmV0dXJuU3RvY2tNb2RlKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cInRyYW5zYWN0aW9uTGluZS5pc1NlcmlhbE5yUmVxdWlyZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidTRVJJQUxfTlVNQkVSJyB8IGxvY2FsaXplXCI+PC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvY28tZm9ybT5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwiY29tbWl0LWJ1dHRvbi13cmFwcGVyXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjb21taXQtYnV0dG9uIGNsaWNrYWJsZVwiICpuZ0lmPVwiIXJlYWRvbmx5XCIgKGNsaWNrKT1cImhhbmRsZVNhdmVEZXRhaWxzRWRpdCgpXCIgW2NsYXNzLmRpc2FibGVkXT1cInNhdmVCdXR0b25EaXNhYmxlZCB8fCBhbW91bnRMZWZ0VG9SZWNlaXZlID09PSAwXCI+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJjb21taXQtdGV4dFwiIFt0ZXh0Q29udGVudF09XCJyZXR1cm5TdG9ja01vZGUoKSA/ICgnUkVUVVJOX1NUT0NLJyB8IGxvY2FsaXplKSA6ICgnUkVDRUlWRScgfCBsb2NhbGl6ZSlcIj48L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgYCxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIEZvcm1NYXN0ZXJTZXJ2aWNlXHJcbiAgXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSZWNlaXZlR29vZHNSZXF1ZXN0Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgcHVibGljIHJlYWRvbmx5IGljb25zOiB0eXBlb2YgSWNvbiA9IEljb247XHJcbiAgcHVibGljIHJlYWRvbmx5IHRyYW5zYWN0aW9uS2luZDogdHlwZW9mIFRyYW5zYWN0aW9uS2luZCA9IFRyYW5zYWN0aW9uS2luZDtcclxuICBwdWJsaWMgcmVhZG9ubHkgdHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnk6IHR5cGVvZiBUcmFuc2FjdGlvblR5cGVDYXRlZ29yeSA9IFRyYW5zYWN0aW9uVHlwZUNhdGVnb3J5O1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgdHJhbnNhY3Rpb25MaW5lKHZhbHVlOiBUcmFuc2FjdGlvbkxpbmVJbmZvKSB7XHJcbiAgICB0aGlzLl90cmFuc2FjdGlvbkxpbmUgPSB2YWx1ZTtcclxuICAgIHRoaXMucmVhZG9ubHkgPSB0aGlzLl90cmFuc2FjdGlvbkxpbmUuaGFzSW52b2ljZXM7XHJcbiAgICB0aGlzLnJlY2VpcHREZXRhaWxzLndhcmVob3VzZU5yID0gdmFsdWUud2FyZWhvdXNlTnVtYmVyO1xyXG4gICAgdGhpcy5yZWNlaXB0RGV0YWlscy5saW5lTnIgPSB2YWx1ZS5saW5lTnI7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgYW1vdW50TGVmdFRvUmVjZWl2ZSh2YWx1ZTogbnVtYmVyKSB7XHJcbiAgICB0aGlzLl9hbW91bnRMZWZ0VG9SZWNlaXZlID0gdmFsdWU7XHJcbiAgICBpZiAoIXRoaXMucmV0dXJuU3RvY2tNb2RlKCkpIHtcclxuICAgICAgdGhpcy5yZWNlaXB0RGV0YWlscy5xdWFudGl0eVRvUmVjZWl2ZSA9IHZhbHVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHJlbG9hZFJlY2VpdmluZ0dvb2RzSGlzdG9yeTogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby10cmFuc2FjdGlvbi1yZWNlaXZpbmctZ29vZHMtZGV0YWlsc1wiKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcbiAgcHVibGljIGdldCBhbW91bnRMZWZ0VG9SZWNlaXZlKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5fYW1vdW50TGVmdFRvUmVjZWl2ZTtcclxuICB9XHJcblxyXG5cclxuICBwdWJsaWMgZ2V0IHRyYW5zYWN0aW9uTGluZSgpOiBUcmFuc2FjdGlvbkxpbmVJbmZvIHtcclxuICAgIHJldHVybiB0aGlzLl90cmFuc2FjdGlvbkxpbmU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVjZWlwdERldGFpbHM6IFB1cmNoYXNlT3JkZXJMaW5lUmVjZWlwdERldGFpbHMgPSBuZXcgUHVyY2hhc2VPcmRlckxpbmVSZWNlaXB0RGV0YWlscygpO1xyXG4gIHB1YmxpYyByZXF1ZXN0OiBSZWNlaXZlR29vZHNGb3JQdXJjaGFzZU9yZGVyUmVxdWVzdCA9IG5ldyBSZWNlaXZlR29vZHNGb3JQdXJjaGFzZU9yZGVyUmVxdWVzdCgpO1xyXG4gIHB1YmxpYyBzYXZlQnV0dG9uRGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgcmVhZG9ubHk6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgcmV0dXJuTWF4VG9SZWNlaXZlOiBudW1iZXI7XHJcbiAgcHVibGljIHNlbGVjdGVkTG9jYXRpb246IHN0cmluZztcclxuXHJcbiAgcHJpdmF0ZSBfdHJhbnNhY3Rpb25MaW5lOiBUcmFuc2FjdGlvbkxpbmVJbmZvO1xyXG4gIHByaXZhdGUgX2Ftb3VudExlZnRUb1JlY2VpdmU6IG51bWJlcjtcclxuICBwcml2YXRlIF9zdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBpY29uQ2FjaGVTZXJ2aWNlOiBJY29uQ2FjaGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfZm9ybU1hc3RlcjogRm9ybU1hc3RlclNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9zZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9hcnRpY2xlU2VydmljZTogQXJ0aWNsZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9kaWFsb2dTZXJ2aWNlOiBEaWFsb2dTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfcmVjZWl2ZUdvb2RzU2VydmljZTogVHJhbnNhY3Rpb25SZWNlaXZlR29vZHNTZXJ2aWNlXHJcbiAgKSB7IH1cclxuXHJcbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICB0aGlzLl9yZWNlaXZlR29vZHNTZXJ2aWNlLnJldHVybkFydGljbGVTZWxlY3RlZC5zdWJzY3JpYmUoKGF2YWlsYWJsZVN0b2NrOiBBdmFpbGFibGVTdG9jaykgPT4ge1xyXG4gICAgICAgIHRoaXMuX2hhbmRsZVJldHVyblN0b2NrKGF2YWlsYWJsZVN0b2NrKTtcclxuICAgICAgfSlcclxuICAgIClcclxuXHJcbiAgICB0aGlzLnJlcXVlc3QucHVyY2hhc2VPcmRlckxpbmVSZWNlaXB0RGV0YWlsc0RUT1MgPSBbdGhpcy5yZWNlaXB0RGV0YWlsc107XHJcbiAgICBjb25zdCB0aW1lRWxhcHNlZDogbnVtYmVyID0gRGF0ZS5ub3coKTtcclxuICAgIHRoaXMucmVxdWVzdC5yZWNlaXZlZERhdGUgPSBuZXcgRGF0ZSh0aW1lRWxhcHNlZCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLl9zdWJzY3JpcHRpb25zLmZvckVhY2goKHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uKSA9PiBzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZWxvYWRSZWNlaXZpbmdHb29kc0hpc3RvcnkubmV4dCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN1Ym1pdCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9mb3JtTWFzdGVyLnN1Ym1pdFNsYXZlcygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGxvY2F0aW9uUmVxdWlyZWQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHJhbnNhY3Rpb25MaW5lLmlzTG9jYXRpb25SZXF1aXJlZCB8fFxyXG4gICAgICB0aGlzLl90cmFuc2FjdGlvbkxpbmUuaXNCYXRjaE5yUmVxdWlyZWQgfHxcclxuICAgICAgdGhpcy5fdHJhbnNhY3Rpb25MaW5lLmlzU2VyaWFsTnJSZXF1aXJlZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVTYXZlRGV0YWlsc0VkaXQoKTogdm9pZCB7XHJcbiAgICBjb25zdCB2YWxpZCA9IHRoaXMuc3VibWl0KCk7XHJcbiAgICBpZiAodmFsaWQpIHtcclxuICAgICAgdGhpcy5zYXZlQnV0dG9uRGlzYWJsZWQgPSB0cnVlO1xyXG4gICAgICBjb25zdCByZXF1ZXN0OiBSZWNlaXZlR29vZHNGb3JQdXJjaGFzZU9yZGVyUmVxdWVzdCA9IHRoaXMucmVxdWVzdDtcclxuICAgICAgdGhpcy5yZWNlaXB0RGV0YWlscy5xdWFudGl0eVRvUmVjZWl2ZSA9IHRoaXMucmV0dXJuU3RvY2tNb2RlKCkgP1xyXG4gICAgICAgIC10aGlzLnJlY2VpcHREZXRhaWxzLnF1YW50aXR5VG9SZWNlaXZlIDogdGhpcy5yZWNlaXB0RGV0YWlscy5xdWFudGl0eVRvUmVjZWl2ZTtcclxuICAgICAgcmVxdWVzdC50cmFuc0lkID0gdGhpcy5fc2VydmljZS5jdXJyZW50VHJhbnNhY3Rpb24udHJhbnNhY3Rpb25JbmZvLmlkO1xyXG4gICAgICB0aGlzLl9zZXJ2aWNlLnJlY2VpdmVHb29kc0ZvclB1cmNoYXNlT3JkZXIocmVxdWVzdCkudGhlbigoKSA9PiB7XHJcbiAgICAgICAgaWYgKHRoaXMucmV0dXJuU3RvY2tNb2RlKCkpIHtcclxuICAgICAgICAgIHRoaXMuX3JlY2VpdmVHb29kc1NlcnZpY2UucmVsb2FkQXZhaWxhYmxlU3RvY2tEYXRhLm5leHQoKTtcclxuICAgICAgICAgIHRoaXMucmVjZWlwdERldGFpbHMubG9jYXRpb25OciA9IHVuZGVmaW5lZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5yZWxvYWRSZWNlaXZpbmdHb29kc0hpc3RvcnkubmV4dCgpO1xyXG4gICAgICB9KS5jYXRjaCgoZSkgPT4ge1xyXG4gICAgICAgIHRoaXMuc2F2ZUJ1dHRvbkRpc2FibGVkID0gZmFsc2U7XHJcbiAgICAgIH0pO1xyXG4gICAgICB0aGlzLnNhdmVCdXR0b25EaXNhYmxlZCA9IGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHJldHVyblN0b2NrTW9kZSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uTGluZS5hbW91bnQgPCAwO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfaGFuZGxlUmV0dXJuU3RvY2soYXZhaWxhYmxlU3RvY2s6IEF2YWlsYWJsZVN0b2NrKTogdm9pZCB7XHJcbiAgICBjb25zdCBtYXhUb1JldHVybiA9IHRoaXMuYW1vdW50TGVmdFRvUmVjZWl2ZSA8IDAgPyBNYXRoLmFicyh0aGlzLmFtb3VudExlZnRUb1JlY2VpdmUpIDogdGhpcy5hbW91bnRMZWZ0VG9SZWNlaXZlO1xyXG4gICAgdGhpcy5yZXR1cm5NYXhUb1JlY2VpdmUgPSBtYXhUb1JldHVybiA+IGF2YWlsYWJsZVN0b2NrLmF2YWlsYWJsZVF1YW50aXR5ID8gYXZhaWxhYmxlU3RvY2suYXZhaWxhYmxlUXVhbnRpdHkgOiBtYXhUb1JldHVybjtcclxuICAgIHRoaXMucmVjZWlwdERldGFpbHMucXVhbnRpdHlUb1JlY2VpdmUgPSB0aGlzLnJldHVybk1heFRvUmVjZWl2ZTtcclxuICAgIHRoaXMucmVjZWlwdERldGFpbHMud2FyZWhvdXNlTnIgPSBhdmFpbGFibGVTdG9jay53YXJlaG91c2VOdW1iZXI7XHJcbiAgICB0aGlzLnJlY2VpcHREZXRhaWxzLmxvY2F0aW9uTnIgPSBhdmFpbGFibGVTdG9jay5sb2NhdGlvbk51bWJlcjtcclxuICAgIHRoaXMuc2VsZWN0ZWRMb2NhdGlvbiA9IHRoaXMucmVjZWlwdERldGFpbHMubG9jYXRpb25OcjtcclxuICAgIHRoaXMucmVjZWlwdERldGFpbHMuc2VyaWFsTnIgPSBhdmFpbGFibGVTdG9jay5zZXJpYWxOdW1iZXI7XHJcbiAgICB0aGlzLnJlY2VpcHREZXRhaWxzLmJhdGNoTnIgPSBhdmFpbGFibGVTdG9jay5iYXRjaE51bWJlcjtcclxuICAgIHRoaXMucmVjZWlwdERldGFpbHMubGluZU5yID0gdGhpcy50cmFuc2FjdGlvbkxpbmUubGluZU5yO1xyXG4gIH1cclxufVxyXG4iXX0=