iptdevs-design-system 3.2.166 → 3.2.168
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/commercial/commercial.model.mjs +1 -1
- package/esm2020/lib/core/services/commercial-service/comercial.service.mjs +11 -1
- package/fesm2015/iptdevs-design-system.mjs +10 -0
- package/fesm2015/iptdevs-design-system.mjs.map +1 -1
- package/fesm2020/iptdevs-design-system.mjs +10 -0
- package/fesm2020/iptdevs-design-system.mjs.map +1 -1
- package/lib/core/models/commercial/commercial.model.d.ts +11 -0
- package/lib/core/services/commercial-service/comercial.service.d.ts +3 -1
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVyY2lhbC5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2Rlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb3JlL21vZGVscy9jb21tZXJjaWFsL2NvbW1lcmNpYWwubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElDb2RCeXN0dWRlbnRzUnMgfSBmcm9tIFwiLi4vY29kL2NvZC1ycS5tb2RlbFwiO1xuaW1wb3J0IHsgTWVzc2FnZSwgSUNvdXJzZVR5cGVScyB9IGZyb20gXCIuLi9wYXJhbWV0ZXJzL3BhcmFtZXRlcnMtcnMubW9kZWxcIjtcbmltcG9ydCB7IElJcHRVc2VyRnVsbERhdGFScSB9IGZyb20gXCIuLi91c2VyL3VzZXItcnEubW9kZWxcIjtcbmltcG9ydCB7SVBheW1lbnRCaWxsR3JhcGhSc30gZnJvbSBcIi4uL2J1ZGdldC9idWRnZXQubW9kZWxcIjtcblxuZXhwb3J0IGludGVyZmFjZSBDb2RQcmljZXMge1xuICBjb2RlOiBudW1iZXIsXG4gIG5hbWU6IHN0cmluZyxcbiAgYWdyZWVtZW50OiBudW1iZXIsXG4gIGVucm9sbG1lbnQ6IG51bWJlcixcbiAgbm9ybWFsX3ByaWNlOiBudW1iZXIsXG4gIGZpbmFuY2VkX3ByaWNlOiBudW1iZXIsXG4gIGZlZV9udW1iZXI6IG51bWJlcixcbiAgcXVvdGFfcHJpY2U6IG51bWJlclxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBhcmVudEJ5Q29kZVJxIHtcbiAgcGFyZW50X2NvZGU6IG51bWJlciB8IG51bGw7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWRpY0luZm9CeUNvZGVScSB7XG4gIGFkaWNfaW5mbzogbnVtYmVyIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb2RBZGl0aW9uYWxJbmZvcm1hdGlvblJxIHtcbiAgY29kZTogICAgICAgICAgICAgICBudW1iZXI7XG4gIGdyYWRlOiAgICAgICAgICAgICAgc3RyaW5nIHwgbnVsbDtcbiAgcHJvZ3JhbV9uYW1lOiAgICAgICBzdHJpbmcgfCBudWxsO1xuICBpbnN0aXR1dGlvbl9uYW1lOiAgIHN0cmluZyB8IG51bGw7XG4gIG9jY3VwYXRpb246ICAgICAgICAgc3RyaW5nIHwgbnVsbDtcbiAgcGFyZW50X29jY3VwYXRpb246ICBzdHJpbmcgfCBudWxsO1xuICBkaXNhYmlsaXR5OiAgICAgICAgIHN0cmluZyB8IG51bGw7XG4gIGhlYWx0aF9yZWdpbWVuOiAgICAgc3RyaW5nIHwgbnVsbDtcbiAgbWFya2V0aW5nX3JlYXNvbnM6ICBudW1iZXI7XG4gIHN0dWR5X3JlYXNvbnM6ICAgICAgbnVtYmVyO1xuICBvYnNlcnZhdGlvbjogICAgICAgIHN0cmluZyB8IG51bGw7XG4gIGhlYWRfb2ZfdGhlX2ZhbWlseTogbnVtYmVyO1xuICBhZnJvX2Rlc2NlbmRhbnQ6ICAgIG51bWJlcjtcbiAgZGlzcGxhY2VkOiAgICAgICAgICBudW1iZXI7XG4gIGluZGlnZW5vdXM6ICAgICAgICAgbnVtYmVyO1xuICByZWluc2VydGVkOiAgICAgICAgIG51bWJlcjtcbiAgcm9tX3BvcHVsYXRpb246ICAgICBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29kUGFyZW50UnEge1xuICBjb2RlOiAgICAgICAgICAgICBudW1iZXI7XG4gIG5hbWU6ICAgICAgICAgICAgIHN0cmluZztcbiAgbGFzdF9uYW1lOiAgICAgICAgc3RyaW5nO1xuICBpZF9jYXJkX3R5cGU6ICAgICBudW1iZXI7XG4gIGlkX2NhcmQ6ICAgICAgICAgIHN0cmluZztcbiAgcGhvbmVfaW5kaWNhdGl2ZTogbnVtYmVyO1xuICBwaG9uZV9udW1iZXI6ICAgICBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29kUHJpY2VzUnEge1xuICBhZ3JlZW1lbnQ6ICAgICAgICAgIG51bWJlcjtcbiAgcGF5bWVudF9tZXRob2Q6ICAgICBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUdvYWxJbnRlcmZhY2VSc3tcbiAgdG9rZW46ICAgICAgICBzdHJpbmc7XG4gIGNvZGU6ICAgICAgICAgbnVtYmVyLFxuICBuYW1lOiAgICAgICAgIHN0cmluZyxcbiAgbW9udGhseV9nb2FsOiBudW1iZXIsXG4gIHdlZWtseV9nb2FsOiAgbnVtYmVyLFxuICBkYWlseV9nb2FsOiAgIG51bWJlcixcbiAgZ29hbF9wZXJpb2Q6ICBEYXRlXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUdvYWxJbnRlcmZhY2VScXtcbiAgdG9rZW46ICAgICAgICBzdHJpbmc7XG4gIG5hbWU6ICAgICAgICAgc3RyaW5nLFxuICBtb250aGx5X2dvYWw6IG51bWJlcixcbiAgd2Vla2x5X2dvYWw6ICBudW1iZXIsXG4gIGRhaWx5X2dvYWw6ICAgbnVtYmVyLFxuICBnb2FsX3BlcmlvZDogIERhdGVcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJR29hbEludGVyZmFjZXtcbiAgY29kZTogICAgICAgICBudW1iZXIsXG4gIG5hbWU6ICAgICAgICAgc3RyaW5nLFxuICBtb250aGx5X2dvYWw6IG51bWJlcixcbiAgd2Vla2x5X2dvYWw6ICBudW1iZXIsXG4gIGRhaWx5X2dvYWw6ICAgbnVtYmVyLFxuICBnb2FsX3BlcmlvZDogIERhdGVcbn1cblxuZXhwb3J0IGludGVyZmFjZSAgRG9jdW1lbnRzUnF7XG4gIGZpbGU6IEZpbGU7XG4gIHVzZXJfYXV0b3I6IG51bWJlcjtcbiAgY29kZV91c2VyOiBudW1iZXI7XG4gIHR5cGVfZG9jdW1lbnQ6IG51bWJlcjtcbiAgdG9rZW46c3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElHZXREb2N1bWVudFN0dWRlbnRScXtcbiAgY29kZV91c2VyOiBudW1iZXI7XG4gIHRva2VuOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHlwZURvY3VtZW50c1Jze1xuICBjb2RlOiBudW1iZXI7XG4gIGNvZGVfbWVkaWE6IElNZWRpYVJzO1xuICBjb2RlX3VzZXI6IG51bWJlcjtcbiAgc3RhdHVzOiBudW1iZXI7XG4gIHR5cGVfZG9jdW1lbnQ6SVR5cGVEb2N1bWVudHNOYW1lUnM7XG5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBJTWVkaWFSc3tcbiAgY29kZTogbnVtYmVyO1xuICBsaW5rOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgdHlwZV9mb3JtOiBudW1iZXI7XG4gIHVzZXJfYXV0b3I6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJVHlwZURvY3VtZW50c05hbWVSc3tcbiAgY29kZTogbnVtYmVyO1xuICBuYW1lOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVJlcG9ydEV4Y2VsUnEge1xuICB0b2tlbjogICAgICAgIHN0cmluZztcbiAgY29kZV9hZHZpc2VyOiBudW1iZXI7XG4gIHN0YXJ0X2RhdGU6ICAgc3RyaW5nO1xuICBmaW5pc2hfZGF0ZTogIHN0cmluZztcbn1cbmV4cG9ydCBpbnRlcmZhY2UgSWFkdmlzZXJzUnEge1xuICBjb2RlOiAgICAgICAgIG51bWJlcjtcbiAgaWRfY2FyZDogICAgICBzdHJpbmc7XG4gIG5hbWU6ICAgICAgICAgc3RyaW5nO1xuICBsYXN0X25hbWU6ICAgIHN0cmluZztcbiAgbmlja19uYW1lOiAgICBudWxsIHwgc3RyaW5nO1xuICBlbWFpbDogICAgICAgIHN0cmluZztcbiAgcGhvbmVfbnVtYmVyOiBzdHJpbmc7XG4gIGdlbmRlcjogICAgICAgbnVtYmVyO1xuICBjaXR5OiAgICAgICAgIHN0cmluZztcbiAgYmlydGhkYXRlOiAgICBzdHJpbmc7XG4gIHJvbGU6ICAgICAgICAgc3RyaW5nO1xuICBzZXJ2aWNlX2hvdXI6IG51bWJlcjtcbiAgZW1haWxfaXB0OiAgICBzdHJpbmc7XG4gIHVwZGF0ZWRfYXQ6ICAgRGF0ZTtcbiAgaWRfY2FyZF90eXBlOiBzdHJpbmc7XG4gIHRva2VuOiAgICAgICAgc3RyaW5nO1xuICB1c2VyX3N0YXR1czogIG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJT2J0YWluUmVmZXJzQnlVc2VyUnEge1xuICB0b2tlbjogICAgICAgc3RyaW5nO1xuICBjb2RlX3JlZmVyczogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElPYnRhaW5SZWZlcnJhbHNCeVVzZXJScyB7XG4gIGlwX2FwcGxpY2FudDogc3RyaW5nO1xuICBzdGF0dXM6ICAgICAgIG51bWJlcjtcbiAgbWVzc2FnZTogICAgICBNZXNzYWdlO1xuICBkYXRhOiAgICAgICAgIElSZWZlcnJhbHNCeVVzZXJSc1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElSZWZlcnJhbHNCeVVzZXJScyB7XG4gIGNvZGU6ICAgICAgICAgICAgICAgICAgICAgIG51bWJlcjtcbiAgYW1vdW50X3BheWFibGU6ICAgICAgICAgICAgbnVtYmVyO1xuICBwYXltZW50X3N0YXR1czogICAgICAgICAgICBudW1iZXI7XG4gIGNvZF9jb2RlOiAgICAgICAgICAgICAgICAgIG51bWJlcjtcbiAgc3R1ZGVudF9jb2RlOiAgICAgICAgICAgICAgbnVtYmVyO1xuICBzdHVkZW50X2lkX2NhcmQ6ICAgICAgICAgICBzdHJpbmc7XG4gIHN0dWRlbnRfcm9sZTogICAgICAgICAgICAgIHN0cmluZztcbiAgc3R1ZGVudF9uYW1lOiAgICAgICAgICAgICAgc3RyaW5nO1xuICBzdHVkZW50X2xhc3RfbmFtZTogICAgICAgICBzdHJpbmc7XG4gIHN0dWRlbnRfcGhvbmVfbnVtYmVyOiAgICAgIHN0cmluZztcbiAgc3R1ZGVudF9lbWFpbDogICAgICAgICAgICAgc3RyaW5nO1xuICBzdHVkZW50X2Vucm9sbG1lbnRfc3RhdHVzOiBzdHJpbmc7XG4gIHN0dWRlbnRfY291cnNlX3R5cGU6ICAgICAgIHN0cmluZztcbiAgc3R1ZGVudF9hZHZpc2VyOiAgICAgICAgICAgc3RyaW5nO1xuICByZWZlcnJlZF9jb2RlOiAgICAgICAgICAgICBudW1iZXI7XG4gIHJlZmVycmVkX2lkX2NhcmQ6ICAgICAgICAgIHN0cmluZztcbiAgcmVmZXJyZWRfcm9sZTogICAgICAgICAgICAgc3RyaW5nO1xuICByZWZlcnJlZF9uYW1lOiAgICAgICAgICAgICBzdHJpbmc7XG4gIHJlZmVycmVkX2xhc3RfbmFtZTogICAgICAgIHN0cmluZztcbiAgcmVmZXJyZWRfcGhvbmVfbnVtYmVyOiAgICAgc3RyaW5nO1xuICByZWZlcnJlZF9lbWFpbDogICAgICAgICAgICBzdHJpbmc7XG59XG5leHBvcnQgaW50ZXJmYWNlIElBc3NpZ25Qb3NpYmxlU3R1ZGVudEZvclZhbHVlUnEge1xuICAgIHRva2VuOiBzdHJpbmcsXG4gICAgY29kZUFkdmlzZXI6bnVtYmVyLFxuICAgIHZhbHVlQXNzaW5nOm51bWJlclxuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUdldENvbnRhY3RzYWR2aXNlclJxIHtcbiAgdG9rZW46ICAgICAgICAgICBzdHJpbmc7XG4gIGNvZGVUeXBlQ29uc3VsdDogbnVtYmVyXG4gIGNvZGVfYWR2aXNlcjogICAgbnVtYmVyO1xuICBzdGFydF9kYXRlOiAgICAgIHN0cmluZztcbiAgZmluaXNoX2RhdGU6ICAgICBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSU9idGFpbkNvZFByaWNlc1JxIHtcbiAgdG9rZW46ICAgICAgICAgICBzdHJpbmc7XG4gIGNvdXJzZV90eXBlOiAgICAgbnVtYmVyO1xuICBhZ3JlZW1lbnQ6ICAgICAgIG51bWJlcjtcbiAgY291cnNlX21vZGFsaXR5OiBudW1iZXI7XG4gIHBheW1lbnRfbWV0aG9kOiAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDb2RQcmljZXNCeVByb2dyYW1ScyB7XG4gIGNvZGU6ICAgICAgICAgICAgbnVtYmVyO1xuICBuYW1lOiAgICAgICAgICAgIHN0cmluZztcbiAgYWdyZWVtZW50OiAgICAgICBudW1iZXI7XG4gIHR5cGVfY291cnNlOiAgICAgbnVtYmVyO1xuICBjb3Vyc2VfbW9kYWxpdHk6IG51bWJlcjtcbiAgZW5yb2xsbWVudDogICAgICBudW1iZXI7XG4gIG5vcm1hbF9wcmljZTogICAgbnVtYmVyO1xuICBmaW5hbmNlZF9wcmljZTogIG51bWJlcjtcbiAgZmVlX251bWJlcjogICAgICBudW1iZXI7XG4gIHF1b3RhX3ByaWNlOiAgICAgbnVtYmVyO1xuICBwYWlkX2xldmVsOiAgICAgIG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQXNzaWduaW5nQWR2aXNvckdvYWxzUnEge1xuICB0b2tlbjogICAgICAgICAgICAgIHN0cmluZztcbiAgY29kZV9nb2FsOiAgICAgICAgICBudW1iZXJcbiAgYXNzaWduX2Fkdmlzb3JzOiAgICBudW1iZXJbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQXNzaWdBZHZpc29yR29hbHNScyB7XG4gIHVzZXI6ICAgbnVtYmVyO1xuICBnb2FsOiAgIG51bWJlcjtcbiAgc3RhdHVzOiBudW1iZXI7XG4gIGNvZGU6ICAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElBZHZpc29yR29hbHNScyB7XG4gIGNvZGU6ICAgbnVtYmVyO1xuICB1c2VyOiAgIG51bWJlcjtcbiAgZ29hbDogICBJR29hbFJzO1xuICBzdGF0dXM6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJR29hbFJzIHtcbiAgY29kZTogICAgICAgICBudW1iZXI7XG4gIG5hbWU6ICAgICAgICAgc3RyaW5nO1xuICBtb250aGx5X2dvYWw6IG51bWJlcjtcbiAgd2Vla2x5X2dvYWw6ICBudW1iZXI7XG4gIGRhaWx5X2dvYWw6ICAgbnVtYmVyO1xuICBnb2FsX3BlcmlvZDogIERhdGU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSU92ZXJhbEdvYWxBZHZpc29yUnMge1xuICB0b3RhbE1vbnRobHlHb2FsOiBudW1iZXI7XG4gIGFsbEdvYWxzQWR2aXNvcjogIElBbGxHb2Fsc0Fkdmlzb3JSc1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElBbGxHb2Fsc0Fkdmlzb3JScyB7XG4gIGNvZGU6ICAgICAgICAgbnVtYmVyO1xuICB1c2VyOiAgICAgICAgIG51bWJlcjtcbiAgZ29hbDogICAgICAgICBudW1iZXI7XG4gIHN0YXR1czogICAgICAgbnVtYmVyO1xuICBuYW1lOiAgICAgICAgIHN0cmluZztcbiAgbW9udGhseV9nb2FsOiBudW1iZXI7XG4gIHdlZWtseV9nb2FsOiAgbnVtYmVyO1xuICBkYWlseV9nb2FsOiAgIG51bWJlcjtcbiAgZ29hbF9wZXJpb2Q6ICBEYXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElSZXBvcnRDb2RGb3JBZHZpc2VyUnEge1xuICB0b2tlbjpzdHJpbmc7XG4gIGNvZGVfYWR2aXNlcjogbnVtYmVyO1xuICBjb2RlVHlwZUNvbnN1bHQ6IG51bWJlcixcbiAgc3RhcnRfZGF0ZTogRGF0ZTtcbiAgZmluaXNoX2RhdGU6IERhdGU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNyZWF0ZVRpY2tldFJlZmVycmFsUnEge1xuICB0b2tlbjogICAgICAgICBzdHJpbmc7XG4gIGNvZGVfcmVmZXJyYWw6IG51bWJlcjtcbiAgY29kZV9jb250ZXN0OiAgbnVtYmVyO1xuICBjb2RlX2F3YXJkOiAgICBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVByaXplc0ZvckNvbnRlc3Qge1xuICBuZXdUaWNrZXQ6ICAgICAgSU5ld1RpY2tldFJzO1xuICB1cGRhdGVSZWZlcnJhbDogSVVwZGF0ZVJlZmVycmFsUnM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSU5ld1RpY2tldFJzIHtcbiAgY29kZV9yZWZlcnJhbF9tYW5hZ2VtZW50OiBudW1iZXI7XG4gIHR5cGVfYXdhcmQ6ICAgICAgICAgICAgICAgbnVtYmVyO1xuICB0eXBlX3RpY2tldDogICAgICAgICAgICAgIG51bWJlcjtcbiAgdXBkYXRlZF9hdDogICAgICAgICAgICAgICBEYXRlO1xuICBjcmVhdGVkX2F0OiAgICAgICAgICAgICAgIERhdGU7XG4gIGNvZGU6ICAgICAgICAgICAgICAgICAgICAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElVcGRhdGVSZWZlcnJhbFJzIHtcbiAgY29kZTogICAgICAgICAgICAgICBudW1iZXI7XG4gIHVzZXJfcmVmZXJyZWQ6ICAgICAgbnVtYmVyO1xuICBjb2RfY29kZTogICAgICAgICAgIG51bWJlcjtcbiAgcGF5bWVudF9zdGF0dXM6ICAgICBudW1iZXI7XG4gIGFtb3VudF9wYXlhYmxlOiAgICAgbnVtYmVyO1xuICB0eXBlX21vdmVtZW50OiAgICAgIG51bGw7XG4gIHRyYW5zYWN0aW9uX251bWJlcjogbnVsbDtcbiAgY29kZV90aWtldDogICAgICAgICBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUF2YWlsYWJsZUNvbnRlc3RzUnMge1xuICBjb250ZXN0OiBJQ29udGVzdFJzO1xuICBwcml6ZXM6ICBJUHJpemVSc1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDb250ZXN0UnMge1xuICBjb2RlOiAgICAgICAgICAgICAgICAgICBudW1iZXI7XG4gIG5hbWU6ICAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgY29tcGV0aXRpb25fc3RhcnRfZGF0ZTogRGF0ZTtcbiAgY29tcGV0aXRpb25fZW5kX2RhdGU6ICAgRGF0ZTtcbiAgdGVybXNfYW5kX2NvbmRpdGlvbnM6ICAgc3RyaW5nO1xuICB1cGRhdGVkX2F0OiAgICAgICAgICAgICBEYXRlO1xuICBjcmVhdGVkX2F0OiAgICAgICAgICAgICBEYXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElQcml6ZVJzIHtcbiAgY29kZV9hd2FyZDogICAgICAgIG51bWJlcjtcbiAgY29kZV90eXBlX3RpY2tldDogIG51bWJlcjtcbiAgYXdhcmRfbmFtZTogICAgICAgIHN0cmluZztcbiAgYXdhcmRfZGVzY3JpcHRpb246IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJUHJpemVScyB7XG4gIGNvZGVfYXdhcmQ6ICAgICAgICBudW1iZXI7XG4gIGNvZGVfdHlwZV90aWNrZXQ6ICBudW1iZXI7XG4gIGF3YXJkX25hbWU6ICAgICAgICBzdHJpbmc7XG4gIGF3YXJkX2Rlc2NyaXB0aW9uOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNvZERldGFpbHNieUFkdmlzZXIgIHtcbiAgdG9rZW46c3RyaW5nO1xuICBjb2RlX2FkdmlzZXI6IG51bWJlcjtcblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElHZXRQb3NpYmxlU3R1ZGVudEJ5RGF0ZVJxIHtcbiAgdG9rZW46ICAgICAgICAgICBzdHJpbmc7XG4gIGNvZGVUeXBlQ29uc3VsdDogbnVtYmVyXG4gIHN0YXJ0X2RhdGU6ICAgICAgc3RyaW5nO1xuICBmaW5pc2hfZGF0ZTogICAgIHN0cmluZztcbn1cbmV4cG9ydCBpbnRlcmZhY2UgSUdldFVzZXJBZHZpc2VyQ29tbWVyY2lhbEJ5VHlwZUFzc2luZ0NvbnRhY3RzUnEge1xuICB0b2tlbjogICAgICAgICAgIHN0cmluZztcbiAgc3RhcnRfZGF0ZTogICAgICBzdHJpbmc7XG4gIGZpbmlzaF9kYXRlOiAgICAgc3RyaW5nO1xuICBjb2RlVHlwZUNvbnN1bHQ6IG51bWJlcjtcbiAgc2VsZWN0ZWR0eXBlQXNzaW5nOm51bWJlcjtcbiAgdmFsdWVBc2luZzogbnVtYmVyO1xufVxuZXhwb3J0IGludGVyZmFjZSBBc3NpbmdDdXN0b21lcnNCeVR5cGVBc3NpbmdDb250YWN0Rm9yQWR2aXNlclJxIHtcbiAgdG9rZW46ICAgICAgICAgICAgICBzdHJpbmc7XG4gIGNvZGVUeXBlQ29uc3VsdDogICAgbnVtYmVyO1xuICBmaW5pc2hfZGF0ZTogICAgICAgIHN0cmluZztcbiAgc2VsZWN0ZWR0eXBlQXNzaW5nOiBudW1iZXI7XG4gIHN0YXJ0X2RhdGU6ICAgICAgICAgc3RyaW5nO1xuICB2YWx1ZUFzaW5nOiAgICAgICAgIG51bWJlcjtcbiAgY29kZUFkdmlzZXI6ICAgICAgICBudW1iZXI7XG4gIGFzc2lnbm1lbnRzOiAgICAgICAgQXNzaWdubWVudFJxW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXNzaWdubWVudFJxIHtcbiAgY29kZTogIG51bWJlcjtcbiAgdmFsdWU6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBnZXRTdW1tYXJ5QnlDb21tZXJjaWFsQWR2aXNvclJxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgc3RhcnRfZGF0ZTogc3RyaW5nO1xuICBlbmRfZGF0ZTogc3RyaW5nO1xuICBpbmNsdWRlX2RldGFpbHM6IGZhbHNlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDcmVhdGVUeXBlUGF5bWVudFJxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgdHlwZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDcmVhdGVDb21taXNzaW9uQXJlYVJxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICBjYW1wdXM/OiBudW1iZXI7XG4gIGFjYWRlbWljX3BsYW4/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUFzc2lnbkNvdXJzZVR5cGVzVG9BcmVhUnEge1xuICB0b2tlbjogc3RyaW5nO1xuICBjb21taXNzaW9uX2FyZWFfY29kZTogbnVtYmVyO1xuICBjb3Vyc2VfdHlwZV9jb2RlczogbnVtYmVyW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNyZWF0ZVBheW1lbnRBcmVhQ29tbWlzc2lvblJxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgYXJlYV9jb3Vyc2U6IG51bWJlcjtcbiAgdHlwZV9wYXltZW50OiBudW1iZXI7XG4gIGFtb3VudDogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDcmVhdGVUeXBlVXNlckNvbW1pc3Npb25ScSB7XG4gIHRva2VuOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgY29uY2VwdF9jb2RlczogbnVtYmVyW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUFzc2lnbkNvbW1pc3Npb25Nb2RlbFRvVXNlclJxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgdXNlcl9jb2RlOiBudW1iZXI7XG4gIHR5cGVfdXNlcl9jb21taXNzaW9uX2NvZGU6IG51bWJlcjtcbiAgZ29hbF9jb2RlPzogbnVtYmVyO1xuICBib251c19hbW91bnQ/OiBudW1iZXI7XG4gIHBlcmNlbnRhZ2VfcmF0ZT86IG51bWJlcjtcbiAgcGFyYW1zOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUdldEFjdGl2ZUNvbW1pc3Npb25Hb2FsRm9yVXNlclJxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgdXNlcl9jb2RlOiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVBheUNvbW1pc3Npb25zUnEge1xuICB0b2tlbjogc3RyaW5nO1xuICB1c2VyX2NvZGVzOiBudW1iZXJbXTtcbiAgc3RhcnRfZGF0ZTogc3RyaW5nO1xuICBlbmRfZGF0ZTogc3RyaW5nO1xuICBub3Rlcz86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJR2V0U3VtbWFyeUJ5Q29tbWVyY2lhbEFkdmlzb3JScSB7XG4gICAgdG9rZW46IHN0cmluZztcbiAgICBzdGFydF9kYXRlPzogc3RyaW5nO1xuICAgIGVuZF9kYXRlPzogc3RyaW5nO1xuICAgIGNhbXB1cz86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJR2V0Q29kU3R1ZGVudERldGFpbHNCeUFkdmlzZXJScSB7XG4gIHRva2VuOiBzdHJpbmc7XG4gIHN0YXJ0X2RhdGU/OiBzdHJpbmc7XG4gIGVuZF9kYXRlPzogc3RyaW5nO1xufVxuXG5cbmV4cG9ydCBpbnRlcmZhY2UgSVRva2VuUnEge1xuICAgIHRva2VuOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVVwZGF0ZVBheW1lbnRBcmVhQ29tbWlzc2lvblJxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgYW1vdW50OiBudW1iZXI7XG4gIHR5cGVfcGF5bWVudF9jb2RlPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDb21taXNzaW9uQ29uZGl0aW9uIHtcbiAgY29kZTogbnVtYmVyO1xuICBrZXk6IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICBkZXNjcmlwdGlvbjogc3RyaW5nIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQWdyZWVtZW50IHtcbiAgY29kZTogbnVtYmVyO1xuICBuYW1lOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUFkZENvbmRpdGlvblRvUnVsZVJxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgY29uZGl0aW9uX2lkOiBudW1iZXI7XG4gIG9wZXJhdG9yOiBzdHJpbmc7XG4gIHZhbHVlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVVwZGF0ZVR5cGVQYXltZW50UnEge1xuICB0b2tlbjogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uOiBzdHJpbmcgfCBudWxsO1xuICB0eXBlOiBzdHJpbmc7XG59XG5cblxuZXhwb3J0IGludGVyZmFjZSBJT2J0UHJlYXNzaWduZWRDb3Vyc2VzQW5kU3R1ZGVudEVucm9sbFJzIHtcbiAgICBzdHVkZW50OiAgICAgICAgICAgICAgICBJSXB0VXNlckZ1bGxEYXRhUnE7XG4gICAgcHJlQXNzaWduZWRDb3Vyc2VzOiAgICAgbnVtYmVyW107XG4gICAgcmVnaXN0cmF0aW9uSW5Qcm9ncmVzczogSVJlZ2lzdHJhdGlvbkluUHJvZ3Jlc3NSc1tdO1xuICAgIGhhc0Vucm9sbG1lbnRzOiAgICAgICAgIGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVJlZ2lzdHJhdGlvbkluUHJvZ3Jlc3NScyB7XG4gICAgY29kZTogICAgICAgICAgICAgICAgICBudW1iZXI7XG4gICAgY291cnNlOiAgICAgICAgICAgICAgICBudW1iZXI7XG4gICAgY291cnNlX3R5cGU6ICAgICAgICAgICBudW1iZXI7XG4gICAgYWdyZWVtZW50OiAgICAgICAgICAgICBudW1iZXI7XG4gICAgZW5nbGlzaF9sZXZlbDogICAgICAgICBudW1iZXI7XG4gICAgc3R1ZGVudDogICAgICAgICAgICAgICBudW1iZXI7XG4gICAgcGFyZW50OiAgICAgICAgICAgICAgICBudW1iZXI7XG4gICAgYWRpdGlvbmFsX2luZm9ybWF0aW9uOiBudW1iZXI7XG4gICAgYWR2aXNlcjogICAgICAgICAgICAgICBudW1iZXI7XG4gICAgY29kX3N0YXR1czogICAgICAgICAgICBudW1iZXI7XG4gICAgY29kX3ByaWNlOiAgICAgICAgICAgICBudW1iZXI7XG4gICAgY29kX3BhaWQ6ICAgICAgICAgICAgICBudW1iZXI7XG4gICAgYWNjZXB0X3Rlcm1zX2NvZGU6ICAgICBudW1iZXIgfCBudWxsO1xuICAgIGNyZWF0ZWRfYXQ6ICAgICAgICAgICAgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElSZW5ld2FsUmVzdWx0UnMge1xuICBzdHVkZW50X2NvZGU6IG51bWJlcjtcbiAgc3R1ZGVudF9uYW1lOiBzdHJpbmc7XG4gIHN0dWRlbnRfaWRfY2FyZDogc3RyaW5nO1xuICBzdGF0dXM6IHN0cmluZztcbiAgZGF0YTogYW55OyAvLyBQdWVkZXMgdGlwYXIgZXN0byBtw6FzIGVzcGVjw61maWNhbWVudGUgc2kgY29ub2NlcyBsYSBlc3RydWN0dXJhIGRlIGRhdGFcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJUmVuZXdhbEVycm9yUnMge1xuICBzdHVkZW50X2NvZGU6IG51bWJlcjtcbiAgc3R1ZGVudF9uYW1lOiBzdHJpbmc7XG4gIHN0dWRlbnRfaWRfY2FyZDogc3RyaW5nO1xuICBzdGF0dXM6IG51bWJlcjtcbiAgbWVzc2FnZTogc3RyaW5nO1xuICB3YXJuaW5nPzogYW55OyAvLyBQdWVkZSBzZXIgdW4gb2JqZXRvIG8gc3RyaW5nIChzZSBwYXJzZWEgc2kgZXMgbmVjZXNhcmlvKVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElFeHRlbmRlZENvZEJ5c3R1ZGVudHNScyBleHRlbmRzIElDb2RCeXN0dWRlbnRzUnMge1xuICBpc19yZW5ld2VkPzogYm9vbGVhbjtcbiAgcmVuZXdhbF9lcnJvcj86IHN0cmluZyB8IG51bGw7XG4gIG5ld19jb2RfZGF0YT86IGFueTtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgSUxvY2FsUmVuZXdhbFJlc3VsdFJzIHtcbiAgc3R1ZGVudF9jb2RlOiBzdHJpbmc7XG4gIHN0dWRlbnRfbmFtZTogc3RyaW5nO1xuICBzdHVkZW50X2lkX2NhcmQ6IHN0cmluZztcbiAgZGF0YTogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElMb2NhbFJlbmV3YWxFcnJvclJzIHtcbiAgc3R1ZGVudF9jb2RlOiBzdHJpbmc7XG4gIHN0dWRlbnRfbmFtZTogc3RyaW5nO1xuICBzdHVkZW50X2lkX2NhcmQ6IHN0cmluZztcbiAgbWVzc2FnZTogc3RyaW5nO1xuICB3YXJuaW5nPzogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElBc3NpZ25TdWJvcmRpbmF0ZVJxIGV4dGVuZHMgSVRva2VuUnEge1xuICBtYW5hZ2VyX2NvZGU6IG51bWJlcjtcbiAgc3Vib3JkaW5hdGVfY29kZTogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElSZW1vdmVTdWJvcmRpbmF0ZVJxIGV4dGVuZHMgSVRva2VuUnEge1xuICBtYW5hZ2VyX2NvZGU6IG51bWJlcjtcbiAgc3Vib3JkaW5hdGVfY29kZTogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElBc3NpZ25TdWJvcmRpbmF0ZXNNYXNzaXZlUnEgZXh0ZW5kcyBJVG9rZW5ScSB7XG4gIG1hbmFnZXJfY29kZTogbnVtYmVyO1xuICBzdWJvcmRpbmF0ZV9jb2RlczogbnVtYmVyW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVVwZGF0ZVR5cGVVc2VyQ29tbWlzc2lvblJxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICBjb25jZXB0X2NvZGVzOiBudW1iZXJbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJUGF5U2VsZWN0ZWRDb21taXNzaW9uc1JxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgdXNlcl9jb2RlOiBudW1iZXI7XG4gIGNvbW1pc3Npb25zX3RvX3BheTogSUNvbW1pc3Npb25zVG9QYXlScVtdO1xuICBvYnNlcnZhdGlvbjogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDb21taXNzaW9uc1RvUGF5UnEge1xuICBjb2RfY29kZTogbnVtYmVyO1xuICBjb21taXNzaW9uX2Ftb3VudDogbnVtYmVyO1xuICBtb3Rpdm9fZGV0YWxsZTogc3RyaW5nO1xuICBydWxlX2NvZGVfYXBwbGllZDogbnVtYmVyIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJUGF5QWR2aXNvckJvbnVzZXNScSB7XG4gIHRva2VuOiBzdHJpbmc7XG4gIHVzZXJfY29kZTogbnVtYmVyO1xuICBzdGFydF9kYXRlOiBzdHJpbmc7XG4gIGVuZF9kYXRlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUdldFN1Ym9yZGluYXRlc1JxIGV4dGVuZHMgSVRva2VuUnEge1xuICBtYW5hZ2VyX2NvZGU6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJTWFuYWdlU3Vib3JkaW5hdGVScSBleHRlbmRzIElUb2tlblJxIHtcbiAgbWFuYWdlcl9jb2RlOiBudW1iZXI7XG4gIHN1Ym9yZGluYXRlX2NvZGU6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJRGVsZXRlVHlwZVVzZXJDb21taXNzaW9uUnEge1xuICB0b2tlbjogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDb25zdWx0Q29tbWlzc2lvbnNCeUFkdmlzZXJScyB7XG4gIGNvZHM6ICAgICAgICAgSUNvbW1pc3Npb25MaXN0UnNbXTtcbiAgdHJhbnNhY3Rpb25zOiBJVHJhbnNhY3Rpb25Sc1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDb21taXNzaW9uTGlzdFJzIHtcbiAgYWR2aXNlcl9jb2RlOiAgICAgICAgICAgICAgbnVtYmVyO1xuICBjb2RfY29kZTogICAgICAgICAgICAgICAgICBudW1iZXI7XG4gIHN0dWRlbnRfbmFtZTogICAgICAgICAgICAgIHN0cmluZztcbiAgY29kX3N0YXR1c19jb2RlOiAgICAgICAgICAgbnVtYmVyO1xuICBjb2Rfc3RhdHVzX25hbWU6ICAgICAgICAgICBzdHJpbmc7XG4gIGNvZF9kYXRlOiAgICAgICAgICAgICAgICAgIERhdGU7XG4gIGNvdXJzZV90eXBlX25hbWU6ICAgICAgICAgIHN0cmluZztcbiAgY291cnNlX3R5cGVfbGFiZWw6ICAgICAgICAgc3RyaW5nO1xuICBjb3Vyc2VfY29kZTogICAgICAgICAgICAgICBudW1iZXIgfCBudWxsO1xuICBhZ3JlZW1lbnRfY29kZTogICAgICAgICAgICBudW1iZXI7XG4gIGFncmVlbWVudF9uYW1lOiAgICAgICAgICAgIHN0cmluZyB8IG51bGw7XG4gIGNvbW1pc3Npb25fYXJlYV9uYW1lOiAgICAgIHN0cmluZyB8IG51bGw7XG4gIHBsYW5fZGVfcGFnbzogICAgICAgICAgICAgIHN0cmluZztcbiAgcGF5bWVudF90eXBlX25hbWU6ICAgICAgICAgc3RyaW5nO1xuICBydWxlX2NvZGVfYXBwbGllZDogICAgICAgICBudW1iZXIgfCBudWxsO1xuICBydWxlX2Jhc2VfYW1vdW50OiAgICAgICAgICBudW1iZXIgfCBzdHJpbmcgfCBudWxsO1xuICBydWxlX2NvbmRpdGlvbnM6ICAgICAgICAgICBudWxsIHwgc3RyaW5nO1xuICBjb21taXNzaW9uX3N0YXR1czogICAgICAgICBudW1iZXI7XG4gIG1vdGl2b19kZXRhbGxlOiAgICAgICAgICAgIHN0cmluZztcbiAgY29tbWlzc2lvbl9hbW91bnQ6ICAgICAgICAgbnVtYmVyIHwgc3RyaW5nO1xuICBjb2RfcHJpY2U6ICAgICAgICAgICAgICAgICBudW1iZXI7XG4gIHBheW1lbnRzX29rOiAgICAgICAgICAgICAgIGJvb2xlYW47XG4gIGV4aXN0aW5nX2NvbW1pc3Npb246ICAgICAgIGJvb2xlYW47XG4gIHN0dWRlbnRfaWRfY2FyZD86ICAgICAgICAgIHN0cmluZyB8IG51bGw7XG4gIGNvbW1pc3Npb25fY29kZTogICAgICAgICAgIG51bWJlcjtcbiAgdHJhbnNhY3Rpb25fY29kZTogICAgICAgICAgbnVtYmVyO1xuICB0eXBlOiAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gIHBheW1lbnRfdmFsaWRhdGlvbjogICAgICAgIFBheW1lbnRWYWxpZGF0aW9uO1xuICB2YWxpZGF0aW9uOiAgICAgICAgICAgICAgICBWYWxpZGF0aW9uW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUJvbnVzTGlzdFJzIHtcbiAgY29tbWlzc2lvbl9zdGF0dXM6IG51bWJlcjtcbiAgdHlwZTogICAgICAgICAgICAgIHN0cmluZztcbiAgbW90aXZvX2RldGFsbGU6ICAgIHN0cmluZztcbiAgY29tbWlzc2lvbl9hbW91bnQ6IG51bWJlcjtcbiAgY29uZmlndXJlZF9hbW91bnQ6IG51bWJlcjtcbiAgYWNoaWV2ZWRfcXVhbnRpdHk6IG51bWJlcjtcbiAgdGFyZ2V0X3F1YW50aXR5OiAgIG51bWJlcjtcbiAgYWR2aXNlcl9jb2RlOiAgICAgIG51bWJlcjtcbiAgYm9udXNfcnVsZTogICAgICAgIG51bWJlciB8IG51bGw7XG59XG5cblxuZXhwb3J0IGludGVyZmFjZSBJRXhpc3RpbmdDb21taXNzaW9uRGF0YVJzIHtcbiAgY29kZTogICAgICAgICAgICAgICAgICAgICBudW1iZXI7XG4gIHRyYW5zYWN0aW9uX2NvZGU6ICAgICAgICAgbnVtYmVyO1xuICB1c2VyX2NvbW1pc3Npb246ICAgICAgICAgIG51bWJlcjtcbiAgdHJhbnNhY3Rpb25fc3RhdHVzOiAgICAgICBudW1iZXI7XG4gIGFtb3VudDogICAgICAgICAgICAgICAgICAgbnVtYmVyO1xuICBjb2RfY29kZTogICAgICAgICAgICAgICAgIG51bWJlcjtcbiAgcGF5bWVudF9jb21taXNzaW9uczogICAgICBudW1iZXI7XG4gIGNyZWF0ZWRfYXQ6ICAgICAgICAgICAgICAgRGF0ZTtcbiAgdXBkYXRlZF9hdDogICAgICAgICAgICAgICBEYXRlO1xuICBwYXltZW50X2FyZWFfY29tbWlzc2lvbj86IFBheW1lbnRBcmVhQ29tbWlzc2lvbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQYXltZW50QXJlYUNvbW1pc3Npb24ge1xuICBjb2RlPzogICAgICAgICBudW1iZXI7XG4gIHR5cGVfcGF5bWVudD86IFR5cGVQYXltZW50O1xuICBhcmVhX2NvdXJzZT86ICBudW1iZXI7XG4gIGFtb3VudD86ICAgICAgIHN0cmluZztcbiAgc3RhdHVzPzogICAgICAgbnVtYmVyO1xuICBjcmVhdGVkX2F0PzogICBEYXRlO1xuICB1cGRhdGVkX2F0PzogICBEYXRlO1xuICBkZWxldGVkX2F0PzogICBEYXRlIHwgbnVsbDtcbiAgY29uZGl0aW9ucz86IElDb25kaXRpb25Sc1tdO1xuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHlwZVBheW1lbnQge1xuICBjb2RlPzogICAgICAgIG51bWJlcjtcbiAgbmFtZT86ICAgICAgICBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICB0eXBlPzogICAgICAgIHN0cmluZztcbiAgY3JlYXRlZF9hdD86ICBEYXRlO1xuICB1cGRhdGVkX2F0PzogIERhdGU7XG4gIGRlbGV0ZWRfYXQ/OiAgRGF0ZSB8IG51bGw7XG59XG5cblxuZXhwb3J0IGludGVyZmFjZSBQYXltZW50VmFsaWRhdGlvbiB7XG4gIGVucm9sbG1lbnRfb2s6ICAgICAgYm9vbGVhbjtcbiAgZmVlMV9vazogICAgICAgICAgICBib29sZWFuO1xuICBpbnN0YWxsbWVudHNfcGFpZDogIG51bWJlcjtcbiAgcGF5bWVudHNfb2s6ICAgICAgICBib29sZWFuO1xuICBlbnJvbGxtZW50X3BhaWQ6ICAgIG51bWJlcjtcbiAgZW5yb2xsbWVudF9wZW5kaW5nOiBudW1iZXI7XG4gIGZlZTFfcGFpZDogICAgICAgICAgbnVtYmVyO1xuICBmZWUxX3BlbmRpbmc6ICAgICAgIG51bWJlcjtcbiAgdG90YWxfcGFpZDogICAgICAgICBudW1iZXI7XG4gIHRvdGFsX3BlbmRpbmc6ICAgICAgbnVtYmVyO1xuICBudW1iZXJfcGFpZDogICAgICAgIG51bWJlcjtcbiAgbnVtYmVyX3BlbmRpbmc6ICAgICBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVmFsaWRhdGlvbiB7XG4gIGtleTogICAgICAgc3RyaW5nO1xuICBvcGVyYXRvcjogIHN0cmluZztcbiAgdmFsdWU6ICAgICBzdHJpbmc7XG4gIGNvZF92YWx1ZTogbnVtYmVyIHwgc3RyaW5nO1xuICBjaGVjazogICAgIGJvb2xlYW47XG4gIG1lc3NhZ2U6ICAgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElUcmFuc2FjdGlvblJzIHtcbiAgY29kZTogICAgICAgICAgICAgICAgbnVtYmVyO1xuICBwYXltZW50X2JpbGxfY29kZTogICBudW1iZXIgfCBudWxsO1xuICBnZW5lcmF0ZWRfYnk6ICAgICAgICBJVXNlclRyYW5zYWN0aW9uUnMgfCBudW1iZXIgIHwgbnVsbDtcbiAgYXBwcm92ZWRfYnk6ICAgICAgICAgSVVzZXJUcmFuc2FjdGlvblJzIHwgbnVtYmVyIHwgbnVsbDtcbiAgdXNlcl9jb21taXNzaW9uOiAgICAgbnVtYmVyO1xuICB0cmFuc2FjdGlvbl9zdGF0dXM6ICBudW1iZXI7XG4gIG9ic2VydmF0aW9uOiAgICAgICAgIHN0cmluZztcbiAgc3RhcnRfdHJhbnNhY3Rpb246ICAgRGF0ZTtcbiAgZW5kX3RyYW5zYWN0aW9uOiAgICAgRGF0ZSB8IG51bGw7XG4gIGRlbGV0ZWRfYXQ6ICAgICAgICAgIERhdGUgfCBudWxsO1xuICB1cGRhdGVkX2F0OiAgICAgICAgICBEYXRlIHwgbnVsbDtcbiAgY3JlYXRlZF9hdDogICAgICAgICAgRGF0ZSB8IG51bGw7XG4gIG1hbmFnZWRfY29tbWlzc2lvbnM/OiBJRXhpc3RpbmdDb21taXNzaW9uRGF0YVJzW10gfCBJQ29tbWlzc2lvbkxpc3RSc1tdO1xuICBtYW5hZ2VkX2JvbnVzPzogICAgICAgSU1hbmFnZWRCb251c1JzW107XG4gIHBheW1lbnRfYmlsbD86ICAgICAgICBudW1iZXIgfCBJUGF5bWVudEJpbGxHcmFwaFJzIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJTWFuYWdlZEJvbnVzUnMge1xuICBjb2RlOiAgICAgICAgICAgICAgIG51bWJlcjtcbiAgdXNlcl9ib251czogICAgICAgICBudW1iZXI7XG4gIGFtb3VudDogICAgICAgICAgICAgbnVtYmVyO1xuICBib251c19ydWxlOiAgICAgICAgIG51bWJlcjtcbiAgY29kX3JlYWNoZWQ6ICAgICAgICBudW1iZXI7XG4gIHRyYW5zYWN0aW9uX3N0YXR1czogbnVtYmVyO1xuICB0cmFuc2FjdGlvbl9jb2RlOiAgIG51bWJlcjtcbiAgcGVyaW9kX21vbnRoOiAgICAgICBudW1iZXI7XG4gIHBlcmlvZF95ZWFyOiAgICAgICAgbnVtYmVyO1xuICBkZWxldGVkX2F0OiAgICAgICAgIERhdGUgfCBudWxsO1xuICBjcmVhdGVkX2F0OiAgICAgICAgIERhdGU7XG4gIHVwZGF0ZWRfYXQ6ICAgICAgICAgRGF0ZTtcbn1cblxuXG5leHBvcnQgaW50ZXJmYWNlIElVc2VyVHJhbnNhY3Rpb25ScyB7XG4gIGNvZGU6IG51bWJlcjtcbiAgbmFtZTogc3RyaW5nO1xufVxuXG5cbmV4cG9ydCBpbnRlcmZhY2UgSUFwcHJvdmVUcmFuc2FjdGlvbkNvbW1pc3Npb25ScSB7XG4gIHRva2VuOiBzdHJpbmc7XG4gIHRyYW5zYWN0aW9uX2NvZGU6IG51bWJlcjtcbiAgb2JzZXJ2YXRpb246IHN0cmluZztcbiAgd2FsbGV0OiAgbnVtYmVyO1xuICBiYW5rIDogbnVtYmVyO1xuICBwYXltZW50X3JlZmVyZW5jZTogbnVtYmVyO1xuICBwYXltZW50X21ldGhvZDogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElyZWplY3RUcmFuc2FjdGlvbkNvbW1pc3Npb25ScSB7XG4gIHRva2VuOiBzdHJpbmc7XG4gIHRyYW5zYWN0aW9uX2NvZGU6IG51bWJlcjtcbiAgb2JzZXJ2YXRpb246IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJRWRpdENvbmRpdGlvblJ1bGVScSB7XG4gIHRva2VuOiAgICAgICAgc3RyaW5nO1xuICBjb2RlOiAgICAgICAgIG51bWJlcjtcbiAgb3BlcmF0b3I6ICAgICBzdHJpbmc7XG4gIHZhbHVlOiAgICAgICAgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElBcHByb3ZlVHJhbnNhY3Rpb25ScyB7XG4gIHRyYW5zYWN0aW9uOiAgICAgICAgSVRyYW5zYWN0aW9uUnM7XG4gIGJpbGw6ICAgICAgICAgICAgICAgSUJpbGxDcmVhdGVkUnM7XG4gIGJpbGxfb2JzZXJ2YXRpb24/OiAgSUJpbGxPYnNlcnZhdGlvbkxpc3RScztcbiAgY29tbWlzc2lvbnM6ICAgICAgICBJQ29tbWlzc2lvbkxpc3RSc1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElCaWxsQ3JlYXRlZFJzIHtcbiAgcGF5bWVudF9tZXRob2Q6ICAgICBudW1iZXI7XG4gIHBheW1lbnRfc2VydmljZXM6ICAgbnVtYmVyO1xuICBwYXltZW50X3dhbGxldDogICAgIG51bWJlcjtcbiAgYmFuazogICAgICAgICAgICAgICBzdHJpbmc7XG4gIHBheW1lbnRfcmVmZXJlbmNlOiAgc3RyaW5nO1xuICBnZW5lcmF0ZWRfZm9yOiAgICAgIG51bWJlcjtcbiAgZ2VuZXJhdGVkX2J5OiAgICAgICBudW1iZXI7XG4gIHR5cGVfbW92ZW1lbnRzOiAgICAgbnVtYmVyO1xuICBjb21tb25fZXhwZW5zZXM6ICAgIG51bWJlcjtcbiAgdG90YWxfYW1vdW50OiAgICAgICBudW1iZXI7XG4gIHBheW1lbnRfYW1vdW50OiAgICAgbnVtYmVyO1xuICBvdXRzdGFuZGluZ19hbW91bnQ6IG51bWJlcjtcbiAgcG9zaXRpdmVfYW1vdW50OiAgICBudW1iZXI7XG4gIGRpc2NvdW50OiAgICAgICAgICAgbnVtYmVyO1xuICBwYXllcl9uYW1lOiAgICAgICAgIG51bGw7XG4gIHBheWVyX2RvY3VtZW50OiAgICAgbnVsbDtcbiAgcGF5bWVudF9kYXRlOiAgICAgICBEYXRlO1xuICBvYnNlcnZhdGlvbjogICAgICAgIHN0cmluZztcbiAgdHJhbnNmZXJfY29kZTogICAgICBudWxsO1xuICBjb2RlOiAgICAgICAgICAgICAgIG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQmlsbE9ic2VydmF0aW9uTGlzdFJzIHtcbiAgZGV0YWlsczogICAgICAgICAgIElEZXRhaWxCaWxsUnNbXTtcbiAgdG90YWxfY29tbWlzc2lvbnM6IG51bWJlcjtcbiAgdG90YWxfYW1vdW50OiAgICAgIG51bWJlcjtcbiAgcGVyaW9kOiAgICAgICAgICAgIElQZXJpb2RCaWxsUnM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSURldGFpbEJpbGxScyB7XG4gIGFyZWE6ICAgICBzdHJpbmc7XG4gIHF1YW50aXR5OiBudW1iZXI7XG4gIGFtb3VudDogICBudW1iZXI7XG4gIHN0YXR1c2VzOiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVBlcmlvZEJpbGxScyB7XG4gIGZyb206IHN0cmluZztcbiAgdG86ICAgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElTaG93VHJhbnNhY3Rpb25CaWxsUnEge1xuICB0b2tlbjogc3RyaW5nO1xuICBjb2RlOiAgIG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJYWRkRGV2b2x1dGlvbkNvbW1pc3Npb25ScSB7XG4gIHRva2VuOiAgICAgICAgICAgICAgc3RyaW5nO1xuICBjb21taXNzaW9uX2NvZGU6ICAgIG51bWJlcjtcbiAgdHJhbnNhY3Rpb25fY29kZTogICBudW1iZXI7XG4gIGNvbW1pc3Npb25zX3RvX2Rldm9sdmUgOiBJY29tbWlzc2lvbnNfdG9fZGV2b2x2ZVJxW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSWNvbW1pc3Npb25zX3RvX2Rldm9sdmVScSB7XG4gIGNvbW1pc3Npb25fY29kZTogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElvYnRhaW5UcmFuc2FjdGlvbnNCeVN0YXR1c1JxIHtcbiAgdG9rZW46ICAgICAgIHN0cmluZztcbiAgc3RhdHVzOiAgICAgIG51bWJlcjtcbiAgdXNlcl9jb2RlOiAgIG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJYWR2aXNlclJlc3VtZVJzIHtcbiAgc3RhdHVzOiAgICAgICBzdHJpbmc7XG4gIG1lc3NhZ2U6ICAgICAgc3RyaW5nO1xuICByYW5nb19mZWNoYXM6IElSYW5nb0ZlY2hhc1JzO1xuICByZXN1bWVuOiAgICAgIElSZXN1bWVuQWR2aXNvclJzO1xuICBhc2Vzb3JlczogICAgIElBdmlzb3JEZXRhaWx0UnNbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJUmFuZ29GZWNoYXNScyB7XG4gIGZlY2hhX2luaWNpbzogRGF0ZTtcbiAgZmVjaGFfZmluOiAgICBEYXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElBdmlzb3JEZXRhaWx0UnMge1xuICBnZW5lcmFsOiAgICAgICAgIElBZHZpc29yR2VuZXJhbFJzO1xuICBtZXRyaWNhczogICAgICAgIElNZXRyaWNzUnM7XG4gIGNvbWlzaW9uZXM6ICAgICAgSUJvbm9zQ29tbWlzc2lvblJzO1xuICBib25vczogICAgICAgICAgIElCb25vc0NvbW1pc3Npb25ScztcbiAgdHJhbnNhY2Npb25lczogICBJVHJhbnNhY2Npb25lc0xpc3RScztcbiAgYWR2ZXJ0ZW5jaWFzOiAgICBhbnlbXTtcbiAgYWN0aXZlX2NvbmNlcHRzOiBzdHJpbmdbXTtcbiAgZXZhbHVhdGlvbnM6ICAgICBJQ29tbWlzc2lvbkxpc3RSc1tdIHwgSUJvbnVzTGlzdFJzW10gO1xuICBlZmVjdGl2aWRhZDogICAgIElFZmVjdGl2aWRhZFJzO1xufVxuXG5cbmV4cG9ydCBpbnRlcmZhY2UgSUFkdmlzb3JHZW5lcmFsUnMge1xuICBjb2RpZ29fYXNlc29yOiAgICAgICAgbnVtYmVyO1xuICBub21icmVfYXNlc29yOiAgICAgICAgc3RyaW5nO1xuICByb2xfYXNlc29yOiAgICAgICAgICAgSVJvbEFzZXNvclJzO1xuICB0aXBvX2NvbnRyYXRvX25vbWJyZTogc3RyaW5nO1xuICB0aXBvX2NvbnRyYXRvOiAgICAgICAgSVRpcG9Db250cmF0b1JzO1xuICBtYXRyaWN1bGFkb3M6ICAgICAgICAgbnVtYmVyO1xuICBhY3Rpdm9zOiAgICAgICAgICAgICAgbnVtYmVyO1xuICByZXRpcmFkb3M6ICAgICAgICAgICAgbnVtYmVyO1xuICBwYXVzYWRvczogICAgICAgICAgICAgbnVtYmVyO1xuICBjdWxtaW5hZG9zOiAgICAgICAgICAgbnVtYmVyO1xuICBzdXNwZW5kaWRvczogICAgICAgICAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElSb2xBc2Vzb3JScyB7XG4gIGNvZGU6IG51bWJlcjtcbiAgcm9sZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElUaXBvQ29udHJhdG9ScyB7XG4gIGNvZGU6ICAgICAgICAgICAgICAgIG51bWJlcjtcbiAgbmFtZTogICAgICAgICAgICAgICAgc3RyaW5nO1xuICBzdGF0dXM6ICAgICAgICAgICAgICBudW1iZXI7XG4gIGNyZWF0ZWRfYXQ6ICAgICAgICAgIERhdGU7XG4gIHVwZGF0ZWRfYXQ6ICAgICAgICAgIERhdGU7XG4gIGNvbW1pc3Npb25fY29uY2VwdHM6IElDb21taXNzaW9uQ29uY2VwdFJzW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNvbW1pc3Npb25Db25jZXB0UnMge1xuICBjb2RlOiAgICAgICAgbnVtYmVyO1xuICBuYW1lOiAgICAgICAgc3RyaW5nO1xuICBrZXk6ICAgICAgICAgc3RyaW5nO1xuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICBwaXZvdDogICAgICAgSVBpdm90VHlwZVVzZXJDb21taXNzaW9uQ29uY2VwdFJzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElQaXZvdFR5cGVVc2VyQ29tbWlzc2lvbkNvbmNlcHRScyB7XG4gIHR5cGVfdXNlcl9jb21taXNzaW9uX2NvZGU6IG51bWJlcjtcbiAgY29tbWlzc2lvbl9jb25jZXB0X2NvZGU6ICAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElSZXN1bWVuQWR2aXNvclJzIHtcbiAgZ2VuZXJhbDogICAgICAgSVJlc3VtZW5HZW5lcmFsUnM7XG4gIG1ldHJpY2FzOiAgICAgIElNZXRyaWNzUnM7XG4gIGNvbWlzaW9uZXM6ICAgIElCb25vc0NvbW1pc3Npb25ScztcbiAgYm9ub3M6ICAgICAgICAgSUJvbm9zQ29tbWlzc2lvblJzO1xuICB0cmFuc2FjY2lvbmVzOiBJVHJhbnNhY2Npb25lc0xpc3RScztcbiAgZWZlY3RpdmlkYWQ6ICAgSUVmZWN0aXZpZGFkUnM7XG4gIGFkdmVydGVuY2lhczogIGFueVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElSZXN1bWVuR2VuZXJhbFJzIHtcbiAgdG90YWxfYXNlc29yZXM6IG51bWJlcjtcbiAgbWF0cmljdWxhZG9zOiAgIG51bWJlcjtcbiAgYWN0aXZvczogICAgICAgIG51bWJlcjtcbiAgcmV0aXJhZG9zOiAgICAgIG51bWJlcjtcbiAgcGF1c2Fkb3M6ICAgICAgIG51bWJlcjtcbiAgY3VsbWluYWRvczogICAgIG51bWJlcjtcbiAgc3VzcGVuZGlkb3M6ICAgIG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJTWV0cmljc1JzIHtcbiAgbWF0cmljdWxhX3BhZ2FkYV9jb3VudDogICAgICAgICAgbnVtYmVyO1xuICBtYXRyaWN1bGFfcGFnYWRhX3BlcmNlbnRhZ2U6ICAgICBudW1iZXI7XG4gIHByaW1lcmFfY3VvdGFfcGFnYWRhX2NvdW50OiAgICAgIG51bWJlcjtcbiAgcHJpbWVyYV9jdW90YV9wYWdhZGFfcGVyY2VudGFnZTogbnVtYmVyO1xuICBlZmVjdGl2aWRhZF9jb3VudDogICAgICAgICAgICAgICBudW1iZXI7XG4gIGVmZWN0aXZpZGFkX3BlcmNlbnRhZ2U6ICAgICAgICAgIG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJVHJhbnNhY2Npb25lc0xpc3RScyB7XG4gIHRvdGFsX3RyYW5zYWNjaW9uZXM6IG51bWJlcjtcbiAgdG9kYXM6ICAgICAgICAgICAgICAgSVRyYW5zYWN0aW9uUnNbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQm9ub3NDb21taXNzaW9uUnMge1xuICBwZW5kaWVudGVzX2NvdW50OiBudW1iZXI7XG4gIG1vbnRvX3BlbmRpZW50ZTogIG51bWJlcjtcbiAgcGFnYWRvc19jb3VudDogICAgbnVtYmVyO1xuICBtb250b19wYWdhZG86ICAgICBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUVmZWN0aXZpZGFkUnMge1xuICBwb3JjZW50YWplOiBudW1iZXI7XG4gIGNhdGVnb3JpYTogIHN0cmluZztcbiAgY29sb3I6ICAgICAgc3RyaW5nO1xuICBtZW5zYWplOiAgICBzdHJpbmc7XG59XG5cblxuXG5cbmV4cG9ydCBpbnRlcmZhY2UgSUdldENvbW1pc3Npb25zQnlUcmFuc2FjdGlvbkNvZGVScSB7XG4gIHRva2VuOiBzdHJpbmc7XG4gIHRyYW5zYWN0aW9uX2NvZGU6IG51bWJlcjtcbiAgZW5kX2RhdGU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNhbmNlbGxUcmFuc2FjdGlvbkJpbGxScSB7XG4gIHRva2VuOiAgICAgICAgc3RyaW5nO1xuICBjb2RlOiAgICAgICAgIG51bWJlcjtcbiAgb2JzZXJ2YXRpb246ICBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSWFkZEJvbnVzUnVsZVJxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgY29kZT86IG51bWJlcjtcbiAgY29kX2dvYWw/OiBudW1iZXI7XG4gIGFtb3VudD86IG51bWJlcjtcbiAgZGF5cz86IG51bWJlcjtcbiAgbW9udGg/OiBudW1iZXI7XG4gIHllYXI/OiBudW1iZXI7XG4gIGVucm9sbG1lbnQ/OiBudW1iZXI7XG4gIGZlZV9vbmU/OiBudW1iZXI7XG4gIGNhc2hfcGF5bWVudD86IG51bWJlcjtcbiAgc3RhdHVzPzogbnVtYmVyO1xuICB0eXBlX3VzZXI/OiBudW1iZXI7XG4gIGNhbXB1cz86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJcmVtb3ZlQ29tbWlzc2lvbkZyb21UcmFuc2FjdGlvblJxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgdHJhbnNhY3Rpb25fY29kZT86IG51bWJlcjtcbiAgY29tbWlzc2lvbl9jb2RlPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElUb2tlbkNhbXB1c1JxIGV4dGVuZHMgSVRva2VuUnEge1xuICBjYW1wdXM6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQ29tbWlzc2lvbkluaXRpYWxDb25maWdScyB7XG4gICAgYXJlYXM6ICAgICAgICAgICAgIElBcmVhUnNbXTtcbiAgICBjb3Vyc2VzOiAgICAgICAgICAgSUNvdXJzZVR5cGVDb21taXNzaW9uUnNbXTtcbiAgICBhZ3JlZW1lbnRzOiAgICAgICAgSUFncmVlbWVudExpc3RSc1tdO1xuICAgIHBheW1lbnRzRm9yRGlhbG9nOiBUeXBlUGF5bWVudFtdO1xuICAgIGNhdGVnb3JpZXM6ICAgICAgICBJQ2F0ZWdvcnlSc1tdO1xuICAgIGNvbnRyYWN0VHlwZXM6ICAgICBJQ29udHJhY3RUeXBlUnNbXTtcbiAgICBwbGFuczogICAgICAgICAgICAgSUFjYWRlbWljUGxhbkxpc3RSc1tdO1xuICAgIGNhbXB1czogICAgICAgICAgICBJR2V0Q2FtcHVzRGV0YWlsTGlzdFJzW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUFjYWRlbWljUGxhbkxpc3RScyB7XG4gICAgY29kZTogICAgICAgbnVtYmVyO1xuICAgIG5hbWU6ICAgICAgIHN0cmluZztcbiAgICBhZnRlcl9hZ2U6ICBudW1iZXI7XG4gICAgYmVmb3JlX2FnZTogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElBZ3JlZW1lbnRMaXN0UnMge1xuICAgIGNvZGU6ICAgICBudW1iZXI7XG4gICAgbmFtZTogICAgIHN0cmluZztcbiAgICBlbmRfdGltZTogRGF0ZTtcbiAgICBjYXRlZ29yeTogbnVtYmVyO1xuICAgIHN0YXR1czogICBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUdldENhbXB1c0RldGFpbExpc3RScyB7XG4gICAgY29kZT86ICAgICAgICAgICAgICAgICAgICAgICBudW1iZXI7XG4gICAgbmFtZT86ICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgY2l0eT86ICAgICAgICAgICAgICAgICAgICAgICBudW1iZXI7XG4gICAgZW50ZXJwcmlzZT86ICAgICAgICAgICAgICAgICBudW1iZXI7XG4gICAgYmlsbGluZ19wcmVmaXg/OiAgICAgICAgICAgICBudW1iZXI7XG4gICAgc3RhdGU/OiAgICAgICAgICAgICAgICAgICAgICBudW1iZXI7XG4gICAgY3VycmVuY3k/OiAgICAgICAgICAgICAgICAgICBudW1iZXI7XG4gICAgYWRkcmVzcz86ICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgZW1haWw/OiAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgcGhvbmVfcHJlZml4PzogICAgICAgICAgICAgICBudW1iZXI7XG4gICAgcGhvbmU/OiAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgbWFwPzogICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgaW1hZ2VfdXJsPzogICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgdXBkYXRlZF9hdD86ICAgICAgICAgICAgICAgICBEYXRlO1xuICAgIGNyZWF0ZWRfYXQ/OiAgICAgICAgICAgICAgICAgRGF0ZTtcbiAgICBjaXR5X25hbWU/OiAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBlbnRlcnByaXNlX2NvbXBhbnlfbmFtZT86ICAgIHN0cmluZztcbiAgICBlbnRlcnByaXNlX2NvbW1lcmNpYWxfbmFtZT86IHN0cmluZztcbiAgICBzdGF0ZV9uYW1lPzogICAgICAgICAgICAgICAgIHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQXJlYVJzIHtcbiAgICBjb2RlPzogICAgICAgICAgICAgICAgICAgICBudW1iZXI7XG4gICAgbmFtZT86ICAgICAgICAgICAgICAgICAgICAgc3RyaW5nO1xuICAgIGNhbXB1cz86ICAgICAgICAgICAgICAgICAgIG51bWJlcjtcbiAgICBhY2FkZW1pY19wbGFuPzogICAgICAgICAgICBudW1iZXI7XG4gICAgY3JlYXRlZF9hdD86ICAgICAgICAgICAgICAgRGF0ZTtcbiAgICB1cGRhdGVkX2F0PzogICAgICAgICAgICAgICBEYXRlO1xuICAgIGRlbGV0ZWRfYXQ/OiAgICAgICAgICAgICAgIERhdGU7XG4gICAgY291cnNlX3R5cGVzPzogICAgICAgICAgICAgSUNvdXJzZVR5cGVDb21taXNzaW9uUnNbXTtcbiAgICBwYXltZW50X2FyZWFfY29tbWlzc2lvbnM/OiBQYXltZW50QXJlYUNvbW1pc3Npb25bXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQ291cnNlVHlwZUNvbW1pc3Npb25ScyBleHRlbmRzICBJQ291cnNlVHlwZVJzICB7XG4gICAgY2FtcHVzPzogICAgICAgICAgICBudW1iZXI7XG4gICAgY2F0ZWdvcnk/OiAgICAgICAgICBudW1iZXI7XG4gICAgcGl2b3Q/OiAgICAgICAgICAgIENvdXJzZVBpdm90O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvdXJzZVBpdm90IHtcbiAgICBjb21taXNzaW9uX2FyZWFfY291cnNlX2lkOiBudW1iZXI7XG4gICAgY291cnNlX3R5cGVfaWQ6ICAgICAgICAgICAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDb25kaXRpb25ScyB7XG4gICAgY29kZT86ICAgICAgICAgbnVtYmVyO1xuICAgIHJ1bGVfaWQ/OiAgICAgIG51bWJlcjtcbiAgICBjb25kaXRpb25faWQ/OiBudW1iZXI7XG4gICAgb3BlcmF0b3I/OiAgICAgc3RyaW5nO1xuICAgIHZhbHVlPzogICAgICAgIHN0cmluZztcbiAgICBjcmVhdGVkX2F0PzogICBEYXRlO1xuICAgIHVwZGF0ZWRfYXQ/OiAgIERhdGU7XG4gICAgZGVsZXRlZF9hdD86ICAgRGF0ZTtcbiAgICBjb25kaXRpb24/OiAgICBJQ29tbWlzc2lvbkNvbmRpdGlvbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQ2F0ZWdvcnlScyB7XG4gICAgY29kZTogbnVtYmVyO1xuICAgIG5hbWU6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQ29udHJhY3RUeXBlUnMge1xuICAgIGNvZGU6ICAgICAgICAgICAgICAgIG51bWJlcjtcbiAgICBuYW1lOiAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgc3RhdHVzOiAgICAgICAgICAgICAgbnVtYmVyO1xuICAgIGNyZWF0ZWRfYXQ6ICAgICAgICAgIERhdGU7XG4gICAgdXBkYXRlZF9hdDogICAgICAgICAgRGF0ZTtcbiAgICBjb21taXNzaW9uX2NvbmNlcHRzOiBJQ29tbWlzc2lvbkNvbmNlcHRSc1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDb21taXNzaW9uQ29uY2VwdFJzIHtcbiAgICBjb2RlOiAgICAgICAgbnVtYmVyO1xuICAgIG5hbWU6ICAgICAgICBzdHJpbmc7XG4gICAga2V5OiAgICAgICAgIHN0cmluZztcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICAgIHBpdm90OiAgICAgICBJQ29tbWlzc2lvbkNvbmNlcHRQaXZvdFJzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDb21taXNzaW9uQ29uY2VwdFBpdm90UnMge1xuICAgIHR5cGVfdXNlcl9jb21taXNzaW9uX2NvZGU6IG51bWJlcjtcbiAgICBjb21taXNzaW9uX2NvbmNlcHRfY29kZTogICBudW1iZXI7XG59XG4iXX0=
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVyY2lhbC5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2Rlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb3JlL21vZGVscy9jb21tZXJjaWFsL2NvbW1lcmNpYWwubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElDb2RCeXN0dWRlbnRzUnMgfSBmcm9tIFwiLi4vY29kL2NvZC1ycS5tb2RlbFwiO1xuaW1wb3J0IHsgTWVzc2FnZSwgSUNvdXJzZVR5cGVScyB9IGZyb20gXCIuLi9wYXJhbWV0ZXJzL3BhcmFtZXRlcnMtcnMubW9kZWxcIjtcbmltcG9ydCB7IElJcHRVc2VyRnVsbERhdGFScSB9IGZyb20gXCIuLi91c2VyL3VzZXItcnEubW9kZWxcIjtcbmltcG9ydCB7SVBheW1lbnRCaWxsR3JhcGhSc30gZnJvbSBcIi4uL2J1ZGdldC9idWRnZXQubW9kZWxcIjtcblxuZXhwb3J0IGludGVyZmFjZSBDb2RQcmljZXMge1xuICBjb2RlOiBudW1iZXIsXG4gIG5hbWU6IHN0cmluZyxcbiAgYWdyZWVtZW50OiBudW1iZXIsXG4gIGVucm9sbG1lbnQ6IG51bWJlcixcbiAgbm9ybWFsX3ByaWNlOiBudW1iZXIsXG4gIGZpbmFuY2VkX3ByaWNlOiBudW1iZXIsXG4gIGZlZV9udW1iZXI6IG51bWJlcixcbiAgcXVvdGFfcHJpY2U6IG51bWJlclxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBhcmVudEJ5Q29kZVJxIHtcbiAgcGFyZW50X2NvZGU6IG51bWJlciB8IG51bGw7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWRpY0luZm9CeUNvZGVScSB7XG4gIGFkaWNfaW5mbzogbnVtYmVyIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb2RBZGl0aW9uYWxJbmZvcm1hdGlvblJxIHtcbiAgY29kZTogICAgICAgICAgICAgICBudW1iZXI7XG4gIGdyYWRlOiAgICAgICAgICAgICAgc3RyaW5nIHwgbnVsbDtcbiAgcHJvZ3JhbV9uYW1lOiAgICAgICBzdHJpbmcgfCBudWxsO1xuICBpbnN0aXR1dGlvbl9uYW1lOiAgIHN0cmluZyB8IG51bGw7XG4gIG9jY3VwYXRpb246ICAgICAgICAgc3RyaW5nIHwgbnVsbDtcbiAgcGFyZW50X29jY3VwYXRpb246ICBzdHJpbmcgfCBudWxsO1xuICBkaXNhYmlsaXR5OiAgICAgICAgIHN0cmluZyB8IG51bGw7XG4gIGhlYWx0aF9yZWdpbWVuOiAgICAgc3RyaW5nIHwgbnVsbDtcbiAgbWFya2V0aW5nX3JlYXNvbnM6ICBudW1iZXI7XG4gIHN0dWR5X3JlYXNvbnM6ICAgICAgbnVtYmVyO1xuICBvYnNlcnZhdGlvbjogICAgICAgIHN0cmluZyB8IG51bGw7XG4gIGhlYWRfb2ZfdGhlX2ZhbWlseTogbnVtYmVyO1xuICBhZnJvX2Rlc2NlbmRhbnQ6ICAgIG51bWJlcjtcbiAgZGlzcGxhY2VkOiAgICAgICAgICBudW1iZXI7XG4gIGluZGlnZW5vdXM6ICAgICAgICAgbnVtYmVyO1xuICByZWluc2VydGVkOiAgICAgICAgIG51bWJlcjtcbiAgcm9tX3BvcHVsYXRpb246ICAgICBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29kUGFyZW50UnEge1xuICBjb2RlOiAgICAgICAgICAgICBudW1iZXI7XG4gIG5hbWU6ICAgICAgICAgICAgIHN0cmluZztcbiAgbGFzdF9uYW1lOiAgICAgICAgc3RyaW5nO1xuICBpZF9jYXJkX3R5cGU6ICAgICBudW1iZXI7XG4gIGlkX2NhcmQ6ICAgICAgICAgIHN0cmluZztcbiAgcGhvbmVfaW5kaWNhdGl2ZTogbnVtYmVyO1xuICBwaG9uZV9udW1iZXI6ICAgICBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29kUHJpY2VzUnEge1xuICBhZ3JlZW1lbnQ6ICAgICAgICAgIG51bWJlcjtcbiAgcGF5bWVudF9tZXRob2Q6ICAgICBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUdvYWxJbnRlcmZhY2VSc3tcbiAgdG9rZW46ICAgICAgICBzdHJpbmc7XG4gIGNvZGU6ICAgICAgICAgbnVtYmVyLFxuICBuYW1lOiAgICAgICAgIHN0cmluZyxcbiAgbW9udGhseV9nb2FsOiBudW1iZXIsXG4gIHdlZWtseV9nb2FsOiAgbnVtYmVyLFxuICBkYWlseV9nb2FsOiAgIG51bWJlcixcbiAgZ29hbF9wZXJpb2Q6ICBEYXRlXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUdvYWxJbnRlcmZhY2VScXtcbiAgdG9rZW46ICAgICAgICBzdHJpbmc7XG4gIG5hbWU6ICAgICAgICAgc3RyaW5nLFxuICBtb250aGx5X2dvYWw6IG51bWJlcixcbiAgd2Vla2x5X2dvYWw6ICBudW1iZXIsXG4gIGRhaWx5X2dvYWw6ICAgbnVtYmVyLFxuICBnb2FsX3BlcmlvZDogIERhdGVcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJR29hbEludGVyZmFjZXtcbiAgY29kZTogICAgICAgICBudW1iZXIsXG4gIG5hbWU6ICAgICAgICAgc3RyaW5nLFxuICBtb250aGx5X2dvYWw6IG51bWJlcixcbiAgd2Vla2x5X2dvYWw6ICBudW1iZXIsXG4gIGRhaWx5X2dvYWw6ICAgbnVtYmVyLFxuICBnb2FsX3BlcmlvZDogIERhdGVcbn1cblxuZXhwb3J0IGludGVyZmFjZSAgRG9jdW1lbnRzUnF7XG4gIGZpbGU6IEZpbGU7XG4gIHVzZXJfYXV0b3I6IG51bWJlcjtcbiAgY29kZV91c2VyOiBudW1iZXI7XG4gIHR5cGVfZG9jdW1lbnQ6IG51bWJlcjtcbiAgdG9rZW46c3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElHZXREb2N1bWVudFN0dWRlbnRScXtcbiAgY29kZV91c2VyOiBudW1iZXI7XG4gIHRva2VuOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHlwZURvY3VtZW50c1Jze1xuICBjb2RlOiBudW1iZXI7XG4gIGNvZGVfbWVkaWE6IElNZWRpYVJzO1xuICBjb2RlX3VzZXI6IG51bWJlcjtcbiAgc3RhdHVzOiBudW1iZXI7XG4gIHR5cGVfZG9jdW1lbnQ6SVR5cGVEb2N1bWVudHNOYW1lUnM7XG5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBJTWVkaWFSc3tcbiAgY29kZTogbnVtYmVyO1xuICBsaW5rOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgdHlwZV9mb3JtOiBudW1iZXI7XG4gIHVzZXJfYXV0b3I6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJVHlwZURvY3VtZW50c05hbWVSc3tcbiAgY29kZTogbnVtYmVyO1xuICBuYW1lOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVJlcG9ydEV4Y2VsUnEge1xuICB0b2tlbjogICAgICAgIHN0cmluZztcbiAgY29kZV9hZHZpc2VyOiBudW1iZXI7XG4gIHN0YXJ0X2RhdGU6ICAgc3RyaW5nO1xuICBmaW5pc2hfZGF0ZTogIHN0cmluZztcbn1cbmV4cG9ydCBpbnRlcmZhY2UgSWFkdmlzZXJzUnEge1xuICBjb2RlOiAgICAgICAgIG51bWJlcjtcbiAgaWRfY2FyZDogICAgICBzdHJpbmc7XG4gIG5hbWU6ICAgICAgICAgc3RyaW5nO1xuICBsYXN0X25hbWU6ICAgIHN0cmluZztcbiAgbmlja19uYW1lOiAgICBudWxsIHwgc3RyaW5nO1xuICBlbWFpbDogICAgICAgIHN0cmluZztcbiAgcGhvbmVfbnVtYmVyOiBzdHJpbmc7XG4gIGdlbmRlcjogICAgICAgbnVtYmVyO1xuICBjaXR5OiAgICAgICAgIHN0cmluZztcbiAgYmlydGhkYXRlOiAgICBzdHJpbmc7XG4gIHJvbGU6ICAgICAgICAgc3RyaW5nO1xuICBzZXJ2aWNlX2hvdXI6IG51bWJlcjtcbiAgZW1haWxfaXB0OiAgICBzdHJpbmc7XG4gIHVwZGF0ZWRfYXQ6ICAgRGF0ZTtcbiAgaWRfY2FyZF90eXBlOiBzdHJpbmc7XG4gIHRva2VuOiAgICAgICAgc3RyaW5nO1xuICB1c2VyX3N0YXR1czogIG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJT2J0YWluUmVmZXJzQnlVc2VyUnEge1xuICB0b2tlbjogICAgICAgc3RyaW5nO1xuICBjb2RlX3JlZmVyczogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElPYnRhaW5SZWZlcnJhbHNCeVVzZXJScyB7XG4gIGlwX2FwcGxpY2FudDogc3RyaW5nO1xuICBzdGF0dXM6ICAgICAgIG51bWJlcjtcbiAgbWVzc2FnZTogICAgICBNZXNzYWdlO1xuICBkYXRhOiAgICAgICAgIElSZWZlcnJhbHNCeVVzZXJSc1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElSZWZlcnJhbHNCeVVzZXJScyB7XG4gIGNvZGU6ICAgICAgICAgICAgICAgICAgICAgIG51bWJlcjtcbiAgYW1vdW50X3BheWFibGU6ICAgICAgICAgICAgbnVtYmVyO1xuICBwYXltZW50X3N0YXR1czogICAgICAgICAgICBudW1iZXI7XG4gIGNvZF9jb2RlOiAgICAgICAgICAgICAgICAgIG51bWJlcjtcbiAgc3R1ZGVudF9jb2RlOiAgICAgICAgICAgICAgbnVtYmVyO1xuICBzdHVkZW50X2lkX2NhcmQ6ICAgICAgICAgICBzdHJpbmc7XG4gIHN0dWRlbnRfcm9sZTogICAgICAgICAgICAgIHN0cmluZztcbiAgc3R1ZGVudF9uYW1lOiAgICAgICAgICAgICAgc3RyaW5nO1xuICBzdHVkZW50X2xhc3RfbmFtZTogICAgICAgICBzdHJpbmc7XG4gIHN0dWRlbnRfcGhvbmVfbnVtYmVyOiAgICAgIHN0cmluZztcbiAgc3R1ZGVudF9lbWFpbDogICAgICAgICAgICAgc3RyaW5nO1xuICBzdHVkZW50X2Vucm9sbG1lbnRfc3RhdHVzOiBzdHJpbmc7XG4gIHN0dWRlbnRfY291cnNlX3R5cGU6ICAgICAgIHN0cmluZztcbiAgc3R1ZGVudF9hZHZpc2VyOiAgICAgICAgICAgc3RyaW5nO1xuICByZWZlcnJlZF9jb2RlOiAgICAgICAgICAgICBudW1iZXI7XG4gIHJlZmVycmVkX2lkX2NhcmQ6ICAgICAgICAgIHN0cmluZztcbiAgcmVmZXJyZWRfcm9sZTogICAgICAgICAgICAgc3RyaW5nO1xuICByZWZlcnJlZF9uYW1lOiAgICAgICAgICAgICBzdHJpbmc7XG4gIHJlZmVycmVkX2xhc3RfbmFtZTogICAgICAgIHN0cmluZztcbiAgcmVmZXJyZWRfcGhvbmVfbnVtYmVyOiAgICAgc3RyaW5nO1xuICByZWZlcnJlZF9lbWFpbDogICAgICAgICAgICBzdHJpbmc7XG59XG5leHBvcnQgaW50ZXJmYWNlIElBc3NpZ25Qb3NpYmxlU3R1ZGVudEZvclZhbHVlUnEge1xuICAgIHRva2VuOiBzdHJpbmcsXG4gICAgY29kZUFkdmlzZXI6bnVtYmVyLFxuICAgIHZhbHVlQXNzaW5nOm51bWJlclxuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUdldENvbnRhY3RzYWR2aXNlclJxIHtcbiAgdG9rZW46ICAgICAgICAgICBzdHJpbmc7XG4gIGNvZGVUeXBlQ29uc3VsdDogbnVtYmVyXG4gIGNvZGVfYWR2aXNlcjogICAgbnVtYmVyO1xuICBzdGFydF9kYXRlOiAgICAgIHN0cmluZztcbiAgZmluaXNoX2RhdGU6ICAgICBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSU9idGFpbkNvZFByaWNlc1JxIHtcbiAgdG9rZW46ICAgICAgICAgICBzdHJpbmc7XG4gIGNvdXJzZV90eXBlOiAgICAgbnVtYmVyO1xuICBhZ3JlZW1lbnQ6ICAgICAgIG51bWJlcjtcbiAgY291cnNlX21vZGFsaXR5OiBudW1iZXI7XG4gIHBheW1lbnRfbWV0aG9kOiAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDb2RQcmljZXNCeVByb2dyYW1ScyB7XG4gIGNvZGU6ICAgICAgICAgICAgbnVtYmVyO1xuICBuYW1lOiAgICAgICAgICAgIHN0cmluZztcbiAgYWdyZWVtZW50OiAgICAgICBudW1iZXI7XG4gIHR5cGVfY291cnNlOiAgICAgbnVtYmVyO1xuICBjb3Vyc2VfbW9kYWxpdHk6IG51bWJlcjtcbiAgZW5yb2xsbWVudDogICAgICBudW1iZXI7XG4gIG5vcm1hbF9wcmljZTogICAgbnVtYmVyO1xuICBmaW5hbmNlZF9wcmljZTogIG51bWJlcjtcbiAgZmVlX251bWJlcjogICAgICBudW1iZXI7XG4gIHF1b3RhX3ByaWNlOiAgICAgbnVtYmVyO1xuICBwYWlkX2xldmVsOiAgICAgIG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQXNzaWduaW5nQWR2aXNvckdvYWxzUnEge1xuICB0b2tlbjogICAgICAgICAgICAgIHN0cmluZztcbiAgY29kZV9nb2FsOiAgICAgICAgICBudW1iZXJcbiAgYXNzaWduX2Fkdmlzb3JzOiAgICBudW1iZXJbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQXNzaWdBZHZpc29yR29hbHNScyB7XG4gIHVzZXI6ICAgbnVtYmVyO1xuICBnb2FsOiAgIG51bWJlcjtcbiAgc3RhdHVzOiBudW1iZXI7XG4gIGNvZGU6ICAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElBZHZpc29yR29hbHNScyB7XG4gIGNvZGU6ICAgbnVtYmVyO1xuICB1c2VyOiAgIG51bWJlcjtcbiAgZ29hbDogICBJR29hbFJzO1xuICBzdGF0dXM6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJR29hbFJzIHtcbiAgY29kZTogICAgICAgICBudW1iZXI7XG4gIG5hbWU6ICAgICAgICAgc3RyaW5nO1xuICBtb250aGx5X2dvYWw6IG51bWJlcjtcbiAgd2Vla2x5X2dvYWw6ICBudW1iZXI7XG4gIGRhaWx5X2dvYWw6ICAgbnVtYmVyO1xuICBnb2FsX3BlcmlvZDogIERhdGU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSU92ZXJhbEdvYWxBZHZpc29yUnMge1xuICB0b3RhbE1vbnRobHlHb2FsOiBudW1iZXI7XG4gIGFsbEdvYWxzQWR2aXNvcjogIElBbGxHb2Fsc0Fkdmlzb3JSc1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElBbGxHb2Fsc0Fkdmlzb3JScyB7XG4gIGNvZGU6ICAgICAgICAgbnVtYmVyO1xuICB1c2VyOiAgICAgICAgIG51bWJlcjtcbiAgZ29hbDogICAgICAgICBudW1iZXI7XG4gIHN0YXR1czogICAgICAgbnVtYmVyO1xuICBuYW1lOiAgICAgICAgIHN0cmluZztcbiAgbW9udGhseV9nb2FsOiBudW1iZXI7XG4gIHdlZWtseV9nb2FsOiAgbnVtYmVyO1xuICBkYWlseV9nb2FsOiAgIG51bWJlcjtcbiAgZ29hbF9wZXJpb2Q6ICBEYXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElSZXBvcnRDb2RGb3JBZHZpc2VyUnEge1xuICB0b2tlbjpzdHJpbmc7XG4gIGNvZGVfYWR2aXNlcjogbnVtYmVyO1xuICBjb2RlVHlwZUNvbnN1bHQ6IG51bWJlcixcbiAgc3RhcnRfZGF0ZTogRGF0ZTtcbiAgZmluaXNoX2RhdGU6IERhdGU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNyZWF0ZVRpY2tldFJlZmVycmFsUnEge1xuICB0b2tlbjogICAgICAgICBzdHJpbmc7XG4gIGNvZGVfcmVmZXJyYWw6IG51bWJlcjtcbiAgY29kZV9jb250ZXN0OiAgbnVtYmVyO1xuICBjb2RlX2F3YXJkOiAgICBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVByaXplc0ZvckNvbnRlc3Qge1xuICBuZXdUaWNrZXQ6ICAgICAgSU5ld1RpY2tldFJzO1xuICB1cGRhdGVSZWZlcnJhbDogSVVwZGF0ZVJlZmVycmFsUnM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSU5ld1RpY2tldFJzIHtcbiAgY29kZV9yZWZlcnJhbF9tYW5hZ2VtZW50OiBudW1iZXI7XG4gIHR5cGVfYXdhcmQ6ICAgICAgICAgICAgICAgbnVtYmVyO1xuICB0eXBlX3RpY2tldDogICAgICAgICAgICAgIG51bWJlcjtcbiAgdXBkYXRlZF9hdDogICAgICAgICAgICAgICBEYXRlO1xuICBjcmVhdGVkX2F0OiAgICAgICAgICAgICAgIERhdGU7XG4gIGNvZGU6ICAgICAgICAgICAgICAgICAgICAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElVcGRhdGVSZWZlcnJhbFJzIHtcbiAgY29kZTogICAgICAgICAgICAgICBudW1iZXI7XG4gIHVzZXJfcmVmZXJyZWQ6ICAgICAgbnVtYmVyO1xuICBjb2RfY29kZTogICAgICAgICAgIG51bWJlcjtcbiAgcGF5bWVudF9zdGF0dXM6ICAgICBudW1iZXI7XG4gIGFtb3VudF9wYXlhYmxlOiAgICAgbnVtYmVyO1xuICB0eXBlX21vdmVtZW50OiAgICAgIG51bGw7XG4gIHRyYW5zYWN0aW9uX251bWJlcjogbnVsbDtcbiAgY29kZV90aWtldDogICAgICAgICBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUF2YWlsYWJsZUNvbnRlc3RzUnMge1xuICBjb250ZXN0OiBJQ29udGVzdFJzO1xuICBwcml6ZXM6ICBJUHJpemVSc1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDb250ZXN0UnMge1xuICBjb2RlOiAgICAgICAgICAgICAgICAgICBudW1iZXI7XG4gIG5hbWU6ICAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgY29tcGV0aXRpb25fc3RhcnRfZGF0ZTogRGF0ZTtcbiAgY29tcGV0aXRpb25fZW5kX2RhdGU6ICAgRGF0ZTtcbiAgdGVybXNfYW5kX2NvbmRpdGlvbnM6ICAgc3RyaW5nO1xuICB1cGRhdGVkX2F0OiAgICAgICAgICAgICBEYXRlO1xuICBjcmVhdGVkX2F0OiAgICAgICAgICAgICBEYXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElQcml6ZVJzIHtcbiAgY29kZV9hd2FyZDogICAgICAgIG51bWJlcjtcbiAgY29kZV90eXBlX3RpY2tldDogIG51bWJlcjtcbiAgYXdhcmRfbmFtZTogICAgICAgIHN0cmluZztcbiAgYXdhcmRfZGVzY3JpcHRpb246IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJUHJpemVScyB7XG4gIGNvZGVfYXdhcmQ6ICAgICAgICBudW1iZXI7XG4gIGNvZGVfdHlwZV90aWNrZXQ6ICBudW1iZXI7XG4gIGF3YXJkX25hbWU6ICAgICAgICBzdHJpbmc7XG4gIGF3YXJkX2Rlc2NyaXB0aW9uOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNvZERldGFpbHNieUFkdmlzZXIgIHtcbiAgdG9rZW46c3RyaW5nO1xuICBjb2RlX2FkdmlzZXI6IG51bWJlcjtcblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElHZXRQb3NpYmxlU3R1ZGVudEJ5RGF0ZVJxIHtcbiAgdG9rZW46ICAgICAgICAgICBzdHJpbmc7XG4gIGNvZGVUeXBlQ29uc3VsdDogbnVtYmVyXG4gIHN0YXJ0X2RhdGU6ICAgICAgc3RyaW5nO1xuICBmaW5pc2hfZGF0ZTogICAgIHN0cmluZztcbn1cbmV4cG9ydCBpbnRlcmZhY2UgSUdldFVzZXJBZHZpc2VyQ29tbWVyY2lhbEJ5VHlwZUFzc2luZ0NvbnRhY3RzUnEge1xuICB0b2tlbjogICAgICAgICAgIHN0cmluZztcbiAgc3RhcnRfZGF0ZTogICAgICBzdHJpbmc7XG4gIGZpbmlzaF9kYXRlOiAgICAgc3RyaW5nO1xuICBjb2RlVHlwZUNvbnN1bHQ6IG51bWJlcjtcbiAgc2VsZWN0ZWR0eXBlQXNzaW5nOm51bWJlcjtcbiAgdmFsdWVBc2luZzogbnVtYmVyO1xufVxuZXhwb3J0IGludGVyZmFjZSBBc3NpbmdDdXN0b21lcnNCeVR5cGVBc3NpbmdDb250YWN0Rm9yQWR2aXNlclJxIHtcbiAgdG9rZW46ICAgICAgICAgICAgICBzdHJpbmc7XG4gIGNvZGVUeXBlQ29uc3VsdDogICAgbnVtYmVyO1xuICBmaW5pc2hfZGF0ZTogICAgICAgIHN0cmluZztcbiAgc2VsZWN0ZWR0eXBlQXNzaW5nOiBudW1iZXI7XG4gIHN0YXJ0X2RhdGU6ICAgICAgICAgc3RyaW5nO1xuICB2YWx1ZUFzaW5nOiAgICAgICAgIG51bWJlcjtcbiAgY29kZUFkdmlzZXI6ICAgICAgICBudW1iZXI7XG4gIGFzc2lnbm1lbnRzOiAgICAgICAgQXNzaWdubWVudFJxW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXNzaWdubWVudFJxIHtcbiAgY29kZTogIG51bWJlcjtcbiAgdmFsdWU6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBnZXRTdW1tYXJ5QnlDb21tZXJjaWFsQWR2aXNvclJxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgc3RhcnRfZGF0ZTogc3RyaW5nO1xuICBlbmRfZGF0ZTogc3RyaW5nO1xuICBpbmNsdWRlX2RldGFpbHM6IGZhbHNlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDcmVhdGVUeXBlUGF5bWVudFJxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgdHlwZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDcmVhdGVDb21taXNzaW9uQXJlYVJxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICBjYW1wdXM/OiBudW1iZXI7XG4gIGFjYWRlbWljX3BsYW4/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUFzc2lnbkNvdXJzZVR5cGVzVG9BcmVhUnEge1xuICB0b2tlbjogc3RyaW5nO1xuICBjb21taXNzaW9uX2FyZWFfY29kZTogbnVtYmVyO1xuICBjb3Vyc2VfdHlwZV9jb2RlczogbnVtYmVyW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNyZWF0ZVBheW1lbnRBcmVhQ29tbWlzc2lvblJxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgYXJlYV9jb3Vyc2U6IG51bWJlcjtcbiAgdHlwZV9wYXltZW50OiBudW1iZXI7XG4gIGFtb3VudDogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDcmVhdGVUeXBlVXNlckNvbW1pc3Npb25ScSB7XG4gIHRva2VuOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgY29uY2VwdF9jb2RlczogbnVtYmVyW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUFzc2lnbkNvbW1pc3Npb25Nb2RlbFRvVXNlclJxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgdXNlcl9jb2RlOiBudW1iZXI7XG4gIHR5cGVfdXNlcl9jb21taXNzaW9uX2NvZGU6IG51bWJlcjtcbiAgZ29hbF9jb2RlPzogbnVtYmVyO1xuICBib251c19hbW91bnQ/OiBudW1iZXI7XG4gIHBlcmNlbnRhZ2VfcmF0ZT86IG51bWJlcjtcbiAgcGFyYW1zOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUdldEFjdGl2ZUNvbW1pc3Npb25Hb2FsRm9yVXNlclJxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgdXNlcl9jb2RlOiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVBheUNvbW1pc3Npb25zUnEge1xuICB0b2tlbjogc3RyaW5nO1xuICB1c2VyX2NvZGVzOiBudW1iZXJbXTtcbiAgc3RhcnRfZGF0ZTogc3RyaW5nO1xuICBlbmRfZGF0ZTogc3RyaW5nO1xuICBub3Rlcz86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJR2V0U3VtbWFyeUJ5Q29tbWVyY2lhbEFkdmlzb3JScSB7XG4gICAgdG9rZW46IHN0cmluZztcbiAgICBzdGFydF9kYXRlPzogc3RyaW5nO1xuICAgIGVuZF9kYXRlPzogc3RyaW5nO1xuICAgIGNhbXB1cz86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJR2V0Q29kU3R1ZGVudERldGFpbHNCeUFkdmlzZXJScSB7XG4gIHRva2VuOiBzdHJpbmc7XG4gIHN0YXJ0X2RhdGU/OiBzdHJpbmc7XG4gIGVuZF9kYXRlPzogc3RyaW5nO1xufVxuXG5cbmV4cG9ydCBpbnRlcmZhY2UgSVRva2VuUnEge1xuICAgIHRva2VuOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVVwZGF0ZVBheW1lbnRBcmVhQ29tbWlzc2lvblJxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgYW1vdW50OiBudW1iZXI7XG4gIHR5cGVfcGF5bWVudF9jb2RlPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDb21taXNzaW9uQ29uZGl0aW9uIHtcbiAgY29kZTogbnVtYmVyO1xuICBrZXk6IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICBkZXNjcmlwdGlvbjogc3RyaW5nIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQWdyZWVtZW50IHtcbiAgY29kZTogbnVtYmVyO1xuICBuYW1lOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUFkZENvbmRpdGlvblRvUnVsZVJxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgY29uZGl0aW9uX2lkOiBudW1iZXI7XG4gIG9wZXJhdG9yOiBzdHJpbmc7XG4gIHZhbHVlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVVwZGF0ZVR5cGVQYXltZW50UnEge1xuICB0b2tlbjogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uOiBzdHJpbmcgfCBudWxsO1xuICB0eXBlOiBzdHJpbmc7XG59XG5cblxuZXhwb3J0IGludGVyZmFjZSBJT2J0UHJlYXNzaWduZWRDb3Vyc2VzQW5kU3R1ZGVudEVucm9sbFJzIHtcbiAgICBzdHVkZW50OiAgICAgICAgICAgICAgICBJSXB0VXNlckZ1bGxEYXRhUnE7XG4gICAgcHJlQXNzaWduZWRDb3Vyc2VzOiAgICAgbnVtYmVyW107XG4gICAgcmVnaXN0cmF0aW9uSW5Qcm9ncmVzczogSVJlZ2lzdHJhdGlvbkluUHJvZ3Jlc3NSc1tdO1xuICAgIGhhc0Vucm9sbG1lbnRzOiAgICAgICAgIGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVJlZ2lzdHJhdGlvbkluUHJvZ3Jlc3NScyB7XG4gICAgY29kZTogICAgICAgICAgICAgICAgICBudW1iZXI7XG4gICAgY291cnNlOiAgICAgICAgICAgICAgICBudW1iZXI7XG4gICAgY291cnNlX3R5cGU6ICAgICAgICAgICBudW1iZXI7XG4gICAgYWdyZWVtZW50OiAgICAgICAgICAgICBudW1iZXI7XG4gICAgZW5nbGlzaF9sZXZlbDogICAgICAgICBudW1iZXI7XG4gICAgc3R1ZGVudDogICAgICAgICAgICAgICBudW1iZXI7XG4gICAgcGFyZW50OiAgICAgICAgICAgICAgICBudW1iZXI7XG4gICAgYWRpdGlvbmFsX2luZm9ybWF0aW9uOiBudW1iZXI7XG4gICAgYWR2aXNlcjogICAgICAgICAgICAgICBudW1iZXI7XG4gICAgY29kX3N0YXR1czogICAgICAgICAgICBudW1iZXI7XG4gICAgY29kX3ByaWNlOiAgICAgICAgICAgICBudW1iZXI7XG4gICAgY29kX3BhaWQ6ICAgICAgICAgICAgICBudW1iZXI7XG4gICAgYWNjZXB0X3Rlcm1zX2NvZGU6ICAgICBudW1iZXIgfCBudWxsO1xuICAgIGNyZWF0ZWRfYXQ6ICAgICAgICAgICAgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElSZW5ld2FsUmVzdWx0UnMge1xuICBzdHVkZW50X2NvZGU6IG51bWJlcjtcbiAgc3R1ZGVudF9uYW1lOiBzdHJpbmc7XG4gIHN0dWRlbnRfaWRfY2FyZDogc3RyaW5nO1xuICBzdGF0dXM6IHN0cmluZztcbiAgZGF0YTogYW55OyAvLyBQdWVkZXMgdGlwYXIgZXN0byBtw6FzIGVzcGVjw61maWNhbWVudGUgc2kgY29ub2NlcyBsYSBlc3RydWN0dXJhIGRlIGRhdGFcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJUmVuZXdhbEVycm9yUnMge1xuICBzdHVkZW50X2NvZGU6IG51bWJlcjtcbiAgc3R1ZGVudF9uYW1lOiBzdHJpbmc7XG4gIHN0dWRlbnRfaWRfY2FyZDogc3RyaW5nO1xuICBzdGF0dXM6IG51bWJlcjtcbiAgbWVzc2FnZTogc3RyaW5nO1xuICB3YXJuaW5nPzogYW55OyAvLyBQdWVkZSBzZXIgdW4gb2JqZXRvIG8gc3RyaW5nIChzZSBwYXJzZWEgc2kgZXMgbmVjZXNhcmlvKVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElFeHRlbmRlZENvZEJ5c3R1ZGVudHNScyBleHRlbmRzIElDb2RCeXN0dWRlbnRzUnMge1xuICBpc19yZW5ld2VkPzogYm9vbGVhbjtcbiAgcmVuZXdhbF9lcnJvcj86IHN0cmluZyB8IG51bGw7XG4gIG5ld19jb2RfZGF0YT86IGFueTtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgSUxvY2FsUmVuZXdhbFJlc3VsdFJzIHtcbiAgc3R1ZGVudF9jb2RlOiBzdHJpbmc7XG4gIHN0dWRlbnRfbmFtZTogc3RyaW5nO1xuICBzdHVkZW50X2lkX2NhcmQ6IHN0cmluZztcbiAgZGF0YTogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElMb2NhbFJlbmV3YWxFcnJvclJzIHtcbiAgc3R1ZGVudF9jb2RlOiBzdHJpbmc7XG4gIHN0dWRlbnRfbmFtZTogc3RyaW5nO1xuICBzdHVkZW50X2lkX2NhcmQ6IHN0cmluZztcbiAgbWVzc2FnZTogc3RyaW5nO1xuICB3YXJuaW5nPzogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElBc3NpZ25TdWJvcmRpbmF0ZVJxIGV4dGVuZHMgSVRva2VuUnEge1xuICBtYW5hZ2VyX2NvZGU6IG51bWJlcjtcbiAgc3Vib3JkaW5hdGVfY29kZTogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElSZW1vdmVTdWJvcmRpbmF0ZVJxIGV4dGVuZHMgSVRva2VuUnEge1xuICBtYW5hZ2VyX2NvZGU6IG51bWJlcjtcbiAgc3Vib3JkaW5hdGVfY29kZTogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElBc3NpZ25TdWJvcmRpbmF0ZXNNYXNzaXZlUnEgZXh0ZW5kcyBJVG9rZW5ScSB7XG4gIG1hbmFnZXJfY29kZTogbnVtYmVyO1xuICBzdWJvcmRpbmF0ZV9jb2RlczogbnVtYmVyW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVVwZGF0ZVR5cGVVc2VyQ29tbWlzc2lvblJxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICBjb25jZXB0X2NvZGVzOiBudW1iZXJbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJUGF5U2VsZWN0ZWRDb21taXNzaW9uc1JxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgdXNlcl9jb2RlOiBudW1iZXI7XG4gIGNvbW1pc3Npb25zX3RvX3BheTogSUNvbW1pc3Npb25zVG9QYXlScVtdO1xuICBvYnNlcnZhdGlvbjogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDb21taXNzaW9uc1RvUGF5UnEge1xuICBjb2RfY29kZTogbnVtYmVyO1xuICBjb21taXNzaW9uX2Ftb3VudDogbnVtYmVyO1xuICBtb3Rpdm9fZGV0YWxsZTogc3RyaW5nO1xuICBydWxlX2NvZGVfYXBwbGllZDogbnVtYmVyIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJUGF5QWR2aXNvckJvbnVzZXNScSB7XG4gIHRva2VuOiBzdHJpbmc7XG4gIHVzZXJfY29kZTogbnVtYmVyO1xuICBzdGFydF9kYXRlOiBzdHJpbmc7XG4gIGVuZF9kYXRlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUdldFN1Ym9yZGluYXRlc1JxIGV4dGVuZHMgSVRva2VuUnEge1xuICBtYW5hZ2VyX2NvZGU6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJTWFuYWdlU3Vib3JkaW5hdGVScSBleHRlbmRzIElUb2tlblJxIHtcbiAgbWFuYWdlcl9jb2RlOiBudW1iZXI7XG4gIHN1Ym9yZGluYXRlX2NvZGU6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJRGVsZXRlVHlwZVVzZXJDb21taXNzaW9uUnEge1xuICB0b2tlbjogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDb25zdWx0Q29tbWlzc2lvbnNCeUFkdmlzZXJScyB7XG4gIGNvZHM6ICAgICAgICAgSUNvbW1pc3Npb25MaXN0UnNbXTtcbiAgdHJhbnNhY3Rpb25zOiBJVHJhbnNhY3Rpb25Sc1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDb21taXNzaW9uTGlzdFJzIHtcbiAgYWR2aXNlcl9jb2RlOiAgICAgICAgICAgICAgbnVtYmVyO1xuICBjb2RfY29kZTogICAgICAgICAgICAgICAgICBudW1iZXI7XG4gIHN0dWRlbnRfbmFtZTogICAgICAgICAgICAgIHN0cmluZztcbiAgY29kX3N0YXR1c19jb2RlOiAgICAgICAgICAgbnVtYmVyO1xuICBjb2Rfc3RhdHVzX25hbWU6ICAgICAgICAgICBzdHJpbmc7XG4gIGNvZF9kYXRlOiAgICAgICAgICAgICAgICAgIERhdGU7XG4gIGNvdXJzZV90eXBlX25hbWU6ICAgICAgICAgIHN0cmluZztcbiAgY291cnNlX3R5cGVfbGFiZWw6ICAgICAgICAgc3RyaW5nO1xuICBjb3Vyc2VfY29kZTogICAgICAgICAgICAgICBudW1iZXIgfCBudWxsO1xuICBhZ3JlZW1lbnRfY29kZTogICAgICAgICAgICBudW1iZXI7XG4gIGFncmVlbWVudF9uYW1lOiAgICAgICAgICAgIHN0cmluZyB8IG51bGw7XG4gIGNvbW1pc3Npb25fYXJlYV9uYW1lOiAgICAgIHN0cmluZyB8IG51bGw7XG4gIHBsYW5fZGVfcGFnbzogICAgICAgICAgICAgIHN0cmluZztcbiAgcGF5bWVudF90eXBlX25hbWU6ICAgICAgICAgc3RyaW5nO1xuICBydWxlX2NvZGVfYXBwbGllZDogICAgICAgICBudW1iZXIgfCBudWxsO1xuICBydWxlX2Jhc2VfYW1vdW50OiAgICAgICAgICBudW1iZXIgfCBzdHJpbmcgfCBudWxsO1xuICBydWxlX2NvbmRpdGlvbnM6ICAgICAgICAgICBudWxsIHwgc3RyaW5nO1xuICBjb21taXNzaW9uX3N0YXR1czogICAgICAgICBudW1iZXI7XG4gIG1vdGl2b19kZXRhbGxlOiAgICAgICAgICAgIHN0cmluZztcbiAgY29tbWlzc2lvbl9hbW91bnQ6ICAgICAgICAgbnVtYmVyIHwgc3RyaW5nO1xuICBjb2RfcHJpY2U6ICAgICAgICAgICAgICAgICBudW1iZXI7XG4gIHBheW1lbnRzX29rOiAgICAgICAgICAgICAgIGJvb2xlYW47XG4gIGV4aXN0aW5nX2NvbW1pc3Npb246ICAgICAgIGJvb2xlYW47XG4gIHN0dWRlbnRfaWRfY2FyZD86ICAgICAgICAgIHN0cmluZyB8IG51bGw7XG4gIGNvbW1pc3Npb25fY29kZTogICAgICAgICAgIG51bWJlcjtcbiAgdHJhbnNhY3Rpb25fY29kZTogICAgICAgICAgbnVtYmVyO1xuICB0eXBlOiAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gIHBheW1lbnRfdmFsaWRhdGlvbjogICAgICAgIFBheW1lbnRWYWxpZGF0aW9uO1xuICB2YWxpZGF0aW9uOiAgICAgICAgICAgICAgICBWYWxpZGF0aW9uW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUJvbnVzTGlzdFJzIHtcbiAgY29tbWlzc2lvbl9zdGF0dXM6IG51bWJlcjtcbiAgdHlwZTogICAgICAgICAgICAgIHN0cmluZztcbiAgbW90aXZvX2RldGFsbGU6ICAgIHN0cmluZztcbiAgY29tbWlzc2lvbl9hbW91bnQ6IG51bWJlcjtcbiAgY29uZmlndXJlZF9hbW91bnQ6IG51bWJlcjtcbiAgYWNoaWV2ZWRfcXVhbnRpdHk6IG51bWJlcjtcbiAgdGFyZ2V0X3F1YW50aXR5OiAgIG51bWJlcjtcbiAgYWR2aXNlcl9jb2RlOiAgICAgIG51bWJlcjtcbiAgYm9udXNfcnVsZTogICAgICAgIG51bWJlciB8IG51bGw7XG59XG5cblxuZXhwb3J0IGludGVyZmFjZSBJRXhpc3RpbmdDb21taXNzaW9uRGF0YVJzIHtcbiAgY29kZTogICAgICAgICAgICAgICAgICAgICBudW1iZXI7XG4gIHRyYW5zYWN0aW9uX2NvZGU6ICAgICAgICAgbnVtYmVyO1xuICB1c2VyX2NvbW1pc3Npb246ICAgICAgICAgIG51bWJlcjtcbiAgdHJhbnNhY3Rpb25fc3RhdHVzOiAgICAgICBudW1iZXI7XG4gIGFtb3VudDogICAgICAgICAgICAgICAgICAgbnVtYmVyO1xuICBjb2RfY29kZTogICAgICAgICAgICAgICAgIG51bWJlcjtcbiAgcGF5bWVudF9jb21taXNzaW9uczogICAgICBudW1iZXI7XG4gIGNyZWF0ZWRfYXQ6ICAgICAgICAgICAgICAgRGF0ZTtcbiAgdXBkYXRlZF9hdDogICAgICAgICAgICAgICBEYXRlO1xuICBwYXltZW50X2FyZWFfY29tbWlzc2lvbj86IFBheW1lbnRBcmVhQ29tbWlzc2lvbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQYXltZW50QXJlYUNvbW1pc3Npb24ge1xuICBjb2RlPzogICAgICAgICBudW1iZXI7XG4gIHR5cGVfcGF5bWVudD86IFR5cGVQYXltZW50O1xuICBhcmVhX2NvdXJzZT86ICBudW1iZXI7XG4gIGFtb3VudD86ICAgICAgIHN0cmluZztcbiAgc3RhdHVzPzogICAgICAgbnVtYmVyO1xuICBjcmVhdGVkX2F0PzogICBEYXRlO1xuICB1cGRhdGVkX2F0PzogICBEYXRlO1xuICBkZWxldGVkX2F0PzogICBEYXRlIHwgbnVsbDtcbiAgY29uZGl0aW9ucz86IElDb25kaXRpb25Sc1tdO1xuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHlwZVBheW1lbnQge1xuICBjb2RlPzogICAgICAgIG51bWJlcjtcbiAgbmFtZT86ICAgICAgICBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICB0eXBlPzogICAgICAgIHN0cmluZztcbiAgY3JlYXRlZF9hdD86ICBEYXRlO1xuICB1cGRhdGVkX2F0PzogIERhdGU7XG4gIGRlbGV0ZWRfYXQ/OiAgRGF0ZSB8IG51bGw7XG59XG5cblxuZXhwb3J0IGludGVyZmFjZSBQYXltZW50VmFsaWRhdGlvbiB7XG4gIGVucm9sbG1lbnRfb2s6ICAgICAgYm9vbGVhbjtcbiAgZmVlMV9vazogICAgICAgICAgICBib29sZWFuO1xuICBpbnN0YWxsbWVudHNfcGFpZDogIG51bWJlcjtcbiAgcGF5bWVudHNfb2s6ICAgICAgICBib29sZWFuO1xuICBlbnJvbGxtZW50X3BhaWQ6ICAgIG51bWJlcjtcbiAgZW5yb2xsbWVudF9wZW5kaW5nOiBudW1iZXI7XG4gIGZlZTFfcGFpZDogICAgICAgICAgbnVtYmVyO1xuICBmZWUxX3BlbmRpbmc6ICAgICAgIG51bWJlcjtcbiAgdG90YWxfcGFpZDogICAgICAgICBudW1iZXI7XG4gIHRvdGFsX3BlbmRpbmc6ICAgICAgbnVtYmVyO1xuICBudW1iZXJfcGFpZDogICAgICAgIG51bWJlcjtcbiAgbnVtYmVyX3BlbmRpbmc6ICAgICBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVmFsaWRhdGlvbiB7XG4gIGtleTogICAgICAgc3RyaW5nO1xuICBvcGVyYXRvcjogIHN0cmluZztcbiAgdmFsdWU6ICAgICBzdHJpbmc7XG4gIGNvZF92YWx1ZTogbnVtYmVyIHwgc3RyaW5nO1xuICBjaGVjazogICAgIGJvb2xlYW47XG4gIG1lc3NhZ2U6ICAgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElUcmFuc2FjdGlvblJzIHtcbiAgY29kZTogICAgICAgICAgICAgICAgbnVtYmVyO1xuICBwYXltZW50X2JpbGxfY29kZTogICBudW1iZXIgfCBudWxsO1xuICBnZW5lcmF0ZWRfYnk6ICAgICAgICBJVXNlclRyYW5zYWN0aW9uUnMgfCBudW1iZXIgIHwgbnVsbDtcbiAgYXBwcm92ZWRfYnk6ICAgICAgICAgSVVzZXJUcmFuc2FjdGlvblJzIHwgbnVtYmVyIHwgbnVsbDtcbiAgdXNlcl9jb21taXNzaW9uOiAgICAgbnVtYmVyO1xuICB0cmFuc2FjdGlvbl9zdGF0dXM6ICBudW1iZXI7XG4gIG9ic2VydmF0aW9uOiAgICAgICAgIHN0cmluZztcbiAgc3RhcnRfdHJhbnNhY3Rpb246ICAgRGF0ZTtcbiAgZW5kX3RyYW5zYWN0aW9uOiAgICAgRGF0ZSB8IG51bGw7XG4gIGRlbGV0ZWRfYXQ6ICAgICAgICAgIERhdGUgfCBudWxsO1xuICB1cGRhdGVkX2F0OiAgICAgICAgICBEYXRlIHwgbnVsbDtcbiAgY3JlYXRlZF9hdDogICAgICAgICAgRGF0ZSB8IG51bGw7XG4gIG1hbmFnZWRfY29tbWlzc2lvbnM/OiBJRXhpc3RpbmdDb21taXNzaW9uRGF0YVJzW10gfCBJQ29tbWlzc2lvbkxpc3RSc1tdO1xuICBtYW5hZ2VkX2JvbnVzPzogICAgICAgSU1hbmFnZWRCb251c1JzW107XG4gIHBheW1lbnRfYmlsbD86ICAgICAgICBudW1iZXIgfCBJUGF5bWVudEJpbGxHcmFwaFJzIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJTWFuYWdlZEJvbnVzUnMge1xuICBjb2RlOiAgICAgICAgICAgICAgIG51bWJlcjtcbiAgdXNlcl9ib251czogICAgICAgICBudW1iZXI7XG4gIGFtb3VudDogICAgICAgICAgICAgbnVtYmVyO1xuICBib251c19ydWxlOiAgICAgICAgIG51bWJlcjtcbiAgY29kX3JlYWNoZWQ6ICAgICAgICBudW1iZXI7XG4gIHRyYW5zYWN0aW9uX3N0YXR1czogbnVtYmVyO1xuICB0cmFuc2FjdGlvbl9jb2RlOiAgIG51bWJlcjtcbiAgcGVyaW9kX21vbnRoOiAgICAgICBudW1iZXI7XG4gIHBlcmlvZF95ZWFyOiAgICAgICAgbnVtYmVyO1xuICBkZWxldGVkX2F0OiAgICAgICAgIERhdGUgfCBudWxsO1xuICBjcmVhdGVkX2F0OiAgICAgICAgIERhdGU7XG4gIHVwZGF0ZWRfYXQ6ICAgICAgICAgRGF0ZTtcbn1cblxuXG5leHBvcnQgaW50ZXJmYWNlIElVc2VyVHJhbnNhY3Rpb25ScyB7XG4gIGNvZGU6IG51bWJlcjtcbiAgbmFtZTogc3RyaW5nO1xufVxuXG5cbmV4cG9ydCBpbnRlcmZhY2UgSUFwcHJvdmVUcmFuc2FjdGlvbkNvbW1pc3Npb25ScSB7XG4gIHRva2VuOiBzdHJpbmc7XG4gIHRyYW5zYWN0aW9uX2NvZGU6IG51bWJlcjtcbiAgb2JzZXJ2YXRpb246IHN0cmluZztcbiAgd2FsbGV0OiAgbnVtYmVyO1xuICBiYW5rIDogbnVtYmVyO1xuICBwYXltZW50X3JlZmVyZW5jZTogbnVtYmVyO1xuICBwYXltZW50X21ldGhvZDogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElyZWplY3RUcmFuc2FjdGlvbkNvbW1pc3Npb25ScSB7XG4gIHRva2VuOiBzdHJpbmc7XG4gIHRyYW5zYWN0aW9uX2NvZGU6IG51bWJlcjtcbiAgb2JzZXJ2YXRpb246IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJRWRpdENvbmRpdGlvblJ1bGVScSB7XG4gIHRva2VuOiAgICAgICAgc3RyaW5nO1xuICBjb2RlOiAgICAgICAgIG51bWJlcjtcbiAgb3BlcmF0b3I6ICAgICBzdHJpbmc7XG4gIHZhbHVlOiAgICAgICAgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElBcHByb3ZlVHJhbnNhY3Rpb25ScyB7XG4gIHRyYW5zYWN0aW9uOiAgICAgICAgSVRyYW5zYWN0aW9uUnM7XG4gIGJpbGw6ICAgICAgICAgICAgICAgSUJpbGxDcmVhdGVkUnM7XG4gIGJpbGxfb2JzZXJ2YXRpb24/OiAgSUJpbGxPYnNlcnZhdGlvbkxpc3RScztcbiAgY29tbWlzc2lvbnM6ICAgICAgICBJQ29tbWlzc2lvbkxpc3RSc1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElCaWxsQ3JlYXRlZFJzIHtcbiAgcGF5bWVudF9tZXRob2Q6ICAgICBudW1iZXI7XG4gIHBheW1lbnRfc2VydmljZXM6ICAgbnVtYmVyO1xuICBwYXltZW50X3dhbGxldDogICAgIG51bWJlcjtcbiAgYmFuazogICAgICAgICAgICAgICBzdHJpbmc7XG4gIHBheW1lbnRfcmVmZXJlbmNlOiAgc3RyaW5nO1xuICBnZW5lcmF0ZWRfZm9yOiAgICAgIG51bWJlcjtcbiAgZ2VuZXJhdGVkX2J5OiAgICAgICBudW1iZXI7XG4gIHR5cGVfbW92ZW1lbnRzOiAgICAgbnVtYmVyO1xuICBjb21tb25fZXhwZW5zZXM6ICAgIG51bWJlcjtcbiAgdG90YWxfYW1vdW50OiAgICAgICBudW1iZXI7XG4gIHBheW1lbnRfYW1vdW50OiAgICAgbnVtYmVyO1xuICBvdXRzdGFuZGluZ19hbW91bnQ6IG51bWJlcjtcbiAgcG9zaXRpdmVfYW1vdW50OiAgICBudW1iZXI7XG4gIGRpc2NvdW50OiAgICAgICAgICAgbnVtYmVyO1xuICBwYXllcl9uYW1lOiAgICAgICAgIG51bGw7XG4gIHBheWVyX2RvY3VtZW50OiAgICAgbnVsbDtcbiAgcGF5bWVudF9kYXRlOiAgICAgICBEYXRlO1xuICBvYnNlcnZhdGlvbjogICAgICAgIHN0cmluZztcbiAgdHJhbnNmZXJfY29kZTogICAgICBudWxsO1xuICBjb2RlOiAgICAgICAgICAgICAgIG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQmlsbE9ic2VydmF0aW9uTGlzdFJzIHtcbiAgZGV0YWlsczogICAgICAgICAgIElEZXRhaWxCaWxsUnNbXTtcbiAgdG90YWxfY29tbWlzc2lvbnM6IG51bWJlcjtcbiAgdG90YWxfYW1vdW50OiAgICAgIG51bWJlcjtcbiAgcGVyaW9kOiAgICAgICAgICAgIElQZXJpb2RCaWxsUnM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSURldGFpbEJpbGxScyB7XG4gIGFyZWE6ICAgICBzdHJpbmc7XG4gIHF1YW50aXR5OiBudW1iZXI7XG4gIGFtb3VudDogICBudW1iZXI7XG4gIHN0YXR1c2VzOiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVBlcmlvZEJpbGxScyB7XG4gIGZyb206IHN0cmluZztcbiAgdG86ICAgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElTaG93VHJhbnNhY3Rpb25CaWxsUnEge1xuICB0b2tlbjogc3RyaW5nO1xuICBjb2RlOiAgIG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJYWRkRGV2b2x1dGlvbkNvbW1pc3Npb25ScSB7XG4gIHRva2VuOiAgICAgICAgICAgICAgc3RyaW5nO1xuICBjb21taXNzaW9uX2NvZGU6ICAgIG51bWJlcjtcbiAgdHJhbnNhY3Rpb25fY29kZTogICBudW1iZXI7XG4gIGNvbW1pc3Npb25zX3RvX2Rldm9sdmUgOiBJY29tbWlzc2lvbnNfdG9fZGV2b2x2ZVJxW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSWNvbW1pc3Npb25zX3RvX2Rldm9sdmVScSB7XG4gIGNvbW1pc3Npb25fY29kZTogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElvYnRhaW5UcmFuc2FjdGlvbnNCeVN0YXR1c1JxIHtcbiAgdG9rZW46ICAgICAgIHN0cmluZztcbiAgc3RhdHVzOiAgICAgIG51bWJlcjtcbiAgdXNlcl9jb2RlOiAgIG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJYWR2aXNlclJlc3VtZVJzIHtcbiAgc3RhdHVzOiAgICAgICBzdHJpbmc7XG4gIG1lc3NhZ2U6ICAgICAgc3RyaW5nO1xuICByYW5nb19mZWNoYXM6IElSYW5nb0ZlY2hhc1JzO1xuICByZXN1bWVuOiAgICAgIElSZXN1bWVuQWR2aXNvclJzO1xuICBhc2Vzb3JlczogICAgIElBdmlzb3JEZXRhaWx0UnNbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJUmFuZ29GZWNoYXNScyB7XG4gIGZlY2hhX2luaWNpbzogRGF0ZTtcbiAgZmVjaGFfZmluOiAgICBEYXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElBdmlzb3JEZXRhaWx0UnMge1xuICBnZW5lcmFsOiAgICAgICAgIElBZHZpc29yR2VuZXJhbFJzO1xuICBtZXRyaWNhczogICAgICAgIElNZXRyaWNzUnM7XG4gIGNvbWlzaW9uZXM6ICAgICAgSUJvbm9zQ29tbWlzc2lvblJzO1xuICBib25vczogICAgICAgICAgIElCb25vc0NvbW1pc3Npb25ScztcbiAgdHJhbnNhY2Npb25lczogICBJVHJhbnNhY2Npb25lc0xpc3RScztcbiAgYWR2ZXJ0ZW5jaWFzOiAgICBhbnlbXTtcbiAgYWN0aXZlX2NvbmNlcHRzOiBzdHJpbmdbXTtcbiAgZXZhbHVhdGlvbnM6ICAgICBJQ29tbWlzc2lvbkxpc3RSc1tdIHwgSUJvbnVzTGlzdFJzW10gO1xuICBlZmVjdGl2aWRhZDogICAgIElFZmVjdGl2aWRhZFJzO1xufVxuXG5cbmV4cG9ydCBpbnRlcmZhY2UgSUFkdmlzb3JHZW5lcmFsUnMge1xuICBjb2RpZ29fYXNlc29yOiAgICAgICAgbnVtYmVyO1xuICBub21icmVfYXNlc29yOiAgICAgICAgc3RyaW5nO1xuICByb2xfYXNlc29yOiAgICAgICAgICAgSVJvbEFzZXNvclJzO1xuICB0aXBvX2NvbnRyYXRvX25vbWJyZTogc3RyaW5nO1xuICB0aXBvX2NvbnRyYXRvOiAgICAgICAgSVRpcG9Db250cmF0b1JzO1xuICBtYXRyaWN1bGFkb3M6ICAgICAgICAgbnVtYmVyO1xuICBhY3Rpdm9zOiAgICAgICAgICAgICAgbnVtYmVyO1xuICByZXRpcmFkb3M6ICAgICAgICAgICAgbnVtYmVyO1xuICBwYXVzYWRvczogICAgICAgICAgICAgbnVtYmVyO1xuICBjdWxtaW5hZG9zOiAgICAgICAgICAgbnVtYmVyO1xuICBzdXNwZW5kaWRvczogICAgICAgICAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElSb2xBc2Vzb3JScyB7XG4gIGNvZGU6IG51bWJlcjtcbiAgcm9sZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElUaXBvQ29udHJhdG9ScyB7XG4gIGNvZGU6ICAgICAgICAgICAgICAgIG51bWJlcjtcbiAgbmFtZTogICAgICAgICAgICAgICAgc3RyaW5nO1xuICBzdGF0dXM6ICAgICAgICAgICAgICBudW1iZXI7XG4gIGNyZWF0ZWRfYXQ6ICAgICAgICAgIERhdGU7XG4gIHVwZGF0ZWRfYXQ6ICAgICAgICAgIERhdGU7XG4gIGNvbW1pc3Npb25fY29uY2VwdHM6IElDb21taXNzaW9uQ29uY2VwdFJzW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNvbW1pc3Npb25Db25jZXB0UnMge1xuICBjb2RlOiAgICAgICAgbnVtYmVyO1xuICBuYW1lOiAgICAgICAgc3RyaW5nO1xuICBrZXk6ICAgICAgICAgc3RyaW5nO1xuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICBwaXZvdDogICAgICAgSVBpdm90VHlwZVVzZXJDb21taXNzaW9uQ29uY2VwdFJzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElQaXZvdFR5cGVVc2VyQ29tbWlzc2lvbkNvbmNlcHRScyB7XG4gIHR5cGVfdXNlcl9jb21taXNzaW9uX2NvZGU6IG51bWJlcjtcbiAgY29tbWlzc2lvbl9jb25jZXB0X2NvZGU6ICAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElSZXN1bWVuQWR2aXNvclJzIHtcbiAgZ2VuZXJhbDogICAgICAgSVJlc3VtZW5HZW5lcmFsUnM7XG4gIG1ldHJpY2FzOiAgICAgIElNZXRyaWNzUnM7XG4gIGNvbWlzaW9uZXM6ICAgIElCb25vc0NvbW1pc3Npb25ScztcbiAgYm9ub3M6ICAgICAgICAgSUJvbm9zQ29tbWlzc2lvblJzO1xuICB0cmFuc2FjY2lvbmVzOiBJVHJhbnNhY2Npb25lc0xpc3RScztcbiAgZWZlY3RpdmlkYWQ6ICAgSUVmZWN0aXZpZGFkUnM7XG4gIGFkdmVydGVuY2lhczogIGFueVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElSZXN1bWVuR2VuZXJhbFJzIHtcbiAgdG90YWxfYXNlc29yZXM6IG51bWJlcjtcbiAgbWF0cmljdWxhZG9zOiAgIG51bWJlcjtcbiAgYWN0aXZvczogICAgICAgIG51bWJlcjtcbiAgcmV0aXJhZG9zOiAgICAgIG51bWJlcjtcbiAgcGF1c2Fkb3M6ICAgICAgIG51bWJlcjtcbiAgY3VsbWluYWRvczogICAgIG51bWJlcjtcbiAgc3VzcGVuZGlkb3M6ICAgIG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJTWV0cmljc1JzIHtcbiAgbWF0cmljdWxhX3BhZ2FkYV9jb3VudDogICAgICAgICAgbnVtYmVyO1xuICBtYXRyaWN1bGFfcGFnYWRhX3BlcmNlbnRhZ2U6ICAgICBudW1iZXI7XG4gIHByaW1lcmFfY3VvdGFfcGFnYWRhX2NvdW50OiAgICAgIG51bWJlcjtcbiAgcHJpbWVyYV9jdW90YV9wYWdhZGFfcGVyY2VudGFnZTogbnVtYmVyO1xuICBlZmVjdGl2aWRhZF9jb3VudDogICAgICAgICAgICAgICBudW1iZXI7XG4gIGVmZWN0aXZpZGFkX3BlcmNlbnRhZ2U6ICAgICAgICAgIG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJVHJhbnNhY2Npb25lc0xpc3RScyB7XG4gIHRvdGFsX3RyYW5zYWNjaW9uZXM6IG51bWJlcjtcbiAgdG9kYXM6ICAgICAgICAgICAgICAgSVRyYW5zYWN0aW9uUnNbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQm9ub3NDb21taXNzaW9uUnMge1xuICBwZW5kaWVudGVzX2NvdW50OiBudW1iZXI7XG4gIG1vbnRvX3BlbmRpZW50ZTogIG51bWJlcjtcbiAgcGFnYWRvc19jb3VudDogICAgbnVtYmVyO1xuICBtb250b19wYWdhZG86ICAgICBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUVmZWN0aXZpZGFkUnMge1xuICBwb3JjZW50YWplOiBudW1iZXI7XG4gIGNhdGVnb3JpYTogIHN0cmluZztcbiAgY29sb3I6ICAgICAgc3RyaW5nO1xuICBtZW5zYWplOiAgICBzdHJpbmc7XG59XG5cblxuXG5cbmV4cG9ydCBpbnRlcmZhY2UgSUdldENvbW1pc3Npb25zQnlUcmFuc2FjdGlvbkNvZGVScSB7XG4gIHRva2VuOiBzdHJpbmc7XG4gIHRyYW5zYWN0aW9uX2NvZGU6IG51bWJlcjtcbiAgZW5kX2RhdGU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNhbmNlbGxUcmFuc2FjdGlvbkJpbGxScSB7XG4gIHRva2VuOiAgICAgICAgc3RyaW5nO1xuICBjb2RlOiAgICAgICAgIG51bWJlcjtcbiAgb2JzZXJ2YXRpb246ICBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSWFkZEJvbnVzUnVsZVJxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgY29kZT86IG51bWJlcjtcbiAgY29kX2dvYWw/OiBudW1iZXI7XG4gIGFtb3VudD86IG51bWJlcjtcbiAgZGF5cz86IG51bWJlcjtcbiAgbW9udGg/OiBudW1iZXI7XG4gIHllYXI/OiBudW1iZXI7XG4gIGVucm9sbG1lbnQ/OiBudW1iZXI7XG4gIGZlZV9vbmU/OiBudW1iZXI7XG4gIGNhc2hfcGF5bWVudD86IG51bWJlcjtcbiAgc3RhdHVzPzogbnVtYmVyO1xuICB0eXBlX3VzZXI/OiBudW1iZXI7XG4gIGNhbXB1cz86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJcmVtb3ZlQ29tbWlzc2lvbkZyb21UcmFuc2FjdGlvblJxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgdHJhbnNhY3Rpb25fY29kZT86IG51bWJlcjtcbiAgY29tbWlzc2lvbl9jb2RlPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElUb2tlbkNhbXB1c1JxIGV4dGVuZHMgSVRva2VuUnEge1xuICBjYW1wdXM6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQ29tbWlzc2lvbkluaXRpYWxDb25maWdScyB7XG4gICAgYXJlYXM6ICAgICAgICAgICAgIElBcmVhUnNbXTtcbiAgICBjb3Vyc2VzOiAgICAgICAgICAgSUNvdXJzZVR5cGVDb21taXNzaW9uUnNbXTtcbiAgICBhZ3JlZW1lbnRzOiAgICAgICAgSUFncmVlbWVudExpc3RSc1tdO1xuICAgIHBheW1lbnRzRm9yRGlhbG9nOiBUeXBlUGF5bWVudFtdO1xuICAgIGNhdGVnb3JpZXM6ICAgICAgICBJQ2F0ZWdvcnlSc1tdO1xuICAgIGNvbnRyYWN0VHlwZXM6ICAgICBJQ29udHJhY3RUeXBlUnNbXTtcbiAgICBwbGFuczogICAgICAgICAgICAgSUFjYWRlbWljUGxhbkxpc3RSc1tdO1xuICAgIGNhbXB1czogICAgICAgICAgICBJR2V0Q2FtcHVzRGV0YWlsTGlzdFJzW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUFjYWRlbWljUGxhbkxpc3RScyB7XG4gICAgY29kZTogICAgICAgbnVtYmVyO1xuICAgIG5hbWU6ICAgICAgIHN0cmluZztcbiAgICBhZnRlcl9hZ2U6ICBudW1iZXI7XG4gICAgYmVmb3JlX2FnZTogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElBZ3JlZW1lbnRMaXN0UnMge1xuICAgIGNvZGU6ICAgICBudW1iZXI7XG4gICAgbmFtZTogICAgIHN0cmluZztcbiAgICBlbmRfdGltZTogRGF0ZTtcbiAgICBjYXRlZ29yeTogbnVtYmVyO1xuICAgIHN0YXR1czogICBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUdldENhbXB1c0RldGFpbExpc3RScyB7XG4gICAgY29kZT86ICAgICAgICAgICAgICAgICAgICAgICBudW1iZXI7XG4gICAgbmFtZT86ICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgY2l0eT86ICAgICAgICAgICAgICAgICAgICAgICBudW1iZXI7XG4gICAgZW50ZXJwcmlzZT86ICAgICAgICAgICAgICAgICBudW1iZXI7XG4gICAgYmlsbGluZ19wcmVmaXg/OiAgICAgICAgICAgICBudW1iZXI7XG4gICAgc3RhdGU/OiAgICAgICAgICAgICAgICAgICAgICBudW1iZXI7XG4gICAgY3VycmVuY3k/OiAgICAgICAgICAgICAgICAgICBudW1iZXI7XG4gICAgYWRkcmVzcz86ICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgZW1haWw/OiAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgcGhvbmVfcHJlZml4PzogICAgICAgICAgICAgICBudW1iZXI7XG4gICAgcGhvbmU/OiAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgbWFwPzogICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgaW1hZ2VfdXJsPzogICAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgdXBkYXRlZF9hdD86ICAgICAgICAgICAgICAgICBEYXRlO1xuICAgIGNyZWF0ZWRfYXQ/OiAgICAgICAgICAgICAgICAgRGF0ZTtcbiAgICBjaXR5X25hbWU/OiAgICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICBlbnRlcnByaXNlX2NvbXBhbnlfbmFtZT86ICAgIHN0cmluZztcbiAgICBlbnRlcnByaXNlX2NvbW1lcmNpYWxfbmFtZT86IHN0cmluZztcbiAgICBzdGF0ZV9uYW1lPzogICAgICAgICAgICAgICAgIHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQXJlYVJzIHtcbiAgICBjb2RlPzogICAgICAgICAgICAgICAgICAgICBudW1iZXI7XG4gICAgbmFtZT86ICAgICAgICAgICAgICAgICAgICAgc3RyaW5nO1xuICAgIGNhbXB1cz86ICAgICAgICAgICAgICAgICAgIG51bWJlcjtcbiAgICBhY2FkZW1pY19wbGFuPzogICAgICAgICAgICBudW1iZXI7XG4gICAgY3JlYXRlZF9hdD86ICAgICAgICAgICAgICAgRGF0ZTtcbiAgICB1cGRhdGVkX2F0PzogICAgICAgICAgICAgICBEYXRlO1xuICAgIGRlbGV0ZWRfYXQ/OiAgICAgICAgICAgICAgIERhdGU7XG4gICAgY291cnNlX3R5cGVzPzogICAgICAgICAgICAgSUNvdXJzZVR5cGVDb21taXNzaW9uUnNbXTtcbiAgICBwYXltZW50X2FyZWFfY29tbWlzc2lvbnM/OiBQYXltZW50QXJlYUNvbW1pc3Npb25bXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQ291cnNlVHlwZUNvbW1pc3Npb25ScyBleHRlbmRzICBJQ291cnNlVHlwZVJzICB7XG4gICAgY2FtcHVzPzogICAgICAgICAgICBudW1iZXI7XG4gICAgY2F0ZWdvcnk/OiAgICAgICAgICBudW1iZXI7XG4gICAgcGl2b3Q/OiAgICAgICAgICAgIENvdXJzZVBpdm90O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvdXJzZVBpdm90IHtcbiAgICBjb21taXNzaW9uX2FyZWFfY291cnNlX2lkOiBudW1iZXI7XG4gICAgY291cnNlX3R5cGVfaWQ6ICAgICAgICAgICAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDb25kaXRpb25ScyB7XG4gICAgY29kZT86ICAgICAgICAgbnVtYmVyO1xuICAgIHJ1bGVfaWQ/OiAgICAgIG51bWJlcjtcbiAgICBjb25kaXRpb25faWQ/OiBudW1iZXI7XG4gICAgb3BlcmF0b3I/OiAgICAgc3RyaW5nO1xuICAgIHZhbHVlPzogICAgICAgIHN0cmluZztcbiAgICBjcmVhdGVkX2F0PzogICBEYXRlO1xuICAgIHVwZGF0ZWRfYXQ/OiAgIERhdGU7XG4gICAgZGVsZXRlZF9hdD86ICAgRGF0ZTtcbiAgICBjb25kaXRpb24/OiAgICBJQ29tbWlzc2lvbkNvbmRpdGlvbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQ2F0ZWdvcnlScyB7XG4gICAgY29kZTogbnVtYmVyO1xuICAgIG5hbWU6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQ29udHJhY3RUeXBlUnMge1xuICAgIGNvZGU6ICAgICAgICAgICAgICAgIG51bWJlcjtcbiAgICBuYW1lOiAgICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgc3RhdHVzOiAgICAgICAgICAgICAgbnVtYmVyO1xuICAgIGNyZWF0ZWRfYXQ6ICAgICAgICAgIERhdGU7XG4gICAgdXBkYXRlZF9hdDogICAgICAgICAgRGF0ZTtcbiAgICBjb21taXNzaW9uX2NvbmNlcHRzOiBJQ29tbWlzc2lvbkNvbmNlcHRSc1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDb21taXNzaW9uQ29uY2VwdFJzIHtcbiAgICBjb2RlOiAgICAgICAgbnVtYmVyO1xuICAgIG5hbWU6ICAgICAgICBzdHJpbmc7XG4gICAga2V5OiAgICAgICAgIHN0cmluZztcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICAgIHBpdm90OiAgICAgICBJQ29tbWlzc2lvbkNvbmNlcHRQaXZvdFJzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDb21taXNzaW9uQ29uY2VwdFBpdm90UnMge1xuICAgIHR5cGVfdXNlcl9jb21taXNzaW9uX2NvZGU6IG51bWJlcjtcbiAgICBjb21taXNzaW9uX2NvbmNlcHRfY29kZTogICBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUVkaXRDb21taXNzaW9uQXJlYVJxIHtcbiAgdG9rZW46IHN0cmluZztcbiAgY29kZTogbnVtYmVyO1xuICBuYW1lPzogc3RyaW5nO1xuICBjYW1wdXM/OiBudW1iZXI7XG4gIGFjYWRlbWljX3BsYW4/OiBudW1iZXI7XG4gIFxufVxuXG5cbmV4cG9ydCBpbnRlcmZhY2UgSW9idGFpbldhbGxldFdpdGhQcmljZSB7XG4gICAgY2FtcHVzOiBudW1iZXI7XG4gICAgdG9rZW46IHN0cmluZztcbn0iXX0=
|
|
@@ -312,6 +312,11 @@ export class CommercialService extends IPTGeneralService {
|
|
|
312
312
|
this.generateRequestParams(params);
|
|
313
313
|
return this.http.post(serviceUrl, this.httpOptions);
|
|
314
314
|
}
|
|
315
|
+
updateCommissionArea(params) {
|
|
316
|
+
const serviceUrl = this.SERVICE_URL + 'put/update/commission-area';
|
|
317
|
+
this.generateRequestParams(params);
|
|
318
|
+
return this.http.post(serviceUrl, this.httpOptions);
|
|
319
|
+
}
|
|
315
320
|
getAllCommissionAreas(request) {
|
|
316
321
|
const serviceUrl = this.SERVICE_URL + 'get/all/commission/areas';
|
|
317
322
|
this.generateRequestParams(request);
|
|
@@ -592,6 +597,11 @@ export class CommercialService extends IPTGeneralService {
|
|
|
592
597
|
this.generateRequestParams(params);
|
|
593
598
|
return this.http.post(serviceUrl, this.httpOptions);
|
|
594
599
|
}
|
|
600
|
+
getwalletByCampusTransaction(params) {
|
|
601
|
+
const serviceUrl = this.SERVICE_URL + 'get/wallet/by/campus/transaction';
|
|
602
|
+
this.generateRequestParams(params);
|
|
603
|
+
return this.http.post(serviceUrl, this.httpOptions);
|
|
604
|
+
}
|
|
595
605
|
}
|
|
596
606
|
CommercialService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: CommercialService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
597
607
|
CommercialService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: CommercialService, providedIn: 'root' });
|
|
@@ -599,4 +609,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
|
|
|
599
609
|
type: Injectable,
|
|
600
610
|
args: [{ providedIn: 'root' }]
|
|
601
611
|
}], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
|
|
602
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tZXJjaWFsLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29yZS9zZXJ2aWNlcy9jb21tZXJjaWFsLXNlcnZpY2UvY29tZXJjaWFsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUkzQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7O0FBWTNELE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxpQkFBaUI7SUFJdEQsWUFBb0IsSUFBZ0I7UUFDbEMsS0FBSyxFQUFFLENBQUM7UUFEVSxTQUFJLEdBQUosSUFBSSxDQUFZO1FBRjVCLGdCQUFXLEdBQUcsaUJBQWlCLENBQUM7UUFJdEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUN2RCxDQUFDO0lBRUQsU0FBUyxDQUFDLE9BQW9CO1FBQzVCLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO1FBQy9DLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNwQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELG9CQUFvQixDQUFDLEtBQWEsRUFBRSxlQUF1QjtRQUN6RCxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLG9DQUFvQyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxFQUFDLEtBQUssRUFBRSxlQUFlLEVBQUMsQ0FBQyxDQUFDO1FBQ3JELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FB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LENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RELENBQUM7OzhHQTdyQlUsaUJBQWlCO2tIQUFqQixpQkFBaUIsY0FETCxNQUFNOzJGQUNsQixpQkFBaUI7a0JBRDdCLFVBQVU7bUJBQUMsRUFBQyxVQUFVLEVBQUUsTUFBTSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSWdldENvdXJzZXNGaW5pc2hBbmR1bmFzc2lnbmVkUnEgfSBmcm9tICcuLy4uLy4uL21vZGVscy9yZXBvcnRzL3JlcG9ydHMubW9kZWwnO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEdldERpc2NvdW50Q291cG9uc1JxIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3BheW1lbnQvcGF5bWVudC1ycS5tb2RlbCc7XG5pbXBvcnQgeyBDcmVhdGVDT0RScSwgRnVsbERhdGFDT0RScSwgR2V0Q29kQnlDb3Vyc2VScSwgSVVwZGF0ZUNPRFJxLCBJb2J0YWluY29kQ3VycnJlbnRBbmRMZXZlbEZ1bGxEYXRhUmVub3ZhdGlvbnNScSwgSUNvZFBheW1lbnRScSB9IGZyb20gJy4uLy4uL21vZGVscy9jb2QvY29kLXJxLm1vZGVsJztcbmltcG9ydCB7IElQVEdlbmVyYWxTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZS1lbnZpcm9tZW50cyc7XG5pbXBvcnQgeyBBZGljSW5mb0J5Q29kZVJxLCBDb2RQcmljZXNScSwgSUdvYWxJbnRlcmZhY2VScSwgUGFyZW50QnlDb2RlUnEsIElPYnRhaW5SZWZlcnNCeVVzZXJScSwgSUFzc2lnblBvc2libGVTdHVkZW50Rm9yVmFsdWVScSwgSUdldENvbnRhY3RzYWR2aXNlclJxLCBJT2J0YWluQ29kUHJpY2VzUnEsIElBc3NpZ25pbmdBZHZpc29yR29hbHNScSwgSVJlcG9ydENvZEZvckFkdmlzZXJScSwgSUNyZWF0ZVRpY2tldFJlZmVycmFsUnEsIElHZXRQb3NpYmxlU3R1ZGVudEJ5RGF0ZVJxLCBJR2V0VXNlckFkdmlzZXJDb21tZXJjaWFsQnlUeXBlQXNzaW5nQ29udGFjdHNScSwgQXNzaW5nQ3VzdG9tZXJzQnlUeXBlQXNzaW5nQ29udGFjdEZvckFkdmlzZXJScSxJQ3JlYXRlVHlwZVBheW1lbnRScSwgSUNyZWF0ZUNvbW1pc3Npb25BcmVhUnEsIElBc3NpZ25Db3Vyc2VUeXBlc1RvQXJlYVJxLFxuICBJQ3JlYXRlUGF5bWVudEFyZWFDb21taXNzaW9uUnEsIElDcmVhdGVUeXBlVXNlckNvbW1pc3Npb25ScSwgSUFzc2lnbkNvbW1pc3Npb25Nb2RlbFRvVXNlclJxLCBJVG9rZW5ScSwgSUdldFN1bW1hcnlCeUNvbW1lcmNpYWxBZHZpc29yUnEsIElHZXRDb2RTdHVkZW50RGV0YWlsc0J5QWR2aXNlclJxLElVcGRhdGVQYXltZW50QXJlYUNvbW1pc3Npb25ScSxJQWRkQ29uZGl0aW9uVG9SdWxlUnEsSUVkaXRDb25kaXRpb25SdWxlUnEsIElVcGRhdGVUeXBlUGF5bWVudFJxLElBc3NpZ25TdWJvcmRpbmF0ZVJxLElSZW1vdmVTdWJvcmRpbmF0ZVJxLElVcGRhdGVUeXBlVXNlckNvbW1pc3Npb25ScSxJUGF5QWR2aXNvckJvbnVzZXNScSxJUGF5U2VsZWN0ZWRDb21taXNzaW9uc1JxLElBc3NpZ25TdWJvcmRpbmF0ZXNNYXNzaXZlUnEsSURlbGV0ZVR5cGVVc2VyQ29tbWlzc2lvblJxLFxuICBJcmVqZWN0VHJhbnNhY3Rpb25Db21taXNzaW9uUnEsIElBcHByb3ZlVHJhbnNhY3Rpb25Db21taXNzaW9uUnEgLCBJU2hvd1RyYW5zYWN0aW9uQmlsbFJxLCBJYWRkRGV2b2x1dGlvbkNvbW1pc3Npb25ScSwgSW9idGFpblRyYW5zYWN0aW9uc0J5U3RhdHVzUnEsIElDYW5jZWxsVHJhbnNhY3Rpb25CaWxsUnEsSUdldENvbW1pc3Npb25zQnlUcmFuc2FjdGlvbkNvZGVScSwgSWFkZEJvbnVzUnVsZVJxLElyZW1vdmVDb21taXNzaW9uRnJvbVRyYW5zYWN0aW9uUnEsIElUb2tlbkNhbXB1c1JxIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2NvbW1lcmNpYWwvY29tbWVyY2lhbC5tb2RlbCc7XG5pbXBvcnQgeyBVc2VyVG9rZW5ScSB9IGZyb20gJy4uLy4uL21vZGVscy91c2VyL3VzZXItcnEubW9kZWwnO1xuaW1wb3J0IHsgSVNvY2lhbE5ldHdvcmtzUnEgfSBmcm9tICcuLi8uLi9tb2RlbHMvbWFya2V0aW5nL21hcmtldGluZy5tb2RlbCc7XG5pbXBvcnQgeyBJT2J0YWluQWxsQ291cnNld2FsbGV0IH0gZnJvbSAnLi4vLi4vbW9kZWxzL2J1ZGdldC9idWRnZXQubW9kZWwnO1xuaW1wb3J0IHsgSU9idGFpbkFsbFJlZmVycmFsc0J5VXNlclJxIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RyYW5zZmVyL3RyYW5zZmVyLm1vZGVsJztcbmltcG9ydCB7IElDb2RXaXRoVGhlaXJTdGF0ZXNScSwgSUV4dGVuZFRpbWVUZXJtc1JxLCBJTmV3VGVybXNBbmRDb25kUnEgfSBmcm9tICcuLi8uLi9tb2RlbHMvdGVybXMvdGVybXMtcnMubW9kZWwnO1xuXG5cbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiAncm9vdCd9KVxuZXhwb3J0IGNsYXNzIENvbW1lcmNpYWxTZXJ2aWNlIGV4dGVuZHMgSVBUR2VuZXJhbFNlcnZpY2Uge1xuXG4gIHByaXZhdGUgU0VSVklDRV9VUkwgPSAnY29tbWVyY2lhbC9hcGkvJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuU0VSVklDRV9VUkwgPSB0aGlzLmJhc2VVcmwoKSArIHRoaXMuU0VSVklDRV9VUkw7XG4gIH1cblxuICBjcmVhdGVDT0QocmVxdWVzdDogQ3JlYXRlQ09EUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2NvZCc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0U3R1ZGVudENvZEhpc3RvcnkodG9rZW46IHN0cmluZywgc3R1ZGVudF9pZF9jYXJkOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9jb2QvaGlzdG9yeS9ieS9zdHVkZW50JztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyh7dG9rZW4sIHN0dWRlbnRfaWRfY2FyZH0pO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldENvZEhpc3RvcnlBbGwodXNlclRva2VuOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9jb2QvaGlzdG9yeS9hbGwnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHVzZXJUb2tlbik7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0Q29kSGlzdG9yeUJ5Q291cnNlKHJlcXVlc3Q6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvb2J0YWluL2NvZC9oaXN0b3J5L2J5L2NvdXJzZSc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0Q29kSGlzdG9yeUJ5Q291cnNlRXhwb3J0KHJlcXVlc3Q6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvb2J0YWluL2NvZC9oaXN0b3J5L2J5L2NvdXJzZS9leHBvcnQnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldERpc2NvdW50Q291cG9ucyhwYXJhbXM6IEdldERpc2NvdW50Q291cG9uc1JxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9kaXNjb3VudC9jb3Vwb24vc2VhcmNoJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldENvZFByaWNlc0J5QWdyZWVtZW50KGNvZGU6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9jb2QvcHJpY2VzL2J5L2FncmVlbWVudC8nICsgY29kZTtcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhjb2RlKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldENvZFBhcmVudEJ5Q29kZShwYXJhbXM6IFBhcmVudEJ5Q29kZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9vYnRhaW4vY29kL3BhcmVudC9ieS9jb2RlJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldEFkaWNJbmZvQnlDb2RlKHBhcmFtczogQWRpY0luZm9CeUNvZGVScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvb2J0YWluL2NvZC9hZGl0aW9uYWxpbmZvL2J5L2NvZGUnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0RnVsbERhdGFDb2RCeVN0dWRlbnQocGFyYW1zOiBGdWxsRGF0YUNPRFJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9vYnRhaW4vZnVsbC9kYXRhL2NvZC9ieS9zdHVkZW50JztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldEZ1bGxEYXRhQ29kQnlTdHVkZW50QW5kQ29kc0JlZm9yZShwYXJhbXM6IEZ1bGxEYXRhQ09EUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9mdWxsL2RhdGEvY29kL2J5L3N0dWRlbnQvYW5kL2NvZC9iZWZvcmUnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0Q29kUHJpY2VzQnlBZ3JlZW1lbnRUeXBlUGF5bWVudChwYXJhbXM6IENvZFByaWNlc1JxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9jb2QvcHJpY2VzL2J5L2FncmVlbWVudC9hbmQvdHlwZS9wYXltZW50JztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIG9idGFpbkNvZEJ5QWR2YWlzZXIocGFyYW1zOiBVc2VyVG9rZW5ScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvb2J0YWluL2NvZC9ieS9hZHZhaXNlcic7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBvYnRhaW5Db2RDb3Vyc2VzQnlBZHZpc29yKHBhcmFtczogVXNlclRva2VuUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9jb2QvY291cnNlcy9ieS9hZHZpc29yJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIG9idGFpbkNvZEJ5QWR2aXNvckFuZENvdXJzZShwYXJhbXM6IEdldENvZEJ5Q291cnNlUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9jb2Qvc3R1ZGVudC9ieS9jb3Vyc2UvYW5kL2Fkdmlzb3InO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgY3JlYXRlR29hbChwYXJhbXM6IElHb2FsSW50ZXJmYWNlUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2NvbnRhY3Qvc3RyYXRlZ3kvY3JlYXRlL2dvYWwnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsdGhpcy5odHRwT3B0aW9ucyk7XG4gICAgfVxuXG4gIGdldEFsbEdvYWxzKHRva2VuOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2NvbnRhY3Qvc3RyYXRlZ3kvdmlldy9nb2Fscyc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXModG9rZW4pO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgY3JlYXRlRG9jdW1lbnQocGFyYW1zOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L21lZGlhL2RvY3VtZW50JztcbiAgICBsZXQgZm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcbiAgICBmb3JtRGF0YS5hcHBlbmQoJ2ZpbGUnLCBwYXJhbXMuZmlsZSk7XG4gICAgZm9ybURhdGEuYXBwZW5kKCd1c2VyX2F1dG9yJywgcGFyYW1zLnVzZXJfYXV0b3IpO1xuICAgIGZvcm1EYXRhLmFwcGVuZCgnY29kZV91c2VyJywgcGFyYW1zLmNvZGVfdXNlcik7XG4gICAgZm9ybURhdGEuYXBwZW5kKCd0eXBlX2RvY3VtZW50JywgcGFyYW1zLnR5cGVfZG9jdW1lbnQpO1xuICAgIGZvcm1EYXRhLmFwcGVuZCgndG9rZW4nLCBwYXJhbXMudG9rZW4pO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIGZvcm1EYXRhKTtcbiAgfVxuXG4gIGdldERvY3VtZW50c0J5U3R1ZGVudChwYXJhbXM6YW55KTogT2JzZXJ2YWJsZTxhbnk+e1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvbWVkaWEvZG9jdW1lbnQvdXNlcic7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCx0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIG9idGFpbkNvZFN0dWRlbnRCeUNvZGVBZHZpc2VyKHBhcmFtczogSVJlcG9ydENvZEZvckFkdmlzZXJScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9jb2Qvc3R1ZGVudC9ieS9hZHZpc2VyJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIEV4cG9ydEZpbGVFeGNlbENvZEJ5QWR2aXNlcihwYXJhbXM6IElSZXBvcnRDb2RGb3JBZHZpc2VyUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2V4cG9ydC9leGNlbC9jb2Qvc3R1ZGVudC9ieS9hZHZpc2VyJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIE9idGFpblJlZmVycmFsc0J5VXNlcihwYXJhbXM6IElPYnRhaW5SZWZlcnNCeVVzZXJScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvb2J0YWluL3JlZmVycmFscy9ieS91c2VyL2NvZGUnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgICBnZXRQb3NpYmxlU3R1ZGVudHNBbGwocGFyYW1zOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9wb3NpYmxlL3N0dWRlbnRzL2FsbC9tb2RlbHMnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG4gIHBvc3RBc3NpZ25Qb3NpYmxlU3R1ZW50Rm9yVmFsdWUocGFyYW1zOiBJQXNzaWduUG9zaWJsZVN0dWRlbnRGb3JWYWx1ZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9wb3NpYmxlL3N0dWRlbnRzL3ZhbHVlL2Fzc2luZyc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cbiAgZ2V0Q29udGFjdHNCeUFkdmlzZXJDb21tZXJjaWFsKHBhcmFtczogSUdldENvbnRhY3RzYWR2aXNlclJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9jb250YWN0cy9tYXJrZXRpbmcvc3RyYXRlZ3kvYXNzaW5nL2J5L2FkdmlzZXInO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgT2J0YWluQ29kUHJpY2VzKHBhcmFtczogSU9idGFpbkNvZFByaWNlc1JxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9vYnRhaW4vY29kL3ByaWNlcyc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBwb3N0Q3JlYXRlZFNvY2lhbE5ldG93cmtzKHBhcmFtczogSVNvY2lhbE5ldHdvcmtzUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L25ldy9yZWdpc3Rlci9zb2NpYWwvbmV0d29yayc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBwb3N0QXNzaWduaW5nQWR2aXNvckdvYWxzKHBhcmFtczogSUFzc2lnbmluZ0Fkdmlzb3JHb2Fsc1JxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9hc3NpZ25pbmcvYWR2aXNvcnkvZ29hbHMnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgcG9zT2J0YWluQWR2aXNvckdvYWxzKHBhcmFtczogSU9idGFpbkFsbENvdXJzZXdhbGxldCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvb2J0YWluL2dvYWxzL2Fzc2lnbmVkL3RvL2Fkdmlzb3InO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgcG9zdE9idGFpbk92ZXJhbEdvYWxBZHZpc28ocGFyYW1zOiBJT2J0YWluQWxsQ291cnNld2FsbGV0KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9vYnRhaW4vb3ZlcmFsL2dvYWwvb2YvYWR2aXNvcic7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBwb3N0T2J0YWluaW5mb0NvZEFjdHVhbGx5QnlVc2VyKHBhcmFtczogSWdldENvdXJzZXNGaW5pc2hBbmR1bmFzc2lnbmVkUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9pbmZvL2NvZC91c2VyJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIG9idGFpbmdMYXRlc0NvZEJ5U3R1ZGVudENvZGUgKGNvZGVTdHVkZW50OiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvbGF0ZXN0L2NvZC9ieS9zdHVkZW50L2NvZGUvJyArIGNvZGVTdHVkZW50O1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgdXBkYXRlQ09EKHJlcXVlc3Q6IElVcGRhdGVDT0RScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvdXBkYXRlL2NvZCc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG4gIG9idGFpbmNvZEN1cnJyZW50QW5kTGV2ZWxGdWxsRGF0YVJlbm92YXRpb25zKHJlcXVlc3Q6IElvYnRhaW5jb2RDdXJycmVudEFuZExldmVsRnVsbERhdGFSZW5vdmF0aW9uc1JxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9vYnRhaW4vZnVsbC9kYXRhL2N1cnJlbnQvY29kL2J5L2NvZGUvc3R1ZGVudC9yZW5vdmF0aW9uJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cbiAgZ2V0ZGF0YUN1cnJlbnRDb2RCeVNUdWRlbnRDb2RlKHJlcXVlc3Q6IElvYnRhaW5jb2RDdXJycmVudEFuZExldmVsRnVsbERhdGFSZW5vdmF0aW9uc1JxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2RhdGEvY3VycmVudC9kYXRhL2NvZC9ieS9zdHVkZW50JztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cbiAgdXBkYXRlQ29kQ3VycmVudEluT2JzZXJ2YXRpb25zUmVub3ZhdGlvbnMocmVxdWVzdDogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9jaGFuZ2UvY29kL3N0YXR1cy9vYnNlcnZhdGlvbnMvcmVub3ZhdGlvbnMnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIG9idGFpbkNvZFByZXZpdXNPclBsYWNlbWVudFRlc3RCeWNvZGUocmVxdWVzdDogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9vYnRhaW4vY29kL3JlZ2lzdGVyL3ByZXZpb3VzL29yL3BsYWNlbWVudC90ZXN0L2J5L3N0YXR1cyc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG4gIHVwZGF0ZUNvbnRyb2xTdGVwc0NvZFNlbGZNYW5hZ2VkKHJlcXVlc3Q6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvY2hhbmdlL3N0ZXAvZm9ybS9jb250cm9sL2NvZC9zZWxmL21hbmFnZWQnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuICBPYnRhaW5Db2RQcmljZXNDb2RTZWxmTWFuYWdlZChwYXJhbXM6IElPYnRhaW5Db2RQcmljZXNScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvb2J0YWluL2NvZC9zZWxmL21hbmFnZWQvcHJpY2VzJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuICBjcmVhdGVDb2RTZWxmTWFuYWdlZChwYXJhbXM6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvY29kL3NlbGYvbWFuYWdlZCc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBwcml6ZXNGb3JEdXJhdGlvbk9kQ29udGVzdCgpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICAncHJpemVzL2Zvci9kdXJhdGlvbi9vZi9jb250ZXN0JztcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcbiAgfVxuXG4gIGNyZWF0ZVRpY2tldFJlZmVycmFsKHBhcmFtczogSUNyZWF0ZVRpY2tldFJlZmVycmFsUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdjcmVhdGUvY29udGVzdC9yZWdpc3RyYXRpb24vYnkvcmVmZXJyYWxlJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gICAgb2J0YWluU3RhdHVzQW5kUmVmZXJyYWxzQnlVc2VyQ29kZShwYXJhbXM6IElPYnRhaW5SZWZlcnNCeVVzZXJScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ29idGFpbi9zdGF0dXMvYW5kL3JlZmVycmFscy9ieS91c2VyL2NvZGUnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2VzUG9zaWJsZVN0dWRlbnRBbGxGb3VyTW9kZWxzQnlEYXRlKHBhcmFtczogSUdldFBvc2libGVTdHVkZW50QnlEYXRlUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvcG9zaWJsZS9zdHVkZW50cy9hbGwvZm91ci9tb2RlbHMvYnkvZGF0ZSc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBnZXNVc2VyQWR2aXNlckNvbW1lcmNpYWxCeVR5cGVBc3NpbmdDb250YWN0KHBhcmFtczogSUdldFVzZXJBZHZpc2VyQ29tbWVyY2lhbEJ5VHlwZUFzc2luZ0NvbnRhY3RzUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvdXNlci9jb21tZXJjaWFsL2J5L3R5cGUvYXNzaW5nJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGFzc2luZ0N1c3RvbWVyc0J5VHlwZUFzc2luZ0NvbnRhY3RGb3JBZHZpc2VyKHBhcmFtczogQXNzaW5nQ3VzdG9tZXJzQnlUeXBlQXNzaW5nQ29udGFjdEZvckFkdmlzZXJScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvQXNzaW5nL3VzZXIvcG9zaWJsZS9zdHVkZW50L2J5L2RhdGUnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgb2J0YWluQWRkaXRpb25hbFVzZXJEYXRhQnlDb3Vyc2UocGFyYW1zOiBJZ2V0Q291cnNlc0ZpbmlzaEFuZHVuYXNzaWduZWRScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ29idGFpbi9hZGRpdGlvbmFsL3VzZXIvZGF0YS9ieS9jb3Vyc2UnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgb2J0YWluQWxsUmVmZXJyYWxzQnlVc2VyKHBhcmFtczogSU9idGFpbkFsbFJlZmVycmFsc0J5VXNlclJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnb2J0YWluL2FsbC9yZWZlcnJhbHMvYnkvdXNlci9jb2RlJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldEFsbENvZEluZm9ybWF0aW9uRm9yRXhwb3J0aW5nKHBhcmFtczogSUNvZFBheW1lbnRScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9hbGwvY29kL2luZm9ybWF0aW9uL2Zvci9leHBvcnRpbmcnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgb2J0YWluQ29kQnlBZHZpc29yV2l0aFRoZWlyU3RhdGVzKHBhcmFtczogSUNvZFdpdGhUaGVpclN0YXRlc1JxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnb2J0YWluL2NvZC9ieS9hZHZpc29yL3dpdGgvdGhlaXIvc3RhdGVzJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGV4dGVuZFRpbWVPZkFjY2VwdGFuY2VPZlRlcm1zKHBhcmFtczogSUV4dGVuZFRpbWVUZXJtc1JxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZXh0ZW5kL3RpbWUvb2YvYWNjZXB0YW5jZS9vZi90ZXJtcyc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBuZXdUZXJtc0FuZENvbmRpdGlvbnNBY2NlcHRhbmNlVG9rZW4ocGFyYW1zOiBJTmV3VGVybXNBbmRDb25kUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICduZXcvdGVybXMvYW5kL2NvbmRpdGlvbnMvYWNjZXB0YW5jZS90b2tlbic7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICB1cGRhdGVTdGF0dXNPZlRlcm1zQW5kQ29uZGl0aW9uc1JlY29yZHMoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAndXBkYXRlL3N0YXR1cy9vZi90JmMvcmVjb3JkcycgO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKG51bGwpO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgb2J0YWluQ29kQnlDb29kaW5hdG9yV2l0aFRoZWlyU3RhdGVzKHBhcmFtczogSUNvZFdpdGhUaGVpclN0YXRlc1JxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnb2J0YWluL2NvZC9ieS9jb29kaW5hdG9lL3dpdGgvdGhlaXIvc3RhdGVzJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIG9idGFpbkFsbEluZm9ybWF0aW9uQ29kQnlDb2RlKGNvZGU6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ29idGFpbi9hbGwvaW5mb3JtYXRpb24vY29kL2J5L2NvZGUvJyArIGNvZGU7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMoY29kZSk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBnZXRTdW1tYXJ5QnlDb21tZXJjaWFsQWR2aXNvcihwYXJhbXM6IElHZXRTdW1tYXJ5QnlDb21tZXJjaWFsQWR2aXNvclJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L3N1bW1hcnkvYnkvY29tbWVyY2lhbC9hZHZpc29yJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldENvZFN0dWRlbnREZXRhaWxzQnlBZHZpc2VyKHJlcXVlc3Q6IElHZXRDb2RTdHVkZW50RGV0YWlsc0J5QWR2aXNlclJxLCBhZHZpc2VyQ29kZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArIGBnZXQvY29kL3N0dWRlbnQvZGV0YWlscy9ieS9hZHZpc2VyLyR7YWR2aXNlckNvZGV9YDtcbiAgICBjb25zdCBvcHRpb25zID0geyAuLi50aGlzLmh0dHBPcHRpb25zLCBwYXJhbXM6IHJlcXVlc3QgYXMgYW55IH07XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgb3B0aW9ucyk7XG4gIH1cblxuICBjcmVhdGVUeXBlUGF5bWVudChwYXJhbXM6IElDcmVhdGVUeXBlUGF5bWVudFJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2NyZWF0ZS90eXBlL3BheW1lbnQvY29tbWlzc2lvbnMnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0QWxsVHlwZVBheW1lbnRzKHJlcXVlc3Q6IElUb2tlblJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvYWxsL3R5cGUvcGF5bWVudC9jb21taXNzaW9ucyc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuY3JlYXRlQ29tbWlzc2lvbkFyZWEocGFyYW1zOiBJQ3JlYXRlQ29tbWlzc2lvbkFyZWFScSk6IE9ic2VydmFibGU8YW55PiB7XG4gIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvY3JlYXRlL2NvbW1pc3Npb24vYXJlYSc7XG4gIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbn1cblxuICBnZXRBbGxDb21taXNzaW9uQXJlYXMocmVxdWVzdDogSVRva2VuUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9hbGwvY29tbWlzc2lvbi9hcmVhcyc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuYXNzaWduQ291cnNlVHlwZXNUb0FyZWEocGFyYW1zOiBJQXNzaWduQ291cnNlVHlwZXNUb0FyZWFScSk6IE9ic2VydmFibGU8YW55PiB7XG4gIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvYXNzaWduL2NvdXJzZS10eXBlcy90by1hcmVhJztcbiAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xufVxuXG5jcmVhdGVQYXltZW50QXJlYUNvbW1pc3Npb24ocGFyYW1zOiBJQ3JlYXRlUGF5bWVudEFyZWFDb21taXNzaW9uUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2NyZWF0ZS9wYXltZW50L2FyZWEvY29tbWlzc2lvbic7XG4gIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbn1cblxuICBnZXRDb21taXNzaW9uUnVsZXNCeUFyZWEocmVxdWVzdDogSVRva2VuUnEsIGFyZWFDb2RlOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgYGdldC9jb21taXNzaW9uLXJ1bGVzL2J5LWFyZWEvJHthcmVhQ29kZX1gO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBjcmVhdGVUeXBlVXNlckNvbW1pc3Npb24ocGFyYW1zOiBJQ3JlYXRlVHlwZVVzZXJDb21taXNzaW9uUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvY3JlYXRlL3R5cGUvdXNlci9jb21taXNzaW9uJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldEFsbFR5cGVVc2VyQ29tbWlzc2lvbnMocmVxdWVzdDogSVRva2VuUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9hbGwvdHlwZS91c2VyL2NvbW1pc3Npb25zJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGFzc2lnbkNvbW1pc3Npb25Nb2RlbFRvVXNlcihwYXJhbXM6IElBc3NpZ25Db21taXNzaW9uTW9kZWxUb1VzZXJScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9hc3NpZ24vbW9kZWwvdG8vdXNlcic7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBnZXRBY3RpdmVDb21taXNzaW9uTW9kZWxGb3JVc2VyKHJlcXVlc3Q6IElUb2tlblJxLCB1c2VyQ29kZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArIGBnZXQvYWN0aXZlL21vZGVsL2Zvci91c2VyLyR7dXNlckNvZGV9YDtcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIHBheUNvbW1pc3Npb25zKHBhcmFtczogSVBheVNlbGVjdGVkQ29tbWlzc2lvbnNScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnY29tbWlzc2lvbnMvcGF5L2NvZHMnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgLy9yZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgcGFyYW1zLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICByZWplY3RUcmFuc2FjdGlvbkJ5Q29kZShwYXJhbXM6IElyZWplY3RUcmFuc2FjdGlvbkNvbW1pc3Npb25ScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnY29tbWlzc2lvbnMvcmVqZWN0L3RyYW5zYWN0aW9uJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGFwcHJvdmVUcmFuc2FjdGlvbkJ5Q29kZShwYXJhbXM6IElBcHByb3ZlVHJhbnNhY3Rpb25Db21taXNzaW9uUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2NvbW1pc3Npb25zL2FwcHJvdmUvdHJhbnNhY3Rpb24nO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgYWRkRGV2b2x1dGlvbkNvbW1pc3Npb24ocGFyYW1zOiBJYWRkRGV2b2x1dGlvbkNvbW1pc3Npb25ScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnY29tbWlzc2lvbnMvYWRkL2Rldm9sdXRpb24vY29tbWlzc2lvbic7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBvYnRhaW5UcmFuc2FjdGlvbnNCeVN0YXR1cyhyZXF1ZXN0OiBJb2J0YWluVHJhbnNhY3Rpb25zQnlTdGF0dXNScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyBgZ2V0L3RyYW5zYWN0aW9ucy9ieS91c2VyL2FuZC9zdGF0dXNgO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgc2VlVHJhbnNhY3Rpb25CaWxsKHJlcXVlc3Q6IElTaG93VHJhbnNhY3Rpb25CaWxsUnEgKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArIGBjb21taXNzaW9ucy9zZWUvdHJhbnNhY3Rpb24vYmlsbGA7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBwYXlBZHZpc29yQm9udXNlcyhwYXJhbXM6IElQYXlBZHZpc29yQm9udXNlc1JxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdjb21taXNzaW9ucy9wYXkvYm9udXNlcyc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgcGFyYW1zLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIHVwZGF0ZVBheW1lbnRBcmVhQ29tbWlzc2lvbihyZXF1ZXN0OiBJVXBkYXRlUGF5bWVudEFyZWFDb21taXNzaW9uUnEsIHJ1bGVDb2RlOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgYHB1dC91cGRhdGUvcGF5bWVudC1hcmVhLWNvbW1pc3Npb24vJHtydWxlQ29kZX1gO1xuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KHNlcnZpY2VVcmwsIHJlcXVlc3QsIHRoaXMuaHR0cE9wdGlvbnMpO1xufVxuXG5nZXRBbGxBcmVhc1dpdGhDb21taXNzaW9uUnVsZXMocmVxdWVzdDogSVRva2VuUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvYWxsLWFyZWFzLXdpdGgtY29tbWlzc2lvbi1ydWxlcyc7XG4gIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbn1cblxuZ2V0QWxsQ29uZGl0aW9ucyhyZXF1ZXN0OiBJVG9rZW5ScSk6IE9ic2VydmFibGU8YW55PiB7XG4gIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9hbGwvY29tbWlzc2lvbi1jb25kaXRpb25zJztcbiAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xufVxuXG5nZXRBbGxBZ3JlZW1lbnRzKHJlcXVlc3Q6IElUb2tlblJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2FsbC9hZ3JlZW1lbnRzJztcbiAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xufVxuXG5hZGRDb25kaXRpb25Ub1J1bGUocmVxdWVzdDogSUFkZENvbmRpdGlvblRvUnVsZVJxLCBydWxlQ29kZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyBgcG9zdC9hZGQvY29uZGl0aW9uL3RvLXJ1bGUvJHtydWxlQ29kZX1gO1xuICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xufVxuXG5lZGl0Q29uZGl0aW9uVG9SdWxlKHJlcXVlc3Q6IElFZGl0Q29uZGl0aW9uUnVsZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyBgcHV0L2VkaXQvY29uZGl0aW9uL3J1bGVgO1xuICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xufVxuXG5kZWxldGVDb25kaXRpb25Gcm9tUnVsZShyZXF1ZXN0OiBJVG9rZW5ScSwgY29uZGl0aW9uSWQ6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XG4gIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgYGRlbGV0ZS9ydWxlLWNvbmRpdGlvbi8ke2NvbmRpdGlvbklkfWA7XG4gIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICBjb25zdCBvcHRpb25zID0ge1xuICAgIGhlYWRlcnM6IHRoaXMuaHR0cE9wdGlvbnMuaGVhZGVycyxcbiAgICBwYXJhbXM6IHRoaXMuaHR0cE9wdGlvbnMucGFyYW1zXG4gIH07XG4gIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKHNlcnZpY2VVcmwsIG9wdGlvbnMpO1xufVxuXG51cGRhdGVUeXBlUGF5bWVudChyZXF1ZXN0OiBJVXBkYXRlVHlwZVBheW1lbnRScSwgY29kZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyBgcHV0L3VwZGF0ZS90eXBlLXBheW1lbnQtY29tbWlzc2lvbi8ke2NvZGV9YDtcbiAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gIHJldHVybiB0aGlzLmh0dHAucHV0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xufVxuXG5kZWxldGVUeXBlUGF5bWVudChyZXF1ZXN0OiBJVG9rZW5ScSwgY29kZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyBgZGVsZXRlL3R5cGUtcGF5bWVudC1jb21taXNzaW9uLyR7Y29kZX1gO1xuICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICBoZWFkZXJzOiB0aGlzLmh0dHBPcHRpb25zLmhlYWRlcnMsXG4gICAgcGFyYW1zOiB0aGlzLmh0dHBPcHRpb25zLnBhcmFtc1xuICB9O1xuICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZShzZXJ2aWNlVXJsLCBvcHRpb25zKTtcbn1cblxuZGVsZXRlUGF5bWVudEFyZWFDb21taXNzaW9uKHJlcXVlc3Q6IElUb2tlblJxLCBjb2RlOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArIGBkZWxldGUvcGF5bWVudC1hcmVhLWNvbW1pc3Npb24vJHtjb2RlfWA7XG4gIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICBjb25zdCBvcHRpb25zID0ge1xuICAgIGhlYWRlcnM6IHRoaXMuaHR0cE9wdGlvbnMuaGVhZGVycyxcbiAgICBwYXJhbXM6IHRoaXMuaHR0cE9wdGlvbnMucGFyYW1zXG4gIH07XG4gIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKHNlcnZpY2VVcmwsIG9wdGlvbnMpO1xufVxuXG4gIG9idGFpblByZWFzc2lnbmVkQ291cnNlc0FuZFN0dWRlbnRFbnJvbGxtZW50U3RhdHVzKGNvZGU6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ29idGFpbi9wcmVhc3NpZ25lZC9jb3Vyc2VzL3N0dWRlbnQvZW5yb2xsbWVudC9zdGF0dXMvJyArIGNvZGU7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMoY29kZSk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XG4gIH1cbiAgZGVsZXRlQ29uZGl0aW9uKHJlcXVlc3Q6IElUb2tlblJxLCBjb2RlOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgYGRlbGV0ZS9jb21taXNzaW9uLWNvbmRpdGlvbi8ke2NvZGV9YDtcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgaGVhZGVyczogdGhpcy5odHRwT3B0aW9ucy5oZWFkZXJzLFxuICAgICAgcGFyYW1zOiB0aGlzLmh0dHBPcHRpb25zLnBhcmFtc1xuICAgIH07XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kZWxldGUoc2VydmljZVVybCwgb3B0aW9ucyk7XG4gIH1cblxuICByZW5ld1N0dWRlbnRzVG9OZXh0TGV2ZWwocmVxdWVzdDogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArIGBwb3N0L2NvZC9hbmQvcmVuZXdhbC9ieS9jb3Vyc2VzYDtcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBvYnRhaW5QcmVhc3NpZ25lZENvdXJzZXMoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnb2J0YWluL3ByZWFzc2lnbmVkL2NvdXJzZXMnO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xuICB9XG5cbiAgIGZ1bGxEYXRhQ29kQnlTdHVkZW50Q291cnNlUHJlYXNzaWduZWQoY29kZV9zdHVkZW50OiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdmdWxsZGF0YS9jb2QvYnkvc3R1ZGVudC9jb3Vyc2UvcHJlYXNzaWduZWQvJyArIGNvZGVfc3R1ZGVudDtcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhjb2RlX3N0dWRlbnQpO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xuICB9XG5cbiAgc2VhcmNoU3R1ZGVudEJ5SWRjYXJkQ291cnNlUHJlYXNzaWduZWQoaWRjYXJkX3N0dWRlbnQ6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3NlYXJjaC9zdHVkZW50L2J5L2lkY2FyZC9jb3Vyc2UvcHJlYXNzaWduZWQvJyArIGlkY2FyZF9zdHVkZW50O1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKGlkY2FyZF9zdHVkZW50KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcbiAgfVxuXG4gIGV4cG9ydFBvc2libGVTdHVkZW50QWxsRm91ck1vZGVsc0J5RGF0ZShwYXJhbXM6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9wb3NpYmxlL3N0dWRlbnRzL2FsbC9mb3VyL21vZGVscy9ieS9kYXRlL2Zvci9leHBvcnQnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0QWxsR29hbHNGb3JDb21taXNzaW9uTW9kZWxzKHJlcXVlc3Q6IElUb2tlblJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvaGVscGVycy9nb2Fscyc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuXG4gIGdldFRlYW1CeU1hbmFnZXIocmVxdWVzdDogSVRva2VuUnEsIG1hbmFnZXJDb2RlOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgYGdldC90ZWFtL2J5L21hbmFnZXIvJHttYW5hZ2VyQ29kZX1gO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cblxuICBhc3NpZ25TdWJvcmRpbmF0ZVRvTWFuYWdlcihwYXJhbXM6IElBc3NpZ25TdWJvcmRpbmF0ZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3RlYW0vbWVtYmVyJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCBwYXJhbXMsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgcmVtb3ZlU3Vib3JkaW5hdGVGcm9tTWFuYWdlcihwYXJhbXM6IElSZW1vdmVTdWJvcmRpbmF0ZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdkZWxldGUvdGVhbS9tZW1iZXInO1xuICAgIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgICAuLi50aGlzLmh0dHBPcHRpb25zLFxuICAgICAgYm9keTogeyBwYXJhbXMgfVxuICAgIH07XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kZWxldGUoc2VydmljZVVybCwgb3B0aW9ucyk7XG59XG5cbm1hc3NBc3NpZ25TdWJvcmRpbmF0ZXMocGFyYW1zOiBJQXNzaWduU3Vib3JkaW5hdGVzTWFzc2l2ZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvdGVhbS9tZW1iZXJzL21hc3NpdmUnO1xuICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG59XG5cbiAgZ2V0VXNlcnNGb3JDb21taXNzaW9uTWFuYWdlbWVudChyZXF1ZXN0OiBJVG9rZW5DYW1wdXNScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L3VzZXJzL2Zvci1tYW5hZ2VtZW50JztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldEFsbENvbW1pc3Npb25Db25jZXB0cyhyZXF1ZXN0OiBJVG9rZW5ScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2FsbC9jb21taXNzaW9uL2NvbmNlcHRzJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuICB1cGRhdGVUeXBlVXNlckNvbW1pc3Npb24ocGFyYW1zOiBJVXBkYXRlVHlwZVVzZXJDb21taXNzaW9uUnEsIGNvZGU6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyBgcHV0L3VwZGF0ZS90eXBlL3VzZXIvY29tbWlzc2lvbi8ke2NvZGV9YDtcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0U3Vib3JkaW5hdGVzQnlNYW5hZ2VyKHJlcXVlc3Q6IElUb2tlblJxLCBtYW5hZ2VyQ29kZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArIGBnZXQvdGVhbS9ieS9tYW5hZ2VyLyR7bWFuYWdlckNvZGV9YDtcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGRlbGV0ZVR5cGVVc2VyQ29tbWlzc2lvbihwYXJhbXM6IElEZWxldGVUeXBlVXNlckNvbW1pc3Npb25ScSwgY29kZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArIGBkZWxldGUvdHlwZS91c2VyL2NvbW1pc3Npb24vJHtjb2RlfWA7XG4gICAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICAgIC4uLnRoaXMuaHR0cE9wdGlvbnMsXG4gICAgICBib2R5OiB7IHBhcmFtcyB9XG4gICAgfTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZShzZXJ2aWNlVXJsLCBvcHRpb25zKTtcbiAgfVxuICBnZXRNb250aGx5Qm9udXNTdGF0dXMocmVxdWVzdDogYW55LCBjb2RlOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArIGBhZHZpc29yL21vbnRobHkvc3RhdHVzLyR7Y29kZX1gO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldEFsbENvdXJzZVR5cGVDYXRlZ29yaWVzKHJlcXVlc3Q6IElUb2tlblJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArIGBnZXQvYWxsL2NvdXJzZS90eXBlL2NhdGVnb3JpZXNgO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cblxuICBcblxuICAgIGdldFRyYW5zYWN0aW9uQ29tbWlzc2lvbnNCeUNvZGUocmVxdWVzdDogSUdldENvbW1pc3Npb25zQnlUcmFuc2FjdGlvbkNvZGVScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyBgZ2V0L2NvbW1pc3Npb25zL2J5L3RyYW5zYWN0aW9uL2NvZGVgO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgY2FuY2VsbFRyYW5zYWN0aW9uQmlsbChwYXJhbXM6IElDYW5jZWxsVHJhbnNhY3Rpb25CaWxsUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2NvbW1pc3Npb25zL2NhbmNlbGwvdHJhbnNhY3Rpb24vYmlsbCc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuXG5cblxuICAgIGFkZEJvbnVzUnVsZShwYXJhbXM6IElhZGRCb251c1J1bGVScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9hZGQvYm9udXMvcnVsZSc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBlZGl0Qm9udXNSdWxlKHBhcmFtczogSWFkZEJvbnVzUnVsZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2VkaXQvYm9udXMvcnVsZSc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBkZWxldGVCb251c1J1bGUocGFyYW1zOiBJYWRkQm9udXNSdWxlUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvZGVsZXRlL2JvbnVzL3J1bGUnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0Qm9udXNSdWxlcygpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9hbGwvYm9udXMvcnVsZXMnO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xuICB9XG5cbiAgcmVtb3ZlQ29tbWlzc2lvbkZyb21UcmFuc2FjdGlvbihwYXJhbXM6IElyZW1vdmVDb21taXNzaW9uRnJvbVRyYW5zYWN0aW9uUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3JlbW92ZS9jb21taXNzaW9uL2Zyb20vdHJhbnNhY3Rpb24nO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0QWxsQ29uZmlnRGF0YUZvckNvbW1pc3Npb24ocGFyYW1zOiBJVG9rZW5DYW1wdXNScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2FsbC9jb25maWcvZGF0YS9mb3IvY29tbWlzc2lvbic7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxufVxuXG5cbiJdfQ==
|
|
612
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tZXJjaWFsLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29yZS9zZXJ2aWNlcy9jb21tZXJjaWFsLXNlcnZpY2UvY29tZXJjaWFsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUkzQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7O0FBWTNELE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxpQkFBaUI7SUFJdEQsWUFBb0IsSUFBZ0I7UUFDbEMsS0FBSyxFQUFFLENBQUM7UUFEVSxTQUFJLEdBQUosSUFBSSxDQUFZO1FBRjVCLGdCQUFXLEdBQUcsaUJBQWlCLENBQUM7UUFJdEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUN2RCxDQUFDO0lBRUQsU0FBUyxDQUFDLE9BQW9CO1FBQzVCLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO1FBQy9DLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNwQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELG9CQUFvQixDQUFDLEtBQWEsRUFBRSxlQUF1QjtRQUN6RCxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLG9DQUFvQyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxFQUFDLEtBQUssRUFBRSxlQUFlLEVBQUMsQ0FBQyxDQUFDO1FBQ3JELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FB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LENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCw2QkFBNkIsQ0FBQyxNQUFzQjtRQUNsRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLG9DQUFvQyxDQUFDO1FBQzNFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELDRCQUE0QixDQUFDLE1BQThCO1FBQ3pELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsa0NBQWtDLENBQUM7UUFDekUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN0RCxDQUFDOzs4R0F6c0JVLGlCQUFpQjtrSEFBakIsaUJBQWlCLGNBREwsTUFBTTsyRkFDbEIsaUJBQWlCO2tCQUQ3QixVQUFVO21CQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElnZXRDb3Vyc2VzRmluaXNoQW5kdW5hc3NpZ25lZFJxIH0gZnJvbSAnLi8uLi8uLi9tb2RlbHMvcmVwb3J0cy9yZXBvcnRzLm1vZGVsJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBHZXREaXNjb3VudENvdXBvbnNScSB9IGZyb20gJy4uLy4uL21vZGVscy9wYXltZW50L3BheW1lbnQtcnEubW9kZWwnO1xuaW1wb3J0IHsgQ3JlYXRlQ09EUnEsIEZ1bGxEYXRhQ09EUnEsIEdldENvZEJ5Q291cnNlUnEsIElVcGRhdGVDT0RScSwgSW9idGFpbmNvZEN1cnJyZW50QW5kTGV2ZWxGdWxsRGF0YVJlbm92YXRpb25zUnEsIElDb2RQYXltZW50UnEgfSBmcm9tICcuLi8uLi9tb2RlbHMvY29kL2NvZC1ycS5tb2RlbCc7XG5pbXBvcnQgeyBJUFRHZW5lcmFsU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2UtZW52aXJvbWVudHMnO1xuaW1wb3J0IHsgQWRpY0luZm9CeUNvZGVScSwgQ29kUHJpY2VzUnEsIElHb2FsSW50ZXJmYWNlUnEsIFBhcmVudEJ5Q29kZVJxLCBJT2J0YWluUmVmZXJzQnlVc2VyUnEsIElBc3NpZ25Qb3NpYmxlU3R1ZGVudEZvclZhbHVlUnEsIElHZXRDb250YWN0c2FkdmlzZXJScSwgSU9idGFpbkNvZFByaWNlc1JxLCBJQXNzaWduaW5nQWR2aXNvckdvYWxzUnEsIElSZXBvcnRDb2RGb3JBZHZpc2VyUnEsIElDcmVhdGVUaWNrZXRSZWZlcnJhbFJxLCBJR2V0UG9zaWJsZVN0dWRlbnRCeURhdGVScSwgSUdldFVzZXJBZHZpc2VyQ29tbWVyY2lhbEJ5VHlwZUFzc2luZ0NvbnRhY3RzUnEsIEFzc2luZ0N1c3RvbWVyc0J5VHlwZUFzc2luZ0NvbnRhY3RGb3JBZHZpc2VyUnEsSUNyZWF0ZVR5cGVQYXltZW50UnEsIElDcmVhdGVDb21taXNzaW9uQXJlYVJxLCBJQXNzaWduQ291cnNlVHlwZXNUb0FyZWFScSxcbiAgSUNyZWF0ZVBheW1lbnRBcmVhQ29tbWlzc2lvblJxLCBJQ3JlYXRlVHlwZVVzZXJDb21taXNzaW9uUnEsIElBc3NpZ25Db21taXNzaW9uTW9kZWxUb1VzZXJScSwgSVRva2VuUnEsIElHZXRTdW1tYXJ5QnlDb21tZXJjaWFsQWR2aXNvclJxLCBJR2V0Q29kU3R1ZGVudERldGFpbHNCeUFkdmlzZXJScSxJVXBkYXRlUGF5bWVudEFyZWFDb21taXNzaW9uUnEsSUFkZENvbmRpdGlvblRvUnVsZVJxLElFZGl0Q29uZGl0aW9uUnVsZVJxLCBJVXBkYXRlVHlwZVBheW1lbnRScSxJQXNzaWduU3Vib3JkaW5hdGVScSxJUmVtb3ZlU3Vib3JkaW5hdGVScSxJVXBkYXRlVHlwZVVzZXJDb21taXNzaW9uUnEsSVBheUFkdmlzb3JCb251c2VzUnEsSVBheVNlbGVjdGVkQ29tbWlzc2lvbnNScSxJQXNzaWduU3Vib3JkaW5hdGVzTWFzc2l2ZVJxLElEZWxldGVUeXBlVXNlckNvbW1pc3Npb25ScSxcbiAgSXJlamVjdFRyYW5zYWN0aW9uQ29tbWlzc2lvblJxLCBJQXBwcm92ZVRyYW5zYWN0aW9uQ29tbWlzc2lvblJxICwgSVNob3dUcmFuc2FjdGlvbkJpbGxScSwgSWFkZERldm9sdXRpb25Db21taXNzaW9uUnEsIElvYnRhaW5UcmFuc2FjdGlvbnNCeVN0YXR1c1JxLCBJQ2FuY2VsbFRyYW5zYWN0aW9uQmlsbFJxLElHZXRDb21taXNzaW9uc0J5VHJhbnNhY3Rpb25Db2RlUnEsIElhZGRCb251c1J1bGVScSxJcmVtb3ZlQ29tbWlzc2lvbkZyb21UcmFuc2FjdGlvblJxLCBJVG9rZW5DYW1wdXNScSwgSW9idGFpbldhbGxldFdpdGhQcmljZSB9IGZyb20gJy4uLy4uL21vZGVscy9jb21tZXJjaWFsL2NvbW1lcmNpYWwubW9kZWwnO1xuaW1wb3J0IHsgVXNlclRva2VuUnEgfSBmcm9tICcuLi8uLi9tb2RlbHMvdXNlci91c2VyLXJxLm1vZGVsJztcbmltcG9ydCB7IElTb2NpYWxOZXR3b3Jrc1JxIH0gZnJvbSAnLi4vLi4vbW9kZWxzL21hcmtldGluZy9tYXJrZXRpbmcubW9kZWwnO1xuaW1wb3J0IHsgSU9idGFpbkFsbENvdXJzZXdhbGxldCB9IGZyb20gJy4uLy4uL21vZGVscy9idWRnZXQvYnVkZ2V0Lm1vZGVsJztcbmltcG9ydCB7IElPYnRhaW5BbGxSZWZlcnJhbHNCeVVzZXJScSB9IGZyb20gJy4uLy4uL21vZGVscy90cmFuc2Zlci90cmFuc2Zlci5tb2RlbCc7XG5pbXBvcnQgeyBJQ29kV2l0aFRoZWlyU3RhdGVzUnEsIElFeHRlbmRUaW1lVGVybXNScSwgSU5ld1Rlcm1zQW5kQ29uZFJxIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3Rlcm1zL3Rlcm1zLXJzLm1vZGVsJztcblxuXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBDb21tZXJjaWFsU2VydmljZSBleHRlbmRzIElQVEdlbmVyYWxTZXJ2aWNlIHtcblxuICBwcml2YXRlIFNFUlZJQ0VfVVJMID0gJ2NvbW1lcmNpYWwvYXBpLyc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50KSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLlNFUlZJQ0VfVVJMID0gdGhpcy5iYXNlVXJsKCkgKyB0aGlzLlNFUlZJQ0VfVVJMO1xuICB9XG5cbiAgY3JlYXRlQ09EKHJlcXVlc3Q6IENyZWF0ZUNPRFJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9jb2QnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldFN0dWRlbnRDb2RIaXN0b3J5KHRva2VuOiBzdHJpbmcsIHN0dWRlbnRfaWRfY2FyZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9vYnRhaW4vY29kL2hpc3RvcnkvYnkvc3R1ZGVudCc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMoe3Rva2VuLCBzdHVkZW50X2lkX2NhcmR9KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBnZXRDb2RIaXN0b3J5QWxsKHVzZXJUb2tlbjogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9vYnRhaW4vY29kL2hpc3RvcnkvYWxsJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyh1c2VyVG9rZW4pO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldENvZEhpc3RvcnlCeUNvdXJzZShyZXF1ZXN0OiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9jb2QvaGlzdG9yeS9ieS9jb3Vyc2UnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldENvZEhpc3RvcnlCeUNvdXJzZUV4cG9ydChyZXF1ZXN0OiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9jb2QvaGlzdG9yeS9ieS9jb3Vyc2UvZXhwb3J0JztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBnZXREaXNjb3VudENvdXBvbnMocGFyYW1zOiBHZXREaXNjb3VudENvdXBvbnNScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvZGlzY291bnQvY291cG9uL3NlYXJjaCc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBnZXRDb2RQcmljZXNCeUFncmVlbWVudChjb2RlOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvY29kL3ByaWNlcy9ieS9hZ3JlZW1lbnQvJyArIGNvZGU7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMoY29kZSk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBnZXRDb2RQYXJlbnRCeUNvZGUocGFyYW1zOiBQYXJlbnRCeUNvZGVScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvb2J0YWluL2NvZC9wYXJlbnQvYnkvY29kZSc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBnZXRBZGljSW5mb0J5Q29kZShwYXJhbXM6IEFkaWNJbmZvQnlDb2RlUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9jb2QvYWRpdGlvbmFsaW5mby9ieS9jb2RlJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldEZ1bGxEYXRhQ29kQnlTdHVkZW50KHBhcmFtczogRnVsbERhdGFDT0RScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvb2J0YWluL2Z1bGwvZGF0YS9jb2QvYnkvc3R1ZGVudCc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBnZXRGdWxsRGF0YUNvZEJ5U3R1ZGVudEFuZENvZHNCZWZvcmUocGFyYW1zOiBGdWxsRGF0YUNPRFJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9vYnRhaW4vZnVsbC9kYXRhL2NvZC9ieS9zdHVkZW50L2FuZC9jb2QvYmVmb3JlJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldENvZFByaWNlc0J5QWdyZWVtZW50VHlwZVBheW1lbnQocGFyYW1zOiBDb2RQcmljZXNScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvY29kL3ByaWNlcy9ieS9hZ3JlZW1lbnQvYW5kL3R5cGUvcGF5bWVudCc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBvYnRhaW5Db2RCeUFkdmFpc2VyKHBhcmFtczogVXNlclRva2VuUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9jb2QvYnkvYWR2YWlzZXInO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgb2J0YWluQ29kQ291cnNlc0J5QWR2aXNvcihwYXJhbXM6IFVzZXJUb2tlblJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9vYnRhaW4vY29kL2NvdXJzZXMvYnkvYWR2aXNvcic7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBvYnRhaW5Db2RCeUFkdmlzb3JBbmRDb3Vyc2UocGFyYW1zOiBHZXRDb2RCeUNvdXJzZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9vYnRhaW4vY29kL3N0dWRlbnQvYnkvY291cnNlL2FuZC9hZHZpc29yJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGNyZWF0ZUdvYWwocGFyYW1zOiBJR29hbEludGVyZmFjZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9jb250YWN0L3N0cmF0ZWd5L2NyZWF0ZS9nb2FsJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLHRoaXMuaHR0cE9wdGlvbnMpO1xuICAgIH1cblxuICBnZXRBbGxHb2Fscyh0b2tlbjogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9jb250YWN0L3N0cmF0ZWd5L3ZpZXcvZ29hbHMnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHRva2VuKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCx0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGNyZWF0ZURvY3VtZW50KHBhcmFtczogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9tZWRpYS9kb2N1bWVudCc7XG4gICAgbGV0IGZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKCk7XG4gICAgZm9ybURhdGEuYXBwZW5kKCdmaWxlJywgcGFyYW1zLmZpbGUpO1xuICAgIGZvcm1EYXRhLmFwcGVuZCgndXNlcl9hdXRvcicsIHBhcmFtcy51c2VyX2F1dG9yKTtcbiAgICBmb3JtRGF0YS5hcHBlbmQoJ2NvZGVfdXNlcicsIHBhcmFtcy5jb2RlX3VzZXIpO1xuICAgIGZvcm1EYXRhLmFwcGVuZCgndHlwZV9kb2N1bWVudCcsIHBhcmFtcy50eXBlX2RvY3VtZW50KTtcbiAgICBmb3JtRGF0YS5hcHBlbmQoJ3Rva2VuJywgcGFyYW1zLnRva2VuKTtcblxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCBmb3JtRGF0YSk7XG4gIH1cblxuICBnZXREb2N1bWVudHNCeVN0dWRlbnQocGFyYW1zOmFueSk6IE9ic2VydmFibGU8YW55PntcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L21lZGlhL2RvY3VtZW50L3VzZXInO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBvYnRhaW5Db2RTdHVkZW50QnlDb2RlQWR2aXNlcihwYXJhbXM6IElSZXBvcnRDb2RGb3JBZHZpc2VyUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvY29kL3N0dWRlbnQvYnkvYWR2aXNlcic7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBFeHBvcnRGaWxlRXhjZWxDb2RCeUFkdmlzZXIocGFyYW1zOiBJUmVwb3J0Q29kRm9yQWR2aXNlclJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9leHBvcnQvZXhjZWwvY29kL3N0dWRlbnQvYnkvYWR2aXNlcic7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBPYnRhaW5SZWZlcnJhbHNCeVVzZXIocGFyYW1zOiBJT2J0YWluUmVmZXJzQnlVc2VyUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9yZWZlcnJhbHMvYnkvdXNlci9jb2RlJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gICAgZ2V0UG9zaWJsZVN0dWRlbnRzQWxsKHBhcmFtczogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9vYnRhaW4vcG9zaWJsZS9zdHVkZW50cy9hbGwvbW9kZWxzJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuICBwb3N0QXNzaWduUG9zaWJsZVN0dWVudEZvclZhbHVlKHBhcmFtczogSUFzc2lnblBvc2libGVTdHVkZW50Rm9yVmFsdWVScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvcG9zaWJsZS9zdHVkZW50cy92YWx1ZS9hc3NpbmcnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG4gIGdldENvbnRhY3RzQnlBZHZpc2VyQ29tbWVyY2lhbChwYXJhbXM6IElHZXRDb250YWN0c2FkdmlzZXJScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvY29udGFjdHMvbWFya2V0aW5nL3N0cmF0ZWd5L2Fzc2luZy9ieS9hZHZpc2VyJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIE9idGFpbkNvZFByaWNlcyhwYXJhbXM6IElPYnRhaW5Db2RQcmljZXNScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvb2J0YWluL2NvZC9wcmljZXMnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgcG9zdENyZWF0ZWRTb2NpYWxOZXRvd3JrcyhwYXJhbXM6IElTb2NpYWxOZXR3b3Jrc1JxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9uZXcvcmVnaXN0ZXIvc29jaWFsL25ldHdvcmsnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgcG9zdEFzc2lnbmluZ0Fkdmlzb3JHb2FscyhwYXJhbXM6IElBc3NpZ25pbmdBZHZpc29yR29hbHNScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvYXNzaWduaW5nL2Fkdmlzb3J5L2dvYWxzJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIHBvc09idGFpbkFkdmlzb3JHb2FscyhwYXJhbXM6IElPYnRhaW5BbGxDb3Vyc2V3YWxsZXQpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9nb2Fscy9hc3NpZ25lZC90by9hZHZpc29yJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIHBvc3RPYnRhaW5PdmVyYWxHb2FsQWR2aXNvKHBhcmFtczogSU9idGFpbkFsbENvdXJzZXdhbGxldCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvb2J0YWluL292ZXJhbC9nb2FsL29mL2Fkdmlzb3InO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgcG9zdE9idGFpbmluZm9Db2RBY3R1YWxseUJ5VXNlcihwYXJhbXM6IElnZXRDb3Vyc2VzRmluaXNoQW5kdW5hc3NpZ25lZFJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9vYnRhaW4vaW5mby9jb2QvdXNlcic7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBvYnRhaW5nTGF0ZXNDb2RCeVN0dWRlbnRDb2RlIChjb2RlU3R1ZGVudDogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2xhdGVzdC9jb2QvYnkvc3R1ZGVudC9jb2RlLycgKyBjb2RlU3R1ZGVudDtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIHVwZGF0ZUNPRChyZXF1ZXN0OiBJVXBkYXRlQ09EUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3VwZGF0ZS9jb2QnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuICBvYnRhaW5jb2RDdXJycmVudEFuZExldmVsRnVsbERhdGFSZW5vdmF0aW9ucyhyZXF1ZXN0OiBJb2J0YWluY29kQ3VycnJlbnRBbmRMZXZlbEZ1bGxEYXRhUmVub3ZhdGlvbnNScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvb2J0YWluL2Z1bGwvZGF0YS9jdXJyZW50L2NvZC9ieS9jb2RlL3N0dWRlbnQvcmVub3ZhdGlvbic7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG4gIGdldGRhdGFDdXJyZW50Q29kQnlTVHVkZW50Q29kZShyZXF1ZXN0OiBJb2J0YWluY29kQ3VycnJlbnRBbmRMZXZlbEZ1bGxEYXRhUmVub3ZhdGlvbnNScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9kYXRhL2N1cnJlbnQvZGF0YS9jb2QvYnkvc3R1ZGVudCc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG4gIHVwZGF0ZUNvZEN1cnJlbnRJbk9ic2VydmF0aW9uc1Jlbm92YXRpb25zKHJlcXVlc3Q6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvY2hhbmdlL2NvZC9zdGF0dXMvb2JzZXJ2YXRpb25zL3Jlbm92YXRpb25zJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBvYnRhaW5Db2RQcmV2aXVzT3JQbGFjZW1lbnRUZXN0Qnljb2RlKHJlcXVlc3Q6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvb2J0YWluL2NvZC9yZWdpc3Rlci9wcmV2aW91cy9vci9wbGFjZW1lbnQvdGVzdC9ieS9zdGF0dXMnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuICB1cGRhdGVDb250cm9sU3RlcHNDb2RTZWxmTWFuYWdlZChyZXF1ZXN0OiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2NoYW5nZS9zdGVwL2Zvcm0vY29udHJvbC9jb2Qvc2VsZi9tYW5hZ2VkJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cbiAgT2J0YWluQ29kUHJpY2VzQ29kU2VsZk1hbmFnZWQocGFyYW1zOiBJT2J0YWluQ29kUHJpY2VzUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9jb2Qvc2VsZi9tYW5hZ2VkL3ByaWNlcyc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cbiAgY3JlYXRlQ29kU2VsZk1hbmFnZWQocGFyYW1zOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2NvZC9zZWxmL21hbmFnZWQnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgcHJpemVzRm9yRHVyYXRpb25PZENvbnRlc3QoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAgJ3ByaXplcy9mb3IvZHVyYXRpb24vb2YvY29udGVzdCc7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XG4gIH1cblxuICBjcmVhdGVUaWNrZXRSZWZlcnJhbChwYXJhbXM6IElDcmVhdGVUaWNrZXRSZWZlcnJhbFJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnY3JlYXRlL2NvbnRlc3QvcmVnaXN0cmF0aW9uL2J5L3JlZmVycmFsZSc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICAgIG9idGFpblN0YXR1c0FuZFJlZmVycmFsc0J5VXNlckNvZGUocGFyYW1zOiBJT2J0YWluUmVmZXJzQnlVc2VyUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdvYnRhaW4vc3RhdHVzL2FuZC9yZWZlcnJhbHMvYnkvdXNlci9jb2RlJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdlc1Bvc2libGVTdHVkZW50QWxsRm91ck1vZGVsc0J5RGF0ZShwYXJhbXM6IElHZXRQb3NpYmxlU3R1ZGVudEJ5RGF0ZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L3Bvc2libGUvc3R1ZGVudHMvYWxsL2ZvdXIvbW9kZWxzL2J5L2RhdGUnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2VzVXNlckFkdmlzZXJDb21tZXJjaWFsQnlUeXBlQXNzaW5nQ29udGFjdChwYXJhbXM6IElHZXRVc2VyQWR2aXNlckNvbW1lcmNpYWxCeVR5cGVBc3NpbmdDb250YWN0c1JxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L3VzZXIvY29tbWVyY2lhbC9ieS90eXBlL2Fzc2luZyc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBhc3NpbmdDdXN0b21lcnNCeVR5cGVBc3NpbmdDb250YWN0Rm9yQWR2aXNlcihwYXJhbXM6IEFzc2luZ0N1c3RvbWVyc0J5VHlwZUFzc2luZ0NvbnRhY3RGb3JBZHZpc2VyUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L0Fzc2luZy91c2VyL3Bvc2libGUvc3R1ZGVudC9ieS9kYXRlJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIG9idGFpbkFkZGl0aW9uYWxVc2VyRGF0YUJ5Q291cnNlKHBhcmFtczogSWdldENvdXJzZXNGaW5pc2hBbmR1bmFzc2lnbmVkUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdvYnRhaW4vYWRkaXRpb25hbC91c2VyL2RhdGEvYnkvY291cnNlJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIG9idGFpbkFsbFJlZmVycmFsc0J5VXNlcihwYXJhbXM6IElPYnRhaW5BbGxSZWZlcnJhbHNCeVVzZXJScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ29idGFpbi9hbGwvcmVmZXJyYWxzL2J5L3VzZXIvY29kZSc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBnZXRBbGxDb2RJbmZvcm1hdGlvbkZvckV4cG9ydGluZyhwYXJhbXM6IElDb2RQYXltZW50UnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvYWxsL2NvZC9pbmZvcm1hdGlvbi9mb3IvZXhwb3J0aW5nJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIG9idGFpbkNvZEJ5QWR2aXNvcldpdGhUaGVpclN0YXRlcyhwYXJhbXM6IElDb2RXaXRoVGhlaXJTdGF0ZXNScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ29idGFpbi9jb2QvYnkvYWR2aXNvci93aXRoL3RoZWlyL3N0YXRlcyc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBleHRlbmRUaW1lT2ZBY2NlcHRhbmNlT2ZUZXJtcyhwYXJhbXM6IElFeHRlbmRUaW1lVGVybXNScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2V4dGVuZC90aW1lL29mL2FjY2VwdGFuY2Uvb2YvdGVybXMnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgbmV3VGVybXNBbmRDb25kaXRpb25zQWNjZXB0YW5jZVRva2VuKHBhcmFtczogSU5ld1Rlcm1zQW5kQ29uZFJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnbmV3L3Rlcm1zL2FuZC9jb25kaXRpb25zL2FjY2VwdGFuY2UvdG9rZW4nO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgdXBkYXRlU3RhdHVzT2ZUZXJtc0FuZENvbmRpdGlvbnNSZWNvcmRzKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3VwZGF0ZS9zdGF0dXMvb2YvdCZjL3JlY29yZHMnIDtcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhudWxsKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIG9idGFpbkNvZEJ5Q29vZGluYXRvcldpdGhUaGVpclN0YXRlcyhwYXJhbXM6IElDb2RXaXRoVGhlaXJTdGF0ZXNScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ29idGFpbi9jb2QvYnkvY29vZGluYXRvZS93aXRoL3RoZWlyL3N0YXRlcyc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBvYnRhaW5BbGxJbmZvcm1hdGlvbkNvZEJ5Q29kZShjb2RlOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdvYnRhaW4vYWxsL2luZm9ybWF0aW9uL2NvZC9ieS9jb2RlLycgKyBjb2RlO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKGNvZGUpO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0U3VtbWFyeUJ5Q29tbWVyY2lhbEFkdmlzb3IocGFyYW1zOiBJR2V0U3VtbWFyeUJ5Q29tbWVyY2lhbEFkdmlzb3JScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9zdW1tYXJ5L2J5L2NvbW1lcmNpYWwvYWR2aXNvcic7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBnZXRDb2RTdHVkZW50RGV0YWlsc0J5QWR2aXNlcihyZXF1ZXN0OiBJR2V0Q29kU3R1ZGVudERldGFpbHNCeUFkdmlzZXJScSwgYWR2aXNlckNvZGU6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyBgZ2V0L2NvZC9zdHVkZW50L2RldGFpbHMvYnkvYWR2aXNlci8ke2FkdmlzZXJDb2RlfWA7XG4gICAgY29uc3Qgb3B0aW9ucyA9IHsgLi4udGhpcy5odHRwT3B0aW9ucywgcGFyYW1zOiByZXF1ZXN0IGFzIGFueSB9O1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIG9wdGlvbnMpO1xuICB9XG5cbiAgY3JlYXRlVHlwZVBheW1lbnQocGFyYW1zOiBJQ3JlYXRlVHlwZVBheW1lbnRScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9jcmVhdGUvdHlwZS9wYXltZW50L2NvbW1pc3Npb25zJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldEFsbFR5cGVQYXltZW50cyhyZXF1ZXN0OiBJVG9rZW5ScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2FsbC90eXBlL3BheW1lbnQvY29tbWlzc2lvbnMnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbmNyZWF0ZUNvbW1pc3Npb25BcmVhKHBhcmFtczogSUNyZWF0ZUNvbW1pc3Npb25BcmVhUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2NyZWF0ZS9jb21taXNzaW9uL2FyZWEnO1xuICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG59XG5cbnVwZGF0ZUNvbW1pc3Npb25BcmVhKHBhcmFtczogSUNyZWF0ZUNvbW1pc3Npb25BcmVhUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwdXQvdXBkYXRlL2NvbW1pc3Npb24tYXJlYSc7XG4gIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbn1cblxuICBnZXRBbGxDb21taXNzaW9uQXJlYXMocmVxdWVzdDogSVRva2VuUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9hbGwvY29tbWlzc2lvbi9hcmVhcyc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuYXNzaWduQ291cnNlVHlwZXNUb0FyZWEocGFyYW1zOiBJQXNzaWduQ291cnNlVHlwZXNUb0FyZWFScSk6IE9ic2VydmFibGU8YW55PiB7XG4gIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvYXNzaWduL2NvdXJzZS10eXBlcy90by1hcmVhJztcbiAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xufVxuXG5jcmVhdGVQYXltZW50QXJlYUNvbW1pc3Npb24ocGFyYW1zOiBJQ3JlYXRlUGF5bWVudEFyZWFDb21taXNzaW9uUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2NyZWF0ZS9wYXltZW50L2FyZWEvY29tbWlzc2lvbic7XG4gIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbn1cblxuICBnZXRDb21taXNzaW9uUnVsZXNCeUFyZWEocmVxdWVzdDogSVRva2VuUnEsIGFyZWFDb2RlOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgYGdldC9jb21taXNzaW9uLXJ1bGVzL2J5LWFyZWEvJHthcmVhQ29kZX1gO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBjcmVhdGVUeXBlVXNlckNvbW1pc3Npb24ocGFyYW1zOiBJQ3JlYXRlVHlwZVVzZXJDb21taXNzaW9uUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvY3JlYXRlL3R5cGUvdXNlci9jb21taXNzaW9uJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldEFsbFR5cGVVc2VyQ29tbWlzc2lvbnMocmVxdWVzdDogSVRva2VuUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9hbGwvdHlwZS91c2VyL2NvbW1pc3Npb25zJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGFzc2lnbkNvbW1pc3Npb25Nb2RlbFRvVXNlcihwYXJhbXM6IElBc3NpZ25Db21taXNzaW9uTW9kZWxUb1VzZXJScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9hc3NpZ24vbW9kZWwvdG8vdXNlcic7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBnZXRBY3RpdmVDb21taXNzaW9uTW9kZWxGb3JVc2VyKHJlcXVlc3Q6IElUb2tlblJxLCB1c2VyQ29kZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArIGBnZXQvYWN0aXZlL21vZGVsL2Zvci91c2VyLyR7dXNlckNvZGV9YDtcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIHBheUNvbW1pc3Npb25zKHBhcmFtczogSVBheVNlbGVjdGVkQ29tbWlzc2lvbnNScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnY29tbWlzc2lvbnMvcGF5L2NvZHMnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgLy9yZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgcGFyYW1zLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICByZWplY3RUcmFuc2FjdGlvbkJ5Q29kZShwYXJhbXM6IElyZWplY3RUcmFuc2FjdGlvbkNvbW1pc3Npb25ScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnY29tbWlzc2lvbnMvcmVqZWN0L3RyYW5zYWN0aW9uJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGFwcHJvdmVUcmFuc2FjdGlvbkJ5Q29kZShwYXJhbXM6IElBcHByb3ZlVHJhbnNhY3Rpb25Db21taXNzaW9uUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2NvbW1pc3Npb25zL2FwcHJvdmUvdHJhbnNhY3Rpb24nO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgYWRkRGV2b2x1dGlvbkNvbW1pc3Npb24ocGFyYW1zOiBJYWRkRGV2b2x1dGlvbkNvbW1pc3Npb25ScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnY29tbWlzc2lvbnMvYWRkL2Rldm9sdXRpb24vY29tbWlzc2lvbic7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBvYnRhaW5UcmFuc2FjdGlvbnNCeVN0YXR1cyhyZXF1ZXN0OiBJb2J0YWluVHJhbnNhY3Rpb25zQnlTdGF0dXNScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyBgZ2V0L3RyYW5zYWN0aW9ucy9ieS91c2VyL2FuZC9zdGF0dXNgO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgc2VlVHJhbnNhY3Rpb25CaWxsKHJlcXVlc3Q6IElTaG93VHJhbnNhY3Rpb25CaWxsUnEgKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArIGBjb21taXNzaW9ucy9zZWUvdHJhbnNhY3Rpb24vYmlsbGA7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBwYXlBZHZpc29yQm9udXNlcyhwYXJhbXM6IElQYXlBZHZpc29yQm9udXNlc1JxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdjb21taXNzaW9ucy9wYXkvYm9udXNlcyc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgcGFyYW1zLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIHVwZGF0ZVBheW1lbnRBcmVhQ29tbWlzc2lvbihyZXF1ZXN0OiBJVXBkYXRlUGF5bWVudEFyZWFDb21taXNzaW9uUnEsIHJ1bGVDb2RlOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgYHB1dC91cGRhdGUvcGF5bWVudC1hcmVhLWNvbW1pc3Npb24vJHtydWxlQ29kZX1gO1xuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KHNlcnZpY2VVcmwsIHJlcXVlc3QsIHRoaXMuaHR0cE9wdGlvbnMpO1xufVxuXG5nZXRBbGxBcmVhc1dpdGhDb21taXNzaW9uUnVsZXMocmVxdWVzdDogSVRva2VuUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvYWxsLWFyZWFzLXdpdGgtY29tbWlzc2lvbi1ydWxlcyc7XG4gIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbn1cblxuZ2V0QWxsQ29uZGl0aW9ucyhyZXF1ZXN0OiBJVG9rZW5ScSk6IE9ic2VydmFibGU8YW55PiB7XG4gIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9hbGwvY29tbWlzc2lvbi1jb25kaXRpb25zJztcbiAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xufVxuXG5nZXRBbGxBZ3JlZW1lbnRzKHJlcXVlc3Q6IElUb2tlblJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2FsbC9hZ3JlZW1lbnRzJztcbiAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xufVxuXG5hZGRDb25kaXRpb25Ub1J1bGUocmVxdWVzdDogSUFkZENvbmRpdGlvblRvUnVsZVJxLCBydWxlQ29kZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyBgcG9zdC9hZGQvY29uZGl0aW9uL3RvLXJ1bGUvJHtydWxlQ29kZX1gO1xuICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xufVxuXG5lZGl0Q29uZGl0aW9uVG9SdWxlKHJlcXVlc3Q6IElFZGl0Q29uZGl0aW9uUnVsZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyBgcHV0L2VkaXQvY29uZGl0aW9uL3J1bGVgO1xuICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xufVxuXG5kZWxldGVDb25kaXRpb25Gcm9tUnVsZShyZXF1ZXN0OiBJVG9rZW5ScSwgY29uZGl0aW9uSWQ6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XG4gIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgYGRlbGV0ZS9ydWxlLWNvbmRpdGlvbi8ke2NvbmRpdGlvbklkfWA7XG4gIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICBjb25zdCBvcHRpb25zID0ge1xuICAgIGhlYWRlcnM6IHRoaXMuaHR0cE9wdGlvbnMuaGVhZGVycyxcbiAgICBwYXJhbXM6IHRoaXMuaHR0cE9wdGlvbnMucGFyYW1zXG4gIH07XG4gIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKHNlcnZpY2VVcmwsIG9wdGlvbnMpO1xufVxuXG51cGRhdGVUeXBlUGF5bWVudChyZXF1ZXN0OiBJVXBkYXRlVHlwZVBheW1lbnRScSwgY29kZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyBgcHV0L3VwZGF0ZS90eXBlLXBheW1lbnQtY29tbWlzc2lvbi8ke2NvZGV9YDtcbiAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gIHJldHVybiB0aGlzLmh0dHAucHV0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xufVxuXG5kZWxldGVUeXBlUGF5bWVudChyZXF1ZXN0OiBJVG9rZW5ScSwgY29kZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyBgZGVsZXRlL3R5cGUtcGF5bWVudC1jb21taXNzaW9uLyR7Y29kZX1gO1xuICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICBoZWFkZXJzOiB0aGlzLmh0dHBPcHRpb25zLmhlYWRlcnMsXG4gICAgcGFyYW1zOiB0aGlzLmh0dHBPcHRpb25zLnBhcmFtc1xuICB9O1xuICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZShzZXJ2aWNlVXJsLCBvcHRpb25zKTtcbn1cblxuZGVsZXRlUGF5bWVudEFyZWFDb21taXNzaW9uKHJlcXVlc3Q6IElUb2tlblJxLCBjb2RlOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArIGBkZWxldGUvcGF5bWVudC1hcmVhLWNvbW1pc3Npb24vJHtjb2RlfWA7XG4gIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICBjb25zdCBvcHRpb25zID0ge1xuICAgIGhlYWRlcnM6IHRoaXMuaHR0cE9wdGlvbnMuaGVhZGVycyxcbiAgICBwYXJhbXM6IHRoaXMuaHR0cE9wdGlvbnMucGFyYW1zXG4gIH07XG4gIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKHNlcnZpY2VVcmwsIG9wdGlvbnMpO1xufVxuXG4gIG9idGFpblByZWFzc2lnbmVkQ291cnNlc0FuZFN0dWRlbnRFbnJvbGxtZW50U3RhdHVzKGNvZGU6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ29idGFpbi9wcmVhc3NpZ25lZC9jb3Vyc2VzL3N0dWRlbnQvZW5yb2xsbWVudC9zdGF0dXMvJyArIGNvZGU7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMoY29kZSk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XG4gIH1cbiAgZGVsZXRlQ29uZGl0aW9uKHJlcXVlc3Q6IElUb2tlblJxLCBjb2RlOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgYGRlbGV0ZS9jb21taXNzaW9uLWNvbmRpdGlvbi8ke2NvZGV9YDtcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgaGVhZGVyczogdGhpcy5odHRwT3B0aW9ucy5oZWFkZXJzLFxuICAgICAgcGFyYW1zOiB0aGlzLmh0dHBPcHRpb25zLnBhcmFtc1xuICAgIH07XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kZWxldGUoc2VydmljZVVybCwgb3B0aW9ucyk7XG4gIH1cblxuICByZW5ld1N0dWRlbnRzVG9OZXh0TGV2ZWwocmVxdWVzdDogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArIGBwb3N0L2NvZC9hbmQvcmVuZXdhbC9ieS9jb3Vyc2VzYDtcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBvYnRhaW5QcmVhc3NpZ25lZENvdXJzZXMoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnb2J0YWluL3ByZWFzc2lnbmVkL2NvdXJzZXMnO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xuICB9XG5cbiAgIGZ1bGxEYXRhQ29kQnlTdHVkZW50Q291cnNlUHJlYXNzaWduZWQoY29kZV9zdHVkZW50OiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdmdWxsZGF0YS9jb2QvYnkvc3R1ZGVudC9jb3Vyc2UvcHJlYXNzaWduZWQvJyArIGNvZGVfc3R1ZGVudDtcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhjb2RlX3N0dWRlbnQpO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xuICB9XG5cbiAgc2VhcmNoU3R1ZGVudEJ5SWRjYXJkQ291cnNlUHJlYXNzaWduZWQoaWRjYXJkX3N0dWRlbnQ6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3NlYXJjaC9zdHVkZW50L2J5L2lkY2FyZC9jb3Vyc2UvcHJlYXNzaWduZWQvJyArIGlkY2FyZF9zdHVkZW50O1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKGlkY2FyZF9zdHVkZW50KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcbiAgfVxuXG4gIGV4cG9ydFBvc2libGVTdHVkZW50QWxsRm91ck1vZGVsc0J5RGF0ZShwYXJhbXM6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9wb3NpYmxlL3N0dWRlbnRzL2FsbC9mb3VyL21vZGVscy9ieS9kYXRlL2Zvci9leHBvcnQnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0QWxsR29hbHNGb3JDb21taXNzaW9uTW9kZWxzKHJlcXVlc3Q6IElUb2tlblJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvaGVscGVycy9nb2Fscyc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuXG4gIGdldFRlYW1CeU1hbmFnZXIocmVxdWVzdDogSVRva2VuUnEsIG1hbmFnZXJDb2RlOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgYGdldC90ZWFtL2J5L21hbmFnZXIvJHttYW5hZ2VyQ29kZX1gO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cblxuICBhc3NpZ25TdWJvcmRpbmF0ZVRvTWFuYWdlcihwYXJhbXM6IElBc3NpZ25TdWJvcmRpbmF0ZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3RlYW0vbWVtYmVyJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCBwYXJhbXMsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgcmVtb3ZlU3Vib3JkaW5hdGVGcm9tTWFuYWdlcihwYXJhbXM6IElSZW1vdmVTdWJvcmRpbmF0ZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdkZWxldGUvdGVhbS9tZW1iZXInO1xuICAgIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgICAuLi50aGlzLmh0dHBPcHRpb25zLFxuICAgICAgYm9keTogeyBwYXJhbXMgfVxuICAgIH07XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kZWxldGUoc2VydmljZVVybCwgb3B0aW9ucyk7XG59XG5cbm1hc3NBc3NpZ25TdWJvcmRpbmF0ZXMocGFyYW1zOiBJQXNzaWduU3Vib3JkaW5hdGVzTWFzc2l2ZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvdGVhbS9tZW1iZXJzL21hc3NpdmUnO1xuICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG59XG5cbiAgZ2V0VXNlcnNGb3JDb21taXNzaW9uTWFuYWdlbWVudChyZXF1ZXN0OiBJVG9rZW5DYW1wdXNScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L3VzZXJzL2Zvci1tYW5hZ2VtZW50JztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldEFsbENvbW1pc3Npb25Db25jZXB0cyhyZXF1ZXN0OiBJVG9rZW5ScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2FsbC9jb21taXNzaW9uL2NvbmNlcHRzJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuICB1cGRhdGVUeXBlVXNlckNvbW1pc3Npb24ocGFyYW1zOiBJVXBkYXRlVHlwZVVzZXJDb21taXNzaW9uUnEsIGNvZGU6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyBgcHV0L3VwZGF0ZS90eXBlL3VzZXIvY29tbWlzc2lvbi8ke2NvZGV9YDtcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0U3Vib3JkaW5hdGVzQnlNYW5hZ2VyKHJlcXVlc3Q6IElUb2tlblJxLCBtYW5hZ2VyQ29kZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArIGBnZXQvdGVhbS9ieS9tYW5hZ2VyLyR7bWFuYWdlckNvZGV9YDtcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGRlbGV0ZVR5cGVVc2VyQ29tbWlzc2lvbihwYXJhbXM6IElEZWxldGVUeXBlVXNlckNvbW1pc3Npb25ScSwgY29kZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArIGBkZWxldGUvdHlwZS91c2VyL2NvbW1pc3Npb24vJHtjb2RlfWA7XG4gICAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICAgIC4uLnRoaXMuaHR0cE9wdGlvbnMsXG4gICAgICBib2R5OiB7IHBhcmFtcyB9XG4gICAgfTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZShzZXJ2aWNlVXJsLCBvcHRpb25zKTtcbiAgfVxuICBnZXRNb250aGx5Qm9udXNTdGF0dXMocmVxdWVzdDogYW55LCBjb2RlOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArIGBhZHZpc29yL21vbnRobHkvc3RhdHVzLyR7Y29kZX1gO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldEFsbENvdXJzZVR5cGVDYXRlZ29yaWVzKHJlcXVlc3Q6IElUb2tlblJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArIGBnZXQvYWxsL2NvdXJzZS90eXBlL2NhdGVnb3JpZXNgO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cblxuICBcblxuICAgIGdldFRyYW5zYWN0aW9uQ29tbWlzc2lvbnNCeUNvZGUocmVxdWVzdDogSUdldENvbW1pc3Npb25zQnlUcmFuc2FjdGlvbkNvZGVScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyBgZ2V0L2NvbW1pc3Npb25zL2J5L3RyYW5zYWN0aW9uL2NvZGVgO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgY2FuY2VsbFRyYW5zYWN0aW9uQmlsbChwYXJhbXM6IElDYW5jZWxsVHJhbnNhY3Rpb25CaWxsUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2NvbW1pc3Npb25zL2NhbmNlbGwvdHJhbnNhY3Rpb24vYmlsbCc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuXG5cblxuICAgIGFkZEJvbnVzUnVsZShwYXJhbXM6IElhZGRCb251c1J1bGVScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9hZGQvYm9udXMvcnVsZSc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBlZGl0Qm9udXNSdWxlKHBhcmFtczogSWFkZEJvbnVzUnVsZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2VkaXQvYm9udXMvcnVsZSc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBkZWxldGVCb251c1J1bGUocGFyYW1zOiBJYWRkQm9udXNSdWxlUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvZGVsZXRlL2JvbnVzL3J1bGUnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0Qm9udXNSdWxlcygpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9hbGwvYm9udXMvcnVsZXMnO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xuICB9XG5cbiAgcmVtb3ZlQ29tbWlzc2lvbkZyb21UcmFuc2FjdGlvbihwYXJhbXM6IElyZW1vdmVDb21taXNzaW9uRnJvbVRyYW5zYWN0aW9uUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3JlbW92ZS9jb21taXNzaW9uL2Zyb20vdHJhbnNhY3Rpb24nO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0QWxsQ29uZmlnRGF0YUZvckNvbW1pc3Npb24ocGFyYW1zOiBJVG9rZW5DYW1wdXNScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2FsbC9jb25maWcvZGF0YS9mb3IvY29tbWlzc2lvbic7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBnZXR3YWxsZXRCeUNhbXB1c1RyYW5zYWN0aW9uKHBhcmFtczogSW9idGFpbldhbGxldFdpdGhQcmljZSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L3dhbGxldC9ieS9jYW1wdXMvdHJhbnNhY3Rpb24nO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbn1cblxuXG4iXX0=
|
|
@@ -4303,6 +4303,11 @@ class CommercialService extends IPTGeneralService {
|
|
|
4303
4303
|
this.generateRequestParams(params);
|
|
4304
4304
|
return this.http.post(serviceUrl, this.httpOptions);
|
|
4305
4305
|
}
|
|
4306
|
+
updateCommissionArea(params) {
|
|
4307
|
+
const serviceUrl = this.SERVICE_URL + 'put/update/commission-area';
|
|
4308
|
+
this.generateRequestParams(params);
|
|
4309
|
+
return this.http.post(serviceUrl, this.httpOptions);
|
|
4310
|
+
}
|
|
4306
4311
|
getAllCommissionAreas(request) {
|
|
4307
4312
|
const serviceUrl = this.SERVICE_URL + 'get/all/commission/areas';
|
|
4308
4313
|
this.generateRequestParams(request);
|
|
@@ -4577,6 +4582,11 @@ class CommercialService extends IPTGeneralService {
|
|
|
4577
4582
|
this.generateRequestParams(params);
|
|
4578
4583
|
return this.http.post(serviceUrl, this.httpOptions);
|
|
4579
4584
|
}
|
|
4585
|
+
getwalletByCampusTransaction(params) {
|
|
4586
|
+
const serviceUrl = this.SERVICE_URL + 'get/wallet/by/campus/transaction';
|
|
4587
|
+
this.generateRequestParams(params);
|
|
4588
|
+
return this.http.post(serviceUrl, this.httpOptions);
|
|
4589
|
+
}
|
|
4580
4590
|
}
|
|
4581
4591
|
CommercialService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: CommercialService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4582
4592
|
CommercialService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: CommercialService, providedIn: 'root' });
|