iptdevs-design-system 3.1.796 → 3.1.797
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/esm2020/lib/core/models/payment/payment-rq.model.mjs +1 -1
- package/esm2020/lib/core/services/budget-service/budget-service.mjs +16 -4
- package/fesm2015/iptdevs-design-system.mjs +15 -3
- package/fesm2015/iptdevs-design-system.mjs.map +1 -1
- package/fesm2020/iptdevs-design-system.mjs +15 -3
- package/fesm2020/iptdevs-design-system.mjs.map +1 -1
- package/lib/core/models/payment/payment-rq.model.d.ts +8 -0
- package/lib/core/services/budget-service/budget-service.d.ts +3 -1
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bWVudC1ycS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2Rlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb3JlL21vZGVscy9wYXltZW50L3BheW1lbnQtcnEubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgdG9rZW5BZG1pbmlzdHJhdGl2ZVJxIHtcclxuICB0b2tlbjogc3RyaW5nXHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBQYXltZW50TWV0aG9kUnEge1xyXG4gICAgY29kZTogICAgICAgIG51bWJlcjtcclxuICAgIG5hbWU6ICAgICAgICBzdHJpbmc7XHJcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFBheW1lbnRTZXJ2aWNlc1JxIHtcclxuICAgIGNvZGU6ICAgICAgICBudW1iZXI7XHJcbiAgICBuYW1lOiAgICAgICAgc3RyaW5nO1xyXG4gICAgZGVzY3JpcHRpb246IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBCYW5rc1JxIHtcclxuICAgIGNvZGU6IG51bWJlcjtcclxuICAgIG5hbWU6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDYW1wdXNScSB7XHJcbiAgICBjb2RlOiBudW1iZXI7XHJcbiAgICBuYW1lOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUGF5bWVuV2FsbGV0UnEge1xyXG4gICAgY29kZTogICAgICAgIG51bWJlcjtcclxuICAgIG5hbWU6ICAgICAgICBzdHJpbmc7XHJcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xyXG4gICAgY2FtcHVzOiAgICAgIG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDb2REYXRhR2VuZXJhbFN0dWRlbnRScSB7XHJcbiAgICBjb2RlOiAgICAgICAgICAgICAgICAgIG51bWJlcjtcclxuICAgIGNvdXJzZTogICAgICAgICAgICAgICAgQ291cnNlO1xyXG4gICAgY291cnNlX3R5cGU6ICAgICAgICAgICBDb3Vyc2VUeXBlUnE7XHJcbiAgICBhZ3JlZW1lbnQ6ICAgICAgICAgICAgIEFncmVlbWVudDtcclxuICAgIGVuZ2xpc2hfbGV2ZWw6ICAgICAgICAgRW5nbGlzaExldmVsO1xyXG4gICAgc3R1ZGVudDogICAgICAgICAgICAgICBTdHVkZW50UnE7XHJcbiAgICBwYXJlbnQ6ICAgICAgICAgICAgICAgIG51bWJlcjtcclxuICAgIGFkaXRpb25hbF9pbmZvcm1hdGlvbjogbnVtYmVyO1xyXG4gICAgYWR2aXNlcjogICAgICAgICAgICAgICBzdHJpbmc7XHJcbiAgICB1cGRhdGVkX2F0OiAgICAgICAgICAgIERhdGU7XHJcbiAgICBjcmVhdGVkX2F0OiAgICAgICAgICAgIERhdGU7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQWdyZWVtZW50IHtcclxuICAgIGNvZGU6ICAgICBudW1iZXI7XHJcbiAgICBuYW1lOiAgICAgc3RyaW5nO1xyXG4gICAgZW5kX3RpbWU6IERhdGU7XHJcbiAgICBjYXRlZ29yeTogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENvdXJzZSB7XHJcbiAgICBjb2RlOiAgICAgICAgICAgIG51bWJlcjtcclxuICAgIGNvdXJzZV9zY2hlZHVsZTogbnVtYmVyO1xyXG4gICAgdGVhY2hlcjogICAgICAgICBudW1iZXI7XHJcbiAgICBjb3Vyc2VfdHlwZTogICAgIG51bWJlcjtcclxuICAgIHN0YXJ0X2RhdGU6ICAgICAgRGF0ZTtcclxuICAgIGZpbmlzaF9kYXRlOiAgICAgRGF0ZTtcclxuICAgIGNhcGFjaXR5OiAgICAgICAgbnVtYmVyO1xyXG4gICAgbW9yZV9kYXlzOiAgICAgICBudW1iZXI7XHJcbiAgICBlbmdsaXNoX2xldmVsOiAgIG51bWJlcjtcclxuICAgIGFncmVlbWVudDogICAgICAgbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENvdXJzZVR5cGVScSB7XHJcbiAgICBjb2RlOiAgICAgICAgICBudW1iZXI7XHJcbiAgICBuYW1lOiAgICAgICAgICBzdHJpbmc7XHJcbiAgICBhY2FkZW1pY19wbGFuOiBFbmdsaXNoTGV2ZWw7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRW5nbGlzaExldmVsIHtcclxuICAgIGNvZGU6IG51bWJlcjtcclxuICAgIG5hbWU6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTdHVkZW50UnEge1xyXG4gICAgY29kZTogICAgICAgICAgICAgbnVtYmVyO1xyXG4gICAgbmFtZTogICAgICAgICAgICAgc3RyaW5nO1xyXG4gICAgbGFzdF9uYW1lOiAgICAgICAgc3RyaW5nO1xyXG4gICAgbmlja19uYW1lOiAgICAgICAgbnVsbDtcclxuICAgIGVtYWlsOiAgICAgICAgICAgIHN0cmluZztcclxuICAgIGVtYWlsX2lwdDogICAgICAgIG51bGw7XHJcbiAgICByb2xlOiAgICAgICAgICAgICBudW1iZXI7XHJcbiAgICBzZXJ2aWNlX2hvdXI6ICAgICBudW1iZXI7XHJcbiAgICBwaG9uZV9pbmRpY2F0aXZlOiBudW1iZXI7XHJcbiAgICBwaG9uZV9udW1iZXI6ICAgICBzdHJpbmc7XHJcbiAgICBnZW5kZXI6ICAgICAgICAgICBudW1iZXI7XHJcbiAgICBiaXJ0aGRhdGU6ICAgICAgICBudWxsO1xyXG4gICAgY2l0eTogICAgICAgICAgICAgbnVtYmVyO1xyXG4gICAgaWRfY2FyZF90eXBlOiAgICAgbnVtYmVyO1xyXG4gICAgaWRfY2FyZDogICAgICAgICAgc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFBheW1lbnRCaWxsUnEge1xyXG4gICAgcGF5bWVudF9tZXRob2Q6ICAgICBudW1iZXI7XHJcbiAgICBwYXltZW50X3NlcnZpY2VzOiAgIG51bWJlcjtcclxuICAgIHBheW1lbnRfd2FsbGV0OiAgICAgbnVtYmVyO1xyXG4gICAgYmFuazogICAgICAgICAgICAgICBudW1iZXI7XHJcbiAgICBnZW5lcmF0ZWRfZm9yOiAgICAgIG51bWJlcjtcclxuICAgIGdlbmVyYXRlZF9ieTogICAgICAgc3RyaW5nO1xyXG4gICAgdG90YWxfYW1vdW50OiAgICAgICBudW1iZXI7XHJcbiAgICBwYXltZW50X2Ftb3VudDogICAgIG51bWJlcjtcclxuICAgIG91dHN0YW5kaW5nX2Ftb3VudDogbnVtYmVyO1xyXG4gICAgcG9zaXRpdmVfYW1vdW50OiAgICBudW1iZXI7XHJcbiAgICBkaXNjb3VudDogICAgICAgICAgIG51bWJlcjtcclxuICAgIGNvZGVEaXNjb3VudDogICAgICAgbnVtYmVyO1xyXG4gICAgcGF5ZXJfbmFtZTogICAgICAgICBzdHJpbmc7XHJcbiAgICBwYXllcl9kb2N1bWVudDogICAgIHN0cmluZztcclxuICAgIGNvZF9wYXltZW50OiAgICAgICAgbnVtYmVyO1xyXG4gICAgY29kZUFjYWRlbWljX3BsYW46ICBudW1iZXI7XHJcbiAgICBjb2RlPzogICAgICAgICAgICAgIG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBQYXltZW50QmlsbEFsbFJxIHtcclxuICAgIGNvZGU6ICAgICAgICAgICAgICAgbnVtYmVyO1xyXG4gICAgcGF5bWVudF9tZXRob2Q6ICAgICBzdHJpbmc7XHJcbiAgICBwYXltZW50X3NlcnZpY2VzOiAgIHN0cmluZztcclxuICAgIHBheW1lbnRfd2FsbGV0OiAgICAgc3RyaW5nO1xyXG4gICAgYmFuazogICAgICAgICAgICAgICBzdHJpbmc7XHJcbiAgICBnZW5lcmF0ZWRfZm9yOiAgICAgIHN0cmluZztcclxuICAgIGdlbmVyYXRlZF9ieTogICAgICAgc3RyaW5nO1xyXG4gICAgdG90YWxfYW1vdW50OiAgICAgICBudW1iZXI7XHJcbiAgICBwYXltZW50X2Ftb3VudDogICAgIG51bWJlcjtcclxuICAgIG91dHN0YW5kaW5nX2Ftb3VudDogbnVtYmVyO1xyXG4gICAgcG9zaXRpdmVfYW1vdW50OiAgICBudW1iZXI7XHJcbiAgICBkaXNjb3VudDogICAgICAgICAgIG51bWJlcjtcclxuICAgIHBheWVyX25hbWU6ICAgICAgICAgc3RyaW5nO1xyXG4gICAgcGF5ZXJfZG9jdW1lbnQ6ICAgICBzdHJpbmc7XHJcbiAgICBjcmVhdGVkX2F0OiAgICAgICAgIERhdGU7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVXNlclJxMiB7XHJcbiAgICAgY29kZTogICAgICAgICBudW1iZXI7XHJcbiAgICAgaWRfY2FyZDogICAgICBzdHJpbmc7XHJcbiAgICAgaWRfY2FyZF90eXBlOiBzdHJpbmc7XHJcbiAgICAgbmFtZTogICAgICAgICBzdHJpbmc7XHJcbiAgICAgbGFzdF9uYW1lOiAgICBzdHJpbmc7XHJcbiAgICAgbmlja19uYW1lOiAgICBzdHJpbmc7XHJcbiAgICAgZW1haWw6ICAgICAgICBzdHJpbmc7XHJcbiAgICAgcGhvbmVfbnVtYmVyOiBzdHJpbmc7XHJcbiAgICAgZ2VuZGVyOiAgICAgICBudW1iZXI7XHJcbiAgICAgY2l0eTogICAgICAgICBzdHJpbmc7XHJcbiAgICAgYmlydGhkYXRlOiAgICBzdHJpbmc7XHJcbiAgICAgcm9sZTogICAgICAgICBzdHJpbmc7XHJcbiAgICAgc2VydmljZV9ob3VyOiBudW1iZXI7XHJcbiAgICAgZW1haWxfaXB0OiAgICBzdHJpbmc7XHJcbiAgICAgdXBkYXRlZF9hdDogICBEYXRlO1xyXG59XHJcblxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBHZXRTdHVkZW50QnlDb2RlUnEge1xyXG4gICAgdG9rZW46ICAgICBzdHJpbmc7XHJcbiAgICBjb2RlOiAgICAgIG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBHZXREaXNjb3VudENvdXBvbnNScSB7XHJcbiAgICB0b2tlbjogICAgICAgIHN0cmluZztcclxuICAgIGRpc2NvdW50X3JlZjogIHN0cmluZztcclxuICAgIGFjYWRlbWljX3BsYW46IG51bWJlcjtcclxuICAgIGNvZGVfc3R1ZGVudDogIG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTZWFyY2hEaXNjb3VudENvdXBvbnNScSB7XHJcbiAgICBjb2RlOiAgICAgICAgICAgICAgICAgbnVtYmVyO1xyXG4gICAgZGlzY291bnRSZWY6ICAgICAgICAgIHN0cmluZztcclxuICAgIG5hbWU6ICAgICAgICAgICAgICAgICBzdHJpbmc7XHJcbiAgICB0eXBlOiAgICAgICAgICAgICAgICAgbnVtYmVyO1xyXG4gICAgZGlzY291bnRUeXBlOiAgICAgICAgIHN0cmluZztcclxuICAgIHBlcmNlbnRhZ2U6ICAgICAgICAgICBudW1iZXI7XHJcbiAgICBzdGFydERhdGU6ICAgICAgICAgICAgRGF0ZTtcclxuICAgIGVuZERhdGU6ICAgICAgICAgICAgICBEYXRlO1xyXG4gICAgc3RhdGU6ICAgICAgICAgICAgICAgIG51bWJlcjtcclxuICAgIGRlc2NyaXB0aW9uOiAgICAgICAgICBzdHJpbmc7XHJcbiAgICBkaXNjb3VudDogICAgICAgICAgICAgbnVsbDtcclxuICAgIGFjYWRlbWljUGxhbjogICAgICAgICBudWxsO1xyXG4gICAgZGlzY291bnRBY2FkZW1pY1BsYW46IERpc2NvdW50QWNhZGVtaWNQbGFuMltdO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIERpc2NvdW50QWNhZGVtaWNQbGFuMiB7XHJcbiAgICBjb2RlOiAgbnVtYmVyO1xyXG4gICAgbmFtZTogIHN0cmluZztcclxuICAgIHBpdm90OiBQaXZvdDtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBQaXZvdCB7XHJcbiAgICBkaXNjb3VudDogICAgIG51bWJlcjtcclxuICAgIGFjYWRlbWljUGxhbjogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFVzZXJFa3RScSB7XHJcbiAgICBjb2RlOiAgICAgICAgICAgICBudW1iZXI7XHJcbiAgICBpZF9jYXJkOiAgICAgICAgICBzdHJpbmc7XHJcbiAgICB1ZnBzX2NvZGU6ICAgICAgICBzdHJpbmc7XHJcbiAgICBuYW1lOiAgICAgICAgICAgICBzdHJpbmc7XHJcbiAgICBsYXN0X25hbWU6ICAgICAgICBzdHJpbmc7XHJcbiAgICBlbWFpbDogICAgICAgICAgICBzdHJpbmc7XHJcbiAgICBwaG9uZV9pbmRpY2F0aXZlOiBudW1iZXI7XHJcbiAgICBwaG9uZTogICAgICAgICAgICBzdHJpbmc7XHJcbiAgICB0b2tlbjogICAgICAgICAgICBzdHJpbmc7XHJcbiAgICBhZ3JlZW1lbnQ6ICAgICAgICBudW1iZXI7XHJcbiAgICB1cGRhdGVkX2F0OiAgICAgICBEYXRlO1xyXG4gICAgY3JlYXRlZF9hdDogICAgICAgRGF0ZTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBbm5vdW5jZW1lbnRVc2VyRWt0UnEge1xyXG4gICAgY29kZTogICAgICAgICBudW1iZXI7XHJcbiAgICBhbm5vdW5jZW1lbnQ6IEFubm91bmNlbWVudDtcclxuICAgIHVzZXJfZWt0OiAgICAgbnVtYmVyO1xyXG4gICAgbmVlZF9wYXk6ICAgICBudW1iZXI7XHJcbiAgICBpc19wYXk6ICAgICAgIG51bWJlcjtcclxuICAgIHVwZGF0ZWRfYXQ6ICAgRGF0ZTtcclxuICAgIGNyZWF0ZWRfYXQ6ICAgRGF0ZTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBbm5vdW5jZW1lbnQge1xyXG4gICAgY29kZTogICAgICAgbnVtYmVyO1xyXG4gICAgb3Blbl9kYXRlOiAgRGF0ZTtcclxuICAgIGNsb3NlX2RhdGU6IERhdGU7XHJcbiAgICBmaW5hbF9kYXRlOiBEYXRlO1xyXG4gICAgbmFtZTogICAgICAgc3RyaW5nO1xyXG4gICAgYWdyZWVtZW50OiAgbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFBheW1lbnRTdHVkZW50UnEge1xyXG4gIGNvZGU6ICAgICAgICBudW1iZXI7XHJcbiAgY29kOiAgICAgICAgIG51bWJlcjtcclxuICB0aW1lbHlfZGF0ZTogRGF0ZTtcclxuICBhbW91bnQ6ICAgICAgbnVtYmVyO1xyXG4gIGZlZV9udW1iZXI6ICBudW1iZXI7XHJcbiAgc3RhdHVzOiAgICAgIG51bWJlcjtcclxuICB1cGRhdGVkX2F0OiAgRGF0ZTtcclxuICBjcmVhdGVkX2F0OiAgRGF0ZTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBQcmljZUJ5VHlwZVNlcnZpY2VScSB7XHJcbiAgICB0b2tlbjogICAgICAgICAgIHN0cmluZyxcclxuICAgIHBheW1lbnRfc2VydmljZTogbnVtYmVyXHJcbiAgfVxyXG5cclxuICBleHBvcnQgaW50ZXJmYWNlIERhdGFQcmljZUJ5c2VydmljZVJxIHtcclxuICAgIGNvZGU6ICAgICAgICAgICAgbnVtYmVyO1xyXG4gICAgcGF5bWVudF9zZXJ2aWNlOiBudW1iZXI7XHJcbiAgICBwYXltZW50X3dhbGxldDogIG51bWJlcjtcclxuICAgIHByaWNlOiAgICAgICAgICAgbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEdldFN0dWRlbnRCeUNvZGVScSB7XHJcbiAgdG9rZW46ICAgICBzdHJpbmc7XHJcbiAgY29kZTogICAgICBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUGF5bWVudEJpbGxBbGxScSB7XHJcbiAgY29kZTogICAgICAgICAgICAgICBudW1iZXI7XHJcbiAgcGF5bWVudF9tZXRob2Q6ICAgICBzdHJpbmc7XHJcbiAgcGF5bWVudF9zZXJ2aWNlczogICBzdHJpbmc7XHJcbiAgcGF5bWVudF93YWxsZXQ6ICAgICBzdHJpbmc7XHJcbiAgYmFuazogICAgICAgICAgICAgICBzdHJpbmc7XHJcbiAgZ2VuZXJhdGVkX2ZvcjogICAgICBzdHJpbmc7XHJcbiAgZ2VuZXJhdGVkX2J5OiAgICAgICBzdHJpbmc7XHJcbiAgdG90YWxfYW1vdW50OiAgICAgICBudW1iZXI7XHJcbiAgcGF5bWVudF9hbW91bnQ6ICAgICBudW1iZXI7XHJcbiAgb3V0c3RhbmRpbmdfYW1vdW50OiBudW1iZXI7XHJcbiAgcG9zaXRpdmVfYW1vdW50OiAgICBudW1iZXI7XHJcbiAgZGlzY291bnQ6ICAgICAgICAgICBudW1iZXI7XHJcbiAgcGF5ZXJfbmFtZTogICAgICAgICBzdHJpbmc7XHJcbiAgcGF5ZXJfZG9jdW1lbnQ6ICAgICBzdHJpbmc7XHJcbiAgY3JlYXRlZF9hdDogICAgICAgICBEYXRlO1xyXG59XHJcblxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBQYXltZW50QmlsbFJxIHtcclxuICBwYXltZW50X21ldGhvZDogICAgIG51bWJlcjtcclxuICBwYXltZW50X3NlcnZpY2VzOiAgIG51bWJlcjtcclxuICBwYXltZW50X3dhbGxldDogICAgIG51bWJlcjtcclxuICBiYW5rOiAgICAgICAgICAgICAgIG51bWJlcjtcclxuICBnZW5lcmF0ZWRfZm9yOiAgICAgIG51bWJlcjtcclxuICBnZW5lcmF0ZWRfYnk6ICAgICAgIHN0cmluZztcclxuICB0b3RhbF9hbW91bnQ6ICAgICAgIG51bWJlcjtcclxuICBwYXltZW50X2Ftb3VudDogICAgIG51bWJlcjtcclxuICBvdXRzdGFuZGluZ19hbW91bnQ6IG51bWJlcjtcclxuICBwb3NpdGl2ZV9hbW91bnQ6ICAgIG51bWJlcjtcclxuICBkaXNjb3VudDogICAgICAgICAgIG51bWJlcjtcclxuICBjb2RlRGlzY291bnQ6ICAgICAgIG51bWJlcjtcclxuICBwYXllcl9uYW1lOiAgICAgICAgIHN0cmluZztcclxuICBwYXllcl9kb2N1bWVudDogICAgIHN0cmluZztcclxuICBjb2RfcGF5bWVudDogICAgICAgIG51bWJlcjtcclxuICBjb2RlPzogICAgICAgICAgICAgIG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBQYXltZW50QmlsbFJxMiB7XHJcbiAgcGF5bWVudF9tZXRob2Q6ICAgICBudW1iZXI7XHJcbiAgcGF5bWVudF9zZXJ2aWNlczogICBudW1iZXI7XHJcbiAgcGF5bWVudF93YWxsZXQ6ICAgICBudW1iZXI7XHJcbiAgYmFuazogICAgICAgICAgICAgICBudW1iZXI7XHJcbiAgZ2VuZXJhdGVkX2ZvcjogICAgICBudW1iZXI7XHJcbiAgZ2VuZXJhdGVkX2J5OiAgICAgICBzdHJpbmc7XHJcbiAgdG90YWxfYW1vdW50OiAgICAgICBudW1iZXI7XHJcbiAgcGF5bWVudF9hbW91bnQ6ICAgICBudW1iZXI7XHJcbiAgb3V0c3RhbmRpbmdfYW1vdW50OiBudW1iZXI7XHJcbiAgcG9zaXRpdmVfYW1vdW50OiAgICBudW1iZXI7XHJcbiAgZGlzY291bnQ6ICAgICAgICAgICBudW1iZXI7XHJcbiAgY29kZURpc2NvdW50OiAgICAgICBudW1iZXI7XHJcbiAgcGF5ZXJfbmFtZTogICAgICAgICBzdHJpbmc7XHJcbiAgcGF5ZXJfZG9jdW1lbnQ6ICAgICBzdHJpbmc7XHJcbiAgb2JzZXJ2YXRpb246ICAgICAgICBzdHJpbmc7XHJcbiAgY29kZUFjYWRlbWljX3BsYW46ICBudW1iZXI7XHJcbiAgY29kX3BheW1lbnQ6ICAgICAgICBudW1iZXI7XHJcbiAgY29kZT86ICAgICAgICAgICAgICBudW1iZXI7XHJcbiAgcmVmX3BheW1lbnQ6ICAgICAgICBzdHJpbmc7XHJcbiAgZGF0ZV9wYXltZW50OiAgICAgICBzdHJpbmc7XHJcbiAgY29kZXNfcmVmZXJzOiAgICAgICBudW1iZXJbXTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBQYXltZW50QmlsbFJxMyB7XHJcbiAgcGF5bWVudF9tZXRob2Q6ICAgICBudW1iZXI7XHJcbiAgcGF5bWVudF9zZXJ2aWNlczogICBudW1iZXI7XHJcbiAgcGF5bWVudF93YWxsZXQ6ICAgICBudW1iZXI7XHJcbiAgYmFuazogICAgICAgICAgICAgICBudW1iZXI7XHJcbiAgZ2VuZXJhdGVkX2ZvcjogICAgICBudW1iZXI7XHJcbiAgZ2VuZXJhdGVkX2J5OiAgICAgICBzdHJpbmc7XHJcbiAgdG90YWxfYW1vdW50OiAgICAgICBudW1iZXI7XHJcbiAgcGF5bWVudF9hbW91bnQ6ICAgICBudW1iZXI7XHJcbiAgb3V0c3RhbmRpbmdfYW1vdW50OiBudW1iZXI7XHJcbiAgcG9zaXRpdmVfYW1vdW50OiAgICBudW1iZXI7XHJcbiAgZGlzY291bnQ6ICAgICAgICAgICBudW1iZXI7XHJcbiAgY29kZURpc2NvdW50OiAgICAgICBudW1iZXI7XHJcbiAgcGF5ZXJfbmFtZTogICAgICAgICBzdHJpbmc7XHJcbiAgcGF5ZXJfZG9jdW1lbnQ6ICAgICBzdHJpbmc7XHJcbiAgb2JzZXJ2YXRpb246ICAgICAgICBzdHJpbmc7XHJcbiAgY29kZUFjYWRlbWljX3BsYW46ICBudW1iZXI7XHJcbiAgY29kX3BheW1lbnQ6ICAgICAgICBudW1iZXI7XHJcbiAgY29kZT86ICAgICAgICAgICAgICBudW1iZXI7XHJcbiAgcmVmX3BheW1lbnQ6ICAgICAgICBzdHJpbmc7XHJcbiAgZGF0ZV9wYXltZW50OiAgICAgICBzdHJpbmc7XHJcbiAgY29kZXNfcmVmZXJzOiAgICAgICBudW1iZXJbXTtcclxuICByZWZlcmVuY2VfbnVtYmVyOiAgIHN0cmluZztcclxufVxyXG5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUGF5bWVudFN0dWRlbnRScSB7XHJcbiAgY29kZTogICAgICAgIG51bWJlcjtcclxuICBjb2Q6ICAgICAgICAgbnVtYmVyO1xyXG4gIHRpbWVseV9kYXRlOiBEYXRlO1xyXG4gIGFtb3VudDogICAgICBudW1iZXI7XHJcbiAgZmVlX251bWJlcjogIG51bWJlcjtcclxuICBzdGF0dXM6ICAgICAgbnVtYmVyO1xyXG4gIGRheVZlbmM6ICAgICBudW1iZXI7XHJcbiAgY29sb3JEYXk6ICAgIHN0cmluZztcclxuICB1cGRhdGVkX2F0OiAgRGF0ZTtcclxuICBjcmVhdGVkX2F0OiAgRGF0ZTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBPdmVyZHVlaW5zdGFsbG1lbnRzUnEge1xyXG4gIGNvZGVTdHVkZW50OiAgICAgbnVtYmVyO1xyXG4gIGRvY3VtZW50U3R1ZGVudDogc3RyaW5nO1xyXG4gIGR1ZUFtb3VudDogICAgICAgbnVtYmVyO1xyXG4gIGxhc3ROYW1lU3R1ZGVudDogc3RyaW5nO1xyXG4gIG5hbWVTdHVkZW50OiAgICAgc3RyaW5nO1xyXG4gIG51bUR1ZXM6ICAgICAgICAgbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElQYXltZW50T3ZlcmR1ZUJ5Q29vcmRpbmF0b3JScSB7XHJcbnRva2VuOiAgICAgICAgICAgICAgICBzdHJpbmc7XHJcbmNvdXJzZV93YWxsZXRfc3RhdHVzOiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVBheW1lbnRPdmVyZHVlQnlDb29yZGluYXRvckNvdXJzZVJxIHtcclxudG9rZW46ICAgICAgICAgICAgICAgIHN0cmluZztcclxuY291cnNlX3dhbGxldF9zdGF0dXM6IG51bWJlcjtcclxuY291cnNlX2NvZGU6ICAgICAgICAgIG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJRnVsbENvZFN0dWRlbnRPdmVyZHVlQnlDb29yZGluYXRvclJxIHtcclxudG9rZW46ICAgICAgICAgICAgICAgIHN0cmluZztcclxuY291cnNlX3dhbGxldF9zdGF0dXM6IG51bWJlcjtcclxucGFyYW06ICAgICAgICAgICAgICAgIHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJUGF5bWVudEJpbGxScyB7XHJcbiAgcGF5bWVudF9tZXRob2Q6ICAgICBudW1iZXI7XHJcbiAgcGF5bWVudF9zZXJ2aWNlczogICBudW1iZXI7XHJcbiAgcGF5bWVudF93YWxsZXQ6ICAgICBudW1iZXI7XHJcbiAgYmFuazogICAgICAgICAgICAgICBudW1iZXI7XHJcbiAgZ2VuZXJhdGVkX2ZvcjogICAgICBudW1iZXI7XHJcbiAgZ2VuZXJhdGVkX2J5OiAgICAgICBudW1iZXI7XHJcbiAgdG90YWxfYW1vdW50OiAgICAgICBudW1iZXI7XHJcbiAgcGF5bWVudF9hbW91bnQ6ICAgICBudW1iZXI7XHJcbiAgb3V0c3RhbmRpbmdfYW1vdW50OiBudW1iZXI7XHJcbiAgcG9zaXRpdmVfYW1vdW50OiAgICBudW1iZXI7XHJcbiAgZGlzY291bnQ6ICAgICAgICAgICBudW1iZXI7XHJcbiAgYWNhZGVtaWNfcGxhbjogICAgICBudW1iZXI7XHJcbiAgcGF5ZXJfbmFtZTogICAgICAgICBzdHJpbmc7XHJcbiAgcGF5ZXJfZG9jdW1lbnQ6ICAgICBzdHJpbmc7XHJcbiAgcGF5bWVudF9yZWZlcmVuY2U6ICBudWxsO1xyXG4gIHBheW1lbnRfZGF0ZTogICAgICAgbnVsbDtcclxuICBvYnNlcnZhdGlvbjogICAgICAgIHN0cmluZztcclxuICBjcmVhdGVkX2F0OiAgICAgICAgIERhdGU7XHJcbiAgY29kZTogICAgICAgICAgICAgICBudW1iZXI7XHJcbiAgY291cG9uX2Rpc2NvdW50OiAgICBJQ291cG9uRGlzY291bnRScztcclxuICByZWZlcnJhbF9kaXNjb3VudDogIElSZWZlcnJhbERpc2NvdW50UnNbXTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJQ291cG9uRGlzY291bnRScyB7XHJcbiAgY29kZTogICAgICAgICAgbnVtYmVyO1xyXG4gIGRpc2NvdW50X3JlZjogIHN0cmluZztcclxuICBuYW1lOiAgICAgICAgICBzdHJpbmc7XHJcbiAgdHlwZTogICAgICAgICAgbnVtYmVyO1xyXG4gIGRpc2NvdW50X3R5cGU6IG51bWJlcjtcclxuICBwZXJjZW50YWdlOiAgICBudW1iZXI7XHJcbiAgc3RhcnRfZGF0ZTogICAgRGF0ZTtcclxuICBlbmRfZGF0ZTogICAgICBEYXRlO1xyXG4gIHN0YXRlOiAgICAgICAgIG51bWJlcjtcclxuICBkZXNjcmlwdGlvbjogICBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVJlZmVycmFsRGlzY291bnRScyB7XHJcbiAgY29kZTogICAgICAgICAgIG51bWJlcjtcclxuICB1c2VyX3JlZmVycmVkOiAgbnVtYmVyO1xyXG4gIGNvZF9jb2RlOiAgICAgICBudW1iZXI7XHJcbiAgcGF5bWVudF9zdGF0dXM6IG51bWJlcjtcclxuICBhbW91bnRfcGF5YWJsZTogbnVtYmVyO1xyXG4gIHR5cGVfbW92ZW1lbnQ6ICBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVBheW1lbnRSZWZlcmVuY2VScSB7XHJcbiAgdG9rZW46IHN0cmluZztcclxuICBwYXltZW50X3JlZmVyZW5jZTogc3RyaW5nO1xyXG59XHJcbiBleHBvcnQgaW50ZXJmYWNlIElQYXltZW50Q29kUnN7XHJcbiAgZmVlX251bWJlcjogbnVtYmVyO1xyXG4gIHN0YXR1czpudW1iZXI7XHJcbiAgdGltZWx5X2RhdGU6IERhdGU7XHJcbiAgdG90YWxfcGF5bWVudF9hbW91bnQ6IG51bWJlcjtcclxuICBmZXJ0aWxpemVyOiBJRmVydGlsaXplclJzW107XHJcbiB9XHJcblxyXG4gZXhwb3J0IGludGVyZmFjZSBJRmVydGlsaXplclJze1xyXG4gIGZlcnRpbGl6ZXI6bnVtYmVyO1xyXG4gIGRhdGU6IERhdGU7XHJcbiAgcmVjZWlwdF9udW1iZXI6IG51bWJlcjtcclxuIH1cclxuXHJcblxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJVHJhbnNmZXJCYXNlIHtcclxuICB0cmFuc2Zlcl9hbW91bnQ6IG51bWJlcjtcclxuICBiYW5rX2NvZGU6IG51bWJlcjtcclxuICB0cmFuc2Zlcl9kYXRlOiBzdHJpbmc7XHJcbiAgcmVmZXJlbmNlX251bWJlcjogc3RyaW5nO1xyXG4gIHN0YXR1czogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElUcmFuc2ZlckNyZWF0ZVJxIGV4dGVuZHMgSVRyYW5zZmVyQmFzZSB7XHJcbiAgdG9rZW46IHN0cmluZztcclxuICBpbWFnZT86IEZpbGU7IC8vIENhbXBvIG9wY2lvbmFsIHBhcmEgbGEgaW1hZ2VuXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVRyYW5zZmVyVXBkYXRlUnEgZXh0ZW5kcyBJVHJhbnNmZXJCYXNlIHtcclxuICB0b2tlbjogc3RyaW5nO1xyXG4gIGNvZGU6IG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJVHJhbnNmZXJHZXRScSB7XHJcbiAgdG9rZW46IHN0cmluZztcclxuICBjb2RlOiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVRyYW5zZmVyRGVsZXRlUnEge1xyXG4gIHRva2VuOiBzdHJpbmc7XHJcbiAgY29kZTogbnVtYmVyO1xyXG59XHJcblxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJVHJhbnNmZXJHZXRBbGxScSB7XHJcbiAgdG9rZW46IHN0cmluZztcclxuICBjb2RlX3R5cGVfY29uc3VsdD86IG51bWJlcjtcclxuICBzdGFydF9kYXRlPzogc3RyaW5nO1xyXG4gIGZpbmlzaF9kYXRlPzogc3RyaW5nO1xyXG59XHJcblxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJVHJhbnNmZXIge1xyXG4gIGNvZGU/OiBudW1iZXI7XHJcbiAgdHJhbnNmZXJfYW1vdW50OiBudW1iZXI7XHJcbiAgYmFua19jb2RlOiBudW1iZXI7XHJcbiAgdHJhbnNmZXJfZGF0ZTogRGF0ZTtcclxuICByZWZlcmVuY2VfbnVtYmVyOiBzdHJpbmc7XHJcbiAgc3RhdHVzOiBzdHJpbmc7XHJcbn1cclxuXHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElUcmFuc2ZlclNlYXJjaFJxIHtcclxuICB0b2tlbjogc3RyaW5nO1xyXG4gIHJlZmVyZW5jZV9udW1iZXI/OiBzdHJpbmc7XHJcbiAgYmFua19jb2RlPzogbnVtYmVyO1xyXG4gIHRyYW5zZmVyX2Ftb3VudD86IG51bWJlcjtcclxufVxyXG5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVRyYW5zZmVyU3RhdHVzVXBkYXRlUnEge1xyXG4gIHRva2VuOiBzdHJpbmc7XHJcbiAgY29kZTogbnVtYmVyO1xyXG4gIHN0YXR1czogc3RyaW5nO1xyXG59XHJcblxyXG5cclxuXHJcblxyXG4iXX0=
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bWVudC1ycS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2Rlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb3JlL21vZGVscy9wYXltZW50L3BheW1lbnQtcnEubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgdG9rZW5BZG1pbmlzdHJhdGl2ZVJxIHtcclxuICB0b2tlbjogc3RyaW5nXHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBQYXltZW50TWV0aG9kUnEge1xyXG4gICAgY29kZTogICAgICAgIG51bWJlcjtcclxuICAgIG5hbWU6ICAgICAgICBzdHJpbmc7XHJcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFBheW1lbnRTZXJ2aWNlc1JxIHtcclxuICAgIGNvZGU6ICAgICAgICBudW1iZXI7XHJcbiAgICBuYW1lOiAgICAgICAgc3RyaW5nO1xyXG4gICAgZGVzY3JpcHRpb246IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBCYW5rc1JxIHtcclxuICAgIGNvZGU6IG51bWJlcjtcclxuICAgIG5hbWU6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDYW1wdXNScSB7XHJcbiAgICBjb2RlOiBudW1iZXI7XHJcbiAgICBuYW1lOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUGF5bWVuV2FsbGV0UnEge1xyXG4gICAgY29kZTogICAgICAgIG51bWJlcjtcclxuICAgIG5hbWU6ICAgICAgICBzdHJpbmc7XHJcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xyXG4gICAgY2FtcHVzOiAgICAgIG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDb2REYXRhR2VuZXJhbFN0dWRlbnRScSB7XHJcbiAgICBjb2RlOiAgICAgICAgICAgICAgICAgIG51bWJlcjtcclxuICAgIGNvdXJzZTogICAgICAgICAgICAgICAgQ291cnNlO1xyXG4gICAgY291cnNlX3R5cGU6ICAgICAgICAgICBDb3Vyc2VUeXBlUnE7XHJcbiAgICBhZ3JlZW1lbnQ6ICAgICAgICAgICAgIEFncmVlbWVudDtcclxuICAgIGVuZ2xpc2hfbGV2ZWw6ICAgICAgICAgRW5nbGlzaExldmVsO1xyXG4gICAgc3R1ZGVudDogICAgICAgICAgICAgICBTdHVkZW50UnE7XHJcbiAgICBwYXJlbnQ6ICAgICAgICAgICAgICAgIG51bWJlcjtcclxuICAgIGFkaXRpb25hbF9pbmZvcm1hdGlvbjogbnVtYmVyO1xyXG4gICAgYWR2aXNlcjogICAgICAgICAgICAgICBzdHJpbmc7XHJcbiAgICB1cGRhdGVkX2F0OiAgICAgICAgICAgIERhdGU7XHJcbiAgICBjcmVhdGVkX2F0OiAgICAgICAgICAgIERhdGU7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQWdyZWVtZW50IHtcclxuICAgIGNvZGU6ICAgICBudW1iZXI7XHJcbiAgICBuYW1lOiAgICAgc3RyaW5nO1xyXG4gICAgZW5kX3RpbWU6IERhdGU7XHJcbiAgICBjYXRlZ29yeTogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENvdXJzZSB7XHJcbiAgICBjb2RlOiAgICAgICAgICAgIG51bWJlcjtcclxuICAgIGNvdXJzZV9zY2hlZHVsZTogbnVtYmVyO1xyXG4gICAgdGVhY2hlcjogICAgICAgICBudW1iZXI7XHJcbiAgICBjb3Vyc2VfdHlwZTogICAgIG51bWJlcjtcclxuICAgIHN0YXJ0X2RhdGU6ICAgICAgRGF0ZTtcclxuICAgIGZpbmlzaF9kYXRlOiAgICAgRGF0ZTtcclxuICAgIGNhcGFjaXR5OiAgICAgICAgbnVtYmVyO1xyXG4gICAgbW9yZV9kYXlzOiAgICAgICBudW1iZXI7XHJcbiAgICBlbmdsaXNoX2xldmVsOiAgIG51bWJlcjtcclxuICAgIGFncmVlbWVudDogICAgICAgbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENvdXJzZVR5cGVScSB7XHJcbiAgICBjb2RlOiAgICAgICAgICBudW1iZXI7XHJcbiAgICBuYW1lOiAgICAgICAgICBzdHJpbmc7XHJcbiAgICBhY2FkZW1pY19wbGFuOiBFbmdsaXNoTGV2ZWw7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRW5nbGlzaExldmVsIHtcclxuICAgIGNvZGU6IG51bWJlcjtcclxuICAgIG5hbWU6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTdHVkZW50UnEge1xyXG4gICAgY29kZTogICAgICAgICAgICAgbnVtYmVyO1xyXG4gICAgbmFtZTogICAgICAgICAgICAgc3RyaW5nO1xyXG4gICAgbGFzdF9uYW1lOiAgICAgICAgc3RyaW5nO1xyXG4gICAgbmlja19uYW1lOiAgICAgICAgbnVsbDtcclxuICAgIGVtYWlsOiAgICAgICAgICAgIHN0cmluZztcclxuICAgIGVtYWlsX2lwdDogICAgICAgIG51bGw7XHJcbiAgICByb2xlOiAgICAgICAgICAgICBudW1iZXI7XHJcbiAgICBzZXJ2aWNlX2hvdXI6ICAgICBudW1iZXI7XHJcbiAgICBwaG9uZV9pbmRpY2F0aXZlOiBudW1iZXI7XHJcbiAgICBwaG9uZV9udW1iZXI6ICAgICBzdHJpbmc7XHJcbiAgICBnZW5kZXI6ICAgICAgICAgICBudW1iZXI7XHJcbiAgICBiaXJ0aGRhdGU6ICAgICAgICBudWxsO1xyXG4gICAgY2l0eTogICAgICAgICAgICAgbnVtYmVyO1xyXG4gICAgaWRfY2FyZF90eXBlOiAgICAgbnVtYmVyO1xyXG4gICAgaWRfY2FyZDogICAgICAgICAgc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFBheW1lbnRCaWxsUnEge1xyXG4gICAgcGF5bWVudF9tZXRob2Q6ICAgICBudW1iZXI7XHJcbiAgICBwYXltZW50X3NlcnZpY2VzOiAgIG51bWJlcjtcclxuICAgIHBheW1lbnRfd2FsbGV0OiAgICAgbnVtYmVyO1xyXG4gICAgYmFuazogICAgICAgICAgICAgICBudW1iZXI7XHJcbiAgICBnZW5lcmF0ZWRfZm9yOiAgICAgIG51bWJlcjtcclxuICAgIGdlbmVyYXRlZF9ieTogICAgICAgc3RyaW5nO1xyXG4gICAgdG90YWxfYW1vdW50OiAgICAgICBudW1iZXI7XHJcbiAgICBwYXltZW50X2Ftb3VudDogICAgIG51bWJlcjtcclxuICAgIG91dHN0YW5kaW5nX2Ftb3VudDogbnVtYmVyO1xyXG4gICAgcG9zaXRpdmVfYW1vdW50OiAgICBudW1iZXI7XHJcbiAgICBkaXNjb3VudDogICAgICAgICAgIG51bWJlcjtcclxuICAgIGNvZGVEaXNjb3VudDogICAgICAgbnVtYmVyO1xyXG4gICAgcGF5ZXJfbmFtZTogICAgICAgICBzdHJpbmc7XHJcbiAgICBwYXllcl9kb2N1bWVudDogICAgIHN0cmluZztcclxuICAgIGNvZF9wYXltZW50OiAgICAgICAgbnVtYmVyO1xyXG4gICAgY29kZUFjYWRlbWljX3BsYW46ICBudW1iZXI7XHJcbiAgICBjb2RlPzogICAgICAgICAgICAgIG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBQYXltZW50QmlsbEFsbFJxIHtcclxuICAgIGNvZGU6ICAgICAgICAgICAgICAgbnVtYmVyO1xyXG4gICAgcGF5bWVudF9tZXRob2Q6ICAgICBzdHJpbmc7XHJcbiAgICBwYXltZW50X3NlcnZpY2VzOiAgIHN0cmluZztcclxuICAgIHBheW1lbnRfd2FsbGV0OiAgICAgc3RyaW5nO1xyXG4gICAgYmFuazogICAgICAgICAgICAgICBzdHJpbmc7XHJcbiAgICBnZW5lcmF0ZWRfZm9yOiAgICAgIHN0cmluZztcclxuICAgIGdlbmVyYXRlZF9ieTogICAgICAgc3RyaW5nO1xyXG4gICAgdG90YWxfYW1vdW50OiAgICAgICBudW1iZXI7XHJcbiAgICBwYXltZW50X2Ftb3VudDogICAgIG51bWJlcjtcclxuICAgIG91dHN0YW5kaW5nX2Ftb3VudDogbnVtYmVyO1xyXG4gICAgcG9zaXRpdmVfYW1vdW50OiAgICBudW1iZXI7XHJcbiAgICBkaXNjb3VudDogICAgICAgICAgIG51bWJlcjtcclxuICAgIHBheWVyX25hbWU6ICAgICAgICAgc3RyaW5nO1xyXG4gICAgcGF5ZXJfZG9jdW1lbnQ6ICAgICBzdHJpbmc7XHJcbiAgICBjcmVhdGVkX2F0OiAgICAgICAgIERhdGU7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVXNlclJxMiB7XHJcbiAgICAgY29kZTogICAgICAgICBudW1iZXI7XHJcbiAgICAgaWRfY2FyZDogICAgICBzdHJpbmc7XHJcbiAgICAgaWRfY2FyZF90eXBlOiBzdHJpbmc7XHJcbiAgICAgbmFtZTogICAgICAgICBzdHJpbmc7XHJcbiAgICAgbGFzdF9uYW1lOiAgICBzdHJpbmc7XHJcbiAgICAgbmlja19uYW1lOiAgICBzdHJpbmc7XHJcbiAgICAgZW1haWw6ICAgICAgICBzdHJpbmc7XHJcbiAgICAgcGhvbmVfbnVtYmVyOiBzdHJpbmc7XHJcbiAgICAgZ2VuZGVyOiAgICAgICBudW1iZXI7XHJcbiAgICAgY2l0eTogICAgICAgICBzdHJpbmc7XHJcbiAgICAgYmlydGhkYXRlOiAgICBzdHJpbmc7XHJcbiAgICAgcm9sZTogICAgICAgICBzdHJpbmc7XHJcbiAgICAgc2VydmljZV9ob3VyOiBudW1iZXI7XHJcbiAgICAgZW1haWxfaXB0OiAgICBzdHJpbmc7XHJcbiAgICAgdXBkYXRlZF9hdDogICBEYXRlO1xyXG59XHJcblxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBHZXRTdHVkZW50QnlDb2RlUnEge1xyXG4gICAgdG9rZW46ICAgICBzdHJpbmc7XHJcbiAgICBjb2RlOiAgICAgIG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBHZXREaXNjb3VudENvdXBvbnNScSB7XHJcbiAgICB0b2tlbjogICAgICAgIHN0cmluZztcclxuICAgIGRpc2NvdW50X3JlZjogIHN0cmluZztcclxuICAgIGFjYWRlbWljX3BsYW46IG51bWJlcjtcclxuICAgIGNvZGVfc3R1ZGVudDogIG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTZWFyY2hEaXNjb3VudENvdXBvbnNScSB7XHJcbiAgICBjb2RlOiAgICAgICAgICAgICAgICAgbnVtYmVyO1xyXG4gICAgZGlzY291bnRSZWY6ICAgICAgICAgIHN0cmluZztcclxuICAgIG5hbWU6ICAgICAgICAgICAgICAgICBzdHJpbmc7XHJcbiAgICB0eXBlOiAgICAgICAgICAgICAgICAgbnVtYmVyO1xyXG4gICAgZGlzY291bnRUeXBlOiAgICAgICAgIHN0cmluZztcclxuICAgIHBlcmNlbnRhZ2U6ICAgICAgICAgICBudW1iZXI7XHJcbiAgICBzdGFydERhdGU6ICAgICAgICAgICAgRGF0ZTtcclxuICAgIGVuZERhdGU6ICAgICAgICAgICAgICBEYXRlO1xyXG4gICAgc3RhdGU6ICAgICAgICAgICAgICAgIG51bWJlcjtcclxuICAgIGRlc2NyaXB0aW9uOiAgICAgICAgICBzdHJpbmc7XHJcbiAgICBkaXNjb3VudDogICAgICAgICAgICAgbnVsbDtcclxuICAgIGFjYWRlbWljUGxhbjogICAgICAgICBudWxsO1xyXG4gICAgZGlzY291bnRBY2FkZW1pY1BsYW46IERpc2NvdW50QWNhZGVtaWNQbGFuMltdO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIERpc2NvdW50QWNhZGVtaWNQbGFuMiB7XHJcbiAgICBjb2RlOiAgbnVtYmVyO1xyXG4gICAgbmFtZTogIHN0cmluZztcclxuICAgIHBpdm90OiBQaXZvdDtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBQaXZvdCB7XHJcbiAgICBkaXNjb3VudDogICAgIG51bWJlcjtcclxuICAgIGFjYWRlbWljUGxhbjogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFVzZXJFa3RScSB7XHJcbiAgICBjb2RlOiAgICAgICAgICAgICBudW1iZXI7XHJcbiAgICBpZF9jYXJkOiAgICAgICAgICBzdHJpbmc7XHJcbiAgICB1ZnBzX2NvZGU6ICAgICAgICBzdHJpbmc7XHJcbiAgICBuYW1lOiAgICAgICAgICAgICBzdHJpbmc7XHJcbiAgICBsYXN0X25hbWU6ICAgICAgICBzdHJpbmc7XHJcbiAgICBlbWFpbDogICAgICAgICAgICBzdHJpbmc7XHJcbiAgICBwaG9uZV9pbmRpY2F0aXZlOiBudW1iZXI7XHJcbiAgICBwaG9uZTogICAgICAgICAgICBzdHJpbmc7XHJcbiAgICB0b2tlbjogICAgICAgICAgICBzdHJpbmc7XHJcbiAgICBhZ3JlZW1lbnQ6ICAgICAgICBudW1iZXI7XHJcbiAgICB1cGRhdGVkX2F0OiAgICAgICBEYXRlO1xyXG4gICAgY3JlYXRlZF9hdDogICAgICAgRGF0ZTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBbm5vdW5jZW1lbnRVc2VyRWt0UnEge1xyXG4gICAgY29kZTogICAgICAgICBudW1iZXI7XHJcbiAgICBhbm5vdW5jZW1lbnQ6IEFubm91bmNlbWVudDtcclxuICAgIHVzZXJfZWt0OiAgICAgbnVtYmVyO1xyXG4gICAgbmVlZF9wYXk6ICAgICBudW1iZXI7XHJcbiAgICBpc19wYXk6ICAgICAgIG51bWJlcjtcclxuICAgIHVwZGF0ZWRfYXQ6ICAgRGF0ZTtcclxuICAgIGNyZWF0ZWRfYXQ6ICAgRGF0ZTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBbm5vdW5jZW1lbnQge1xyXG4gICAgY29kZTogICAgICAgbnVtYmVyO1xyXG4gICAgb3Blbl9kYXRlOiAgRGF0ZTtcclxuICAgIGNsb3NlX2RhdGU6IERhdGU7XHJcbiAgICBmaW5hbF9kYXRlOiBEYXRlO1xyXG4gICAgbmFtZTogICAgICAgc3RyaW5nO1xyXG4gICAgYWdyZWVtZW50OiAgbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFBheW1lbnRTdHVkZW50UnEge1xyXG4gIGNvZGU6ICAgICAgICBudW1iZXI7XHJcbiAgY29kOiAgICAgICAgIG51bWJlcjtcclxuICB0aW1lbHlfZGF0ZTogRGF0ZTtcclxuICBhbW91bnQ6ICAgICAgbnVtYmVyO1xyXG4gIGZlZV9udW1iZXI6ICBudW1iZXI7XHJcbiAgc3RhdHVzOiAgICAgIG51bWJlcjtcclxuICB1cGRhdGVkX2F0OiAgRGF0ZTtcclxuICBjcmVhdGVkX2F0OiAgRGF0ZTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBQcmljZUJ5VHlwZVNlcnZpY2VScSB7XHJcbiAgICB0b2tlbjogICAgICAgICAgIHN0cmluZyxcclxuICAgIHBheW1lbnRfc2VydmljZTogbnVtYmVyXHJcbiAgfVxyXG5cclxuICBleHBvcnQgaW50ZXJmYWNlIERhdGFQcmljZUJ5c2VydmljZVJxIHtcclxuICAgIGNvZGU6ICAgICAgICAgICAgbnVtYmVyO1xyXG4gICAgcGF5bWVudF9zZXJ2aWNlOiBudW1iZXI7XHJcbiAgICBwYXltZW50X3dhbGxldDogIG51bWJlcjtcclxuICAgIHByaWNlOiAgICAgICAgICAgbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEdldFN0dWRlbnRCeUNvZGVScSB7XHJcbiAgdG9rZW46ICAgICBzdHJpbmc7XHJcbiAgY29kZTogICAgICBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUGF5bWVudEJpbGxBbGxScSB7XHJcbiAgY29kZTogICAgICAgICAgICAgICBudW1iZXI7XHJcbiAgcGF5bWVudF9tZXRob2Q6ICAgICBzdHJpbmc7XHJcbiAgcGF5bWVudF9zZXJ2aWNlczogICBzdHJpbmc7XHJcbiAgcGF5bWVudF93YWxsZXQ6ICAgICBzdHJpbmc7XHJcbiAgYmFuazogICAgICAgICAgICAgICBzdHJpbmc7XHJcbiAgZ2VuZXJhdGVkX2ZvcjogICAgICBzdHJpbmc7XHJcbiAgZ2VuZXJhdGVkX2J5OiAgICAgICBzdHJpbmc7XHJcbiAgdG90YWxfYW1vdW50OiAgICAgICBudW1iZXI7XHJcbiAgcGF5bWVudF9hbW91bnQ6ICAgICBudW1iZXI7XHJcbiAgb3V0c3RhbmRpbmdfYW1vdW50OiBudW1iZXI7XHJcbiAgcG9zaXRpdmVfYW1vdW50OiAgICBudW1iZXI7XHJcbiAgZGlzY291bnQ6ICAgICAgICAgICBudW1iZXI7XHJcbiAgcGF5ZXJfbmFtZTogICAgICAgICBzdHJpbmc7XHJcbiAgcGF5ZXJfZG9jdW1lbnQ6ICAgICBzdHJpbmc7XHJcbiAgY3JlYXRlZF9hdDogICAgICAgICBEYXRlO1xyXG59XHJcblxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBQYXltZW50QmlsbFJxIHtcclxuICBwYXltZW50X21ldGhvZDogICAgIG51bWJlcjtcclxuICBwYXltZW50X3NlcnZpY2VzOiAgIG51bWJlcjtcclxuICBwYXltZW50X3dhbGxldDogICAgIG51bWJlcjtcclxuICBiYW5rOiAgICAgICAgICAgICAgIG51bWJlcjtcclxuICBnZW5lcmF0ZWRfZm9yOiAgICAgIG51bWJlcjtcclxuICBnZW5lcmF0ZWRfYnk6ICAgICAgIHN0cmluZztcclxuICB0b3RhbF9hbW91bnQ6ICAgICAgIG51bWJlcjtcclxuICBwYXltZW50X2Ftb3VudDogICAgIG51bWJlcjtcclxuICBvdXRzdGFuZGluZ19hbW91bnQ6IG51bWJlcjtcclxuICBwb3NpdGl2ZV9hbW91bnQ6ICAgIG51bWJlcjtcclxuICBkaXNjb3VudDogICAgICAgICAgIG51bWJlcjtcclxuICBjb2RlRGlzY291bnQ6ICAgICAgIG51bWJlcjtcclxuICBwYXllcl9uYW1lOiAgICAgICAgIHN0cmluZztcclxuICBwYXllcl9kb2N1bWVudDogICAgIHN0cmluZztcclxuICBjb2RfcGF5bWVudDogICAgICAgIG51bWJlcjtcclxuICBjb2RlPzogICAgICAgICAgICAgIG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBQYXltZW50QmlsbFJxMiB7XHJcbiAgcGF5bWVudF9tZXRob2Q6ICAgICBudW1iZXI7XHJcbiAgcGF5bWVudF9zZXJ2aWNlczogICBudW1iZXI7XHJcbiAgcGF5bWVudF93YWxsZXQ6ICAgICBudW1iZXI7XHJcbiAgYmFuazogICAgICAgICAgICAgICBudW1iZXI7XHJcbiAgZ2VuZXJhdGVkX2ZvcjogICAgICBudW1iZXI7XHJcbiAgZ2VuZXJhdGVkX2J5OiAgICAgICBzdHJpbmc7XHJcbiAgdG90YWxfYW1vdW50OiAgICAgICBudW1iZXI7XHJcbiAgcGF5bWVudF9hbW91bnQ6ICAgICBudW1iZXI7XHJcbiAgb3V0c3RhbmRpbmdfYW1vdW50OiBudW1iZXI7XHJcbiAgcG9zaXRpdmVfYW1vdW50OiAgICBudW1iZXI7XHJcbiAgZGlzY291bnQ6ICAgICAgICAgICBudW1iZXI7XHJcbiAgY29kZURpc2NvdW50OiAgICAgICBudW1iZXI7XHJcbiAgcGF5ZXJfbmFtZTogICAgICAgICBzdHJpbmc7XHJcbiAgcGF5ZXJfZG9jdW1lbnQ6ICAgICBzdHJpbmc7XHJcbiAgb2JzZXJ2YXRpb246ICAgICAgICBzdHJpbmc7XHJcbiAgY29kZUFjYWRlbWljX3BsYW46ICBudW1iZXI7XHJcbiAgY29kX3BheW1lbnQ6ICAgICAgICBudW1iZXI7XHJcbiAgY29kZT86ICAgICAgICAgICAgICBudW1iZXI7XHJcbiAgcmVmX3BheW1lbnQ6ICAgICAgICBzdHJpbmc7XHJcbiAgZGF0ZV9wYXltZW50OiAgICAgICBzdHJpbmc7XHJcbiAgY29kZXNfcmVmZXJzOiAgICAgICBudW1iZXJbXTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBQYXltZW50QmlsbFJxMyB7XHJcbiAgcGF5bWVudF9tZXRob2Q6ICAgICBudW1iZXI7XHJcbiAgcGF5bWVudF9zZXJ2aWNlczogICBudW1iZXI7XHJcbiAgcGF5bWVudF93YWxsZXQ6ICAgICBudW1iZXI7XHJcbiAgYmFuazogICAgICAgICAgICAgICBudW1iZXI7XHJcbiAgZ2VuZXJhdGVkX2ZvcjogICAgICBudW1iZXI7XHJcbiAgZ2VuZXJhdGVkX2J5OiAgICAgICBzdHJpbmc7XHJcbiAgdG90YWxfYW1vdW50OiAgICAgICBudW1iZXI7XHJcbiAgcGF5bWVudF9hbW91bnQ6ICAgICBudW1iZXI7XHJcbiAgb3V0c3RhbmRpbmdfYW1vdW50OiBudW1iZXI7XHJcbiAgcG9zaXRpdmVfYW1vdW50OiAgICBudW1iZXI7XHJcbiAgZGlzY291bnQ6ICAgICAgICAgICBudW1iZXI7XHJcbiAgY29kZURpc2NvdW50OiAgICAgICBudW1iZXI7XHJcbiAgcGF5ZXJfbmFtZTogICAgICAgICBzdHJpbmc7XHJcbiAgcGF5ZXJfZG9jdW1lbnQ6ICAgICBzdHJpbmc7XHJcbiAgb2JzZXJ2YXRpb246ICAgICAgICBzdHJpbmc7XHJcbiAgY29kZUFjYWRlbWljX3BsYW46ICBudW1iZXI7XHJcbiAgY29kX3BheW1lbnQ6ICAgICAgICBudW1iZXI7XHJcbiAgY29kZT86ICAgICAgICAgICAgICBudW1iZXI7XHJcbiAgcmVmX3BheW1lbnQ6ICAgICAgICBzdHJpbmc7XHJcbiAgZGF0ZV9wYXltZW50OiAgICAgICBzdHJpbmc7XHJcbiAgY29kZXNfcmVmZXJzOiAgICAgICBudW1iZXJbXTtcclxuICByZWZlcmVuY2VfbnVtYmVyOiAgIHN0cmluZztcclxufVxyXG5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUGF5bWVudFN0dWRlbnRScSB7XHJcbiAgY29kZTogICAgICAgIG51bWJlcjtcclxuICBjb2Q6ICAgICAgICAgbnVtYmVyO1xyXG4gIHRpbWVseV9kYXRlOiBEYXRlO1xyXG4gIGFtb3VudDogICAgICBudW1iZXI7XHJcbiAgZmVlX251bWJlcjogIG51bWJlcjtcclxuICBzdGF0dXM6ICAgICAgbnVtYmVyO1xyXG4gIGRheVZlbmM6ICAgICBudW1iZXI7XHJcbiAgY29sb3JEYXk6ICAgIHN0cmluZztcclxuICB1cGRhdGVkX2F0OiAgRGF0ZTtcclxuICBjcmVhdGVkX2F0OiAgRGF0ZTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBPdmVyZHVlaW5zdGFsbG1lbnRzUnEge1xyXG4gIGNvZGVTdHVkZW50OiAgICAgbnVtYmVyO1xyXG4gIGRvY3VtZW50U3R1ZGVudDogc3RyaW5nO1xyXG4gIGR1ZUFtb3VudDogICAgICAgbnVtYmVyO1xyXG4gIGxhc3ROYW1lU3R1ZGVudDogc3RyaW5nO1xyXG4gIG5hbWVTdHVkZW50OiAgICAgc3RyaW5nO1xyXG4gIG51bUR1ZXM6ICAgICAgICAgbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElQYXltZW50T3ZlcmR1ZUJ5Q29vcmRpbmF0b3JScSB7XHJcbnRva2VuOiAgICAgICAgICAgICAgICBzdHJpbmc7XHJcbmNvdXJzZV93YWxsZXRfc3RhdHVzOiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVBheW1lbnRPdmVyZHVlQnlDb29yZGluYXRvckNvdXJzZVJxIHtcclxudG9rZW46ICAgICAgICAgICAgICAgIHN0cmluZztcclxuY291cnNlX3dhbGxldF9zdGF0dXM6IG51bWJlcjtcclxuY291cnNlX2NvZGU6ICAgICAgICAgIG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJRnVsbENvZFN0dWRlbnRPdmVyZHVlQnlDb29yZGluYXRvclJxIHtcclxudG9rZW46ICAgICAgICAgICAgICAgIHN0cmluZztcclxuY291cnNlX3dhbGxldF9zdGF0dXM6IG51bWJlcjtcclxucGFyYW06ICAgICAgICAgICAgICAgIHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJUGF5bWVudEJpbGxScyB7XHJcbiAgcGF5bWVudF9tZXRob2Q6ICAgICBudW1iZXI7XHJcbiAgcGF5bWVudF9zZXJ2aWNlczogICBudW1iZXI7XHJcbiAgcGF5bWVudF93YWxsZXQ6ICAgICBudW1iZXI7XHJcbiAgYmFuazogICAgICAgICAgICAgICBudW1iZXI7XHJcbiAgZ2VuZXJhdGVkX2ZvcjogICAgICBudW1iZXI7XHJcbiAgZ2VuZXJhdGVkX2J5OiAgICAgICBudW1iZXI7XHJcbiAgdG90YWxfYW1vdW50OiAgICAgICBudW1iZXI7XHJcbiAgcGF5bWVudF9hbW91bnQ6ICAgICBudW1iZXI7XHJcbiAgb3V0c3RhbmRpbmdfYW1vdW50OiBudW1iZXI7XHJcbiAgcG9zaXRpdmVfYW1vdW50OiAgICBudW1iZXI7XHJcbiAgZGlzY291bnQ6ICAgICAgICAgICBudW1iZXI7XHJcbiAgYWNhZGVtaWNfcGxhbjogICAgICBudW1iZXI7XHJcbiAgcGF5ZXJfbmFtZTogICAgICAgICBzdHJpbmc7XHJcbiAgcGF5ZXJfZG9jdW1lbnQ6ICAgICBzdHJpbmc7XHJcbiAgcGF5bWVudF9yZWZlcmVuY2U6ICBudWxsO1xyXG4gIHBheW1lbnRfZGF0ZTogICAgICAgbnVsbDtcclxuICBvYnNlcnZhdGlvbjogICAgICAgIHN0cmluZztcclxuICBjcmVhdGVkX2F0OiAgICAgICAgIERhdGU7XHJcbiAgY29kZTogICAgICAgICAgICAgICBudW1iZXI7XHJcbiAgY291cG9uX2Rpc2NvdW50OiAgICBJQ291cG9uRGlzY291bnRScztcclxuICByZWZlcnJhbF9kaXNjb3VudDogIElSZWZlcnJhbERpc2NvdW50UnNbXTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJQ291cG9uRGlzY291bnRScyB7XHJcbiAgY29kZTogICAgICAgICAgbnVtYmVyO1xyXG4gIGRpc2NvdW50X3JlZjogIHN0cmluZztcclxuICBuYW1lOiAgICAgICAgICBzdHJpbmc7XHJcbiAgdHlwZTogICAgICAgICAgbnVtYmVyO1xyXG4gIGRpc2NvdW50X3R5cGU6IG51bWJlcjtcclxuICBwZXJjZW50YWdlOiAgICBudW1iZXI7XHJcbiAgc3RhcnRfZGF0ZTogICAgRGF0ZTtcclxuICBlbmRfZGF0ZTogICAgICBEYXRlO1xyXG4gIHN0YXRlOiAgICAgICAgIG51bWJlcjtcclxuICBkZXNjcmlwdGlvbjogICBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVJlZmVycmFsRGlzY291bnRScyB7XHJcbiAgY29kZTogICAgICAgICAgIG51bWJlcjtcclxuICB1c2VyX3JlZmVycmVkOiAgbnVtYmVyO1xyXG4gIGNvZF9jb2RlOiAgICAgICBudW1iZXI7XHJcbiAgcGF5bWVudF9zdGF0dXM6IG51bWJlcjtcclxuICBhbW91bnRfcGF5YWJsZTogbnVtYmVyO1xyXG4gIHR5cGVfbW92ZW1lbnQ6ICBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVBheW1lbnRSZWZlcmVuY2VScSB7XHJcbiAgdG9rZW46IHN0cmluZztcclxuICBwYXltZW50X3JlZmVyZW5jZTogc3RyaW5nO1xyXG59XHJcbiBleHBvcnQgaW50ZXJmYWNlIElQYXltZW50Q29kUnN7XHJcbiAgZmVlX251bWJlcjogbnVtYmVyO1xyXG4gIHN0YXR1czpudW1iZXI7XHJcbiAgdGltZWx5X2RhdGU6IERhdGU7XHJcbiAgdG90YWxfcGF5bWVudF9hbW91bnQ6IG51bWJlcjtcclxuICBmZXJ0aWxpemVyOiBJRmVydGlsaXplclJzW107XHJcbiB9XHJcblxyXG4gZXhwb3J0IGludGVyZmFjZSBJRmVydGlsaXplclJze1xyXG4gIGZlcnRpbGl6ZXI6bnVtYmVyO1xyXG4gIGRhdGU6IERhdGU7XHJcbiAgcmVjZWlwdF9udW1iZXI6IG51bWJlcjtcclxuIH1cclxuXHJcblxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJVHJhbnNmZXJCYXNlIHtcclxuICB0cmFuc2Zlcl9hbW91bnQ6IG51bWJlcjtcclxuICBiYW5rX2NvZGU6IG51bWJlcjtcclxuICB0cmFuc2Zlcl9kYXRlOiBzdHJpbmc7XHJcbiAgcmVmZXJlbmNlX251bWJlcjogc3RyaW5nO1xyXG4gIHN0YXR1czogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElUcmFuc2ZlckNyZWF0ZVJxIGV4dGVuZHMgSVRyYW5zZmVyQmFzZSB7XHJcbiAgdG9rZW46IHN0cmluZztcclxuICBpbWFnZT86IEZpbGU7IC8vIENhbXBvIG9wY2lvbmFsIHBhcmEgbGEgaW1hZ2VuXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVRyYW5zZmVyU2hvd0ltYWdlUnEge1xyXG4gIGNvZGU6IG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJVHJhbnNmZXJBc3NpZ25JbWFnZSB7XHJcbiAgdG9rZW46IHN0cmluZztcclxuICBjb2RlOiBudW1iZXI7XHJcbiAgaW1hZ2U6IEZpbGU7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVRyYW5zZmVyVXBkYXRlUnEgZXh0ZW5kcyBJVHJhbnNmZXJCYXNlIHtcclxuICB0b2tlbjogc3RyaW5nO1xyXG4gIGNvZGU6IG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJVHJhbnNmZXJHZXRScSB7XHJcbiAgdG9rZW46IHN0cmluZztcclxuICBjb2RlOiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVRyYW5zZmVyRGVsZXRlUnEge1xyXG4gIHRva2VuOiBzdHJpbmc7XHJcbiAgY29kZTogbnVtYmVyO1xyXG59XHJcblxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJVHJhbnNmZXJHZXRBbGxScSB7XHJcbiAgdG9rZW46IHN0cmluZztcclxuICBjb2RlX3R5cGVfY29uc3VsdD86IG51bWJlcjtcclxuICBzdGFydF9kYXRlPzogc3RyaW5nO1xyXG4gIGZpbmlzaF9kYXRlPzogc3RyaW5nO1xyXG59XHJcblxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJVHJhbnNmZXIge1xyXG4gIGNvZGU/OiBudW1iZXI7XHJcbiAgdHJhbnNmZXJfYW1vdW50OiBudW1iZXI7XHJcbiAgYmFua19jb2RlOiBudW1iZXI7XHJcbiAgdHJhbnNmZXJfZGF0ZTogRGF0ZTtcclxuICByZWZlcmVuY2VfbnVtYmVyOiBzdHJpbmc7XHJcbiAgc3RhdHVzOiBzdHJpbmc7XHJcbn1cclxuXHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElUcmFuc2ZlclNlYXJjaFJxIHtcclxuICB0b2tlbjogc3RyaW5nO1xyXG4gIHJlZmVyZW5jZV9udW1iZXI/OiBzdHJpbmc7XHJcbiAgYmFua19jb2RlPzogbnVtYmVyO1xyXG4gIHRyYW5zZmVyX2Ftb3VudD86IG51bWJlcjtcclxufVxyXG5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVRyYW5zZmVyU3RhdHVzVXBkYXRlUnEge1xyXG4gIHRva2VuOiBzdHJpbmc7XHJcbiAgY29kZTogbnVtYmVyO1xyXG4gIHN0YXR1czogc3RyaW5nO1xyXG59XHJcblxyXG5cclxuXHJcblxyXG5cclxuIl19
|
|
@@ -357,12 +357,24 @@ export class BudgetService extends IPTGeneralService {
|
|
|
357
357
|
formData.append('params[bank_code]', params.bank_code.toString());
|
|
358
358
|
formData.append('params[transfer_date]', params.transfer_date); // ahora string
|
|
359
359
|
formData.append('params[reference_number]', params.reference_number);
|
|
360
|
-
// Si se tiene una imagen, se agrega al formData
|
|
361
360
|
if (params.image) {
|
|
362
361
|
formData.append('params[image]', params.image, params.image.name);
|
|
363
362
|
}
|
|
364
|
-
|
|
365
|
-
|
|
363
|
+
return this.http.post(serviceUrl, formData);
|
|
364
|
+
}
|
|
365
|
+
showTransferImage(params) {
|
|
366
|
+
const serviceUrl = this.SERVICE_URL + 'post/transfer/show-image';
|
|
367
|
+
const body = { code: params.code };
|
|
368
|
+
return this.http.post(serviceUrl, body, {
|
|
369
|
+
responseType: 'blob',
|
|
370
|
+
});
|
|
371
|
+
}
|
|
372
|
+
assignImageToTransfer(params) {
|
|
373
|
+
const serviceUrl = this.SERVICE_URL + 'post/transfer/assign-image';
|
|
374
|
+
const formData = new FormData();
|
|
375
|
+
formData.append('token', params.token);
|
|
376
|
+
formData.append('code', params.code.toString());
|
|
377
|
+
formData.append('image', params.image, params.image.name);
|
|
366
378
|
return this.http.post(serviceUrl, formData);
|
|
367
379
|
}
|
|
368
380
|
updateTransfer(params) {
|
|
@@ -419,4 +431,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
|
|
|
419
431
|
providedIn: 'root'
|
|
420
432
|
}]
|
|
421
433
|
}], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
|
|
422
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVkZ2V0LXNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29yZS9zZXJ2aWNlcy9idWRnZXQtc2VydmljZS9idWRnZXQtc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSzNDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7QUFNM0QsTUFBTSxPQUFPLGFBQWMsU0FBUSxpQkFBaUI7SUFJbEQsWUFBb0IsSUFBZ0I7UUFDbEMsS0FBSyxFQUFFLENBQUM7UUFEVSxTQUFJLEdBQUosSUFBSSxDQUFZO1FBRjVCLGdCQUFXLEdBQUcsYUFBYSxDQUFDO1FBSWxDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDdkQsQ0FBQztJQUVELGNBQWMsQ0FBQyxJQUFzQjtRQUNuQyxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLDJCQUEyQixDQUFDO1FBQ2hFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUNELGNBQWMsQ0FBQyxNQUFrQjtRQUMvQixJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLDZCQUE2QixDQUFDO1FBQ2xFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUNELGNBQWMsQ0FBQyxNQUF3QjtRQUNyQyxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLDZCQUE2QixDQUFDO1FBQ2xFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELHdCQUF3QixDQUFDLFdBQW1CO1FBQzFDLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsa0NBQWtDLEdBQUcsV0FBVyxDQUFDO1FBQ3JGLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELHdCQUF3QixDQUFDLFVBQWtCO1FBQ3pDLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsK0JBQStCLEdBQUcsVUFBVSxDQUFDO1FBQ2pGLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELGVBQWUsQ0FBQyxNQUFzQjtRQUNwQyxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLGlDQUFpQyxDQUFDO1FBQ3RFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELG1CQUFtQixDQUFDLE1BQXNCO1FBQ3hDLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcscUNBQXFDLENBQUM7UUFDMUUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRywrQkFBK0IsQ0FBQztRQUNwRSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxXQUFtQjtRQUN0QyxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFJLG9DQUFvQyxHQUFHLFdBQVcsQ0FBQztRQUN4RixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxXQUFtQjtRQUN6QyxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFJLHVDQUF1QyxHQUFHLFdBQVcsQ0FBQztRQUMzRixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCx5QkFBeUIsQ0FBQyxTQUFpQjtRQUN6QyxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLHlDQUF5QyxHQUFHLFNBQVMsQ0FBQztRQUMxRixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFHRCxxQkFBcUIsQ0FBQyxNQUE0QjtRQUNoRCxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLG1DQUFtQyxDQUFDO1FBQ3hFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELDBCQUEwQixDQUFDLE1BQThCO1FBQ3ZELElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsd0NBQXdDLENBQUM7UUFDN0UsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsbUJBQW1CLENBQUUsUUFBZ0I7UUFDbkMsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRywwQkFBMEIsR0FBRyxRQUFRLENBQUM7UUFDMUUsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFDRCwwQkFBMEIsQ0FBRSxVQUFrQjtRQUM1QyxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLHdDQUF3QyxHQUFHLFVBQVUsQ0FBQztRQUMxRixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUNELG9CQUFvQixDQUFFLFVBQWtCO1FBQ3RDLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsOENBQThDLEdBQUcsVUFBVSxDQUFDO1FBQ2hHLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBQ0Qsb0JBQW9CLENBQUUsVUFBa0I7UUFDdEMsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyw4Q0FBOEMsR0FBRyxVQUFVLENBQUM7UUFDaEcsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRCx3QkFBd0I7UUFDdEIsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBSSxpQ0FBaUMsQ0FBQztRQUN2RSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCwyQkFBMkIsQ0FBQyxXQUFtQjtRQUM3QyxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLDBDQUEwQyxHQUFHLFdBQVcsQ0FBQztRQUM3RixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxvQ0FBb0MsQ0FBQyxNQUFzQztRQUN6RSxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLDRDQUE0QyxDQUFDO1FBQ2pGLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELHFDQUFxQyxDQUFDLE1BQXNDO1FBQzFFLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsNENBQTRDLENBQUM7UUFDakYsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsa0RBQWtELENBQUMsTUFBNEM7UUFDN0YsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyxrREFBa0QsQ0FBQztRQUN2RixJQUFJLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbkMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxnQ0FBZ0MsQ0FBQyxNQUE2QztRQUM1RSxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLHlDQUF5QyxDQUFDO1FBQzlFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELDZCQUE2QixDQUFDLE1BQXdDO1FBQ3BFLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsMkJBQTJCLENBQUM7UUFDaEUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsK0NBQStDO0lBQy9DLGtGQUFrRjtJQUNsRix3Q0FBd0M7SUFDeEMseURBQXlEO0lBQ3pELElBQUk7SUFDSixZQUFZLENBQUMsTUFBVztRQUN0QixJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLCtDQUErQyxDQUFDO1FBQ3BGLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELGFBQWEsQ0FBQyxNQUF3QjtRQUNwQyxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLG1DQUFtQyxDQUFDO1FBQ3hFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELGtDQUFrQyxDQUFDLE1BQWdDO1FBQ2pFLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsOENBQThDLENBQUM7UUFDbkYsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsNkJBQTZCLENBQUMsTUFBNkM7UUFDekUsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyx1Q0FBdUMsQ0FBQztRQUM1RSxJQUFJLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbkMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCx5QkFBeUIsQ0FBQyxNQUE2QztRQUNyRSxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLG1DQUFtQyxDQUFDO1FBQ3hFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELHFCQUFxQixDQUFDLE1BQThCO1FBQ2xELElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsZ0RBQWdELENBQUM7UUFDckYsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsdUJBQXVCLENBQUMsTUFBa0M7UUFDeEQsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyxpQ0FBaUMsQ0FBQztRQUN0RSxJQUFJLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbkMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxxQkFBcUIsQ0FBQyxNQUFzQztRQUMxRCxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLG9DQUFvQyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELDBCQUEwQixDQUFFLFdBQW1CO1FBQzdDLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcscUNBQXFDLEdBQUcsV0FBVyxDQUFDO1FBQ3hGLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQsNEJBQTRCLENBQUUsV0FBbUI7UUFDL0MsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyx1Q0FBdUMsR0FBRyxXQUFXLENBQUM7UUFDMUYsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRCxrQ0FBa0MsQ0FBRSxXQUFtQjtRQUNyRCxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLHVDQUF1QyxHQUFHLFdBQVcsQ0FBQztRQUMxRixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVELG1CQUFtQixDQUFFLFdBQW1CO1FBQ3RDLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsc0JBQXNCLEdBQUcsV0FBVyxDQUFDO1FBQ3pFLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQsNEJBQTRCLENBQUUsV0FBbUI7UUFDL0MsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyx1Q0FBdUMsR0FBRyxXQUFXLENBQUM7UUFDMUYsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxNQUErQjtRQUNqRCxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLDZCQUE2QixDQUFDO1FBQ2xFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELDBCQUEwQixDQUFDLE1BQWlDO1FBQzFELElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsaUNBQWlDLENBQUM7UUFDdEUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsMkJBQTJCLENBQUMsTUFBaUM7UUFDM0QsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyx1Q0FBdUMsQ0FBQztRQUM1RSxJQUFJLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbkMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxpQ0FBaUMsQ0FBQyxNQUFpQztRQUNqRSxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLDJDQUEyQyxDQUFDO1FBQ2hGLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELGdDQUFnQyxDQUFDLE1BQXNDO1FBQ3JFLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcscURBQXFELENBQUM7UUFDMUYsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsb0JBQW9CO1FBQ2xCLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcseUJBQXlCLENBQUM7UUFDOUQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBQ0QscUJBQXFCLENBQUMsS0FBeUI7UUFDN0MsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyw2QkFBNkIsQ0FBQztRQUNsRSxJQUFJLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFDRCxzQ0FBc0MsQ0FBQyxLQUF5QjtRQUM5RCxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLHlDQUF5QyxDQUFDO1FBQzlFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELDhDQUE4QyxDQUFDLEtBQWtDO1FBQy9FLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsc0RBQXNELENBQUM7UUFDM0YsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsb0NBQW9DLENBQUMsS0FBa0M7UUFDckUsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRywyQ0FBMkMsQ0FBQztRQUNoRixJQUFJLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCx3Q0FBd0MsQ0FBQyxLQUF5QztRQUNoRixJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLGdEQUFnRCxDQUFDO1FBQ3JGLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELFlBQVksQ0FBQyxLQUEyQjtRQUN0QyxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLG1DQUFtQyxDQUFDO1FBQ3hFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUNELFdBQVc7UUFDVCxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLHVCQUF1QixDQUFDO1FBQzVELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUNELGlCQUFpQixDQUFDLEtBQXFCO1FBQ3JDLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsOEJBQThCLENBQUM7UUFDbkUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBQ0Qsb0JBQW9CLENBQUMsSUFBVztRQUM5QixJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFFLDZCQUE2QixHQUFHLElBQUksQ0FBQztRQUN4RSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFDRCxtQkFBbUI7UUFDakIsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyxzQ0FBc0MsQ0FBQztRQUMzRSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxJQUFXO1FBQzNCLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUUsK0NBQStDLEdBQUcsSUFBSSxDQUFDO1FBQzFGLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUNELG1CQUFtQixDQUFDLElBQVc7UUFDN0IsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRSxpREFBaUQsR0FBRyxJQUFJLENBQUM7UUFDNUYsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBQ0Qsa0JBQWtCLENBQUMsSUFBVztRQUM1QixJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLGdEQUFnRCxHQUFHLElBQUksQ0FBQztRQUM1RixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFDRCx3QkFBd0IsQ0FBQyxLQUF1QjtRQUM5QyxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLHNDQUFzQyxDQUFDO1FBQzNFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELGtCQUFrQixDQUFDLEtBQXdCO1FBQ3pDLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsNENBQTRDLENBQUM7UUFDakYsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBQ0Qsb0RBQW9ELENBQUMsS0FBa0M7UUFDckYsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyx5REFBeUQsQ0FBQztRQUM5RixJQUFJLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFDRCx3QkFBd0IsQ0FBQyxLQUF5QjtRQUNoRCxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLHlDQUF5QyxDQUFDO1FBQzlFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELHlCQUF5QixDQUFDLE1BQW9DO1FBQzVELElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsNENBQTRDLENBQUM7UUFDakYsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsaUNBQWlDLENBQUMsTUFBNEM7UUFDNUUsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRywwQ0FBMEMsQ0FBQztRQUMvRSxJQUFJLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbkMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCw4QkFBOEIsQ0FBQyxNQUE0QztRQUN6RSxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLG9DQUFvQyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELHFDQUFxQyxDQUFDLFdBQW1CO1FBQ3ZELElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsK0NBQStDLEdBQUcsV0FBVyxDQUFDO1FBQ2xHLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELHlCQUF5QixDQUFDLE1BQTJCO1FBQ25ELElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsZ0NBQWdDLENBQUM7UUFDckUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsbUJBQW1CLENBQUMsS0FBbUI7UUFDckMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyw2QkFBNkIsQ0FBQztRQUNwRSxJQUFJLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCx5QkFBeUIsQ0FBQyxNQUFpQztRQUN6RCxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLCtCQUErQixDQUFDO1FBQ3BFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELGdCQUFnQixDQUFDLE1BQXdCO1FBQ3ZDLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcseUJBQXlCLENBQUM7UUFDOUQsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsNEJBQTRCLENBQUMsTUFBc0M7UUFDakUsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyxzQ0FBc0MsQ0FBQztRQUMzRSxJQUFJLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbkMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFQyxlQUFlLENBQUMsTUFBeUI7UUFDdkMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyxvQkFBb0IsQ0FBQztRQUMzRCxJQUFJLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbkMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFHRCxpQkFBaUIsQ0FBQyxNQUFzQjtRQUN0QyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLHlCQUF5QixDQUFDO1FBQ2hFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELCtEQUErRDtJQUMvRCxtRUFBbUU7SUFDbkUsd0NBQXdDO0lBQ3hDLHlEQUF5RDtJQUN6RCxJQUFJO0lBRUosY0FBYyxDQUFDLE1BQXlCO1FBQ3RDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsdUJBQXVCLENBQUM7UUFFOUQsTUFBTSxRQUFRLEdBQUcsSUFBSSxRQUFRLEVBQUUsQ0FBQztRQUNoQyxRQUFRLENBQUMsTUFBTSxDQUFDLGVBQWUsRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDL0MsUUFBUSxDQUFDLE1BQU0sQ0FBQyx5QkFBeUIsRUFBRSxNQUFNLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDOUUsUUFBUSxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDbEUsUUFBUSxDQUFDLE1BQU0sQ0FBQyx1QkFBdUIsRUFBRSxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxlQUFlO1FBQy9FLFFBQVEsQ0FBQyxNQUFNLENBQUMsMEJBQTBCLEVBQUUsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFFckUsZ0RBQWdEO1FBQ2hELElBQUksTUFBTSxDQUFDLEtBQUssRUFBRTtZQUNoQixRQUFRLENBQUMsTUFBTSxDQUFDLGVBQWUsRUFBRSxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDbkU7UUFFRCx3RUFBd0U7UUFDeEUsNEVBQTRFO1FBQzVFLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFHRCxjQUFjLENBQUMsTUFBeUI7UUFDdEMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyx1QkFBdUIsQ0FBQztRQUM5RCxJQUFJLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbkMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxNQUErQjtRQUNsRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLHVCQUF1QixDQUFDO1FBQzlELElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELGNBQWMsQ0FBQyxNQUF5QjtRQUN0QyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLHVCQUF1QixDQUFDO1FBQzlELElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELGNBQWMsQ0FBQyxNQUF5QjtRQUN0QyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLHNCQUFzQixDQUFDO1FBQzdELElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELG9DQUFvQyxDQUFDLEtBQTJCO1FBQzlELElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsMENBQTBDLENBQUM7UUFDL0UsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsMEJBQTBCLENBQUMsS0FBNEI7UUFDckQsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyx1Q0FBdUMsQ0FBQztRQUM1RSxJQUFJLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCwwQkFBMEIsQ0FBQyxLQUFvQztRQUM3RCxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLCtCQUErQixDQUFDO1FBQ3BFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELG1CQUFtQixDQUFDLEtBQTZCO1FBQy9DLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsdUJBQXVCLENBQUM7UUFDNUQsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsa0NBQWtDLENBQUMsS0FBMEI7UUFDM0QsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyx3Q0FBd0MsQ0FBQztRQUM3RSxJQUFJLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RELENBQUM7OzBHQWhlVSxhQUFhOzhHQUFiLGFBQWEsY0FGWixNQUFNOzJGQUVQLGFBQWE7a0JBSHpCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEhlYWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBnZXRkaXNjb3VudEFsbFJxLCBEaXNjb3VudFJxLCBEaXNjb3VudFVwZGF0ZVJxLCBJT2J0YWluQWxsQ291cnNld2FsbGV0LCBJQXNzaWduUmVxdWVzdFJxLCBJT2J0YWluQXZhaWxhYmxlQ291cnNlUnMsIElHZXRDb2RCeVBheW1lbnRQbGFuUnEsIElVcGRhdGVBbW91bnRDb2RQYXltZW50c1JxLCBJUGFyYW1zVXBkYXRlRGF0ZUNvZFBheW1lbnRzUnEsIElDYW5jZWxTdHVkZW50UmVjZWlwdFJxLCBJQ2FuY2VsbGVkUmVjZWlwdEJ5RGF0ZVJxLCBJUGF5bWVudHNSZWNlaXZlZEJ5VXNlclJxLCBJT2J0YWluQ291cnNlQnlDb29kRGlmZlBhcmFtUnEsIE5hbWVDb21tb25FeHBlbnNlcywgSU9idGFpblBheW1lbnRUcmFuSGlzdG9yeVJxLCBJT2J0YWluU3R1ZGVudFBheW1lbnRCeURpZmZQYXJhbVJxLCBJbmZvQ2FzaENsb3NpbmdScSwgSWNhc2hDbG9zaW5nRGF0ZVJxLCBJY2FzaENsb3NpbmdScSwgSXBheW1lbnRCaWxsRWdyZXNzUnEsIEluY29tZXNBbmRFZ3Jlc3NScSwgSU9iYXRpbkRldGFpbGVkSW5jb21lQnlVc2VyQW5kRGF0ZVJxLCBJT2JhdGluQmFsYWNlc0J5Q29vZGluYXRvclJxLCBTZW5kRW1haWxQYXltZW50LFNlbmRFbWFpbFBheW1lbnRDYW5jZWxsYXRpb25SUywgSVBheW1lbnRDb3JyZWxhdGl2ZVJxLCBJT2J0YWluR2F0ZXdheVBheW1lbnRSZWNvcmRScSwgSVVwZGF0ZUVwYXljb1BheW1lbnRScSwgSUVsZWN0cm9uaWNJbnZvaWNlUlMgfSBmcm9tICcuLi8uLi9tb2RlbHMvYnVkZ2V0L2J1ZGdldC5tb2RlbCc7XHJcbmltcG9ydCB7IElGdWxsQ29kU3R1ZGVudE92ZXJkdWVCeUNvb3JkaW5hdG9yUnEsIElQYXltZW50T3ZlcmR1ZUJ5Q29vcmRpbmF0b3JDb3Vyc2VScSwgSVBheW1lbnRPdmVyZHVlQnlDb29yZGluYXRvclJxLCBJUGF5bWVudFJlZmVyZW5jZVJxLCBJVHJhbnNmZXIsIElUcmFuc2ZlckNyZWF0ZVJxLCBJVHJhbnNmZXJEZWxldGVScSwgSVRyYW5zZmVyR2V0QWxsUnEsIElUcmFuc2ZlckdldFJxLCBJVHJhbnNmZXJTZWFyY2hScSwgSVRyYW5zZmVyU3RhdHVzVXBkYXRlUnEsIElUcmFuc2ZlclVwZGF0ZVJxLCBQYXltZW50QmlsbFJxLCBQYXltZW50QmlsbFJxMiwgUHJpY2VCeVR5cGVTZXJ2aWNlUnEgfSBmcm9tICcuLi8uLi9tb2RlbHMvcGF5bWVudC9wYXltZW50LXJxLm1vZGVsJztcclxuaW1wb3J0IHsgSWdldENvdXJzZXNGaW5pc2hBbmR1bmFzc2lnbmVkUnEgfSBmcm9tICcuLi8uLi9tb2RlbHMvcmVwb3J0cy9yZXBvcnRzLm1vZGVsJztcclxuaW1wb3J0IHsgSVBUR2VuZXJhbFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlLWVudmlyb21lbnRzJztcclxuaW1wb3J0IHsgSUNvZFBheW1lbnRScSB9IGZyb20gJy4uLy4uL21vZGVscy9jb2QvY29kLXJxLm1vZGVsJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEJ1ZGdldFNlcnZpY2UgZXh0ZW5kcyBJUFRHZW5lcmFsU2VydmljZXtcclxuXHJcbiAgcHJpdmF0ZSBTRVJWSUNFX1VSTCA9ICdidWRnZXQvYXBpLyc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCkge1xyXG4gICAgc3VwZXIoKTtcclxuICAgIHRoaXMuU0VSVklDRV9VUkwgPSB0aGlzLmJhc2VVcmwoKSArIHRoaXMuU0VSVklDRV9VUkw7XHJcbiAgfVxyXG5cclxuICBnZXRBbGxEaXNjb3VudCh1c2VyOiBnZXRkaXNjb3VudEFsbFJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2Rpc2NvdW50cy9jb3Vwb24vYWxsJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHVzZXIpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG4gIGNyZWF0ZURpc2NvdW50KHBhcmFtczogRGlzY291bnRScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9kaXNjb3VudC9jb3Vwb24vY3JlYXRlJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG4gIHVwZGF0ZURpc2NvdW50KHBhcmFtczogRGlzY291bnRVcGRhdGVScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9kaXNjb3VudC9jb3Vwb24vdXBkYXRlJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBnZXRQYXltZW50U3R1ZGVudHNCeUNvZGUoY29kZVN0dWRlbnQ6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L3BheW1lbnQvY29kL3N0dWRlbnQvYnkvY29kZS8nICsgY29kZVN0dWRlbnQ7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG4gIGdldFBheW1lbnRXYWxsZXRCeUNhbXB1cyhjb2RlQ2FtcHVzOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9wYXltZW50L3dhbGxldC9ieS9jYW1wdXMvJyArIGNvZGVDYW1wdXM7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG4gIHBheW1lbnRCaWxsRHVlcyhwYXJhbXM6IFBheW1lbnRCaWxsUnEyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3BheW1lbnQvYmlsbC9yZWdpc3Rlci9kdWVzJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBwYXltZW50QmlsbFNlcnZpY2VzKHBhcmFtczogUGF5bWVudEJpbGxScTIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvcGF5bWVudC9iaWxsL3JlZ2lzdGVyL3NlcnZpY2VzJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBnZXRQYXltZW50QmlsbEFsbCgpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9wYXltZW50L2JpbGwvY2FuY2VsZWQvYWxsJztcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0UGF5bWVudEJpbGxCeUNvZGUoY29kZVBheW1lbnQ6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAgJ2dldC9wYXltZW50L2JpbGwvY2FuY2VsZWQvYnkvY29kZS8nICsgY29kZVBheW1lbnQ7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG4gIGdldFBheW1lbnRCaWxsQnlTdHVkZW50KGNvZGVTdHVkZW50OiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgICdnZXQvcGF5bWVudC9iaWxsL2NhbmNlbGVkL2J5L3N0dWRlbnQvJyArIGNvZGVTdHVkZW50O1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRQYXltZW50QmlsbEJ5UmVmZXJlbmNlKHJlZmVyZW5jZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvcGF5bWVudC9iaWxsL2NhbmNlbGVkL2J5L3JlZmVyZW5jZS8nICsgcmVmZXJlbmNlO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuXHJcbiAgZ2V0UHJpY2VCeVR5cGVTZXJ2aWNlKHBhcmFtczogUHJpY2VCeVR5cGVTZXJ2aWNlUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvb2J0YWluL3ByaWNlL2J5L3R5cGUvc2VydmljZSc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgb2J0YWluQ291cnNlc0J5Q29vcmRpbmF0b3IocGFyYW1zOiBJT2J0YWluQWxsQ291cnNld2FsbGV0KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2NvdXJzZS93YWxsZXQvdXNlci9ieS9jb29yZGluYXRvcic7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgZ2V0V2FsbGV0QnlDb2RlVXNlciAoY29kZVVzZXI6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L3dhbGxldC9ieS9jb2RlL3VzZXIvJyArIGNvZGVVc2VyO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG4gIGdldHBheW1lbnRCaWxsQnlXYWxsZXRDb2RlIChjb2RlV2FsbGV0OiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9vYnRhaW4vcGF5bWVudC9iaWxsL2J5L3dhbGxldHMvYnkvJyArIGNvZGVXYWxsZXQ7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcbiAgZ2V0cGF5bWVudEJpbGxJbmNvbWUgKGNvZGVXYWxsZXQ6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L3BheW1lbnQvYmlsbC93YWxsZXRzL2NvZGUvZmlsdGVyL2luY29tZS8nICsgY29kZVdhbGxldDtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuICBnZXRwYXltZW50QmlsbEVncmVzcyAoY29kZVdhbGxldDogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvcGF5bWVudC9iaWxsL3dhbGxldHMvY29kZS9maWx0ZXIvZWdyZXNzLycgKyBjb2RlV2FsbGV0O1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBnZXRQYXltZW50T3ZlcmR1ZVN0dWRlbnQoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICAnZ2V0L3BheW1lbnQvb3ZlcmR1ZS9hbGwvc3R1ZGVudCc7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG4gIGdldERheVBheW1lbnRPdmVyZHVlU3R1ZGVudChjb2RlU3R1ZGVudDogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvZGF5L3BheW1lbnQvb3ZlcmR1ZS9zdHVkZW50L2J5L2NvZGUvJyArIGNvZGVTdHVkZW50O1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRQYXltZW50T3ZlcmR1ZUNvdXJzZUJ5Q29vcmRpbmF0b3IocGFyYW1zOiBJUGF5bWVudE92ZXJkdWVCeUNvb3JkaW5hdG9yUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvcGF5bWVudC9vdmVyZHVlL2NvdXJzZS9ieS9jb29yZGluYXRvcic7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgZ2V0UGF5bWVudE92ZXJkdWVTdHVkZW50QnlDb29yZGluYXRvcihwYXJhbXM6IElQYXltZW50T3ZlcmR1ZUJ5Q29vcmRpbmF0b3JScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9wYXltZW50L292ZXJkdWUvc3R1ZGVudC9ieS9jb29kaW5hdG9yJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBnZXRQYXltZW50T3ZlcmR1ZVN0dWRlbnRCeUNvb3JkaW5hdG9yQW5kQ291cnNlQ29kZShwYXJhbXM6IElQYXltZW50T3ZlcmR1ZUJ5Q29vcmRpbmF0b3JDb3Vyc2VScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9wYXltZW50L292ZXJkdWUvc3R1ZGVudC9ieS9jb29kaW5hdG9yY291cnNlJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBnZXRPYnRhaW5Db2RTdHVkZW50QnlDb29yZGluYXRvcihwYXJhbXM6IElGdWxsQ29kU3R1ZGVudE92ZXJkdWVCeUNvb3JkaW5hdG9yUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvb2J0YWluL2NvZC9zdHVuZGVudC9ieS9jb29yZGluYXRvcic7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q291cnNlc0ZpbmlzaEFuZHVuYXNzaWduZWQocGFyYW1zOiBJZ2V0Q291cnNlc0ZpbmlzaEFuZHVuYXNzaWduZWRScSk6IE9ic2VydmFibGU8YW55PntcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvY291cnNlL2J5L3VzZXIvYnVkZ2V0JztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICAvLyBBc3NpbmdDb3Vyc2UocGFyYW1zOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gIC8vICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvY291cnNlL2J5L2NvZGUvdXNlci9idWRnZXQvYXNzaWduJztcclxuICAvLyAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgLy8gICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgLy8gfVxyXG4gIEFzc2luZ0NvdXJzZShwYXJhbXM6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnb2J0YWluL2NvdXJzZS9hc3NpZ24vZGV0YWlsL2J5L2FkdmlzZXIvYnVkZ2V0JztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBBc3NpbmdDb3Vyc2VzKHBhcmFtczogSUFzc2lnblJlcXVlc3RScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9jb3Vyc2UvYnkvdXNlci9idWRnZXQvYXNzaWduJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBvYnRhaW5BbGxBdmFpbGFibGVDb3Vyc2VzQnlTdHVkZW50KHBhcmFtczogSU9idGFpbkF2YWlsYWJsZUNvdXJzZVJzKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9hbGwvYXZhaWxhYmxlL2NvdXJzZXMvYnkvc3R1ZGVudCc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgb2J0YWluT2JzZXJ2YXRpb25CeUNvZFN0dWRlbnQocGFyYW1zOiBJRnVsbENvZFN0dWRlbnRPdmVyZHVlQnlDb29yZGluYXRvclJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9vYnNlcnZhcmlvbi9ieS9jb2Qvc3R1ZGV0JztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBhZG1pblN0dWRlbnRCeUNvb3JkaW5hdG9yKHBhcmFtczogSUZ1bGxDb2RTdHVkZW50T3ZlcmR1ZUJ5Q29vcmRpbmF0b3JScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9hZG1pbi9zdHVkZW50L2J5L2Nvb3JkaW5hdG9yJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBnZXRDb2RieVBheW1lbnRQbGFuUnEocGFyYW1zOiBJR2V0Q29kQnlQYXltZW50UGxhblJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9jb2Qvc3R1bmRlbnQvcGF5bWVudHMvYnkvY29kZS91c2VyJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBVcGRhdGVBbW91bnRDb2RQYXltZW50cyhwYXJhbXM6IElVcGRhdGVBbW91bnRDb2RQYXltZW50c1JxKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2NoYW5nZS9hbW91bnQvY29kL3BheW1lbnRzJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBVcGRhdGVEYXRlQ29kUGF5bWVudHMocGFyYW1zOiBJUGFyYW1zVXBkYXRlRGF0ZUNvZFBheW1lbnRzUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3B1dC9jaGFuZ2UvZGF0ZS9wYXltZW50L2NvZC9ieS9jb2QnO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIG9idGFpblBheW1lbnRSZWNlaXB0QnlDb2RlIChjb2RlUmVjZWlwdDogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvb2J0YWluL3BheW1lbnQvcmVjZWlwdC9ieS9jb2RlLycgKyBjb2RlUmVjZWlwdDtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgb2J0YWluUGF5bWVudHNGb3JTdHVkZW50Q29kZSAoY29kZVN0dWRlbnQ6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L29idGFpbi9wYXltZW50cy9mb3Ivc3R1ZGVudC9jb2RlLycgKyBjb2RlU3R1ZGVudDtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgb2J0YWluU3R1ZGVudFBheW1lbnRzQnlHcm91cGluZ0NvZCAoY29kZVN0dWRlbnQ6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L3N0dWRlbnQvcGF5bWVudHMvYnkvZ3JvdXBpbmcvY29kLycgKyBjb2RlU3R1ZGVudDtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgb2J0YWluUmVjZWlwdEJ5Q29kZSAoY29kZVJlY2VpcHQ6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L3JlY2VpcHQvYnkvY29kZS8nICsgY29kZVJlY2VpcHQ7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIG9idGFpblBheW1lbnRzRm9yUmVjZWlwdENvZGUgKGNvZGVTdHVkZW50OiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9vYnRhaW4vcGF5bWVudHMvZm9yL3JlY2VpcHQvY29kZS8nICsgY29kZVN0dWRlbnQ7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIGNhbmVsU3R1ZGVudFJlY2VpcHQocGFyYW1zOiBJQ2FuY2VsU3R1ZGVudFJlY2VpcHRScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9jYW5jZWwvc3R1ZGVudC9yZWNlaXB0JztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBnZXRDYW5jZWxsZWRSZWNlaXB0c0J5RGF0ZShwYXJhbXM6IElDYW5jZWxsZWRSZWNlaXB0QnlEYXRlUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvY2FuY2VsbGVkL3JlY2VpcHRzL2J5L2RhdGUnO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIG9idGFpblBheW1lbnRyZWNlaXZlZEJ5VXNlcihwYXJhbXM6IElQYXltZW50c1JlY2VpdmVkQnlVc2VyUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvb2J0YWluL3BheW1lbnRzL3JlY2VpdmVkL2J5L3VzZXInO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIGdldFRvdGFsQ2FzaFJlY2VpcHRzQnlEYXRlQW5kVXNlcihwYXJhbXM6IElQYXltZW50c1JlY2VpdmVkQnlVc2VyUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvdG90YWwvY2FzaC9yZWNlaXB0cy9ieS9kYXRlL2FuZC91c2VyJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBvYnRhaW5Db3Vyc2VzQnlDb29yZEFuZERpZmZQYXJhbShwYXJhbXM6IElPYnRhaW5Db3Vyc2VCeUNvb2REaWZmUGFyYW1ScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnb2J0YWluL2NvdXJzZS93YWxsZXQvYnkvY29vcmRpbmF0b3IvZGlmZmV0ZW50L3BhcmFtJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBnZXRBbGxDb21tb25FeHBlbnNlcygpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9jb21tb24vZXhwZW5zZXMvYWxsJztcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuICBjcmVhdGVDb21tbW9uRXhwZW5zZXMocGFyYW06IE5hbWVDb21tb25FeHBlbnNlcyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9jb21tb24vZXhwZW5zZXMvY3JlYXRlJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcbiAgb2J0YWluQ29kQW5kU3RhdHVzQXBwcm92ZWRMZXZlbEJ5R3JvdXAocGFyYW06IE5hbWVDb21tb25FeHBlbnNlcyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnb2J0YWluL3N0dWRlbnQvc3RhdHVzL2FwcHJvdmVkL2J5L2dyb3VwJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIG9idGFpblN0dWRlbnRQYXltZW50VHJhbnNhY3Rpb25IaXN0b3J5QnlDb3Vyc2UocGFyYW06IElPYnRhaW5QYXltZW50VHJhbkhpc3RvcnlScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnb2J0YWluL3N0dWRlbnQvcGF5bWVudC90cmFuc2FjdGlvbi9oaXN0b3J5L2J5L2NvdXJzZSc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBvYnRhaW5QYXltZW50VHJhbnNhY3Rpb25IaXN0b3J5QnlDb2QocGFyYW06IElPYnRhaW5QYXltZW50VHJhbkhpc3RvcnlScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnb2J0YWluL3BheW1lbnQvdHJhbnNhY3Rpb24vaGlzdG9yeS9ieS9jb2QnO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW0pO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgb2J0YWluU3R1ZGVudFBheW1lbnRCeURpZmZlcmVudFBhcmFtZXRlcihwYXJhbTogSU9idGFpblN0dWRlbnRQYXltZW50QnlEaWZmUGFyYW1ScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnb2J0YWluL3N0dWRlbnQvcGF5bWVudC9ieS9kaWZmZXJlbnQvcGFyYW1ldGVycyc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBjcmVhdGVFZ3Jlc3MocGFyYW06IElwYXltZW50QmlsbEVncmVzc1JxKTogT2JzZXJ2YWJsZTxhbnk+e1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvcGF5bWVudC9iaWxsL3JlZ2lzdGVyL2VncmVzcyc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG4gIGdldENhdGVnb3J5KCk6IE9ic2VydmFibGU8YW55PntcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvdHlwZS9zdXBwbGllci9hbGwnO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG4gIGNyZWF0ZUNhc2hDbG9zaW5nKHBhcmFtOiBJY2FzaENsb3NpbmdScSk6IE9ic2VydmFibGU8YW55PntcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3BheW1lbnQvYmlsbC9jbG9zZS9jYXNoJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuICBzZWFyY2hDb21tb25FeHBlbnNlcyhuYW1lOnN0cmluZyk6IE9ic2VydmFibGU8YW55PntcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArJ2dldC9zZWFyY2gvY29tbW9uL2V4cGVuc2VzLycgKyBuYW1lO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG4gIGdldFVzZXJzQ2FzaENsb3NpbmcoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3BheW1lbnQvYmlsbC9jbG9zZS9jYXNoL2J5L3VzZXInO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRDYXNoQ2xvc2luZ0RheShjb2RlOm51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKydwb3N0L3BheW1lbnQvYmlsbC9jbG9zZS9jYXNoL2J5L2RheS9jb2RldXNlci8nICsgY29kZTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuICBnZXRDYXNoQ2xvc2luZ01vbnRoKGNvZGU6bnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCsgJ3Bvc3QvcGF5bWVudC9iaWxsL2Nsb3NlL2Nhc2gvYnkvbW9udGgvY29kZXVzZXIvJyArIGNvZGU7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcbiAgZ2V0Q2FzaENsb3NpbmdZZWFyKGNvZGU6bnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3BheW1lbnQvYmlsbC9jbG9zZS9jYXNoL2J5L3llYXIvY29kZXVzZXIvJyArIGNvZGU7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcbiAgZ2V0SW5mb0Nhc2hDbG9zaW5nQnlDb2RlKHBhcmFtOkluZm9DYXNoQ2xvc2luZ1JxKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3BheW1lbnQvYmlsbC9jbG9zZS9jYXNoL2J5L2NvZGUnO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW0pO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q2FzaENsb3NpbmdEYXRlKHBhcmFtOkljYXNoQ2xvc2luZ0RhdGVScSk6IE9ic2VydmFibGU8YW55PntcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3BheW1lbnQvYmlsbC9jbG9zZS9jYXNoL2J5L2RhdGUvcmFuZ2UnO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW0pO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuICBleHBvcnRPYnRhaW5TdHVkZW50UGF5bWVudFRyYW5zYWN0aW9uSGlzdG9yeUJ5Q291cnNlKHBhcmFtOiBJT2J0YWluUGF5bWVudFRyYW5IaXN0b3J5UnEpOiBPYnNlcnZhYmxlPGFueT57XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZXhwb3J0L2V4Y2VsL2RhdGEvcGF5bWVudC90cmFuc2FjdGlvbi9oaXN0b3J5L2J5L2NvdXJzZSc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG4gIGdldFRvdGFsQ2FzaEluY29tZUVncmVzcyhwYXJhbTogSW5jb21lc0FuZEVncmVzc1JxKTogT2JzZXJ2YWJsZTxhbnk+e1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvdG90YWwvY2FzaC9yZWNlaXB0cy9pbmNvbWVzL2VncmVzcyc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBvYmF0aW5CYWxhY2VzQnlDb29kaW5hdG9yKHBhcmFtczogSU9iYXRpbkJhbGFjZXNCeUNvb2RpbmF0b3JScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnb2J0YWluL2FjY291bnRzL2FuZC9iYWxhbmNlcy9ieS9jb29kaW5hdG9yJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBvYmF0aW5EZXRhaWxlZEluY29tZUJ5VXNlckFuZERhdGUocGFyYW1zOiBJT2JhdGluRGV0YWlsZWRJbmNvbWVCeVVzZXJBbmREYXRlUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ29idGFpbi9kZXRhaWxlZC9pbmNvbWUvcmVwb3J0L2J5L2Fkdmlzb3InO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIGV4cG9ydEluY29tZUV4cGVuc2VIaXN0b3J5RGF0YShwYXJhbXM6IElPYmF0aW5EZXRhaWxlZEluY29tZUJ5VXNlckFuZERhdGVScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZXhwb3J0L2luY29tZS9leHBlbnNlL2hpc3RvcnkvZGF0YSc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgb2J0YWluQWxsUGF5bWVudEJpbGxDYW5jZWxlZEJ5U3R1ZGVudChjb2RlU3R1ZGVudDogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdvYnRhaW4vYWxsL3BheW1lbnQvYmlsbC9jYW5jZWxsZWQvYnkvc3R1ZGVudC8nICsgY29kZVN0dWRlbnQ7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG4gIGdldFBheW1lbnRJbmZvQnlSZWZlcmVuY2UocGFyYW1zOiBJUGF5bWVudFJlZmVyZW5jZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3BheW1lbnQvYmlsbC9ieS9yZWZlcmVuY2UnO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIG9idGFpblBheW1lbnRzQnlDb2QocGFyYW06SUNvZFBheW1lbnRScSk6T2JzZXJ2YWJsZTxhbnk+e1xyXG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9vYnRhaW4vcGF5bWVudHMvYnkvY29kJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIG9idGFpblBheW1lbnRzTWFkZUJ5RGF0ZXMocGFyYW1zOiBJQ2FuY2VsbGVkUmVjZWlwdEJ5RGF0ZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdvYnRhaW4vcGF5bWVudHMvbWFkZS9ieS9kYXRlcyc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgc2VuZEVtYWlsUGF5bWVudChwYXJhbXM6IFNlbmRFbWFpbFBheW1lbnQpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvc2VuZC9lbWFpbC9wYXltZW50JztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBzZW5kRW1haWxQYXltZW50Q2FuY2VsbGF0aW9uKHBhcmFtczogU2VuZEVtYWlsUGF5bWVudENhbmNlbGxhdGlvblJTKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3NlbmQvZW1haWwvcGF5bWVudC9jYW5jZWxsYXRpb24nO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxufVxyXG5cclxuICBnZXRBbGxUcmFuc2ZlcnMocGFyYW1zOiBJVHJhbnNmZXJHZXRBbGxScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3RyYW5zZmVycy9hbGwnO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG5cclxuICBnZXRUcmFuc2ZlckJ5Q29kZShwYXJhbXM6IElUcmFuc2ZlckdldFJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvdHJhbnNmZXJzL3NwZWNpZmljJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICAvLyBjcmVhdGVUcmFuc2ZlcihwYXJhbXM6IElUcmFuc2ZlckNyZWF0ZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAvLyAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvdHJhbnNmZXJzL2NyZWF0ZSc7XHJcbiAgLy8gICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gIC8vICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIC8vIH1cclxuXHJcbiAgY3JlYXRlVHJhbnNmZXIocGFyYW1zOiBJVHJhbnNmZXJDcmVhdGVScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3RyYW5zZmVycy9jcmVhdGUnO1xyXG5cclxuICAgIGNvbnN0IGZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKCk7XHJcbiAgICBmb3JtRGF0YS5hcHBlbmQoJ3BhcmFtc1t0b2tlbl0nLCBwYXJhbXMudG9rZW4pO1xyXG4gICAgZm9ybURhdGEuYXBwZW5kKCdwYXJhbXNbdHJhbnNmZXJfYW1vdW50XScsIHBhcmFtcy50cmFuc2Zlcl9hbW91bnQudG9TdHJpbmcoKSk7XHJcbiAgICBmb3JtRGF0YS5hcHBlbmQoJ3BhcmFtc1tiYW5rX2NvZGVdJywgcGFyYW1zLmJhbmtfY29kZS50b1N0cmluZygpKTtcclxuICAgIGZvcm1EYXRhLmFwcGVuZCgncGFyYW1zW3RyYW5zZmVyX2RhdGVdJywgcGFyYW1zLnRyYW5zZmVyX2RhdGUpOyAvLyBhaG9yYSBzdHJpbmdcclxuICAgIGZvcm1EYXRhLmFwcGVuZCgncGFyYW1zW3JlZmVyZW5jZV9udW1iZXJdJywgcGFyYW1zLnJlZmVyZW5jZV9udW1iZXIpO1xyXG5cclxuICAgIC8vIFNpIHNlIHRpZW5lIHVuYSBpbWFnZW4sIHNlIGFncmVnYSBhbCBmb3JtRGF0YVxyXG4gICAgaWYgKHBhcmFtcy5pbWFnZSkge1xyXG4gICAgICBmb3JtRGF0YS5hcHBlbmQoJ3BhcmFtc1tpbWFnZV0nLCBwYXJhbXMuaW1hZ2UsIHBhcmFtcy5pbWFnZS5uYW1lKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBObyBsbGFtZXMgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKSBuaSB1c2VzIHRoaXMuaHR0cE9wdGlvbnNcclxuICAgIC8vIERlamEgcXVlIGVsIG5hdmVnYWRvciBtYW5lamUgbG9zIGVuY2FiZXphZG9zIHBhcmEgZWwgbXVsdGlwYXJ0L2Zvcm0tZGF0YS5cclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCBmb3JtRGF0YSk7XHJcbiAgfVxyXG5cclxuXHJcbiAgdXBkYXRlVHJhbnNmZXIocGFyYW1zOiBJVHJhbnNmZXJVcGRhdGVScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3RyYW5zZmVycy91cGRhdGUnO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIHVwZGF0ZVRyYW5zZmVyU3RhdHVzKHBhcmFtczogSVRyYW5zZmVyU3RhdHVzVXBkYXRlUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC90cmFuc2ZlcnMvdXBkYXRlJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBkZWxldGVUcmFuc2ZlcihwYXJhbXM6IElUcmFuc2ZlckRlbGV0ZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvdHJhbnNmZXJzL2RlbGV0ZSc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgc2VhcmNoVHJhbnNmZXIocGFyYW1zOiBJVHJhbnNmZXJTZWFyY2hScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3RyYW5zZmVyL3NlYXJjaCc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgZXhwb3J0UGF5bWVudENvcnJlbGF0aXZlZUhpc3RvcnlEYXRhKHBhcmFtOklQYXltZW50Q29ycmVsYXRpdmVScSk6T2JzZXJ2YWJsZTxhbnk+e1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2V4cG9ydC9wYXltZW50cy9jb3JyZWxhdGl2ZS9oaXN0b3J5L2RhdGEnO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW0pO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgb2J0YWluUGF5bWVudHNNYWRlQnlGaWx0ZXIocGFyYW06IElQYXltZW50Q29ycmVsYXRpdmVScSk6IE9ic2VydmFibGU8YW55PntcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdvYnRhaW4vcGF5bWVudC9jb3JyZWxhdGl2ZXMvYnkvZmlsdGVyJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIG9idGFpbkdhdGV3YXlQYXltZW50UmVjb3JkKHBhcmFtOiBJT2J0YWluR2F0ZXdheVBheW1lbnRSZWNvcmRScSk6IE9ic2VydmFibGU8YW55PntcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdvYnRhaW4vZ2F0ZXdheS9wYXltZW50L3JlY29yZCc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBlcGF5Y29QYXltZW50VXBkYXRlKHBhcmFtOiBJVXBkYXRlRXBheWNvUGF5bWVudFJxKTogT2JzZXJ2YWJsZTxhbnk+e1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2VwYXljby9wYXltZW50L3VwZGF0ZSc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBleHBvcnRFbGVjdHJvbmljSW52b2ljZUhpc3RvcnlEYXRhKHBhcmFtOklFbGVjdHJvbmljSW52b2ljZVJTKTogT2JzZXJ2YWJsZTxhbnk+e1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2V4cG9ydC9lbGVjdHJvbmljL2ludm9pY2UvaGlzdG9yeS9kYXRhJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
|
|
434
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVkZ2V0LXNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29yZS9zZXJ2aWNlcy9idWRnZXQtc2VydmljZS9idWRnZXQtc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSzNDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7QUFNM0QsTUFBTSxPQUFPLGFBQWMsU0FBUSxpQkFBaUI7SUFJbEQsWUFBb0IsSUFBZ0I7UUFDbEMsS0FBSyxFQUFFLENBQUM7UUFEVSxTQUFJLEdBQUosSUFBSSxDQUFZO1FBRjVCLGdCQUFXLEdBQUcsYUFBYSxDQUFDO1FBSWxDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDdkQsQ0FBQztJQUVELGNBQWMsQ0FBQyxJQUFzQjtRQUNuQyxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLDJCQUEyQixDQUFDO1FBQ2hFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUNELGNBQWMsQ0FBQyxNQUFrQjtRQUMvQixJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLDZCQUE2QixDQUFDO1FBQ2xFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUNELGNBQWMsQ0FBQyxN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RUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQzs7MEdBaGZVLGFBQWE7OEdBQWIsYUFBYSxjQUZaLE1BQU07MkZBRVAsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwSGVhZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGdldGRpc2NvdW50QWxsUnEsIERpc2NvdW50UnEsIERpc2NvdW50VXBkYXRlUnEsIElPYnRhaW5BbGxDb3Vyc2V3YWxsZXQsIElBc3NpZ25SZXF1ZXN0UnEsIElPYnRhaW5BdmFpbGFibGVDb3Vyc2VScywgSUdldENvZEJ5UGF5bWVudFBsYW5ScSwgSVVwZGF0ZUFtb3VudENvZFBheW1lbnRzUnEsIElQYXJhbXNVcGRhdGVEYXRlQ29kUGF5bWVudHNScSwgSUNhbmNlbFN0dWRlbnRSZWNlaXB0UnEsIElDYW5jZWxsZWRSZWNlaXB0QnlEYXRlUnEsIElQYXltZW50c1JlY2VpdmVkQnlVc2VyUnEsIElPYnRhaW5Db3Vyc2VCeUNvb2REaWZmUGFyYW1ScSwgTmFtZUNvbW1vbkV4cGVuc2VzLCBJT2J0YWluUGF5bWVudFRyYW5IaXN0b3J5UnEsIElPYnRhaW5TdHVkZW50UGF5bWVudEJ5RGlmZlBhcmFtUnEsIEluZm9DYXNoQ2xvc2luZ1JxLCBJY2FzaENsb3NpbmdEYXRlUnEsIEljYXNoQ2xvc2luZ1JxLCBJcGF5bWVudEJpbGxFZ3Jlc3NScSwgSW5jb21lc0FuZEVncmVzc1JxLCBJT2JhdGluRGV0YWlsZWRJbmNvbWVCeVVzZXJBbmREYXRlUnEsIElPYmF0aW5CYWxhY2VzQnlDb29kaW5hdG9yUnEsIFNlbmRFbWFpbFBheW1lbnQsU2VuZEVtYWlsUGF5bWVudENhbmNlbGxhdGlvblJTLCBJUGF5bWVudENvcnJlbGF0aXZlUnEsIElPYnRhaW5HYXRld2F5UGF5bWVudFJlY29yZFJxLCBJVXBkYXRlRXBheWNvUGF5bWVudFJxLCBJRWxlY3Ryb25pY0ludm9pY2VSUyB9IGZyb20gJy4uLy4uL21vZGVscy9idWRnZXQvYnVkZ2V0Lm1vZGVsJztcclxuaW1wb3J0IHsgSUZ1bGxDb2RTdHVkZW50T3ZlcmR1ZUJ5Q29vcmRpbmF0b3JScSwgSVBheW1lbnRPdmVyZHVlQnlDb29yZGluYXRvckNvdXJzZVJxLCBJUGF5bWVudE92ZXJkdWVCeUNvb3JkaW5hdG9yUnEsIElQYXltZW50UmVmZXJlbmNlUnEsIElUcmFuc2ZlciwgSVRyYW5zZmVyQXNzaWduSW1hZ2UsIElUcmFuc2ZlckNyZWF0ZVJxLCBJVHJhbnNmZXJEZWxldGVScSwgSVRyYW5zZmVyR2V0QWxsUnEsIElUcmFuc2ZlckdldFJxLCBJVHJhbnNmZXJTZWFyY2hScSwgSVRyYW5zZmVyU2hvd0ltYWdlUnEsIElUcmFuc2ZlclN0YXR1c1VwZGF0ZVJxLCBJVHJhbnNmZXJVcGRhdGVScSwgUGF5bWVudEJpbGxScSwgUGF5bWVudEJpbGxScTIsIFByaWNlQnlUeXBlU2VydmljZVJxIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3BheW1lbnQvcGF5bWVudC1ycS5tb2RlbCc7XHJcbmltcG9ydCB7IElnZXRDb3Vyc2VzRmluaXNoQW5kdW5hc3NpZ25lZFJxIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3JlcG9ydHMvcmVwb3J0cy5tb2RlbCc7XHJcbmltcG9ydCB7IElQVEdlbmVyYWxTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZS1lbnZpcm9tZW50cyc7XHJcbmltcG9ydCB7IElDb2RQYXltZW50UnEgfSBmcm9tICcuLi8uLi9tb2RlbHMvY29kL2NvZC1ycS5tb2RlbCc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBCdWRnZXRTZXJ2aWNlIGV4dGVuZHMgSVBUR2VuZXJhbFNlcnZpY2V7XHJcblxyXG4gIHByaXZhdGUgU0VSVklDRV9VUkwgPSAnYnVkZ2V0L2FwaS8nO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgICB0aGlzLlNFUlZJQ0VfVVJMID0gdGhpcy5iYXNlVXJsKCkgKyB0aGlzLlNFUlZJQ0VfVVJMO1xyXG4gIH1cclxuXHJcbiAgZ2V0QWxsRGlzY291bnQodXNlcjogZ2V0ZGlzY291bnRBbGxScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9kaXNjb3VudHMvY291cG9uL2FsbCc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyh1c2VyKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuICBjcmVhdGVEaXNjb3VudChwYXJhbXM6IERpc2NvdW50UnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvZGlzY291bnQvY291cG9uL2NyZWF0ZSc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuICB1cGRhdGVEaXNjb3VudChwYXJhbXM6IERpc2NvdW50VXBkYXRlUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvZGlzY291bnQvY291cG9uL3VwZGF0ZSc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgZ2V0UGF5bWVudFN0dWRlbnRzQnlDb2RlKGNvZGVTdHVkZW50OiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9wYXltZW50L2NvZC9zdHVkZW50L2J5L2NvZGUvJyArIGNvZGVTdHVkZW50O1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRQYXltZW50V2FsbGV0QnlDYW1wdXMoY29kZUNhbXB1czogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvcGF5bWVudC93YWxsZXQvYnkvY2FtcHVzLycgKyBjb2RlQ2FtcHVzO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBwYXltZW50QmlsbER1ZXMocGFyYW1zOiBQYXltZW50QmlsbFJxMik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9wYXltZW50L2JpbGwvcmVnaXN0ZXIvZHVlcyc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgcGF5bWVudEJpbGxTZXJ2aWNlcyhwYXJhbXM6IFBheW1lbnRCaWxsUnEyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3BheW1lbnQvYmlsbC9yZWdpc3Rlci9zZXJ2aWNlcyc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgZ2V0UGF5bWVudEJpbGxBbGwoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvcGF5bWVudC9iaWxsL2NhbmNlbGVkL2FsbCc7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcblxyXG4gIGdldFBheW1lbnRCaWxsQnlDb2RlKGNvZGVQYXltZW50OiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgICdnZXQvcGF5bWVudC9iaWxsL2NhbmNlbGVkL2J5L2NvZGUvJyArIGNvZGVQYXltZW50O1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRQYXltZW50QmlsbEJ5U3R1ZGVudChjb2RlU3R1ZGVudDogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICAnZ2V0L3BheW1lbnQvYmlsbC9jYW5jZWxlZC9ieS9zdHVkZW50LycgKyBjb2RlU3R1ZGVudDtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0UGF5bWVudEJpbGxCeVJlZmVyZW5jZShyZWZlcmVuY2U6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L3BheW1lbnQvYmlsbC9jYW5jZWxlZC9ieS9yZWZlcmVuY2UvJyArIHJlZmVyZW5jZTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuXHJcblxyXG4gIGdldFByaWNlQnlUeXBlU2VydmljZShwYXJhbXM6IFByaWNlQnlUeXBlU2VydmljZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9wcmljZS9ieS90eXBlL3NlcnZpY2UnO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIG9idGFpbkNvdXJzZXNCeUNvb3JkaW5hdG9yKHBhcmFtczogSU9idGFpbkFsbENvdXJzZXdhbGxldCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9jb3Vyc2Uvd2FsbGV0L3VzZXIvYnkvY29vcmRpbmF0b3InO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIGdldFdhbGxldEJ5Q29kZVVzZXIgKGNvZGVVc2VyOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC93YWxsZXQvYnkvY29kZS91c2VyLycgKyBjb2RlVXNlcjtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuICBnZXRwYXltZW50QmlsbEJ5V2FsbGV0Q29kZSAoY29kZVdhbGxldDogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvb2J0YWluL3BheW1lbnQvYmlsbC9ieS93YWxsZXRzL2J5LycgKyBjb2RlV2FsbGV0O1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG4gIGdldHBheW1lbnRCaWxsSW5jb21lIChjb2RlV2FsbGV0OiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9wYXltZW50L2JpbGwvd2FsbGV0cy9jb2RlL2ZpbHRlci9pbmNvbWUvJyArIGNvZGVXYWxsZXQ7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcbiAgZ2V0cGF5bWVudEJpbGxFZ3Jlc3MgKGNvZGVXYWxsZXQ6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L3BheW1lbnQvYmlsbC93YWxsZXRzL2NvZGUvZmlsdGVyL2VncmVzcy8nICsgY29kZVdhbGxldDtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgZ2V0UGF5bWVudE92ZXJkdWVTdHVkZW50KCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAgJ2dldC9wYXltZW50L292ZXJkdWUvYWxsL3N0dWRlbnQnO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXREYXlQYXltZW50T3ZlcmR1ZVN0dWRlbnQoY29kZVN0dWRlbnQ6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2RheS9wYXltZW50L292ZXJkdWUvc3R1ZGVudC9ieS9jb2RlLycgKyBjb2RlU3R1ZGVudDtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0UGF5bWVudE92ZXJkdWVDb3Vyc2VCeUNvb3JkaW5hdG9yKHBhcmFtczogSVBheW1lbnRPdmVyZHVlQnlDb29yZGluYXRvclJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3BheW1lbnQvb3ZlcmR1ZS9jb3Vyc2UvYnkvY29vcmRpbmF0b3InO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIGdldFBheW1lbnRPdmVyZHVlU3R1ZGVudEJ5Q29vcmRpbmF0b3IocGFyYW1zOiBJUGF5bWVudE92ZXJkdWVCeUNvb3JkaW5hdG9yUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvcGF5bWVudC9vdmVyZHVlL3N0dWRlbnQvYnkvY29vZGluYXRvcic7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgZ2V0UGF5bWVudE92ZXJkdWVTdHVkZW50QnlDb29yZGluYXRvckFuZENvdXJzZUNvZGUocGFyYW1zOiBJUGF5bWVudE92ZXJkdWVCeUNvb3JkaW5hdG9yQ291cnNlUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvcGF5bWVudC9vdmVyZHVlL3N0dWRlbnQvYnkvY29vZGluYXRvcmNvdXJzZSc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgZ2V0T2J0YWluQ29kU3R1ZGVudEJ5Q29vcmRpbmF0b3IocGFyYW1zOiBJRnVsbENvZFN0dWRlbnRPdmVyZHVlQnlDb29yZGluYXRvclJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9jb2Qvc3R1bmRlbnQvYnkvY29vcmRpbmF0b3InO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIGdldENvdXJzZXNGaW5pc2hBbmR1bmFzc2lnbmVkKHBhcmFtczogSWdldENvdXJzZXNGaW5pc2hBbmR1bmFzc2lnbmVkUnEpOiBPYnNlcnZhYmxlPGFueT57XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2NvdXJzZS9ieS91c2VyL2J1ZGdldCc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgLy8gQXNzaW5nQ291cnNlKHBhcmFtczogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAvLyAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2NvdXJzZS9ieS9jb2RlL3VzZXIvYnVkZ2V0L2Fzc2lnbic7XHJcbiAgLy8gICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gIC8vICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIC8vIH1cclxuICBBc3NpbmdDb3Vyc2UocGFyYW1zOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ29idGFpbi9jb3Vyc2UvYXNzaWduL2RldGFpbC9ieS9hZHZpc2VyL2J1ZGdldCc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgQXNzaW5nQ291cnNlcyhwYXJhbXM6IElBc3NpZ25SZXF1ZXN0UnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvY291cnNlL2J5L3VzZXIvYnVkZ2V0L2Fzc2lnbic7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgb2J0YWluQWxsQXZhaWxhYmxlQ291cnNlc0J5U3R1ZGVudChwYXJhbXM6IElPYnRhaW5BdmFpbGFibGVDb3Vyc2VScyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9vYnRhaW4vYWxsL2F2YWlsYWJsZS9jb3Vyc2VzL2J5L3N0dWRlbnQnO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIG9idGFpbk9ic2VydmF0aW9uQnlDb2RTdHVkZW50KHBhcmFtczogSUZ1bGxDb2RTdHVkZW50T3ZlcmR1ZUJ5Q29vcmRpbmF0b3JScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9vYnRhaW4vb2JzZXJ2YXJpb24vYnkvY29kL3N0dWRldCc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgYWRtaW5TdHVkZW50QnlDb29yZGluYXRvcihwYXJhbXM6IElGdWxsQ29kU3R1ZGVudE92ZXJkdWVCeUNvb3JkaW5hdG9yUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvYWRtaW4vc3R1ZGVudC9ieS9jb29yZGluYXRvcic7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q29kYnlQYXltZW50UGxhblJxKHBhcmFtczogSUdldENvZEJ5UGF5bWVudFBsYW5ScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9vYnRhaW4vY29kL3N0dW5kZW50L3BheW1lbnRzL2J5L2NvZGUvdXNlcic7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgVXBkYXRlQW1vdW50Q29kUGF5bWVudHMocGFyYW1zOiBJVXBkYXRlQW1vdW50Q29kUGF5bWVudHNScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9jaGFuZ2UvYW1vdW50L2NvZC9wYXltZW50cyc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgVXBkYXRlRGF0ZUNvZFBheW1lbnRzKHBhcmFtczogSVBhcmFtc1VwZGF0ZURhdGVDb2RQYXltZW50c1JxKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwdXQvY2hhbmdlL2RhdGUvcGF5bWVudC9jb2QvYnkvY29kJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBvYnRhaW5QYXltZW50UmVjZWlwdEJ5Q29kZSAoY29kZVJlY2VpcHQ6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L29idGFpbi9wYXltZW50L3JlY2VpcHQvYnkvY29kZS8nICsgY29kZVJlY2VpcHQ7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIG9idGFpblBheW1lbnRzRm9yU3R1ZGVudENvZGUgKGNvZGVTdHVkZW50OiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9vYnRhaW4vcGF5bWVudHMvZm9yL3N0dWRlbnQvY29kZS8nICsgY29kZVN0dWRlbnQ7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIG9idGFpblN0dWRlbnRQYXltZW50c0J5R3JvdXBpbmdDb2QgKGNvZGVTdHVkZW50OiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9zdHVkZW50L3BheW1lbnRzL2J5L2dyb3VwaW5nL2NvZC8nICsgY29kZVN0dWRlbnQ7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIG9idGFpblJlY2VpcHRCeUNvZGUgKGNvZGVSZWNlaXB0OiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9yZWNlaXB0L2J5L2NvZGUvJyArIGNvZGVSZWNlaXB0O1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBvYnRhaW5QYXltZW50c0ZvclJlY2VpcHRDb2RlIChjb2RlU3R1ZGVudDogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvb2J0YWluL3BheW1lbnRzL2Zvci9yZWNlaXB0L2NvZGUvJyArIGNvZGVTdHVkZW50O1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBjYW5lbFN0dWRlbnRSZWNlaXB0KHBhcmFtczogSUNhbmNlbFN0dWRlbnRSZWNlaXB0UnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvY2FuY2VsL3N0dWRlbnQvcmVjZWlwdCc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q2FuY2VsbGVkUmVjZWlwdHNCeURhdGUocGFyYW1zOiBJQ2FuY2VsbGVkUmVjZWlwdEJ5RGF0ZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2NhbmNlbGxlZC9yZWNlaXB0cy9ieS9kYXRlJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBvYnRhaW5QYXltZW50cmVjZWl2ZWRCeVVzZXIocGFyYW1zOiBJUGF5bWVudHNSZWNlaXZlZEJ5VXNlclJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9wYXltZW50cy9yZWNlaXZlZC9ieS91c2VyJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBnZXRUb3RhbENhc2hSZWNlaXB0c0J5RGF0ZUFuZFVzZXIocGFyYW1zOiBJUGF5bWVudHNSZWNlaXZlZEJ5VXNlclJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3RvdGFsL2Nhc2gvcmVjZWlwdHMvYnkvZGF0ZS9hbmQvdXNlcic7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgb2J0YWluQ291cnNlc0J5Q29vcmRBbmREaWZmUGFyYW0ocGFyYW1zOiBJT2J0YWluQ291cnNlQnlDb29kRGlmZlBhcmFtUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ29idGFpbi9jb3Vyc2Uvd2FsbGV0L2J5L2Nvb3JkaW5hdG9yL2RpZmZldGVudC9wYXJhbSc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgZ2V0QWxsQ29tbW9uRXhwZW5zZXMoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvY29tbW9uL2V4cGVuc2VzL2FsbCc7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcbiAgY3JlYXRlQ29tbW1vbkV4cGVuc2VzKHBhcmFtOiBOYW1lQ29tbW9uRXhwZW5zZXMpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvY29tbW9uL2V4cGVuc2VzL2NyZWF0ZSc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG4gIG9idGFpbkNvZEFuZFN0YXR1c0FwcHJvdmVkTGV2ZWxCeUdyb3VwKHBhcmFtOiBOYW1lQ29tbW9uRXhwZW5zZXMpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ29idGFpbi9zdHVkZW50L3N0YXR1cy9hcHByb3ZlZC9ieS9ncm91cCc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBvYnRhaW5TdHVkZW50UGF5bWVudFRyYW5zYWN0aW9uSGlzdG9yeUJ5Q291cnNlKHBhcmFtOiBJT2J0YWluUGF5bWVudFRyYW5IaXN0b3J5UnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ29idGFpbi9zdHVkZW50L3BheW1lbnQvdHJhbnNhY3Rpb24vaGlzdG9yeS9ieS9jb3Vyc2UnO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW0pO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgb2J0YWluUGF5bWVudFRyYW5zYWN0aW9uSGlzdG9yeUJ5Q29kKHBhcmFtOiBJT2J0YWluUGF5bWVudFRyYW5IaXN0b3J5UnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ29idGFpbi9wYXltZW50L3RyYW5zYWN0aW9uL2hpc3RvcnkvYnkvY29kJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIG9idGFpblN0dWRlbnRQYXltZW50QnlEaWZmZXJlbnRQYXJhbWV0ZXIocGFyYW06IElPYnRhaW5TdHVkZW50UGF5bWVudEJ5RGlmZlBhcmFtUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ29idGFpbi9zdHVkZW50L3BheW1lbnQvYnkvZGlmZmVyZW50L3BhcmFtZXRlcnMnO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW0pO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgY3JlYXRlRWdyZXNzKHBhcmFtOiBJcGF5bWVudEJpbGxFZ3Jlc3NScSk6IE9ic2VydmFibGU8YW55PntcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3BheW1lbnQvYmlsbC9yZWdpc3Rlci9lZ3Jlc3MnO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW0pO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuICBnZXRDYXRlZ29yeSgpOiBPYnNlcnZhYmxlPGFueT57XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L3R5cGUvc3VwcGxpZXIvYWxsJztcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuICBjcmVhdGVDYXNoQ2xvc2luZyhwYXJhbTogSWNhc2hDbG9zaW5nUnEpOiBPYnNlcnZhYmxlPGFueT57XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9wYXltZW50L2JpbGwvY2xvc2UvY2FzaCc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCx0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcbiAgc2VhcmNoQ29tbW9uRXhwZW5zZXMobmFtZTpzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT57XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKydnZXQvc2VhcmNoL2NvbW1vbi9leHBlbnNlcy8nICsgbmFtZTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuICBnZXRVc2Vyc0Nhc2hDbG9zaW5nKCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9wYXltZW50L2JpbGwvY2xvc2UvY2FzaC9ieS91c2VyJztcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q2FzaENsb3NpbmdEYXkoY29kZTpudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsncG9zdC9wYXltZW50L2JpbGwvY2xvc2UvY2FzaC9ieS9kYXkvY29kZXVzZXIvJyArIGNvZGU7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcclxuICB9XHJcbiAgZ2V0Q2FzaENsb3NpbmdNb250aChjb2RlOm51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwrICdwb3N0L3BheW1lbnQvYmlsbC9jbG9zZS9jYXNoL2J5L21vbnRoL2NvZGV1c2VyLycgKyBjb2RlO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG4gIGdldENhc2hDbG9zaW5nWWVhcihjb2RlOm51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9wYXltZW50L2JpbGwvY2xvc2UvY2FzaC9ieS95ZWFyL2NvZGV1c2VyLycgKyBjb2RlO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG4gIGdldEluZm9DYXNoQ2xvc2luZ0J5Q29kZShwYXJhbTpJbmZvQ2FzaENsb3NpbmdScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9wYXltZW50L2JpbGwvY2xvc2UvY2FzaC9ieS9jb2RlJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIGdldENhc2hDbG9zaW5nRGF0ZShwYXJhbTpJY2FzaENsb3NpbmdEYXRlUnEpOiBPYnNlcnZhYmxlPGFueT57XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9wYXltZW50L2JpbGwvY2xvc2UvY2FzaC9ieS9kYXRlL3JhbmdlJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcbiAgZXhwb3J0T2J0YWluU3R1ZGVudFBheW1lbnRUcmFuc2FjdGlvbkhpc3RvcnlCeUNvdXJzZShwYXJhbTogSU9idGFpblBheW1lbnRUcmFuSGlzdG9yeVJxKTogT2JzZXJ2YWJsZTxhbnk+e1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2V4cG9ydC9leGNlbC9kYXRhL3BheW1lbnQvdHJhbnNhY3Rpb24vaGlzdG9yeS9ieS9jb3Vyc2UnO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW0pO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuICBnZXRUb3RhbENhc2hJbmNvbWVFZ3Jlc3MocGFyYW06IEluY29tZXNBbmRFZ3Jlc3NScSk6IE9ic2VydmFibGU8YW55PntcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3RvdGFsL2Nhc2gvcmVjZWlwdHMvaW5jb21lcy9lZ3Jlc3MnO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW0pO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgb2JhdGluQmFsYWNlc0J5Q29vZGluYXRvcihwYXJhbXM6IElPYmF0aW5CYWxhY2VzQnlDb29kaW5hdG9yUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ29idGFpbi9hY2NvdW50cy9hbmQvYmFsYW5jZXMvYnkvY29vZGluYXRvcic7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgb2JhdGluRGV0YWlsZWRJbmNvbWVCeVVzZXJBbmREYXRlKHBhcmFtczogSU9iYXRpbkRldGFpbGVkSW5jb21lQnlVc2VyQW5kRGF0ZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdvYnRhaW4vZGV0YWlsZWQvaW5jb21lL3JlcG9ydC9ieS9hZHZpc29yJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBleHBvcnRJbmNvbWVFeHBlbnNlSGlzdG9yeURhdGEocGFyYW1zOiBJT2JhdGluRGV0YWlsZWRJbmNvbWVCeVVzZXJBbmREYXRlUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2V4cG9ydC9pbmNvbWUvZXhwZW5zZS9oaXN0b3J5L2RhdGEnO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIG9idGFpbkFsbFBheW1lbnRCaWxsQ2FuY2VsZWRCeVN0dWRlbnQoY29kZVN0dWRlbnQ6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnb2J0YWluL2FsbC9wYXltZW50L2JpbGwvY2FuY2VsbGVkL2J5L3N0dWRlbnQvJyArIGNvZGVTdHVkZW50O1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRQYXltZW50SW5mb0J5UmVmZXJlbmNlKHBhcmFtczogSVBheW1lbnRSZWZlcmVuY2VScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9wYXltZW50L2JpbGwvYnkvcmVmZXJlbmNlJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBvYnRhaW5QYXltZW50c0J5Q29kKHBhcmFtOklDb2RQYXltZW50UnEpOk9ic2VydmFibGU8YW55PntcclxuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvb2J0YWluL3BheW1lbnRzL2J5L2NvZCc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBvYnRhaW5QYXltZW50c01hZGVCeURhdGVzKHBhcmFtczogSUNhbmNlbGxlZFJlY2VpcHRCeURhdGVScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnb2J0YWluL3BheW1lbnRzL21hZGUvYnkvZGF0ZXMnO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIHNlbmRFbWFpbFBheW1lbnQocGFyYW1zOiBTZW5kRW1haWxQYXltZW50KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3NlbmQvZW1haWwvcGF5bWVudCc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgc2VuZEVtYWlsUGF5bWVudENhbmNlbGxhdGlvbihwYXJhbXM6IFNlbmRFbWFpbFBheW1lbnRDYW5jZWxsYXRpb25SUyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9zZW5kL2VtYWlsL3BheW1lbnQvY2FuY2VsbGF0aW9uJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbn1cclxuXHJcbiAgZ2V0QWxsVHJhbnNmZXJzKHBhcmFtczogSVRyYW5zZmVyR2V0QWxsUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC90cmFuc2ZlcnMvYWxsJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuXHJcbiAgZ2V0VHJhbnNmZXJCeUNvZGUocGFyYW1zOiBJVHJhbnNmZXJHZXRScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3RyYW5zZmVycy9zcGVjaWZpYyc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgLy8gY3JlYXRlVHJhbnNmZXIocGFyYW1zOiBJVHJhbnNmZXJDcmVhdGVScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgLy8gICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3RyYW5zZmVycy9jcmVhdGUnO1xyXG4gIC8vICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcclxuICAvLyAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICAvLyB9XHJcblxyXG4gIGNyZWF0ZVRyYW5zZmVyKHBhcmFtczogSVRyYW5zZmVyQ3JlYXRlUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC90cmFuc2ZlcnMvY3JlYXRlJztcclxuXHJcbiAgICBjb25zdCBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xyXG4gICAgZm9ybURhdGEuYXBwZW5kKCdwYXJhbXNbdG9rZW5dJywgcGFyYW1zLnRva2VuKTtcclxuICAgIGZvcm1EYXRhLmFwcGVuZCgncGFyYW1zW3RyYW5zZmVyX2Ftb3VudF0nLCBwYXJhbXMudHJhbnNmZXJfYW1vdW50LnRvU3RyaW5nKCkpO1xyXG4gICAgZm9ybURhdGEuYXBwZW5kKCdwYXJhbXNbYmFua19jb2RlXScsIHBhcmFtcy5iYW5rX2NvZGUudG9TdHJpbmcoKSk7XHJcbiAgICBmb3JtRGF0YS5hcHBlbmQoJ3BhcmFtc1t0cmFuc2Zlcl9kYXRlXScsIHBhcmFtcy50cmFuc2Zlcl9kYXRlKTsgLy8gYWhvcmEgc3RyaW5nXHJcbiAgICBmb3JtRGF0YS5hcHBlbmQoJ3BhcmFtc1tyZWZlcmVuY2VfbnVtYmVyXScsIHBhcmFtcy5yZWZlcmVuY2VfbnVtYmVyKTtcclxuXHJcbiAgICBcclxuICAgIGlmIChwYXJhbXMuaW1hZ2UpIHtcclxuICAgICAgZm9ybURhdGEuYXBwZW5kKCdwYXJhbXNbaW1hZ2VdJywgcGFyYW1zLmltYWdlLCBwYXJhbXMuaW1hZ2UubmFtZSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgZm9ybURhdGEpO1xyXG4gIH1cclxuXHJcbiAgc2hvd1RyYW5zZmVySW1hZ2UocGFyYW1zOiBJVHJhbnNmZXJTaG93SW1hZ2VScSk6IE9ic2VydmFibGU8QmxvYj4ge1xyXG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC90cmFuc2Zlci9zaG93LWltYWdlJztcclxuICAgIGNvbnN0IGJvZHkgPSB7IGNvZGU6IHBhcmFtcy5jb2RlIH07XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEJsb2I+KHNlcnZpY2VVcmwsIGJvZHksIHtcclxuICAgICAgcmVzcG9uc2VUeXBlOiAnYmxvYicgYXMgJ2pzb24nLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBhc3NpZ25JbWFnZVRvVHJhbnNmZXIocGFyYW1zOiBJVHJhbnNmZXJBc3NpZ25JbWFnZSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3RyYW5zZmVyL2Fzc2lnbi1pbWFnZSc7XHJcbiAgICBjb25zdCBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xyXG4gICAgZm9ybURhdGEuYXBwZW5kKCd0b2tlbicsIHBhcmFtcy50b2tlbik7XHJcbiAgICBmb3JtRGF0YS5hcHBlbmQoJ2NvZGUnLCBwYXJhbXMuY29kZS50b1N0cmluZygpKTtcclxuICAgIGZvcm1EYXRhLmFwcGVuZCgnaW1hZ2UnLCBwYXJhbXMuaW1hZ2UsIHBhcmFtcy5pbWFnZS5uYW1lKTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgZm9ybURhdGEpO1xyXG4gIH1cclxuXHJcblxyXG4gIHVwZGF0ZVRyYW5zZmVyKHBhcmFtczogSVRyYW5zZmVyVXBkYXRlUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC90cmFuc2ZlcnMvdXBkYXRlJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICB1cGRhdGVUcmFuc2ZlclN0YXR1cyhwYXJhbXM6IElUcmFuc2ZlclN0YXR1c1VwZGF0ZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvdHJhbnNmZXJzL3VwZGF0ZSc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgZGVsZXRlVHJhbnNmZXIocGFyYW1zOiBJVHJhbnNmZXJEZWxldGVScSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3RyYW5zZmVycy9kZWxldGUnO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIHNlYXJjaFRyYW5zZmVyKHBhcmFtczogSVRyYW5zZmVyU2VhcmNoUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC90cmFuc2Zlci9zZWFyY2gnO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIGV4cG9ydFBheW1lbnRDb3JyZWxhdGl2ZWVIaXN0b3J5RGF0YShwYXJhbTpJUGF5bWVudENvcnJlbGF0aXZlUnEpOk9ic2VydmFibGU8YW55PntcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdleHBvcnQvcGF5bWVudHMvY29ycmVsYXRpdmUvaGlzdG9yeS9kYXRhJztcclxuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIG9idGFpblBheW1lbnRzTWFkZUJ5RmlsdGVyKHBhcmFtOiBJUGF5bWVudENvcnJlbGF0aXZlUnEpOiBPYnNlcnZhYmxlPGFueT57XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnb2J0YWluL3BheW1lbnQvY29ycmVsYXRpdmVzL2J5L2ZpbHRlcic7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBvYnRhaW5HYXRld2F5UGF5bWVudFJlY29yZChwYXJhbTogSU9idGFpbkdhdGV3YXlQYXltZW50UmVjb3JkUnEpOiBPYnNlcnZhYmxlPGFueT57XHJcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnb2J0YWluL2dhdGV3YXkvcGF5bWVudC9yZWNvcmQnO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW0pO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgZXBheWNvUGF5bWVudFVwZGF0ZShwYXJhbTogSVVwZGF0ZUVwYXljb1BheW1lbnRScSk6IE9ic2VydmFibGU8YW55PntcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdlcGF5Y28vcGF5bWVudC91cGRhdGUnO1xyXG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW0pO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgZXhwb3J0RWxlY3Ryb25pY0ludm9pY2VIaXN0b3J5RGF0YShwYXJhbTpJRWxlY3Ryb25pY0ludm9pY2VSUyk6IE9ic2VydmFibGU8YW55PntcclxuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdleHBvcnQvZWxlY3Ryb25pYy9pbnZvaWNlL2hpc3RvcnkvZGF0YSc7XHJcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbSk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
|
|
@@ -6198,12 +6198,24 @@ class BudgetService extends IPTGeneralService {
|
|
|
6198
6198
|
formData.append('params[bank_code]', params.bank_code.toString());
|
|
6199
6199
|
formData.append('params[transfer_date]', params.transfer_date); // ahora string
|
|
6200
6200
|
formData.append('params[reference_number]', params.reference_number);
|
|
6201
|
-
// Si se tiene una imagen, se agrega al formData
|
|
6202
6201
|
if (params.image) {
|
|
6203
6202
|
formData.append('params[image]', params.image, params.image.name);
|
|
6204
6203
|
}
|
|
6205
|
-
|
|
6206
|
-
|
|
6204
|
+
return this.http.post(serviceUrl, formData);
|
|
6205
|
+
}
|
|
6206
|
+
showTransferImage(params) {
|
|
6207
|
+
const serviceUrl = this.SERVICE_URL + 'post/transfer/show-image';
|
|
6208
|
+
const body = { code: params.code };
|
|
6209
|
+
return this.http.post(serviceUrl, body, {
|
|
6210
|
+
responseType: 'blob',
|
|
6211
|
+
});
|
|
6212
|
+
}
|
|
6213
|
+
assignImageToTransfer(params) {
|
|
6214
|
+
const serviceUrl = this.SERVICE_URL + 'post/transfer/assign-image';
|
|
6215
|
+
const formData = new FormData();
|
|
6216
|
+
formData.append('token', params.token);
|
|
6217
|
+
formData.append('code', params.code.toString());
|
|
6218
|
+
formData.append('image', params.image, params.image.name);
|
|
6207
6219
|
return this.http.post(serviceUrl, formData);
|
|
6208
6220
|
}
|
|
6209
6221
|
updateTransfer(params) {
|