@colijnit/transaction 254.1.23 → 254.1.25

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.
@@ -123,6 +123,13 @@ export class TransactionPaymentBaseComponent {
123
123
  get currentPaymentMethod() {
124
124
  return this._currentPaymentMethod;
125
125
  }
126
+ set doNotFetchAmountToPayForRemaining(value) {
127
+ this._doNotFetchAmountToPayForRemaining = value;
128
+ this.paymentService.doNotFetchAmountToPayForRemaining = this._doNotFetchAmountToPayForRemaining;
129
+ }
130
+ get doNotFetchAmountToPayForRemaining() {
131
+ return this._doNotFetchAmountToPayForRemaining;
132
+ }
126
133
  ngOnInit() {
127
134
  return __awaiter(this, void 0, void 0, function* () {
128
135
  // if (this.updateDepositAmount) {
@@ -227,6 +234,7 @@ TransactionPaymentBaseComponent.propDecorators = {
227
234
  showKeyPad: [{ type: Input }],
228
235
  remainingPayment: [{ type: Input }],
229
236
  currentPaymentMethod: [{ type: Input }],
237
+ doNotFetchAmountToPayForRemaining: [{ type: Input }],
230
238
  payed: [{ type: Output }]
231
239
  };
232
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tcGF5bWVudC1iYXNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L2NvcmUvYmFzZS90cmFuc2FjdGlvbi1wYXltZW50LWJhc2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFFUCxNQUFNLGVBQWUsQ0FBQztBQUl2QixPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFFN0MsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFDeEUsT0FBTyxFQUFDLGtDQUFrQyxFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFDMUcsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDbkYsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDckUsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sOENBQThDLENBQUM7QUFLdkYsTUFBTSxPQUFnQiwrQkFBK0I7SUF3S25ELFlBQ1ksa0JBQXNDLEVBQ3RDLHVCQUEyRCxFQUMzRCx1QkFBZ0QsRUFDaEQsY0FBaUMsRUFDcEMsY0FBeUMsRUFDekMsZ0JBQWtDO1FBTC9CLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUFvQztRQUMzRCw0QkFBdUIsR0FBdkIsdUJBQXVCLENBQXlCO1FBQ2hELG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQUNwQyxtQkFBYyxHQUFkLGNBQWMsQ0FBMkI7UUFDekMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQTdLM0IsVUFBSyxHQUFnQixJQUFJLENBQUM7UUFpSG5DLGVB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LENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7O1lBeFFGLFNBQVM7OztZQVJGLGtCQUFrQjtZQUNsQixrQ0FBa0M7WUFDbEMsdUJBQXVCO1lBaEI3QixpQkFBaUI7WUFrQlgseUJBQXlCO1lBRHpCLGdCQUFnQjs7O3NCQVNyQixLQUFLOzhCQVVMLEtBQUs7cUJBVUwsS0FBSztxQkFVTCxLQUFLO3lCQVVMLEtBQUs7NkJBVUwsS0FBSztrQ0FVTCxLQUFLO21DQVVMLEtBQUs7MEJBVUwsS0FBSzswQkFVTCxLQUFLOzRCQVVMLEtBQUs7eUJBVUwsS0FBSzsrQkFHTCxLQUFLO21DQVlMLEtBQUs7b0JBVUwsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgRGlyZWN0aXZlLFxyXG4gIEV2ZW50RW1pdHRlciwgSG9zdCxcclxuICBJbnB1dCxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25Jbml0LFxyXG4gIE91dHB1dCxcclxuICBTa2lwU2VsZlxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0Nhc2hSZWdpc3Rlcn0gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL2Nhc2gtcmVnaXN0ZXInO1xyXG5pbXBvcnQge1BheW1lbnRNZXRob2R9IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9wYXltZW50LW1ldGhvZC5ibyc7XHJcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtJY29ufSBmcm9tICcuLi8uLi8uLi9lbnVtL2ljb24uZW51bSc7XHJcbmltcG9ydCB7UGF5bWVudFZpZXdtb2RlbH0gZnJvbSAnLi4vLi4vLi4vbW9kZWwvcGF5bWVudC52aWV3bW9kZWwnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvblBheW1lbnRDb25uZWN0b3JTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLXBheW1lbnQtY29ubmVjdG9yLnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWV2ZW50LnNlcnZpY2UnO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvblBheW1lbnRTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLXBheW1lbnQuc2VydmljZSc7XHJcbmltcG9ydCB7UmVwb3J0TGF5b3V0U2VsZWN0aW9uUHJpbnR9IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL3JlcG9ydC1sYXlvdXQtc2VsZWN0aW9uLXByaW50LmJvJztcclxuaW1wb3J0IHtSZXBvcnRMYXlvdXRTZWxlY3Rpb25FbWFpbH0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcmVwb3J0LWxheW91dC1zZWxlY3Rpb24tZW1haWwuYm8nO1xyXG5cclxuQERpcmVjdGl2ZSgpXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBUcmFuc2FjdGlvblBheW1lbnRCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHB1YmxpYyByZWFkb25seSBpY29uczogdHlwZW9mIEljb24gPSBJY29uO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgdHJhbnNJZCh2YWx1ZTogbnVtYmVyKSB7XHJcbiAgICB0aGlzLl90cmFuc0lkID0gdmFsdWU7XHJcbiAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLnRyYW5zSWQgPSB0aGlzLl90cmFuc0lkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCB0cmFuc0lkKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHJhbnNJZDtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCB0cmFuc2FjdGlvblV1aWQodmFsdWU6IHN0cmluZykge1xyXG4gICAgdGhpcy5fdHJhbnNhY3Rpb25VdWlkID0gdmFsdWU7XHJcbiAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLnRyYW5zYWN0aW9uVXVpZCA9IHRoaXMuX3RyYW5zYWN0aW9uVXVpZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgdHJhbnNhY3Rpb25VdWlkKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHJhbnNhY3Rpb25VdWlkO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IGJyYW5jaCh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICB0aGlzLl9icmFuY2ggPSB2YWx1ZTtcclxuICAgIHRoaXMucGF5bWVudFNlcnZpY2UuYnJhbmNoID0gdGhpcy5fYnJhbmNoO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBicmFuY2goKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLl9icmFuY2g7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgYW1vdW50KHZhbHVlOiBudW1iZXIpIHtcclxuICAgIHRoaXMuX2Ftb3VudCA9IHZhbHVlO1xyXG4gICAgdGhpcy5wYXltZW50U2VydmljZS5hbW91bnQgPSB0aGlzLl9hbW91bnQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGFtb3VudCgpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIHRoaXMuX2Ftb3VudDtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBjdXJyZW5jeUlkKHZhbHVlOiBudW1iZXIpIHtcclxuICAgIHRoaXMuX2N1cnJlbmN5SWQgPSB2YWx1ZTtcclxuICAgIHRoaXMucGF5bWVudFNlcnZpY2UuY3VycmVuY3lJZCA9IHRoaXMuX2N1cnJlbmN5SWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGN1cnJlbmN5SWQoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLl9jdXJyZW5jeUlkO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IGNhc2hSZWdpc3Rlck5yKHZhbHVlOiBudW1iZXIpIHtcclxuICAgIHRoaXMuX2Nhc2hSZWdpc3Rlck5yID0gdmFsdWU7XHJcbiAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLmNhc2hSZWdpc3Rlck5yID0gdGhpcy5fY2FzaFJlZ2lzdGVyTnI7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGNhc2hSZWdpc3Rlck5yKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5fY2FzaFJlZ2lzdGVyTnI7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgY2FzaFJlZ2lzdGVyR3JvdXBJZCh2YWx1ZTogbnVtYmVyKSB7XHJcbiAgICB0aGlzLl9jYXNoUmVnaXN0ZXJHcm91cElkID0gdmFsdWU7XHJcbiAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLmNhc2hSZWdpc3Rlckdyb3VwSWQgPSB0aGlzLl9jYXNoUmVnaXN0ZXJHcm91cElkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBjYXNoUmVnaXN0ZXJHcm91cElkKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5fY2FzaFJlZ2lzdGVyR3JvdXBJZDtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBjYXNoUmVnaXN0ZXJEcmF3ZXJJZCh2YWx1ZTogbnVtYmVyKSB7XHJcbiAgICB0aGlzLl9jYXNoUmVnaXN0ZXJEcmF3ZXJJZCA9IHZhbHVlO1xyXG4gICAgdGhpcy5wYXltZW50U2VydmljZS5jYXNoUmVnaXN0ZXJEcmF3ZXJJZCA9IHRoaXMuX2Nhc2hSZWdpc3RlckRyYXdlcklkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBjYXNoUmVnaXN0ZXJEcmF3ZXJJZCgpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIHRoaXMuX2Nhc2hSZWdpc3RlckRyYXdlcklkO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IHByaW50ZXJOYW1lKHZhbHVlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX3ByaW50ZXJOYW1lID0gdmFsdWU7XHJcbiAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLnByaW50ZXJOYW1lID0gdGhpcy5fcHJpbnRlck5hbWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IHByaW50ZXJOYW1lKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5fcHJpbnRlck5hbWU7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgZW1haWxMYXlvdXQodmFsdWU6IFJlcG9ydExheW91dFNlbGVjdGlvbkVtYWlsKSB7XHJcbiAgICB0aGlzLl9lbWFpbExheW91dCA9IHZhbHVlO1xyXG4gICAgdGhpcy5wYXltZW50U2VydmljZS5lbWFpbExheW91dCA9IHRoaXMuX2VtYWlsTGF5b3V0O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBlbWFpbExheW91dCgpOiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25FbWFpbCB7XHJcbiAgICByZXR1cm4gdGhpcy5fZW1haWxMYXlvdXQ7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgcHJpbnRlckxheW91dCh2YWx1ZTogUmVwb3J0TGF5b3V0U2VsZWN0aW9uUHJpbnQpIHtcclxuICAgIHRoaXMuX3ByaW50ZXJMYXlvdXQgPSB2YWx1ZTtcclxuICAgIHRoaXMucGF5bWVudFNlcnZpY2UucHJpbnRlckxheW91dCA9IHRoaXMuX3ByaW50ZXJMYXlvdXQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IHByaW50ZXJMYXlvdXQoKTogUmVwb3J0TGF5b3V0U2VsZWN0aW9uUHJpbnQge1xyXG4gICAgcmV0dXJuIHRoaXMuX3ByaW50ZXJMYXlvdXQ7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzaG93S2V5UGFkOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IHJlbWFpbmluZ1BheW1lbnQodmFsdWU6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuX3JlbWFpbmluZ1BheW1lbnQgPSB2YWx1ZTtcclxuICAgIHRoaXMucGF5bWVudFNlcnZpY2UuZ2V0RGVwb3NpdEFtb3VudCA9ICF0aGlzLl9yZW1haW5pbmdQYXltZW50O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCByZW1haW5pbmdQYXltZW50KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3JlbWFpbmluZ1BheW1lbnQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9yZW1haW5pbmdQYXltZW50OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBjdXJyZW50UGF5bWVudE1ldGhvZCh2YWx1ZTogUGF5bWVudE1ldGhvZCkge1xyXG4gICAgdGhpcy5fY3VycmVudFBheW1lbnRNZXRob2QgPSB2YWx1ZTtcclxuICAgIHRoaXMucGF5bWVudFNlcnZpY2UuY3VycmVudFBheW1lbnRNZXRob2QgPSB0aGlzLl9jdXJyZW50UGF5bWVudE1ldGhvZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgY3VycmVudFBheW1lbnRNZXRob2QoKTogUGF5bWVudE1ldGhvZCB7XHJcbiAgICByZXR1cm4gdGhpcy5fY3VycmVudFBheW1lbnRNZXRob2Q7XHJcbiAgfVxyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgcGF5ZWQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgcHVibGljIHBheW1lbnRNZXRob2RJZHg6IG51bWJlciA9IDA7XHJcbiAgcHVibGljIGNhc2hSZWdpc3RlcklkeDogbnVtYmVyID0gMDtcclxuICBwdWJsaWMgcGF5bWVudE1ldGhvZHM6IFBheW1lbnRWaWV3bW9kZWxbXSA9IFtdO1xyXG4gIHB1YmxpYyBjYXNoUmVnaXN0ZXJzOiBhbnlbXSA9IFtdO1xyXG4gIHB1YmxpYyBzaG93Q2FzaFJlZ2lzdGVyczogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyB1c2VDYXNoUmVnaXN0ZXJzOiBib29sZWFuID0gdHJ1ZTtcclxuICAvLyBwdWJsaWMgc2hvd1BzcFFyQ29kZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIC8vIHB1YmxpYyBxckNvZGVJbWFnZTogc3RyaW5nO1xyXG4gIHB1YmxpYyBzaG93TG9hZGVyOiBib29sZWFuID0gdHJ1ZTtcclxuICAvLyBwdWJsaWMgYW1vdW50VG9QYXk6IG51bWJlciA9IDA7XHJcbiAgLy8gcHVibGljIHN0YXR1c01lc3NhZ2U6IHN0cmluZyA9IFwiXCI7XHJcblxyXG4gIHByb3RlY3RlZCBzdWJzOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xyXG5cclxuICBwcml2YXRlIF90cmFuc0lkOiBudW1iZXI7XHJcbiAgcHJpdmF0ZSBfdHJhbnNhY3Rpb25VdWlkOiBzdHJpbmc7XHJcbiAgcHJpdmF0ZSBfYnJhbmNoOiBzdHJpbmc7XHJcbiAgcHJpdmF0ZSBfYW1vdW50OiBudW1iZXIgPSAwO1xyXG4gIHByaXZhdGUgX2N1cnJlbmN5SWQ6IG51bWJlcjtcclxuICBwcml2YXRlIF9jYXNoUmVnaXN0ZXJOcjogbnVtYmVyO1xyXG4gIHByaXZhdGUgX2Nhc2hSZWdpc3Rlckdyb3VwSWQ6IG51bWJlcjtcclxuICBwcml2YXRlIF9jYXNoUmVnaXN0ZXJEcmF3ZXJJZDogbnVtYmVyO1xyXG4gIHByaXZhdGUgX2N1cnJlbnRQYXltZW50TWV0aG9kOiBQYXltZW50TWV0aG9kO1xyXG4gIHByaXZhdGUgX3ByaW50ZXJOYW1lOiBzdHJpbmc7XHJcbiAgcHJpdmF0ZSBfcHJpbnRlckxheW91dDogUmVwb3J0TGF5b3V0U2VsZWN0aW9uUHJpbnQ7XHJcbiAgcHJpdmF0ZSBfZW1haWxMYXlvdXQ6IFJlcG9ydExheW91dFNlbGVjdGlvbkVtYWlsO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByb3RlY3RlZCB0cmFuc2FjdGlvblNlcnZpY2U6IFRyYW5zYWN0aW9uU2VydmljZSxcclxuICAgIHByb3RlY3RlZCBwYXltZW50Q29ubmVjdG9yU2VydmljZTogVHJhbnNhY3Rpb25QYXltZW50Q29ubmVjdG9yU2VydmljZSxcclxuICAgIHByb3RlY3RlZCB0cmFuc2FjdGlvbkV2ZW50U2VydmljZTogVHJhbnNhY3Rpb25FdmVudFNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHVibGljIHBheW1lbnRTZXJ2aWNlOiBUcmFuc2FjdGlvblBheW1lbnRTZXJ2aWNlLFxyXG4gICAgcHVibGljIGljb25DYWNoZVNlcnZpY2U6IEljb25DYWNoZVNlcnZpY2VcclxuICApe1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgbmdPbkluaXQoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICAvLyBpZiAodGhpcy51cGRhdGVEZXBvc2l0QW1vdW50KSB7XHJcbiAgICAvLyAgIGF3YWl0IHRoaXMuX3RyYW5zYWN0aW9uU2VydmljZS51cGRhdGVIZWFkZXJUcmFuc2FjdGlvbkRlcG9zaXRBbW91bnQodGhpcy50cmFuc2FjdGlvblV1aWQsIHRoaXMuYW1vdW50VG9QYXksIHRydWUpO1xyXG4gICAgLy8gfVxyXG4gICAgdGhpcy5zdWJzLnB1c2goXHJcbiAgICAgIHRoaXMucGF5bWVudFNlcnZpY2UucGF5ZWQuc3Vic2NyaWJlKCgpID0+IHRoaXMucGF5ZWQuZW1pdCgpKVxyXG4gICAgKVxyXG4gICAgYXdhaXQgdGhpcy5fZ2V0UGF5bWVudE1ldGhvZHMoKTtcclxuICAgIHRoaXMuc2hvd0xvYWRlciA9IGZhbHNlO1xyXG4gICAgYXdhaXQgdGhpcy5wYXltZW50U2VydmljZS5wcmVwYXJlUGF5bWVudEluZm8oKTtcclxuICAgIHRoaXMuX3ByZXBhcmVDYXNoUmVnaXN0ZXJzKCk7XHJcbiAgICB0aGlzLnBheW1lbnRJbmZvUmVhZHkoKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzLmZvckVhY2gocyA9PiBzLnVuc3Vic2NyaWJlKCkpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHBheW1lbnRNZXRob2RTZWxlY3RlZChtZXRob2Q6IFBheW1lbnRNZXRob2QsIGluZGV4OiBudW1iZXIpOiB2b2lkIHtcclxuICAgIHRoaXMucGF5bWVudE1ldGhvZElkeCA9IGluZGV4O1xyXG4gICAgdGhpcy5fcHJlcGFyZUNhc2hSZWdpc3RlcnMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjYXNoUmVnaXN0ZXJTZWxlY3RlZChjYXNoUmVnaXN0ZXI6IENhc2hSZWdpc3RlciwgaW5kZXg6IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5jYXNoUmVnaXN0ZXJJZHggPSBpbmRleDtcclxuICAgIHRoaXMuY2FzaFJlZ2lzdGVyTnIgPSBjYXNoUmVnaXN0ZXIubnI7XHJcbiAgICB0aGlzLmNhc2hSZWdpc3Rlckdyb3VwSWQgPSBjYXNoUmVnaXN0ZXIuZ3JvdXA7XHJcbiAgICB0aGlzLmNhc2hSZWdpc3RlckRyYXdlcklkID0gK2Nhc2hSZWdpc3Rlci5kZWZhdWx0RHJhd2VyTnVtYmVyO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZVBheW1lbnQoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICByZXR1cm4gdGhpcy5wYXltZW50U2VydmljZS5oYW5kbGVQYXltZW50KCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlS2V5UGFkTW9kZWxDaGFuZ2UobW9kZWw6IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5wYXltZW50U2VydmljZS5hbW91bnRUb1BheSA9IG1vZGVsO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIHBheW1lbnRJbmZvUmVhZHkoKTogdm9pZCB7XHJcblxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICpcclxuICAgKiBAcHJpdmF0ZVxyXG4gICAqL1xyXG4gIHByaXZhdGUgX3ByZXBhcmVDYXNoUmVnaXN0ZXJzKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLnVzZUNhc2hSZWdpc3RlcnMpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5jdXJyZW50UGF5bWVudE1ldGhvZCA9IHRoaXMucGF5bWVudE1ldGhvZHNbdGhpcy5wYXltZW50TWV0aG9kSWR4XS5wYXltZW50O1xyXG4gICAgaWYgKHRoaXMuY3VycmVudFBheW1lbnRNZXRob2QgJiYgKCF0aGlzLmN1cnJlbnRQYXltZW50TWV0aG9kLmV4dGVybmFsU291cmNlSWQgfHwgdGhpcy5jdXJyZW50UGF5bWVudE1ldGhvZC5waW5UZXJtaW5hbCkpIHtcclxuICAgICAgdGhpcy5jYXNoUmVnaXN0ZXJzLmxlbmd0aCA9IDA7XHJcbiAgICAgIHRoaXMuY3VycmVudFBheW1lbnRNZXRob2QucG9zR3JvdXBzLmZvckVhY2goY3JnID0+IHtcclxuICAgICAgICB0aGlzLl9nZXRDYXNoUmVnaXN0ZXJzKHRoaXMuYnJhbmNoLCBjcmcuaWQpO1xyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy5zaG93Q2FzaFJlZ2lzdGVycyA9IHRydWU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNob3dDYXNoUmVnaXN0ZXJzID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9nZXRDYXNoUmVnaXN0ZXJzKGJyYW5jaD86IHN0cmluZywgZ3JvdXA/OiBudW1iZXIpOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldENhc2hSZWdpc3RlcnMoYnJhbmNoLCBncm91cCkudGhlbigoY2FzaFJlZ2lzdGVyczogQ2FzaFJlZ2lzdGVyW10pID0+IHtcclxuICAgICAgdGhpcy5jYXNoUmVnaXN0ZXJzLnB1c2goLi4uY2FzaFJlZ2lzdGVycyk7XHJcbiAgICAgIGNvbnN0IGN1cnJlbnRDYXNoUmVnaXN0ZXI6IENhc2hSZWdpc3RlciA9IHRoaXMuY2FzaFJlZ2lzdGVyc1t0aGlzLmNhc2hSZWdpc3RlcklkeF07XHJcbiAgICAgIGlmIChjdXJyZW50Q2FzaFJlZ2lzdGVyKSB7XHJcbiAgICAgICAgdGhpcy5jYXNoUmVnaXN0ZXJOciA9IGN1cnJlbnRDYXNoUmVnaXN0ZXIubnI7XHJcbiAgICAgICAgdGhpcy5jYXNoUmVnaXN0ZXJHcm91cElkID0gY3VycmVudENhc2hSZWdpc3Rlci5ncm91cDtcclxuICAgICAgICB0aGlzLmNhc2hSZWdpc3RlckRyYXdlcklkID0gK2N1cnJlbnRDYXNoUmVnaXN0ZXIuZGVmYXVsdERyYXdlck51bWJlcjtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9nZXRQYXltZW50TWV0aG9kcygpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZTogRnVuY3Rpb24pID0+IHtcclxuICAgICAgdGhpcy5wYXltZW50TWV0aG9kcy5sZW5ndGggPSAwO1xyXG4gICAgICB0aGlzLnBheW1lbnRDb25uZWN0b3JTZXJ2aWNlLmdldFBheW1lbnRNZXRob2RzVmlld01vZGVscyh0aGlzLmJyYW5jaCkudGhlbigobWV0aG9kczogUGF5bWVudFZpZXdtb2RlbFtdKSA9PiB7XHJcbiAgICAgICAgdGhpcy5wYXltZW50TWV0aG9kcyA9IG1ldGhvZHMuc2xpY2UoKTtcclxuICAgICAgICBpZiAodGhpcy5jdXJyZW50UGF5bWVudE1ldGhvZCkge1xyXG4gICAgICAgICAgdGhpcy5wYXltZW50TWV0aG9kSWR4ID0gdGhpcy5wYXltZW50TWV0aG9kcy5maW5kSW5kZXgocCA9PiBwLnBheW1lbnQuY29kZSA9PT0gdGhpcy5jdXJyZW50UGF5bWVudE1ldGhvZC5jb2RlKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmVzb2x2ZSgpO1xyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
240
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tcGF5bWVudC1iYXNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L2NvcmUvYmFzZS90cmFuc2FjdGlvbi1wYXltZW50LWJhc2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFFUCxNQUFNLGVBQWUsQ0FBQztBQUl2QixPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFFN0MsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFDeEUsT0FBTyxFQUFDLGtDQUFrQyxFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFDMUcsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDbkYsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDckUsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sOENBQThDLENBQUM7QUFLdkYsTUFBTSxPQUFnQiwrQkFBK0I7SUFtTG5ELFlBQ1ksa0JBQXNDLEVBQ3RDLHVCQUEyRCxFQUMzRCx1QkFBZ0QsRUFDaEQsY0FBaUMsRUFDcEMsY0FBeUMsRUFDekMsZ0JBQWtDO1FBTC9CLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUFvQztRQUMzRCw0QkFBdUIsR0FBdkIsdUJBQXVCLENBQXlCO1FBQ2hELG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQUNwQyxtQkFBYyxHQUFkLGNBQWMsQ0FBMkI7UUFDekMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQXhMM0IsVUFBSyxHQUFnQixJQUFJLENBQUM7UUFpSG5DLGVBQVUsR0FBWSxJQUFJLENBQUM7UUFZMUIsc0JBQWlCLEdBQVksS0FBSyxDQUFDO1FBdUJwQyxVQUFLLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFFckQscUJBQWdCLEdBQVcsQ0FBQyxDQUFDO1FBQzdCLG9CQUFlLEdBQVcsQ0FBQyxDQUFDO1FBQzVCLG1CQUFjLEdBQXVCLEVBQUUsQ0FBQztRQUN4QyxrQkFBYSxHQUFVLEVBQUUsQ0FBQztRQUMxQixzQkFBaUIsR0FBWSxLQUFLLENBQUM7UUFDbkMscUJBQWdCLEdBQVksSUFBSSxDQUFDO1FBQ3hDLHlDQUF5QztRQUN6Qyw4QkFBOEI7UUFDdkIsZUFBVSxHQUFZLElBQUksQ0FBQztRQUNsQyxrQ0FBa0M7UUFDbEMscUNBQXFDO1FBRTNCLFNBQUksR0FBbUIsRUFBRSxDQUFDO1FBSzVCLFlBQU8sR0FBVyxDQUFDLENBQUM7SUFtQjVCLENBQUM7SUF4TEQsSUFDVyxPQUFPLENBQUMsS0FBYTtRQUM5QixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztRQUN0QixJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQzlDLENBQUM7SUFFRCxJQUFXLE9BQU87UUFDaEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUNXLGVBQWUsQ0FBQyxLQUFhO1FBQ3RDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFDOUIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDO0lBQzlELENBQUM7SUFFRCxJQUFXLGVBQWU7UUFDeEIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQ1csTUFBTSxDQUFDLEtBQWE7UUFDN0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDckIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUM1QyxDQUFDO0lBRUQsSUFBVyxNQUFNO1FBQ2YsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxJQUNXLE1BQU0sQ0FBQyxLQUFhO1FBQzdCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDNUMsQ0FBQztJQUVELElBQVcsTUFBTTtRQUNmLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBRUQsSUFDVyxVQUFVLENBQUMsS0FBYTtRQUNqQyxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztRQUN6QixJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQ3BELENBQUM7SUFFRCxJQUFXLFVBQVU7UUFDbkIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUNXLGNBQWMsQ0FBQyxLQUFhO1FBQ3JDLElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO1FBQzdCLElBQUksQ0FBQyxjQUFjLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDNUQsQ0FBQztJQUVELElBQVcsY0FBYztRQUN2QixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQ1csbUJBQW1CLENBQUMsS0FBYTtRQUMxQyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsS0FBSyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxjQUFjLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDO0lBQ3RFLENBQUM7SUFFRCxJQUFXLG1CQUFtQjtRQUM1QixPQUFPLElBQUksQ0FBQyxvQkFBb0IsQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFDVyxvQkFBb0IsQ0FBQyxLQUFhO1FBQzNDLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxLQUFLLENBQUM7UUFDbkMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUM7SUFDeEUsQ0FBQztJQUVELElBQVcsb0JBQW9CO1FBQzdCLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDO0lBQ3BDLENBQUM7SUFFRCxJQUNXLFdBQVcsQ0FBQyxLQUFhO1FBQ2xDLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO1FBQzFCLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDdEQsQ0FBQztJQUVELElBQVcsV0FBVztRQUNwQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQ1csV0FBVyxDQUFDLEtBQWlDO1FBQ3RELElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO1FBQzFCLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDdEQsQ0FBQztJQUVELElBQVcsV0FBVztRQUNwQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQ1csYUFBYSxDQUFDLEtBQWlDO1FBQ3hELElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO1FBQzVCLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDMUQsQ0FBQztJQUVELElBQVcsYUFBYTtRQUN0QixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDN0IsQ0FBQztJQUtELElBQ1csZ0JBQWdCLENBQUMsS0FBYztRQUN4QyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO1FBQy9CLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLEdBQUcsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUM7SUFDakUsQ0FBQztJQUVELElBQVcsZ0JBQWdCO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDO0lBQ2hDLENBQUM7SUFJRCxJQUNXLG9CQUFvQixDQUFDLEtBQW9CO1FBQ2xELElBQUksQ0FBQyxxQkFBcUIsR0FBRyxLQUFLLENBQUM7UUFDbkMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUM7SUFDeEUsQ0FBQztJQUVELElBQVcsb0JBQW9CO1FBQzdCLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDO0lBQ3BDLENBQUM7SUFFRCxJQUNXLGlDQUFpQyxDQUFDLEtBQWM7UUFDekQsSUFBSSxDQUFDLGtDQUFrQyxHQUFHLEtBQUssQ0FBQztRQUNoRCxJQUFJLENBQUMsY0FBYyxDQUFDLGlDQUFpQyxHQUFHLElBQUksQ0FBQyxrQ0FBa0MsQ0FBQztJQUNsRyxDQUFDO0lBRUQsSUFBVyxpQ0FBaUM7UUFDMUMsT0FBTyxJQUFJLENBQUMsa0NBQWtDLENBQUM7SUFDakQsQ0FBQztJQTJDSyxRQUFROztZQUNaLGtDQUFrQztZQUNsQyx1SEFBdUg7WUFDdkgsSUFBSTtZQUNKLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUNaLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLENBQzdELENBQUE7WUFDRCxNQUFNLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1lBQ2hDLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1lBQ3hCLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1lBQy9DLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1lBQzdCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQzFCLENBQUM7S0FBQTtJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFTSxxQkFBcUIsQ0FBQyxNQUFxQixFQUFFLEtBQWE7UUFDL0QsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQztRQUM5QixJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRU0sb0JBQW9CLENBQUMsWUFBMEIsRUFBRSxLQUFhO1FBQ25FLElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO1FBQzdCLElBQUksQ0FBQyxjQUFjLEdBQUcsWUFBWSxDQUFDLEVBQUUsQ0FBQztRQUN0QyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQztRQUM5QyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsQ0FBQyxZQUFZLENBQUMsbUJBQW1CLENBQUM7SUFDaEUsQ0FBQztJQUVNLGFBQWE7UUFDbEIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzdDLENBQUM7SUFFTSx1QkFBdUIsQ0FBQyxLQUFhO1FBQzFDLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztJQUMxQyxDQUFDO0lBRVMsZ0JBQWdCO0lBRTFCLENBQUM7SUFFRDs7O09BR0c7SUFDSyxxQkFBcUI7UUFDM0IsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUMxQixPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxPQUFPLENBQUM7UUFDL0UsSUFBSSxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxnQkFBZ0IsSUFBSSxJQUFJLENBQUMsb0JBQW9CLENBQUMsV0FBVyxDQUFDLEVBQUU7WUFDdkgsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1lBQzlCLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUNoRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDOUMsQ0FBQyxDQUFDLENBQUM7WUFDSCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO1NBQy9CO2FBQU07WUFDTCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO1NBQ2hDO0lBQ0gsQ0FBQztJQUVPLGlCQUFpQixDQUFDLE1BQWUsRUFBRSxLQUFjO1FBQ3ZELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsYUFBNkIsRUFBRSxFQUFFO1lBQzdGLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEdBQUcsYUFBYSxDQUFDLENBQUM7WUFDMUMsTUFBTSxtQkFBbUIsR0FBaUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDbkYsSUFBSSxtQkFBbUIsRUFBRTtnQkFDdkIsSUFBSSxDQUFDLGNBQWMsR0FBRyxtQkFBbUIsQ0FBQyxFQUFFLENBQUM7Z0JBQzdDLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxtQkFBbUIsQ0FBQyxLQUFLLENBQUM7Z0JBQ3JELElBQUksQ0FBQyxvQkFBb0IsR0FBRyxDQUFDLG1CQUFtQixDQUFDLG1CQUFtQixDQUFDO2FBQ3RFO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sa0JBQWtCO1FBQ3hCLE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFpQixFQUFFLEVBQUU7WUFDdkMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1lBQy9CLElBQUksQ0FBQyx1QkFBdUIsQ0FBQywyQkFBMkIsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBMkIsRUFBRSxFQUFFO2dCQUN6RyxJQUFJLENBQUMsY0FBYyxHQUFHLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDdEMsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUU7b0JBQzdCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztpQkFDL0c7Z0JBQ0QsT0FBTyxFQUFFLENBQUM7WUFDWixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7O1lBblJGLFNBQVM7OztZQVJGLGtCQUFrQjtZQUNsQixrQ0FBa0M7WUFDbEMsdUJBQXVCO1lBaEI3QixpQkFBaUI7WUFrQlgseUJBQXlCO1lBRHpCLGdCQUFnQjs7O3NCQVNyQixLQUFLOzhCQVVMLEtBQUs7cUJBVUwsS0FBSztxQkFVTCxLQUFLO3lCQVVMLEtBQUs7NkJBVUwsS0FBSztrQ0FVTCxLQUFLO21DQVVMLEtBQUs7MEJBVUwsS0FBSzswQkFVTCxLQUFLOzRCQVVMLEtBQUs7eUJBVUwsS0FBSzsrQkFHTCxLQUFLO21DQVlMLEtBQUs7Z0RBVUwsS0FBSztvQkFVTCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBEaXJlY3RpdmUsXHJcbiAgRXZlbnRFbWl0dGVyLCBIb3N0LFxyXG4gIElucHV0LFxyXG4gIE9uRGVzdHJveSxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFNraXBTZWxmXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7Q2FzaFJlZ2lzdGVyfSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvY2FzaC1yZWdpc3Rlcic7XHJcbmltcG9ydCB7UGF5bWVudE1ldGhvZH0gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3BheW1lbnQtbWV0aG9kLmJvJztcclxuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge0ljb259IGZyb20gJy4uLy4uLy4uL2VudW0vaWNvbi5lbnVtJztcclxuaW1wb3J0IHtQYXltZW50Vmlld21vZGVsfSBmcm9tICcuLi8uLi8uLi9tb2RlbC9wYXltZW50LnZpZXdtb2RlbCc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uUGF5bWVudENvbm5lY3RvclNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tcGF5bWVudC1jb25uZWN0b3Iuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25FdmVudFNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tZXZlbnQuc2VydmljZSc7XHJcbmltcG9ydCB7SWNvbkNhY2hlU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uUGF5bWVudFNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tcGF5bWVudC5zZXJ2aWNlJztcclxuaW1wb3J0IHtSZXBvcnRMYXlvdXRTZWxlY3Rpb25QcmludH0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcmVwb3J0LWxheW91dC1zZWxlY3Rpb24tcHJpbnQuYm8nO1xyXG5pbXBvcnQge1JlcG9ydExheW91dFNlbGVjdGlvbkVtYWlsfSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9yZXBvcnQtbGF5b3V0LXNlbGVjdGlvbi1lbWFpbC5ibyc7XHJcblxyXG5ARGlyZWN0aXZlKClcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFRyYW5zYWN0aW9uUGF5bWVudEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgcHVibGljIHJlYWRvbmx5IGljb25zOiB0eXBlb2YgSWNvbiA9IEljb247XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCB0cmFuc0lkKHZhbHVlOiBudW1iZXIpIHtcclxuICAgIHRoaXMuX3RyYW5zSWQgPSB2YWx1ZTtcclxuICAgIHRoaXMucGF5bWVudFNlcnZpY2UudHJhbnNJZCA9IHRoaXMuX3RyYW5zSWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IHRyYW5zSWQoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLl90cmFuc0lkO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IHRyYW5zYWN0aW9uVXVpZCh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICB0aGlzLl90cmFuc2FjdGlvblV1aWQgPSB2YWx1ZTtcclxuICAgIHRoaXMucGF5bWVudFNlcnZpY2UudHJhbnNhY3Rpb25VdWlkID0gdGhpcy5fdHJhbnNhY3Rpb25VdWlkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCB0cmFuc2FjdGlvblV1aWQoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLl90cmFuc2FjdGlvblV1aWQ7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgYnJhbmNoKHZhbHVlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX2JyYW5jaCA9IHZhbHVlO1xyXG4gICAgdGhpcy5wYXltZW50U2VydmljZS5icmFuY2ggPSB0aGlzLl9icmFuY2g7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGJyYW5jaCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuX2JyYW5jaDtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBhbW91bnQodmFsdWU6IG51bWJlcikge1xyXG4gICAgdGhpcy5fYW1vdW50ID0gdmFsdWU7XHJcbiAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLmFtb3VudCA9IHRoaXMuX2Ftb3VudDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgYW1vdW50KCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5fYW1vdW50O1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IGN1cnJlbmN5SWQodmFsdWU6IG51bWJlcikge1xyXG4gICAgdGhpcy5fY3VycmVuY3lJZCA9IHZhbHVlO1xyXG4gICAgdGhpcy5wYXltZW50U2VydmljZS5jdXJyZW5jeUlkID0gdGhpcy5fY3VycmVuY3lJZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgY3VycmVuY3lJZCgpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIHRoaXMuX2N1cnJlbmN5SWQ7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgY2FzaFJlZ2lzdGVyTnIodmFsdWU6IG51bWJlcikge1xyXG4gICAgdGhpcy5fY2FzaFJlZ2lzdGVyTnIgPSB2YWx1ZTtcclxuICAgIHRoaXMucGF5bWVudFNlcnZpY2UuY2FzaFJlZ2lzdGVyTnIgPSB0aGlzLl9jYXNoUmVnaXN0ZXJOcjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgY2FzaFJlZ2lzdGVyTnIoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLl9jYXNoUmVnaXN0ZXJOcjtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBjYXNoUmVnaXN0ZXJHcm91cElkKHZhbHVlOiBudW1iZXIpIHtcclxuICAgIHRoaXMuX2Nhc2hSZWdpc3Rlckdyb3VwSWQgPSB2YWx1ZTtcclxuICAgIHRoaXMucGF5bWVudFNlcnZpY2UuY2FzaFJlZ2lzdGVyR3JvdXBJZCA9IHRoaXMuX2Nhc2hSZWdpc3Rlckdyb3VwSWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGNhc2hSZWdpc3Rlckdyb3VwSWQoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLl9jYXNoUmVnaXN0ZXJHcm91cElkO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IGNhc2hSZWdpc3RlckRyYXdlcklkKHZhbHVlOiBudW1iZXIpIHtcclxuICAgIHRoaXMuX2Nhc2hSZWdpc3RlckRyYXdlcklkID0gdmFsdWU7XHJcbiAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLmNhc2hSZWdpc3RlckRyYXdlcklkID0gdGhpcy5fY2FzaFJlZ2lzdGVyRHJhd2VySWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGNhc2hSZWdpc3RlckRyYXdlcklkKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5fY2FzaFJlZ2lzdGVyRHJhd2VySWQ7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgcHJpbnRlck5hbWUodmFsdWU6IHN0cmluZykge1xyXG4gICAgdGhpcy5fcHJpbnRlck5hbWUgPSB2YWx1ZTtcclxuICAgIHRoaXMucGF5bWVudFNlcnZpY2UucHJpbnRlck5hbWUgPSB0aGlzLl9wcmludGVyTmFtZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgcHJpbnRlck5hbWUoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLl9wcmludGVyTmFtZTtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBlbWFpbExheW91dCh2YWx1ZTogUmVwb3J0TGF5b3V0U2VsZWN0aW9uRW1haWwpIHtcclxuICAgIHRoaXMuX2VtYWlsTGF5b3V0ID0gdmFsdWU7XHJcbiAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLmVtYWlsTGF5b3V0ID0gdGhpcy5fZW1haWxMYXlvdXQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGVtYWlsTGF5b3V0KCk6IFJlcG9ydExheW91dFNlbGVjdGlvbkVtYWlsIHtcclxuICAgIHJldHVybiB0aGlzLl9lbWFpbExheW91dDtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBwcmludGVyTGF5b3V0KHZhbHVlOiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25QcmludCkge1xyXG4gICAgdGhpcy5fcHJpbnRlckxheW91dCA9IHZhbHVlO1xyXG4gICAgdGhpcy5wYXltZW50U2VydmljZS5wcmludGVyTGF5b3V0ID0gdGhpcy5fcHJpbnRlckxheW91dDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgcHJpbnRlckxheW91dCgpOiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25QcmludCB7XHJcbiAgICByZXR1cm4gdGhpcy5fcHJpbnRlckxheW91dDtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNob3dLZXlQYWQ6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgcmVtYWluaW5nUGF5bWVudCh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5fcmVtYWluaW5nUGF5bWVudCA9IHZhbHVlO1xyXG4gICAgdGhpcy5wYXltZW50U2VydmljZS5nZXREZXBvc2l0QW1vdW50ID0gIXRoaXMuX3JlbWFpbmluZ1BheW1lbnQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IHJlbWFpbmluZ1BheW1lbnQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fcmVtYWluaW5nUGF5bWVudDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3JlbWFpbmluZ1BheW1lbnQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IGN1cnJlbnRQYXltZW50TWV0aG9kKHZhbHVlOiBQYXltZW50TWV0aG9kKSB7XHJcbiAgICB0aGlzLl9jdXJyZW50UGF5bWVudE1ldGhvZCA9IHZhbHVlO1xyXG4gICAgdGhpcy5wYXltZW50U2VydmljZS5jdXJyZW50UGF5bWVudE1ldGhvZCA9IHRoaXMuX2N1cnJlbnRQYXltZW50TWV0aG9kO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBjdXJyZW50UGF5bWVudE1ldGhvZCgpOiBQYXltZW50TWV0aG9kIHtcclxuICAgIHJldHVybiB0aGlzLl9jdXJyZW50UGF5bWVudE1ldGhvZDtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHNldCBkb05vdEZldGNoQW1vdW50VG9QYXlGb3JSZW1haW5pbmcodmFsdWU6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuX2RvTm90RmV0Y2hBbW91bnRUb1BheUZvclJlbWFpbmluZyA9IHZhbHVlO1xyXG4gICAgdGhpcy5wYXltZW50U2VydmljZS5kb05vdEZldGNoQW1vdW50VG9QYXlGb3JSZW1haW5pbmcgPSB0aGlzLl9kb05vdEZldGNoQW1vdW50VG9QYXlGb3JSZW1haW5pbmc7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGRvTm90RmV0Y2hBbW91bnRUb1BheUZvclJlbWFpbmluZygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9kb05vdEZldGNoQW1vdW50VG9QYXlGb3JSZW1haW5pbmc7XHJcbiAgfVxyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgcGF5ZWQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgcHVibGljIHBheW1lbnRNZXRob2RJZHg6IG51bWJlciA9IDA7XHJcbiAgcHVibGljIGNhc2hSZWdpc3RlcklkeDogbnVtYmVyID0gMDtcclxuICBwdWJsaWMgcGF5bWVudE1ldGhvZHM6IFBheW1lbnRWaWV3bW9kZWxbXSA9IFtdO1xyXG4gIHB1YmxpYyBjYXNoUmVnaXN0ZXJzOiBhbnlbXSA9IFtdO1xyXG4gIHB1YmxpYyBzaG93Q2FzaFJlZ2lzdGVyczogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyB1c2VDYXNoUmVnaXN0ZXJzOiBib29sZWFuID0gdHJ1ZTtcclxuICAvLyBwdWJsaWMgc2hvd1BzcFFyQ29kZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIC8vIHB1YmxpYyBxckNvZGVJbWFnZTogc3RyaW5nO1xyXG4gIHB1YmxpYyBzaG93TG9hZGVyOiBib29sZWFuID0gdHJ1ZTtcclxuICAvLyBwdWJsaWMgYW1vdW50VG9QYXk6IG51bWJlciA9IDA7XHJcbiAgLy8gcHVibGljIHN0YXR1c01lc3NhZ2U6IHN0cmluZyA9IFwiXCI7XHJcblxyXG4gIHByb3RlY3RlZCBzdWJzOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xyXG5cclxuICBwcml2YXRlIF90cmFuc0lkOiBudW1iZXI7XHJcbiAgcHJpdmF0ZSBfdHJhbnNhY3Rpb25VdWlkOiBzdHJpbmc7XHJcbiAgcHJpdmF0ZSBfYnJhbmNoOiBzdHJpbmc7XHJcbiAgcHJpdmF0ZSBfYW1vdW50OiBudW1iZXIgPSAwO1xyXG4gIHByaXZhdGUgX2N1cnJlbmN5SWQ6IG51bWJlcjtcclxuICBwcml2YXRlIF9jYXNoUmVnaXN0ZXJOcjogbnVtYmVyO1xyXG4gIHByaXZhdGUgX2Nhc2hSZWdpc3Rlckdyb3VwSWQ6IG51bWJlcjtcclxuICBwcml2YXRlIF9jYXNoUmVnaXN0ZXJEcmF3ZXJJZDogbnVtYmVyO1xyXG4gIHByaXZhdGUgX2N1cnJlbnRQYXltZW50TWV0aG9kOiBQYXltZW50TWV0aG9kO1xyXG4gIHByaXZhdGUgX2RvTm90RmV0Y2hBbW91bnRUb1BheUZvclJlbWFpbmluZzogYm9vbGVhbjtcclxuICBwcml2YXRlIF9wcmludGVyTmFtZTogc3RyaW5nO1xyXG4gIHByaXZhdGUgX3ByaW50ZXJMYXlvdXQ6IFJlcG9ydExheW91dFNlbGVjdGlvblByaW50O1xyXG4gIHByaXZhdGUgX2VtYWlsTGF5b3V0OiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25FbWFpbDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcm90ZWN0ZWQgdHJhbnNhY3Rpb25TZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgcGF5bWVudENvbm5lY3RvclNlcnZpY2U6IFRyYW5zYWN0aW9uUGF5bWVudENvbm5lY3RvclNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgdHJhbnNhY3Rpb25FdmVudFNlcnZpY2U6IFRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHB1YmxpYyBwYXltZW50U2VydmljZTogVHJhbnNhY3Rpb25QYXltZW50U2VydmljZSxcclxuICAgIHB1YmxpYyBpY29uQ2FjaGVTZXJ2aWNlOiBJY29uQ2FjaGVTZXJ2aWNlXHJcbiAgKXtcclxuICB9XHJcblxyXG4gIGFzeW5jIG5nT25Jbml0KCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgLy8gaWYgKHRoaXMudXBkYXRlRGVwb3NpdEFtb3VudCkge1xyXG4gICAgLy8gICBhd2FpdCB0aGlzLl90cmFuc2FjdGlvblNlcnZpY2UudXBkYXRlSGVhZGVyVHJhbnNhY3Rpb25EZXBvc2l0QW1vdW50KHRoaXMudHJhbnNhY3Rpb25VdWlkLCB0aGlzLmFtb3VudFRvUGF5LCB0cnVlKTtcclxuICAgIC8vIH1cclxuICAgIHRoaXMuc3Vicy5wdXNoKFxyXG4gICAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLnBheWVkLnN1YnNjcmliZSgoKSA9PiB0aGlzLnBheWVkLmVtaXQoKSlcclxuICAgIClcclxuICAgIGF3YWl0IHRoaXMuX2dldFBheW1lbnRNZXRob2RzKCk7XHJcbiAgICB0aGlzLnNob3dMb2FkZXIgPSBmYWxzZTtcclxuICAgIGF3YWl0IHRoaXMucGF5bWVudFNlcnZpY2UucHJlcGFyZVBheW1lbnRJbmZvKCk7XHJcbiAgICB0aGlzLl9wcmVwYXJlQ2FzaFJlZ2lzdGVycygpO1xyXG4gICAgdGhpcy5wYXltZW50SW5mb1JlYWR5KCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3Vicy5mb3JFYWNoKHMgPT4gcy51bnN1YnNjcmliZSgpKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBwYXltZW50TWV0aG9kU2VsZWN0ZWQobWV0aG9kOiBQYXltZW50TWV0aG9kLCBpbmRleDogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB0aGlzLnBheW1lbnRNZXRob2RJZHggPSBpbmRleDtcclxuICAgIHRoaXMuX3ByZXBhcmVDYXNoUmVnaXN0ZXJzKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2FzaFJlZ2lzdGVyU2VsZWN0ZWQoY2FzaFJlZ2lzdGVyOiBDYXNoUmVnaXN0ZXIsIGluZGV4OiBudW1iZXIpOiB2b2lkIHtcclxuICAgIHRoaXMuY2FzaFJlZ2lzdGVySWR4ID0gaW5kZXg7XHJcbiAgICB0aGlzLmNhc2hSZWdpc3Rlck5yID0gY2FzaFJlZ2lzdGVyLm5yO1xyXG4gICAgdGhpcy5jYXNoUmVnaXN0ZXJHcm91cElkID0gY2FzaFJlZ2lzdGVyLmdyb3VwO1xyXG4gICAgdGhpcy5jYXNoUmVnaXN0ZXJEcmF3ZXJJZCA9ICtjYXNoUmVnaXN0ZXIuZGVmYXVsdERyYXdlck51bWJlcjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVQYXltZW50KCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgcmV0dXJuIHRoaXMucGF5bWVudFNlcnZpY2UuaGFuZGxlUGF5bWVudCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZUtleVBhZE1vZGVsQ2hhbmdlKG1vZGVsOiBudW1iZXIpOiB2b2lkIHtcclxuICAgIHRoaXMucGF5bWVudFNlcnZpY2UuYW1vdW50VG9QYXkgPSBtb2RlbDtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBwYXltZW50SW5mb1JlYWR5KCk6IHZvaWQge1xyXG5cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqXHJcbiAgICogQHByaXZhdGVcclxuICAgKi9cclxuICBwcml2YXRlIF9wcmVwYXJlQ2FzaFJlZ2lzdGVycygpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy51c2VDYXNoUmVnaXN0ZXJzKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMuY3VycmVudFBheW1lbnRNZXRob2QgPSB0aGlzLnBheW1lbnRNZXRob2RzW3RoaXMucGF5bWVudE1ldGhvZElkeF0ucGF5bWVudDtcclxuICAgIGlmICh0aGlzLmN1cnJlbnRQYXltZW50TWV0aG9kICYmICghdGhpcy5jdXJyZW50UGF5bWVudE1ldGhvZC5leHRlcm5hbFNvdXJjZUlkIHx8IHRoaXMuY3VycmVudFBheW1lbnRNZXRob2QucGluVGVybWluYWwpKSB7XHJcbiAgICAgIHRoaXMuY2FzaFJlZ2lzdGVycy5sZW5ndGggPSAwO1xyXG4gICAgICB0aGlzLmN1cnJlbnRQYXltZW50TWV0aG9kLnBvc0dyb3Vwcy5mb3JFYWNoKGNyZyA9PiB7XHJcbiAgICAgICAgdGhpcy5fZ2V0Q2FzaFJlZ2lzdGVycyh0aGlzLmJyYW5jaCwgY3JnLmlkKTtcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMuc2hvd0Nhc2hSZWdpc3RlcnMgPSB0cnVlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zaG93Q2FzaFJlZ2lzdGVycyA9IGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZ2V0Q2FzaFJlZ2lzdGVycyhicmFuY2g/OiBzdHJpbmcsIGdyb3VwPzogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRDYXNoUmVnaXN0ZXJzKGJyYW5jaCwgZ3JvdXApLnRoZW4oKGNhc2hSZWdpc3RlcnM6IENhc2hSZWdpc3RlcltdKSA9PiB7XHJcbiAgICAgIHRoaXMuY2FzaFJlZ2lzdGVycy5wdXNoKC4uLmNhc2hSZWdpc3RlcnMpO1xyXG4gICAgICBjb25zdCBjdXJyZW50Q2FzaFJlZ2lzdGVyOiBDYXNoUmVnaXN0ZXIgPSB0aGlzLmNhc2hSZWdpc3RlcnNbdGhpcy5jYXNoUmVnaXN0ZXJJZHhdO1xyXG4gICAgICBpZiAoY3VycmVudENhc2hSZWdpc3Rlcikge1xyXG4gICAgICAgIHRoaXMuY2FzaFJlZ2lzdGVyTnIgPSBjdXJyZW50Q2FzaFJlZ2lzdGVyLm5yO1xyXG4gICAgICAgIHRoaXMuY2FzaFJlZ2lzdGVyR3JvdXBJZCA9IGN1cnJlbnRDYXNoUmVnaXN0ZXIuZ3JvdXA7XHJcbiAgICAgICAgdGhpcy5jYXNoUmVnaXN0ZXJEcmF3ZXJJZCA9ICtjdXJyZW50Q2FzaFJlZ2lzdGVyLmRlZmF1bHREcmF3ZXJOdW1iZXI7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZ2V0UGF5bWVudE1ldGhvZHMoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmU6IEZ1bmN0aW9uKSA9PiB7XHJcbiAgICAgIHRoaXMucGF5bWVudE1ldGhvZHMubGVuZ3RoID0gMDtcclxuICAgICAgdGhpcy5wYXltZW50Q29ubmVjdG9yU2VydmljZS5nZXRQYXltZW50TWV0aG9kc1ZpZXdNb2RlbHModGhpcy5icmFuY2gpLnRoZW4oKG1ldGhvZHM6IFBheW1lbnRWaWV3bW9kZWxbXSkgPT4ge1xyXG4gICAgICAgIHRoaXMucGF5bWVudE1ldGhvZHMgPSBtZXRob2RzLnNsaWNlKCk7XHJcbiAgICAgICAgaWYgKHRoaXMuY3VycmVudFBheW1lbnRNZXRob2QpIHtcclxuICAgICAgICAgIHRoaXMucGF5bWVudE1ldGhvZElkeCA9IHRoaXMucGF5bWVudE1ldGhvZHMuZmluZEluZGV4KHAgPT4gcC5wYXltZW50LmNvZGUgPT09IHRoaXMuY3VycmVudFBheW1lbnRNZXRob2QuY29kZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJlc29sdmUoKTtcclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIl19
@@ -201,6 +201,7 @@ TransactionHeaderPaymentComponent.decorators = [
201
201
  [amount]="showRemainingPayment ? remainingToPay : toPay"
202
202
  [remainingPayment]="showRemainingPayment"
203
203
  [currencyId]="transactionInfo.currencyId"
204
+ [doNotFetchAmountToPayForRemaining]="true"
204
205
  ></co-payment>
205
206
  </co-dialog>
206
207
  `,
@@ -223,4 +224,4 @@ TransactionHeaderPaymentComponent.ctorParameters = () => [
223
224
  TransactionHeaderPaymentComponent.propDecorators = {
224
225
  showClass: [{ type: HostBinding, args: ["class.co-transaction-header-payment",] }]
225
226
  };
226
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24taGVhZGVyLXBheW1lbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvdHJhbnNhY3Rpb24taGVhZGVyL3RyYW5zYWN0aW9uLWhlYWRlci1wYXltZW50L3RyYW5zYWN0aW9uLWhlYWRlci1wYXltZW50LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFxQixpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMxSCxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQUNwRixPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDckUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFDeEUsT0FBTyxFQUFDLGtDQUFrQyxFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFJMUcsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDdEUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDbkYsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDbkYsT0FBTyxFQUFDLHFDQUFxQyxFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFFaEgsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sOENBQThDLENBQUM7QUFDckYsT0FBTyxFQUFDLDhDQUE4QyxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUEwSTVGLE1BQU0sT0FBTyxpQ0FBa0MsU0FBUSx3QkFBd0I7SUFvQjdFLFlBQ1MsdUJBQWdELEVBQ2hE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RTtvQkFDUixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7b0JBQ2hDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDO2lCQUM1QztZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDOzs7WUE3TUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSwrQkFBK0I7Z0JBQ3pDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQStIVDtnQkFDRCxTQUFTLEVBQUU7b0JBQ1QsRUFBQyxPQUFPLEVBQUUsOENBQThDLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxpQ0FBaUMsQ0FBQyxFQUFDO2lCQUM1SDtnQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7O1lBOUlPLHVCQUF1QjtZQU52QixrQkFBa0I7WUFEbEIsZ0JBQWdCO1lBU2hCLHFDQUFxQztZQUhyQyxpQkFBaUI7WUFFakIsdUJBQXVCO1lBWHZCLGlCQUFpQjtZQUtqQixrQ0FBa0M7Ozt3QkF1SnZDLFdBQVcsU0FBQyxxQ0FBcUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIGZvcndhcmRSZWYsIEhvc3RCaW5kaW5nLCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uQmFzZUNvbXBvbmVudH0gZnJvbSAnLi4vLi4vY29yZS9iYXNlL3RyYW5zYWN0aW9uLWJhc2UuY29tcG9uZW50JztcclxuaW1wb3J0IHtJY29ufSBmcm9tICcuLi8uLi8uLi9lbnVtL2ljb24uZW51bSc7XHJcbmltcG9ydCB7SWNvbkNhY2hlU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvblBheW1lbnRDb25uZWN0b3JTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLXBheW1lbnQtY29ubmVjdG9yLnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uRGVwb3NpdFBheW1lbnRJbmZvfSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvdHJhbnNhY3Rpb24tZGVwb3NpdC1wYXltZW50LWluZm8uYm8nO1xyXG5pbXBvcnQge0RlcG9zaXRQYXltZW50Vmlld01vZGVsfSBmcm9tICcuLi8uLi8uLi9tb2RlbC9kZXBvc2l0LXBheW1lbnQtdmlldy1tb2RlbCc7XHJcbmltcG9ydCB7UGF5bWVudFZpZXdtb2RlbH0gZnJvbSAnLi4vLi4vLi4vbW9kZWwvcGF5bWVudC52aWV3bW9kZWwnO1xyXG5pbXBvcnQge0RpY3Rpb25hcnlTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL2RpY3Rpb25hcnkuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25FdmVudFNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tZXZlbnQuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25JbWFnZVNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24taW1hZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TY3JlZW5Db25maWd1cmF0aW9uU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1zY3JlZW4tY29uZmlndXJhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uVHlwZUNhdGVnb3J5fSBmcm9tICcuLi8uLi8uLi9lbnVtL3RyYW5zYWN0aW9uLXR5cGUtY2F0ZWdvcnkuZW51bSc7XHJcbmltcG9ydCB7U0NSRUVOX0NPTkZJR19BREFQVEVSX0NPTVBPTkVOVF9JTlRFUkZBQ0VfTkFNRX0gZnJvbSAnQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMic7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25QYXltZW50U2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1wYXltZW50LnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiY28tdHJhbnNhY3Rpb24taGVhZGVyLXBheW1lbnRcIixcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1wYXltZW50LXdyYXBwZXJcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1wYXltZW50LXdyYXBwZXItY29udGVudFwiIFtjbGFzcy5zaG93LXJlbWFpbmluZ109XCJzaG93UmVtYWluaW5nUGF5bWVudFwiPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1oZWFkZXItYmxvY2tcclxuICAgICAgICAgIFtmaXJzdEJsb2NrVGVtcGxhdGVdPVwiZmlyc3RCbG9ja1wiXHJcbiAgICAgICAgICBbc2Vjb25kQmxvY2tUZW1wbGF0ZV09XCJzZWNvbmRCbG9ja1wiXHJcbiAgICAgICAgICBbdGhpcmRCbG9ja1RlbXBsYXRlXT1cInRoaXJkQmxvY2tcIlxyXG4gICAgICAgICAgW2hpZGRlbkJsb2NrVGVtcGxhdGVdPVwiaGlkZGVuQmxvY2tcIlxyXG4gICAgICAgICAgKGhlYWRlckNsaWNrKT1cInNob3dEaWFsb2cgPSB0cnVlXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1oZWFkZXItYmxvY2s+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWhlYWRlci1ibG9jayAqbmdJZj1cInNob3dSZW1haW5pbmdQYXltZW50XCJcclxuICAgICAgICAgIFtmaXJzdEJsb2NrVGVtcGxhdGVdPVwiZmlyc3RCbG9ja1Jlc3RcIlxyXG4gICAgICAgICAgKGhlYWRlckNsaWNrKT1cInNob3dEaWFsb2cgPSB0cnVlXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1oZWFkZXItYmxvY2s+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8bmctdGVtcGxhdGUgI2ZpcnN0QmxvY2s+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1oZWFkZXItYmxvY2stcm93XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1pY29uXCIgW3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3RdPVwiY2ZnTmFtZXMuSGVhZGVyUGF5bWVudEF2YXRhckhlYWRlclwiIHNjcmVlbkNvbmZpZ05hdGl2ZUVsZW1lbnQ+XHJcbiAgICAgICAgICA8Y28taWNvbiBjbGFzcz1cImhlYWRlci1vcmRlci1pY29uXCJcclxuICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzaG93RGlhbG9nID0gdHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkNyZWRpdENhcmRSZWd1bGFyKVwiPlxyXG4gICAgICAgICAgPC9jby1pY29uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItZG93bnBheW1lbnQtYW1vdW50LXdyYXBwZXJcIiBbc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdF09XCJjZmdOYW1lcy5IZWFkZXJQYXltZW50QW1vdW50SGVhZGVyXCIgc2NyZWVuQ29uZmlnTmF0aXZlRWxlbWVudD5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItZGVwb3NpdC1sYWJlbCBjby10cmFuc2FjdGlvbi1sYWJlbFwiIFt0ZXh0Q29udGVudF09XCInRE9XTlBBWU1FTlRfQU1PVU5UJyB8IGxvY2FsaXplXCI+PC9kaXY+XHJcbiAgICAgICAgICA8Y28tdHJhbnNhY3Rpb24taGVhZGVyLWRlcG9zaXQtYW1vdW50IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLWRlcG9zaXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdF09XCJjZmdOYW1lcy5IZWFkZXJQYXltZW50QW1vdW50SGVhZGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RyYW5zYWN0aW9uXT1cInRyYW5zYWN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RlZmF1bHRFZGl0TW9kZV09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzaG93TGFiZWxdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgPjwvY28tdHJhbnNhY3Rpb24taGVhZGVyLWRlcG9zaXQtYW1vdW50PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8bmctdGVtcGxhdGUgI2ZpcnN0QmxvY2tSZXN0PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLWJsb2NrLXJvd1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1oZWFkZXItaWNvblwiIFtzY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0XT1cImNmZ05hbWVzLkhlYWRlclBheW1lbnRBdmF0YXJIZWFkZXJcIiBzY3JlZW5Db25maWdOYXRpdmVFbGVtZW50PlxyXG4gICAgICAgICAgPGNvLWljb24gY2xhc3M9XCJoZWFkZXItb3JkZXItaWNvblwiXHJcbiAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2hvd1BheW1lbnREaWFsb2cgPSB0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuQ3JlZGl0Q2FyZFJlZ3VsYXJDaGVjaylcIj5cclxuICAgICAgICAgIDwvY28taWNvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyLXJlbWFpbmluZy1wYXltZW50LWFtb3VudC13cmFwcGVyXCIgW3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3RdPVwiY2ZnTmFtZXMuSGVhZGVyUGF5bWVudEFtb3VudEhlYWRlclwiIHNjcmVlbkNvbmZpZ05hdGl2ZUVsZW1lbnQ+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyLWRlcG9zaXQtbGFiZWwgY28tdHJhbnNhY3Rpb24tbGFiZWxcIiBbdGV4dENvbnRlbnRdPVwiJ1JFTUFJTklOR19QQVlNRU5UJyB8IGxvY2FsaXplXCI+PC9kaXY+XHJcbiAgICAgICAgICA8Y28tdHJhbnNhY3Rpb24taGVhZGVyLXJlbWFpbmluZy1hbW91bnQgY2xhc3M9XCJ0cmFuc2FjdGlvbi1oZWFkZXItcmVtYWluaW5nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdF09XCJjZmdOYW1lcy5IZWFkZXJQYXltZW50QW1vdW50SGVhZGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHJhbnNhY3Rpb25VdWlkXT1cInRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uSW5mby51dWlkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocmVtYWluaW5nQW1vdW50Q2hhbmdlKT1cInJlbWFpbmluZ1RvUGF5ID0gJGV2ZW50XCJcclxuICAgICAgICAgID48L2NvLXRyYW5zYWN0aW9uLWhlYWRlci1yZW1haW5pbmctYW1vdW50PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8bmctdGVtcGxhdGUgI3NlY29uZEJsb2NrPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLWJsb2NrLXJvd1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItZG93bnBheW1lbnQtcGVyY2VudGFnZS13cmFwcGVyXCIgW3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3RdPVwiY2ZnTmFtZXMuSGVhZGVyUGF5bWVudFBlcmNlbnRhZ2VIZWFkZXJcIiBzY3JlZW5Db25maWdOYXRpdmVFbGVtZW50PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlci1kZXBvc2l0LWxhYmVsIGNvLXRyYW5zYWN0aW9uLWxhYmVsXCIgW3RleHRDb250ZW50XT1cIiclJyB8IGxvY2FsaXplXCI+PC9kaXY+XHJcbiAgICAgICAgICA8Y28tdHJhbnNhY3Rpb24taGVhZGVyLWRlcG9zaXQtcGVyY2VudGFnZSBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1kZXBvc2l0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0XT1cImNmZ05hbWVzLkhlYWRlclBheW1lbnRQZXJjZW50YWdlSGVhZGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0cmFuc2FjdGlvbkluZm9dPVwidHJhbnNhY3Rpb25JbmZvXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkZWZhdWx0RWRpdE1vZGVdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3Nob3dMYWJlbF09XCJmYWxzZVwiXHJcbiAgICAgICAgICA+PC9jby10cmFuc2FjdGlvbi1oZWFkZXItZGVwb3NpdC1wZXJjZW50YWdlPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8bmctdGVtcGxhdGUgI3RoaXJkQmxvY2s+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1oZWFkZXItYmxvY2stcm93XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlci1wYXltZW50LWJ1dHRvbi13cmFwcGVyXCIgKGNsaWNrKT1cIm9wZW5QYXltZW50KCRldmVudClcIiBbc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdF09XCJjZmdOYW1lcy5IZWFkZXJQYXltZW50UGF5bWVudEhlYWRlclwiIHNjcmVlbkNvbmZpZ05hdGl2ZUVsZW1lbnQ+XHJcbiAgICAgICAgICAgIDxjby1pY29uIGNsYXNzPVwiaGVhZGVyLW9yZGVyLWljb25cIiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkNyZWRpdENhcmRSZWd1bGFyQ2hlY2spXCI+XHJcbiAgICAgICAgICAgIDwvY28taWNvbj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzcGFjZXJcIj48L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJwYXltZW50LXBheWVkLXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgPCEtLWRpdiBjbGFzcz1cImhlYWRlci1wYXllZC1sYWJlbCBjby10cmFuc2FjdGlvbi1sYWJlbFwiIFt0ZXh0Q29udGVudF09XCInRE9XTlBBWU1FTlRfRE9ORScgfCBsb2NhbGl6ZVwiPjwvZGl2LS0+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicGF5bWVudC1wYWlkXCIgW2NsYXNzLnN1Y2Nlc3NdPVwicGFpZCA+PSB0b1BheVwiIFt0ZXh0Q29udGVudF09XCIocGFpZCB8IGNvQ3VycmVuY3kpIHx8IDBcIj48L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwhLS1jby10cmFuc2FjdGlvbi1oZWFkZXItcGF5bWVudC1idXR0b24gKm5nSWY9XCJ0cmFuc2FjdGlvbkluZm8udHJhbnNhY3Rpb25LaW5kICE9PSB0cmFuc0tpbmQuUHVyY2hhc2VPcmRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0cmFuc2FjdGlvbkluZm9dPVwidHJhbnNhY3Rpb25JbmZvXCJcclxuICAgICAgICAgID48L2NvLXRyYW5zYWN0aW9uLWhlYWRlci1wYXltZW50LWJ1dHRvbi0tPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8bmctdGVtcGxhdGUgI2hpZGRlbkJsb2NrPlxyXG4gICAgICA8IS0tZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLWJsb2NrLXJvd1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItYnJhbmNoLWxhYmVsIGNvLXRyYW5zYWN0aW9uLWxhYmVsXCIgW3RleHRDb250ZW50XT1cIidCUkFOQ0gnIHwgbG9jYWxpemVcIj48L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYnJhbmNoLWxhYmVsXCIgW3RleHRDb250ZW50XT1cInRyYW5zYWN0aW9uSW5mby5icmFuY2g/LmZhbWlseU5hbWVcIj48L2Rpdj5cclxuICAgICAgPC9kaXYtLT5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8Y28tdHJhbnNhY3Rpb24taGVhZGVyLXBvcHVwICpuZ0lmPVwic2hvd0RpYWxvZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthY3RpdmVDYXRlZ29yeURlc2NyaXB0aW9uXT1cIidQQVlNRU5UX0lORk9STUFUSU9OJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWxhdGlvbl09XCJyZWxhdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0cmFuc2FjdGlvbl09XCJ0cmFuc2FjdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbG9zZUNsaWNrKT1cInNob3dEaWFsb2cgPSBmYWxzZVwiPjwvY28tdHJhbnNhY3Rpb24taGVhZGVyLXBvcHVwPlxyXG48IS0tXHJcbiAgICA8Y28tZGlhbG9nIGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLXBheW1lbnQtZGlhbG9nXCIgW2hlYWRlclRlbXBsYXRlXT1cImhlYWRlclRlbXBsYXRlXCIgKm5nSWY9XCJzaG93RGlhbG9nXCIgKGNsb3NlQ2xpY2spPVwic2hvd0RpYWxvZyA9IGZhbHNlXCI+XHJcbiAgICAgIDxuZy10ZW1wbGF0ZSAjaGVhZGVyVGVtcGxhdGU+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy1oZWFkZXItdGl0bGVcIiBbdGV4dENvbnRlbnRdPVwiJ1BBWU1FTlRfSU5GT1JNQVRJT04nIHwgbG9jYWxpemVcIj48L2Rpdj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24taGVhZGVyLWJsb2NrXHJcbiAgICAgICAgICBbaGVhZGVyQmxvY2tUZW1wbGF0ZV09XCJoZWFkZXJCbG9ja1wiXHJcbiAgICAgICAgICBbZmlyc3RCbG9ja1RlbXBsYXRlXT1cImZpcnN0QmxvY2tcIlxyXG4gICAgICAgICAgW3NlY29uZEJsb2NrVGVtcGxhdGVdPVwic2Vjb25kQmxvY2tcIlxyXG4gICAgICAgID5cclxuICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWhlYWRlci1ibG9jaz5cclxuICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgPGRpdiBjbGFzcz1cInBheW1lbnQtZGlhbG9nLXNlY3Rpb25cIj5cclxuICAgICAgICA8Y28tZGVwb3NpdC1wYXltZW50IFticmFuY2hdPVwidHJhbnNhY3Rpb25JbmZvLmJyYW5jaD8ucmVsYXRpb25OclwiIFt0cmFuc2FjdGlvblV1aWRdPVwidHJhbnNhY3Rpb25JbmZvLnV1aWRcIj48L2NvLWRlcG9zaXQtcGF5bWVudD5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2NvLWRpYWxvZz5cclxuLS0+XHJcbiAgICA8Y28tZGlhbG9nIGNsYXNzPVwicGF5bWVudC1kaWFsb2dcIiBbbW9kYWxdPVwidHJ1ZVwiIFtoZWFkZXJUZW1wbGF0ZV09XCJoZWFkZXJUZW1wbGF0ZVwiICpuZ0lmPVwic2hvd1BheW1lbnREaWFsb2dcIiAoY2xvc2VDbGljayk9XCJzaG93UGF5bWVudERpYWxvZyA9IGZhbHNlXCI+XHJcbiAgICAgIDxuZy10ZW1wbGF0ZSAjaGVhZGVyVGVtcGxhdGU+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy13cmFwcGVyLXBvcHVwLXRpdGxlXCI+XHJcbiAgICAgICAgICA8Y28taWNvbiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkNyZWRpdENhcmRSZWd1bGFyQ2hlY2spXCI+PC9jby1pY29uPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy1oZWFkZXItdGl0bGVcIiBbdGV4dENvbnRlbnRdPVwiJ1BBWU1FTlRfTUVUSE9EJyB8IGxvY2FsaXplXCI+PC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDxjby1wYXltZW50XHJcbiAgICAgICAgW3RyYW5zSWRdPVwidHJhbnNhY3Rpb25JbmZvLmlkXCJcclxuICAgICAgICBbYnJhbmNoXT1cInRyYW5zYWN0aW9uSW5mby5icmFuY2g/LnJlbGF0aW9uTnJcIlxyXG4gICAgICAgIFt0cmFuc2FjdGlvblV1aWRdPVwidHJhbnNhY3Rpb25JbmZvLnV1aWRcIlxyXG4gICAgICAgIFthbW91bnRdPVwic2hvd1JlbWFpbmluZ1BheW1lbnQgPyByZW1haW5pbmdUb1BheSA6IHRvUGF5XCJcclxuICAgICAgICBbcmVtYWluaW5nUGF5bWVudF09XCJzaG93UmVtYWluaW5nUGF5bWVudFwiXHJcbiAgICAgICAgW2N1cnJlbmN5SWRdPVwidHJhbnNhY3Rpb25JbmZvLmN1cnJlbmN5SWRcIlxyXG4gICAgICA+PC9jby1wYXltZW50PlxyXG4gICAgPC9jby1kaWFsb2c+XHJcbiAgYCxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtwcm92aWRlOiBTQ1JFRU5fQ09ORklHX0FEQVBURVJfQ09NUE9ORU5UX0lOVEVSRkFDRV9OQU1FLCB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUcmFuc2FjdGlvbkhlYWRlclBheW1lbnRDb21wb25lbnQpfVxyXG4gIF0sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25IZWFkZXJQYXltZW50Q29tcG9uZW50IGV4dGVuZHMgVHJhbnNhY3Rpb25CYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHB1YmxpYyByZWFkb25seSBpY29uczogdHlwZW9mIEljb24gPSBJY29uO1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby10cmFuc2FjdGlvbi1oZWFkZXItcGF5bWVudFwiKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBwYXltZW50TWV0aG9kczogUGF5bWVudFZpZXdtb2RlbFtdID0gW107XHJcbiAgcHVibGljIGRlcG9zaXRQYXltZW50czogRGVwb3NpdFBheW1lbnRWaWV3TW9kZWxbXSA9IFtdO1xyXG4gIHB1YmxpYyBzaG93RGlhbG9nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHNob3dQYXltZW50RGlhbG9nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHNob3dMb2FkZXJEZXBvc2l0UGF5bWVudHM6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIHB1YmxpYyBwYWlkOiBudW1iZXIgPSAwO1xyXG4gIHB1YmxpYyB0b1BheTogbnVtYmVyID0gMDtcclxuICBwdWJsaWMgcmVtYWluaW5nVG9QYXk6IG51bWJlciA9IDA7XHJcbiAgcHVibGljIHNob3dSZW1haW5pbmdQYXltZW50OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHByaXZhdGUgX3N1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlOiBUcmFuc2FjdGlvbkV2ZW50U2VydmljZSxcclxuICAgIHB1YmxpYyBzZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZSxcclxuICAgIHB1YmxpYyB0cmFuc2FjdGlvblNjcmVlbkNvbmZpZ3VyYXRpb25TZXJ2aWNlOiBUcmFuc2FjdGlvblNjcmVlbkNvbmZpZ3VyYXRpb25TZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGRpY3Rpb25hcnlTZXJ2aWNlOiBEaWN0aW9uYXJ5U2VydmljZSxcclxuICAgIHByb3RlY3RlZCBpbWFnZVNlcnZpY2U6IFRyYW5zYWN0aW9uSW1hZ2VTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByaXZhdGUgX3BheW1lbnRDb25uZWN0b3JTZXJ2aWNlOiBUcmFuc2FjdGlvblBheW1lbnRDb25uZWN0b3JTZXJ2aWNlLFxyXG4gICkge1xyXG4gICAgc3VwZXIodHJhbnNhY3Rpb25FdmVudFNlcnZpY2UsIGljb25DYWNoZVNlcnZpY2UsIHRyYW5zYWN0aW9uU2NyZWVuQ29uZmlndXJhdGlvblNlcnZpY2UsIGltYWdlU2VydmljZSwgZGljdGlvbmFyeVNlcnZpY2UsIHNlcnZpY2UsIGNoYW5nZURldGVjdG9yKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgIHRoaXMuX3N1YnMucHVzaChcclxuICAgICAgICB0aGlzLnRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlLnRyYW5zYWN0aW9uUGF5bWVudERvbmUuc3Vic2NyaWJlKCgpID0+IHRoaXMuX2dldERlcG9zaXRQYXltZW50SW5mbygpKSxcclxuICAgICAgICB0aGlzLnRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlLmFjdGl2ZVJ1YnJpY0NoYW5nZS5zdWJzY3JpYmUoKHJ1YnJpYzogVHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnkpID0+IHtcclxuICAgICAgICAgIHRoaXMuc2hvd1JlbWFpbmluZ1BheW1lbnQgPSBydWJyaWMgPT09IFRyYW5zYWN0aW9uVHlwZUNhdGVnb3J5LlNhbGVzT3JkZXJEZWxpdmVyeU5vdGUgfHwgcnVicmljID09PSBUcmFuc2FjdGlvblR5cGVDYXRlZ29yeS5TYWxlc09yZGVySW52b2ljZTtcclxuICAgICAgICB9KVxyXG4gICAgKVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLl9zdWJzLmZvckVhY2gocyA9PiBzLnVuc3Vic2NyaWJlKCkpO1xyXG4gICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBvcGVuUGF5bWVudChldmVudDogTW91c2VFdmVudCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgaWYgKGF3YWl0IHRoaXMubG9ja1RyYW5zYWN0aW9uKCkpIHtcclxuICAgICAgdGhpcy5zaG93UGF5bWVudERpYWxvZyA9IHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgdHJhbnNhY3Rpb25TZXQoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLl9nZXREZXBvc2l0UGF5bWVudEluZm8oKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2dldERlcG9zaXRQYXltZW50SW5mbygpOiB2b2lkIHtcclxuICAgIHRoaXMuZGVwb3NpdFBheW1lbnRzLmxlbmd0aCA9IDA7XHJcbiAgICBpZiAodGhpcy50cmFuc2FjdGlvbkluZm8gJiYgdGhpcy50cmFuc2FjdGlvbkluZm8uaWQgJiYgdGhpcy50cmFuc2FjdGlvbkluZm8udXVpZCkge1xyXG4gICAgICB0aGlzLl9wYXltZW50Q29ubmVjdG9yU2VydmljZS5nZXREZXBvc2l0UGF5bWVudEluZm8odGhpcy50cmFuc2FjdGlvbkluZm8udXVpZCkudGhlbigoaW5mbzogVHJhbnNhY3Rpb25EZXBvc2l0UGF5bWVudEluZm8pID0+IHtcclxuICAgICAgICBpZiAoaW5mbykge1xyXG4gICAgICAgICAgdGhpcy50b1BheSA9IGluZm8uZGVwb3NpdEFtb3VudDtcclxuICAgICAgICAgIHRoaXMucGFpZCA9IGluZm8uZGVwb3NpdFBheW1lbnRBbW91bnRUb3RhbDtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
227
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24taGVhZGVyLXBheW1lbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvdHJhbnNhY3Rpb24taGVhZGVyL3RyYW5zYWN0aW9uLWhlYWRlci1wYXltZW50L3RyYW5zYWN0aW9uLWhlYWRlci1wYXltZW50LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFxQixpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMxSCxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQUNwRixPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDckUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFDeEUsT0FBTyxFQUFDLGtDQUFrQyxFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFJMUcsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDdEUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDbkYsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDbkYsT0FBTyxFQUFDLHFDQUFxQyxFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFFaEgsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sOENBQThDLENBQUM7QUFDckYsT0FBTyxFQUFDLDhDQUE4QyxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUEySTVGLE1BQU0sT0FBTyxpQ0FBa0MsU0FBUSx3QkFBd0I7SUFvQjdFLFlBQ1MsdUJBQWdELEVBQ2hE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RTtvQkFDUixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7b0JBQ2hDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDO2lCQUM1QztZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDOzs7WUE5TUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSwrQkFBK0I7Z0JBQ3pDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnSVQ7Z0JBQ0QsU0FBUyxFQUFFO29CQUNULEVBQUMsT0FBTyxFQUFFLDhDQUE4QyxFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsaUNBQWlDLENBQUMsRUFBQztpQkFDNUg7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7OztZQS9JTyx1QkFBdUI7WUFOdkIsa0JBQWtCO1lBRGxCLGdCQUFnQjtZQVNoQixxQ0FBcUM7WUFIckMsaUJBQWlCO1lBRWpCLHVCQUF1QjtZQVh2QixpQkFBaUI7WUFLakIsa0NBQWtDOzs7d0JBd0p2QyxXQUFXLFNBQUMscUNBQXFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBmb3J3YXJkUmVmLCBIb3N0QmluZGluZywgT25EZXN0cm95LCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkJhc2VDb21wb25lbnR9IGZyb20gJy4uLy4uL2NvcmUvYmFzZS90cmFuc2FjdGlvbi1iYXNlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7SWNvbn0gZnJvbSAnLi4vLi4vLi4vZW51bS9pY29uLmVudW0nO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25QYXltZW50Q29ubmVjdG9yU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1wYXltZW50LWNvbm5lY3Rvci5zZXJ2aWNlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkRlcG9zaXRQYXltZW50SW5mb30gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3RyYW5zYWN0aW9uLWRlcG9zaXQtcGF5bWVudC1pbmZvLmJvJztcclxuaW1wb3J0IHtEZXBvc2l0UGF5bWVudFZpZXdNb2RlbH0gZnJvbSAnLi4vLi4vLi4vbW9kZWwvZGVwb3NpdC1wYXltZW50LXZpZXctbW9kZWwnO1xyXG5pbXBvcnQge1BheW1lbnRWaWV3bW9kZWx9IGZyb20gJy4uLy4uLy4uL21vZGVsL3BheW1lbnQudmlld21vZGVsJztcclxuaW1wb3J0IHtEaWN0aW9uYXJ5U2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS9kaWN0aW9uYXJ5LnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWV2ZW50LnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uSW1hZ2VTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWltYWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2NyZWVuQ29uZmlndXJhdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tc2NyZWVuLWNvbmZpZ3VyYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvblR5cGVDYXRlZ29yeX0gZnJvbSAnLi4vLi4vLi4vZW51bS90cmFuc2FjdGlvbi10eXBlLWNhdGVnb3J5LmVudW0nO1xyXG5pbXBvcnQge1NDUkVFTl9DT05GSUdfQURBUFRFUl9DT01QT05FTlRfSU5URVJGQUNFX05BTUV9IGZyb20gJ0Bjb2xpam5pdC9jb3JlY29tcG9uZW50c192MTInO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uUGF5bWVudFNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tcGF5bWVudC5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImNvLXRyYW5zYWN0aW9uLWhlYWRlci1wYXltZW50XCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1oZWFkZXItcGF5bWVudC13cmFwcGVyXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1oZWFkZXItcGF5bWVudC13cmFwcGVyLWNvbnRlbnRcIiBbY2xhc3Muc2hvdy1yZW1haW5pbmddPVwic2hvd1JlbWFpbmluZ1BheW1lbnRcIj5cclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24taGVhZGVyLWJsb2NrXHJcbiAgICAgICAgICBbZmlyc3RCbG9ja1RlbXBsYXRlXT1cImZpcnN0QmxvY2tcIlxyXG4gICAgICAgICAgW3NlY29uZEJsb2NrVGVtcGxhdGVdPVwic2Vjb25kQmxvY2tcIlxyXG4gICAgICAgICAgW3RoaXJkQmxvY2tUZW1wbGF0ZV09XCJ0aGlyZEJsb2NrXCJcclxuICAgICAgICAgIFtoaWRkZW5CbG9ja1RlbXBsYXRlXT1cImhpZGRlbkJsb2NrXCJcclxuICAgICAgICAgIChoZWFkZXJDbGljayk9XCJzaG93RGlhbG9nID0gdHJ1ZVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgIDwvY28tdHJhbnNhY3Rpb24taGVhZGVyLWJsb2NrPlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1oZWFkZXItYmxvY2sgKm5nSWY9XCJzaG93UmVtYWluaW5nUGF5bWVudFwiXHJcbiAgICAgICAgICBbZmlyc3RCbG9ja1RlbXBsYXRlXT1cImZpcnN0QmxvY2tSZXN0XCJcclxuICAgICAgICAgIChoZWFkZXJDbGljayk9XCJzaG93RGlhbG9nID0gdHJ1ZVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgIDwvY28tdHJhbnNhY3Rpb24taGVhZGVyLWJsb2NrPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPG5nLXRlbXBsYXRlICNmaXJzdEJsb2NrPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLWJsb2NrLXJvd1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFuc2FjdGlvbi1oZWFkZXItaWNvblwiIFtzY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0XT1cImNmZ05hbWVzLkhlYWRlclBheW1lbnRBdmF0YXJIZWFkZXJcIiBzY3JlZW5Db25maWdOYXRpdmVFbGVtZW50PlxyXG4gICAgICAgICAgPGNvLWljb24gY2xhc3M9XCJoZWFkZXItb3JkZXItaWNvblwiXHJcbiAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2hvd0RpYWxvZyA9IHRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5DcmVkaXRDYXJkUmVndWxhcilcIj5cclxuICAgICAgICAgIDwvY28taWNvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyLWRvd25wYXltZW50LWFtb3VudC13cmFwcGVyXCIgW3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3RdPVwiY2ZnTmFtZXMuSGVhZGVyUGF5bWVudEFtb3VudEhlYWRlclwiIHNjcmVlbkNvbmZpZ05hdGl2ZUVsZW1lbnQ+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyLWRlcG9zaXQtbGFiZWwgY28tdHJhbnNhY3Rpb24tbGFiZWxcIiBbdGV4dENvbnRlbnRdPVwiJ0RPV05QQVlNRU5UX0FNT1VOVCcgfCBsb2NhbGl6ZVwiPjwvZGl2PlxyXG4gICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWhlYWRlci1kZXBvc2l0LWFtb3VudCBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1kZXBvc2l0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3RdPVwiY2ZnTmFtZXMuSGVhZGVyUGF5bWVudEFtb3VudEhlYWRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0cmFuc2FjdGlvbl09XCJ0cmFuc2FjdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkZWZhdWx0RWRpdE1vZGVdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2hvd0xhYmVsXT1cImZhbHNlXCJcclxuICAgICAgICAgID48L2NvLXRyYW5zYWN0aW9uLWhlYWRlci1kZXBvc2l0LWFtb3VudD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgPG5nLXRlbXBsYXRlICNmaXJzdEJsb2NrUmVzdD5cclxuICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1ibG9jay1yb3dcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLWljb25cIiBbc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdF09XCJjZmdOYW1lcy5IZWFkZXJQYXltZW50QXZhdGFySGVhZGVyXCIgc2NyZWVuQ29uZmlnTmF0aXZlRWxlbWVudD5cclxuICAgICAgICAgIDxjby1pY29uIGNsYXNzPVwiaGVhZGVyLW9yZGVyLWljb25cIlxyXG4gICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNob3dQYXltZW50RGlhbG9nID0gdHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkNyZWRpdENhcmRSZWd1bGFyQ2hlY2spXCI+XHJcbiAgICAgICAgICA8L2NvLWljb24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlci1yZW1haW5pbmctcGF5bWVudC1hbW91bnQtd3JhcHBlclwiIFtzY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0XT1cImNmZ05hbWVzLkhlYWRlclBheW1lbnRBbW91bnRIZWFkZXJcIiBzY3JlZW5Db25maWdOYXRpdmVFbGVtZW50PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlci1kZXBvc2l0LWxhYmVsIGNvLXRyYW5zYWN0aW9uLWxhYmVsXCIgW3RleHRDb250ZW50XT1cIidSRU1BSU5JTkdfUEFZTUVOVCcgfCBsb2NhbGl6ZVwiPjwvZGl2PlxyXG4gICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWhlYWRlci1yZW1haW5pbmctYW1vdW50IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLXJlbWFpbmluZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3RdPVwiY2ZnTmFtZXMuSGVhZGVyUGF5bWVudEFtb3VudEhlYWRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RyYW5zYWN0aW9uVXVpZF09XCJ0cmFuc2FjdGlvbi50cmFuc2FjdGlvbkluZm8udXVpZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHJlbWFpbmluZ0Ftb3VudENoYW5nZSk9XCJyZW1haW5pbmdUb1BheSA9ICRldmVudFwiXHJcbiAgICAgICAgICA+PC9jby10cmFuc2FjdGlvbi1oZWFkZXItcmVtYWluaW5nLWFtb3VudD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgPG5nLXRlbXBsYXRlICNzZWNvbmRCbG9jaz5cclxuICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1ibG9jay1yb3dcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyLWRvd25wYXltZW50LXBlcmNlbnRhZ2Utd3JhcHBlclwiIFtzY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0XT1cImNmZ05hbWVzLkhlYWRlclBheW1lbnRQZXJjZW50YWdlSGVhZGVyXCIgc2NyZWVuQ29uZmlnTmF0aXZlRWxlbWVudD5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItZGVwb3NpdC1sYWJlbCBjby10cmFuc2FjdGlvbi1sYWJlbFwiIFt0ZXh0Q29udGVudF09XCInJScgfCBsb2NhbGl6ZVwiPjwvZGl2PlxyXG4gICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWhlYWRlci1kZXBvc2l0LXBlcmNlbnRhZ2UgY2xhc3M9XCJ0cmFuc2FjdGlvbi1oZWFkZXItZGVwb3NpdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdF09XCJjZmdOYW1lcy5IZWFkZXJQYXltZW50UGVyY2VudGFnZUhlYWRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHJhbnNhY3Rpb25JbmZvXT1cInRyYW5zYWN0aW9uSW5mb1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGVmYXVsdEVkaXRNb2RlXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzaG93TGFiZWxdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgPjwvY28tdHJhbnNhY3Rpb24taGVhZGVyLWRlcG9zaXQtcGVyY2VudGFnZT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgPG5nLXRlbXBsYXRlICN0aGlyZEJsb2NrPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLWJsb2NrLXJvd1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItcGF5bWVudC1idXR0b24td3JhcHBlclwiIChjbGljayk9XCJvcGVuUGF5bWVudCgkZXZlbnQpXCIgW3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3RdPVwiY2ZnTmFtZXMuSGVhZGVyUGF5bWVudFBheW1lbnRIZWFkZXJcIiBzY3JlZW5Db25maWdOYXRpdmVFbGVtZW50PlxyXG4gICAgICAgICAgICA8Y28taWNvbiBjbGFzcz1cImhlYWRlci1vcmRlci1pY29uXCIgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5DcmVkaXRDYXJkUmVndWxhckNoZWNrKVwiPlxyXG4gICAgICAgICAgICA8L2NvLWljb24+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic3BhY2VyXCI+PC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicGF5bWVudC1wYXllZC13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgIDwhLS1kaXYgY2xhc3M9XCJoZWFkZXItcGF5ZWQtbGFiZWwgY28tdHJhbnNhY3Rpb24tbGFiZWxcIiBbdGV4dENvbnRlbnRdPVwiJ0RPV05QQVlNRU5UX0RPTkUnIHwgbG9jYWxpemVcIj48L2Rpdi0tPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInBheW1lbnQtcGFpZFwiIFtjbGFzcy5zdWNjZXNzXT1cInBhaWQgPj0gdG9QYXlcIiBbdGV4dENvbnRlbnRdPVwiKHBhaWQgfCBjb0N1cnJlbmN5KSB8fCAwXCI+PC9zcGFuPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8IS0tY28tdHJhbnNhY3Rpb24taGVhZGVyLXBheW1lbnQtYnV0dG9uICpuZ0lmPVwidHJhbnNhY3Rpb25JbmZvLnRyYW5zYWN0aW9uS2luZCAhPT0gdHJhbnNLaW5kLlB1cmNoYXNlT3JkZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHJhbnNhY3Rpb25JbmZvXT1cInRyYW5zYWN0aW9uSW5mb1wiXHJcbiAgICAgICAgICA+PC9jby10cmFuc2FjdGlvbi1oZWFkZXItcGF5bWVudC1idXR0b24tLT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgPG5nLXRlbXBsYXRlICNoaWRkZW5CbG9jaz5cclxuICAgICAgPCEtLWRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1ibG9jay1yb3dcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyLWJyYW5jaC1sYWJlbCBjby10cmFuc2FjdGlvbi1sYWJlbFwiIFt0ZXh0Q29udGVudF09XCInQlJBTkNIJyB8IGxvY2FsaXplXCI+PC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImJyYW5jaC1sYWJlbFwiIFt0ZXh0Q29udGVudF09XCJ0cmFuc2FjdGlvbkluZm8uYnJhbmNoPy5mYW1pbHlOYW1lXCI+PC9kaXY+XHJcbiAgICAgIDwvZGl2LS0+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgPGNvLXRyYW5zYWN0aW9uLWhlYWRlci1wb3B1cCAqbmdJZj1cInNob3dEaWFsb2dcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYWN0aXZlQ2F0ZWdvcnlEZXNjcmlwdGlvbl09XCInUEFZTUVOVF9JTkZPUk1BVElPTidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVsYXRpb25dPVwicmVsYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHJhbnNhY3Rpb25dPVwidHJhbnNhY3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xvc2VDbGljayk9XCJzaG93RGlhbG9nID0gZmFsc2VcIj48L2NvLXRyYW5zYWN0aW9uLWhlYWRlci1wb3B1cD5cclxuPCEtLVxyXG4gICAgPGNvLWRpYWxvZyBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1wYXltZW50LWRpYWxvZ1wiIFtoZWFkZXJUZW1wbGF0ZV09XCJoZWFkZXJUZW1wbGF0ZVwiICpuZ0lmPVwic2hvd0RpYWxvZ1wiIChjbG9zZUNsaWNrKT1cInNob3dEaWFsb2cgPSBmYWxzZVwiPlxyXG4gICAgICA8bmctdGVtcGxhdGUgI2hlYWRlclRlbXBsYXRlPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjby1kaWFsb2ctaGVhZGVyLXRpdGxlXCIgW3RleHRDb250ZW50XT1cIidQQVlNRU5UX0lORk9STUFUSU9OJyB8IGxvY2FsaXplXCI+PC9kaXY+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWhlYWRlci1ibG9ja1xyXG4gICAgICAgICAgW2hlYWRlckJsb2NrVGVtcGxhdGVdPVwiaGVhZGVyQmxvY2tcIlxyXG4gICAgICAgICAgW2ZpcnN0QmxvY2tUZW1wbGF0ZV09XCJmaXJzdEJsb2NrXCJcclxuICAgICAgICAgIFtzZWNvbmRCbG9ja1RlbXBsYXRlXT1cInNlY29uZEJsb2NrXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPC9jby10cmFuc2FjdGlvbi1oZWFkZXItYmxvY2s+XHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJwYXltZW50LWRpYWxvZy1zZWN0aW9uXCI+XHJcbiAgICAgICAgPGNvLWRlcG9zaXQtcGF5bWVudCBbYnJhbmNoXT1cInRyYW5zYWN0aW9uSW5mby5icmFuY2g/LnJlbGF0aW9uTnJcIiBbdHJhbnNhY3Rpb25VdWlkXT1cInRyYW5zYWN0aW9uSW5mby51dWlkXCI+PC9jby1kZXBvc2l0LXBheW1lbnQ+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9jby1kaWFsb2c+XHJcbi0tPlxyXG4gICAgPGNvLWRpYWxvZyBjbGFzcz1cInBheW1lbnQtZGlhbG9nXCIgW21vZGFsXT1cInRydWVcIiBbaGVhZGVyVGVtcGxhdGVdPVwiaGVhZGVyVGVtcGxhdGVcIiAqbmdJZj1cInNob3dQYXltZW50RGlhbG9nXCIgKGNsb3NlQ2xpY2spPVwic2hvd1BheW1lbnREaWFsb2cgPSBmYWxzZVwiPlxyXG4gICAgICA8bmctdGVtcGxhdGUgI2hlYWRlclRlbXBsYXRlPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjby1kaWFsb2ctd3JhcHBlci1wb3B1cC10aXRsZVwiPlxyXG4gICAgICAgICAgPGNvLWljb24gW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5DcmVkaXRDYXJkUmVndWxhckNoZWNrKVwiPjwvY28taWNvbj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjby1kaWFsb2ctaGVhZGVyLXRpdGxlXCIgW3RleHRDb250ZW50XT1cIidQQVlNRU5UX01FVEhPRCcgfCBsb2NhbGl6ZVwiPjwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICA8Y28tcGF5bWVudFxyXG4gICAgICAgIFt0cmFuc0lkXT1cInRyYW5zYWN0aW9uSW5mby5pZFwiXHJcbiAgICAgICAgW2JyYW5jaF09XCJ0cmFuc2FjdGlvbkluZm8uYnJhbmNoPy5yZWxhdGlvbk5yXCJcclxuICAgICAgICBbdHJhbnNhY3Rpb25VdWlkXT1cInRyYW5zYWN0aW9uSW5mby51dWlkXCJcclxuICAgICAgICBbYW1vdW50XT1cInNob3dSZW1haW5pbmdQYXltZW50ID8gcmVtYWluaW5nVG9QYXkgOiB0b1BheVwiXHJcbiAgICAgICAgW3JlbWFpbmluZ1BheW1lbnRdPVwic2hvd1JlbWFpbmluZ1BheW1lbnRcIlxyXG4gICAgICAgIFtjdXJyZW5jeUlkXT1cInRyYW5zYWN0aW9uSW5mby5jdXJyZW5jeUlkXCJcclxuICAgICAgICBbZG9Ob3RGZXRjaEFtb3VudFRvUGF5Rm9yUmVtYWluaW5nXT1cInRydWVcIlxyXG4gICAgICA+PC9jby1wYXltZW50PlxyXG4gICAgPC9jby1kaWFsb2c+XHJcbiAgYCxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtwcm92aWRlOiBTQ1JFRU5fQ09ORklHX0FEQVBURVJfQ09NUE9ORU5UX0lOVEVSRkFDRV9OQU1FLCB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUcmFuc2FjdGlvbkhlYWRlclBheW1lbnRDb21wb25lbnQpfVxyXG4gIF0sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25IZWFkZXJQYXltZW50Q29tcG9uZW50IGV4dGVuZHMgVHJhbnNhY3Rpb25CYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHB1YmxpYyByZWFkb25seSBpY29uczogdHlwZW9mIEljb24gPSBJY29uO1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby10cmFuc2FjdGlvbi1oZWFkZXItcGF5bWVudFwiKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBwYXltZW50TWV0aG9kczogUGF5bWVudFZpZXdtb2RlbFtdID0gW107XHJcbiAgcHVibGljIGRlcG9zaXRQYXltZW50czogRGVwb3NpdFBheW1lbnRWaWV3TW9kZWxbXSA9IFtdO1xyXG4gIHB1YmxpYyBzaG93RGlhbG9nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHNob3dQYXltZW50RGlhbG9nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHNob3dMb2FkZXJEZXBvc2l0UGF5bWVudHM6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIHB1YmxpYyBwYWlkOiBudW1iZXIgPSAwO1xyXG4gIHB1YmxpYyB0b1BheTogbnVtYmVyID0gMDtcclxuICBwdWJsaWMgcmVtYWluaW5nVG9QYXk6IG51bWJlciA9IDA7XHJcbiAgcHVibGljIHNob3dSZW1haW5pbmdQYXltZW50OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHByaXZhdGUgX3N1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlOiBUcmFuc2FjdGlvbkV2ZW50U2VydmljZSxcclxuICAgIHB1YmxpYyBzZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZSxcclxuICAgIHB1YmxpYyB0cmFuc2FjdGlvblNjcmVlbkNvbmZpZ3VyYXRpb25TZXJ2aWNlOiBUcmFuc2FjdGlvblNjcmVlbkNvbmZpZ3VyYXRpb25TZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGRpY3Rpb25hcnlTZXJ2aWNlOiBEaWN0aW9uYXJ5U2VydmljZSxcclxuICAgIHByb3RlY3RlZCBpbWFnZVNlcnZpY2U6IFRyYW5zYWN0aW9uSW1hZ2VTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByaXZhdGUgX3BheW1lbnRDb25uZWN0b3JTZXJ2aWNlOiBUcmFuc2FjdGlvblBheW1lbnRDb25uZWN0b3JTZXJ2aWNlLFxyXG4gICkge1xyXG4gICAgc3VwZXIodHJhbnNhY3Rpb25FdmVudFNlcnZpY2UsIGljb25DYWNoZVNlcnZpY2UsIHRyYW5zYWN0aW9uU2NyZWVuQ29uZmlndXJhdGlvblNlcnZpY2UsIGltYWdlU2VydmljZSwgZGljdGlvbmFyeVNlcnZpY2UsIHNlcnZpY2UsIGNoYW5nZURldGVjdG9yKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgIHRoaXMuX3N1YnMucHVzaChcclxuICAgICAgICB0aGlzLnRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlLnRyYW5zYWN0aW9uUGF5bWVudERvbmUuc3Vic2NyaWJlKCgpID0+IHRoaXMuX2dldERlcG9zaXRQYXltZW50SW5mbygpKSxcclxuICAgICAgICB0aGlzLnRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlLmFjdGl2ZVJ1YnJpY0NoYW5nZS5zdWJzY3JpYmUoKHJ1YnJpYzogVHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnkpID0+IHtcclxuICAgICAgICAgIHRoaXMuc2hvd1JlbWFpbmluZ1BheW1lbnQgPSBydWJyaWMgPT09IFRyYW5zYWN0aW9uVHlwZUNhdGVnb3J5LlNhbGVzT3JkZXJEZWxpdmVyeU5vdGUgfHwgcnVicmljID09PSBUcmFuc2FjdGlvblR5cGVDYXRlZ29yeS5TYWxlc09yZGVySW52b2ljZTtcclxuICAgICAgICB9KVxyXG4gICAgKVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLl9zdWJzLmZvckVhY2gocyA9PiBzLnVuc3Vic2NyaWJlKCkpO1xyXG4gICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBvcGVuUGF5bWVudChldmVudDogTW91c2VFdmVudCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgaWYgKGF3YWl0IHRoaXMubG9ja1RyYW5zYWN0aW9uKCkpIHtcclxuICAgICAgdGhpcy5zaG93UGF5bWVudERpYWxvZyA9IHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgdHJhbnNhY3Rpb25TZXQoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLl9nZXREZXBvc2l0UGF5bWVudEluZm8oKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2dldERlcG9zaXRQYXltZW50SW5mbygpOiB2b2lkIHtcclxuICAgIHRoaXMuZGVwb3NpdFBheW1lbnRzLmxlbmd0aCA9IDA7XHJcbiAgICBpZiAodGhpcy50cmFuc2FjdGlvbkluZm8gJiYgdGhpcy50cmFuc2FjdGlvbkluZm8uaWQgJiYgdGhpcy50cmFuc2FjdGlvbkluZm8udXVpZCkge1xyXG4gICAgICB0aGlzLl9wYXltZW50Q29ubmVjdG9yU2VydmljZS5nZXREZXBvc2l0UGF5bWVudEluZm8odGhpcy50cmFuc2FjdGlvbkluZm8udXVpZCkudGhlbigoaW5mbzogVHJhbnNhY3Rpb25EZXBvc2l0UGF5bWVudEluZm8pID0+IHtcclxuICAgICAgICBpZiAoaW5mbykge1xyXG4gICAgICAgICAgdGhpcy50b1BheSA9IGluZm8uZGVwb3NpdEFtb3VudDtcclxuICAgICAgICAgIHRoaXMucGFpZCA9IGluZm8uZGVwb3NpdFBheW1lbnRBbW91bnRUb3RhbDtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
@@ -47,6 +47,7 @@ export class TransactionServiceOverviewComponent extends TransactionBaseComponen
47
47
  this.priorityDomainColl = yield this.transactionService.getPriority("NL");
48
48
  this.causeCodeColl = yield this.transactionService.getCauseCodes();
49
49
  this.entryTypeColl = yield this.transactionService.getEntryTypes("NL");
50
+ this.serviceMessageModel = this.transactionServiceInfo.reportMessage;
50
51
  this.priorityModel = this.priorityDomainColl.find(p => p.codeAsNumber === this.transactionServiceInfo.priority);
51
52
  this.causeCodeModel = this.causeCodeColl.find(c => c.causeCode === this.transactionServiceInfo.causeCode);
52
53
  this.entryTypeModel = this.entryTypeColl.find(e => e.code === this.transactionServiceInfo.entryType);
@@ -78,31 +79,48 @@ export class TransactionServiceOverviewComponent extends TransactionBaseComponen
78
79
  this.openActivities.getActivities();
79
80
  }
80
81
  setPriority(priority) {
81
- if (priority) {
82
- this.priorityModel = this.priorityDomainColl.find(p => p.code === priority.code);
83
- this.transactionServiceInfo.priority = this.priorityModel.codeAsNumber;
84
- }
85
- else {
86
- this.priorityModel = null;
87
- }
82
+ return __awaiter(this, void 0, void 0, function* () {
83
+ if (priority) {
84
+ this.priorityModel = this.priorityDomainColl.find(p => p.code === priority.code);
85
+ this.transactionServiceInfo.priority = this.priorityModel.codeAsNumber;
86
+ }
87
+ else {
88
+ this.priorityModel = null;
89
+ }
90
+ yield this.transactionService.updateServiceHeaderPriority(this.transactionServiceInfo.priority, true);
91
+ });
88
92
  }
89
93
  setCauseCode(causeCode) {
90
- if (causeCode) {
91
- this.causeCodeModel = this.causeCodeColl.find(c => c.causeCode === causeCode.causeCode);
92
- this.transactionServiceInfo.causeCode = this.causeCodeModel.causeCode;
93
- }
94
- else {
95
- this.causeCodeModel = null;
96
- }
94
+ return __awaiter(this, void 0, void 0, function* () {
95
+ if (causeCode) {
96
+ this.causeCodeModel = this.causeCodeColl.find(c => c.causeCode === causeCode.causeCode);
97
+ this.transactionServiceInfo.causeCode = this.causeCodeModel.causeCode;
98
+ }
99
+ else {
100
+ this.causeCodeModel = null;
101
+ }
102
+ yield this.transactionService.updateServiceHeaderCauseCode(this.transactionServiceInfo.causeCode, true);
103
+ });
97
104
  }
98
105
  setEntryType(entryType) {
99
- if (entryType) {
100
- this.entryTypeModel = this.entryTypeColl.find(e => e.code === entryType.code);
101
- this.transactionServiceInfo.entryType = this.entryTypeModel.code;
102
- }
103
- else {
104
- this.entryTypeModel = null;
105
- }
106
+ return __awaiter(this, void 0, void 0, function* () {
107
+ if (entryType) {
108
+ this.entryTypeModel = this.entryTypeColl.find(e => e.code === entryType.code);
109
+ this.transactionServiceInfo.entryType = this.entryTypeModel.code;
110
+ }
111
+ else {
112
+ this.entryTypeModel = null;
113
+ }
114
+ yield this.transactionService.updateServiceHeaderEntryType(this.transactionServiceInfo.entryType, true);
115
+ });
116
+ }
117
+ serviceReportChange() {
118
+ return __awaiter(this, void 0, void 0, function* () {
119
+ if (this.transactionServiceInfo.reportMessage !== this.serviceMessageModel) {
120
+ this.transactionServiceInfo.reportMessage = this.serviceMessageModel;
121
+ }
122
+ yield this.transactionService.updateServiceHeaderReportMessage(this.transactionServiceInfo.reportMessage, true);
123
+ });
106
124
  }
107
125
  upsertDocument(doc) {
108
126
  return __awaiter(this, void 0, void 0, function* () {
@@ -152,7 +170,7 @@ TransactionServiceOverviewComponent.decorators = [
152
170
  <div class="message-and-task-wrapper">
153
171
  <div class="service-message-and-image-wrapper">
154
172
  <div class="service-message-wrapper">
155
- <co-input-textarea [label]="'SERVICE_REPORT'| localize" [(model)]="transactionServiceInfo.reportMessage">
173
+ <co-input-textarea [label]="'SERVICE_REPORT'| localize" [(model)]="serviceMessageModel" (blur)="serviceReportChange()">
156
174
  </co-input-textarea>
157
175
  <div class="service-message-extra-wrapper">
158
176
  <co-list-of-values [label]="'PRIORITY'| localize" displayField="description" [model]="priorityModel"
@@ -199,4 +217,4 @@ TransactionServiceOverviewComponent.propDecorators = {
199
217
  openActivities: [{ type: ViewChild, args: [ComponentActivityListComponent,] }],
200
218
  showClass: [{ type: HostBinding, args: ["class.co-transaction-service-overview",] }]
201
219
  };
202
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tc2VydmljZS1vdmVydmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC90cmFuc2FjdGlvbi1zZXJ2aWNlLW92ZXJ2aWV3L3RyYW5zYWN0aW9uLXNlcnZpY2Utb3ZlcnZpZXcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxXQUFXLEVBRUgsU0FBUyxFQUNqQixpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFHakYsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRTFDLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUMzRCxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUNoRixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNsRSxPQUFPLEVBQUMscUNBQXFDLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUM3RyxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUNoRixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUVyRSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0saURBQWlELENBQUM7QUFDM0UsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxtREFBbUQsQ0FBQztBQUNoRixPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sbURBQW1E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Q0FBaUM7Z0JBQzNDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaUNUO2dCQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2FBQ3RDOzs7WUF0RE8sdUJBQXVCO1lBQ3ZCLGdCQUFnQjtZQUNoQixxQ0FBcUM7WUFDckMsdUJBQXVCO1lBQ3ZCLGlCQUFpQjtZQUNqQixrQkFBa0I7WUFRbEIsMEJBQTBCO1lBMUJoQyxpQkFBaUI7WUFZWCxhQUFhOzs7NkJBNkRsQixTQUFTLFNBQUMsOEJBQThCO3dCQUV4QyxXQUFXLFNBQUMsdUNBQXVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgSG9zdEJpbmRpbmcsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCwgVmlld0NoaWxkLFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25CYXNlQ29tcG9uZW50fSBmcm9tICcuLi9jb3JlL2Jhc2UvdHJhbnNhY3Rpb24tYmFzZS5jb21wb25lbnQnO1xyXG5pbXBvcnQge0NvRG9tYWluVmFsdWV9IGZyb20gXCJAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9jby1kb21haW4tdmFsdWUuYm9cIjtcclxuaW1wb3J0IHtDYXVzZUNvZGV9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvY2F1c2UtY29kZS5ib1wiO1xyXG5pbXBvcnQge0ljb259IGZyb20gXCIuLi8uLi9lbnVtL2ljb24uZW51bVwiO1xyXG5pbXBvcnQge0NvRG9jdW1lbnR9IGZyb20gXCJAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9jby1kb2N1bWVudFwiO1xyXG5pbXBvcnQge0RpYWxvZ1NlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL2RpYWxvZy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25FdmVudFNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWV2ZW50LnNlcnZpY2VcIjtcclxuaW1wb3J0IHtJY29uQ2FjaGVTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNjcmVlbkNvbmZpZ3VyYXRpb25TZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1zY3JlZW4tY29uZmlndXJhdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25JbWFnZVNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWltYWdlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtEaWN0aW9uYXJ5U2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2UvZGljdGlvbmFyeS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VmFsaWRhdGlvblJlc3VsdH0gZnJvbSBcIkBjb2xpam5pdC9pb25lY29ubmVjdG9yL2J1aWxkL21vZGVsL3ZhbGlkYXRpb24tcmVzdWx0XCI7XHJcbmltcG9ydCB7QXJyYXlVdGlsc30gZnJvbSBcIkBjb2xpam5pdC9pb25lY29ubmVjdG9yL2J1aWxkL3V0aWxzL2FycmF5LXV0aWxzXCI7XHJcbmltcG9ydCB7U29ydFV0aWxzfSBmcm9tIFwiQGNvbGlqbml0L2lvbmVjb25uZWN0b3IvYnVpbGQvdXRpbHMvc29ydC11dGlsc1wiO1xyXG5pbXBvcnQge1NvcnREaXJlY3Rpb259IGZyb20gXCJAY29saWpuaXQvaW9uZWNvbm5lY3Rvci9idWlsZC9lbnVtL3NvcnQtZGlyZWN0aW9uXCI7XHJcbmltcG9ydCB7U29ydFR5cGV9IGZyb20gXCJAY29saWpuaXQvaW9uZWNvbm5lY3Rvci9idWlsZC9lbnVtL3NvcnQtdHlwZS5lbnVtXCI7XHJcbmltcG9ydCB7QWN0aXZpdHl9IGZyb20gXCJAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9hY3Rpdml0eS5ib1wiO1xyXG5pbXBvcnQge1RhYmxlTmFtZX0gZnJvbSBcIkBjb2xpam5pdC9tYWluYXBpL2J1aWxkL2VudW0vdGFibGUtbmFtZS5lbnVtXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25SZWxhdGlvblNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLXJlbGF0aW9uLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtXb3JrZmxvd0NhdGVnb3J5VHlwZX0gZnJvbSBcIkBjb2xpam5pdC9tYWluYXBpL2J1aWxkL2VudW0vd29ya2Zsb3ctY2F0ZWdvcnkuZW51bVwiO1xyXG5pbXBvcnQge0NvbXBvbmVudEFjdGl2aXR5TGlzdENvbXBvbmVudH0gZnJvbSBcIkBjb2xpam5pdC9zaGFyZWRjb21wb25lbnRzXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJjby10cmFuc2FjdGlvbi1zZXJ2aWNlLW92ZXJ2aWV3XCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxkaXYgY2xhc3M9XCJzZXJ2aWNlLW92ZXJ2aWV3LXdyYXBwZXJcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1lc3NhZ2UtYW5kLXRhc2std3JhcHBlclwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzZXJ2aWNlLW1lc3NhZ2UtYW5kLWltYWdlLXdyYXBwZXJcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZXJ2aWNlLW1lc3NhZ2Utd3JhcHBlclwiPlxyXG4gICAgICAgICAgICA8Y28taW5wdXQtdGV4dGFyZWEgW2xhYmVsXT1cIidTRVJWSUNFX1JFUE9SVCd8IGxvY2FsaXplXCIgWyhtb2RlbCldPVwidHJhbnNhY3Rpb25TZXJ2aWNlSW5mby5yZXBvcnRNZXNzYWdlXCI+XHJcbiAgICAgICAgICAgIDwvY28taW5wdXQtdGV4dGFyZWE+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZXJ2aWNlLW1lc3NhZ2UtZXh0cmEtd3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgIDxjby1saXN0LW9mLXZhbHVlcyBbbGFiZWxdPVwiJ1BSSU9SSVRZJ3wgbG9jYWxpemVcIiBkaXNwbGF5RmllbGQ9XCJkZXNjcmlwdGlvblwiIFttb2RlbF09XCJwcmlvcml0eU1vZGVsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbGxlY3Rpb25dPVwicHJpb3JpdHlEb21haW5Db2xsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cInNldFByaW9yaXR5KCRldmVudClcIj48L2NvLWxpc3Qtb2YtdmFsdWVzPlxyXG4gICAgICAgICAgICAgIDxjby1saXN0LW9mLXZhbHVlcyBbbGFiZWxdPVwiJ0NBVVNFX0NPREUnIHwgbG9jYWxpemVcIiBkaXNwbGF5RmllbGQ9XCJkZXNjcmlwdGlvblwiIFttb2RlbF09XCJjYXVzZUNvZGVNb2RlbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xsZWN0aW9uXT1cImNhdXNlQ29kZUNvbGxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwic2V0Q2F1c2VDb2RlKCRldmVudClcIj48L2NvLWxpc3Qtb2YtdmFsdWVzPlxyXG4gICAgICAgICAgICAgIDxjby1saXN0LW9mLXZhbHVlcyBbbGFiZWxdPVwiJ0VOVFJZX1RZUEUnIHwgbG9jYWxpemVcIiBkaXNwbGF5RmllbGQ9XCJkZXNjcmlwdGlvblwiIFttb2RlbF09XCJlbnRyeVR5cGVNb2RlbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xsZWN0aW9uXT1cImVudHJ5VHlwZUNvbGxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwic2V0RW50cnlUeXBlKCRldmVudClcIj48L2NvLWxpc3Qtb2YtdmFsdWVzPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGNvLWZpbGVzLXVwbG9hZCAoZG9jdW1lbnRDaGFuZ2VFdmVudCk9XCJ1cHNlcnREb2N1bWVudCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgKGRvY3VtZW50RGVsZXRlZCk9XCJkZWxldGVEb2N1bWVudCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidBRERfSU1BR0VTJyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RvY3VtZW50c109XCJkb2N1bWVudHNcIj48L2NvLWZpbGVzLXVwbG9hZD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8Y28tYWN0aXZpdHktbGlzdCBbYWN0aXZpdGllc109XCJhY3Rpdml0aWVzXCI+PC9jby1hY3Rpdml0eS1saXN0PlxyXG4gICAgICAgIDxjby1jb21wb25lbnQtYWN0aXZpdHktbGlzdCAjb3BlbkFjdGl2aXRpZXMgW3Nob3dBY3Rpdml0eUhlYWRlcl09XCJzaG93QWN0aXZpdHlIZWFkZXJcIiBbdGFibGVdPVwiVGFibGVOYW1lLlRyYW5zYWN0aW9uc1wiIFtrZXldPVwidHJhbnNhY3Rpb25JbmZvLmlkLnRvU3RyaW5nKClcIiAocmVmcmVzaFJlcXVlc3RlZCk9XCJmaW5pc2hlZEFjdGl2aXRpZXNSZWZyZXNoUmVxdWVzdGVkKClcIj5cclxuICAgICAgICA8L2NvLWNvbXBvbmVudC1hY3Rpdml0eS1saXN0PlxyXG4gICAgICAgIDxjby10YXNrLWNyZWF0b3IgW3RhYmxlXT1cIlRhYmxlTmFtZS5UcmFuc2FjdGlvbnNcIiBbcmVtYXJrQW5kV29ya0tleV09XCJ0cmFuc2FjdGlvbkluZm8uaWQudG9TdHJpbmcoKVwiIFt0YXNrS2V5XT1cInRyYW5zYWN0aW9uSW5mby50cmFuc2FjdGlvbk5yLnRvU3RyaW5nKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2F1dGhvcl09XCJ0cmFuc2FjdGlvblNlcnZpY2UubG9nZ2VkSW5Vc2VyXCIgW2JyYW5jaE5vXT1cInRyYW5zYWN0aW9uSW5mby5icmFuY2gucmVsYXRpb25Oci50b1N0cmluZygpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFt3b3JrZmxvd0NhdGVnb3J5VHlwZV09XCJXb3JrZmxvd0NhdGVnb3J5VHlwZS5TZXJ2aWNlT3JkZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgKGFjdGl2aXR5Q3JlYXRlZCk9XCJmdWxsQWN0aXZpdGllc1JlZnJlc2hSZXF1ZXN0ZWQoKVwiPjwvY28tdGFzay1jcmVhdG9yPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25TZXJ2aWNlT3ZlcnZpZXdDb21wb25lbnQgZXh0ZW5kcyBUcmFuc2FjdGlvbkJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgcHVibGljIHJlYWRvbmx5IFRhYmxlTmFtZSA9IFRhYmxlTmFtZTtcclxuICBwdWJsaWMgcmVhZG9ubHkgV29ya2Zsb3dDYXRlZ29yeVR5cGUgPSBXb3JrZmxvd0NhdGVnb3J5VHlwZTtcclxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgSWNvbiA9IEljb247XHJcblxyXG4gIEBWaWV3Q2hpbGQoQ29tcG9uZW50QWN0aXZpdHlMaXN0Q29tcG9uZW50KVxyXG4gIHB1YmxpYyBvcGVuQWN0aXZpdGllczogQ29tcG9uZW50QWN0aXZpdHlMaXN0Q29tcG9uZW50O1xyXG4gIEBIb3N0QmluZGluZyhcImNsYXNzLmNvLXRyYW5zYWN0aW9uLXNlcnZpY2Utb3ZlcnZpZXdcIilcclxuICBwdWJsaWMgc2hvd0NsYXNzKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcHJpb3JpdHlEb21haW5Db2xsOiBDb0RvbWFpblZhbHVlW10gPSBbXTtcclxuICBwdWJsaWMgY2F1c2VDb2RlQ29sbDogQ2F1c2VDb2RlW10gPSBbXTtcclxuICBwdWJsaWMgZW50cnlUeXBlQ29sbDogQ29Eb21haW5WYWx1ZVtdID0gW107XHJcblxyXG4gIHB1YmxpYyBwcmlvcml0eU1vZGVsOiBDb0RvbWFpblZhbHVlO1xyXG4gIHB1YmxpYyBjYXVzZUNvZGVNb2RlbDogQ2F1c2VDb2RlO1xyXG4gIHB1YmxpYyBlbnRyeVR5cGVNb2RlbDogQ29Eb21haW5WYWx1ZTtcclxuXHJcbiAgcHVibGljIGRvY3VtZW50czogQ29Eb2N1bWVudFtdID0gW107XHJcbiAgcHVibGljIGFjdGl2aXRpZXM6IEFjdGl2aXR5W10gPSBbXTtcclxuXHJcbiAgcHVibGljIHNob3dBY3Rpdml0eUhlYWRlcjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvciAocHVibGljIHRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlOiBUcmFuc2FjdGlvbkV2ZW50U2VydmljZSxcclxuICAgICAgICAgICAgICBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZSxcclxuICAgICAgICAgICAgICBwdWJsaWMgc2NyZWVuQ29uZmlnU2VydmljZTogVHJhbnNhY3Rpb25TY3JlZW5Db25maWd1cmF0aW9uU2VydmljZSxcclxuICAgICAgICAgICAgICBwcm90ZWN0ZWQgaW1hZ2VTZXJ2aWNlOiBUcmFuc2FjdGlvbkltYWdlU2VydmljZSxcclxuICAgICAgICAgICAgICBwcm90ZWN0ZWQgZGljdGlvbmFyeVNlcnZpY2U6IERpY3Rpb25hcnlTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgIHB1YmxpYyB0cmFuc2FjdGlvblNlcnZpY2U6IFRyYW5zYWN0aW9uU2VydmljZSxcclxuICAgICAgICAgICAgICBwcm90ZWN0ZWQgcmVsYXRpb25TZXJ2aWNlOiBUcmFuc2FjdGlvblJlbGF0aW9uU2VydmljZSxcclxuICAgICAgICAgICAgICBwcm90ZWN0ZWQgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgICAgICAgICAgIHByaXZhdGUgX2RpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UpIHtcclxuICAgIHN1cGVyKHRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlLCBpY29uQ2FjaGVTZXJ2aWNlLCBzY3JlZW5Db25maWdTZXJ2aWNlLCBpbWFnZVNlcnZpY2UsIGRpY3Rpb25hcnlTZXJ2aWNlLCB0cmFuc2FjdGlvblNlcnZpY2UsIGNoYW5nZURldGVjdG9yKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBuZ09uSW5pdCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMucHJpb3JpdHlEb21haW5Db2xsID0gYXdhaXQgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0UHJpb3JpdHkoXCJOTFwiKTtcclxuICAgIHRoaXMuY2F1c2VDb2RlQ29sbCA9IGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldENhdXNlQ29kZXMoKTtcclxuICAgIHRoaXMuZW50cnlUeXBlQ29sbCA9IGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldEVudHJ5VHlwZXMoXCJOTFwiKTtcclxuICAgIHRoaXMucHJpb3JpdHlNb2RlbCA9IHRoaXMucHJpb3JpdHlEb21haW5Db2xsLmZpbmQocCA9PiBwLmNvZGVBc051bWJlciA9PT0gdGhpcy50cmFuc2FjdGlvblNlcnZpY2VJbmZvLnByaW9yaXR5KTtcclxuICAgIHRoaXMuY2F1c2VDb2RlTW9kZWwgPSB0aGlzLmNhdXNlQ29kZUNvbGwuZmluZChjID0+IGMuY2F1c2VDb2RlID09PSB0aGlzLnRyYW5zYWN0aW9uU2VydmljZUluZm8uY2F1c2VDb2RlKTtcclxuICAgIHRoaXMuZW50cnlUeXBlTW9kZWwgPSB0aGlzLmVudHJ5VHlwZUNvbGwuZmluZChlID0+IGUuY29kZSA9PT0gdGhpcy50cmFuc2FjdGlvblNlcnZpY2VJbmZvLmVudHJ5VHlwZSk7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5sb2FkRG9jdW1lbnRzT2ZUcmFuc2FjdGlvbih0aGlzLnRyYW5zYWN0aW9uSW5mby5pZC50b1N0cmluZygpKS50aGVuKChmZXRjaGVkRG9jdW1lbnRzOiBDb0RvY3VtZW50W10pID0+IHtcclxuICAgICAgdGhpcy5kb2N1bWVudHMgPSBmZXRjaGVkRG9jdW1lbnRzO1xyXG4gICAgICB0aGlzLmRvY3VtZW50cy5mb3JFYWNoKGFzeW5jIGQgPT5cclxuICAgICAgICBkLmRvY3VtZW50Qm9keSA9IGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmxvYWREb2N1bWVudENvbnRlbnQoZC5kb2N1bWVudElkLCBmYWxzZSlcclxuICAgICAgKTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5nZXRBY3Rpdml0aWVzKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgfVxyXG5cclxuICAvKnB1YmxpYyBzZXQgdHJhbnNhY3Rpb25TZXJ2aWNlSW5mbyh2YWx1ZTogVHJhbnNhY3Rpb25TZXJ2aWNlSW5mbykge1xyXG4gICAgc3VwZXIudHJhbnNhY3Rpb25TZXJ2aWNlSW5mbyA9IHZhbHVlO1xyXG4gICAgaWYgKHRoaXMucHJpb3JpdHlEb21haW5Db2xsLmxlbmd0aCA+IDApIHtcclxuICAgICAgdGhpcy5wcmlvcml0eU1vZGVsID0gdGhpcy5wcmlvcml0eURvbWFpbkNvbGwuZmluZChwID0+IHAuY29kZUFzTnVtYmVyID09PSB2YWx1ZS5wcmlvcml0eSk7XHJcbiAgICB9XHJcbiAgfSovXHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRBY3Rpdml0aWVzKCk6UHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLmFjdGl2aXRpZXMgPSBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRIaXN0b3JpY0FjdGl2aXRpZXModGhpcy50cmFuc2FjdGlvbkluZm8uaWQpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGZpbmlzaGVkQWN0aXZpdGllc1JlZnJlc2hSZXF1ZXN0ZWQoKSA6IHZvaWQge1xyXG4gICAgdGhpcy5nZXRBY3Rpdml0aWVzKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZnVsbEFjdGl2aXRpZXNSZWZyZXNoUmVxdWVzdGVkKCkgOiB2b2lkIHtcclxuICAgIHRoaXMuZ2V0QWN0aXZpdGllcygpO1xyXG4gICAgdGhpcy5vcGVuQWN0aXZpdGllcy5nZXRBY3Rpdml0aWVzKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0UHJpb3JpdHkocHJpb3JpdHk6IENvRG9tYWluVmFsdWUpIDogdm9pZCB7XHJcbiAgICBpZiAocHJpb3JpdHkpIHtcclxuICAgICAgdGhpcy5wcmlvcml0eU1vZGVsID0gdGhpcy5wcmlvcml0eURvbWFpbkNvbGwuZmluZChwID0+IHAuY29kZSA9PT0gcHJpb3JpdHkuY29kZSk7XHJcbiAgICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlSW5mby5wcmlvcml0eSA9IHRoaXMucHJpb3JpdHlNb2RlbC5jb2RlQXNOdW1iZXI7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnByaW9yaXR5TW9kZWwgPSBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldENhdXNlQ29kZShjYXVzZUNvZGU6IENhdXNlQ29kZSkgOiB2b2lkIHtcclxuICAgIGlmIChjYXVzZUNvZGUpIHtcclxuICAgICAgdGhpcy5jYXVzZUNvZGVNb2RlbCA9IHRoaXMuY2F1c2VDb2RlQ29sbC5maW5kKGMgPT4gYy5jYXVzZUNvZGUgPT09IGNhdXNlQ29kZS5jYXVzZUNvZGUpO1xyXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZUluZm8uY2F1c2VDb2RlID0gdGhpcy5jYXVzZUNvZGVNb2RlbC5jYXVzZUNvZGU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmNhdXNlQ29kZU1vZGVsID0gbnVsbDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXRFbnRyeVR5cGUoZW50cnlUeXBlOiBDb0RvbWFpblZhbHVlKSA6IHZvaWQge1xyXG4gICAgaWYgKGVudHJ5VHlwZSkge1xyXG4gICAgICB0aGlzLmVudHJ5VHlwZU1vZGVsID0gdGhpcy5lbnRyeVR5cGVDb2xsLmZpbmQoZSA9PiBlLmNvZGUgPT09IGVudHJ5VHlwZS5jb2RlKTtcclxuICAgICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2VJbmZvLmVudHJ5VHlwZSA9IHRoaXMuZW50cnlUeXBlTW9kZWwuY29kZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZW50cnlUeXBlTW9kZWwgPSBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIHVwc2VydERvY3VtZW50KGRvYzogQ29Eb2N1bWVudCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgY29uc3QgcmVzcG9uc2U6IENvRG9jdW1lbnQgPSBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5tZXJnZURvY3VtZW50T25UcmFuc2FjdGlvbih0aGlzLnRyYW5zYWN0aW9uSW5mby5pZC50b1N0cmluZygpLCBkb2MpO1xyXG4gICAgaWYgKHJlc3BvbnNlKSB7XHJcbiAgICAgIHRoaXMucHV0RG9jdW1lbnRJbkxpc3QoZG9jKTtcclxuICAgICAgYXdhaXQgdGhpcy5fZGlhbG9nU2VydmljZS5zaG93VG9hc3QoXCJEQVRBX1NBVkVEXCIsIHRydWUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGRlbGV0ZURvY3VtZW50KGRvYzogQ29Eb2N1bWVudCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgY29uc3QgcmVzcG9uc2U6IFZhbGlkYXRpb25SZXN1bHQgPSBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5kZWxldGVEb2N1bWVudChkb2MuZG9jdW1lbnRJZCk7XHJcbiAgICBpZiAocmVzcG9uc2UgJiYgcmVzcG9uc2Uuc3VjY2Vzcykge1xyXG4gICAgICB0aGlzLnJlbW92ZURvY3VtZW50RnJvbUxpc3QoZG9jKTtcclxuICAgICAgYXdhaXQgdGhpcy5fZGlhbG9nU2VydmljZS5zaG93VG9hc3QoXCJEQVRBX1NBVkVEXCIsIHRydWUpO1xyXG4gICAgfVxyXG4gIH1cclxuICBwdWJsaWMgcHV0RG9jdW1lbnRJbkxpc3QoZG9jOiBDb0RvY3VtZW50KTogdm9pZCB7XHJcbiAgICBsZXQgZm91bmREb2N1bWVudDogQ29Eb2N1bWVudCA9IHRoaXMuZG9jdW1lbnRzLmZpbmQoZG9jdW1lbnQgPT4gZG9jdW1lbnQuZG9jdW1lbnRJZCA9PT0gZG9jLmRvY3VtZW50SWQpO1xyXG4gICAgaWYgKGZvdW5kRG9jdW1lbnQpIHtcclxuICAgICAgQXJyYXlVdGlscy5SZXBsYWNlRWxlbWVudChkb2MsIGZvdW5kRG9jdW1lbnQsIHRoaXMuZG9jdW1lbnRzKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZG9jdW1lbnRzLnB1c2goZG9jKTtcclxuICAgIH1cclxuICAgIHRoaXMuc29ydERvY3VtZW50TGlzdCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlbW92ZURvY3VtZW50RnJvbUxpc3QoZG9jOiBDb0RvY3VtZW50KTogdm9pZCB7XHJcbiAgICBBcnJheVV0aWxzLlJlbW92ZUVsZW1lbnQoZG9jLCB0aGlzLmRvY3VtZW50cyk7XHJcbiAgICB0aGlzLnNvcnREb2N1bWVudExpc3QoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzb3J0RG9jdW1lbnRMaXN0KCk6IHZvaWQge1xyXG4gICAgU29ydFV0aWxzLlNvcnRPYmplY3RBcnJheSh0aGlzLmRvY3VtZW50cywgW3tcclxuICAgICAgcHJvcGVydHk6IFwiZG9jdW1lbnRJZFwiLFxyXG4gICAgICBkaXJlY3Rpb246IFNvcnREaXJlY3Rpb24uQXNjZW5kaW5nLFxyXG4gICAgICB0eXBlOiBTb3J0VHlwZS5OdW1iZXJcclxuICAgIH1dKTtcclxuICB9XHJcbn1cclxuIl19
220
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tc2VydmljZS1vdmVydmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC90cmFuc2FjdGlvbi1zZXJ2aWNlLW92ZXJ2aWV3L3RyYW5zYWN0aW9uLXNlcnZpY2Utb3ZlcnZpZXcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxXQUFXLEVBRUgsU0FBUyxFQUNqQixpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFHakYsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRTFDLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUMzRCxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUNoRixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNsRSxPQUFPLEVBQUMscUNBQXFDLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUM3RyxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUNoRixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUVyRSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0saURBQWlELENBQUM7QUFDM0UsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxtREFBbUQsQ0FBQztBQUNoRixPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sbURBQW1E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bnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgSG9zdEJpbmRpbmcsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCwgVmlld0NoaWxkLFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25CYXNlQ29tcG9uZW50fSBmcm9tICcuLi9jb3JlL2Jhc2UvdHJhbnNhY3Rpb24tYmFzZS5jb21wb25lbnQnO1xyXG5pbXBvcnQge0NvRG9tYWluVmFsdWV9IGZyb20gXCJAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9jby1kb21haW4tdmFsdWUuYm9cIjtcclxuaW1wb3J0IHtDYXVzZUNvZGV9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvY2F1c2UtY29kZS5ib1wiO1xyXG5pbXBvcnQge0ljb259IGZyb20gXCIuLi8uLi9lbnVtL2ljb24uZW51bVwiO1xyXG5pbXBvcnQge0NvRG9jdW1lbnR9IGZyb20gXCJAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9jby1kb2N1bWVudFwiO1xyXG5pbXBvcnQge0RpYWxvZ1NlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL2RpYWxvZy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25FdmVudFNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWV2ZW50LnNlcnZpY2VcIjtcclxuaW1wb3J0IHtJY29uQ2FjaGVTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNjcmVlbkNvbmZpZ3VyYXRpb25TZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1zY3JlZW4tY29uZmlndXJhdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25JbWFnZVNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWltYWdlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtEaWN0aW9uYXJ5U2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2UvZGljdGlvbmFyeS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VmFsaWRhdGlvblJlc3VsdH0gZnJvbSBcIkBjb2xpam5pdC9pb25lY29ubmVjdG9yL2J1aWxkL21vZGVsL3ZhbGlkYXRpb24tcmVzdWx0XCI7XHJcbmltcG9ydCB7QXJyYXlVdGlsc30gZnJvbSBcIkBjb2xpam5pdC9pb25lY29ubmVjdG9yL2J1aWxkL3V0aWxzL2FycmF5LXV0aWxzXCI7XHJcbmltcG9ydCB7U29ydFV0aWxzfSBmcm9tIFwiQGNvbGlqbml0L2lvbmVjb25uZWN0b3IvYnVpbGQvdXRpbHMvc29ydC11dGlsc1wiO1xyXG5pbXBvcnQge1NvcnREaXJlY3Rpb259IGZyb20gXCJAY29saWpuaXQvaW9uZWNvbm5lY3Rvci9idWlsZC9lbnVtL3NvcnQtZGlyZWN0aW9uXCI7XHJcbmltcG9ydCB7U29ydFR5cGV9IGZyb20gXCJAY29saWpuaXQvaW9uZWNvbm5lY3Rvci9idWlsZC9lbnVtL3NvcnQtdHlwZS5lbnVtXCI7XHJcbmltcG9ydCB7QWN0aXZpdHl9IGZyb20gXCJAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9hY3Rpdml0eS5ib1wiO1xyXG5pbXBvcnQge1RhYmxlTmFtZX0gZnJvbSBcIkBjb2xpam5pdC9tYWluYXBpL2J1aWxkL2VudW0vdGFibGUtbmFtZS5lbnVtXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25SZWxhdGlvblNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLXJlbGF0aW9uLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtXb3JrZmxvd0NhdGVnb3J5VHlwZX0gZnJvbSBcIkBjb2xpam5pdC9tYWluYXBpL2J1aWxkL2VudW0vd29ya2Zsb3ctY2F0ZWdvcnkuZW51bVwiO1xyXG5pbXBvcnQge0NvbXBvbmVudEFjdGl2aXR5TGlzdENvbXBvbmVudH0gZnJvbSBcIkBjb2xpam5pdC9zaGFyZWRjb21wb25lbnRzXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJjby10cmFuc2FjdGlvbi1zZXJ2aWNlLW92ZXJ2aWV3XCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxkaXYgY2xhc3M9XCJzZXJ2aWNlLW92ZXJ2aWV3LXdyYXBwZXJcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1lc3NhZ2UtYW5kLXRhc2std3JhcHBlclwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzZXJ2aWNlLW1lc3NhZ2UtYW5kLWltYWdlLXdyYXBwZXJcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZXJ2aWNlLW1lc3NhZ2Utd3JhcHBlclwiPlxyXG4gICAgICAgICAgICA8Y28taW5wdXQtdGV4dGFyZWEgW2xhYmVsXT1cIidTRVJWSUNFX1JFUE9SVCd8IGxvY2FsaXplXCIgWyhtb2RlbCldPVwic2VydmljZU1lc3NhZ2VNb2RlbFwiIChibHVyKT1cInNlcnZpY2VSZXBvcnRDaGFuZ2UoKVwiPlxyXG4gICAgICAgICAgICA8L2NvLWlucHV0LXRleHRhcmVhPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VydmljZS1tZXNzYWdlLWV4dHJhLXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgICA8Y28tbGlzdC1vZi12YWx1ZXMgW2xhYmVsXT1cIidQUklPUklUWSd8IGxvY2FsaXplXCIgZGlzcGxheUZpZWxkPVwiZGVzY3JpcHRpb25cIiBbbW9kZWxdPVwicHJpb3JpdHlNb2RlbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xsZWN0aW9uXT1cInByaW9yaXR5RG9tYWluQ29sbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJzZXRQcmlvcml0eSgkZXZlbnQpXCI+PC9jby1saXN0LW9mLXZhbHVlcz5cclxuICAgICAgICAgICAgICA8Y28tbGlzdC1vZi12YWx1ZXMgW2xhYmVsXT1cIidDQVVTRV9DT0RFJyB8IGxvY2FsaXplXCIgZGlzcGxheUZpZWxkPVwiZGVzY3JpcHRpb25cIiBbbW9kZWxdPVwiY2F1c2VDb2RlTW9kZWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJjYXVzZUNvZGVDb2xsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cInNldENhdXNlQ29kZSgkZXZlbnQpXCI+PC9jby1saXN0LW9mLXZhbHVlcz5cclxuICAgICAgICAgICAgICA8Y28tbGlzdC1vZi12YWx1ZXMgW2xhYmVsXT1cIidFTlRSWV9UWVBFJyB8IGxvY2FsaXplXCIgZGlzcGxheUZpZWxkPVwiZGVzY3JpcHRpb25cIiBbbW9kZWxdPVwiZW50cnlUeXBlTW9kZWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJlbnRyeVR5cGVDb2xsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cInNldEVudHJ5VHlwZSgkZXZlbnQpXCI+PC9jby1saXN0LW9mLXZhbHVlcz5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxjby1maWxlcy11cGxvYWQgKGRvY3VtZW50Q2hhbmdlRXZlbnQpPVwidXBzZXJ0RG9jdW1lbnQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIChkb2N1bWVudERlbGV0ZWQpPVwiZGVsZXRlRG9jdW1lbnQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInQUREX0lNQUdFUycgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkb2N1bWVudHNdPVwiZG9jdW1lbnRzXCI+PC9jby1maWxlcy11cGxvYWQ+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGNvLWFjdGl2aXR5LWxpc3QgW2FjdGl2aXRpZXNdPVwiYWN0aXZpdGllc1wiPjwvY28tYWN0aXZpdHktbGlzdD5cclxuICAgICAgICA8Y28tY29tcG9uZW50LWFjdGl2aXR5LWxpc3QgI29wZW5BY3Rpdml0aWVzIFtzaG93QWN0aXZpdHlIZWFkZXJdPVwic2hvd0FjdGl2aXR5SGVhZGVyXCIgW3RhYmxlXT1cIlRhYmxlTmFtZS5UcmFuc2FjdGlvbnNcIiBba2V5XT1cInRyYW5zYWN0aW9uSW5mby5pZC50b1N0cmluZygpXCIgKHJlZnJlc2hSZXF1ZXN0ZWQpPVwiZmluaXNoZWRBY3Rpdml0aWVzUmVmcmVzaFJlcXVlc3RlZCgpXCI+XHJcbiAgICAgICAgPC9jby1jb21wb25lbnQtYWN0aXZpdHktbGlzdD5cclxuICAgICAgICA8Y28tdGFzay1jcmVhdG9yIFt0YWJsZV09XCJUYWJsZU5hbWUuVHJhbnNhY3Rpb25zXCIgW3JlbWFya0FuZFdvcmtLZXldPVwidHJhbnNhY3Rpb25JbmZvLmlkLnRvU3RyaW5nKClcIiBbdGFza0tleV09XCJ0cmFuc2FjdGlvbkluZm8udHJhbnNhY3Rpb25Oci50b1N0cmluZygpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFthdXRob3JdPVwidHJhbnNhY3Rpb25TZXJ2aWNlLmxvZ2dlZEluVXNlclwiIFticmFuY2hOb109XCJ0cmFuc2FjdGlvbkluZm8uYnJhbmNoLnJlbGF0aW9uTnIudG9TdHJpbmcoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbd29ya2Zsb3dDYXRlZ29yeVR5cGVdPVwiV29ya2Zsb3dDYXRlZ29yeVR5cGUuU2VydmljZU9yZGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIChhY3Rpdml0eUNyZWF0ZWQpPVwiZnVsbEFjdGl2aXRpZXNSZWZyZXNoUmVxdWVzdGVkKClcIj48L2NvLXRhc2stY3JlYXRvcj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICBgLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uU2VydmljZU92ZXJ2aWV3Q29tcG9uZW50IGV4dGVuZHMgVHJhbnNhY3Rpb25CYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHB1YmxpYyByZWFkb25seSBUYWJsZU5hbWUgPSBUYWJsZU5hbWU7XHJcbiAgcHVibGljIHJlYWRvbmx5IFdvcmtmbG93Q2F0ZWdvcnlUeXBlID0gV29ya2Zsb3dDYXRlZ29yeVR5cGU7XHJcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IEljb24gPSBJY29uO1xyXG5cclxuICBAVmlld0NoaWxkKENvbXBvbmVudEFjdGl2aXR5TGlzdENvbXBvbmVudClcclxuICBwdWJsaWMgb3BlbkFjdGl2aXRpZXM6IENvbXBvbmVudEFjdGl2aXR5TGlzdENvbXBvbmVudDtcclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby10cmFuc2FjdGlvbi1zZXJ2aWNlLW92ZXJ2aWV3XCIpXHJcbiAgcHVibGljIHNob3dDbGFzcygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHByaW9yaXR5RG9tYWluQ29sbDogQ29Eb21haW5WYWx1ZVtdID0gW107XHJcbiAgcHVibGljIGNhdXNlQ29kZUNvbGw6IENhdXNlQ29kZVtdID0gW107XHJcbiAgcHVibGljIGVudHJ5VHlwZUNvbGw6IENvRG9tYWluVmFsdWVbXSA9IFtdO1xyXG5cclxuICBwdWJsaWMgc2VydmljZU1lc3NhZ2VNb2RlbDogc3RyaW5nO1xyXG4gIHB1YmxpYyBwcmlvcml0eU1vZGVsOiBDb0RvbWFpblZhbHVlO1xyXG4gIHB1YmxpYyBjYXVzZUNvZGVNb2RlbDogQ2F1c2VDb2RlO1xyXG4gIHB1YmxpYyBlbnRyeVR5cGVNb2RlbDogQ29Eb21haW5WYWx1ZTtcclxuXHJcbiAgcHVibGljIGRvY3VtZW50czogQ29Eb2N1bWVudFtdID0gW107XHJcbiAgcHVibGljIGFjdGl2aXRpZXM6IEFjdGl2aXR5W10gPSBbXTtcclxuXHJcbiAgcHVibGljIHNob3dBY3Rpdml0eUhlYWRlcjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvciAocHVibGljIHRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlOiBUcmFuc2FjdGlvbkV2ZW50U2VydmljZSxcclxuICAgICAgICAgICAgICBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZSxcclxuICAgICAgICAgICAgICBwdWJsaWMgc2NyZWVuQ29uZmlnU2VydmljZTogVHJhbnNhY3Rpb25TY3JlZW5Db25maWd1cmF0aW9uU2VydmljZSxcclxuICAgICAgICAgICAgICBwcm90ZWN0ZWQgaW1hZ2VTZXJ2aWNlOiBUcmFuc2FjdGlvbkltYWdlU2VydmljZSxcclxuICAgICAgICAgICAgICBwcm90ZWN0ZWQgZGljdGlvbmFyeVNlcnZpY2U6IERpY3Rpb25hcnlTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgIHB1YmxpYyB0cmFuc2FjdGlvblNlcnZpY2U6IFRyYW5zYWN0aW9uU2VydmljZSxcclxuICAgICAgICAgICAgICBwcm90ZWN0ZWQgcmVsYXRpb25TZXJ2aWNlOiBUcmFuc2FjdGlvblJlbGF0aW9uU2VydmljZSxcclxuICAgICAgICAgICAgICBwcm90ZWN0ZWQgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgICAgICAgICAgIHByaXZhdGUgX2RpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UpIHtcclxuICAgIHN1cGVyKHRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlLCBpY29uQ2FjaGVTZXJ2aWNlLCBzY3JlZW5Db25maWdTZXJ2aWNlLCBpbWFnZVNlcnZpY2UsIGRpY3Rpb25hcnlTZXJ2aWNlLCB0cmFuc2FjdGlvblNlcnZpY2UsIGNoYW5nZURldGVjdG9yKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBuZ09uSW5pdCgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMucHJpb3JpdHlEb21haW5Db2xsID0gYXdhaXQgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0UHJpb3JpdHkoXCJOTFwiKTtcclxuICAgIHRoaXMuY2F1c2VDb2RlQ29sbCA9IGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldENhdXNlQ29kZXMoKTtcclxuICAgIHRoaXMuZW50cnlUeXBlQ29sbCA9IGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldEVudHJ5VHlwZXMoXCJOTFwiKTtcclxuICAgIHRoaXMuc2VydmljZU1lc3NhZ2VNb2RlbCA9IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlSW5mby5yZXBvcnRNZXNzYWdlO1xyXG4gICAgdGhpcy5wcmlvcml0eU1vZGVsID0gdGhpcy5wcmlvcml0eURvbWFpbkNvbGwuZmluZChwID0+IHAuY29kZUFzTnVtYmVyID09PSB0aGlzLnRyYW5zYWN0aW9uU2VydmljZUluZm8ucHJpb3JpdHkpO1xyXG4gICAgdGhpcy5jYXVzZUNvZGVNb2RlbCA9IHRoaXMuY2F1c2VDb2RlQ29sbC5maW5kKGMgPT4gYy5jYXVzZUNvZGUgPT09IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlSW5mby5jYXVzZUNvZGUpO1xyXG4gICAgdGhpcy5lbnRyeVR5cGVNb2RlbCA9IHRoaXMuZW50cnlUeXBlQ29sbC5maW5kKGUgPT4gZS5jb2RlID09PSB0aGlzLnRyYW5zYWN0aW9uU2VydmljZUluZm8uZW50cnlUeXBlKTtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmxvYWREb2N1bWVudHNPZlRyYW5zYWN0aW9uKHRoaXMudHJhbnNhY3Rpb25JbmZvLmlkLnRvU3RyaW5nKCkpLnRoZW4oKGZldGNoZWREb2N1bWVudHM6IENvRG9jdW1lbnRbXSkgPT4ge1xyXG4gICAgICB0aGlzLmRvY3VtZW50cyA9IGZldGNoZWREb2N1bWVudHM7XHJcbiAgICAgIHRoaXMuZG9jdW1lbnRzLmZvckVhY2goYXN5bmMgZCA9PlxyXG4gICAgICAgIGQuZG9jdW1lbnRCb2R5ID0gYXdhaXQgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UubG9hZERvY3VtZW50Q29udGVudChkLmRvY3VtZW50SWQsIGZhbHNlKVxyXG4gICAgICApO1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLmdldEFjdGl2aXRpZXMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICB9XHJcblxyXG4gIC8qcHVibGljIHNldCB0cmFuc2FjdGlvblNlcnZpY2VJbmZvKHZhbHVlOiBUcmFuc2FjdGlvblNlcnZpY2VJbmZvKSB7XHJcbiAgICBzdXBlci50cmFuc2FjdGlvblNlcnZpY2VJbmZvID0gdmFsdWU7XHJcbiAgICBpZiAodGhpcy5wcmlvcml0eURvbWFpbkNvbGwubGVuZ3RoID4gMCkge1xyXG4gICAgICB0aGlzLnByaW9yaXR5TW9kZWwgPSB0aGlzLnByaW9yaXR5RG9tYWluQ29sbC5maW5kKHAgPT4gcC5jb2RlQXNOdW1iZXIgPT09IHZhbHVlLnByaW9yaXR5KTtcclxuICAgIH1cclxuICB9Ki9cclxuXHJcbiAgcHVibGljIGFzeW5jIGdldEFjdGl2aXRpZXMoKTpQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMuYWN0aXZpdGllcyA9IGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldEhpc3RvcmljQWN0aXZpdGllcyh0aGlzLnRyYW5zYWN0aW9uSW5mby5pZCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZmluaXNoZWRBY3Rpdml0aWVzUmVmcmVzaFJlcXVlc3RlZCgpIDogdm9pZCB7XHJcbiAgICB0aGlzLmdldEFjdGl2aXRpZXMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBmdWxsQWN0aXZpdGllc1JlZnJlc2hSZXF1ZXN0ZWQoKSA6IHZvaWQge1xyXG4gICAgdGhpcy5nZXRBY3Rpdml0aWVzKCk7XHJcbiAgICB0aGlzLm9wZW5BY3Rpdml0aWVzLmdldEFjdGl2aXRpZXMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBzZXRQcmlvcml0eShwcmlvcml0eTogQ29Eb21haW5WYWx1ZSkgOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmIChwcmlvcml0eSkge1xyXG4gICAgICB0aGlzLnByaW9yaXR5TW9kZWwgPSB0aGlzLnByaW9yaXR5RG9tYWluQ29sbC5maW5kKHAgPT4gcC5jb2RlID09PSBwcmlvcml0eS5jb2RlKTtcclxuICAgICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2VJbmZvLnByaW9yaXR5ID0gdGhpcy5wcmlvcml0eU1vZGVsLmNvZGVBc051bWJlcjtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMucHJpb3JpdHlNb2RlbCA9IG51bGw7XHJcbiAgICB9XHJcbiAgICBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS51cGRhdGVTZXJ2aWNlSGVhZGVyUHJpb3JpdHkodGhpcy50cmFuc2FjdGlvblNlcnZpY2VJbmZvLnByaW9yaXR5LCB0cnVlKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBzZXRDYXVzZUNvZGUoY2F1c2VDb2RlOiBDYXVzZUNvZGUpIDogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBpZiAoY2F1c2VDb2RlKSB7XHJcbiAgICAgIHRoaXMuY2F1c2VDb2RlTW9kZWwgPSB0aGlzLmNhdXNlQ29kZUNvbGwuZmluZChjID0+IGMuY2F1c2VDb2RlID09PSBjYXVzZUNvZGUuY2F1c2VDb2RlKTtcclxuICAgICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2VJbmZvLmNhdXNlQ29kZSA9IHRoaXMuY2F1c2VDb2RlTW9kZWwuY2F1c2VDb2RlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5jYXVzZUNvZGVNb2RlbCA9IG51bGw7XHJcbiAgICB9XHJcbiAgICBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS51cGRhdGVTZXJ2aWNlSGVhZGVyQ2F1c2VDb2RlKHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlSW5mby5jYXVzZUNvZGUsIHRydWUpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIHNldEVudHJ5VHlwZShlbnRyeVR5cGU6IENvRG9tYWluVmFsdWUpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmIChlbnRyeVR5cGUpIHtcclxuICAgICAgdGhpcy5lbnRyeVR5cGVNb2RlbCA9IHRoaXMuZW50cnlUeXBlQ29sbC5maW5kKGUgPT4gZS5jb2RlID09PSBlbnRyeVR5cGUuY29kZSk7XHJcbiAgICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlSW5mby5lbnRyeVR5cGUgPSB0aGlzLmVudHJ5VHlwZU1vZGVsLmNvZGU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmVudHJ5VHlwZU1vZGVsID0gbnVsbDtcclxuICAgIH1cclxuICAgIGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLnVwZGF0ZVNlcnZpY2VIZWFkZXJFbnRyeVR5cGUodGhpcy50cmFuc2FjdGlvblNlcnZpY2VJbmZvLmVudHJ5VHlwZSwgdHJ1ZSk7XHJcbiAgfVxyXG4gIHB1YmxpYyBhc3luYyBzZXJ2aWNlUmVwb3J0Q2hhbmdlKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlSW5mby5yZXBvcnRNZXNzYWdlICE9PSB0aGlzLnNlcnZpY2VNZXNzYWdlTW9kZWwpIHtcclxuICAgICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2VJbmZvLnJlcG9ydE1lc3NhZ2UgPSB0aGlzLnNlcnZpY2VNZXNzYWdlTW9kZWw7XHJcbiAgICB9XHJcbiAgICBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS51cGRhdGVTZXJ2aWNlSGVhZGVyUmVwb3J0TWVzc2FnZSh0aGlzLnRyYW5zYWN0aW9uU2VydmljZUluZm8ucmVwb3J0TWVzc2FnZSwgdHJ1ZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgdXBzZXJ0RG9jdW1lbnQoZG9jOiBDb0RvY3VtZW50KTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBjb25zdCByZXNwb25zZTogQ29Eb2N1bWVudCA9IGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLm1lcmdlRG9jdW1lbnRPblRyYW5zYWN0aW9uKHRoaXMudHJhbnNhY3Rpb25JbmZvLmlkLnRvU3RyaW5nKCksIGRvYyk7XHJcbiAgICBpZiAocmVzcG9uc2UpIHtcclxuICAgICAgdGhpcy5wdXREb2N1bWVudEluTGlzdChkb2MpO1xyXG4gICAgICBhd2FpdCB0aGlzLl9kaWFsb2dTZXJ2aWNlLnNob3dUb2FzdChcIkRBVEFfU0FWRURcIiwgdHJ1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgZGVsZXRlRG9jdW1lbnQoZG9jOiBDb0RvY3VtZW50KTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBjb25zdCByZXNwb25zZTogVmFsaWRhdGlvblJlc3VsdCA9IGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmRlbGV0ZURvY3VtZW50KGRvYy5kb2N1bWVudElkKTtcclxuICAgIGlmIChyZXNwb25zZSAmJiByZXNwb25zZS5zdWNjZXNzKSB7XHJcbiAgICAgIHRoaXMucmVtb3ZlRG9jdW1lbnRGcm9tTGlzdChkb2MpO1xyXG4gICAgICBhd2FpdCB0aGlzLl9kaWFsb2dTZXJ2aWNlLnNob3dUb2FzdChcIkRBVEFfU0FWRURcIiwgdHJ1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHB1YmxpYyBwdXREb2N1bWVudEluTGlzdChkb2M6IENvRG9jdW1lbnQpOiB2b2lkIHtcclxuICAgIGxldCBmb3VuZERvY3VtZW50OiBDb0RvY3VtZW50ID0gdGhpcy5kb2N1bWVudHMuZmluZChkb2N1bWVudCA9PiBkb2N1bWVudC5kb2N1bWVudElkID09PSBkb2MuZG9jdW1lbnRJZCk7XHJcbiAgICBpZiAoZm91bmREb2N1bWVudCkge1xyXG4gICAgICBBcnJheVV0aWxzLlJlcGxhY2VFbGVtZW50KGRvYywgZm91bmREb2N1bWVudCwgdGhpcy5kb2N1bWVudHMpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5kb2N1bWVudHMucHVzaChkb2MpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zb3J0RG9jdW1lbnRMaXN0KCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVtb3ZlRG9jdW1lbnRGcm9tTGlzdChkb2M6IENvRG9jdW1lbnQpOiB2b2lkIHtcclxuICAgIEFycmF5VXRpbHMuUmVtb3ZlRWxlbWVudChkb2MsIHRoaXMuZG9jdW1lbnRzKTtcclxuICAgIHRoaXMuc29ydERvY3VtZW50TGlzdCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNvcnREb2N1bWVudExpc3QoKTogdm9pZCB7XHJcbiAgICBTb3J0VXRpbHMuU29ydE9iamVjdEFycmF5KHRoaXMuZG9jdW1lbnRzLCBbe1xyXG4gICAgICBwcm9wZXJ0eTogXCJkb2N1bWVudElkXCIsXHJcbiAgICAgIGRpcmVjdGlvbjogU29ydERpcmVjdGlvbi5Bc2NlbmRpbmcsXHJcbiAgICAgIHR5cGU6IFNvcnRUeXBlLk51bWJlclxyXG4gICAgfV0pO1xyXG4gIH1cclxufVxyXG4iXX0=