iptdevs-design-system 3.2.166 → 3.2.167
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 +6 -1
- package/fesm2015/iptdevs-design-system.mjs +5 -0
- package/fesm2015/iptdevs-design-system.mjs.map +1 -1
- package/fesm2020/iptdevs-design-system.mjs +5 -0
- package/fesm2020/iptdevs-design-system.mjs.map +1 -1
- package/lib/core/models/commercial/commercial.model.d.ts +7 -0
- package/lib/core/services/commercial-service/comercial.service.d.ts +1 -0
- 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/OiBudW1iZXI7XG4gIFxufSJdfQ==
|
|
@@ -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);
|
|
@@ -599,4 +604,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
|
|
|
599
604
|
type: Injectable,
|
|
600
605
|
args: [{ providedIn: 'root' }]
|
|
601
606
|
}], 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==
|
|
607
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tZXJjaWFsLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29yZS9zZXJ2aWNlcy9jb21tZXJjaWFsLXNlcnZpY2UvY29tZXJjaWFsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUkzQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7O0FBWTNELE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxpQkFBaUI7SUFJdEQsWUFBb0IsSUFBZ0I7UUFDbEMsS0FBSyxFQUFFLENBQUM7UUFEVSxTQUFJLEdBQUosSUFBSSxDQUFZO1FBRjVCLGdCQUFXLEdBQUcsaUJBQWlCLENBQUM7UUFJdEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUN2RCxDQUFDO0lBRUQsU0FBUyxDQUFDLE9BQW9CO1FBQzVCLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO1FBQy9DLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNwQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELG9CQUFvQixDQUFDLEtBQWEsRUFBRSxlQUF1QjtRQUN6RCxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLG9DQUFvQyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxFQUFDLEtBQUssRUFBRSxlQUFlLEVBQUMsQ0FBQyxDQUFDO1FBQ3JELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FB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LENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCw2QkFBNkIsQ0FBQyxNQUFzQjtRQUNsRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLG9DQUFvQyxDQUFDO1FBQzNFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsQ0FBQzs7OEdBbnNCVSxpQkFBaUI7a0hBQWpCLGlCQUFpQixjQURMLE1BQU07MkZBQ2xCLGlCQUFpQjtrQkFEN0IsVUFBVTttQkFBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJZ2V0Q291cnNlc0ZpbmlzaEFuZHVuYXNzaWduZWRScSB9IGZyb20gJy4vLi4vLi4vbW9kZWxzL3JlcG9ydHMvcmVwb3J0cy5tb2RlbCc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgR2V0RGlzY291bnRDb3Vwb25zUnEgfSBmcm9tICcuLi8uLi9tb2RlbHMvcGF5bWVudC9wYXltZW50LXJxLm1vZGVsJztcbmltcG9ydCB7IENyZWF0ZUNPRFJxLCBGdWxsRGF0YUNPRFJxLCBHZXRDb2RCeUNvdXJzZVJxLCBJVXBkYXRlQ09EUnEsIElvYnRhaW5jb2RDdXJycmVudEFuZExldmVsRnVsbERhdGFSZW5vdmF0aW9uc1JxLCBJQ29kUGF5bWVudFJxIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2NvZC9jb2QtcnEubW9kZWwnO1xuaW1wb3J0IHsgSVBUR2VuZXJhbFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlLWVudmlyb21lbnRzJztcbmltcG9ydCB7IEFkaWNJbmZvQnlDb2RlUnEsIENvZFByaWNlc1JxLCBJR29hbEludGVyZmFjZVJxLCBQYXJlbnRCeUNvZGVScSwgSU9idGFpblJlZmVyc0J5VXNlclJxLCBJQXNzaWduUG9zaWJsZVN0dWRlbnRGb3JWYWx1ZVJxLCBJR2V0Q29udGFjdHNhZHZpc2VyUnEsIElPYnRhaW5Db2RQcmljZXNScSwgSUFzc2lnbmluZ0Fkdmlzb3JHb2Fsc1JxLCBJUmVwb3J0Q29kRm9yQWR2aXNlclJxLCBJQ3JlYXRlVGlja2V0UmVmZXJyYWxScSwgSUdldFBvc2libGVTdHVkZW50QnlEYXRlUnEsIElHZXRVc2VyQWR2aXNlckNvbW1lcmNpYWxCeVR5cGVBc3NpbmdDb250YWN0c1JxLCBBc3NpbmdDdXN0b21lcnNCeVR5cGVBc3NpbmdDb250YWN0Rm9yQWR2aXNlclJxLElDcmVhdGVUeXBlUGF5bWVudFJxLCBJQ3JlYXRlQ29tbWlzc2lvbkFyZWFScSwgSUFzc2lnbkNvdXJzZVR5cGVzVG9BcmVhUnEsXG4gIElDcmVhdGVQYXltZW50QXJlYUNvbW1pc3Npb25ScSwgSUNyZWF0ZVR5cGVVc2VyQ29tbWlzc2lvblJxLCBJQXNzaWduQ29tbWlzc2lvbk1vZGVsVG9Vc2VyUnEsIElUb2tlblJxLCBJR2V0U3VtbWFyeUJ5Q29tbWVyY2lhbEFkdmlzb3JScSwgSUdldENvZFN0dWRlbnREZXRhaWxzQnlBZHZpc2VyUnEsSVVwZGF0ZVBheW1lbnRBcmVhQ29tbWlzc2lvblJxLElBZGRDb25kaXRpb25Ub1J1bGVScSxJRWRpdENvbmRpdGlvblJ1bGVScSwgSVVwZGF0ZVR5cGVQYXltZW50UnEsSUFzc2lnblN1Ym9yZGluYXRlUnEsSVJlbW92ZVN1Ym9yZGluYXRlUnEsSVVwZGF0ZVR5cGVVc2VyQ29tbWlzc2lvblJxLElQYXlBZHZpc29yQm9udXNlc1JxLElQYXlTZWxlY3RlZENvbW1pc3Npb25zUnEsSUFzc2lnblN1Ym9yZGluYXRlc01hc3NpdmVScSxJRGVsZXRlVHlwZVVzZXJDb21taXNzaW9uUnEsXG4gIElyZWplY3RUcmFuc2FjdGlvbkNvbW1pc3Npb25ScSwgSUFwcHJvdmVUcmFuc2FjdGlvbkNvbW1pc3Npb25ScSAsIElTaG93VHJhbnNhY3Rpb25CaWxsUnEsIElhZGREZXZvbHV0aW9uQ29tbWlzc2lvblJxLCBJb2J0YWluVHJhbnNhY3Rpb25zQnlTdGF0dXNScSwgSUNhbmNlbGxUcmFuc2FjdGlvbkJpbGxScSxJR2V0Q29tbWlzc2lvbnNCeVRyYW5zYWN0aW9uQ29kZVJxLCBJYWRkQm9udXNSdWxlUnEsSXJlbW92ZUNvbW1pc3Npb25Gcm9tVHJhbnNhY3Rpb25ScSwgSVRva2VuQ2FtcHVzUnEgfSBmcm9tICcuLi8uLi9tb2RlbHMvY29tbWVyY2lhbC9jb21tZXJjaWFsLm1vZGVsJztcbmltcG9ydCB7IFVzZXJUb2tlblJxIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3VzZXIvdXNlci1ycS5tb2RlbCc7XG5pbXBvcnQgeyBJU29jaWFsTmV0d29ya3NScSB9IGZyb20gJy4uLy4uL21vZGVscy9tYXJrZXRpbmcvbWFya2V0aW5nLm1vZGVsJztcbmltcG9ydCB7IElPYnRhaW5BbGxDb3Vyc2V3YWxsZXQgfSBmcm9tICcuLi8uLi9tb2RlbHMvYnVkZ2V0L2J1ZGdldC5tb2RlbCc7XG5pbXBvcnQgeyBJT2J0YWluQWxsUmVmZXJyYWxzQnlVc2VyUnEgfSBmcm9tICcuLi8uLi9tb2RlbHMvdHJhbnNmZXIvdHJhbnNmZXIubW9kZWwnO1xuaW1wb3J0IHsgSUNvZFdpdGhUaGVpclN0YXRlc1JxLCBJRXh0ZW5kVGltZVRlcm1zUnEsIElOZXdUZXJtc0FuZENvbmRScSB9IGZyb20gJy4uLy4uL21vZGVscy90ZXJtcy90ZXJtcy1ycy5tb2RlbCc7XG5cblxuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgQ29tbWVyY2lhbFNlcnZpY2UgZXh0ZW5kcyBJUFRHZW5lcmFsU2VydmljZSB7XG5cbiAgcHJpdmF0ZSBTRVJWSUNFX1VSTCA9ICdjb21tZXJjaWFsL2FwaS8nO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5TRVJWSUNFX1VSTCA9IHRoaXMuYmFzZVVybCgpICsgdGhpcy5TRVJWSUNFX1VSTDtcbiAgfVxuXG4gIGNyZWF0ZUNPRChyZXF1ZXN0OiBDcmVhdGVDT0RScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvY29kJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBnZXRTdHVkZW50Q29kSGlzdG9yeSh0b2tlbjogc3RyaW5nLCBzdHVkZW50X2lkX2NhcmQ6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvb2J0YWluL2NvZC9oaXN0b3J5L2J5L3N0dWRlbnQnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHt0b2tlbiwgc3R1ZGVudF9pZF9jYXJkfSk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0Q29kSGlzdG9yeUFsbCh1c2VyVG9rZW46IGFueSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvb2J0YWluL2NvZC9oaXN0b3J5L2FsbCc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXModXNlclRva2VuKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBnZXRDb2RIaXN0b3J5QnlDb3Vyc2UocmVxdWVzdDogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9vYnRhaW4vY29kL2hpc3RvcnkvYnkvY291cnNlJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBnZXRDb2RIaXN0b3J5QnlDb3Vyc2VFeHBvcnQocmVxdWVzdDogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9vYnRhaW4vY29kL2hpc3RvcnkvYnkvY291cnNlL2V4cG9ydCc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0RGlzY291bnRDb3Vwb25zKHBhcmFtczogR2V0RGlzY291bnRDb3Vwb25zUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2Rpc2NvdW50L2NvdXBvbi9zZWFyY2gnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0Q29kUHJpY2VzQnlBZ3JlZW1lbnQoY29kZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2NvZC9wcmljZXMvYnkvYWdyZWVtZW50LycgKyBjb2RlO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKGNvZGUpO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0Q29kUGFyZW50QnlDb2RlKHBhcmFtczogUGFyZW50QnlDb2RlUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9jb2QvcGFyZW50L2J5L2NvZGUnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0QWRpY0luZm9CeUNvZGUocGFyYW1zOiBBZGljSW5mb0J5Q29kZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9vYnRhaW4vY29kL2FkaXRpb25hbGluZm8vYnkvY29kZSc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBnZXRGdWxsRGF0YUNvZEJ5U3R1ZGVudChwYXJhbXM6IEZ1bGxEYXRhQ09EUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9mdWxsL2RhdGEvY29kL2J5L3N0dWRlbnQnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0RnVsbERhdGFDb2RCeVN0dWRlbnRBbmRDb2RzQmVmb3JlKHBhcmFtczogRnVsbERhdGFDT0RScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvb2J0YWluL2Z1bGwvZGF0YS9jb2QvYnkvc3R1ZGVudC9hbmQvY29kL2JlZm9yZSc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBnZXRDb2RQcmljZXNCeUFncmVlbWVudFR5cGVQYXltZW50KHBhcmFtczogQ29kUHJpY2VzUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2NvZC9wcmljZXMvYnkvYWdyZWVtZW50L2FuZC90eXBlL3BheW1lbnQnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgb2J0YWluQ29kQnlBZHZhaXNlcihwYXJhbXM6IFVzZXJUb2tlblJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9vYnRhaW4vY29kL2J5L2FkdmFpc2VyJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIG9idGFpbkNvZENvdXJzZXNCeUFkdmlzb3IocGFyYW1zOiBVc2VyVG9rZW5ScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvb2J0YWluL2NvZC9jb3Vyc2VzL2J5L2Fkdmlzb3InO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgb2J0YWluQ29kQnlBZHZpc29yQW5kQ291cnNlKHBhcmFtczogR2V0Q29kQnlDb3Vyc2VScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvb2J0YWluL2NvZC9zdHVkZW50L2J5L2NvdXJzZS9hbmQvYWR2aXNvcic7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBjcmVhdGVHb2FsKHBhcmFtczogSUdvYWxJbnRlcmZhY2VScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvY29udGFjdC9zdHJhdGVneS9jcmVhdGUvZ29hbCc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCx0aGlzLmh0dHBPcHRpb25zKTtcbiAgICB9XG5cbiAgZ2V0QWxsR29hbHModG9rZW46IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvY29udGFjdC9zdHJhdGVneS92aWV3L2dvYWxzJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyh0b2tlbik7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBjcmVhdGVEb2N1bWVudChwYXJhbXM6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvbWVkaWEvZG9jdW1lbnQnO1xuICAgIGxldCBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgIGZvcm1EYXRhLmFwcGVuZCgnZmlsZScsIHBhcmFtcy5maWxlKTtcbiAgICBmb3JtRGF0YS5hcHBlbmQoJ3VzZXJfYXV0b3InLCBwYXJhbXMudXNlcl9hdXRvcik7XG4gICAgZm9ybURhdGEuYXBwZW5kKCdjb2RlX3VzZXInLCBwYXJhbXMuY29kZV91c2VyKTtcbiAgICBmb3JtRGF0YS5hcHBlbmQoJ3R5cGVfZG9jdW1lbnQnLCBwYXJhbXMudHlwZV9kb2N1bWVudCk7XG4gICAgZm9ybURhdGEuYXBwZW5kKCd0b2tlbicsIHBhcmFtcy50b2tlbik7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgZm9ybURhdGEpO1xuICB9XG5cbiAgZ2V0RG9jdW1lbnRzQnlTdHVkZW50KHBhcmFtczphbnkpOiBPYnNlcnZhYmxlPGFueT57XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9tZWRpYS9kb2N1bWVudC91c2VyJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgb2J0YWluQ29kU3R1ZGVudEJ5Q29kZUFkdmlzZXIocGFyYW1zOiBJUmVwb3J0Q29kRm9yQWR2aXNlclJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2NvZC9zdHVkZW50L2J5L2FkdmlzZXInO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgRXhwb3J0RmlsZUV4Y2VsQ29kQnlBZHZpc2VyKHBhcmFtczogSVJlcG9ydENvZEZvckFkdmlzZXJScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvZXhwb3J0L2V4Y2VsL2NvZC9zdHVkZW50L2J5L2FkdmlzZXInO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgT2J0YWluUmVmZXJyYWxzQnlVc2VyKHBhcmFtczogSU9idGFpblJlZmVyc0J5VXNlclJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9vYnRhaW4vcmVmZXJyYWxzL2J5L3VzZXIvY29kZSc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICAgIGdldFBvc2libGVTdHVkZW50c0FsbChwYXJhbXM6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvb2J0YWluL3Bvc2libGUvc3R1ZGVudHMvYWxsL21vZGVscyc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cbiAgcG9zdEFzc2lnblBvc2libGVTdHVlbnRGb3JWYWx1ZShwYXJhbXM6IElBc3NpZ25Qb3NpYmxlU3R1ZGVudEZvclZhbHVlUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3Bvc2libGUvc3R1ZGVudHMvdmFsdWUvYXNzaW5nJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuICBnZXRDb250YWN0c0J5QWR2aXNlckNvbW1lcmNpYWwocGFyYW1zOiBJR2V0Q29udGFjdHNhZHZpc2VyUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2NvbnRhY3RzL21hcmtldGluZy9zdHJhdGVneS9hc3NpbmcvYnkvYWR2aXNlcic7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBPYnRhaW5Db2RQcmljZXMocGFyYW1zOiBJT2J0YWluQ29kUHJpY2VzUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9jb2QvcHJpY2VzJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIHBvc3RDcmVhdGVkU29jaWFsTmV0b3dya3MocGFyYW1zOiBJU29jaWFsTmV0d29ya3NScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvbmV3L3JlZ2lzdGVyL3NvY2lhbC9uZXR3b3JrJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIHBvc3RBc3NpZ25pbmdBZHZpc29yR29hbHMocGFyYW1zOiBJQXNzaWduaW5nQWR2aXNvckdvYWxzUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2Fzc2lnbmluZy9hZHZpc29yeS9nb2Fscyc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBwb3NPYnRhaW5BZHZpc29yR29hbHMocGFyYW1zOiBJT2J0YWluQWxsQ291cnNld2FsbGV0KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9vYnRhaW4vZ29hbHMvYXNzaWduZWQvdG8vYWR2aXNvcic7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBwb3N0T2J0YWluT3ZlcmFsR29hbEFkdmlzbyhwYXJhbXM6IElPYnRhaW5BbGxDb3Vyc2V3YWxsZXQpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9vdmVyYWwvZ29hbC9vZi9hZHZpc29yJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIHBvc3RPYnRhaW5pbmZvQ29kQWN0dWFsbHlCeVVzZXIocGFyYW1zOiBJZ2V0Q291cnNlc0ZpbmlzaEFuZHVuYXNzaWduZWRScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3Qvb2J0YWluL2luZm8vY29kL3VzZXInO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgb2J0YWluZ0xhdGVzQ29kQnlTdHVkZW50Q29kZSAoY29kZVN0dWRlbnQ6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9sYXRlc3QvY29kL2J5L3N0dWRlbnQvY29kZS8nICsgY29kZVN0dWRlbnQ7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICB1cGRhdGVDT0QocmVxdWVzdDogSVVwZGF0ZUNPRFJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC91cGRhdGUvY29kJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cbiAgb2J0YWluY29kQ3VycnJlbnRBbmRMZXZlbEZ1bGxEYXRhUmVub3ZhdGlvbnMocmVxdWVzdDogSW9idGFpbmNvZEN1cnJyZW50QW5kTGV2ZWxGdWxsRGF0YVJlbm92YXRpb25zUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9mdWxsL2RhdGEvY3VycmVudC9jb2QvYnkvY29kZS9zdHVkZW50L3Jlbm92YXRpb24nO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuICBnZXRkYXRhQ3VycmVudENvZEJ5U1R1ZGVudENvZGUocmVxdWVzdDogSW9idGFpbmNvZEN1cnJyZW50QW5kTGV2ZWxGdWxsRGF0YVJlbm92YXRpb25zUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvZGF0YS9jdXJyZW50L2RhdGEvY29kL2J5L3N0dWRlbnQnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuICB1cGRhdGVDb2RDdXJyZW50SW5PYnNlcnZhdGlvbnNSZW5vdmF0aW9ucyhyZXF1ZXN0OiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2NoYW5nZS9jb2Qvc3RhdHVzL29ic2VydmF0aW9ucy9yZW5vdmF0aW9ucyc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgb2J0YWluQ29kUHJldml1c09yUGxhY2VtZW50VGVzdEJ5Y29kZShyZXF1ZXN0OiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L29idGFpbi9jb2QvcmVnaXN0ZXIvcHJldmlvdXMvb3IvcGxhY2VtZW50L3Rlc3QvYnkvc3RhdHVzJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cbiAgdXBkYXRlQ29udHJvbFN0ZXBzQ29kU2VsZk1hbmFnZWQocmVxdWVzdDogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9jaGFuZ2Uvc3RlcC9mb3JtL2NvbnRyb2wvY29kL3NlbGYvbWFuYWdlZCc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG4gIE9idGFpbkNvZFByaWNlc0NvZFNlbGZNYW5hZ2VkKHBhcmFtczogSU9idGFpbkNvZFByaWNlc1JxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9vYnRhaW4vY29kL3NlbGYvbWFuYWdlZC9wcmljZXMnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG4gIGNyZWF0ZUNvZFNlbGZNYW5hZ2VkKHBhcmFtczogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9jb2Qvc2VsZi9tYW5hZ2VkJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIHByaXplc0ZvckR1cmF0aW9uT2RDb250ZXN0KCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgICdwcml6ZXMvZm9yL2R1cmF0aW9uL29mL2NvbnRlc3QnO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xuICB9XG5cbiAgY3JlYXRlVGlja2V0UmVmZXJyYWwocGFyYW1zOiBJQ3JlYXRlVGlja2V0UmVmZXJyYWxScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2NyZWF0ZS9jb250ZXN0L3JlZ2lzdHJhdGlvbi9ieS9yZWZlcnJhbGUnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgICBvYnRhaW5TdGF0dXNBbmRSZWZlcnJhbHNCeVVzZXJDb2RlKHBhcmFtczogSU9idGFpblJlZmVyc0J5VXNlclJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnb2J0YWluL3N0YXR1cy9hbmQvcmVmZXJyYWxzL2J5L3VzZXIvY29kZSc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBnZXNQb3NpYmxlU3R1ZGVudEFsbEZvdXJNb2RlbHNCeURhdGUocGFyYW1zOiBJR2V0UG9zaWJsZVN0dWRlbnRCeURhdGVScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9wb3NpYmxlL3N0dWRlbnRzL2FsbC9mb3VyL21vZGVscy9ieS9kYXRlJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdlc1VzZXJBZHZpc2VyQ29tbWVyY2lhbEJ5VHlwZUFzc2luZ0NvbnRhY3QocGFyYW1zOiBJR2V0VXNlckFkdmlzZXJDb21tZXJjaWFsQnlUeXBlQXNzaW5nQ29udGFjdHNScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC91c2VyL2NvbW1lcmNpYWwvYnkvdHlwZS9hc3NpbmcnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgYXNzaW5nQ3VzdG9tZXJzQnlUeXBlQXNzaW5nQ29udGFjdEZvckFkdmlzZXIocGFyYW1zOiBBc3NpbmdDdXN0b21lcnNCeVR5cGVBc3NpbmdDb250YWN0Rm9yQWR2aXNlclJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9Bc3NpbmcvdXNlci9wb3NpYmxlL3N0dWRlbnQvYnkvZGF0ZSc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBvYnRhaW5BZGRpdGlvbmFsVXNlckRhdGFCeUNvdXJzZShwYXJhbXM6IElnZXRDb3Vyc2VzRmluaXNoQW5kdW5hc3NpZ25lZFJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnb2J0YWluL2FkZGl0aW9uYWwvdXNlci9kYXRhL2J5L2NvdXJzZSc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBvYnRhaW5BbGxSZWZlcnJhbHNCeVVzZXIocGFyYW1zOiBJT2J0YWluQWxsUmVmZXJyYWxzQnlVc2VyUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdvYnRhaW4vYWxsL3JlZmVycmFscy9ieS91c2VyL2NvZGUnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0QWxsQ29kSW5mb3JtYXRpb25Gb3JFeHBvcnRpbmcocGFyYW1zOiBJQ29kUGF5bWVudFJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2FsbC9jb2QvaW5mb3JtYXRpb24vZm9yL2V4cG9ydGluZyc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBvYnRhaW5Db2RCeUFkdmlzb3JXaXRoVGhlaXJTdGF0ZXMocGFyYW1zOiBJQ29kV2l0aFRoZWlyU3RhdGVzUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdvYnRhaW4vY29kL2J5L2Fkdmlzb3Ivd2l0aC90aGVpci9zdGF0ZXMnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZXh0ZW5kVGltZU9mQWNjZXB0YW5jZU9mVGVybXMocGFyYW1zOiBJRXh0ZW5kVGltZVRlcm1zUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdleHRlbmQvdGltZS9vZi9hY2NlcHRhbmNlL29mL3Rlcm1zJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIG5ld1Rlcm1zQW5kQ29uZGl0aW9uc0FjY2VwdGFuY2VUb2tlbihwYXJhbXM6IElOZXdUZXJtc0FuZENvbmRScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ25ldy90ZXJtcy9hbmQvY29uZGl0aW9ucy9hY2NlcHRhbmNlL3Rva2VuJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIHVwZGF0ZVN0YXR1c09mVGVybXNBbmRDb25kaXRpb25zUmVjb3JkcygpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICd1cGRhdGUvc3RhdHVzL29mL3QmYy9yZWNvcmRzJyA7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMobnVsbCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBvYnRhaW5Db2RCeUNvb2RpbmF0b3JXaXRoVGhlaXJTdGF0ZXMocGFyYW1zOiBJQ29kV2l0aFRoZWlyU3RhdGVzUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdvYnRhaW4vY29kL2J5L2Nvb2RpbmF0b2Uvd2l0aC90aGVpci9zdGF0ZXMnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgb2J0YWluQWxsSW5mb3JtYXRpb25Db2RCeUNvZGUoY29kZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnb2J0YWluL2FsbC9pbmZvcm1hdGlvbi9jb2QvYnkvY29kZS8nICsgY29kZTtcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhjb2RlKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldFN1bW1hcnlCeUNvbW1lcmNpYWxBZHZpc29yKHBhcmFtczogSUdldFN1bW1hcnlCeUNvbW1lcmNpYWxBZHZpc29yUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvc3VtbWFyeS9ieS9jb21tZXJjaWFsL2Fkdmlzb3InO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0Q29kU3R1ZGVudERldGFpbHNCeUFkdmlzZXIocmVxdWVzdDogSUdldENvZFN0dWRlbnREZXRhaWxzQnlBZHZpc2VyUnEsIGFkdmlzZXJDb2RlOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgYGdldC9jb2Qvc3R1ZGVudC9kZXRhaWxzL2J5L2FkdmlzZXIvJHthZHZpc2VyQ29kZX1gO1xuICAgIGNvbnN0IG9wdGlvbnMgPSB7IC4uLnRoaXMuaHR0cE9wdGlvbnMsIHBhcmFtczogcmVxdWVzdCBhcyBhbnkgfTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCBvcHRpb25zKTtcbiAgfVxuXG4gIGNyZWF0ZVR5cGVQYXltZW50KHBhcmFtczogSUNyZWF0ZVR5cGVQYXltZW50UnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvY3JlYXRlL3R5cGUvcGF5bWVudC9jb21taXNzaW9ucyc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBnZXRBbGxUeXBlUGF5bWVudHMocmVxdWVzdDogSVRva2VuUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9hbGwvdHlwZS9wYXltZW50L2NvbW1pc3Npb25zJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG5jcmVhdGVDb21taXNzaW9uQXJlYShwYXJhbXM6IElDcmVhdGVDb21taXNzaW9uQXJlYVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9jcmVhdGUvY29tbWlzc2lvbi9hcmVhJztcbiAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xufVxuXG51cGRhdGVDb21taXNzaW9uQXJlYShwYXJhbXM6IElDcmVhdGVDb21taXNzaW9uQXJlYVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncHV0L3VwZGF0ZS9jb21taXNzaW9uLWFyZWEnO1xuICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG59XG5cbiAgZ2V0QWxsQ29tbWlzc2lvbkFyZWFzKHJlcXVlc3Q6IElUb2tlblJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvYWxsL2NvbW1pc3Npb24vYXJlYXMnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbmFzc2lnbkNvdXJzZVR5cGVzVG9BcmVhKHBhcmFtczogSUFzc2lnbkNvdXJzZVR5cGVzVG9BcmVhUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2Fzc2lnbi9jb3Vyc2UtdHlwZXMvdG8tYXJlYSc7XG4gIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbn1cblxuY3JlYXRlUGF5bWVudEFyZWFDb21taXNzaW9uKHBhcmFtczogSUNyZWF0ZVBheW1lbnRBcmVhQ29tbWlzc2lvblJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9jcmVhdGUvcGF5bWVudC9hcmVhL2NvbW1pc3Npb24nO1xuICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG59XG5cbiAgZ2V0Q29tbWlzc2lvblJ1bGVzQnlBcmVhKHJlcXVlc3Q6IElUb2tlblJxLCBhcmVhQ29kZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArIGBnZXQvY29tbWlzc2lvbi1ydWxlcy9ieS1hcmVhLyR7YXJlYUNvZGV9YDtcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcblxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgY3JlYXRlVHlwZVVzZXJDb21taXNzaW9uKHBhcmFtczogSUNyZWF0ZVR5cGVVc2VyQ29tbWlzc2lvblJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2NyZWF0ZS90eXBlL3VzZXIvY29tbWlzc2lvbic7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBnZXRBbGxUeXBlVXNlckNvbW1pc3Npb25zKHJlcXVlc3Q6IElUb2tlblJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvYWxsL3R5cGUvdXNlci9jb21taXNzaW9ucyc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBhc3NpZ25Db21taXNzaW9uTW9kZWxUb1VzZXIocGFyYW1zOiBJQXNzaWduQ29tbWlzc2lvbk1vZGVsVG9Vc2VyUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvYXNzaWduL21vZGVsL3RvL3VzZXInO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZ2V0QWN0aXZlQ29tbWlzc2lvbk1vZGVsRm9yVXNlcihyZXF1ZXN0OiBJVG9rZW5ScSwgdXNlckNvZGU6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyBgZ2V0L2FjdGl2ZS9tb2RlbC9mb3IvdXNlci8ke3VzZXJDb2RlfWA7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBwYXlDb21taXNzaW9ucyhwYXJhbXM6IElQYXlTZWxlY3RlZENvbW1pc3Npb25zUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2NvbW1pc3Npb25zL3BheS9jb2RzJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIC8vcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHBhcmFtcywgdGhpcy5odHRwT3B0aW9ucyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgcmVqZWN0VHJhbnNhY3Rpb25CeUNvZGUocGFyYW1zOiBJcmVqZWN0VHJhbnNhY3Rpb25Db21taXNzaW9uUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2NvbW1pc3Npb25zL3JlamVjdC90cmFuc2FjdGlvbic7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBhcHByb3ZlVHJhbnNhY3Rpb25CeUNvZGUocGFyYW1zOiBJQXBwcm92ZVRyYW5zYWN0aW9uQ29tbWlzc2lvblJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdjb21taXNzaW9ucy9hcHByb3ZlL3RyYW5zYWN0aW9uJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGFkZERldm9sdXRpb25Db21taXNzaW9uKHBhcmFtczogSWFkZERldm9sdXRpb25Db21taXNzaW9uUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2NvbW1pc3Npb25zL2FkZC9kZXZvbHV0aW9uL2NvbW1pc3Npb24nO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgb2J0YWluVHJhbnNhY3Rpb25zQnlTdGF0dXMocmVxdWVzdDogSW9idGFpblRyYW5zYWN0aW9uc0J5U3RhdHVzUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgYGdldC90cmFuc2FjdGlvbnMvYnkvdXNlci9hbmQvc3RhdHVzYDtcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIHNlZVRyYW5zYWN0aW9uQmlsbChyZXF1ZXN0OiBJU2hvd1RyYW5zYWN0aW9uQmlsbFJxICk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyBgY29tbWlzc2lvbnMvc2VlL3RyYW5zYWN0aW9uL2JpbGxgO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgcGF5QWR2aXNvckJvbnVzZXMocGFyYW1zOiBJUGF5QWR2aXNvckJvbnVzZXNScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnY29tbWlzc2lvbnMvcGF5L2JvbnVzZXMnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHBhcmFtcywgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICB1cGRhdGVQYXltZW50QXJlYUNvbW1pc3Npb24ocmVxdWVzdDogSVVwZGF0ZVBheW1lbnRBcmVhQ29tbWlzc2lvblJxLCBydWxlQ29kZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArIGBwdXQvdXBkYXRlL3BheW1lbnQtYXJlYS1jb21taXNzaW9uLyR7cnVsZUNvZGV9YDtcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dChzZXJ2aWNlVXJsLCByZXF1ZXN0LCB0aGlzLmh0dHBPcHRpb25zKTtcbn1cblxuZ2V0QWxsQXJlYXNXaXRoQ29tbWlzc2lvblJ1bGVzKHJlcXVlc3Q6IElUb2tlblJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2FsbC1hcmVhcy13aXRoLWNvbW1pc3Npb24tcnVsZXMnO1xuICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG59XG5cbmdldEFsbENvbmRpdGlvbnMocmVxdWVzdDogSVRva2VuUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvYWxsL2NvbW1pc3Npb24tY29uZGl0aW9ucyc7XG4gIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbn1cblxuZ2V0QWxsQWdyZWVtZW50cyhyZXF1ZXN0OiBJVG9rZW5ScSk6IE9ic2VydmFibGU8YW55PiB7XG4gIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9hbGwvYWdyZWVtZW50cyc7XG4gIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbn1cblxuYWRkQ29uZGl0aW9uVG9SdWxlKHJlcXVlc3Q6IElBZGRDb25kaXRpb25Ub1J1bGVScSwgcnVsZUNvZGU6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XG4gIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgYHBvc3QvYWRkL2NvbmRpdGlvbi90by1ydWxlLyR7cnVsZUNvZGV9YDtcbiAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbn1cblxuZWRpdENvbmRpdGlvblRvUnVsZShyZXF1ZXN0OiBJRWRpdENvbmRpdGlvblJ1bGVScSk6IE9ic2VydmFibGU8YW55PiB7XG4gIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgYHB1dC9lZGl0L2NvbmRpdGlvbi9ydWxlYDtcbiAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbn1cblxuZGVsZXRlQ29uZGl0aW9uRnJvbVJ1bGUocmVxdWVzdDogSVRva2VuUnEsIGNvbmRpdGlvbklkOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArIGBkZWxldGUvcnVsZS1jb25kaXRpb24vJHtjb25kaXRpb25JZH1gO1xuICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICBoZWFkZXJzOiB0aGlzLmh0dHBPcHRpb25zLmhlYWRlcnMsXG4gICAgcGFyYW1zOiB0aGlzLmh0dHBPcHRpb25zLnBhcmFtc1xuICB9O1xuICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZShzZXJ2aWNlVXJsLCBvcHRpb25zKTtcbn1cblxudXBkYXRlVHlwZVBheW1lbnQocmVxdWVzdDogSVVwZGF0ZVR5cGVQYXltZW50UnEsIGNvZGU6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XG4gIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgYHB1dC91cGRhdGUvdHlwZS1wYXltZW50LWNvbW1pc3Npb24vJHtjb2RlfWA7XG4gIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICByZXR1cm4gdGhpcy5odHRwLnB1dChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbn1cblxuZGVsZXRlVHlwZVBheW1lbnQocmVxdWVzdDogSVRva2VuUnEsIGNvZGU6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XG4gIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgYGRlbGV0ZS90eXBlLXBheW1lbnQtY29tbWlzc2lvbi8ke2NvZGV9YDtcbiAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgaGVhZGVyczogdGhpcy5odHRwT3B0aW9ucy5oZWFkZXJzLFxuICAgIHBhcmFtczogdGhpcy5odHRwT3B0aW9ucy5wYXJhbXNcbiAgfTtcbiAgcmV0dXJuIHRoaXMuaHR0cC5kZWxldGUoc2VydmljZVVybCwgb3B0aW9ucyk7XG59XG5cbmRlbGV0ZVBheW1lbnRBcmVhQ29tbWlzc2lvbihyZXF1ZXN0OiBJVG9rZW5ScSwgY29kZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyBgZGVsZXRlL3BheW1lbnQtYXJlYS1jb21taXNzaW9uLyR7Y29kZX1gO1xuICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICBoZWFkZXJzOiB0aGlzLmh0dHBPcHRpb25zLmhlYWRlcnMsXG4gICAgcGFyYW1zOiB0aGlzLmh0dHBPcHRpb25zLnBhcmFtc1xuICB9O1xuICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZShzZXJ2aWNlVXJsLCBvcHRpb25zKTtcbn1cblxuICBvYnRhaW5QcmVhc3NpZ25lZENvdXJzZXNBbmRTdHVkZW50RW5yb2xsbWVudFN0YXR1cyhjb2RlOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdvYnRhaW4vcHJlYXNzaWduZWQvY291cnNlcy9zdHVkZW50L2Vucm9sbG1lbnQvc3RhdHVzLycgKyBjb2RlO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKGNvZGUpO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwpO1xuICB9XG4gIGRlbGV0ZUNvbmRpdGlvbihyZXF1ZXN0OiBJVG9rZW5ScSwgY29kZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArIGBkZWxldGUvY29tbWlzc2lvbi1jb25kaXRpb24vJHtjb2RlfWA7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gICAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICAgIGhlYWRlcnM6IHRoaXMuaHR0cE9wdGlvbnMuaGVhZGVycyxcbiAgICAgIHBhcmFtczogdGhpcy5odHRwT3B0aW9ucy5wYXJhbXNcbiAgICB9O1xuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKHNlcnZpY2VVcmwsIG9wdGlvbnMpO1xuICB9XG5cbiAgcmVuZXdTdHVkZW50c1RvTmV4dExldmVsKHJlcXVlc3Q6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyBgcG9zdC9jb2QvYW5kL3JlbmV3YWwvYnkvY291cnNlc2A7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgb2J0YWluUHJlYXNzaWduZWRDb3Vyc2VzKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ29idGFpbi9wcmVhc3NpZ25lZC9jb3Vyc2VzJztcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcbiAgfVxuXG4gICBmdWxsRGF0YUNvZEJ5U3R1ZGVudENvdXJzZVByZWFzc2lnbmVkKGNvZGVfc3R1ZGVudDogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZnVsbGRhdGEvY29kL2J5L3N0dWRlbnQvY291cnNlL3ByZWFzc2lnbmVkLycgKyBjb2RlX3N0dWRlbnQ7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMoY29kZV9zdHVkZW50KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcbiAgfVxuXG4gIHNlYXJjaFN0dWRlbnRCeUlkY2FyZENvdXJzZVByZWFzc2lnbmVkKGlkY2FyZF9zdHVkZW50OiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdzZWFyY2gvc3R1ZGVudC9ieS9pZGNhcmQvY291cnNlL3ByZWFzc2lnbmVkLycgKyBpZGNhcmRfc3R1ZGVudDtcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhpZGNhcmRfc3R1ZGVudCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCk7XG4gIH1cblxuICBleHBvcnRQb3NpYmxlU3R1ZGVudEFsbEZvdXJNb2RlbHNCeURhdGUocGFyYW1zOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvcG9zaWJsZS9zdHVkZW50cy9hbGwvZm91ci9tb2RlbHMvYnkvZGF0ZS9mb3IvZXhwb3J0JztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldEFsbEdvYWxzRm9yQ29tbWlzc2lvbk1vZGVscyhyZXF1ZXN0OiBJVG9rZW5ScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZ2V0L2hlbHBlcnMvZ29hbHMnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHJlcXVlc3QpO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cblxuICBnZXRUZWFtQnlNYW5hZ2VyKHJlcXVlc3Q6IElUb2tlblJxLCBtYW5hZ2VyQ29kZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArIGBnZXQvdGVhbS9ieS9tYW5hZ2VyLyR7bWFuYWdlckNvZGV9YDtcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG5cbiAgYXNzaWduU3Vib3JkaW5hdGVUb01hbmFnZXIocGFyYW1zOiBJQXNzaWduU3Vib3JkaW5hdGVScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC90ZWFtL21lbWJlcic7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgcGFyYW1zLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIHJlbW92ZVN1Ym9yZGluYXRlRnJvbU1hbmFnZXIocGFyYW1zOiBJUmVtb3ZlU3Vib3JkaW5hdGVScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAnZGVsZXRlL3RlYW0vbWVtYmVyJztcbiAgICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgLi4udGhpcy5odHRwT3B0aW9ucyxcbiAgICAgIGJvZHk6IHsgcGFyYW1zIH1cbiAgICB9O1xuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKHNlcnZpY2VVcmwsIG9wdGlvbnMpO1xufVxuXG5tYXNzQXNzaWduU3Vib3JkaW5hdGVzKHBhcmFtczogSUFzc2lnblN1Ym9yZGluYXRlc01hc3NpdmVScSk6IE9ic2VydmFibGU8YW55PiB7XG4gIGxldCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L3RlYW0vbWVtYmVycy9tYXNzaXZlJztcbiAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xufVxuXG4gIGdldFVzZXJzRm9yQ29tbWlzc2lvbk1hbmFnZW1lbnQocmVxdWVzdDogSVRva2VuQ2FtcHVzUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC91c2Vycy9mb3ItbWFuYWdlbWVudCc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBnZXRBbGxDb21taXNzaW9uQ29uY2VwdHMocmVxdWVzdDogSVRva2VuUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9hbGwvY29tbWlzc2lvbi9jb25jZXB0cyc7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cbiAgdXBkYXRlVHlwZVVzZXJDb21taXNzaW9uKHBhcmFtczogSVVwZGF0ZVR5cGVVc2VyQ29tbWlzc2lvblJxLCBjb2RlOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgYHB1dC91cGRhdGUvdHlwZS91c2VyL2NvbW1pc3Npb24vJHtjb2RlfWA7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldFN1Ym9yZGluYXRlc0J5TWFuYWdlcihyZXF1ZXN0OiBJVG9rZW5ScSwgbWFuYWdlckNvZGU6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyBgZ2V0L3RlYW0vYnkvbWFuYWdlci8ke21hbmFnZXJDb2RlfWA7XG4gICAgdGhpcy5nZW5lcmF0ZVJlcXVlc3RQYXJhbXMocmVxdWVzdCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBkZWxldGVUeXBlVXNlckNvbW1pc3Npb24ocGFyYW1zOiBJRGVsZXRlVHlwZVVzZXJDb21taXNzaW9uUnEsIGNvZGU6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyBgZGVsZXRlL3R5cGUvdXNlci9jb21taXNzaW9uLyR7Y29kZX1gO1xuICAgIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgICAuLi50aGlzLmh0dHBPcHRpb25zLFxuICAgICAgYm9keTogeyBwYXJhbXMgfVxuICAgIH07XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kZWxldGUoc2VydmljZVVybCwgb3B0aW9ucyk7XG4gIH1cbiAgZ2V0TW9udGhseUJvbnVzU3RhdHVzKHJlcXVlc3Q6IGFueSwgY29kZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyBgYWR2aXNvci9tb250aGx5L3N0YXR1cy8ke2NvZGV9YDtcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Qoc2VydmljZVVybCwgdGhpcy5odHRwT3B0aW9ucyk7XG4gIH1cblxuICBnZXRBbGxDb3Vyc2VUeXBlQ2F0ZWdvcmllcyhyZXF1ZXN0OiBJVG9rZW5ScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyBgZ2V0L2FsbC9jb3Vyc2UvdHlwZS9jYXRlZ29yaWVzYDtcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG5cbiAgXG5cbiAgICBnZXRUcmFuc2FjdGlvbkNvbW1pc3Npb25zQnlDb2RlKHJlcXVlc3Q6IElHZXRDb21taXNzaW9uc0J5VHJhbnNhY3Rpb25Db2RlUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgYGdldC9jb21taXNzaW9ucy9ieS90cmFuc2FjdGlvbi9jb2RlYDtcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhyZXF1ZXN0KTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGNhbmNlbGxUcmFuc2FjdGlvbkJpbGwocGFyYW1zOiBJQ2FuY2VsbFRyYW5zYWN0aW9uQmlsbFJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdjb21taXNzaW9ucy9jYW5jZWxsL3RyYW5zYWN0aW9uL2JpbGwnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cblxuXG5cbiAgICBhZGRCb251c1J1bGUocGFyYW1zOiBJYWRkQm9udXNSdWxlUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ3Bvc3QvYWRkL2JvbnVzL3J1bGUnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZWRpdEJvbnVzUnVsZShwYXJhbXM6IElhZGRCb251c1J1bGVScSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc2VydmljZVVybCA9IHRoaXMuU0VSVklDRV9VUkwgKyAncG9zdC9lZGl0L2JvbnVzL3J1bGUnO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbiAgZGVsZXRlQm9udXNSdWxlKHBhcmFtczogSWFkZEJvbnVzUnVsZVJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdwb3N0L2RlbGV0ZS9ib251cy9ydWxlJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldEJvbnVzUnVsZXMoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdnZXQvYWxsL2JvbnVzL3J1bGVzJztcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChzZXJ2aWNlVXJsKTtcbiAgfVxuXG4gIHJlbW92ZUNvbW1pc3Npb25Gcm9tVHJhbnNhY3Rpb24ocGFyYW1zOiBJcmVtb3ZlQ29tbWlzc2lvbkZyb21UcmFuc2FjdGlvblJxKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzZXJ2aWNlVXJsID0gdGhpcy5TRVJWSUNFX1VSTCArICdyZW1vdmUvY29tbWlzc2lvbi9mcm9tL3RyYW5zYWN0aW9uJztcbiAgICB0aGlzLmdlbmVyYXRlUmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChzZXJ2aWNlVXJsLCB0aGlzLmh0dHBPcHRpb25zKTtcbiAgfVxuXG4gIGdldEFsbENvbmZpZ0RhdGFGb3JDb21taXNzaW9uKHBhcmFtczogSVRva2VuQ2FtcHVzUnEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHNlcnZpY2VVcmwgPSB0aGlzLlNFUlZJQ0VfVVJMICsgJ2dldC9hbGwvY29uZmlnL2RhdGEvZm9yL2NvbW1pc3Npb24nO1xuICAgIHRoaXMuZ2VuZXJhdGVSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHNlcnZpY2VVcmwsIHRoaXMuaHR0cE9wdGlvbnMpO1xuICB9XG5cbn1cblxuXG4iXX0=
|
|
@@ -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);
|