@colijnit/transaction 256.1.97 → 256.1.98
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.
- package/bundles/colijnit-transaction.umd.js +3 -3
- package/bundles/colijnit-transaction.umd.js.map +1 -1
- package/colijnit-transaction.metadata.json +1 -1
- package/esm2015/lib/component/transaction-header/transaction-header-popup/transaction-header-popup-payment.component.js +2 -2
- package/esm2015/lib/transaction-version.js +3 -3
- package/fesm2015/colijnit-transaction.js +3 -3
- package/fesm2015/colijnit-transaction.js.map +1 -1
- package/package.json +2 -2
|
@@ -360,7 +360,7 @@ TransactionHeaderPopupPaymentComponent.decorators = [
|
|
|
360
360
|
</span>
|
|
361
361
|
</td>
|
|
362
362
|
<td><strong>{{ paymentInfo.invoiceAmount | coCurrency:true }}</strong></td>
|
|
363
|
-
<td [class.paid]="paymentInfo.paidAmount
|
|
363
|
+
<td [class.paid]="paymentInfo.paidAmount !== 0">
|
|
364
364
|
<strong>{{ paymentInfo.paidAmount | coCurrency:true }}</strong>
|
|
365
365
|
</td>
|
|
366
366
|
<td>{{ paymentInfo.settledAmount | coCurrency:true }}</td>
|
|
@@ -449,4 +449,4 @@ TransactionHeaderPopupPaymentComponent.ctorParameters = () => [
|
|
|
449
449
|
TransactionHeaderPopupPaymentComponent.propDecorators = {
|
|
450
450
|
showClass: [{ type: HostBinding, args: ['class.co-transaction-header-popup-payment',] }]
|
|
451
451
|
};
|
|
452
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24taGVhZGVyLXBvcHVwLXBheW1lbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvdHJhbnNhY3Rpb24taGVhZGVyL3RyYW5zYWN0aW9uLWhlYWRlci1wb3B1cC90cmFuc2FjdGlvbi1oZWFkZXItcG9wdXAtcGF5bWVudC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFxQixpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM5RyxPQUFPLEVBQUMsbUNBQW1DLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUc5RixPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQUNuRixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUN4RSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRSxPQUFPLEVBQUMscUNBQXFDLEVBQUMsTUFBTSwyREFBMkQsQ0FBQztBQUNoSCxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUN0RSxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQUNuRixPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUMvRCxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSwrQ0FBK0MsQ0FBQztBQUN6RixPQUFPLEVBQUMsa0NBQWtDLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUMxRyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFDL0UsT0FBTyxFQUFD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QVVqQix3QkFBd0I7WUFDeEIsaUJBQWlCO1lBQ2pCLDBCQUEwQjtZQUMxQixrQ0FBa0M7Ozt3QkE4UHZDLFdBQVcsU0FBQywyQ0FBMkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uSGVhZGVyUG9wdXBCYXNlQ29tcG9uZW50fSBmcm9tICcuL3RyYW5zYWN0aW9uLWhlYWRlci1wb3B1cC1iYXNlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25EZXBvc2l0UGF5bWVudEluZm99IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC90cmFuc2FjdGlvbi1kZXBvc2l0LXBheW1lbnQtaW5mby5ibyc7XHJcbmltcG9ydCB7UGF5bWVudEFuYWx5c2lzfSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvcGF5bWVudC1hbmFseXNpcy5ibyc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25FdmVudFNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tZXZlbnQuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNjcmVlbkNvbmZpZ3VyYXRpb25TZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLXNjcmVlbi1jb25maWd1cmF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQge0RpY3Rpb25hcnlTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL2RpY3Rpb25hcnkuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25JbWFnZVNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24taW1hZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25EaWFsb2dTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWRpYWxvZy5zZXJ2aWNlJztcclxuaW1wb3J0IHtGb3JtTWFzdGVyU2VydmljZX0gZnJvbSAnQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMic7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25SZWxhdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tcmVsYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25QYXltZW50Q29ubmVjdG9yU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1wYXltZW50LWNvbm5lY3Rvci5zZXJ2aWNlJztcclxuaW1wb3J0IHtJbnRlcm5hbFBhcmFtfSBmcm9tIFwiQGNvbGlqbml0L21haW5hcGkvYnVpbGQvZW51bS9pbnRlcm5hbC1wYXJhbS5lbnVtXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25IZWFkZXJTZXJ2aWNlfSBmcm9tICcuLi8uLi9jb3JlL2Jhc2Uvc2VydmljZS90cmFuc2FjdGlvbi1oZWFkZXIuc2VydmljZSc7XHJcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtPYmplY3RDb25maWd1cmF0aW9ufSBmcm9tICdAY29saWpuaXQvaW9uZWNvbm5lY3Rvci9idWlsZC9tb2RlbC9vYmplY3QtY29uZmlndXJhdGlvbic7XHJcbmltcG9ydCB7Q29DdXJyZW5jeVBpcGV9IGZyb20gXCIuLi8uLi8uLi9waXBlL2NvLWN1cnJlbmN5LnBpcGVcIjtcclxuaW1wb3J0IHtPcmRlclBheW1lbnRBbmFseXNpc30gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL29yZGVyLXBheW1lbnQtYW5hbHlzaXMuYm8nO1xyXG5pbXBvcnQge09yZGVyUGF5bWVudEFuYWx5c2lzRmlsdGVyfSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvb3JkZXItcGF5bWVudC1hbmFseXNpcy1maWx0ZXIuYm8nO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uUmVnaXN0ZXJlZFBheW1lbnRJbmZvfSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvdHJhbnNhY3Rpb24tcmVnaXN0ZXJlZC1wYXltZW50LWluZm8uYm8nO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBQYXltZW50Q2F0ZWdvcnkge1xyXG4gIGluZGV4OiBudW1iZXI7XHJcbiAgdGl0bGU6IHN0cmluZztcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjby10cmFuc2FjdGlvbi1oZWFkZXItcG9wdXAtcGF5bWVudCcsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1wb3B1cC1jYXRlZ29yeS13cmFwcGVyIGNvLXNtYWxsLXNjcm9sbGJhclwiPlxyXG4gICAgICAgICAgPGNvLWZvcm0+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1wb3B1cC1zZWN0aW9uXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1wb3B1cC1zZWN0aW9uLWxhYmVsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInNob3dQYXlEb3duTGFiZWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFt0ZXh0Q29udGVudF09XCInVE9fUEFZX0RPV04nIHwgbG9jYWxpemVcIj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLXBvcHVwLXR3by1jb2x1bW4tZ3JpZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWhlYWRlci1kZXBvc2l0LXBlcmNlbnRhZ2VcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3RdPVwiY2ZnTmFtZXMuRGVwb3NpdFBlcmNlbnRhZ2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbG9ja0FuZFNhdmVdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChkZXBvc2l0VXBkYXRlZCk9XCJzaG93T3V0c3RhbmRpbmdBbW91bnRzKClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvY28tdHJhbnNhY3Rpb24taGVhZGVyLWRlcG9zaXQtcGVyY2VudGFnZT5cclxuICAgICAgICAgICAgICAgICAgICAgIDxjby10cmFuc2FjdGlvbi1oZWFkZXItZGVwb3NpdC1hbW91bnQgY2xhc3M9XCJ0cmFuc2FjdGlvbi1saW5lLXRvdGFscy1wcmljZSBwcmljZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0XT1cImNmZ05hbWVzLkRlcG9zaXRBbW91bnRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbG9ja0FuZFNhdmVdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChidXNpbmVzc1J1bGVBcHBsaWVkKT1cInNob3dCdXNpbmVzc1J1bGVJbmZvID0gJGV2ZW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWhlYWRlci1kZXBvc2l0LWFtb3VudD5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLXBvcHVwLXRocmVlLWNvbHVtbi1ncmlkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8Y28tdHJhbnNhY3Rpb24taGVhZGVyLXVzZS1kZXBvc2l0LXJ1bGVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJ0cmFuc2FjdGlvbkluZm8udHJhbnNhY3Rpb25LaW5kICE9PSB0cmFuc0tpbmQuUHVyY2hhc2VPcmRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0XT1cImNmZ05hbWVzLlVzZURlcG9zaXRSdWxlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xvY2tBbmRTYXZlXT1cImZhbHNlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWhlYWRlci11c2UtZGVwb3NpdC1ydWxlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWhlYWRlci1hdXRvLXJlY2FsY3VsYXRlLWRlcG9zaXRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJ0cmFuc2FjdGlvbkluZm8udHJhbnNhY3Rpb25LaW5kICE9PSB0cmFuc0tpbmQuUHVyY2hhc2VPcmRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0XT1cImNmZ05hbWVzLkF1dG9SZWNhbGN1bGF0ZURlcG9zaXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbG9ja0FuZFNhdmVdPVwiZmFsc2VcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvY28tdHJhbnNhY3Rpb24taGVhZGVyLWF1dG8tcmVjYWxjdWxhdGUtZGVwb3NpdD5cclxuICAgICAgICAgICAgICAgICAgICAgIDxjby10cmFuc2FjdGlvbi1oZWFkZXItZGl2aWRlLWV2ZW5seVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInRyYW5zYWN0aW9uSW5mby50cmFuc2FjdGlvbktpbmQgIT09IHRyYW5zS2luZC5QdXJjaGFzZU9yZGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3RdPVwiY2ZnTmFtZXMuRGl2aWRlRXZlbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xvY2tBbmRTYXZlXT1cImZhbHNlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWhlYWRlci1kaXZpZGUtZXZlbmx5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1wb3B1cC1idXNpbmVzcy1ydWxlLWFwcGxpZWRcIiAqbmdJZj1cInNob3dCdXNpbmVzc1J1bGVJbmZvXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvLWljb24gW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5DaXJjbGVFeGNsYW1hdGlvblJlZ3VsYXIpXCI+PC9jby1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCInREVQT1NJVF9CVVNJTkVTU19SVUxFX0FQUExJRUQnIHwgbG9jYWxpemVcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLXBvcHVwLXR3by1jb2x1bW4tZ3JpZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWhlYWRlci1hbW91bnQtdG8tc2V0dGxlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0XT1cImNmZ05hbWVzLkFtb3VudFRvU2V0dGxlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xvY2tBbmRTYXZlXT1cImZhbHNlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWhlYWRlci1hbW91bnQtdG8tc2V0dGxlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1wb3B1cC1hbHJlYWR5LXBhaWRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8Y28taW5wdXQtdGV4dFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3RdPVwiY2ZnTmFtZXMuVG90YWxQYWlkRG93blwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1RPVEFMX1BBSURfRE9XTicgfCBsb2NhbGl6ZVwiIFtmb3JjZVJlYWRvbmx5XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVsXT1cInBhaWREb3duXCIgW2Zvcm1hdFBpcGVdPVwiY3VycmVuY3lQaXBlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxjby1pbnB1dC10ZXh0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdF09XCJjZmdOYW1lcy5TZXR0bGVkU29GYXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidTRVRUTEVEX1NPX0ZBUicgfCBsb2NhbGl6ZVwiIFtmb3JjZVJlYWRvbmx5XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVsXT1cInNldHRsZWRcIiBbZm9ybWF0UGlwZV09XCJjdXJyZW5jeVBpcGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLXBvcHVwLXR3by1jb2x1bW4tZ3JpZFwiICpuZ0lmPVwic2hvd0Nhc2hPbkRlbGl2ZXJ5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FzaC1vbi1kZWxpdmVyeS1yb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8Y28taW5wdXQtdGV4dFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidDQVNIX09OX0RFTElWRVJZJyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmb3JjZVJlYWRvbmx5XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwiY2FzaE9uRGVsaXZlcnlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Zvcm1hdFBpcGVdPVwiY3VycmVuY3lQaXBlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxjby1idXR0b25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2F2ZS1idXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFpc0RpcmVjdFNlbGxFbmFibGVkKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5UcnVja01vdmluZ1JlZ3VsYXIpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJjYXNoT25EZWxpdmVyeU1vZGFsVmlzaWJsZSA9IHRydWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NvLWJ1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0cmFuc2FjdGlvbi1oZWFkZXItcG9wdXAtdHdvLWNvbHVtbi1ncmlkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdF09XCJjZmdOYW1lcy5QYXltZW50QnRuXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBzY3JlZW5Db25maWdOYXRpdmVFbGVtZW50PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWhlYWRlci1wYXltZW50LWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInRyYW5zYWN0aW9uSW5mby50cmFuc2FjdGlvbktpbmQgIT09IHRyYW5zS2luZC5QdXJjaGFzZU9yZGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIignREVMSVZFUllfVE9UQUwnIHwgbG9jYWxpemUpIHwgYXBwZW5kOicgLyAnIHwgYXBwZW5kOignVE9fU0VUVExFJyB8IGxvY2FsaXplOmZhbHNlKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsb2NrQW5kU2F2ZV09XCJmYWxzZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9jby10cmFuc2FjdGlvbi1oZWFkZXItcGF5bWVudC1idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwicGF5bWVudEFuYWx5c2lzXCIgY2xhc3M9XCJ0cmFuc2FjdGlvbi1oZWFkZXItcG9wdXAtc2VjdGlvblwiPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLXBvcHVwLXNlY3Rpb24tbGFiZWxcIiBbdGV4dENvbnRlbnRdPVwiJ1RPX0lOVk9JQ0UnIHwgbG9jYWxpemVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0aWxsLXRvcC1wYXktc3RhdHNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwYXltZW50LWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgW3RleHRDb250ZW50XT1cIidUT19CRV9JTlZPSUNFRCcgfCBsb2NhbGl6ZVwiPjwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFtb3VudFwiPnt7IHBheW1lbnRBbmFseXNpcz8udG90YWxUb0ludm9pY2UgfCBjb0N1cnJlbmN5OnRydWUgfX08L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBheW1lbnQtaXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBbdGV4dENvbnRlbnRdPVwiJ0FMUkVBRFlfSU5WT0lDRUQnIHwgbG9jYWxpemVcIj48L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhbW91bnRcIj57eyBwYXltZW50QW5hbHlzaXM/LnRvdGFsRGVwb3NpdEludm9pY2UgfCBjb0N1cnJlbmN5OnRydWUgfX08L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBheW1lbnQtaXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBbdGV4dENvbnRlbnRdPVwiJ1NUSUxMX1RPX1BBWScgfCBsb2NhbGl6ZVwiPjwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFtb3VudFwiIFtjbGFzcy5vdXRzdGFuZGluZ109XCJwYXltZW50QW5hbHlzaXM/LnRvdGFsVG9QYXkgPiAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+e3sgcGF5bWVudEFuYWx5c2lzPy50b3RhbFRvUGF5IHwgY29DdXJyZW5jeTp0cnVlIH19PC9zdHJvbmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJvcmRlclBheW1lbnRBbmFseXNpcy5sZW5ndGggPiAwXCIgY2xhc3M9XCJwYXltZW50LWluZm9ybWF0aW9uXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxjby1idXR0b25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInNhdmUtYnV0dG9uIHBheW1lbnQtYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInNob3dQYXltZW50QnV0dG9uKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuQ3JlZGl0Q2FyZFJlZ3VsYXIpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib3BlblBheW1lbnQoJGV2ZW50KVwiPlxyXG4gICAgICAgICAgICAgICAgICA8L2NvLWJ1dHRvbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwYXltZW50LWNhdGVnb3JpZXNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwYXltZW50LWNhdGVnb3J5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLnNlbGVjdGVkXT1cImFjdGl2ZUNhdGVnb3J5LmluZGV4ID09PSBjYXRlZ29yeS5pbmRleFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBjYXRlZ29yeSBvZiBwYXltZW50Q2F0ZWdvcmllc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJoYW5kbGVDYXRlZ29yeUNsaWNrKGNhdGVnb3J5KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0aXRsZVwiIFt0ZXh0Q29udGVudF09XCJjYXRlZ29yeS50aXRsZSB8IGxvY2FsaXplXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICA8dGFibGUgKm5nSWY9XCJhY3RpdmVDYXRlZ29yeS5pbmRleCA9PT0gMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHRoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cImxlZnRcIiAqbmdJZj1cInNob3dJbnZvaWNlU2VsZWN0aW9uKClcIiBbdGV4dENvbnRlbnRdPVwiJ1BBWScgfCBsb2NhbGl6ZVwiPjwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwibGVmdFwiIFt0ZXh0Q29udGVudF09XCInREVTQ1JJUFRJT04nIHwgbG9jYWxpemVcIj48L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBbdGV4dENvbnRlbnRdPVwiJ0FNT1VOVDInIHwgbG9jYWxpemVcIj48L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBbdGV4dENvbnRlbnRdPVwiJ1BBSUQnIHwgbG9jYWxpemVcIj48L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBbdGV4dENvbnRlbnRdPVwiJ1NFVFRMRUQnIHwgbG9jYWxpemVcIj48L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBbdGV4dENvbnRlbnRdPVwiJ09VVFNUQU5ESU5HJyB8IGxvY2FsaXplXCI+PC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L3RoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHRyICpuZ0Zvcj1cImxldCBwYXltZW50SW5mbyBvZiBvcmRlclBheW1lbnRBbmFseXNpc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImxlZnRcIiAqbmdJZj1cInNob3dJbnZvaWNlU2VsZWN0aW9uKClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvLWlucHV0LXJhZGlvLWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwicGF5bWVudEluZm8udHJhbnNhY3Rpb25LaW5kID09PSB0cmFuc0tpbmQuU2FsZXNJbnZvaWNlICYmIHBheW1lbnRJbmZvLm91dHN0YW5kaW5nQW1vdW50ICE9PSAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImRlZmF1bHQtd2lkdGhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cInBheW1lbnRJbmZvLmlzU2VsZWN0ZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJoYW5kbGVTZWxlY3RJbnZvaWNlTGluZXMocGF5bWVudEluZm8pXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY28taW5wdXQtcmFkaW8tYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwibGVmdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwicGF5bWVudEluZm8udHJhbnNhY3Rpb25LaW5kID09PSB0cmFuc0tpbmQuU2FsZXNPcmRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RleHRDb250ZW50XT1cIidERVBPU0lUJyB8IGxvY2FsaXplXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJwYXltZW50SW5mby50cmFuc2FjdGlvbktpbmQgPT09IHRyYW5zS2luZC5TYWxlc0ludm9pY2VcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbdGV4dENvbnRlbnRdPVwiJ0lOVk9JQ0UnIHwgbG9jYWxpemVcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+IHt7IHBheW1lbnRJbmZvLnRyYW5zYWN0aW9uTnVtYmVyIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPiB7eyBwYXltZW50SW5mby50cmFuc2FjdGlvbkRhdGUgfCBkYXRlOidkZC1NTS15eXl5JyB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxzdHJvbmc+e3sgcGF5bWVudEluZm8uaW52b2ljZUFtb3VudCB8IGNvQ3VycmVuY3k6dHJ1ZSB9fTwvc3Ryb25nPjwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIFtjbGFzcy5wYWlkXT1cInBheW1lbnRJbmZvLnBhaWRBbW91bnQgPiAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+e3sgcGF5bWVudEluZm8ucGFpZEFtb3VudCB8IGNvQ3VycmVuY3k6dHJ1ZSB9fTwvc3Ryb25nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7IHBheW1lbnRJbmZvLnNldHRsZWRBbW91bnQgfCBjb0N1cnJlbmN5OnRydWUgfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBbY2xhc3Mub3V0c3RhbmRpbmddPVwicGF5bWVudEluZm8ub3V0c3RhbmRpbmdBbW91bnQgIT09IDBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN0cm9uZz57eyBwYXltZW50SW5mby5vdXRzdGFuZGluZ0Ftb3VudCB8IGNvQ3VycmVuY3k6dHJ1ZSB9fTwvc3Ryb25nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cclxuICAgICAgICAgICAgICAgICAgPC90YWJsZT5cclxuXHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJhY3RpdmVDYXRlZ29yeS5pbmRleCA9PT0gMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJyZWdpc3RlcmVkUGF5bWVudEluZm8gJiYgcmVnaXN0ZXJlZFBheW1lbnRJbmZvLnBheW1lbnRzLmxlbmd0aCA9PT0gMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0ZXh0Q29udGVudF09XCInTk9UX0ZPVU5EJyB8IGxvY2FsaXplXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgPHRhYmxlICpuZ0lmPVwicmVnaXN0ZXJlZFBheW1lbnRJbmZvICYmIHJlZ2lzdGVyZWRQYXltZW50SW5mby5wYXltZW50cy5sZW5ndGggPiAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwibGVmdFwiIFt0ZXh0Q29udGVudF09XCInREVTQ1JJUFRJT04nIHwgbG9jYWxpemVcIj48L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggW3RleHRDb250ZW50XT1cIidBTU9VTlQyJyB8IGxvY2FsaXplXCI+PC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIFt0ZXh0Q29udGVudF09XCInREFURScgfCBsb2NhbGl6ZVwiPjwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8dHIgKm5nRm9yPVwibGV0IHBheW1lbnRJbmZvIG9mIHJlZ2lzdGVyZWRQYXltZW50SW5mby5wYXltZW50c1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJsZWZ0XCI+e3sgcGF5bWVudEluZm8ucmVmZXJlbmNlIH19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxzdHJvbmc+e3sgcGF5bWVudEluZm8uYW1vdW50IHwgY29DdXJyZW5jeTp0cnVlIH19PC9zdHJvbmc+PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7IHBheW1lbnRJbmZvLnBheW1lbnREYXRlVGltZSB8IGRhdGU6J2RkLU1NLXl5eXknIH19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvY28tZm9ybT5cclxuXHJcbiAgICAgICAgICA8Y28tY2FzaC1vbi1kZWxpdmVyeS1tb2RhbFxyXG4gICAgICAgICAgICAgICAgICAqbmdJZj1cImNhc2hPbkRlbGl2ZXJ5TW9kYWxWaXNpYmxlXCJcclxuICAgICAgICAgICAgICAgICAgW3RyYW5zYWN0aW9uSW5mb1V1aWRdPVwidHJhbnNhY3Rpb25JbmZvLnV1aWRcIlxyXG4gICAgICAgICAgICAgICAgICAoY2FzaEFtb3VudCk9XCJnZXRDYXNoQW1vdW50KCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAoc2hvd0Nhc2hPbkRlbGl2ZXJ5TW9kYWwpPVwic2hvd0Nhc2hPbkRlbGl2ZXJ5TW9kYWwoJGV2ZW50KVwiPlxyXG4gICAgICAgICAgPC9jby1jYXNoLW9uLWRlbGl2ZXJ5LW1vZGFsPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxjby1kaWFsb2dcclxuICAgICAgICAgICAgICBjbGFzcz1cInBheW1lbnQtZGlhbG9nXCJcclxuICAgICAgICAgICAgICBbbW9kYWxdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgW2hlYWRlclRlbXBsYXRlXT1cImhlYWRlclRlbXBsYXRlXCJcclxuICAgICAgICAgICAgICAqbmdJZj1cInNob3dQYXltZW50RGlhbG9nXCJcclxuICAgICAgICAgICAgICAoY2xvc2VDbGljayk9XCJoYW5kbGVDbG9zZURpYWxvZygpXCI+XHJcbiAgICAgICAgICA8bmctdGVtcGxhdGUgI2hlYWRlclRlbXBsYXRlPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjby1kaWFsb2ctd3JhcHBlci1wb3B1cC10aXRsZVwiPlxyXG4gICAgICAgICAgICAgICAgICA8Y28taWNvbiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkNyZWRpdENhcmRSZWd1bGFyQ2hlY2spXCI+PC9jby1pY29uPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY28tZGlhbG9nLWhlYWRlci10aXRsZVwiIFt0ZXh0Q29udGVudF09XCInUEFZTUVOVF9NRVRIT0QnIHwgbG9jYWxpemVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICA8Y28tcGF5bWVudFxyXG4gICAgICAgICAgICAgICAgICBbdHJhbnNJZF09XCJ0cmFuc2FjdGlvbklkVG9QYXlcIlxyXG4gICAgICAgICAgICAgICAgICBbYnJhbmNoXT1cInRyYW5zYWN0aW9uSW5mby5icmFuY2g/LnJlbGF0aW9uTnJcIlxyXG4gICAgICAgICAgICAgICAgICBbdHJhbnNhY3Rpb25VdWlkXT1cInRyYW5zYWN0aW9uSW5mby51dWlkXCJcclxuICAgICAgICAgICAgICAgICAgW2Ftb3VudF09XCJjaG9zZW5BbW91bnRUb1BheVwiXHJcbiAgICAgICAgICAgICAgICAgIFtyZW1haW5pbmdQYXltZW50XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICBbY3VycmVuY3lJZF09XCJ0cmFuc2FjdGlvbkluZm8uY3VycmVuY3lJZFwiXHJcbiAgICAgICAgICAgICAgICAgIFtkb05vdEZldGNoQW1vdW50VG9QYXlGb3JSZW1haW5pbmddPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgIFtzaG93UGF5bWVudERhdGVdPVwidHJ1ZVwiXHJcbiAgICAgICAgICA+PC9jby1wYXltZW50PlxyXG4gICAgICA8L2NvLWRpYWxvZz5cclxuICBgLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uSGVhZGVyUG9wdXBQYXltZW50Q29tcG9uZW50IGV4dGVuZHMgVHJhbnNhY3Rpb25IZWFkZXJQb3B1cEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jby10cmFuc2FjdGlvbi1oZWFkZXItcG9wdXAtcGF5bWVudCcpXHJcbiAgcHVibGljIHNob3dDbGFzcygpIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGN1cnJlbmN5UGlwZTogdHlwZW9mIENvQ3VycmVuY3lQaXBlID0gQ29DdXJyZW5jeVBpcGU7XHJcbiAgcHVibGljIHBhaWREb3duOiBudW1iZXIgPSAwO1xyXG4gIHB1YmxpYyBzZXR0bGVkOiBudW1iZXIgPSAwO1xyXG4gIHB1YmxpYyBjYXNoT25EZWxpdmVyeTogbnVtYmVyID0gMDtcclxuICBwdWJsaWMgc2hvd0J1c2luZXNzUnVsZUluZm86IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc2hvd1BheURvd25MYWJlbDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBjYXNoT25EZWxpdmVyeU1vZGFsVmlzaWJsZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBzaG93Q2FzaE9uRGVsaXZlcnk6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgc2hvd1BheW1lbnREaWFsb2c6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAvLyBwdWJsaWMgb3V0c3RhbmRpbmdDdXN0b21lckFtb3VudDogT3V0c3RhbmRpbmdBbW91bnRDdXN0b21lcltdID0gW107XHJcbiAgcHVibGljIG9yZGVyUGF5bWVudEFuYWx5c2lzOiBPcmRlclBheW1lbnRBbmFseXNpc1tdID0gW107XHJcbiAgcHVibGljIHBheW1lbnRBbmFseXNpczogUGF5bWVudEFuYWx5c2lzO1xyXG4gIHB1YmxpYyBwYXltZW50Q2F0ZWdvcmllczogUGF5bWVudENhdGVnb3J5W10gPSBbXHJcbiAgICB7aW5kZXg6IDAsIHRpdGxlOiBcIlBBWU1FTlRfQU5BTFlTSVNcIn0sXHJcbiAgICB7aW5kZXg6IDEsIHRpdGxlOiBcIlBBWU1FTlRTX01BREVcIn1cclxuICBdO1xyXG4gIHB1YmxpYyBhY3RpdmVDYXRlZ29yeTogUGF5bWVudENhdGVnb3J5ID0gdGhpcy5wYXltZW50Q2F0ZWdvcmllc1swXTtcclxuICBwdWJsaWMgY2hvc2VuQW1vdW50VG9QYXk6IG51bWJlcjtcclxuICBwdWJsaWMgdHJhbnNhY3Rpb25JZFRvUGF5OiBudW1iZXI7XHJcbiAgcHVibGljIHJlZ2lzdGVyZWRQYXltZW50SW5mbzogVHJhbnNhY3Rpb25SZWdpc3RlcmVkUGF5bWVudEluZm87XHJcblxyXG4gIHByaXZhdGUgX3BheW1lbnRTdWJzOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyB0cmFuc2FjdGlvbkhlYWRlclNlcnZpY2U6IFRyYW5zYWN0aW9uSGVhZGVyU2VydmljZSxcclxuICAgIHB1YmxpYyB0cmFuc2FjdGlvbkV2ZW50U2VydmljZTogVHJhbnNhY3Rpb25FdmVudFNlcnZpY2UsXHJcbiAgICBwdWJsaWMgc2VydmljZTogVHJhbnNhY3Rpb25TZXJ2aWNlLFxyXG4gICAgcHVibGljIGljb25DYWNoZVNlcnZpY2U6IEljb25DYWNoZVNlcnZpY2UsXHJcbiAgICBwdWJsaWMgdHJhbnNhY3Rpb25TY3JlZW5Db25maWd1cmF0aW9uU2VydmljZTogVHJhbnNhY3Rpb25TY3JlZW5Db25maWd1cmF0aW9uU2VydmljZSxcclxuICAgIHByb3RlY3RlZCBkaWN0aW9uYXJ5U2VydmljZTogRGljdGlvbmFyeVNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgaW1hZ2VTZXJ2aWNlOiBUcmFuc2FjdGlvbkltYWdlU2VydmljZSxcclxuICAgIHByb3RlY3RlZCBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcm90ZWN0ZWQgZGlhbG9nU2VydmljZTogVHJhbnNhY3Rpb25EaWFsb2dTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGZvcm1NYXN0ZXJTZXJ2aWNlOiBGb3JtTWFzdGVyU2VydmljZSxcclxuICAgIHByb3RlY3RlZCByZWxhdGlvblNlcnZpY2U6IFRyYW5zYWN0aW9uUmVsYXRpb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfcGF5bWVudENvbm5lY3RvclNlcnZpY2U6IFRyYW5zYWN0aW9uUGF5bWVudENvbm5lY3RvclNlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKHRyYW5zYWN0aW9uSGVhZGVyU2VydmljZSwgdHJhbnNhY3Rpb25FdmVudFNlcnZpY2UsIHNlcnZpY2UsIGljb25DYWNoZVNlcnZpY2UsIHRyYW5zYWN0aW9uU2NyZWVuQ29uZmlndXJhdGlvblNlcnZpY2UsIGRpY3Rpb25hcnlTZXJ2aWNlLCBpbWFnZVNlcnZpY2UsIGNoYW5nZURldGVjdG9yLCBkaWFsb2dTZXJ2aWNlLCBmb3JtTWFzdGVyU2VydmljZSwgcmVsYXRpb25TZXJ2aWNlKTtcclxuICB9XHJcblxyXG4gIGFzeW5jIG5nT25Jbml0KCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgYXdhaXQgc3VwZXIubmdPbkluaXQoKTtcclxuICAgIHRoaXMuX3BheW1lbnRTdWJzLnB1c2goXHJcbiAgICAgIHRoaXMudHJhbnNhY3Rpb25FdmVudFNlcnZpY2UudHJhbnNhY3Rpb25QYXltZW50RG9uZS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuX2dldERlcG9zaXRJbmZvKCk7XHJcbiAgICAgICAgdGhpcy5fZ2V0T3V0c3RhbmRpbmdBbW91bnRzKCk7XHJcbiAgICAgICAgdGhpcy5oYW5kbGVDbG9zZURpYWxvZygpO1xyXG4gICAgICB9KSxcclxuICAgICAgdGhpcy5zY3JlZW5Db25maWdTZXJ2aWNlLmNvbmZpZ1NldC5zdWJzY3JpYmUoKGNvbmZpZ09iamVjdHM6IE9iamVjdENvbmZpZ3VyYXRpb25bXSkgPT4gdGhpcy5fZ2V0T2JqZWN0Q29uZmlndXJhdGlvbihjb25maWdPYmplY3RzKSlcclxuICAgICk7XHJcbiAgICB0aGlzLnNob3dDYXNoT25EZWxpdmVyeSA9IGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldEludGVybmFsUGFyYW1ldGVyKEludGVybmFsUGFyYW0uU2VsbERpcmVjdGx5RnJvbVN1cHBsKTtcclxuICB9XHJcblxyXG4gIGFzeW5jIG5nT25EZXN0cm95KCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy5fcGF5bWVudFN1YnMuZm9yRWFjaChzID0+IHMudW5zdWJzY3JpYmUoKSk7XHJcbiAgICBhd2FpdCBzdXBlci5uZ09uRGVzdHJveSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZUNhdGVnb3J5Q2xpY2soY2F0OiBQYXltZW50Q2F0ZWdvcnkpOiB2b2lkIHtcclxuICAgIHRoaXMuYWN0aXZlQ2F0ZWdvcnkgPSBjYXQ7XHJcblxyXG4gICAgaWYgKHRoaXMuYWN0aXZlQ2F0ZWdvcnkuaW5kZXggPT09IDEpIHtcclxuICAgICAgdGhpcy5fZ2V0UmVnaXN0ZXJlZFBheW1lbnRJbmZvKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgc2hvd091dHN0YW5kaW5nQW1vdW50cygpIHtcclxuICAgIGF3YWl0IHRoaXMuc2VydmljZS5zYXZlVHJhbnNhY3Rpb24oKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzaG93Q2FzaE9uRGVsaXZlcnlNb2RhbCh2YWx1ZTogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5jYXNoT25EZWxpdmVyeU1vZGFsVmlzaWJsZSA9IHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldENhc2hBbW91bnQodmFsdWU6IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5jYXNoT25EZWxpdmVyeSA9IHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNob3dQYXltZW50QnV0dG9uKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMub3JkZXJQYXltZW50QW5hbHlzaXMuc29tZSh0ID0+IHQub3V0c3RhbmRpbmdBbW91bnQgIT09IDApICYmIHRoaXMuY2hvc2VuQW1vdW50VG9QYXkgIT09IDA7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgb3BlblBheW1lbnQoZXZlbnQ6IE1vdXNlRXZlbnQpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25JZFRvUGF5ID0gdGhpcy50cmFuc2FjdGlvbklkVG9QYXkgPz8gdGhpcy50cmFuc2FjdGlvbkluZm8uaWQ7XHJcbiAgICBpZiAodGhpcy5vcmRlclBheW1lbnRBbmFseXNpcy5maWx0ZXIocGF5bWVudCA9PiBwYXltZW50LnRyYW5zYWN0aW9uS2luZCA9PT0gdGhpcy50cmFuc0tpbmQuU2FsZXNJbnZvaWNlICYmIHBheW1lbnQub3V0c3RhbmRpbmdBbW91bnQgIT09IDApLmxlbmd0aCA9PT0gMSkge1xyXG4gICAgICBjb25zdCBsYXN0VHJhbnNhY3Rpb24gPSB0aGlzLm9yZGVyUGF5bWVudEFuYWx5c2lzLmZpbHRlcihwYXltZW50ID0+IHBheW1lbnQudHJhbnNhY3Rpb25LaW5kID09PSB0aGlzLnRyYW5zS2luZC5TYWxlc0ludm9pY2UgJiYgcGF5bWVudC5vdXRzdGFuZGluZ0Ftb3VudCAhPT0gMClbMF07XHJcbiAgICAgIHRoaXMudHJhbnNhY3Rpb25JZFRvUGF5ID0gbGFzdFRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uSWQ7XHJcbiAgICB9XHJcbiAgICBpZiAoYXdhaXQgdGhpcy5sb2NrVHJhbnNhY3Rpb24oKSkge1xyXG4gICAgICB0aGlzLnNob3dQYXltZW50RGlhbG9nID0gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVDbG9zZURpYWxvZygpOiB2b2lkIHtcclxuICAgIHRoaXMuc2hvd1BheW1lbnREaWFsb2cgPSBmYWxzZTtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLnJvbGxiYWNrKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaXNEaXJlY3RTZWxsRW5hYmxlZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uTGluZXMuc29tZShsaW5lID0+IGxpbmUuZGlyZWN0U2VsbCAmJiBsaW5lLmRyb3BTaGlwbWVudCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2hvd0ludm9pY2VTZWxlY3Rpb24oKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5vcmRlclBheW1lbnRBbmFseXNpcy5maWx0ZXIocGF5bWVudCA9PiBwYXltZW50LnRyYW5zYWN0aW9uS2luZCA9PT0gdGhpcy50cmFuc0tpbmQuU2FsZXNJbnZvaWNlICYmIHBheW1lbnQub3V0c3RhbmRpbmdBbW91bnQgIT09IDApLmxlbmd0aCA+IDE7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU2VsZWN0SW52b2ljZUxpbmVzKHBheW1lbnRJbmZvOiBPcmRlclBheW1lbnRBbmFseXNpcyk6IHZvaWQge1xyXG4gICAgdGhpcy5vcmRlclBheW1lbnRBbmFseXNpcy5mb3JFYWNoKGludm9pY2UgPT4gKGludm9pY2UgYXMgYW55KS5pc1NlbGVjdGVkID0gZmFsc2UpO1xyXG4gICAgKHBheW1lbnRJbmZvIGFzIGFueSkuaXNTZWxlY3RlZCA9IHRydWU7XHJcbiAgICB0aGlzLmNob3NlbkFtb3VudFRvUGF5ID0gcGF5bWVudEluZm8ub3V0c3RhbmRpbmdBbW91bnQ7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uSWRUb1BheSA9IHBheW1lbnRJbmZvLnRyYW5zYWN0aW9uSWQ7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgdHJhbnNhY3Rpb25TZXQoKSB7XHJcbiAgICBzdXBlci50cmFuc2FjdGlvblNldCgpO1xyXG4gICAgdGhpcy5fZ2V0RGVwb3NpdEluZm8oKTtcclxuICAgIHRoaXMuX2dldE91dHN0YW5kaW5nQW1vdW50cygpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZ2V0RGVwb3NpdEluZm8oKTogdm9pZCB7XHJcbiAgICB0aGlzLl9wYXltZW50Q29ubmVjdG9yU2VydmljZS5nZXREZXBvc2l0UGF5bWVudEluZm8odGhpcy50cmFuc2FjdGlvbkluZm8udXVpZCkudGhlbigoaW5mbzogVHJhbnNhY3Rpb25EZXBvc2l0UGF5bWVudEluZm8pID0+IHtcclxuICAgICAgaWYgKGluZm8pIHtcclxuICAgICAgICB0aGlzLnBhaWREb3duID0gaW5mby5kZXBvc2l0UGF5bWVudEFtb3VudFRvdGFsO1xyXG4gICAgICAgIHRoaXMuc2V0dGxlZCA9IGluZm8uZGVwb3NpdEFtb3VudFNldHRsZWQ7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhc3luYyBfZ2V0T3V0c3RhbmRpbmdBbW91bnRzKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgLy8ga2VlcGluZyB0aGlzIGZvciBub3csIGNvdWxkIGJlIHRoYXQgd2UgbmVlZCB0byB1c2UgdGhpcyBjYWxsIGFmdGVyIGFsbFxyXG4gICAgLy8gY29uc3Qgb3V0c3RhbmRpbmdBbW91bnRzUmVxdWVzdDogT3V0c3RhbmRpbmdBbW91bnRGaWx0ZXJDdXN0b21lciA9IG5ldyBPdXRzdGFuZGluZ0Ftb3VudEZpbHRlckN1c3RvbWVyKCk7XHJcbiAgICAvLyBvdXRzdGFuZGluZ0Ftb3VudHNSZXF1ZXN0LnRyYW5zYWN0aW9uSWQgPSB0aGlzLnRyYW5zYWN0aW9uSW5mby5pZDtcclxuICAgIC8vIHRoaXMuX3BheW1lbnRDb25uZWN0b3JTZXJ2aWNlLmdldE91dHN0YW5kaW5nQ3VzdG9tZXJBbW91bnRzKG91dHN0YW5kaW5nQW1vdW50c1JlcXVlc3QpLnRoZW4oKHJlc3BvbnNlOiBPdXRzdGFuZGluZ0Ftb3VudEN1c3RvbWVyW10pID0+IHtcclxuICAgIC8vICAgdGhpcy5vdXRzdGFuZGluZ0N1c3RvbWVyQW1vdW50ID0gcmVzcG9uc2U7XHJcbiAgICAvLyB9KTtcclxuXHJcbiAgICBjb25zdCBwYXltZW50QW5hbHlzaXNSZXF1ZXN0OiBPcmRlclBheW1lbnRBbmFseXNpc0ZpbHRlciA9IG5ldyBPcmRlclBheW1lbnRBbmFseXNpc0ZpbHRlcigpO1xyXG4gICAgcGF5bWVudEFuYWx5c2lzUmVxdWVzdC50cmFuc2FjdGlvbklkID0gdGhpcy50cmFuc2FjdGlvbkluZm8uaWQ7XHJcbiAgICBhd2FpdCB0aGlzLl9wYXltZW50Q29ubmVjdG9yU2VydmljZS5nZXRTYWxlc09yZGVyUGF5bWVudEFuYWx5c2lzKHBheW1lbnRBbmFseXNpc1JlcXVlc3QpLnRoZW4oKHJlc3BvbnNlOiBPcmRlclBheW1lbnRBbmFseXNpc1tdKSA9PiB7XHJcbiAgICAgIHRoaXMub3JkZXJQYXltZW50QW5hbHlzaXMgPSByZXNwb25zZTtcclxuICAgICAgdGhpcy5vcmRlclBheW1lbnRBbmFseXNpcyA9IHRoaXMub3JkZXJQYXltZW50QW5hbHlzaXMubWFwKHRyYW5zYWN0aW9uID0+ICh7XHJcbiAgICAgICAgLi4udHJhbnNhY3Rpb24sXHJcbiAgICAgICAgaXNTZWxlY3RlZDogZmFsc2VcclxuICAgICAgfSkpIGFzIHVua25vd24gYXMgT3JkZXJQYXltZW50QW5hbHlzaXNbXTtcclxuICAgIH0pO1xyXG5cclxuICAgIGF3YWl0IHRoaXMuX3BheW1lbnRDb25uZWN0b3JTZXJ2aWNlLmdldFBheW1lbnRBbmFseXNpcyh0aGlzLnRyYW5zYWN0aW9uSW5mby51dWlkKS50aGVuKChyZXNwb25zZTogUGF5bWVudEFuYWx5c2lzKSA9PiB7XHJcbiAgICAgIHRoaXMucGF5bWVudEFuYWx5c2lzID0gcmVzcG9uc2U7XHJcbiAgICAgIHRoaXMuY2hvc2VuQW1vdW50VG9QYXkgPSB0aGlzLnBheW1lbnRBbmFseXNpcy50b3RhbFRvUGF5O1xyXG4gICAgICB0aGlzLl91cGRhdGVDaG9zZW5BbW91bnRUb1BheSgpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFzeW5jIF9nZXRSZWdpc3RlcmVkUGF5bWVudEluZm8oKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBjb25zdCBwYXltZW50SW5mbzogVHJhbnNhY3Rpb25SZWdpc3RlcmVkUGF5bWVudEluZm8gPSBhd2FpdCB0aGlzLl9wYXltZW50Q29ubmVjdG9yU2VydmljZS5nZXRSZWdpc3RlcmVkUGF5bWVudEluZm8odGhpcy50cmFuc2FjdGlvbkluZm8udXVpZCk7XHJcbiAgICBpZiAocGF5bWVudEluZm8pIHtcclxuICAgICAgdGhpcy5yZWdpc3RlcmVkUGF5bWVudEluZm8gPSBwYXltZW50SW5mbztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2dldE9iamVjdENvbmZpZ3VyYXRpb24oY29uZmlnT2JqZWN0czogT2JqZWN0Q29uZmlndXJhdGlvbltdKTogdm9pZCB7XHJcbiAgICBpZiAoY29uZmlnT2JqZWN0cyAmJiBjb25maWdPYmplY3RzLmxlbmd0aCA+IDApIHtcclxuICAgICAgdGhpcy5zaG93UGF5RG93bkxhYmVsID0gdGhpcy5zY3JlZW5Db25maWdTZXJ2aWNlLmdldE9iamVjdENvbmZpZ3VyYXRpb25Gb3IodGhpcy5jZmdOYW1lcy5EZXBvc2l0UGVyY2VudGFnZSkuaW1tZWRpYXRlbHlWaXNpYmxlKCkgfHxcclxuICAgICAgICB0aGlzLnNjcmVlbkNvbmZpZ1NlcnZpY2UuZ2V0T2JqZWN0Q29uZmlndXJhdGlvbkZvcih0aGlzLmNmZ05hbWVzLkRlcG9zaXRBbW91bnQpLmltbWVkaWF0ZWx5VmlzaWJsZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfdXBkYXRlQ2hvc2VuQW1vdW50VG9QYXkoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5vcmRlclBheW1lbnRBbmFseXNpcy5zb21lKHQgPT4gdC5vdXRzdGFuZGluZ0Ftb3VudCAhPT0gMCkgJiZcclxuICAgICAgdGhpcy5vcmRlclBheW1lbnRBbmFseXNpcy5maWx0ZXIocGF5bWVudCA9PiBwYXltZW50LnRyYW5zYWN0aW9uS2luZCA9PT0gdGhpcy50cmFuc0tpbmQuU2FsZXNJbnZvaWNlKS5sZW5ndGggPT09IDApIHtcclxuICAgICAgdGhpcy5jaG9zZW5BbW91bnRUb1BheSA9IHRoaXMucGF5bWVudEFuYWx5c2lzLnRvdGFsRGVwb3NpdDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBEZXBvc2l0IG9ubHlcclxuICAgIGlmICh0aGlzLm9yZGVyUGF5bWVudEFuYWx5c2lzLmZpbHRlcihwYXltZW50ID0+IHBheW1lbnQudHJhbnNhY3Rpb25LaW5kID09PSB0aGlzLnRyYW5zS2luZC5TYWxlc09yZGVyICYmXHJcbiAgICAgIHBheW1lbnQub3V0c3RhbmRpbmdBbW91bnQgIT09IDApLmxlbmd0aCA9PT0gMSkge1xyXG4gICAgICB0aGlzLmNob3NlbkFtb3VudFRvUGF5ID0gdGhpcy5vcmRlclBheW1lbnRBbmFseXNpc1swXS5vdXRzdGFuZGluZ0Ftb3VudDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5vcmRlclBheW1lbnRBbmFseXNpcy5maWx0ZXIocGF5bWVudCA9PiAocGF5bWVudC50cmFuc2FjdGlvbktpbmQgPT09IHRoaXMudHJhbnNLaW5kLlNhbGVzSW52b2ljZSkgJiYgKHBheW1lbnQub3V0c3RhbmRpbmdBbW91bnQgIT09IDApKS5sZW5ndGggPT09IDEpIHtcclxuICAgICAgY29uc3QgcmVtYWluaW5nSW52b2ljZSA9IHRoaXMub3JkZXJQYXltZW50QW5hbHlzaXMuZmlsdGVyKHBheW1lbnQgPT4gKHBheW1lbnQudHJhbnNhY3Rpb25LaW5kID09PSB0aGlzLnRyYW5zS2luZC5TYWxlc0ludm9pY2UpICYmIChwYXltZW50Lm91dHN0YW5kaW5nQW1vdW50ICE9PSAwKSlbMF07XHJcbiAgICAgIHRoaXMuY2hvc2VuQW1vdW50VG9QYXkgPSByZW1haW5pbmdJbnZvaWNlLm91dHN0YW5kaW5nQW1vdW50O1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLm9yZGVyUGF5bWVudEFuYWx5c2lzLmZpbHRlcihwYXltZW50ID0+IChwYXltZW50LnRyYW5zYWN0aW9uS2luZCA9PT0gdGhpcy50cmFuc0tpbmQuU2FsZXNJbnZvaWNlKSAmJiAocGF5bWVudC5vdXRzdGFuZGluZ0Ftb3VudCAhPT0gMCkpLmxlbmd0aCA+IDEpIHtcclxuICAgICAgdGhpcy5jaG9zZW5BbW91bnRUb1BheSA9IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
452
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24taGVhZGVyLXBvcHVwLXBheW1lbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9jb21wb25lbnQvdHJhbnNhY3Rpb24taGVhZGVyL3RyYW5zYWN0aW9uLWhlYWRlci1wb3B1cC90cmFuc2FjdGlvbi1oZWFkZXItcG9wdXAtcGF5bWVudC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFxQixpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM5RyxPQUFPLEVBQUMsbUNBQW1DLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUc5RixPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQUNuRixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUN4RSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRSxPQUFPLEVBQUMscUNBQXFDLEVBQUMsTUFBTSwyREFBMkQsQ0FBQztBQUNoSCxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUN0RSxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQUNuRixPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUMvRCxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSwrQ0FBK0MsQ0FBQztBQUN6RixPQUFPLEVBQUMsa0NBQWtDLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUMxRyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFDL0UsT0FBTyxFQUFD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QVVqQix3QkFBd0I7WUFDeEIsaUJBQWlCO1lBQ2pCLDBCQUEwQjtZQUMxQixrQ0FBa0M7Ozt3QkE4UHZDLFdBQVcsU0FBQywyQ0FBMkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uSGVhZGVyUG9wdXBCYXNlQ29tcG9uZW50fSBmcm9tICcuL3RyYW5zYWN0aW9uLWhlYWRlci1wb3B1cC1iYXNlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25EZXBvc2l0UGF5bWVudEluZm99IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC90cmFuc2FjdGlvbi1kZXBvc2l0LXBheW1lbnQtaW5mby5ibyc7XHJcbmltcG9ydCB7UGF5bWVudEFuYWx5c2lzfSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvcGF5bWVudC1hbmFseXNpcy5ibyc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25FdmVudFNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tZXZlbnQuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNjcmVlbkNvbmZpZ3VyYXRpb25TZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLXNjcmVlbi1jb25maWd1cmF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQge0RpY3Rpb25hcnlTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL2RpY3Rpb25hcnkuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25JbWFnZVNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24taW1hZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25EaWFsb2dTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWRpYWxvZy5zZXJ2aWNlJztcclxuaW1wb3J0IHtGb3JtTWFzdGVyU2VydmljZX0gZnJvbSAnQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMic7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25SZWxhdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tcmVsYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25QYXltZW50Q29ubmVjdG9yU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1wYXltZW50LWNvbm5lY3Rvci5zZXJ2aWNlJztcclxuaW1wb3J0IHtJbnRlcm5hbFBhcmFtfSBmcm9tIFwiQGNvbGlqbml0L21haW5hcGkvYnVpbGQvZW51bS9pbnRlcm5hbC1wYXJhbS5lbnVtXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25IZWFkZXJTZXJ2aWNlfSBmcm9tICcuLi8uLi9jb3JlL2Jhc2Uvc2VydmljZS90cmFuc2FjdGlvbi1oZWFkZXIuc2VydmljZSc7XHJcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtPYmplY3RDb25maWd1cmF0aW9ufSBmcm9tICdAY29saWpuaXQvaW9uZWNvbm5lY3Rvci9idWlsZC9tb2RlbC9vYmplY3QtY29uZmlndXJhdGlvbic7XHJcbmltcG9ydCB7Q29DdXJyZW5jeVBpcGV9IGZyb20gXCIuLi8uLi8uLi9waXBlL2NvLWN1cnJlbmN5LnBpcGVcIjtcclxuaW1wb3J0IHtPcmRlclBheW1lbnRBbmFseXNpc30gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL29yZGVyLXBheW1lbnQtYW5hbHlzaXMuYm8nO1xyXG5pbXBvcnQge09yZGVyUGF5bWVudEFuYWx5c2lzRmlsdGVyfSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvb3JkZXItcGF5bWVudC1hbmFseXNpcy1maWx0ZXIuYm8nO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uUmVnaXN0ZXJlZFBheW1lbnRJbmZvfSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvdHJhbnNhY3Rpb24tcmVnaXN0ZXJlZC1wYXltZW50LWluZm8uYm8nO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBQYXltZW50Q2F0ZWdvcnkge1xyXG4gIGluZGV4OiBudW1iZXI7XHJcbiAgdGl0bGU6IHN0cmluZztcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjby10cmFuc2FjdGlvbi1oZWFkZXItcG9wdXAtcGF5bWVudCcsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1wb3B1cC1jYXRlZ29yeS13cmFwcGVyIGNvLXNtYWxsLXNjcm9sbGJhclwiPlxyXG4gICAgICAgICAgPGNvLWZvcm0+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1wb3B1cC1zZWN0aW9uXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1wb3B1cC1zZWN0aW9uLWxhYmVsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInNob3dQYXlEb3duTGFiZWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFt0ZXh0Q29udGVudF09XCInVE9fUEFZX0RPV04nIHwgbG9jYWxpemVcIj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLXBvcHVwLXR3by1jb2x1bW4tZ3JpZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWhlYWRlci1kZXBvc2l0LXBlcmNlbnRhZ2VcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3RdPVwiY2ZnTmFtZXMuRGVwb3NpdFBlcmNlbnRhZ2VcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbG9ja0FuZFNhdmVdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChkZXBvc2l0VXBkYXRlZCk9XCJzaG93T3V0c3RhbmRpbmdBbW91bnRzKClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvY28tdHJhbnNhY3Rpb24taGVhZGVyLWRlcG9zaXQtcGVyY2VudGFnZT5cclxuICAgICAgICAgICAgICAgICAgICAgIDxjby10cmFuc2FjdGlvbi1oZWFkZXItZGVwb3NpdC1hbW91bnQgY2xhc3M9XCJ0cmFuc2FjdGlvbi1saW5lLXRvdGFscy1wcmljZSBwcmljZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0XT1cImNmZ05hbWVzLkRlcG9zaXRBbW91bnRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbG9ja0FuZFNhdmVdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChidXNpbmVzc1J1bGVBcHBsaWVkKT1cInNob3dCdXNpbmVzc1J1bGVJbmZvID0gJGV2ZW50XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWhlYWRlci1kZXBvc2l0LWFtb3VudD5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLXBvcHVwLXRocmVlLWNvbHVtbi1ncmlkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8Y28tdHJhbnNhY3Rpb24taGVhZGVyLXVzZS1kZXBvc2l0LXJ1bGVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJ0cmFuc2FjdGlvbkluZm8udHJhbnNhY3Rpb25LaW5kICE9PSB0cmFuc0tpbmQuUHVyY2hhc2VPcmRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0XT1cImNmZ05hbWVzLlVzZURlcG9zaXRSdWxlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xvY2tBbmRTYXZlXT1cImZhbHNlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWhlYWRlci11c2UtZGVwb3NpdC1ydWxlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWhlYWRlci1hdXRvLXJlY2FsY3VsYXRlLWRlcG9zaXRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJ0cmFuc2FjdGlvbkluZm8udHJhbnNhY3Rpb25LaW5kICE9PSB0cmFuc0tpbmQuUHVyY2hhc2VPcmRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0XT1cImNmZ05hbWVzLkF1dG9SZWNhbGN1bGF0ZURlcG9zaXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbG9ja0FuZFNhdmVdPVwiZmFsc2VcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvY28tdHJhbnNhY3Rpb24taGVhZGVyLWF1dG8tcmVjYWxjdWxhdGUtZGVwb3NpdD5cclxuICAgICAgICAgICAgICAgICAgICAgIDxjby10cmFuc2FjdGlvbi1oZWFkZXItZGl2aWRlLWV2ZW5seVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInRyYW5zYWN0aW9uSW5mby50cmFuc2FjdGlvbktpbmQgIT09IHRyYW5zS2luZC5QdXJjaGFzZU9yZGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3RdPVwiY2ZnTmFtZXMuRGl2aWRlRXZlbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xvY2tBbmRTYXZlXT1cImZhbHNlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWhlYWRlci1kaXZpZGUtZXZlbmx5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1wb3B1cC1idXNpbmVzcy1ydWxlLWFwcGxpZWRcIiAqbmdJZj1cInNob3dCdXNpbmVzc1J1bGVJbmZvXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvLWljb24gW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5DaXJjbGVFeGNsYW1hdGlvblJlZ3VsYXIpXCI+PC9jby1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCInREVQT1NJVF9CVVNJTkVTU19SVUxFX0FQUExJRUQnIHwgbG9jYWxpemVcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLXBvcHVwLXR3by1jb2x1bW4tZ3JpZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWhlYWRlci1hbW91bnQtdG8tc2V0dGxlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0XT1cImNmZ05hbWVzLkFtb3VudFRvU2V0dGxlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xvY2tBbmRTYXZlXT1cImZhbHNlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2NvLXRyYW5zYWN0aW9uLWhlYWRlci1hbW91bnQtdG8tc2V0dGxlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWhlYWRlci1wb3B1cC1hbHJlYWR5LXBhaWRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8Y28taW5wdXQtdGV4dFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3RdPVwiY2ZnTmFtZXMuVG90YWxQYWlkRG93blwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1RPVEFMX1BBSURfRE9XTicgfCBsb2NhbGl6ZVwiIFtmb3JjZVJlYWRvbmx5XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVsXT1cInBhaWREb3duXCIgW2Zvcm1hdFBpcGVdPVwiY3VycmVuY3lQaXBlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxjby1pbnB1dC10ZXh0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdF09XCJjZmdOYW1lcy5TZXR0bGVkU29GYXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidTRVRUTEVEX1NPX0ZBUicgfCBsb2NhbGl6ZVwiIFtmb3JjZVJlYWRvbmx5XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVsXT1cInNldHRsZWRcIiBbZm9ybWF0UGlwZV09XCJjdXJyZW5jeVBpcGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLXBvcHVwLXR3by1jb2x1bW4tZ3JpZFwiICpuZ0lmPVwic2hvd0Nhc2hPbkRlbGl2ZXJ5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FzaC1vbi1kZWxpdmVyeS1yb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8Y28taW5wdXQtdGV4dFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidDQVNIX09OX0RFTElWRVJZJyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmb3JjZVJlYWRvbmx5XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwiY2FzaE9uRGVsaXZlcnlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Zvcm1hdFBpcGVdPVwiY3VycmVuY3lQaXBlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxjby1idXR0b25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2F2ZS1idXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFpc0RpcmVjdFNlbGxFbmFibGVkKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5UcnVja01vdmluZ1JlZ3VsYXIpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJjYXNoT25EZWxpdmVyeU1vZGFsVmlzaWJsZSA9IHRydWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NvLWJ1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0cmFuc2FjdGlvbi1oZWFkZXItcG9wdXAtdHdvLWNvbHVtbi1ncmlkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdF09XCJjZmdOYW1lcy5QYXltZW50QnRuXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBzY3JlZW5Db25maWdOYXRpdmVFbGVtZW50PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWhlYWRlci1wYXltZW50LWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInRyYW5zYWN0aW9uSW5mby50cmFuc2FjdGlvbktpbmQgIT09IHRyYW5zS2luZC5QdXJjaGFzZU9yZGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIignREVMSVZFUllfVE9UQUwnIHwgbG9jYWxpemUpIHwgYXBwZW5kOicgLyAnIHwgYXBwZW5kOignVE9fU0VUVExFJyB8IGxvY2FsaXplOmZhbHNlKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsb2NrQW5kU2F2ZV09XCJmYWxzZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9jby10cmFuc2FjdGlvbi1oZWFkZXItcGF5bWVudC1idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwicGF5bWVudEFuYWx5c2lzXCIgY2xhc3M9XCJ0cmFuc2FjdGlvbi1oZWFkZXItcG9wdXAtc2VjdGlvblwiPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24taGVhZGVyLXBvcHVwLXNlY3Rpb24tbGFiZWxcIiBbdGV4dENvbnRlbnRdPVwiJ1RPX0lOVk9JQ0UnIHwgbG9jYWxpemVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0aWxsLXRvcC1wYXktc3RhdHNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwYXltZW50LWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgW3RleHRDb250ZW50XT1cIidUT19CRV9JTlZPSUNFRCcgfCBsb2NhbGl6ZVwiPjwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFtb3VudFwiPnt7IHBheW1lbnRBbmFseXNpcz8udG90YWxUb0ludm9pY2UgfCBjb0N1cnJlbmN5OnRydWUgfX08L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBheW1lbnQtaXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBbdGV4dENvbnRlbnRdPVwiJ0FMUkVBRFlfSU5WT0lDRUQnIHwgbG9jYWxpemVcIj48L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhbW91bnRcIj57eyBwYXltZW50QW5hbHlzaXM/LnRvdGFsRGVwb3NpdEludm9pY2UgfCBjb0N1cnJlbmN5OnRydWUgfX08L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBheW1lbnQtaXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBbdGV4dENvbnRlbnRdPVwiJ1NUSUxMX1RPX1BBWScgfCBsb2NhbGl6ZVwiPjwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFtb3VudFwiIFtjbGFzcy5vdXRzdGFuZGluZ109XCJwYXltZW50QW5hbHlzaXM/LnRvdGFsVG9QYXkgPiAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+e3sgcGF5bWVudEFuYWx5c2lzPy50b3RhbFRvUGF5IHwgY29DdXJyZW5jeTp0cnVlIH19PC9zdHJvbmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJvcmRlclBheW1lbnRBbmFseXNpcy5sZW5ndGggPiAwXCIgY2xhc3M9XCJwYXltZW50LWluZm9ybWF0aW9uXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxjby1idXR0b25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInNhdmUtYnV0dG9uIHBheW1lbnQtYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInNob3dQYXltZW50QnV0dG9uKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuQ3JlZGl0Q2FyZFJlZ3VsYXIpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib3BlblBheW1lbnQoJGV2ZW50KVwiPlxyXG4gICAgICAgICAgICAgICAgICA8L2NvLWJ1dHRvbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwYXltZW50LWNhdGVnb3JpZXNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwYXltZW50LWNhdGVnb3J5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLnNlbGVjdGVkXT1cImFjdGl2ZUNhdGVnb3J5LmluZGV4ID09PSBjYXRlZ29yeS5pbmRleFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBjYXRlZ29yeSBvZiBwYXltZW50Q2F0ZWdvcmllc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJoYW5kbGVDYXRlZ29yeUNsaWNrKGNhdGVnb3J5KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0aXRsZVwiIFt0ZXh0Q29udGVudF09XCJjYXRlZ29yeS50aXRsZSB8IGxvY2FsaXplXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICA8dGFibGUgKm5nSWY9XCJhY3RpdmVDYXRlZ29yeS5pbmRleCA9PT0gMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHRoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cImxlZnRcIiAqbmdJZj1cInNob3dJbnZvaWNlU2VsZWN0aW9uKClcIiBbdGV4dENvbnRlbnRdPVwiJ1BBWScgfCBsb2NhbGl6ZVwiPjwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwibGVmdFwiIFt0ZXh0Q29udGVudF09XCInREVTQ1JJUFRJT04nIHwgbG9jYWxpemVcIj48L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBbdGV4dENvbnRlbnRdPVwiJ0FNT1VOVDInIHwgbG9jYWxpemVcIj48L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBbdGV4dENvbnRlbnRdPVwiJ1BBSUQnIHwgbG9jYWxpemVcIj48L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBbdGV4dENvbnRlbnRdPVwiJ1NFVFRMRUQnIHwgbG9jYWxpemVcIj48L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBbdGV4dENvbnRlbnRdPVwiJ09VVFNUQU5ESU5HJyB8IGxvY2FsaXplXCI+PC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L3RoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHRyICpuZ0Zvcj1cImxldCBwYXltZW50SW5mbyBvZiBvcmRlclBheW1lbnRBbmFseXNpc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImxlZnRcIiAqbmdJZj1cInNob3dJbnZvaWNlU2VsZWN0aW9uKClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvLWlucHV0LXJhZGlvLWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwicGF5bWVudEluZm8udHJhbnNhY3Rpb25LaW5kID09PSB0cmFuc0tpbmQuU2FsZXNJbnZvaWNlICYmIHBheW1lbnRJbmZvLm91dHN0YW5kaW5nQW1vdW50ICE9PSAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImRlZmF1bHQtd2lkdGhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cInBheW1lbnRJbmZvLmlzU2VsZWN0ZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJoYW5kbGVTZWxlY3RJbnZvaWNlTGluZXMocGF5bWVudEluZm8pXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY28taW5wdXQtcmFkaW8tYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwibGVmdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwicGF5bWVudEluZm8udHJhbnNhY3Rpb25LaW5kID09PSB0cmFuc0tpbmQuU2FsZXNPcmRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RleHRDb250ZW50XT1cIidERVBPU0lUJyB8IGxvY2FsaXplXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJwYXltZW50SW5mby50cmFuc2FjdGlvbktpbmQgPT09IHRyYW5zS2luZC5TYWxlc0ludm9pY2VcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbdGV4dENvbnRlbnRdPVwiJ0lOVk9JQ0UnIHwgbG9jYWxpemVcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+IHt7IHBheW1lbnRJbmZvLnRyYW5zYWN0aW9uTnVtYmVyIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPiB7eyBwYXltZW50SW5mby50cmFuc2FjdGlvbkRhdGUgfCBkYXRlOidkZC1NTS15eXl5JyB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxzdHJvbmc+e3sgcGF5bWVudEluZm8uaW52b2ljZUFtb3VudCB8IGNvQ3VycmVuY3k6dHJ1ZSB9fTwvc3Ryb25nPjwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIFtjbGFzcy5wYWlkXT1cInBheW1lbnRJbmZvLnBhaWRBbW91bnQgIT09IDBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN0cm9uZz57eyBwYXltZW50SW5mby5wYWlkQW1vdW50IHwgY29DdXJyZW5jeTp0cnVlIH19PC9zdHJvbmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3sgcGF5bWVudEluZm8uc2V0dGxlZEFtb3VudCB8IGNvQ3VycmVuY3k6dHJ1ZSB9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIFtjbGFzcy5vdXRzdGFuZGluZ109XCJwYXltZW50SW5mby5vdXRzdGFuZGluZ0Ftb3VudCAhPT0gMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nPnt7IHBheW1lbnRJbmZvLm91dHN0YW5kaW5nQW1vdW50IHwgY29DdXJyZW5jeTp0cnVlIH19PC9zdHJvbmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxyXG4gICAgICAgICAgICAgICAgICA8L3RhYmxlPlxyXG5cclxuICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImFjdGl2ZUNhdGVnb3J5LmluZGV4ID09PSAxXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8cFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cInJlZ2lzdGVyZWRQYXltZW50SW5mbyAmJiByZWdpc3RlcmVkUGF5bWVudEluZm8ucGF5bWVudHMubGVuZ3RoID09PSAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RleHRDb250ZW50XT1cIidOT1RfRk9VTkQnIHwgbG9jYWxpemVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICA8dGFibGUgKm5nSWY9XCJyZWdpc3RlcmVkUGF5bWVudEluZm8gJiYgcmVnaXN0ZXJlZFBheW1lbnRJbmZvLnBheW1lbnRzLmxlbmd0aCA+IDBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggY2xhc3M9XCJsZWZ0XCIgW3RleHRDb250ZW50XT1cIidERVNDUklQVElPTicgfCBsb2NhbGl6ZVwiPjwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBbdGV4dENvbnRlbnRdPVwiJ0FNT1VOVDInIHwgbG9jYWxpemVcIj48L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggW3RleHRDb250ZW50XT1cIidEQVRFJyB8IGxvY2FsaXplXCI+PC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDx0ciAqbmdGb3I9XCJsZXQgcGF5bWVudEluZm8gb2YgcmVnaXN0ZXJlZFBheW1lbnRJbmZvLnBheW1lbnRzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImxlZnRcIj57eyBwYXltZW50SW5mby5yZWZlcmVuY2UgfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHN0cm9uZz57eyBwYXltZW50SW5mby5hbW91bnQgfCBjb0N1cnJlbmN5OnRydWUgfX08L3N0cm9uZz48L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3sgcGF5bWVudEluZm8ucGF5bWVudERhdGVUaW1lIHwgZGF0ZTonZGQtTU0teXl5eScgfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9jby1mb3JtPlxyXG5cclxuICAgICAgICAgIDxjby1jYXNoLW9uLWRlbGl2ZXJ5LW1vZGFsXHJcbiAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY2FzaE9uRGVsaXZlcnlNb2RhbFZpc2libGVcIlxyXG4gICAgICAgICAgICAgICAgICBbdHJhbnNhY3Rpb25JbmZvVXVpZF09XCJ0cmFuc2FjdGlvbkluZm8udXVpZFwiXHJcbiAgICAgICAgICAgICAgICAgIChjYXNoQW1vdW50KT1cImdldENhc2hBbW91bnQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgIChzaG93Q2FzaE9uRGVsaXZlcnlNb2RhbCk9XCJzaG93Q2FzaE9uRGVsaXZlcnlNb2RhbCgkZXZlbnQpXCI+XHJcbiAgICAgICAgICA8L2NvLWNhc2gtb24tZGVsaXZlcnktbW9kYWw+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGNvLWRpYWxvZ1xyXG4gICAgICAgICAgICAgIGNsYXNzPVwicGF5bWVudC1kaWFsb2dcIlxyXG4gICAgICAgICAgICAgIFttb2RhbF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICBbaGVhZGVyVGVtcGxhdGVdPVwiaGVhZGVyVGVtcGxhdGVcIlxyXG4gICAgICAgICAgICAgICpuZ0lmPVwic2hvd1BheW1lbnREaWFsb2dcIlxyXG4gICAgICAgICAgICAgIChjbG9zZUNsaWNrKT1cImhhbmRsZUNsb3NlRGlhbG9nKClcIj5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjaGVhZGVyVGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy13cmFwcGVyLXBvcHVwLXRpdGxlXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxjby1pY29uIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbnMuQ3JlZGl0Q2FyZFJlZ3VsYXJDaGVjaylcIj48L2NvLWljb24+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjby1kaWFsb2ctaGVhZGVyLXRpdGxlXCIgW3RleHRDb250ZW50XT1cIidQQVlNRU5UX01FVEhPRCcgfCBsb2NhbGl6ZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgIDxjby1wYXltZW50XHJcbiAgICAgICAgICAgICAgICAgIFt0cmFuc0lkXT1cInRyYW5zYWN0aW9uSWRUb1BheVwiXHJcbiAgICAgICAgICAgICAgICAgIFticmFuY2hdPVwidHJhbnNhY3Rpb25JbmZvLmJyYW5jaD8ucmVsYXRpb25OclwiXHJcbiAgICAgICAgICAgICAgICAgIFt0cmFuc2FjdGlvblV1aWRdPVwidHJhbnNhY3Rpb25JbmZvLnV1aWRcIlxyXG4gICAgICAgICAgICAgICAgICBbYW1vdW50XT1cImNob3NlbkFtb3VudFRvUGF5XCJcclxuICAgICAgICAgICAgICAgICAgW3JlbWFpbmluZ1BheW1lbnRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgIFtjdXJyZW5jeUlkXT1cInRyYW5zYWN0aW9uSW5mby5jdXJyZW5jeUlkXCJcclxuICAgICAgICAgICAgICAgICAgW2RvTm90RmV0Y2hBbW91bnRUb1BheUZvclJlbWFpbmluZ109XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgW3Nob3dQYXltZW50RGF0ZV09XCJ0cnVlXCJcclxuICAgICAgICAgID48L2NvLXBheW1lbnQ+XHJcbiAgICAgIDwvY28tZGlhbG9nPlxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25IZWFkZXJQb3B1cFBheW1lbnRDb21wb25lbnQgZXh0ZW5kcyBUcmFuc2FjdGlvbkhlYWRlclBvcHVwQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmNvLXRyYW5zYWN0aW9uLWhlYWRlci1wb3B1cC1wYXltZW50JylcclxuICBwdWJsaWMgc2hvd0NsYXNzKCkge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY3VycmVuY3lQaXBlOiB0eXBlb2YgQ29DdXJyZW5jeVBpcGUgPSBDb0N1cnJlbmN5UGlwZTtcclxuICBwdWJsaWMgcGFpZERvd246IG51bWJlciA9IDA7XHJcbiAgcHVibGljIHNldHRsZWQ6IG51bWJlciA9IDA7XHJcbiAgcHVibGljIGNhc2hPbkRlbGl2ZXJ5OiBudW1iZXIgPSAwO1xyXG4gIHB1YmxpYyBzaG93QnVzaW5lc3NSdWxlSW5mbzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBzaG93UGF5RG93bkxhYmVsOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIGNhc2hPbkRlbGl2ZXJ5TW9kYWxWaXNpYmxlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHNob3dDYXNoT25EZWxpdmVyeTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBzaG93UGF5bWVudERpYWxvZzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIC8vIHB1YmxpYyBvdXRzdGFuZGluZ0N1c3RvbWVyQW1vdW50OiBPdXRzdGFuZGluZ0Ftb3VudEN1c3RvbWVyW10gPSBbXTtcclxuICBwdWJsaWMgb3JkZXJQYXltZW50QW5hbHlzaXM6IE9yZGVyUGF5bWVudEFuYWx5c2lzW10gPSBbXTtcclxuICBwdWJsaWMgcGF5bWVudEFuYWx5c2lzOiBQYXltZW50QW5hbHlzaXM7XHJcbiAgcHVibGljIHBheW1lbnRDYXRlZ29yaWVzOiBQYXltZW50Q2F0ZWdvcnlbXSA9IFtcclxuICAgIHtpbmRleDogMCwgdGl0bGU6IFwiUEFZTUVOVF9BTkFMWVNJU1wifSxcclxuICAgIHtpbmRleDogMSwgdGl0bGU6IFwiUEFZTUVOVFNfTUFERVwifVxyXG4gIF07XHJcbiAgcHVibGljIGFjdGl2ZUNhdGVnb3J5OiBQYXltZW50Q2F0ZWdvcnkgPSB0aGlzLnBheW1lbnRDYXRlZ29yaWVzWzBdO1xyXG4gIHB1YmxpYyBjaG9zZW5BbW91bnRUb1BheTogbnVtYmVyO1xyXG4gIHB1YmxpYyB0cmFuc2FjdGlvbklkVG9QYXk6IG51bWJlcjtcclxuICBwdWJsaWMgcmVnaXN0ZXJlZFBheW1lbnRJbmZvOiBUcmFuc2FjdGlvblJlZ2lzdGVyZWRQYXltZW50SW5mbztcclxuXHJcbiAgcHJpdmF0ZSBfcGF5bWVudFN1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHRyYW5zYWN0aW9uSGVhZGVyU2VydmljZTogVHJhbnNhY3Rpb25IZWFkZXJTZXJ2aWNlLFxyXG4gICAgcHVibGljIHRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlOiBUcmFuc2FjdGlvbkV2ZW50U2VydmljZSxcclxuICAgIHB1YmxpYyBzZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZSxcclxuICAgIHB1YmxpYyB0cmFuc2FjdGlvblNjcmVlbkNvbmZpZ3VyYXRpb25TZXJ2aWNlOiBUcmFuc2FjdGlvblNjcmVlbkNvbmZpZ3VyYXRpb25TZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGRpY3Rpb25hcnlTZXJ2aWNlOiBEaWN0aW9uYXJ5U2VydmljZSxcclxuICAgIHByb3RlY3RlZCBpbWFnZVNlcnZpY2U6IFRyYW5zYWN0aW9uSW1hZ2VTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByb3RlY3RlZCBkaWFsb2dTZXJ2aWNlOiBUcmFuc2FjdGlvbkRpYWxvZ1NlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgZm9ybU1hc3RlclNlcnZpY2U6IEZvcm1NYXN0ZXJTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIHJlbGF0aW9uU2VydmljZTogVHJhbnNhY3Rpb25SZWxhdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9wYXltZW50Q29ubmVjdG9yU2VydmljZTogVHJhbnNhY3Rpb25QYXltZW50Q29ubmVjdG9yU2VydmljZVxyXG4gICkge1xyXG4gICAgc3VwZXIodHJhbnNhY3Rpb25IZWFkZXJTZXJ2aWNlLCB0cmFuc2FjdGlvbkV2ZW50U2VydmljZSwgc2VydmljZSwgaWNvbkNhY2hlU2VydmljZSwgdHJhbnNhY3Rpb25TY3JlZW5Db25maWd1cmF0aW9uU2VydmljZSwgZGljdGlvbmFyeVNlcnZpY2UsIGltYWdlU2VydmljZSwgY2hhbmdlRGV0ZWN0b3IsIGRpYWxvZ1NlcnZpY2UsIGZvcm1NYXN0ZXJTZXJ2aWNlLCByZWxhdGlvblNlcnZpY2UpO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgbmdPbkluaXQoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBhd2FpdCBzdXBlci5uZ09uSW5pdCgpO1xyXG4gICAgdGhpcy5fcGF5bWVudFN1YnMucHVzaChcclxuICAgICAgdGhpcy50cmFuc2FjdGlvbkV2ZW50U2VydmljZS50cmFuc2FjdGlvblBheW1lbnREb25lLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5fZ2V0RGVwb3NpdEluZm8oKTtcclxuICAgICAgICB0aGlzLl9nZXRPdXRzdGFuZGluZ0Ftb3VudHMoKTtcclxuICAgICAgICB0aGlzLmhhbmRsZUNsb3NlRGlhbG9nKCk7XHJcbiAgICAgIH0pLFxyXG4gICAgICB0aGlzLnNjcmVlbkNvbmZpZ1NlcnZpY2UuY29uZmlnU2V0LnN1YnNjcmliZSgoY29uZmlnT2JqZWN0czogT2JqZWN0Q29uZmlndXJhdGlvbltdKSA9PiB0aGlzLl9nZXRPYmplY3RDb25maWd1cmF0aW9uKGNvbmZpZ09iamVjdHMpKVxyXG4gICAgKTtcclxuICAgIHRoaXMuc2hvd0Nhc2hPbkRlbGl2ZXJ5ID0gYXdhaXQgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0SW50ZXJuYWxQYXJhbWV0ZXIoSW50ZXJuYWxQYXJhbS5TZWxsRGlyZWN0bHlGcm9tU3VwcGwpO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgbmdPbkRlc3Ryb3koKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLl9wYXltZW50U3Vicy5mb3JFYWNoKHMgPT4gcy51bnN1YnNjcmliZSgpKTtcclxuICAgIGF3YWl0IHN1cGVyLm5nT25EZXN0cm95KCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlQ2F0ZWdvcnlDbGljayhjYXQ6IFBheW1lbnRDYXRlZ29yeSk6IHZvaWQge1xyXG4gICAgdGhpcy5hY3RpdmVDYXRlZ29yeSA9IGNhdDtcclxuXHJcbiAgICBpZiAodGhpcy5hY3RpdmVDYXRlZ29yeS5pbmRleCA9PT0gMSkge1xyXG4gICAgICB0aGlzLl9nZXRSZWdpc3RlcmVkUGF5bWVudEluZm8oKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBzaG93T3V0c3RhbmRpbmdBbW91bnRzKCkge1xyXG4gICAgYXdhaXQgdGhpcy5zZXJ2aWNlLnNhdmVUcmFuc2FjdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNob3dDYXNoT25EZWxpdmVyeU1vZGFsKHZhbHVlOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLmNhc2hPbkRlbGl2ZXJ5TW9kYWxWaXNpYmxlID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0Q2FzaEFtb3VudCh2YWx1ZTogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB0aGlzLmNhc2hPbkRlbGl2ZXJ5ID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2hvd1BheW1lbnRCdXR0b24oKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5vcmRlclBheW1lbnRBbmFseXNpcy5zb21lKHQgPT4gdC5vdXRzdGFuZGluZ0Ftb3VudCAhPT0gMCkgJiYgdGhpcy5jaG9zZW5BbW91bnRUb1BheSAhPT0gMDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBvcGVuUGF5bWVudChldmVudDogTW91c2VFdmVudCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgdGhpcy50cmFuc2FjdGlvbklkVG9QYXkgPSB0aGlzLnRyYW5zYWN0aW9uSWRUb1BheSA/PyB0aGlzLnRyYW5zYWN0aW9uSW5mby5pZDtcclxuICAgIGlmICh0aGlzLm9yZGVyUGF5bWVudEFuYWx5c2lzLmZpbHRlcihwYXltZW50ID0+IHBheW1lbnQudHJhbnNhY3Rpb25LaW5kID09PSB0aGlzLnRyYW5zS2luZC5TYWxlc0ludm9pY2UgJiYgcGF5bWVudC5vdXRzdGFuZGluZ0Ftb3VudCAhPT0gMCkubGVuZ3RoID09PSAxKSB7XHJcbiAgICAgIGNvbnN0IGxhc3RUcmFuc2FjdGlvbiA9IHRoaXMub3JkZXJQYXltZW50QW5hbHlzaXMuZmlsdGVyKHBheW1lbnQgPT4gcGF5bWVudC50cmFuc2FjdGlvbktpbmQgPT09IHRoaXMudHJhbnNLaW5kLlNhbGVzSW52b2ljZSAmJiBwYXltZW50Lm91dHN0YW5kaW5nQW1vdW50ICE9PSAwKVswXTtcclxuICAgICAgdGhpcy50cmFuc2FjdGlvbklkVG9QYXkgPSBsYXN0VHJhbnNhY3Rpb24udHJhbnNhY3Rpb25JZDtcclxuICAgIH1cclxuICAgIGlmIChhd2FpdCB0aGlzLmxvY2tUcmFuc2FjdGlvbigpKSB7XHJcbiAgICAgIHRoaXMuc2hvd1BheW1lbnREaWFsb2cgPSB0cnVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZUNsb3NlRGlhbG9nKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zaG93UGF5bWVudERpYWxvZyA9IGZhbHNlO1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2Uucm9sbGJhY2soKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBpc0RpcmVjdFNlbGxFbmFibGVkKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMudHJhbnNhY3Rpb25MaW5lcy5zb21lKGxpbmUgPT4gbGluZS5kaXJlY3RTZWxsICYmIGxpbmUuZHJvcFNoaXBtZW50KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzaG93SW52b2ljZVNlbGVjdGlvbigpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLm9yZGVyUGF5bWVudEFuYWx5c2lzLmZpbHRlcihwYXltZW50ID0+IHBheW1lbnQudHJhbnNhY3Rpb25LaW5kID09PSB0aGlzLnRyYW5zS2luZC5TYWxlc0ludm9pY2UgJiYgcGF5bWVudC5vdXRzdGFuZGluZ0Ftb3VudCAhPT0gMCkubGVuZ3RoID4gMTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVTZWxlY3RJbnZvaWNlTGluZXMocGF5bWVudEluZm86IE9yZGVyUGF5bWVudEFuYWx5c2lzKTogdm9pZCB7XHJcbiAgICB0aGlzLm9yZGVyUGF5bWVudEFuYWx5c2lzLmZvckVhY2goaW52b2ljZSA9PiAoaW52b2ljZSBhcyBhbnkpLmlzU2VsZWN0ZWQgPSBmYWxzZSk7XHJcbiAgICAocGF5bWVudEluZm8gYXMgYW55KS5pc1NlbGVjdGVkID0gdHJ1ZTtcclxuICAgIHRoaXMuY2hvc2VuQW1vdW50VG9QYXkgPSBwYXltZW50SW5mby5vdXRzdGFuZGluZ0Ftb3VudDtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25JZFRvUGF5ID0gcGF5bWVudEluZm8udHJhbnNhY3Rpb25JZDtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCB0cmFuc2FjdGlvblNldCgpIHtcclxuICAgIHN1cGVyLnRyYW5zYWN0aW9uU2V0KCk7XHJcbiAgICB0aGlzLl9nZXREZXBvc2l0SW5mbygpO1xyXG4gICAgdGhpcy5fZ2V0T3V0c3RhbmRpbmdBbW91bnRzKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9nZXREZXBvc2l0SW5mbygpOiB2b2lkIHtcclxuICAgIHRoaXMuX3BheW1lbnRDb25uZWN0b3JTZXJ2aWNlLmdldERlcG9zaXRQYXltZW50SW5mbyh0aGlzLnRyYW5zYWN0aW9uSW5mby51dWlkKS50aGVuKChpbmZvOiBUcmFuc2FjdGlvbkRlcG9zaXRQYXltZW50SW5mbykgPT4ge1xyXG4gICAgICBpZiAoaW5mbykge1xyXG4gICAgICAgIHRoaXMucGFpZERvd24gPSBpbmZvLmRlcG9zaXRQYXltZW50QW1vdW50VG90YWw7XHJcbiAgICAgICAgdGhpcy5zZXR0bGVkID0gaW5mby5kZXBvc2l0QW1vdW50U2V0dGxlZDtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFzeW5jIF9nZXRPdXRzdGFuZGluZ0Ftb3VudHMoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICAvLyBrZWVwaW5nIHRoaXMgZm9yIG5vdywgY291bGQgYmUgdGhhdCB3ZSBuZWVkIHRvIHVzZSB0aGlzIGNhbGwgYWZ0ZXIgYWxsXHJcbiAgICAvLyBjb25zdCBvdXRzdGFuZGluZ0Ftb3VudHNSZXF1ZXN0OiBPdXRzdGFuZGluZ0Ftb3VudEZpbHRlckN1c3RvbWVyID0gbmV3IE91dHN0YW5kaW5nQW1vdW50RmlsdGVyQ3VzdG9tZXIoKTtcclxuICAgIC8vIG91dHN0YW5kaW5nQW1vdW50c1JlcXVlc3QudHJhbnNhY3Rpb25JZCA9IHRoaXMudHJhbnNhY3Rpb25JbmZvLmlkO1xyXG4gICAgLy8gdGhpcy5fcGF5bWVudENvbm5lY3RvclNlcnZpY2UuZ2V0T3V0c3RhbmRpbmdDdXN0b21lckFtb3VudHMob3V0c3RhbmRpbmdBbW91bnRzUmVxdWVzdCkudGhlbigocmVzcG9uc2U6IE91dHN0YW5kaW5nQW1vdW50Q3VzdG9tZXJbXSkgPT4ge1xyXG4gICAgLy8gICB0aGlzLm91dHN0YW5kaW5nQ3VzdG9tZXJBbW91bnQgPSByZXNwb25zZTtcclxuICAgIC8vIH0pO1xyXG5cclxuICAgIGNvbnN0IHBheW1lbnRBbmFseXNpc1JlcXVlc3Q6IE9yZGVyUGF5bWVudEFuYWx5c2lzRmlsdGVyID0gbmV3IE9yZGVyUGF5bWVudEFuYWx5c2lzRmlsdGVyKCk7XHJcbiAgICBwYXltZW50QW5hbHlzaXNSZXF1ZXN0LnRyYW5zYWN0aW9uSWQgPSB0aGlzLnRyYW5zYWN0aW9uSW5mby5pZDtcclxuICAgIGF3YWl0IHRoaXMuX3BheW1lbnRDb25uZWN0b3JTZXJ2aWNlLmdldFNhbGVzT3JkZXJQYXltZW50QW5hbHlzaXMocGF5bWVudEFuYWx5c2lzUmVxdWVzdCkudGhlbigocmVzcG9uc2U6IE9yZGVyUGF5bWVudEFuYWx5c2lzW10pID0+IHtcclxuICAgICAgdGhpcy5vcmRlclBheW1lbnRBbmFseXNpcyA9IHJlc3BvbnNlO1xyXG4gICAgICB0aGlzLm9yZGVyUGF5bWVudEFuYWx5c2lzID0gdGhpcy5vcmRlclBheW1lbnRBbmFseXNpcy5tYXAodHJhbnNhY3Rpb24gPT4gKHtcclxuICAgICAgICAuLi50cmFuc2FjdGlvbixcclxuICAgICAgICBpc1NlbGVjdGVkOiBmYWxzZVxyXG4gICAgICB9KSkgYXMgdW5rbm93biBhcyBPcmRlclBheW1lbnRBbmFseXNpc1tdO1xyXG4gICAgfSk7XHJcblxyXG4gICAgYXdhaXQgdGhpcy5fcGF5bWVudENvbm5lY3RvclNlcnZpY2UuZ2V0UGF5bWVudEFuYWx5c2lzKHRoaXMudHJhbnNhY3Rpb25JbmZvLnV1aWQpLnRoZW4oKHJlc3BvbnNlOiBQYXltZW50QW5hbHlzaXMpID0+IHtcclxuICAgICAgdGhpcy5wYXltZW50QW5hbHlzaXMgPSByZXNwb25zZTtcclxuICAgICAgdGhpcy5jaG9zZW5BbW91bnRUb1BheSA9IHRoaXMucGF5bWVudEFuYWx5c2lzLnRvdGFsVG9QYXk7XHJcbiAgICAgIHRoaXMuX3VwZGF0ZUNob3NlbkFtb3VudFRvUGF5KCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgX2dldFJlZ2lzdGVyZWRQYXltZW50SW5mbygpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGNvbnN0IHBheW1lbnRJbmZvOiBUcmFuc2FjdGlvblJlZ2lzdGVyZWRQYXltZW50SW5mbyA9IGF3YWl0IHRoaXMuX3BheW1lbnRDb25uZWN0b3JTZXJ2aWNlLmdldFJlZ2lzdGVyZWRQYXltZW50SW5mbyh0aGlzLnRyYW5zYWN0aW9uSW5mby51dWlkKTtcclxuICAgIGlmIChwYXltZW50SW5mbykge1xyXG4gICAgICB0aGlzLnJlZ2lzdGVyZWRQYXltZW50SW5mbyA9IHBheW1lbnRJbmZvO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZ2V0T2JqZWN0Q29uZmlndXJhdGlvbihjb25maWdPYmplY3RzOiBPYmplY3RDb25maWd1cmF0aW9uW10pOiB2b2lkIHtcclxuICAgIGlmIChjb25maWdPYmplY3RzICYmIGNvbmZpZ09iamVjdHMubGVuZ3RoID4gMCkge1xyXG4gICAgICB0aGlzLnNob3dQYXlEb3duTGFiZWwgPSB0aGlzLnNjcmVlbkNvbmZpZ1NlcnZpY2UuZ2V0T2JqZWN0Q29uZmlndXJhdGlvbkZvcih0aGlzLmNmZ05hbWVzLkRlcG9zaXRQZXJjZW50YWdlKS5pbW1lZGlhdGVseVZpc2libGUoKSB8fFxyXG4gICAgICAgIHRoaXMuc2NyZWVuQ29uZmlnU2VydmljZS5nZXRPYmplY3RDb25maWd1cmF0aW9uRm9yKHRoaXMuY2ZnTmFtZXMuRGVwb3NpdEFtb3VudCkuaW1tZWRpYXRlbHlWaXNpYmxlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF91cGRhdGVDaG9zZW5BbW91bnRUb1BheSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLm9yZGVyUGF5bWVudEFuYWx5c2lzLnNvbWUodCA9PiB0Lm91dHN0YW5kaW5nQW1vdW50ICE9PSAwKSAmJlxyXG4gICAgICB0aGlzLm9yZGVyUGF5bWVudEFuYWx5c2lzLmZpbHRlcihwYXltZW50ID0+IHBheW1lbnQudHJhbnNhY3Rpb25LaW5kID09PSB0aGlzLnRyYW5zS2luZC5TYWxlc0ludm9pY2UpLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICB0aGlzLmNob3NlbkFtb3VudFRvUGF5ID0gdGhpcy5wYXltZW50QW5hbHlzaXMudG90YWxEZXBvc2l0O1xyXG4gICAgfVxyXG5cclxuICAgIC8vIERlcG9zaXQgb25seVxyXG4gICAgaWYgKHRoaXMub3JkZXJQYXltZW50QW5hbHlzaXMuZmlsdGVyKHBheW1lbnQgPT4gcGF5bWVudC50cmFuc2FjdGlvbktpbmQgPT09IHRoaXMudHJhbnNLaW5kLlNhbGVzT3JkZXIgJiZcclxuICAgICAgcGF5bWVudC5vdXRzdGFuZGluZ0Ftb3VudCAhPT0gMCkubGVuZ3RoID09PSAxKSB7XHJcbiAgICAgIHRoaXMuY2hvc2VuQW1vdW50VG9QYXkgPSB0aGlzLm9yZGVyUGF5bWVudEFuYWx5c2lzWzBdLm91dHN0YW5kaW5nQW1vdW50O1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLm9yZGVyUGF5bWVudEFuYWx5c2lzLmZpbHRlcihwYXltZW50ID0+IChwYXltZW50LnRyYW5zYWN0aW9uS2luZCA9PT0gdGhpcy50cmFuc0tpbmQuU2FsZXNJbnZvaWNlKSAmJiAocGF5bWVudC5vdXRzdGFuZGluZ0Ftb3VudCAhPT0gMCkpLmxlbmd0aCA9PT0gMSkge1xyXG4gICAgICBjb25zdCByZW1haW5pbmdJbnZvaWNlID0gdGhpcy5vcmRlclBheW1lbnRBbmFseXNpcy5maWx0ZXIocGF5bWVudCA9PiAocGF5bWVudC50cmFuc2FjdGlvbktpbmQgPT09IHRoaXMudHJhbnNLaW5kLlNhbGVzSW52b2ljZSkgJiYgKHBheW1lbnQub3V0c3RhbmRpbmdBbW91bnQgIT09IDApKVswXTtcclxuICAgICAgdGhpcy5jaG9zZW5BbW91bnRUb1BheSA9IHJlbWFpbmluZ0ludm9pY2Uub3V0c3RhbmRpbmdBbW91bnQ7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMub3JkZXJQYXltZW50QW5hbHlzaXMuZmlsdGVyKHBheW1lbnQgPT4gKHBheW1lbnQudHJhbnNhY3Rpb25LaW5kID09PSB0aGlzLnRyYW5zS2luZC5TYWxlc0ludm9pY2UpICYmIChwYXltZW50Lm91dHN0YW5kaW5nQW1vdW50ICE9PSAwKSkubGVuZ3RoID4gMSkge1xyXG4gICAgICB0aGlzLmNob3NlbkFtb3VudFRvUGF5ID0gMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
|
|
@@ -3,8 +3,8 @@ export class Version {
|
|
|
3
3
|
constructor() {
|
|
4
4
|
this.name = "@colijnit/transaction";
|
|
5
5
|
this.description = "Colijn IT transaction package";
|
|
6
|
-
this.symVer = "256.1.
|
|
7
|
-
this.publishDate = "
|
|
6
|
+
this.symVer = "256.1.98";
|
|
7
|
+
this.publishDate = "01/07/2025, 17:15:50";
|
|
8
8
|
}
|
|
9
9
|
}
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tdmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvdHJhbnNhY3Rpb24tdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1REFBdUQ7QUFDdkQsTUFBTSxPQUFPLE9BQU87SUFBcEI7UUFDUyxTQUFJLEdBQUcsdUJBQXVCLENBQUM7UUFDL0IsZ0JBQVcsR0FBRywrQkFBK0IsQ0FBQztRQUM5QyxXQUFNLEdBQUcsVUFBVSxDQUFDO1FBQ3BCLGdCQUFXLEdBQUcsc0JBQXNCLENBQUM7SUFDOUMsQ0FBQztDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLy8gdGhpcyBmaWxlIGlzIGR5bmFtaWNhbGx5IGNyZWF0ZWQsIGRvIG5vdCBjaGFuZ2UgdGhpc1xuZXhwb3J0IGNsYXNzIFZlcnNpb24ge1xuICBwdWJsaWMgbmFtZSA9IFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uXCI7XG4gIHB1YmxpYyBkZXNjcmlwdGlvbiA9IFwiQ29saWpuIElUIHRyYW5zYWN0aW9uIHBhY2thZ2VcIjtcbiAgcHVibGljIHN5bVZlciA9IFwiMjU2LjEuOThcIjtcbiAgcHVibGljIHB1Ymxpc2hEYXRlID0gXCIwMS8wNy8yMDI1LCAxNzoxNTo1MFwiO1xufSJdfQ==
|
|
@@ -290,8 +290,8 @@ class Version {
|
|
|
290
290
|
constructor() {
|
|
291
291
|
this.name = "@colijnit/transaction";
|
|
292
292
|
this.description = "Colijn IT transaction package";
|
|
293
|
-
this.symVer = "256.1.
|
|
294
|
-
this.publishDate = "
|
|
293
|
+
this.symVer = "256.1.98";
|
|
294
|
+
this.publishDate = "01/07/2025, 17:15:50";
|
|
295
295
|
}
|
|
296
296
|
}
|
|
297
297
|
|
|
@@ -51588,7 +51588,7 @@ TransactionHeaderPopupPaymentComponent.decorators = [
|
|
|
51588
51588
|
</span>
|
|
51589
51589
|
</td>
|
|
51590
51590
|
<td><strong>{{ paymentInfo.invoiceAmount | coCurrency:true }}</strong></td>
|
|
51591
|
-
<td [class.paid]="paymentInfo.paidAmount
|
|
51591
|
+
<td [class.paid]="paymentInfo.paidAmount !== 0">
|
|
51592
51592
|
<strong>{{ paymentInfo.paidAmount | coCurrency:true }}</strong>
|
|
51593
51593
|
</td>
|
|
51594
51594
|
<td>{{ paymentInfo.settledAmount | coCurrency:true }}</td>
|